如何获取任意文件的.ico文件?

如何获取任意文件的.ico文件?

假设我有一个文件,并且为其设置了一个图标。如何获取文件上显示的图标?文件是任意的 - 我不知道它的扩展名。只是如何获取它的图标。

编辑:顺便说一句,当我告诉 SO 使用我创建的 exe 文件打开文件时,文件上显示的图标被分配了。而在该 exe 文件中没有文件上的图标。我猜,操作系统 (Vista) 只是通过获取 exe 文件的图标并将其“放”在白纸上来创建文件的图标。所以我想得到这个图标。

答案1

文件关联图标由 Windows 分配,大多数图标位于 中%Windir%\system32\shell32.dll。您可以转到“工具”-“文件夹选项”-“文件类型”,然后单击所需文件类型的“高级”按钮,以找出哪个文件提供了特定的图标。最后,在出现的窗口中单击“更改图标”,它将显示文件图标的路径。

您可以使用资源黑客从文件中导出图标。

答案2

批量图标提取器

下载 BatchIconExtractor.exe 并将其放在您的桌面上。将文件或文件夹拖放到应用程序图标上。文件或给定文件夹下所有文件的所有图标都将保存到名为“icons”的新文件夹中。此文件夹创建在应用程序所在的同一文件夹中(默认为桌面)。

答案3

除了挖掘注册表之外,我知道的唯一方法是使用 .Net 代码。有一个名为 ExtractAssociatedIcon() 的函数可以为您提供相关图标无论您传递哪个文件。也许这不是您要找的答案,但是 Windows 中没有针对此特定任务内置的可访问界面 ;)

更新:要制作这样的应用程序,请参阅http://pastie.org/1075055(使用 RAW 按钮复制代码以避免行号)

答案4

图标包装器是 Windows Vista 的一个工具,可让您编辑图标。(Windows XP 内置有此功能。)

編輯是一个很好的资源编辑器,它允许您打开和保存.exe文件中包含的图标。

相关内容