Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как поймать заголовки окон [D7, Win95/98, Win2k, WinXP]


Drunya ©   (2004-01-27 07:07:00) 

Написал процу по поимке заголовков окна и записи его в текстовый файл при нажатии клавиши мыши, но при повторном возвращении на окно с другого окна, почему-то не хочетъ печатать в файл заголовок. Если кто может мож поможет.
Буду признателен. Проца прелагается.

wnd1: Hwnd;

procedure GetNameWindow;
var
ti: TDateTime;
F1: TextFile;
wnd: HWnd;
bufname: array[0..127] of char;
begin
wnd := GetForegroundWindow;
if wnd1 <> wnd then
begin
GetWindowText(wnd, bufname, sizeof(bufname));
AssignFile(F1, 'C:\1.txt');
Append(F1);
Write(F1, bufname);
Flush(F1);
CloseFile(F1);
end;
wnd1 := wnd;
end;


GrayFace   (2004-01-27 15:51:00) [1]

hook на wm_activate. Кто-то это недавно спрашивал(можно поиск) и в факе есть.


Digitman   (2004-01-27 13:58:00) [2]


> Drunya   (27.01.04 13:21) [2]


мои предложения последуют лишь после того, как ты опишешь подробно. что, собственно, в какое время и при каких условиях ты "ловить" собрался

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


YuRock   (2004-01-27 13:33:00) [3]

Я предлагаю

end;
wnd1 := wnd;
end;

заменить на

wnd1 := wnd;
end;
end;


Не уверен, но должно помочь...:)


Drunya   (2004-01-27 13:21:00) [4]

Ваши предложения Digitman....


Digitman   (2004-01-27 09:07:00) [5]


> почему-то не хочетъ


потому что wnd1 <> wnd = false .. вот и не печатает)


Наверх

Титульная страница Поиск, карта сайта Написать письмо