Главная страница
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.028 c
15-1207322240
PZ
2008-04-04 19:17
2008.05.18
Microsoft провалил продажи Windows Vista


2-1208591513
worldmen
2008-04-19 11:51
2008.05.18
Создание меню с TActionManager и TActionMainMenuBar


2-1208278528
Mag
2008-04-15 20:55
2008.05.18
Создал две динамических объекта и не могу к ним обратиться, как?


2-1208369217
Blasphemie
2008-04-16 22:06
2008.05.18
Автоматическое изменение полей записи - как?


15-1204709993
@!!ex
2008-03-05 12:39
2008.05.18
Будьте бдительны!