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

Вниз

Версия exe файла   Найти похожие ветки 

 
Broot   (2004-01-14 09:48) [0]

Знатоки, как узнать версию исполняемого файла? Функция GetFileVersionInfo работает с именем файла, а мне доступен лишь дескриптор HWnd главного окна.


 
[lamer]Barmaglot   (2004-01-14 10:09) [1]

ToolHelp?


 
hfa   (2004-01-14 10:13) [2]

моежт это поможет.. Unit ShellAPI

GetModuleFileName()


 
BiN   (2004-01-14 10:22) [3]

2 hfa
скорее GetModuleFileNameEx()


 
AKul   (2004-01-14 10:24) [4]

Если требуется узнать имя запущенной программы, включая полный путь, можно воспользоваться ParamStr(0).


 
Broot   (2004-01-14 10:27) [5]

а не используя имени файла?


 
BiN   (2004-01-14 10:52) [6]

Broot (14.01.04 10:27) [5]
а не используя имени файла?


ты хочешь узнать версию файла, не используя его имя? Это же смешно

Другое дело, если ты хочешь узнать имя файла, зная лишь хэндл одного из его окон.
читай мсдн:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/wind owreference/windowfunctions/getwindowthreadprocessid.asp

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/openprocess.asp

http://msdn.microsoft.com/library/en-us/perfmon/base/getmodulefilenameex.asp


 
Broot   (2004-01-14 10:58) [7]

2 BiN
и почему это смешно? Версия файла хранится в ресурсах и следовательно она доступна напрямую. Другое дело как найти нужный ресурс и расшифровать его.


 
BiN   (2004-01-14 11:07) [8]

Как ты думаешь что будет эффективнее: одна-две импортированные системные функции или код по выгрузке ресурса и его обработке.
А версия в файле хранится под именем VERSIONINFO в юникоде. Но если тебе вдруг понадобятся исходники "непрямого" метода, обращайся


 
PVOzerski   (2004-01-14 11:08) [9]

2[7]:
А вы думаете, что если программа исполняется, то все ресурсы загружены в оперативную память, находятся в адресном пространстве процесса и могут быть добыты по соответствующему смещению? Увы (а вернее, к счастью, с точки зрения работы с памятью в Windows), это не так.


 
Broot   (2004-01-14 11:33) [10]

2 BiN
Думаю мой код будет эффективнее, потому как он делает тоже самое, но не все, а значительно меньше

2 PVOzerski
и слава богу, что не загружены, а при чем тут это?


 
PVOzerski   (2004-01-14 11:35) [11]

>и слава богу, что не загружены, а при чем тут это?
А при том, что придется всё равно в файле копаться. А открывать его как-то по имени принято.


 
Broot   (2004-01-14 11:42) [12]

2 PVOzerski
а как на счет функций FindResource и LoadResource?


 
BiN   (2004-01-14 11:54) [13]

Broot (14.01.04 11:33) [10]
а ты сначала напиши этот код, а потом поговорим


 
PVOzerski   (2004-01-14 11:58) [14]

>а как на счет функций FindResource и LoadResource?
Ну, изнутри интересующей тебя программы это пройдет. А как добыть хэндл модуля другой программы? А судя по всему, именно другую программу и надо определить.



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

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

Наверх





Память: 0.47 MB
Время: 0.007 c
4-72987
Amirka
2003-11-19 08:29
2004.01.23
Как убрать атрибут readonly у папки и всех файлоы


14-72934
Кукушкинд
2003-12-31 11:33
2004.01.23
Помню, в детстве...


14-72940
sancho
2003-12-31 15:52
2004.01.23
Блин, че за формат?


1-72793
Fishka
2004-01-08 13:30
2004.01.23
WordApplication в Win98 и в XP


1-72738
ZioN
2004-01-11 14:19
2004.01.23
Не могу создать тип file of TMyType





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