code=delphi]function GetFileVersion(fn: string; var ma, mi, r ,b: integer):boolean;//得到本程序的版本号
var
buf, p: pChar;
sver: ^VS_FIXEDFILEINFO ;
i: LongWord;
begin
i:= GetFileVersionInfoSize(pchar(fn), i);
new(sver);
p:= pchar(sver);
GetMem(buf, i);
ZeroMemory(buf, i);
result:= false;
if GetFileVersionInfo(pchar(fn), 0, 4096, pointer(buf)) then
if VerQueryValue(buf, '\', pointer(sver), i) then begin
ma:= sVer^.dwFileVersionMS shr 16;
mi:= sver^.dwFileVersionMS and $0000ffff;
r:= sver^.dwFileVersionLS shr 16;
b:= sver^.dwFileVersionLS and $0000ffff;
result:= true;
end;
Dispose(p);
FreeMem(buf);
end;
[/code]这是我在网上找到的一段代码。求高人帮忙解释下。谢谢
var
buf, p: pChar;
sver: ^VS_FIXEDFILEINFO ;
i: LongWord;
begin
i:= GetFileVersionInfoSize(pchar(fn), i);
new(sver);
p:= pchar(sver);
GetMem(buf, i);
ZeroMemory(buf, i);
result:= false;
if GetFileVersionInfo(pchar(fn), 0, 4096, pointer(buf)) then
if VerQueryValue(buf, '\', pointer(sver), i) then begin
ma:= sVer^.dwFileVersionMS shr 16;
mi:= sver^.dwFileVersionMS and $0000ffff;
r:= sver^.dwFileVersionLS shr 16;
b:= sver^.dwFileVersionLS and $0000ffff;
result:= true;
end;
Dispose(p);
FreeMem(buf);
end;
[/code]这是我在网上找到的一段代码。求高人帮忙解释下。谢谢
解决方案 »
- dear all :我想判断字符串'hello' 是否在集合 ['hello','world','god']里面,用了如下语句,错误的说,请赐教
- 怎么样捕捉鼠标滚轮滚动的消息??
- 一字符串有多个相同字符,怎样获取最后一个字符的位置?
- 第三方控件的使用问题————在线等待啊!!!
- 急求做一个局域网管理软件~
- 关于开发win2000下的服务程序的问题
- 如何控制listbox的当前显示
- 在程序中改变数据控件DBLabel的数据源怎么做呢?
- 小二给大家上菜啦(1)??:提交不了更新的数据了!
- 请问如何使FORM响影回车键
- MyStoredProc存储过程 输出函数,如何调用?
- vc 转delphi报错
http://technet.microsoft.com/zh-cn/subscriptions/aa909176
如果将其中的dwFileVersion引用改为dwProductVersion就可以获取产品版本号