私はすべてのユーザーのためにいくつかの設定をグローバルに保存するアプリケーションに取り組んでいます。これはuserName
パラメータがCFPreferencesSetValue
のようにkCFPreferencesAnyUser
を渡すことによって行われます。OS X Lionに「すべてのユーザー」環境設定を書き込むにはどうすればよいですか?
OS X 10.7(Lion)より前のバージョンでは正常でした。ただし、このコードをLionで実行すると、アプリケーションが管理者アカウントから実行されていても呼び出しが失敗します。 CFPreferencesSetValue
状態のドキュメント:あなたが管理者権限を持っている場合にのみ、「どれユーザー」のための環境設定を保存することができます
...と私は必要な権限がSnow Leopardのとライオンの間で変更されたことを周りの検索から( 管理者から ルートに)を参照してください。また、注意。
...しっかり特権操作を実行するヘルパーツールをインストールするには...
...私はAppleのSMJobBlessサンプルコードを以下により同様のコードを使用し続けることができるようですただし、
kCFPreferencesAnyUser
のドキュメントには、それ自身が記載しています:このドメインは現在サポートされていません。
ヘルパーツールを使用して、すべてのユーザー設定を作成する正しい方法はありますか?それとも、私が使っているはずのサポートされている方法がありますか?
お返事ありがとうございます。私はちょっとあなたがシステム環境設定について何を意味するのか混乱しています。私のアプリケーションの "親アプリケーション"は私のアプリケーションではありませんか?私が書く必要がある設定は、私のアプリケーションに固有のものです。 – Rich
私は完全に*黙って失敗するとは思わない。 'CFPreferencesSynchronize'を呼び出すと、エラーが発生したことを示すfalseが返されます。 – Rich
'kCFPreferencesAnyUser'ドメインにプリファレンスを書くには、' kCFPreferencesCurrentHost'を使用する必要があります。これは私をしばらくお待ちしています(このページの一番下にあります:https://developer.apple.com/ライブラリ/ mac/documentation/CoreFoundation/Reference/CFPreferencesUtils/Reference/reference.html#// apple_ref/doc/uid/20001450-CH1g-130209) – Matthematics