如何在EXE文件的PE头中设置“文件版本”字段?

7
我使用 go build 命令来构建一个 exe 文件。然后我查看文件的属性(右键点击文件 -> 属性),在 “详细信息” 标签中,该文件的版本信息为空白。
如何设置 exe 文件的版本信息?
请参考下图操作:enter image description here
2个回答

9

EXE文件版本和其他信息被嵌入为资源,这些资源是特定于Windows的,因此不受Go编译器支持。您可以使用 GoVersionInfo 包来完成此操作(它还支持嵌入图标)。我自己没有尝试过,但它看起来很有前途并且文档写得很好。


3

有一个叫做 go-winres 的工具可以帮助你在go build之前或之后实现这个功能。

运行 go install github.com/tc-hib/go-winres@latest 命令来安装它。 在项目文件夹内运行 go-winres init 命令。这会创建一个名为 winres 的子文件夹。

修改 winres/winres.json 文件,替换图标。

运行 go-winres make 命令。这将创建一个 .syso 文件。 运行 go build 命令并查看结果。

如果需要添加一种语言,可以参考读我文件中的示例。我无法使用 goversioninfo 工具完成此操作,但使用 go-winres 可以成功。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接