Установить WindowsHookEx для Mac OS X? - PullRequest
5 голосов
/ 15 июля 2010

Хуки Windows позволяют вам совать другие процессы и иногда изменять их поведение.

Есть ли такая вещь для Mac OS X?

Спасибо!

Ответы [ 3 ]

4 голосов
/ 15 июля 2010

SetWindowsHookEx больше похож на старый хак InputManager, в том смысле, что вы изменяете код приложения из общей библиотеки / загружаемого в него плагина.

См. SIMBL для получения готового инжектора кода для другого процесса. Для классов Objective-C вам необходимо использовать метод swizzling . Я сам не пытался заменить классы функций C / C ++, но наверняка это можно сделать с помощью mach_override . Смотрите также это сообщение в блоге .

Но обычно, если вы хотите изменить приложение с графическим интерфейсом, достаточно подключиться к классам Objective-C.

0 голосов
/ 16 июля 2010

Что конкретно вы пытаетесь достичь?Можете ли вы объяснить, почему вы хотите, чтобы Mac OS X эквивалентно SetWindowsHookEx()?(Краткий ответ: его нет. Средний ответ: почти все, что вы можете сделать с SetWindowsHookEx() в Windows, можно сделать в Mac OS X каким-либо другим, более привычным способом.)

0 голосов
/ 15 июля 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...