hasis
驱动牛犊
驱动牛犊
  • 注册日期2003-01-07
  • 最后登录2006-04-03
  • 粉丝0
  • 关注0
  • 积分57分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
阅读:3638回复:11

如何设置一个EXE的版本号公司名等信息

楼主#
更多 发布于:2005-03-28 14:44
如何设置一个EXE的版本号公司名等信息?

Thanks
大学课程加上语文吧,否则在驱网里都不会提问题:)
qinxg
驱动小牛
驱动小牛
  • 注册日期2002-11-15
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分37分
  • 威望27点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-03-29 17:53
在编译器里直接设置
如: VC++. Resource/Version里设置
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
板凳#
发布于:2005-03-29 22:02
在RC文件里设置...
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
hasis
驱动牛犊
驱动牛犊
  • 注册日期2003-01-07
  • 最后登录2006-04-03
  • 粉丝0
  • 关注0
  • 积分57分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-03-30 20:44
对不起,是我没说清楚

我想编写一个程序,用它来对一个已有的可执行文件进行版本信息的更改,而不是对它本身进行更改。
大学课程加上语文吧,否则在驱网里都不会提问题:)
maqian
驱动中牛
驱动中牛
  • 注册日期2002-08-07
  • 最后登录2014-09-16
  • 粉丝2
  • 关注1
  • 积分12分
  • 威望120点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-03-31 08:21
UpdateResource.
你自己到MSDN上一查,就能看到完整的例子.
五花马,千金裘,呼儿将出换美酒。 我不喝酒,喝可乐。
hasis
驱动牛犊
驱动牛犊
  • 注册日期2003-01-07
  • 最后登录2006-04-03
  • 粉丝0
  • 关注0
  • 积分57分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2005-04-07 10:37
使用UpdateResource更改其它文件的资源是可以完成的。

而我的要求是修改可执行文件的版本信息,而UpdateResource函数是按照数据块(LPVOID)进行升级的

现在我可以得到可执行文件的版本信息块,但需要对其进行更改后,才能再UpdateResource,但版本信息块没有固定格式,因此也没法修改,当然也就无法UpdateResource。

请问使用UpdateResource升级版本时,版本信息有无格式可遵循?
大学课程加上语文吧,否则在驱网里都不会提问题:)
bmyyyud
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2010-01-21
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望130点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2005-04-07 18:03
小声问一下,哥们,想干什么?
滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红 白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 尽付笑谈中
maqian
驱动中牛
驱动中牛
  • 注册日期2002-08-07
  • 最后登录2014-09-16
  • 粉丝2
  • 关注1
  • 积分12分
  • 威望120点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2005-04-08 09:59
我知道版本信息的格式。可是,我也想问一下,哥们,你想干什么?
五花马,千金裘,呼儿将出换美酒。 我不喝酒,喝可乐。
hasis
驱动牛犊
驱动牛犊
  • 注册日期2003-01-07
  • 最后登录2006-04-03
  • 粉丝0
  • 关注0
  • 积分57分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2005-04-08 14:51
难道我的叙述真的有问题?

目的:欲编写一个程序,根据用户输入信息,更改某一可执行文件(EXE)或动态链接库(DLL)的版本信息。
如:Windows画图程序MsPaint.exe,在右键查看版本信息时,公司名称为Microsoft Corporation,而通过目的程序,则可以将公

司名称变为Lenovo。

目前进度:
可以实现获取可执行文件的版本信息,但不会修改版本信息。

可行方法:
使用UpdateResource()可实现修改资源(包括版本信息)目的。

操作步骤:
1。使用FindResource()等系列函数获取 EXE文件的版本信息,该信息LPSTR类型,是个数据块。
2。修改该版本信息数据块,如修改公司名称、版本号等。
3。使用BeginUpdateResource()函数获取 EXE文件的资源句柄。
4。使用UpdateResource()函数和第二步修改后的资源数据块修改 EXE文件。

问题:
在第二步,我如何修改版本信息数据块(如修改公司名称、版本号等)?因为是大长串的二进制串,没有固定的规律可言。

这个信息数据块有特定的数据结构吗?


不知各位老大明白了我的意思没有?

大学课程加上语文吧,否则在驱网里都不会提问题:)
bmyyyud
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2010-01-21
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望130点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2005-04-08 15:07
果然不出所料,据我所知它跟别的资源没什么区别
滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红 白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 尽付笑谈中
maqian
驱动中牛
驱动中牛
  • 注册日期2002-08-07
  • 最后登录2014-09-16
  • 粉丝2
  • 关注1
  • 积分12分
  • 威望120点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2005-04-08 16:55
hasis,你不说这么多我也知道你的意思。想问的是:你干吗要改别人EXE的版本信息?
其实,改版本信息很简单,一点技术含量都没有。 :)
五花马,千金裘,呼儿将出换美酒。 我不喝酒,喝可乐。
hasis
驱动牛犊
驱动牛犊
  • 注册日期2003-01-07
  • 最后登录2006-04-03
  • 粉丝0
  • 关注0
  • 积分57分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2005-04-11 09:15
Cry...

真是很简单吗?看来我很笨笨呀
大学课程加上语文吧,否则在驱网里都不会提问题:)
游客

返回顶部