如何使用Cocoa解析Carbon AppleEvent(NSAppleEventDescriptor?)

时间:2013-03-31 14:01:50

标签: macos cocoa macos-carbon

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

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

1 个答案:

答案 0 :(得分:2)

AppleEventAERecordAEDescListAEDesc。因此,您可以使用NSAppleEventDescriptor创建-initWithAEDescNoCopy:

也就是说,如果您在Cocoa中编写Apple Event处理程序,那么您应该使用-[NSAppleEventManager setEventHandler:andSelector:forEventClass:andEventID:]注册它们。然后,您的处理程序方法会收到一个NSAppleEventDescriptor作为参数,您不必担心从AppleEvent构建一个。