能否通过Visual Studio或微软命令为现有.exe文件添加产品版本信息?
关于给现有EXE添加版本信息的官方命令说明
微软官方没有专门的命令行工具可以直接给已编译完成的EXE文件追加或修改版本资源。不过可以根据你是否持有程序原始编译产物,通过Visual Studio自带的工具链进行处理:
情况1:持有程序原始编译产物(OBJ、LIB等)
如果你有生成原EXE时用到的目标文件、库文件,可以直接用link.exe将你的版本资源文件(.res)与这些产物重新链接,生成带有版本信息的新EXE:
link /out:new_versioned.exe your.obj your.lib your_version.res
这个命令会将版本资源嵌入到新生成的EXE中,同时保留原程序的功能逻辑。
情况2:无原始编译产物
如果没有原程序的OBJ、LIB等文件,微软官方工具链无法实现给现有EXE添加版本资源的操作。因为官方工具链的设计核心是面向编译-链接的完整开发流程,而非事后修改已编译完成的PE文件结构。
这种情况下,你只能回到程序的编译阶段,将版本.res文件加入编译链接流程,重新生成带版本信息的EXE。
内容的提问来源于stack exchange,提问作者Anjan
相关产品推荐
相关产品推荐

