如何在Window平台下使用go编译出来的exe添加一个自定义图标

最近使用go编写几个基于第三方软件的辅助小工具,计划放在对应第三方软件目录,奈何默认生成的exe没有图标,显得太假,遂有了下面这篇文章

Window平台下编译出来的exe带有图标的步骤:

创建.rc文件

1.首先在根目录下,源代码*.go的文件同级目录下创建.rc文件,文件名与*.go文件同名,

例如这里我的源代码是“excelpm.go”,我新建的rc文件也就是“excelpm.rc”

img

编辑.rc文件内容:

IDI_ICON1 ICON “xintubiao.ico”

这里“”xintubiao.ico“是你的图标的文件”,你可以填写你自己的图标名称;

img

运行生成.syso文件

3.运行命令生成文件:

windres -o excelpm.syso excelpm.rc

这里生成的 “excelpm.syso”的文件,建议也跟源代码的文件名一样,就是后缀不一样!

备注:这个命令我在cmd中没有实现,我是在编辑器golangd中的终端运行成功的。

img

命令运行后在目录中就是生成了“excelpm.syso”文件:

img

go文件编译

在终端中运行 “go build”

备注有时候需要 “go build .” 后面加个“.”

go build

img

生成exe

生成的exe文件

img

运行下可以成功!

补充内容

补充内容:关于命令没有或者报错的提示;

1
windres -o excelpm.syso excelpm.rc 

运行上面的 “windres ”命令报错的原因需要安装一个这个命令:

1
2
3
4
5
MinGW 的全称是:Minimalist GNU on Windows ,实际上是将gcc(c/c++编译器)移植到了 Windows 平台下,并且包含了 Win32API ,因此可以将源代码编译为可在 Windows 中运行的可执行程序。而且还可以使用一些 Windows 不具备的,Linux平台下的开发工具。



这里面就是我们需要的命令

下载地址 :

1
https://sourceforge.net/projects/mingw-w64/

img

img

注意后缀是sjij的版本

解压后,在bin文件夹下查看 “windres”,下一步就是添加环境变量 即可使用

img

img