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

Вниз

Как вытнуть данные из ресурсного файла   Найти похожие ветки 

 
galina   (2004-03-12 12:28) [0]

Есть такой *.RC файл  по нему  создается ресурсный файл (дерективой компилятора {$R "....res" "......RC"})
*.RC:

VERSIONINFO_1 VERSIONINFO
FILEVERSION 1, 0, 0, 0
PRODUCTVERSION 1, 0, 0, 0
FILEOS VOS__WINDOWS32
FILETYPE VFT_APP
{
BLOCK "StringFileInfo"
{
 BLOCK "080904E4"
 {
  VALUE "CompanyName", ".....\000"
  VALUE "FileDescription", "....\000"
  VALUE "FileVersion", ".....\000"
  VALUE "DBVersion", "1.0.0.0\000"
  VALUE "InternalName", "...........\000"
  VALUE "LegalCopyright", "....................\000"
  VALUE "OriginalFilename", "...........\000"
 }

}

BLOCK "VarFileInfo"
{
 VALUE "Translation", 2057, 1252
}

}

MAINICON ICON "Feather.ico"

Как вытянуть программно с такого файла информацию о версии.
Если кто знает помогите.
Зарание благодарна.


 
Гаврила   (2004-03-12 12:43) [1]

функцией VerQueryValue


 
galina   (2004-03-12 12:44) [2]

Спасибо


 
Юрий Зотов ©   (2004-03-12 12:55) [3]

Из справки Delphi:

procedure TForm1.Button1Click(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);
 if n > 0 then
 begin
   Buf := AllocMem(n);
   Memo1.Lines.Add("VersionInfoSize = " + IntToStr(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);
   FreeMem(Buf, n);
 end
 else
   Memo1.Lines.Add("No version information found");
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.024 c
3-1078401153
LAndreyV
2004-03-04 14:52
2004.04.04
Query1.Delete - иногда работает, а иногда выдает ошибку


6-1074870110
Sirruf
2004-01-23 18:01
2004.04.04
Права доступа к сетевому ресурсу


14-1078900514
Карелин Артем
2004-03-10 09:35
2004.04.04
Полетела Флэшка. Что делать?


1-1079675467
Newb
2004-03-19 08:51
2004.04.04
Как заставить колесо мышки прокручивать скрол на форме


11-1059573285
Sapersky_
2003-07-30 17:54
2004.04.04
Свойство Localizy