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

Вниз

версия exe-шника   Найти похожие ветки 

 
patrol   (2003-01-10 14:11) [0]

Подскажите чайнику, как вытащить версию exe-шника, чтобы разместить еe в форме About?


 
Игорь Шевченко   (2003-01-10 14:23) [1]

procedure GetFileVersion(FileName: string; var Major1, Major2,
Minor1, Minor2: Integer);
{ Helper function to get the actual file version information }
var
Info: Pointer;
InfoSize: DWORD;
FileInfo: PVSFixedFileInfo;
FileInfoSize: DWORD;
Tmp: DWORD;
begin
Major1 := 0;
Major2 := 0;
Minor1 := 0;
Minor2 := 0;
// Get the size of the FileVersionInformatioin
InfoSize := GetFileVersionInfoSize(PChar(FileName), Tmp);
// If InfoSize = 0, then the file may not exist, or
// it may not have file version information in it.
if InfoSize = 0 then
Exit;
// Allocate memory for the file version information
GetMem(Info, InfoSize);
try
// Get the information
GetFileVersionInfo(PChar(FileName), 0, InfoSize, Info);
// Query the information for the version
VerQueryValue(Info, "\", Pointer(FileInfo), FileInfoSize);
// Now fill in the version information
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;



Использование:


....
var
VersionMajor: Integer;
VersionMinor: Integer;
Release, BuildNumber: Integer;
begin
if FileExists(Application.ExeName) then begin
GetFileVersion(Application.ExeName, VersionMajor, VersionMinor,
Release, BuildNumber);
cVersion.Caption := Format("Версия: %d.%d.%d (сборка %d)",
[VersionMajor, VersionMinor, Release, BuildNumber]);
end;
end;



 
patrol   (2003-01-10 14:41) [2]

Спасибо! Оно работает.
Мне еще не понятно, почему Build Counter при формировании exe-шника не увеличивается. Соответствующая галочка стоит на месте.


 
Anatoly Podgoretsky   (2003-01-10 14:49) [3]

А почему он должен увеличиваться, что ты для этого сделал?


 
Delirium^.Tremens   (2003-01-10 14:49) [4]

А ты добавь(удали) процедуру(функцию) в каком-нибудь модуле, скомпилируй и посмотри. В D7 работает.


 
Игорь Шевченко   (2003-01-10 14:51) [5]

patrol © (10.01.03 14:41)

Project|Build ...


 
Delirium^.Tremens   (2003-01-10 14:53) [6]

Игорь Шевченко © (10.01.03 14:51)

> Project|Build ...

Если не Delirium^.Tremens © (10.01.03 14:49) - не поможет, а так достаточно и Compile


 
patrol   (2003-01-10 15:01) [7]

Ну во-первых, я-девушка.
Delirium^.Tremens ©, и че так каждый раз перед построением удалять процедуры? Оно помогает, конечно, я попробовала.
А вот просто Build или Compile счетчик не увеличивают. Почему?


 
Игорь Шевченко   (2003-01-10 15:06) [8]

Delirium^.Tremens © (10.01.03 14:53)

Внимательно и вдумчиво читаем Help:

Check Auto-increment build number to have the build number incremented each time the Project | Build <Project> menu is
selected. (Other compilations do not change the build number.)

После этого пробуем два раза выполнить команду Project|Build имя_проекта, c включенной гайкой Auto-Increment Build Number, после каждого раза отображая версию.

И больше такую траву (Delirium^.Tremens © (10.01.03 14:49)) не курим :-)

С уважением,


 
Anatoly Podgoretsky   (2003-01-10 15:06) [9]

Build <> Compile
А галочка нащывается Build, вот его и надо делать.

Что то тебе не хочется верить Delirium^.Tremens © (10.01.03 14:53), неужели Борланд такую лажу допустил в 7 версии


 
Delirium^.Tremens   (2003-01-10 15:06) [10]

Это вопрос к Borland. Видимо autoincrement срабатывает только в случае достаточно серьезных изменений. Даже если навалить компонентов на формы, но не написать обработчиков - счетчик не увеличится. Не нравится - можно ручками :-)


 
patrol   (2003-01-10 15:18) [11]

Игорь Шевченко, насчет галки я в самом начале написала, что она включена.
А вот теперь, наверное, я склонна верить Delirium^.Tremens в том, что счетчик увеличивается только при серьезных изменениях. Наверное, оно и правильно. Хотя интересно знать, что Borland в таком случае понимает под серьезными изменениями. Лично для меня они серьезные (что я делаю), а он так почему-то не считает. Это неуважение к разработчику.

И вообще, с каждым днем все больше и больше убеждаюсь, что Delphi ваш вместе с Паскалем такое дерьмо! Я так думала 5 лет назад. И все-таки жизнь меня заставила с этим связаться. Мое мнение не изменилось.


 
Alx2   (2003-01-10 15:22) [12]

>patrol © (10.01.03 15:18
>И вообще, с каждым днем все больше и больше убеждаюсь, что
>Delphi ваш вместе с Паскалем такое дерьмо! Я так думала 5 лет
>назад. И все-таки жизнь меня заставила с этим связаться. Мое
>мнение не изменилось.

Вы просто не умеете их готовить (с) :)


 
Anatoly Podgoretsky   (2003-01-10 15:27) [13]

Сурово ты с Паскалем :-)


 
patrol   (2003-01-10 15:32) [14]

ЭТО КРИК ДУШИ!
Мне говорили, что в Delphi все легко, просто, а главное быстро (в смысле разработка, конечно).
Да ни фига!
Пока по крайней мере никто из знатоков не смог дать мне таких ответов на мои вопросы, чтобы мне стало приятно. Все через задницу! Такие элементарные вещи! И все либо ручками, либо ваще никто не знает, как сделать. Просто кошмар!
То ли специалисты такие здесь сидят. Ради бога не сочтите за неуважение. Но вот такое у меня впечатление.


 
Delirium^.Tremens   (2003-01-10 15:32) [15]

>>Игорь Шевченко © (10.01.03 15:06)
>>Anatoly Podgoretsky © (10.01.03 15:06)
Я, прежде чем отвечать - попробовал все эти варианты (траву не курил). Специально сделал сноску на D7... Да знаю я и про Help и про Build, но ведь видел. Перезагрузил D - поведение в норме. Так что, patrol, делайте Build.


 
Игорь Шевченко   (2003-01-10 15:35) [16]

Delirium^.Tremens © (10.01.03 15:32)

Версию Delphi в заголовочке темы видел ? :-) [D5]

patrol © (10.01.03 15:32)

Нечего на зеркало пенять, однако :-)


 
Delirium^.Tremens   (2003-01-10 15:37) [17]

Игорь Шевченко © (10.01.03 15:35)
> Версию Delphi в заголовочке темы видел ? :-) [D5]

Видел, так что теперь D5 покупать и устанавливать?
А.... знаю: не высовываться?


 
Игорь Шевченко   (2003-01-10 15:42) [18]

Delirium^.Tremens © (10.01.03 15:37)

Надо глянуть, однако на D7...Под рукой нету :-)


 
patrol   (2003-01-10 15:49) [19]

Ладно, хватит, спорить.
Так можно подвести итог?
Почему не увеличивается счетчик? Неужели ни у кого таких проблем не было? Только у меня что-ли? Типа у чайников всегда так?
Он увеличивается только при серьезных изменениях?
Повторюсь: просто Build или Compile на него не действуют. Только после удаления процедуры он у меня со скрипом увеличился один раз и все!


 
Игорь Шевченко   (2003-01-10 15:49) [20]

Delirium^.Tremens © (10.01.03 15:37)

Ты будешь удивлен, но на версии D7 два раза Project|Build при установленном флажке AutoIncrement Build number увеличивает Build получившегося файла как при изменениях в проекте, так и без них.

Так что не надо про Borland говорить:

> Это вопрос к Borland. Видимо autoincrement срабатывает только
> в случае достаточно серьезных изменений. Даже если навалить
> компонентов на формы, но не написать обработчиков - счетчик
> не увеличится. Не нравится - можно ручками :-)



 
Игорь Шевченко   (2003-01-10 15:51) [21]

patrol © (10.01.03 15:49)

Можно подвести итог: все работает, согласно Help. И на Delphi 5 и на Delphi 7.


 
Delirium^.Tremens   (2003-01-10 15:52) [22]

>>Игорь Шевченко © (10.01.03 15:49)
Сам не читаешь, а ко мне с кулаками лезешь, я же уже писал:

Delirium^.Tremens © (10.01.03 15:32)
> Перезагрузил D - поведение в норме. Так что, patrol, делайте
> Build.



 
Игорь Шевченко   (2003-01-10 15:57) [23]

Delirium^.Tremens © (10.01.03 15:52)

Угу, лезу. Потому в результате единожды проявленного по неизвестной причине глюка начинаются наезды на Borland :-)


 
Delirium^.Tremens   (2003-01-10 16:01) [24]

Игорь Шевченко © (10.01.03 15:57)

> Угу, лезу. Потому в результате единожды проявленного по
> неизвестной причине глюка начинаются наезды на Borland :-)

Ну, глюк то похоже, по крайней мере у двух человек за пять минут проявился. А за Borland я и сам родину продам :-)


 
patrol   (2003-01-10 16:09) [25]

Блин! Да в других средах у меня никогда такого не было!
Представляете, действительно, перегрузила Delphi, и теперь он после каждого Build увеличивает счетчик. А раньше что мешало?
Наводит на подозрения, не вызывает оно у меня доверия.
А если в ближайшее время он снова передумает увеличиваться? Для меня это очень важно. Что же следить каждый раз за ним?


 
Паша   (2003-01-10 16:16) [26]

patrol © (10.01.03 15:32)
autoincrement не отработал, так и Delphi - фуфло, и "специалисты такие здесь сидят". Логика просто железобетонная... Большое дело- паровоз!


 
Игорь Шевченко   (2003-01-10 16:20) [27]

patrol © (10.01.03 16:09)

Если проблема такая серьезная, обратись в техническую поддержку Borland - наиболее разумный способ решения проблем.


 
Паша   (2003-01-10 16:27) [28]

Кстати, в D4 увеличивается только если делаешь "Build all Prodjects"


 
TTCustomDelphiMaster   (2003-01-10 16:27) [29]

patrol © (10.01.03 16:09)

VBasic Foreve ;)


 
Anatoly Podgoretsky   (2003-01-10 16:30) [30]

Паша © (10.01.03 16:27)
Это у тебя явно глюк


 
patrol   (2003-01-10 16:33) [31]

Короче, оно все работает, как полагается,
НО ТОЛЬКО НЕ ВСЕГДА!!!


 
Delirium^.Tremens   (2003-01-10 16:37) [32]

>>patrol © (10.01.03 16:33)

> Короче, оно все работает, как полагается,
> НО ТОЛЬКО НЕ ВСЕГДА!!!

А кому же хочется работать всегда? Сама то ведь, наверно тоже, с 9 до 17 :-)


 
Паша   (2003-01-10 16:46) [33]

Anatoly Podgoretsky © (10.01.03 16:30)
И еще какой глюк! Пробовал и так, и так, а работает только "Build all Prodjects"! Как теперь жить! Пойду, напьюсь сгоря!
patrol © (10.01.03 16:33)
А вы себе константу заведите, пишите в нее версию при необходимости (или у вас 10 версий за день?)


 
patrol   (2003-01-10 16:56) [34]

Вот я и говорю! Все через задницу в вашем Дельфи.
Все только и советуют руками элементарные вещи делать!


 
TTCustomDelphiMaster   (2003-01-10 17:02) [35]


> руками элементарные вещи делать

Вы же девушка. Зачем такие пошлости ;)


 
Delirium^.Tremens   (2003-01-10 17:04) [36]

>>patrol © (10.01.03 16:56)

> Вот я и говорю! Все через задницу в вашем Дельфи.
> Все только и советуют руками элементарные вещи делать!

Да, это диагноз. Что ж, рекомендую Блокнот & C++ Compiler.


 
Игорь Шевченко   (2003-01-10 17:43) [37]

patrol © (10.01.03 16:56)

Все-таки, на Delphi при кривых руках пенять не стоит. И Delphi на базаре покупать тоже не стоит.


 
patrol   (2003-01-10 18:24) [38]

Ну вот! Наехали!
А руки у меня золотые, и в программировании в том числе!


 
Chubais   (2003-01-10 18:45) [39]

АААААААААААААААААААААААААААААААААА


 
Poirot   (2003-01-10 19:12) [40]


> в вашем Дельфи

Вашими б устами да... (хм)... так вот еслиб он был наш - бакбкиб рекой текли и на 2 копию проданную мона было себе мультимедийный проектор купить а на оставшиеся экранчик беленький...



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

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

Наверх





Память: 0.53 MB
Время: 0.011 c
3-62403
viper
2002-12-24 12:07
2003.01.20
DBGrid


4-62913
maker
2002-12-02 21:28
2003.01.20
Помогите разобратся c HDC...


14-62853
Top Gun
2002-12-26 21:35
2003.01.20
Partition Magic не конвертит в NTFS


1-62588
Maksss
2003-01-09 02:37
2003.01.20
вопрос в тему?


4-62943
z0ne
2002-11-29 13:10
2003.01.20
Проблема с PlayEnhMetafile





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