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

Вниз

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

 
^Sanya   (2002-08-08 17:36) [0]

Ведь она там хранится...
Заранее благодарен.


 
Skier   (2002-08-08 17:39) [1]

>^Sanya
В RX есть класс TVersionInfo


 
^Sanya   (2002-08-08 20:56) [2]

Прошу прощения, а что есть за чудо такое - "RX"?
Я искал "TVersionInfo" как текст в папочке "Source"...увы, не нашёл :(
Помогите, пожалуйста. Заранее благодарю.


 
TTCustomDelphiMaster   (2002-08-08 21:48) [3]

^Sanya © (08.08.02 17:36)
Смотри в ComCtrls функцию
function GetComCtlVersion: Integer;


 
Poirot   (2002-08-08 21:48) [4]

посмотри здесь в ФАках... там есть что-то о получении версии...
Кстати получить версию из ресурса - это интересно.... Вы посмотрите напр через Resource WorkShop что собой представляет эта запись....
Кстати, ресурс включается в конечный комп. файл проекта - зачем же через ресурс получать версию???


 
^Sanya   (2002-08-08 23:01) [5]

->Poirot
Позволю себе цитату из классики:
GetComCtlVersion function -"indicates which version of ComCtl32.dll is installed." Причём тут версия проекта(или приложения, если угодно) ?


 
Юрий Зотов   (2002-08-08 23:24) [6]

> ресурс включается в конечный комп. файл проекта - зачем же
> через ресурс получать версию

Как раз оттуда ее и получают - из ресурса в теле exe/dll.


> Причём тут версия проекта(или приложения, если угодно)?

При том, что надо взять GetComCtlVersion за образец и написать свою такую же функцию.


 
^Sanya   (2002-08-09 00:00) [7]

> При том, что надо взять GetComCtlVersion за образец и написать свою такую же функцию.

А более простого решения проблемы не существует?


 
^Sanya   (2002-08-09 00:02) [8]

Кстати, а через GetFileVersionInfo не получится?


 
Юрий Зотов   (2002-08-09 00:14) [9]

> Кстати, а через GetFileVersionInfo не получится?
Получится. Насколько я помню, GetComCtlVersion через нее и работает.


> А более простого решения проблемы не существует?
Скопировать к себе код GetComCtlVersion и подправить пару строк - куда же еще проще-то?


 
^Sanya   (2002-08-09 00:36) [10]

Нашёл выход:

procedure GetFileVersion(FileName: string; var Major1, Major2,
Minor1, Minor2: Integer);
var
Info: Pointer;
InfoSize: DWORD;
FileInfo: PVSFixedFileInfo;
FileInfoSize: DWORD;
Tmp: DWORD;
begin
InfoSize := GetFileVersionInfoSize(PChar(FileName), Tmp);
if InfoSize = 0 then
raise Exception.Create("Can""t get file version information for "
+ FileName);
GetMem(Info, InfoSize);
try
GetFileVersionInfo(PChar(FileName), 0, InfoSize, Info);
VerQueryValue(Info, "\", Pointer(FileInfo), FileInfoSize);
Major1 := FileInfo.dwFileVersionMS shr 16;
Major2 := FileInfo.dwFileVersionMS and $FFFF;
Minor1 := FileInfo.dwFileVersionLS shr 16;
Minor2 := FileInfo.dwFileVersionLS and $FFFF;
finally
FreeMem(Info, FileInfoSize);
end;
end;


 
Poirot   (2002-08-09 01:27) [11]


> Юрий Зотов © (08.08.02 23:24)
> > ресурс включается в конечный комп. файл проекта - зачем
> же
> > через ресурс получать версию
>
> Как раз оттуда ее и получают - из ресурса в теле exe/dll.

Я предполагал, что под ресурсом подр. RES(RC)... т.е. оттедльный файл....



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

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

Наверх





Память: 0.46 MB
Время: 0.006 c
1-60602
Doctor
2002-08-08 11:21
2002.08.19
Шрифты


3-60488
Кирилл Усов
2002-07-29 09:09
2002.08.19
транзакции на interbase 5.6


3-60535
yaJohn
2002-07-28 19:15
2002.08.19
КАК заставить обновится TClientDataSet????


1-60564
KF
2002-08-06 04:57
2002.08.19
Пароли Outlook


4-60893
Nubie
2002-05-21 18:43
2002.08.19
Невидимые файлы





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский