Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7431831
  • 博文数量: 1758
  • 博客积分: 18684
  • 博客等级: 上将
  • 技术积分: 16252
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-02 10:28
个人简介

啥也没写

文章分类

全部博文(1758)

文章存档

2024年(4)

2023年(44)

2022年(39)

2021年(46)

2020年(43)

2019年(27)

2018年(44)

2017年(50)

2016年(47)

2015年(15)

2014年(21)

2013年(43)

2012年(143)

2011年(228)

2010年(263)

2009年(384)

2008年(246)

2007年(30)

2006年(38)

2005年(2)

2004年(1)

分类: C/C++

2022-07-05 15:21:04

zhuanlan.zhihu.com  /p/528648651

一、获取所需的工具

go install github.com/josephspurrier/goversioninfo/cmd/goversioninfo@latest 

执行完毕后GOPATH的bin目录里出现一个goversioninfo.exe则为成功。

二、准备源码

关键的一行代码就是//go:generate goversioninfo

//go:generate goversioninfo package main import ( "fmt" "time" ) func main() { fmt.Println("hello world") for { time.Sleep(time.Hour) } } 

三、在项目目录创建一个文件名为versioninfo.json

json文件内容是:

{ "FixedFileInfo": { "FileVersion": { "Major": 1, "Minor": 0, "Patch": 0, "Build": 0 }, "ProductVersion": { "Major": 1, "Minor": 0, "Patch": 0, "Build": 0 }, "FileFlagsMask": "3f", "FileFlags ": "00", "FileOS": "040004", "FileType": "01", "FileSubType": "00" }, "StringFileInfo": { "Comments": "这是程序描述", "CompanyName": "这是公司名称", "FileDescription": "这是文件说明", "FileVersion": "v1.0.0.0", "InternalName": "这是程序内部名称", "LegalCopyright": "Copyright (c) 2021 XCGUI", "LegalTrademarks": "", "OriginalFilename": "这是原始文件名", "PrivateBuild": "", "ProductName": "这是产品名称", "ProductVersion": "v1.0.0.0", "SpecialBuild": "" }, "VarFileInfo": { "Translation": { "LangID": "0804", "CharsetID": "04B0" } }, "IconPath": "icon.ico", "ManifestPath": "" }

四、编译程序

找一个ico图标命名为icon.ico放到项目目录。

然后执行命令:

go generate 

成功则会在目录中生成一个resource.syso文件,只用生成一次就行了,改变了json或图标的话,需要再次生成。

最后执行go build

五、展示效果


阅读(1483) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~