Вниз
Скачать: CL | DM;

помогите плиз!!!   Найти похожие ветки 

← →
Bukerman ©   (2002-12-16 16:06) [0]

Господа мастаки, бьюсь второй день, не могу понять, может кто подскажет, есть такой код

var
Wnd : HWND;
lpdwProcessId : LPDWORD;
hProcess : Cardinal; // handle to the process
jjj : DWORD;

begin
Wnd := GetWindow(Handle, gw_HWndFirst);
GetWindowThreadProcessId(Wnd, lpdwProcessId);
jjj:=lpdwProcessId^;
hProcess:=OpenProcess(PROCESS_ALL_ACCESS, FALSE, jjj);

в таком виде работает, но выдает warning, что lpdwProcessId may not be initialized, если сначала проинициализировать: lpdwProcessId:=nil;
то компилируется нормально, но в runtime на строке GetWindowThreadProcessId(Wnd, lpdwProcessId);
ругается access violation в модуле user32.dll. Но самое интересное, что если оставить в таком виде (весь остальной код закомментирован), то хоть и выдает ворнинги, но работает, а если
его раскомментировать, то на строке
jjj:=lpdwProcessId^;
опять же access violation, что я делаю не так?


← →
Zz_   (2002-12-16 16:18) [1]

lpdwProcessId := @jjj;
GetWindowThreadProcessId(Wnd, lpdwProcessId);


← →
MBo ©   (2002-12-16 16:18) [2]

ProcessId : DWORD;
GetWindowThreadProcessId(Wnd, ProcessId);


← →
MBo ©   (2002-12-16 16:25) [3]

Пардон
ProcessId : DWORD;
GetWindowThreadProcessId(Wnd, @ProcessId);




← →
Bukerman ©   (2002-12-16 17:00) [4]

Бооольшое спасибо!Вроде помогло.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
1-96719
Robb
2003-01-22 11:24
2003.01.30
Как реализовать что-то типа компонента Dialogs


1-96796
Dimka!
2003-01-21 21:34
2003.01.30
Вывести слово в позиции X,Y???


1-96846
Yurko
2003-01-19 01:26
2003.01.30
Обработчик сообщений


1-96789
Alex G
2003-01-22 19:24
2003.01.30
Handle


14-96975
Maximator Vetera
2003-01-10 19:49
2003.01.30
Неловко как-то просить, вроде и образование высшие ...




   Наверх