我正在研究一个需要VNC Server在我的系统(Mac OS X v10.8)上运行的项目。
VNS服务器安装在我的Mac系统中,现在我需要运行VNC服务器,但要运行服务器,需要以编程方式或使用Apple Script(系统首选项->共享->远程管理->启用复选框)提供足够的权限。
如何通过objective c程序或apple script实现远程管理?或者苹果有没有提供API来管理共享选项?
可以通过kickstart
命令开启和配置远程管理服务。它不在通常的PATH中,所以您需要指定它的完整路径:
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart
它的选项格式有点神秘,但通过一些实验,你应该能够得到你想要的效果(参见苹果的KB #HT2370和SS64.com的"手册页")。
同样,它必须作为根运行,所以在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