我已经在C# WinForms应用程序中使用“项目属性”选项卡为其分配了一个图标。在构建时,此图标与程序清单一起提供。是否有一种方法可以在运行时获取此图标的System.Drawing.Icon
对象,而无需再次嵌入资源?
我进行了研究; 有一种从exe文件中提取图标的方法,但我找不到任何方式从应用程序内部提取运行中的C#应用程序的图标。
我已经在C# WinForms应用程序中使用“项目属性”选项卡为其分配了一个图标。在构建时,此图标与程序清单一起提供。是否有一种方法可以在运行时获取此图标的System.Drawing.Icon
对象,而无需再次嵌入资源?
我进行了研究; 有一种从exe文件中提取图标的方法,但我找不到任何方式从应用程序内部提取运行中的C#应用程序的图标。
你看到链接中的第二个答案了吗?(如何在C#中仅有一个进程实例时获取可执行文件的图标)
//Gets the icon associated with the currently executing assembly
//(or pass a different file path and name for a different executable)
Icon appIcon = Icon.ExtractAssociatedIcon(Assembly.GetExecutingAssembly().Location);
这似乎是获取正在执行的程序集图标。
Assembly
在 System.Reflection
中。 - AaABitmap temp = this.Icon.ToBitmap();
temp.Save("c:\\Users\\userName\\Downloads\\icon.png");
Icon.ExtractAssociatedIcon
),明确表示我不想这样做! - Robin Rodricks