首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Delphi修改另一个delphi程序的版本信息

用Delphi修改另一个delphi程序的版本信息
EN

Stack Overflow用户
提问于 2009-04-18 02:45:34
回答 2查看 1.9K关注 0票数 2

我想在Delphi中创建一个小工具,它可以更新另一个exe文件中的Delphi版本信息。我知道有几个现有的实用程序可以做到这一点,但我需要完全的编程控制,并且不喜欢命令行等。

在网上搜索后,我找不到任何修改可执行文件中版本信息的Delphi源代码示例,有人能提供一些代码或指导吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-04-18 04:17:12

我不能给出一个完整的答案,但我可以让你开始。有一个an article at DelphiDabbler.com填充了如何从文件中获取版本信息。GetFileVersionInfo是实现这一功能的Windows API。要设置它,我相信UpdateResource是您需要使用的Windows API函数。使用C语言的another article at CodeProject已经涵盖了这一点,但它应该会让您对需要做的事情有一个明确的概念。

祝好运!

编辑:我在Delphi新闻组上找到了一些代码,它们可能会给你更多帮助:

代码语言:javascript
复制
// Credit to Michael Winter for this code!
Sz := GetLen;
GetMem(Data, Sz);
try
  GetData(Data, Sz);
  HFile := BeginUpdateResource(PChar(FileName), false);
  if HFile = 0 then
    RaiseLastWin32Error;
  DoDiscard := true;
  try
    if not UpdateResource(HFile, RT_VERSION, PChar(1), 0, Data, Sz) then
      RaiseLastWin32Error;
    DoDiscard := false;
  finally
    if not EndUpdateResource(HFile, DoDiscard) then
      RaiseLastWin32Error;
  end;
finally
  FreeMem(Data);
end;

这只是一个代码片段,需要您做一些工作,但这是工作的最大份额!

票数 7
EN

Stack Overflow用户

发布于 2009-04-18 15:30:07

还有科林·威尔逊的XN Resource Editor,它的源代码可能会有所帮助。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/762778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档