Как добавить кнопку в строку заголовка окна других приложений (XP / Vista) - PullRequest
1 голос
/ 07 ноября 2008

У меня есть обработчик открытого окна, которое не обязательно было открыто моим процессом. Как я могу добавить кнопку в это окно и заставить кнопку вызывать определенное приложение (.exe) при нажатии? Кнопка может находиться рядом с системным меню или кнопкой свертывания. Это должно работать как для XP, так и для Vista (для каждой версии подходит другой подход).

1 Ответ

1 голос
/ 07 ноября 2008

Стандартный подход заключается в том, чтобы внедрить DLL в процесс с помощью SetWindowsHookEx, подключив WH_CALLWNDPROC для мониторинга сообщения WM_NCPAINT. Раньше это работало довольно хорошо, но не более того. Визуальные стили и Vista UAC заставят вас отрастить довольно длинную бороду. Распространенный в дни Windows 3.x, я не видел, чтобы это делалось в течение долгого времени.

...