更改可执行文件的图标,而无需重新编译或重新链接并使用microsoft sdk中的命令行工具

时间:2014-04-07 08:20:07

标签: c++ windows icons

我需要从命令行更改已编译和链接的可执行文件的图标。

我无法在构建过程中执行此操作,因为这只是我构建中的一个工具,我不想在每次需要使用它时重新编译它。

可执行文件已编译并与图标作为资源链接。

其他限制是必须从命令行进行更改,因此可以在构建过程中轻松集成此步骤。

由于我主要使用Microsoft编译器和链接器,我想知道这是否只能通过使用Microsoft SDK中提供的工具来实现?

此外 - 我知道通常资源的更改会破坏任何数字签名,有没有办法保留签名(只有在可能的情况下,图标的更改才更重要)。任何帮助将不胜感激。

P.S:我知道ResourceHacker,但没有用,因为它没有命令行界面。

1 个答案:

答案 0 :(得分:1)

在此处查看“CopyIcon”功能:

http://nullege.com/codes/show/src@p@y@pyinstaller-2.0@PyInstaller@utils@icon.py/181/win32api.EnumResourceNames

基本上它归结为使用UpdateResource()

更新已编译可执行文件中的图标资源