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

поиск окна и родительских окон   Найти похожие ветки 

← →
Rasputin   (2008-04-19 22:56) [0]

еще немного и крыша улетит )))
что я делаю не так??? Нужно найти окно, в котором дочерн. окна!
для эксперимента создал новый проэкт бросил на него пару кнопок, пару мемо и пару списков. Ниже код который должен работать но почему-то не работает!
Находится только окно формы, а дальше полная эрунда вместо положеного. Что не так??? Как искать в родительском окне???

 
h:=GetForegroundWindow;
TxtLength:=SendMessage(h,WM_GETTEXTLENGTH, 0, 0);
SetLength(buffer,txtLength-1);
sendmessage(h, wm_gettext, txtlength, longint(@buffer[1]));
Memo1.Lines.Append(buffer);

h:=GetWindow(h, GW_CHILD);
TxtLength:=SendMessage(h,WM_GETTEXTLENGTH, 0, 0);
SetLength(buffer,txtLength+1);
sendmessage(h, wm_gettext, txtlength, longint(@buffer[1]));
Memo2.Lines.Append(buffer);

while (h<>0) do begin
h:=GetNextWindow(h,GW_HWNDNEXT);
TxtLength:=SendMessage(h,WM_GETTEXTLENGTH, 0, 0);
SetLength(buffer,txtLength+1);
sendmessage(h, wm_gettext, txtlength, longint(@buffer[1]));
Memo2.Lines.Append(buffer);
end;


← →
easy ©   (2008-04-19 23:42) [1]

http://dfc.com.ru/?sid=2&id=7&itemid=9


← →
Rasputin   (2008-04-20 01:01) [2]


> easy ©   (19.04.08 23:42) [1]
>
> http://dfc.com.ru/?sid=2&id=7&itemid=9

за ссылку спасибо, неплохой пример!
но все-таки что я делал не так! вот даже, этот кусок кода должен работать с виду 100%. Нажимаеш кнопку и получаеш заголовок окна!
а почему-то вместо Form1 упорно возвращаетсяForm

h:=GetForegroundWindow;
TxtLength:=SendMessage(h,WM_GETTEXTLENGTH, 0, 0);
SetLength(buffer,txtLength+1);
sendmessage(h, wm_gettext, txtlength, longint(@buffer[1]));
Memo1.Lines.Append(buffer);


← →
Германн ©   (2008-04-20 01:41) [3]


> Rasputin   (20.04.08 01:01) [2]

Не уверен, но почему sendmessage(h, wm_gettext, txtlength, longint(@buffer[1]));
А не sendmessage(h, wm_gettext, txtlength+1, longint(@buffer[1])) ?


← →
Rasputin   (2008-04-20 13:51) [4]


> Германн ©   (20.04.08 01:41) [3]
> Не уверен, но почему sendmessage(h, wm_gettext, txtlength,
> longint(@buffer[1]));
> А не sendmessage(h, wm_gettext, txtlength+1, longint(@buffer[1]))?

точно, так и есть, и какой я после этого л...р )



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

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



Память: 0.46 MB
Время: 0.019 c
2-1208631399
Rasputin
2008-04-19 22:56
2008.05.18
поиск окна и родительских окон


2-1208611624
Алексей К.
2008-04-19 17:27
2008.05.18
получение имен в TStringList


15-1207479158
Ega23
2008-04-06 14:52
2008.05.18
Агоритмы шифрации с ключом


2-1208521330
Динис_ИС
2008-04-18 16:22
2008.05.18
Как зашарить папку ?


15-1207163877
korneley
2008-04-02 23:17
2008.05.18
Максиму Пешкову посвящается




   Наверх