【问题标题】:OS X System Congiuration Settings, Set in Objective COS X 系统配置设置,在 Objective C 中设置
【发布时间】:2011-03-28 17:34:54
【问题描述】:

在 Objective C 中配置 OS X 网络代理首选项的最佳方法是什么?如果有人有任何非常有用的代码示例。

  • 还有-

我一直在互联网上搜索,似乎找不到使用 Objective C 设置 OS X 系统首选项/设置的好资源。谁有好的资源?

【问题讨论】:

    标签: objective-c macos operating-system network-programming


    【解决方案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

    【讨论】:

    • 感谢您的信息。为了更好地解释我自己,我很好奇使用 Obj-C 设置系统首选项以用于系统部署。我过去曾为此使用过 Applescript 和 shell,想知道 Obj-C 是否为我提供了更优雅的选项。
    • NSPropertyListSerialization 链接失效。新链接here.
    【解决方案2】:

    快速浏览这里...:

    http://osx.hyperjeff.net/Apps/apps?f=preference

    ...揭示...

    AMPreferencePane - 用于创建首选项窗格的 Cocoa 类

    SS_PrefsController - 首选项窗口 Cocoa 类

    sysprefs - 更改/查看系统网络首选项的实用程序

    UKPrefsPanel - Preference 窗口的 Cocoa 辅助类

    也许还有参考命令行工具networksetup(8)和systemsetup(8)的示例代码,可能类似于...

    ncutil - 网络配置实用程序(src:是)

    出于部署目的,请查看:

    InstaDMG - 模块化创建部署包的工具

    DeployStudio - 完整的工作站安装/恢复实用程序

    Hyperjeff 的 Cocoa 文献列表也有一个网络部分!

    HTH

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-22
      • 1970-01-01
      • 2012-05-24
      • 2017-05-17
      • 2015-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多