in

Darkthread

黑暗執行緒
All Tags » .NET (RSS)

Browse by Tags

  • TIPS-將Manifest內嵌至EXE檔案

    照著 MSDN Create and Embed an Application Manifest (UAC) 一文的說明,為.NET程式附加.manifest檔案註記為需管理者權限執行,並在Visual Studio專案屬性的Post Build Event中加入 mt.exe -manifest "$(ProjectDir)$(TargetName).exe.manifest" -updateresource:"$(TargetDir)$(TargetName).exe;#1" ,以便將manifest直接內嵌在EXE檔裡面。但編譯時一直彈出: mt.exe...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 08-31-2010
  • 網站下載程式碼後無法編譯

    從 CodePlex 下載SourceCode回家玩,Build時卻發生錯誤: The "ValidateXaml" task failed unexpectedly. System.IO.FileLoadException: Could not load file or assembly 'file:///C:\WorkRoom\WP7\3rdParty\PhoneControls\Phone.Controls.Samples.dll' or one of its dependencies. Operation is not supported. (Exception...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 08-14-2010
  • MicroHttpServer - 用100行C#寫一個HTTP Server

    有個點子,想在WinForm上跑程式模擬出Web Server功能,讓Browser或程式可以透過HTTP協定與其溝通。既然想到,就動手做看看囉! HTTP Server絕大部分的核心功能,其實都可用.NET搞定: 用 TcpListener 接受特定Port連入的TCP連線,取得 NetworkStream ,以StreamReader、StreamWriter讀取及寫入資料... .NET BCL 真是應有盡有!相較之下,以前那種基礎元件跟函式庫都得自己張羅的時代,只能用茹毛飲血來形容。 有了BCL的加持,配合兩個自訂類別封裝Request、Response,只花了不到100行C#,就組出一個可以接受HTTP...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 08-13-2010
  • 反白圖檔做環保

    網友山姆先生問了一個 有趣 問 題 : 如何在Excel插入(或複製貼上)時將圖片反黑,因為經常會複製一些類似Dos的黑底白字畫面,列印時相當浪費印表機碳粉,很不環保... 這個需求其實不少螢幕擷取工具已內建了現成功能,例如: SnagIt 雖然已有工具,但畢竟還是要幾個操作步驟才能搞定。想了一下,其實應用先前 修正VS2010剪貼內容 展示過的剪貼簿 篡改 修改技巧,配合GDI+豐富的圖形處理功能,自己寫應該也不難。再加上寫程式為環保貢獻心力是很有意義的事,所以我索性當成題材小練了一下武功。 以下程式我是寫成Console Application,可以在放捷徑在桌面,抓完DOS畫面後執行它,就可以將剪貼簿中的圖檔"白的說成黑的...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 06-28-2010
  • Unsafe, But Fast!

    想當年在初學C#時,知道C#有 unsafe 這種東西,可以解開.NET對指標(Pointer)的封印,允許像C語言一樣透過指標直接存取記憶體。對C語言沒有深厚基礎的我,模糊地知道直接存取記憶體效能較佳,卻不很是清楚它的應用時機。最近胡亂玩了一些視覺元素識別的題目,參考一些圖形運算前輩的範例程式,才訝異地發現,原來密集大量運算的場合,就是unsafe橫掃千軍的絕佳舞台。 舉個簡單的例子,假設我們在某本書的綠色書背擷取到一塊包含ISBN條碼的影像,打算透過演算法找出條碼區所在位置。由於綠色書皮與白色條碼區在顏色上有明顯區別,因此可使用比對顏色RGB值的方式,將"不夠白"的地方一律塗黑...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 06-18-2010
  • ReflectPropertyDescriptor無法被序列化

    試著用以下程式將一個有實作INotifyPropertyChanged介面的物件序列化: BinaryFormatter bf = new BinaryFormatter(); MemoryStream ms = new MemoryStream(); bf.Serialize(ms, s); 結果傳回以下錯誤: System.Runtime.Serialization.SerializationException was unhandled by user code Message="Type 'System.ComponentModel.ReflectPropertyDescriptor'...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 06-16-2010
  • System.Data.OracleClient將走入歷史

    印象中有看過微軟未來將不再建議使用System.Data.OracleClient,昨天無意翻到正式 宣告文 ,特別PO文整理一下。 主要考量是有很大比例的使用者,實務上用的都是夥伴廠商提供的ADO.NET Provider,一方面是配合Oracle改版的更新腳步較快,能較快用到資料庫的新功能,另一方面這些廠商都提供了不錯的軟體品質及客服支援。ADO.NET Team評估之後,認為即便繼續投注心力強化,也很難將使用者拉回ADO.NET OracleClient。(頗有"閃開! 讓專業的來"的感覺) 因此,ADO.NET Team做了一個重大決定: System.Data.OracleClient雖然還是附在...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 05-13-2010
  • CODE-檢查伺服器時間同步

    最近因為伺服器時間不同步,造成資料庫記錄時間基準不一,形成困擾。 理論上同一Domain下的主機都應會自動同步時間,但實務上偶爾就是會有出鎚的狀況。為了能快速掌握時間誤,我寫了以下的工具,可自動比對多台主機時間,將之整理成一張網頁報告,以便能快速找出伺服器時間不同步的問題。最終產出如下: 程式的運作原理是以 多執行緒 方式透過 NetRemoteTOD API 同時向多台主機取得時間。誤差判定是以計算"收到結果時間"與"結果內容時間"間差異求得(這不算精準的衡量做法,但基於取得成本低,且具有一定程度參考價值,就姑且用之),最後將結果輸出成HTML。程式碼如下...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 04-23-2010
  • C#隨堂考-object超級比一比

    最近寫程式遇到的C#基本觀念問題--物件比對,原本信仰不夠堅定,就被唬住了。 特別整理一份隨堂考題給大家溫故知新,也順便確認自己信仰正確,意志堅定。 請使用大腦編譯並執行以下程式碼,回答其中10題比對測試的結果: using System; namespace ConsoleApplication1 { class Program { static void Main( string [] args) { //Integer Comparison int a = 1, b = 1; Console.WriteLine( "1.{0}" , a == b); Console.WriteLine...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 04-15-2010
  • LINQ to SQL-當心CHAR(1)欄位比對條件寫法的效能差異

    今天意外發現,LINQ to SQL在轉譯CHAR(1)欄位比對時,可能因寫法不同而產生極無效率的SQL指令! 當資料表的欄位為CHAR(1)時,在DataContext裡產生的 對應物件型別 是char,而我們直覺上可能寫成CharCol == 'A'的比對條件。但今天發現一件可怕的事... CharCol == 'A'的寫法會被轉換成極無效率的WHERE UNICODE(CharCol) = 65 對SQL查詢效能略有研究的人都知道,Func(SomeCol) = SomeValue的寫法會迫使SQL Server把每一列的資料都挖出來運算後再比對,無法善用Index做有效率的搜索...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 03-25-2010
第1頁,共13頁 (129個項目) 1 2 3 4 5 下一頁 > ... 最後一頁 »
Powered by Community Server (Non-Commercial Edition), by Telligent Systems