Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать версию файла в делфях [D7, Win2k]


vasili ©   (2004-09-20 11:16:00) 

Хочу создать стандартный модуль "О программе" и хочу запихать туда версию о программе взяв её из версии файла а также некоторые другие данные содержащиеся в этом разделе.
подскажите как это сделать????


vasili   (2004-09-27 06:03:00) [1]

спасибо получилось
А можно данным способом узнать еще какие либо
данные о программе если можно то как?


ALS   (2004-09-20 11:48:00) [2]


function GetFileVersion(const FName, VName: string): string;
var sz, hndl : DWORD;
   buflen : UINT;
   pData, buf : Pointer;
   Lang_CSet : string;
begin
 Result := '';
 sz := GetFileVersionInfoSize(PChar(FName), hndl);
 if sz = 0 then exit;
 GetMem(pData, sz);

 try
   // Get VersionInfo block, Lang & CharSet
   if  GetFileVersionInfo(PChar(FName), hndl, sz, pData)
   and VerQueryValue(pData, '\VarFileInfo\Translation', buf, buflen) then
   begin
     Lang_CSet := IntToHex(PWORD(buf)^, 4) + IntToHex(PWORD(@(PChar(buf)[2]))^, 4);
     // Get "VName" from version data
     if VerQueryValue(pData,
        PChar('\StringFileInfo\' + Lang_CSet + '\' + VName),
        buf, buflen) then Result := PChar(Buf)
       //else Result := 'UNAVAILABLE'
   end
 finally
   FreeMem(pData)
 end
end;

...
MessageBox(0, PChar('File version: ' + GetFileVersion(Application.ExeName, 'FileVersion') + ^M^J +
'Product version: ' + GetFileVersion(Application.ExeName, 'ProductVersion')), 'Info', MB_OK)


Наверх

Титульная страница Поиск, карта сайта Написать письмо