Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.11;
Скачать: CL | DM;

Вниз

путь е екзешнику по окну   Найти похожие ветки 

 
user51   (2007-01-25 11:59) [0]

Хочу получить путь екзешника  создавшего  окно
var wndk:integer;
a : Array[0..MAX_PATH] of char
ProcessId : integer;
ThreadId : integer;
HandleWindow : Integer;

wndk:=FindAWindow(ComboBox1.text,"");
if  wndk <> 0 then
begin
ThreadId := GetWindowThreadProcessId(wndk,@ProcessId);
HandleWindow := OpenProcess(PROCESS_ALL_ACCESS,False,ProcessId);
if GetModuleFileName(HandleWindow ,a, sizeof(a))=0
then //Application.MEssageBox(pchar("не могу получить    путь"),"ОШИБКА", 0);
end;

если HandleWindow=0 то пишет путь вызвавшей программы
в любом другом случае не может получить путь
в чем засада ?


 
Сергей М. ©   (2007-01-25 12:09) [1]

Твой HandleWindow не имеет ни малейшего отношения к хэндлам модулей.
Более того, то что ты назвал HandleWindow, должно было быть названо хотя бы как "HandleProcess", ибо это хэндл, полученный в результате открытия объекта типа процесс.


 
user51   (2007-01-25 12:12) [2]

а как получить хендл модуля ?


 
BiN ©   (2007-01-25 12:14) [3]


> Сергей М. ©   (25.01.07 12:09) [1]
>
> Твой HandleWindow не имеет ни малейшего отношения к хэндлам
> модулей.

У него вроде HandleWindow := OpenProcess(PROCESS_ALL_ACCESS,False,ProcessId);


> user51   (25.01.07 12:12) [2]

Используй  GetModuleFileNameEx
И переменные лучше бы называть адекватно....


 
Сергей М. ©   (2007-01-25 12:52) [4]


> BiN ©   (25.01.07 12:14) [3]


> У него вроде HandleWindow := OpenProcess(PROCESS_ALL_ACCESS,
> False,ProcessId);


Это я прекрасно вижу.
Он получает хэндл именно процесса, а не окна и уж тем более не модуля.



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

Текущий архив: 2007.02.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
6-1157533660
wolchonok29
2006-09-06 13:07
2007.02.11
ПРоблема с сетью


2-1169666901
aleko
2007-01-24 22:28
2007.02.11
освобождение ресурсов


15-1169035618
Dmitriy_info
2007-01-17 15:06
2007.02.11
Как выводить французские символы


2-1169647027
DVM
2007-01-24 16:57
2007.02.11
Директивы условной компиляции


6-1157832233
Lex Luthor
2006-09-10 00:03
2007.02.11
Загрузка контактов в TICQ Client e