0

.NET を使用して、自動的に開始し、ユーザー名とパスワードを使用してユーザーとして実行するサービスを作成しました。

PC を再起動し、同じユーザー名とパスワードでログオンし、タスク マネージャーに移動すると、サービスが実行中であると表示されますが、イベント ログを確認すると、サービスが開始されたことを示すメッセージはなく、実際には、サービスが開始されていません。これは、本来の処理が行われていないためです。

一方、サービスを手動で停止して開始すると、イベント ログにエントリが表示され、サービスは想定どおりに実行されます。

PC を再起動すると、サービスが実行されていないのに、タスク マネージャーがサービスが実行中であると表示するのはなぜですか? 微調整が必​​要なセキュリティ設定はありますか?

4

2 に答える 2

1

あなたのサービスは別の Windows サービスに依存していますか? その場合、依存サービスから必要な機能を利用できないため、マシンの再起動時にサービスが正しく初期化されていない可能性があります。

これにより、サービスを再起動すると正しく機能する理由が説明されます。

于 2012-10-08T13:32:01.953 に答える
1

問題を解決できました。サービスは、イベント ログ サービスに依存する必要があるのに、どのサービスにも依存していなかったため、Windows の再起動時に適切に初期化できませんでした。ServiceInstaller オブジェクトの「ServicesDependedOn」プロパティを「Windows イベント ログ」に設定すると、問題が解決しました。助けてくれてありがとう!

于 2012-10-08T13:37:09.403 に答える