【问题标题】:CGEvent does not work when app is sandboxed当应用程序被沙盒化时,CGEvent 不起作用
【发布时间】:2013-06-15 16:57:19
【问题描述】:

这是一篇关于如何通过代码按键的精彩帖子。 CMD+Option+D simulation in Cocoa

这很好用,但是当您将应用程序沙箱化时,它就不起作用了。有谁知道我应该在权利文件中要求的例外情况才能完成这项工作?

【问题讨论】:

  • 我不相信 Apple 曾打算这样做,因为这样做违反了应用程序的安全性。

标签: xcode macos cocoa sandbox appstore-sandbox


【解决方案1】:

很遗憾地报告:没有一项(或至少没有一项不是临时权利)。我专门向苹果询问了这个问题,他们说这种能力“违背了应用沙盒的目的”。如果您想在没有任何临时权利的情况下执行此操作,唯一的方法是让用户编写这样的 AppleScript 文件:

tell application "System Events"
    keystroke "e" using {command down, option down, control down, shift down}
end tell

然后让他将该脚本放在特定文件夹中,以便您可以使用NSUserAppleScriptTask API 运行它(不过,该 API 仅 10.8)。当然,这是一团糟,在某些情况下只是一种选择......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-13
    • 2018-12-15
    • 1970-01-01
    • 2019-04-03
    • 2012-01-07
    • 1970-01-01
    • 1970-01-01
    • 2018-05-17
    相关资源
    最近更新 更多