Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我可以在dotNet编译的exe上使用Win32 API ExtractIcon()吗?_C#_.net_Winapi_Icons_Registry - Fatal编程技术网

C# 我可以在dotNet编译的exe上使用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" 有没有其他方法可以在文件类型关联中使用我的图标?在属

我有一个用C#编写的程序,我正试图编写一个注册表脚本,将文件与我的程序关联起来。在windows注册表中有一个“DefaultIcon”位置,您可以在其中列出用于此关联的可执行文件和图标索引。问题是,这是基于win32 API中的ExtractIcon()方法,似乎我无法嵌入一个图标以这种方式使用,因此我的图标无法使用

[HKEY_CLASSES_ROOT\%someName%\DefaultIcon]
@="Path\to\exe,0" 

有没有其他方法可以在文件类型关联中使用我的图标?

在属性窗口中设置项目的图标,这样就可以了


如果要嵌入多个图标,请设置一个资源文件(也在项目属性中)。

如果嵌入多个图标,我似乎无法使用注册表中的索引来访问它们。我希望我的文件图标不同于我的程序图标,比如excel如何处理他们的文件等。(虽然我还没有尝试过)至少,你可以用图标创建一个单独的DLL。