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

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

по ресурсам [D5, Win95/98]


ded_di ©   (2002-04-16 09:49:00) 

Как получить то, что прописывается в Project->Options->Version Info?


Толик   (2002-04-16 10:26:00) [1]

Идея заключается в использовании ф-й
GetFileVersionInfoSize,
GetFileVersionInfo,
VerQueryValue

с первыми двумя д.б. всё понятно (см. help), а вот с VerQueryValue есть тонкости:
необходимо узнать значение "\VarFileInfo\Translation" делается это так:

VerQueryValue(VerData, pchar("\VarFileInfo\Translation"), Data, Size), где

VerData := System.GetMemory(Size),
Size - см. GetFileVersionInfoSize,
Data - то, куда возвращаются значения.

VersionTranslation := IntToHex((longword(Data^) shr 16)or(word(Data^) shl 16), 8)

для русского языка значение VersionTranslation = "041904E3"
затем, при выборе остальных значений используем эту строку:

VerQueryValue(VerData, pchar(Format("\StringFileInfo\%s\CompanyName", [VersionTranslation]), Data, Size);
ShowMessage(pchar(Data));


drpass   (2002-04-16 10:19:00) [2]

Функция GetFileVersionInfo


Наверх

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