2017-08-21 14 views
0

私は、XMLファイルからHKLM設定を読み込み、それらの設定をWindowsレジストリに書き込む必要があるようなプロジェクトに取り組んでいます。WIndows Service in c#

  1. WindowsサービスがユーザーとしてTCPプロトコルとネットワーク層
  2. WCFサービスに
  3. 名前付きパイプ

を実行している:私は、この目的のために、以下の最良の選択肢であるかについてのアドバイスが必要システムにログインすると、サービスを実行するのに十分な特権がないため、サービスがHKLMの設定を実行して書き込むことができるように、インストール時にサービスに高い特権を与える必要があります。

reg設定のXMLは別のアプリケーションによって生成されます。 XMLファイルを生成した後、アプリケーションはWindowsレジストリにreg設定を書き込むために提案されたサービスを呼び出します。もともとXMLファイルを生成するアプリケーションは、権限の低い資格情報(非管理者)で実行されるため、レジストリにHKLM設定を書き込むことはできません。したがって、アプリケーションとは別により高いレベルの特権で実行されるサービスが必要です。アプリケーションがXMLファイルを生成すると、そのファイルはサービスと通信し、提案されたサービスはそのXMLファイルを読み取り、reg設定を作成します。

ユーザーの操作はありません。

答えて

0

次の要件を満たすようにしてください。HKLM設定のXMLファイルをいつ読みたいのですが、ユーザーの操作が必要ですか? これはユーザーの操作に基づいていますか?それとも予定されている仕事ですか? スケジュールされていて対話が必要ない場合は、Windowsサービス 、それ以外の場合はWCFサービスに進みます。

ホスティングの仕組みが異なるだけです。 WCFサービスは引き続きWindowsサービスと同様にホストされ、Windowsサービスもポート上でHTTPリスナーを設定できることに注意してください。

特権については、両方のホスティングメカニズムが必要です。実際には、適切な権限を持つサービスアカウントを使用することをお勧めします。

+0

私の質問が更新されました –

+0

IISでホストされているWCFサービスを探してください。将来、いくつかのコード拡張を使用してWindowsサービスとして引き続きホストすることができます。また、ホスティング部分をbiz \ features実装から分離することを提案します –

関連する問題