首页
社区
课程
招聘
[旧帖] 50Kx高分悬赏!!DELPHI 如何修改EXE版本信息!! 0.00雪花
发表于: 2011-6-30 09:07 7553

[旧帖] 50Kx高分悬赏!!DELPHI 如何修改EXE版本信息!! 0.00雪花

2011-6-30 09:07
7553
DELPHI 如何修改软件版本信息!!这个我弄了好久都没有找到资料
请大牛们
给一份完整的代码 太感谢了
或者联系QQ:527880018 谢谢了

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 16
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
不太明白你的意思,你是指开发时修改版本信息?还是更改别人程序中的版本信息?如果是开发时,可以Project-Options-Version Info标签里有设定。如果你要修改别人的,用ExeScope或FreeRES这类的资源修改工具。
2011-6-30 10:32
0
雪    币: 10
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
何给自己的dll文件添加版本信息呢?
首先建立一个文件后缀为.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也有了自己的版本信息了

给点分分
2011-6-30 15:10
0
游客
登录 | 注册 方可回帖
返回
//