2

在对 carbon 应用进行现代化改造的过程中,我想重写 Cocoa 中对 AppleEvents 的处理,特别是因为我发现 Carbon AEFunctions 非常难看。

我找到了 NSAppleEventDescriptor 但我对如何从 AppleEvent* 创建一个以便更轻松地访问其元素感到困惑。

4

1 回答 1

3

一个AppleEvent是一个AERecord是一个AEDescList是一个AEDesc。因此,您可以创建一个NSAppleEventDescriptorusing -initWithAEDescNoCopy:.

也就是说,如果您在 Cocoa 中编写 Apple 事件处理程序,那么您应该使用-[NSAppleEventManager setEventHandler:andSelector:forEventClass:andEventID:]. 然后,您的处理程序方法将接收 aNSAppleEventDescriptor作为参数,您不必担心从AppleEvent.

于 2013-03-31T15:41:13.810 回答