2011-01-27 14 views
2

私はHKLM \ Software \ etc \ etcを使用して基本的な設定を保存しています。これは基本的に自分のプログラムの場所であり、関連するデータベースです。アプリケーション設定の保存|レジストリ

私が今問題にしているのは、Windowsサービスを作成し、その場所を読み取る必要があることです。 LocalServiceまたはLocalSystemとしてレジストリ設定を読み取ることができません。これはHKLM \ Software \ etc \などのサービスが実行されているものですが、これらのユーザーアカウントには存在しません。

これらのサービスにアクセスできる、そのデータを保持するために使用できるレジストリハイブはありますか?

テキストファイルを作成し、このデータをファイルシステムのどこかに保存する必要があるようですが、私が行う前に、全員のコンピュータで同じファイルになることが保証されています。私は、標準の環境変数を使用する必要があると思います。

+0

[Windowsアプリケーションでアプリケーション設定を保存するためのベストプラクティス](http://stackoverflow.com/questions/453161/best-practice-to-save-application-settings-in-a-windows-application) ) –

+0

私は実際にはほとんどどこでも見えましたが、レジストリのどこに値が保存されているのかについての決定的な答えはありませんでした。 – David

答えて

0

を参照してくださいHKCU\Software\...

にアクセスすることができますそれは可能とは思わない。まず、LocalServiceアカウントはHKCUハイブ内に自身のハイブを開き、そのために設定されていない設定をロードしません。 LocalServiceは実際にはユーザーアカウントではないので、ハイブに書き込めるかどうかは疑問です。

私は偽装を見ましたが、パスワードを偽装する人は誰も知らず、偽装することでその人のハイブを読み込まないようにしています。

レジストリを検索することはおそらく可能ですが、2人以上のユーザーがプログラムを使用している可能性があります。そのため、どちらのプログラムが確実かはわかりません。

%ALLUSERSPROFILE%という環境変数があります。誰かが別のオプションを考え出すことができない限り、必要なデータだけでなくレジストリにXMLファイルも書きます。

+0

なぜあなたはポイントを必要としますか:-) –

+0

これを質問してください。それに応じて私はそれに投票します:-) – David

1

LocalServiceアカウントは、私は正直に私は自分の質問に答えるんだけど、.............

http://msdn.microsoft.com/en-us/library/ms684188%28v=vs.85%29.aspx

+0

私はちょうどテストプロジェクトを走らせました。残念ながら、レジストリの読み込みはうまくいかず、うまくいきませんでした。私はもう一度それをチェックしましょう...投票のおかげで、大変感謝します。 – David

関連する問題