Delphi2010如何获取程序内部自身版本号?
2015-07-02 09:38
441 查看
用原来的GetFileVersionInfo只能获取Delpi7的程序版本号,用在Delphi2010中就不管用了
//------ 获取文件版本号
function F_GetFileVersion(FN: string): string;
var
Temp, InfoSize: Cardinal;
FileData: Pointer;
FileInfo: PVSFixedFileInfo;
begin
Result := '';
if not FileExists(FN) then Exit;
InfoSize := GetFileVersionInfoSize(PChar(FN), Temp);
if InfoSize = 0 then Exit; //没有版本号
FileData := GetMemory(InfoSize);
try
if not GetFileVersionInfo(PChar(FN), 0, InfoSize, FileData) then Exit;
if not VerQueryValue(FileData, '\', Pointer(FileInfo), Temp) then Exit;
Result := Format('%d.%d.%d.%d',
[FileInfo.dwFileVersionMS div $10000,
FileInfo.dwFileVersionMS mod $10000,
FileInfo.dwFileVersionLS div $10000,
FileInfo.dwFileVersionLS mod $10000]);
finally
FreeMemory(FileData)
end;
解决方法是用第三方控件Rave,里面有个RzVersionInofo,放上去编译的时候勾选Including version information in project,就可以获取版本号了,获取方法:Showmessage(RzVersionInofo1.FileVersion);
//------ 获取文件版本号
function F_GetFileVersion(FN: string): string;
var
Temp, InfoSize: Cardinal;
FileData: Pointer;
FileInfo: PVSFixedFileInfo;
begin
Result := '';
if not FileExists(FN) then Exit;
InfoSize := GetFileVersionInfoSize(PChar(FN), Temp);
if InfoSize = 0 then Exit; //没有版本号
FileData := GetMemory(InfoSize);
try
if not GetFileVersionInfo(PChar(FN), 0, InfoSize, FileData) then Exit;
if not VerQueryValue(FileData, '\', Pointer(FileInfo), Temp) then Exit;
Result := Format('%d.%d.%d.%d',
[FileInfo.dwFileVersionMS div $10000,
FileInfo.dwFileVersionMS mod $10000,
FileInfo.dwFileVersionLS div $10000,
FileInfo.dwFileVersionLS mod $10000]);
finally
FreeMemory(FileData)
end;
解决方法是用第三方控件Rave,里面有个RzVersionInofo,放上去编译的时候勾选Including version information in project,就可以获取版本号了,获取方法:Showmessage(RzVersionInofo1.FileVersion);
相关文章推荐
- delphi tcombobox 光标 输入
- delphi中exit,abort,break,continue 的区别
- delphi 资源文件详解
- Delphi XE调用第三方库Jni详细过程
- DELPHI RES操作
- delphi DISQLite3使用例子
- delphi 四舍五入Round函数【百帖整理】
- Delphi 常用函数(数学函数)round、trunc、ceil和floor
- Delphi中使用Dos窗口输出调试信息
- 使用Delphi Xe8 开发微信功能 -- (四)微信支付商户平台之申请退款
- delphi学习笔记开头篇
- log delphi
- Delphi的基本函数
- delphi 基础之四 delphi 组织结构
- delphi 基础之三 编写和调用dll文件
- delphi 基础之三 文件流操作
- delphi 基础之二 面向对象概念初步
- delphi 基础之一 数据类型和基本语法
- delphi 截图简单的实现
- delphi2010 调用webservice