在Objective C中配置OS X网络代理首选项的最佳方法是什么?如果有人有任何代码示例,将非常有帮助。
我一直在搜索各种各样的互联网,似乎找不到使用Objective C设置OS X系统首选项/设置的好资源。任何人都有任何好的资源?
答案 0 :(得分:2)
快速浏览一下......:
http://osx.hyperjeff.net/Apps/apps?f=preference
......揭示......
AMPreferencePane - 用于创建首选项窗格的Cocoa类
SS_PrefsController - 首选项窗口Cocoa类
sysprefs - 用于更改/查看系统网络首选项的实用程序
UKPrefsPanel - 偏好窗口的Cocoa助手类
也许还有一些示例代码引用命令行工具networksetup(8)和systemsetup(8),它们可能类似于......
ncutil - 网络配置实用程序(src:是)
出于部署目的,请查看:
InstaDMG - 用于模块化创建部署包的工具
DeployStudio - 完整的工作站安装/恢复实用程序
Hyperjeff的Cocoa Literature List也有一个网络部分!
HTH
答案 1 :(得分:1)
设置Mac OS X系统偏好设置是非常不鼓励的,因为它分散[并因此违背了系统偏好设置的目的]。很少有适用于Mac OS X的应用程序合法地修改系统行为/配置,此时我甚至无法想到它。
每个版本的OS X的实际代理信息可能不同,但在我的10.6系统上,它包含在文件中:
/Library/Preferences/SystemConfiguration/preferences.plist
这只是一个简单的XML属性列表文件,可以使用NSPropertyListSerialization
类进行解析和重新生成。请注意,代理的密码存储在别处(我认为您需要使用标准Keychain Services来获取密码)。上述文件只能由非root用户读取,并且只能由root读写,因此,如果您确实要编辑此文件的内容,则应用程序必须获取root权限。 Apple获得了这些权限programming guide。