Главная страница
    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.47 MB
Время: 0.006 c
8-60760
Whitewolf
2002-03-26 13:06
2002.08.19
GLScene и Delphi 6


3-60518
Ярослав
2002-07-30 10:11
2002.08.19
db-vista


1-60639
Leha-neo
2002-08-07 20:25
2002.08.19
Как считывать файлы...


14-60840
AL2002™±2‰
2002-07-25 01:01
2002.08.19
Уснули все.


1-60635
Invega
2002-08-08 19:38
2002.08.19
Как в MainMenu сделать...





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