Другим распространенным методом «проникновения» в приложение с графическим интерфейсом (для Windows) является DLL Injection + Windows Subclassing. Это, вероятно, считается несколько продвинутым Windows-программированием. Отличная книга по этой теме - «Windows Via C / C ++». Краткое представление о том, что это по сути:
- Вставьте свою пользовательскую DLL в адресное пространство целевой программы.
- Найдите HWND для целевого текстового поля.
- Подкласс функций, которые имеют отношение к изменению / редактированию этого текстового поля.
- Теперь, когда кто-либо редактирует / изменяет текст, сначала вызывается ваша функция, позволяющая вам видеть / манипулировать текстом. Вы даже можете не перенаправлять его на обычный обработчик.
Также обратите внимание, что ничто из того, что я упомянул выше, никоим образом не является «взломом окон», это четко определенное поведение, которое было намеренно реализовано Microsoft. Это довольно хорошо задокументировано на MSDN.
Если вы хотите сделать это, взгляните на «Windows Subclassing» и «Setting Hooks».