Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.03.28;
Скачать: CL | DM;

Вниз

Как узнать HANDLE окна OLE объекта   Найти похожие ветки 

 
fag2000@ok.ru ©   (2002-03-15 13:12) [0]

Как узнать HANDLE окна MSWord созданного таким образом:
var
MSWord: Variant;
..
begin
MSWord := CreateOleObject("Word.Application");
MSWord.Visible:=True;
..
end;


 
digitman ©   (2002-03-15 13:25) [1]

а зачем, скажи на милость, тебе этот HANDLE понадобился ?


 
fag2000@ok.ru ©   (2002-03-15 13:28) [2]

Мне надо отслеживать сообщения от клавиатуры для этого объекта.
Глобальный HOOK я уже написал. Теперь мне надо фильтровать сообщения.


 
digitman ©   (2002-03-15 13:53) [3]

1. запусти spyxx.exe, запусти Word.
2. в дереве, визуализируемом в окне spyxx, найди узел, соответствующий гл.окну Word"а, открой св-ва, узнай класс гл.окна Word"а.
3. В своем приложении для поиска гл.окна Word"а вызывай, например, FindWindow() с параметром - именем класса гл.окна Word"а.


 
fag2000@ok.ru ©   (2002-03-15 14:21) [4]

А напрямую никак нельзя?


 
digitman ©   (2002-03-15 14:34) [5]

Только - по заголовку окна (если имя его класса неизвестно).
И то - найдешь первый встретившийся экз-р Ворда (впрочем, как и при поиске по имени класса окна).

А зачем, собственно, тебе нужно перехватывать keyboard events , адресованные некоему окну, создаваемому Вордом ? Ну, поймал ты нечто интересующее, а дальше-то что делать с этим "добром" планируешь ?


 
fag2000@ok.ru ©   (2002-03-15 14:54) [6]

Следить чтобы пользователь данные правильно вводил ну еще ему немного помогать.(так хочет начальство)


 
digitman ©   (2002-03-15 16:05) [7]

так, сударь, на то ведь в Ворде есть встроенный макрос-движок (MSWinword VBA), в нем ты можешь реализовать сколь угодно гибкую логику, реализующую требуемую тебе задачу. И, imho, совершенно неразумно для того, о чем ты поведал, городить весь этот "огород" с окнами, хуками и иже с ними) поверь уж))



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
3-90813
Ars P
2002-02-27 10:28
2002.03.28
Организация среднего (большого) проекта интерфейса к БД


6-91022
Teapot
2002-01-11 14:30
2002.03.28
Передача сообщений по сети


4-91131
ihacker
2002-01-20 17:39
2002.03.28
пиктограмма на панели задач


4-91106
MrAngel
2002-01-21 12:06
2002.03.28
Использование функции GetDesktopWnd


6-91024
SineD
2001-12-28 15:22
2002.03.28
Как отловить подключение ко всем портам ?