问题标签 [appleevents]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
843 浏览

macos - 在 Cocoa 中回复 Apple 事件

我正在使用 NSAppleEventManager 注册一个 Apple 事件处理程序:

我的处理程序方法当然会接收事件和回复事件:

所以,如果我需要回复一个错误,表明我以某种方式打开此 URL 失败,我应该如何使用replyEvent来做到这一点?

0 投票
2 回答
314 浏览

macos - 点击正在发送到另一个应用程序的 AppleEvents

是否可以像点击 Quartz Events 一样监控或点击发送到进程的 Apple 事件流?

我有一个应用程序与另一个应用程序对话以强制它导入文件,但它以通过菜单或 UI 脚本无法使用的方式执行此操作,我正在尝试追踪它是如何做到这一点的。

0 投票
0 回答
342 浏览

objective-c - 如果应用程序未运行,则响应 GURL 苹果事件

我有一个应用程序从自定义注册的 URL 协议响应“GURL”(获取 URL)苹果事件。它已正确注册并且在应用程序已经运行时工作正常,但如果应用程序尚未运行,它将仅启动应用程序,但不会像 API 指示的那样响应 url。

我不太确定 Xcode 从外部源启动时如何立即附加到进程,所以我不确定应用程序是否使用指示 url 的参数启动?如果不是,有没有办法确定应用程序在启动时是从 GURL 苹果事件启动的?

我正在通过以下方式初始化处理程序:

0 投票
2 回答
519 浏览

macos - 在 OS X 10.8 中为别名创建 AppleEvent 描述符

我在项目中有以下代码

它创建一个别名描述符,该描述符将文件传递给一个不是applescriptable 但响应这个AppleEvent 的程序。

当我在 10.8 下编译它时,我收到警告,因为所有 CarbonFSNewAlias*函数都已弃用,我们应该使用APINSData之外的不透明书签对象。NSURL但是,我没有运气将此数据转换为别名 AppleEvent 描述符。

如何typeAlias在没有 10.8 的情况下制作描述符FSNewAlias*

0 投票
1 回答
370 浏览

c++ - 在 Mac 上处理来自控制台应用程序的 Apple 事件

请给我一些关于如何工作的提示,更实际的是,从 Mac 上用 C++ 编写的原始控制台应用程序处理 Apple 事件。我知道 Cocoa 中有用于此目的的巨大基础设施,但我认为这只是一个包装器。可能是不可能的?

0 投票
0 回答
163 浏览

macos - 拉普苹果事件不起作用

我编写了一个发送“rapp”Apple 事件的程序。从调试控制台我可以看到目标应用程序接收到事件并且参数看起来不错。但是程序什么也没做

这是确保收到事件的控制台输出

我究竟做错了什么?

0 投票
1 回答
1106 浏览

macos - 我如何知道应用程序使用的 Apple 事件访问组?

Apples 的 Sandobox 应该使用 Apple 事件访问组,它允许应用程序相互通信,如 WWDC 视频“ Session 206 Secure Automation Techniques In OS X ”中所述

但是,没有提到的(我在 Xcode 5.x 文档中找不到对它的引用)是如何找出为特定应用程序定义的 Apple 事件访问组。

例如,如果我希望我的应用程序与 Pages(或 Photoshop、或 Firefox 等)通信,我如何找到有关其 Apple 事件访问组的文档?它们在哪里定义,我可以使用什么工具来找到它们?

0 投票
2 回答
2364 浏览

macos - 捕获注册的 URL 方案并启动应用程序

每当通过浏览器调用 URL 方案时,我设法启动我的应用程序,方法是将这个方案放入info.plist并添加以下 2 行:

并正确实现我的 getUrl 函数。

所以我尝试将上面的两行放在我的appDelegatesapplicationWillFinishLaunching和. 但是在这三种情况下,我有相同的场景:如果我的应用程序已经在运行,则正确调用 getUrl 函数,如果未启动应用程序,则永远不会调用 getUrl。applicationDidFinishLaunchinginit

我在其他帖子中发现(如何使用默认 URL 方案处理在目标 c(Mac OSX)中打开的应用程序上获取 url 事件)但经常出现的建议是使用applicationWillFinishLaunching,这在我的情况下不起作用。

编辑:这是我的 info.plist:http://pastebin.com/yM8zabvY

0 投票
1 回答
76 浏览

xcode - 如何在 Xcode 中管理 appleevents

我想在我的项目中添加一个 applescript 字典,但我需要管理AppleEvents来创建方法、类和事件。我如何在 xcode中管理AppleEvent 代码。

笔记:

我在项目中没有AppDelegate类,我有Mac OS X LeopardXCode 3.2

0 投票
3 回答
1404 浏览

objective-c - 以编程方式将文本输入任何应用程序

是否有一个概念验证的 Objective-C 可执行文件,它使用 Apple 事件而不是 AppleScript 将一些文本输入到应用程序中,然后单击鼠标?

例如 AppleScript 等价于

它应该可以在 Mac OS X 10.9 上运行,最好是面向未来的(向后兼容性无关紧要)。上下文是我将从另一种语言调用 Objective-C 代码。

我这么说是因为我读到了:

从 Mac OS X 10.7 开始,低级 Cocoa API (NSAppleEventDescriptor) 仍然缺乏必要的功能(例如发送 Apple 事件的能力),而高级 Cocoa API(脚本桥)缺陷太大且受限于不可行appscript 样式包装器的基础。

和:

NSAppleScript 只能在主线程上安全使用

所以,我的目标是:

  1. 任何应用程序(按名称或当前)
  2. 任何键盘输入或鼠标
  3. 来自 C 或 Objective-C
  4. 几百毫秒内

谢谢!