Windows - знание движения внешнего окна

0

Мне нужно создать окно, которое будет следовать за внешней программой (например, Notepad.exe). Когда пользователь перемещает Notepad.exe в новую позицию на рабочем столе, я хочу, чтобы мое окно также перемещалось.

Я провел некоторое исследование:

  1. Использование SetParent (где родительский блокнот). Сначала я получил этот рендеринг, перемещение "Блокнота" не отобразит мое окно.

  2. Использование SetWindowPos и SetWindowHook в Блокноте.

  3. Использование SetWindowSubClass. Это не работает, получив код ошибки. Возможно, Блокнот - это другой процесс.

Я думаю, что нет. 2 путь, по которому я хочу идти глубже. Как вы думаете, это правильный путь? Является ли это излишним?

Теги:
winapi
hook

2 ответа

2

См. Функцию SetWinEventHook.

Также см. Функцию SetWindowsHookEx, особенно WH_GETMESSAGE крюк WH_GETMESSAGE.

  • 1
    WH_CBT также может быть уместным, поскольку он в основном предназначен для сообщений, связанных с временем жизни, размером и положением окна. CBT расшифровывается как «Компьютерное обучение». Захваты CBT предназначены для обучающих приложений, которые показывают вам, как использовать другое приложение.
1

Вы можете использовать Windows Hooks для контроля движения окон и ввода мыши. Может быть, это может быть альтернатива?

http://msdn.microsoft.com/en-gb/library/windows/desktop/ms644960(v=vs.85).aspx

Ещё вопросы

Сообщество Overcoder
Наверх
Меню