2009-08-04 4 views
0

私は窓口サービスを書いています。私は正常にサービスをインストール/実行することができます。今私はサービスにタイマーを追加して、私はレジストリを介して間隔を調整できるようにしたい。しかし、なぜGetSetting("MyAppName", "MySection", "IntervalSetting")がレジストリの値を返さないのかわかりません!WindowsサービスでGetSetting()を呼び出せますか?

何か不足していますか? GetSetting()はWindowsサービスから呼び出されたときに機能しませんか?

+0

サービスは管理者アカウントで実行されており、自分自身(つまり管理者ではない)としてログインしています。 – swolff1978

答えて

2

は:

「のGetSettingは、ユーザーが対話的にログオンするまでアクティブになりませんHKEY_LOCAL_USERレジストリキー、下で動作するので、ユーザーがログオンすることが必要です。」

あなたのサービスはどのアカウントで動作しますか? LocalSystemの場合、ユーザーは事実上ログオンしていません。 IIRCを偽装してもレジストリハイブは読み込まれません。

0

サービスを実行しているユーザーはレジストリにアクセスできますか? MSDNから

関連する問題