C# 我可以在dotNet编译的exe上使用Win32 API ExtractIcon()吗?
我有一个用C#编写的程序,我正试图编写一个注册表脚本,将文件与我的程序关联起来。在windows注册表中有一个“DefaultIcon”位置,您可以在其中列出用于此关联的可执行文件和图标索引。问题是,这是基于win32 API中的ExtractIcon()方法,似乎我无法嵌入一个图标以这种方式使用,因此我的图标无法使用C# 我可以在dotNet编译的exe上使用Win32 API ExtractIcon()吗?,c#,.net,winapi,icons,registry,C#,.net,Winapi,Icons,Registry,我有一个用C#编写的程序,我正试图编写一个注册表脚本,将文件与我的程序关联起来。在windows注册表中有一个“DefaultIcon”位置,您可以在其中列出用于此关联的可执行文件和图标索引。问题是,这是基于win32 API中的ExtractIcon()方法,似乎我无法嵌入一个图标以这种方式使用,因此我的图标无法使用 [HKEY_CLASSES_ROOT\%someName%\DefaultIcon] @="Path\to\exe,0" 有没有其他方法可以在文件类型关联中使用我的图标?在属
[HKEY_CLASSES_ROOT\%someName%\DefaultIcon]
@="Path\to\exe,0"
有没有其他方法可以在文件类型关联中使用我的图标?在属性窗口中设置项目的图标,这样就可以了
如果要嵌入多个图标,请设置一个资源文件(也在项目属性中)。如果嵌入多个图标,我似乎无法使用注册表中的索引来访问它们。我希望我的文件图标不同于我的程序图标,比如excel如何处理他们的文件等。(虽然我还没有尝试过)至少,你可以用图标创建一个单独的DLL。