0

ときどき、a) アプリケーションのユーザーと b) アプリケーション自体に構成を提供するという問題に直面します。

.Net には独自の設定フレームワークがあり、構成は XML ベースでapp.settingsファイルに保存されます (user.settingsそれぞれ)。

sに関してはuser.setting、すべて問題ありません。私のアプリケーションを使用するすべてのユーザーに対して、独自のアプリケーションuser.settingsが作成されています。ユーザーは、アプリケーションの設定や他のユーザーの構成に影響を与えない範囲で、自分の設定を変更する権限を持っています。

しかし

一般的なアプリケーション設定である app.settings は、主C:\Program Files\\...にアプリケーションのインストール時にアセンブリ フォルダーに格納されます。そのため、通常のユーザーは管理者権限がないと設定を変更できません。

また...

設定を特定のアプリケーションやユーザーにバインドするのではなく、アプリケーションが現在実行されているコンピューターにバインドしたい場合があります。コンピューターのすべてのユーザーがアプリケーション自体をアクティブにしたくないライセンス ファイルのように。

XP では、マシン設定用の隠しフォルダーがありましたがC:\ProgramData、Windows 7/8 では、通常のインストーラーがそこに作成するすべてのフォルダーは、管理者権限でのみ書き込み可能になっているようです。

結局のところ、このばかげた許可の問題をどのように解決するのでしょうか? 通常のユーザーが app.settings を変更し、すべてのユーザーのグローバル設定を app.settings から分離する方法 (machine.settings のようなもの) はありますか?

4

0 に答える 0