Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];

Вниз

форма   Найти похожие ветки 

 
55555   (2002-04-18 11:12) [0]

Доброе время суток.
Вопрос банальный. Каждый из нас при написании программы писал эту форму. На самом деле EXEшник уже содержит всю информацию коментарии, версию, название продукта, имя компании и тд.
Хотелось бы узнать кто как решает эту задачу.
Вот функция, которую я выдернул где-то в сокровищнице и слегка переделал
function tform1.GetBuildInfo(FileName: String): String;
var
VerInfoSize,
VerValueSize,
Dummy: DWORD;
VerInfo: Pointer;
VerValue: PVSFixedFileInfo;

begin
Result := "";
try
VerInfoSize := GetFileVersionInfoSize(PChar(FileName), Dummy);
begin
GetMem(VerInfo, VerInfoSize);
try
FillChar(VerInfo^, VerInfoSize, 0);
GetFileVersionInfo(PChar(FileName), 0, VerInfoSize, VerInfo);
if VerInfo <> nil then
begin
VerQueryValue(VerInfo, "\", Pointer(VerValue), VerValueSize);
with VerValue^ do
begin
Result := FloatToStr(dwFileVersionMS shr 16);
Result :=Result +"."+ FloatToStr(dwFileVersionMS and $FFFF);
Result :=Result +"."+ FloatToStr(dwFileVersionLS shr 16);
Result :=Result +"."+ FloatToStr( dwFileVersionLS and $FFFF);
end;
end;
finally
FreeMem(VerInfo, VerInfoSize);
end;
end;
except
Result := "";
end;
end;


 
55555   (2002-04-18 15:34) [1]

up^
Не уж то не интересна тема :(


 
drpass   (2002-04-18 16:49) [2]

Да нет, у меня была мысль сделать такую фишку... А потом я подумал, а почему бы просто не кинуть Label на форму?


 
Толик   (2002-04-18 17:32) [3]

Не то чтобы неинтересна, просто нового ничего не придумать: используются три ф-и
GetFileVersionInfoSize
GetFileVersionInfo
VerQueryValue
и использовать их можно только единственным образом (см. help). А уж какие оболочки вокруг них понавешать - так это уже дело вкуса. Я например оформил это как класс, который по имени файла возвращает инфу о нём...


 
Pat   (2002-04-18 18:46) [4]

Для формы "О программе" я юзаю ShellAbout()



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

Форум: "Основная";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.004 c
3-2445
rex
2002-04-10 08:18
2002.05.02
Как организовать связь главный-детальный в таблицах InterBase ?


4-2717
Demn
2002-02-28 09:22
2002.05.02
ListView


14-2656
kat
2002-03-25 16:05
2002.05.02
Картинки к кнопкам


3-2464
Tolstomordik
2002-04-11 10:00
2002.05.02
Сохранение результатов SQL-запроса во внешний файл.


3-2461
MCFire
2002-04-10 18:31
2002.05.02
Как грамотно составить TreeView из таблицы?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский