1

在 SIMBL Agent 的源代码中,有几个代码将 Apple 事件发送到目标应用程序。就像是:

[app setSendMode:kAEWaitReply | kAENeverInteract | kAEDontRecord];
id initReply = [app sendEvent:kASAppleScriptSuite id:kGetAEUT parameters:0];

[app setSendMode:kAENoReply | kAENeverInteract | kAEDontRecord];
id injectReply = [app sendEvent:'SIMe' id:eventID parameters:0];

我不知道为什么目标应用程序会在此触发后加载 SIMBL 插件。这样做似乎是一种非常hacky的方式,并且很难从官方文档中获得帮助。

4

1 回答 1

1

我知道现在发生了什么。SIMBL 使用 Apple Event(class:kASAppleScriptSuite, type:kGetAEUT),强制应用加载脚本添加。添加有一个预定义的 Apple Script Handler 来加载 SIMBL 目录中的插件。因此 SIMBL 发送 2 个 Apple 事件来执行此操作, 当应用程序启动时。

于 2011-07-14T11:22:31.557 回答