Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: WinAPI и системное программирование > Как узнать имя файла по handle окна? |
Автор: Voyager 3.2.2006, 05:49 |
GetWindowThreadProcessId(FindWindow('MyClass', nil);, @ProcessId); HandleWindow := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId); В общем есть handle окна приложения, получаемый через FindWindow, есть ProcessId и т.д. Как узнать путь до ехе-файла/имя файла приложения? |
Автор: _hunter 3.2.2006, 11:32 |
делаеш CreateToolhelp32Snapshot потом Process32First / Process32Next и сравниваеш твой ProcessId с PROCESSENTRY32.th32ProcessID как найдеш -- смотри PROCESSENTRY32.szExeFile |
Автор: Voyager 3.2.2006, 12:30 |
Да, этот способ я знаю, он даст имя ехе. А вот как узнать расположение этого ехе, то есть путь до файла? |
Автор: _hunter 3.2.2006, 13:03 |
он даст полный путь Добавлено @ 13:12 + сюда: http://forum.vingrad.ru/index.php?showtopic=22908 глянь... |
Автор: RA 3.2.2006, 14:57 | ||
Как когда-то писал посол ....
Добавлено @ 15:11 однако не всё безнадёжно. http://forum.vingrad.ru/index.php?showtopic=11700&view=findpost&p=74829 |
Автор: Girder 3.2.2006, 16:07 |
Получаеш PID процесса по окну... после чего можеш получить и имя и путь, и параметры запуска http://forum.vingrad.ru/index.php?findpost=289762 |
Автор: RA 3.2.2006, 20:06 | ||
Я не знаю правильно ли я был понят ![]() так что чтоб потом небыло недопониманий мне пришлось написать то что я имел в виду ![]()
Получаем полный путь к процессу + все подключённые к ниму модули. |
Автор: Voyager 3.2.2006, 21:32 | ||
Спасибо, разобрался (переделал немного вариант Girder'a):
В OFPCommandLineA будет полный путь с параметрами. |