Главная страница
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.021 c
1-32878
Ghost.
2002-03-29 15:14
2002.04.11
На счет передачи фокуса


1-32889
Вячеслав
2002-03-29 11:05
2002.04.11
QTINTF.DLL-как от нее избавиться?


14-32953
Лана Розанова
2002-03-03 21:42
2002.04.11
Привет всем!!!


3-32626
skywalker
2002-03-12 11:15
2002.04.11
Куча вопросов по Oracle


3-32661
AndDem
2002-03-18 16:31
2002.04.11
SQL-запрос. Проблема с пониманием возможностей SQL.