procedure TF_about.formcreate(sender:Tobject);
var
handle:Dword;
size:integer;
Rezbuffer:string;
sbsize:uint;
filename:string;
verinfo:string;
fixedfileinfobuf:PKSFixedFileInfo;
Ms,Ls:longint;
begin
productname.caption:=application.title;
filename:application.excname;
size:=getfileversioninfosize(pchar(filaname),handle);
if size>0 then
begin
setlength(kezbuffer,size);
getfileversioninfo(pchar(filename),handle,size,pchar(rezbuffer));
verqueryvalue(pchar(rezbuffer),'\',pointer(fixedfileinfobuf),sbsize);
ms:=fixedfileinfobuf^.dufileversionMS;
ls:=fixedfileinfobuf^.dufileversionLs;
verinfo;=format('%d,%d,%d,%d',[hiword(ms),loword(ms),hiword(ls),loword(ls)];
version.caption:='version'+verinfo;
end;
end;
这是一个自动升级版本号,产品名称的程序,调用api和delphi自带的about.
问题:1。我想请问一上是怎样调用或从那个地方调用到版本号,产品名称,比如说,我要升级版本,我怎样才能让它自动升级。
2。sbsize:uint,uint是什么类型。
3。不明白fixedfileinfobuf:pksfixedfileinfo;谢谢!!!
var
handle:Dword;
size:integer;
Rezbuffer:string;
sbsize:uint;
filename:string;
verinfo:string;
fixedfileinfobuf:PKSFixedFileInfo;
Ms,Ls:longint;
begin
productname.caption:=application.title;
filename:application.excname;
size:=getfileversioninfosize(pchar(filaname),handle);
if size>0 then
begin
setlength(kezbuffer,size);
getfileversioninfo(pchar(filename),handle,size,pchar(rezbuffer));
verqueryvalue(pchar(rezbuffer),'\',pointer(fixedfileinfobuf),sbsize);
ms:=fixedfileinfobuf^.dufileversionMS;
ls:=fixedfileinfobuf^.dufileversionLs;
verinfo;=format('%d,%d,%d,%d',[hiword(ms),loword(ms),hiword(ls),loword(ls)];
version.caption:='version'+verinfo;
end;
end;
这是一个自动升级版本号,产品名称的程序,调用api和delphi自带的about.
问题:1。我想请问一上是怎样调用或从那个地方调用到版本号,产品名称,比如说,我要升级版本,我怎样才能让它自动升级。
2。sbsize:uint,uint是什么类型。
3。不明白fixedfileinfobuf:pksfixedfileinfo;谢谢!!!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货