Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.11;
Скачать: CL | DM;

Вниз

Version Information   Найти похожие ветки 

 
ppcat   (2002-03-24 17:52) [0]

Не могу прочитать информацию о версии файла, хотя Windows Shell - может. Вот пример скопированный из хелпа.

procedure TfmMain.Button2Click(Sender: TObject);
const
InfoNum = 10;
InfoStr: array[1..InfoNum] of string = ("CompanyName", "FileDescription", "FileVersion", "InternalName", "LegalCopyright", "LegalTradeMarks", "OriginalFileName", "ProductName", "ProductVersion", "Comments");
var
S: string;
n, Len, i: DWORD;
Buf: PChar;
Value: PChar;
begin
S := Application.ExeName;
n := GetFileVersionInfoSize(PChar(S), n);
Memo1.Lines.Add("VersionInfoSize = " + IntToStr(n));
if n > 0 then
begin
Buf := AllocMem(n);
GetFileVersionInfo(PChar(S), 0, n, Buf);
for i := 1 to InfoNum do
if VerQueryValue(Buf, PChar("StringFileInfo\040904E4\" + InfoStr[i]), Pointer(Value), Len) then
Memo1.Lines.Add(InfoStr[i] + " = " + Value)
else
Memo1.Lines.Add(InfoStr[i] + " = none");
FreeMem(Buf, n);
end
else
Memo1.Lines.Add("No version information found");
end;

???


 
MBo ©   (2002-03-25 08:00) [1]

http://dims.gpsm.ru/files/dimpas.htm


 
ghost_by ©   (2002-03-25 08:17) [2]

function GetFileVersion(const FileName:string):string;
var
InfoSize,Wnd:DWORD;
VerBuf:Pointer;
FI:PVSFixedFileInfo;
VerSize:DWORD;
begin
Result:="";
InfoSize:=GetFileVersionInfoSize(PChar(FileName),Wnd);
if InfoSize<>0 then begin
GetMem(VerBuf,InfoSize);
try
if GetFileVersionInfo(PChar(FileName),Wnd,InfoSize,VerBuf) then
if VerQueryValue(VerBuf,"\",Pointer(FI),VerSize) then
Result:=IntToStr(FI.dwFileVersionMS shr 16)+"."+
IntToStr(FI.dwFileVersionMS and $FFFF)+"."+
IntToStr(FI.dwFileVersionLS shr 16)+"."+
IntToStr(FI.dwFileVersionLS and $FFFF);
finally
FreeMem(VerBuf);
end;
end;
end;



 
Юрий Федоров ©   (2002-03-29 19:24) [3]

Я понял,в чем дело :
040904E4 - это английский, для русского - 041904E3




Страницы: 1 вся ветка

Текущий архив: 2002.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
3-32690
Barmutik
2002-03-20 16:28
2002.04.11
Как в Midas вернуть результатом работы функции динамический массив ?


1-32822
SuperIgor
2002-03-28 21:28
2002.04.11
Срочно помогите!!!


7-32989
Ura
2002-01-18 12:46
2002.04.11
Определение принтера в системе


3-32668
DeLz
2002-03-20 12:39
2002.04.11
функция BDE - dbiAddAlias


1-32893
Alx2
2002-03-29 17:19
2002.04.11
Чего-то я не улавливаю :(