![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать текущую версию приложения... [D5, Win2k]
tovSuhov © (2002-02-04 08:06:00)В ФАК-ах ничего не нашел...
Имеется ввиду версия разрабатываемого приложения (а не сторонней программы)...
Заранее благодарен.
Юрий Федоров (2002-02-04 10:05:00) [1]type
TFileVersion = record
Major : integer;
Minor : integer;
Release : integer;
Build : integer;
AsString : string;
end;
function GetFileVersion(fName:String;var ver:tFileVersion):Boolean;
var str :pVSFixedFileInfo;
FvSize:dWord;
s :AnsiString;
{$ifdef ver100}
h :integer;
{$else}
h :Cardinal;
{$Endif}
p :Pointer;
begin
result:=false;
s:=fName;
FvSize:=GetFileVersionInfoSize(pChar(s),h);
if FvSize<>0 then
begin
GetMem(p,fvSize);
if GetFileVersionInfo(pChar(s),0,Fvsize,p) then
begin
if VerQueryValue(p,"\",Pointer(str),h) then
begin
ver.Major := HiWord(str.dwFileVersionMS);
ver.Minor := LoWord(str.dwFileVersionMS);
ver.Release:= HiWord(str.dwFileVersionlS);
ver.Build := LoWord(str.dwFileVersionlS);
ver.AsString:=IntToStr(ver.Major) +"."+
IntToStr(ver.Minor) +"."+
IntToStr(ver.Release)+"."+
IntToStr(ver.Build);
result:=true;
end;
end;
freeMem(p,FvSize);
end;
end;
Проверь, код очень старый, может оказаться какая-то лажа