如何在Mac OS X 10.8中以编程方式在共享下启用远程管理

时间:2013-03-01 02:49:36

标签: objective-c macos applescript core-services remote-management

我正在开发一个需要在我的系统上运行VNC Server的项目(Mac OS X v10.8)。

VNS服务器安装在我的Mac系统中,现在我需要运行VNC服务器,但是为了运行服务器,需要以编程方式或使用Apple脚本提供足够的权限(系统偏好 - >共享 - >远程管理 - &gt ;启用复选框)。

如何通过客观c程序或Apple脚本启用远程管理? 或Apple是否提供任何API来管理共享选项?

1 个答案:

答案 0 :(得分:2)

您可以使用kickstart命令启用和配置远程管理服务。它不在通常的PATH中,因此您需要指定其完整路径:

/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart

它的选项格式有点神秘,但通过一些实验,你应该能够得到你想要的效果(见Apple's KB #HT2370SS64.com's "man page")。

此外,它必须以root身份运行,因此从AppleScript使用do shell script with administrator privileges。我想你需要接近这个:

do shell script "/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -restart -agent -privs -all" with administrator privileges