Есть ли способ отправить инструкцию copy (command-c) без использования cgEvent для имитации нажатий клавиш? У меня нет доступа к текстовому полю в приложении, из которого я хочу получить текст, поэтому необходимо выполнить репликацию вручную, копируя в буфер обмена, и, похоже, в сообщении cgevent есть ошибка.
Согласно документации по Кварцу, для ввода заглавной буквы Z я должен использовать:
CGEventRef event1, event2, event3, event4;
event1 = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)56, true);
event2 = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)6, true);
event3 = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)6, false);
event4 = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)56, false);
Однако, если я присоединяю этот набор инструкций к NSTimer, он работает только при первом запуске. пример вывода:
ZzzZzzzzZZzzZ (vs expected ZZZZZZZZZ).
Как еще можно отправить команду копирования в активное окно?