![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как получить
Лёша © (2003-10-21 12:55:00)
собственно сабж.
заранее благодарю.
Dimaz-z (2003-10-21 13:58:00) [1]
function Tfrm_main.get_version(filename: string): string;
var
VISize: cardinal;
VIBuff: pointer;
trans: pointer;
buffsize: cardinal;
temp: integer;
str: pchar;
LangCharSet: string;
LanguageInfo: string;
function GetStringValue(const From: string): string;
begin
VerQueryValue(VIBuff, pchar("\StringFileInfo\"+LanguageInfo+"\"+From), pointer(str),
buffsize);
if buffsize > 0 then
Result := str else Result := "n/a";
end;
begin
VIBuff := nil;
VISize := GetFileVersionInfoSize(pchar(Filename), buffsize);
VIBuff := AllocMem(VISize );
GetFileVersionInfo(pchar(Filename), cardinal(0), VISize, VIBuff);
VerQueryValue(VIBuff, "\VarFileInfo\Translation", Trans, buffsize);
temp:=0;
StrLCopy(@temp, pchar(Trans), 2);
LangCharSet:=IntToHex(temp, 4);
StrLCopy(@temp, pchar(Trans)+2, 2);
LanguageInfo := LangCharSet+IntToHex(temp, 4);
Result := GetStringValue("FileVersion");
end;
clickmaker (2003-10-21 13:02:00) [2]
API - GetFileVersionInfo
В RxLib есть компонент