在Project|Opertions|Version Info下设置了版本信息,怎样将他读出来?(50分)

  • 主题发起人 主题发起人 ili
  • 开始时间 开始时间
I

ili

Unregistered / Unconfirmed
GUEST, unregistred user!
在Project|Opertions|Version Info下设置了版本信息,怎样将他读出来?
 
怎么,没有写几个字就不能计阅邮件通知呀:)
 
3h,你说什么?是回答问题么?好像看不懂:(
 
Project|Opertions|Version Info 是不是只能在完全编译时才能递增版本号?

如果能在软件的About里直接显示这个版本信息,倒是好主意。

所以,关注答案。


 
来自:cAkk 时间:1999-10-5 15:09:09 ID:139642
下面的函数可以得到文件的版本信息,注意,delphi做的程序,如果想
包含版本信息, 必须在菜单"project/options/version info"里面
添加版本信息.
function GetVersion;
var
InfoSize, Wnd: DWORD;
VerBuf: Pointer;
szName: array[0..255] of Char;
Value: Pointer;
Len: UINT;
TransString:string;
begin
InfoSize := GetFileVersionInfoSize(PChar(FileName), Wnd);
if InfoSize <> 0 then
begin
GetMem(VerBuf, InfoSize);
try
if GetFileVersionInfo(PChar(FileName), Wnd, InfoSize, VerBuf) then
begin
Value :=nil;
VerQueryValue(VerBuf, '/VarFileInfo/Translation', Value, Len);
if Value <> nil then
TransString := IntToHex(MakeLong(HiWord(Longint(Value^)), LoWord(Longint(Value^))), 8);
Result := '';
StrPCopy(szName, '/StringFileInfo/'+Transstring+'/FileVersion');
^^^^^^^此处换成ProductVersion得到的是"产品版本"
if VerQueryValue(VerBuf, szName, Value, Len) then
Result := StrPas(PChar(Value));
end;
finally
FreeMem(VerBuf);
end;
end;
end;




--------------------------------------------------------------------------------
来自:cAkk 时间:1999-10-5 15:43:42 ID:139661
更正,函数声明为:
function GetVersion(filename:string):string;

忘了加参数了. :-)




 
后退
顶部