2010-10-06 255 views
3

我試圖找出我的應用程序的圖標存儲在VS 2008中的位置。在啓動項目的應用程序屬性中,我添加了一個帶有「默認設置的嵌入清單」設置的圖標。存儲.NET應用程序圖標的位置在哪裏?

我想以編程方式在應用程序中顯示圖標,但我無法弄清楚圖標的存儲位置。

如何從代碼中獲取應用程序圖標的引用?

回答

9

試試這個:

var icon = Icon.ExtractAssociatedIcon(Application.ExecutablePath); 
+0

真棒。謝謝。 – Mashmagar 2010-10-06 14:22:31

2

它存儲在一個可執行文件的非託管資源部分。您可以使用File + Open + File並選擇DLL或EXE來查看該部分。打開圖標節點。最低編號的資源是Windows選作應用程序圖標的資源。

在.NET框架中有訪問二進制文件非託管資源的特殊支持。這裏最好的選擇是使用Icon.ExtractAssociatedIcon(),但是你無法控制你將得到的圖標中的哪些圖像。 Pinvoke fallback是LoadImage(),但很難使用。到目前爲止,最好的方法還是使圖標在您的託管資源中可用。

相關問題