2013-05-02 64 views
0

我是新的Mac开发者,我希望做以下事情:如何打开外部应用程序和运行在Objective-C是应用程序的特定功能

  1. 我创建了一个简单的应用程序,我想点击我的应用程序中的一个按钮,打开位于Mac上的外部应用程序(如打开的磁盘工具)(我知道如何使用launchApplication来完成此部分)

  2. 除了打开应用程序,我还想执行特定功能像磁盘工具中的擦除功能)在打开磁盘实用程序应用程序后自动执行。 (我不知道如何做到这一点)你可以告诉我一些演示我真的是新的mac?

谢谢!!

+1

你应该看一看的AppleScript。另外,对于能够控制其他应用程序的应用程序,对我而言听起来有点危险,只要确保您没有违反用户的权利。 – TheAmateurProgrammer 2013-05-02 14:31:12

+1

使用新的沙盒规则,您可能会遇到苹果脚本和任何其他形式的“make application X do something”的问题。 – 2013-05-02 15:07:14

回答

0

外部应用程序应该是可编写脚本的应用程序。

一个编写脚本的应用是一个使其操作和响应消息的AppleScript可用的数据,称为苹果事件。 Apple事件是一种可以指定复杂操作和数据的进程间消息。 Apple事件可以将高级任务封装在单个程序包中,该程序包可以通过进程边界传递,执行并用回复事件进行响应。

您可以找到相关苹果文档中更多的细节:Cocoa Scripting Guide

+0

我可以使用命令行执行相同的功能吗?我认为如果这样做,我们可以使用NSTask或其他类来执行对吗? – 2013-05-03 12:58:58

+0

您可以使用[NSAppleScript](https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSAppleScript_Class/Reference/Reference.html)从您的应用程序中控制可编写脚本的应用程序。 – vbali 2013-05-03 13:10:41

+0

谢谢,如果可能的话,你可以提供给我一个教程,我真的是新的Mac开发?再次感谢 !! – 2013-05-03 13:18:22

相关问题