Мне нужно создать окно, которое будет следовать за внешней программой (например, Notepad.exe). Когда пользователь перемещает Notepad.exe в новую позицию на рабочем столе, я хочу, чтобы мое окно также перемещалось.
Я провел некоторое исследование:
Использование SetParent (где родительский блокнот). Сначала я получил этот рендеринг, перемещение "Блокнота" не отобразит мое окно.
Использование SetWindowPos и SetWindowHook в Блокноте.
Использование SetWindowSubClass. Это не работает, получив код ошибки. Возможно, Блокнот - это другой процесс.
Я думаю, что нет. 2 путь, по которому я хочу идти глубже. Как вы думаете, это правильный путь? Является ли это излишним?
Также см. Функцию SetWindowsHookEx, особенно WH_GETMESSAGE
крюк WH_GETMESSAGE
.
Вы можете использовать Windows Hooks для контроля движения окон и ввода мыши. Может быть, это может быть альтернатива?
http://msdn.microsoft.com/en-gb/library/windows/desktop/ms644960(v=vs.85).aspx