Есть ли доказательство концепции Objective-C, которое вводит какой-либо текст в приложение, а затем нажимает на мышь, используя события Apple, а не AppleScript?Программно ввести текст в любое приложение
например. AppleScript эквивалент
tell application "System Events"
tell process "Safari"
keystroke "Hello World"
click
end tell
end tell
Он должен работать на Mac OS X 10.9, предпочтительно ориентированных на будущее (обратная совместимость не имеет значения). Контекст заключается в том, что я буду называть код Objective-C с другого языка.
Я говорю это потому, что я прочитал, что:
На Mac OS X 10.7, низкоуровневые Cocoa API (NSAppleEventDescriptor) до сих пор нет существенной функциональности (например, возможность отправить компании Apple события), в то время как высокоуровневый API Cocoa (Scripting Bridge) слишком ошибочен, а ограничен, чтобы стать жизнеспособной основой для оболочки в стиле приложения.
и:
NSAppleScript можно безопасно использовать только на главном потоке
так, мои цели:
- любое приложение (по имени или если ток)
- любой ввод клавиатуры или мышь
- от C или Objective-C
- в течение нескольких сотен миллисекунд
спасибо!
По-прежнему новичок в Objective-C, но как вы можете использовать это для отправки текстового сообщения на какой-либо объект приложения? –
Ответ здесь будет очень полезен, если вы увидите, подходит ли ваша ссылка для вашей ситуации: http://stackoverflow.com/questions/313400/nsinvocation-for-dummies –
Да, я бы это прочитал, следовательно, мой комментарий. Похоже на передачу общего сообщения, а не на отправку определенного сообщения о событии Apple конкретному объекту приложения в какой-то другой процесс. –