Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.05.18;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.027 c
2-1208775866
sauron
2008-04-21 15:04
2008.05.18
синхронный просмотр


2-1208926830
net send
2008-04-23 09:00
2008.05.18
Передать звуковое сообщение


15-1206900897
DVM
2008-03-30 22:14
2008.05.18
2 копии Win на одном компьютере и перевод времени.


2-1208719740
worldmen
2008-04-20 23:29
2008.05.18
Загрузить с ini файла в переменную имена всех ключей


6-1185367623
Евгений80
2007-07-25 16:47
2008.05.18
Как получить IP адресс dialupa?