Windows下Go程序添加圖標
計劃使用go語言編譯一系列實用工具,提高自己的工作效率。發現編譯後的.exe文件沒有圖標,甚是難看,所以找了windows平臺下添加Go程序圖標的方法。
1. 查找ico圖標
查找一個符合程序氣質的圖標,下載備用。
ico鏈圖標下載: easyicon
2.生成syso文件
rsrc是在Windows的Go程序中嵌入.ico和manifest資源的工具。
2.1 下載安裝rsrc
go get github.com/akavel/rsrc
2.2 生成程序描述文件ico.manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<assemblyIdentity version="1.0.0.0" processorArchitecture="*" name="SomeFunkyNameHere" type="win32"/>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"/>
</dependentAssembly>
</dependency>
<asmv3:application>
<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
<dpiAware>true
</asmv3:windowsSettings>
</asmv3:application>
</assembly>
2.3 生成go程序嵌入文件
rsrc.exe -manifest ico.manifest -o myapp.syso -ico myapp.ico
2.4 提示
- go get下載的rsrc.exe記得添加到環境變量PATH中,以免無法執行rsrc.exe。
- go get 如果下載較慢,可以通過go mod 方式下載。
- 生成的myapp.syso記得放到源碼文件目錄中。
3.編譯Go程序
將myapp.syso文件放到相應go程序下,然後直接運行go build .即可。
golang已經可以自動尋找子目錄下的 syso 文件。
例如我的程序。
4. 參考