在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
答案是利用资源文件,微软早已经为我们做好了准备。
下面是一个具体的例子。 首先建立一个文件后缀为.rc(以ver.rc为例),用记事本打开,拷贝下面内容: ("//"号为注释,会被编译器丢弃,这里只是为了说明才加上的。) VS_VERSION_INFO VERSIONINFO //版本信息结构 FILEVERSION 1,0,0,1 //顾名思义文件版本,就是在属性页版本上面显示的| PRODUCTVERSION 1,0,0,1 //顾名思义产品版本 |这里是主版本信息 FILEFLAGSMASK 0x3fL //这里设为0x3fL就好了 | #ifdef _DEBUG FILEFLAGS 0x1L //VS_FF_DEBUG包括debug信息 #else FILEFLAGS 0x0L //无 #endif FILEOS 0x4L //对应于delphi中VOS__WINDOWS32,说明程序是win32程序 FILETYPE 0x2L //文件类型,$2是dll,$1是exe FILESUBTYPE 0x0L //文件子类型,一般设为0即可 BEGIN BLOCK "StringFileInfo" //这里设置文件其他的版本信息(详细信息) BEGIN BLOCK "080403A8" //所用语言080403A8简体中文,040904b0英语(美国) BEGIN VALUE "Comments", "My Dll Application test" //备注 VALUE "CompanyName", "JJony\0" //公司名 VALUE "FileDescription", "xxx.dll\0" //产品描述 VALUE "FileVersion", "1. 0. 0. 1\0" //文件版本 VALUE "InternalName", "" //内部名称 VALUE "LegalCopyright", "Copyright (C) 2006.6\0" //版权信息 VALUE "OriginalFilename", "xxx.dll\0" //源文件名 VALUE "ProductName", "xxx.dll\0" //产品名 VALUE "ProductVersion", "1. 0. 0. 1\0" //产品版本 END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x804, 0x03A8 //这里是关键哦,决定了是什么语言 END //0x0804, 0x03A8简体中文 END //0x0409, 0x04b0英语(美国) 你看出了什么没有,实际上就是填充了delphi中的VS_VERSIONINFO和VS_FIXEDFILEINFO结构, 只不过这里面的语言格式是VC的罢了:) 把上面存为.rc文件(以ver.rc为例)。 拷贝delphi7\bin\brcc32.exe到你的程序目录, 再建立ver.bat,输入: brcc32 ver.rc 保存。 双击运行ver.bat,生成ver.res,然后在你的dll工程里添加资源{$R ver.res} 重新编译dll,你会发现dll也有了自己的版本信息了。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论