2010-10-06 257 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(),但很难使用。到目前为止,最好的方法还是使图标在您的托管资源中可用。

相关问题