objective-c - BetterAuthorizationSample 提示未更改

标签 objective-c cocoa macos osx-snow-leopard prompt

我在 Cocoa 应用程序中使用 BAS,并自定义提示输入管理员密码...

但现在我想更改提示。我在字符串文件中更改了它,但它没有更改。我重建了所有内容并删除了/var/run 中的套接字以及 launchdaemon 和 privelegedhelpertools 文件夹。但提示不会改变!!!

帮忙?

最佳答案

提示是写入策略数据库的规则的一部分。当您第一次运行 BAS 时,它会根据您的定义在策略数据库中创建规则。后续运行可确保这些规则存在,但不会被覆盖,即使您在应用中更改了规则或自定义提示

在本地计算机上,您需要通过打开策略数据库文件 /etc/authorization 并删除整个相关规则(搜索 BetterAuthorizationSample)来清除规则。当您再次运行 BAS 时,它会检测到该规则不存在,并使用更新的信息重新写入它。

如果您需要对已部署的应用程序进行更改,则必须在运行 BAS 之前编写一些自定义代码来删除规则(这将需要授权)。

关于objective-c - BetterAuthorizationSample 提示未更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2841393/

相关文章:

ios - 很困惑使用我的类(class)是否正确

ios - 移动UIButton位置,动画

objective-c - 自定义控件中的多个凹进 NSButtonCell

cocoa - QC 组合将黑色和白色像素转换为其他两种颜色

c++ - cmake os x 失败 ar 没有特定的存档成员

xcode - 如何在 Xcode 的目标中构建和嵌入另一个应用程序?

ios - 如何从 URL 获取图像并放入 NSArray?

objective-c - TTPostController 不会旋转

iphone - iPhone 发生内存泄漏时会出现什么奇怪的行为?

macos - NASM 和 clang/LLVM 生成不同的目标文件