0

私のマシンで実行されている C# 言語で書かれたいくつかの Windows サービスがあります。また、顧客がこれらのサービスを開始および停止するための WPF アプリケーションも作成しました。同じマシンで実行すると正常に動作しますが、他のマシンで実行しようとすると動作せず、次のメッセージで例外が発生しました:コンピューター 'NAME-PC' でサービス コントロール マネージャーを開けません。この操作には、他の権限が必要になる場合があります。

私の Windows サービスには、 Account プロパティがLocalSystemに設定された ProcessInstaller を持つ Project Installer があります。その影響かどうかはわかりません。

他のマシンに適切な権限を設定して、特定のマシンでこのサービスを開始するにはどうすればよいですか?

ありがとうございました。

4

2 に答える 2

0

セキュリティの問題だと思います。
そのサービスを開始するには、権利を付与する必要があります

WindowsServer2003でサービスを管理する権限をユーザーに付与する方法

于 2012-11-06T15:00:27.923 に答える
0

トラブルシューティングを支援するために、現在の情報から直接答えを出すことはできないと思います。まず、マシン名を IP アドレスに変更してみてください。たとえば、WCF サービスがコマンドを受信して​​いて、そのコンピューターで別のサービスを再起動しようとしている場合は、次のことを試してください。

string machine = "127.0.0.1";

なぜこれが機能するのかについての答えは、私にはわかりません。これは、ローカル ユーザーとして実行されているサービスに関係している可能性があり、ホスト名を解決するために DNS にアクセスできません。

これが機能しない場合 (または機能する場合でも)、サービスの実行専用のドメインアカウントを使用してサービスをセットアップしようとします。一般に、これは、すべてのセキュリティの専門家ではなく、サービスが危険にさらされる可能性があるため (ローカル システムとして実行すると恐ろしいことになる可能性があるため)、何でも行うサービスを作成するためのベスト プラクティスの方法です。

また、サービスが (ローカルではなく) リモート マシンでサービスを開始しようとしている場合は、そのためのアクセス許可を持つ何らかのネットワーク アカウントが必要になります。

于 2012-11-06T14:47:27.663 に答える