UdpClientクラスのインスタンスを作成し、着信要求をリッスンするWindowsサービスがあります。コンソールアプリケーションとして実行するためのヘルパークラスがあります。コンソールプログラムとして実行すると、正常に実行され、接続を正常に受信します。「installutilMyService」を使用してWindowsサービスとして展開して起動すると、次のエラーが発生します。「エラー1053:サービスが起動または制御要求にタイムリーに応答しませんでした。」サービスが開始されないため、コードにブレークポイントを設定できません。これをデバッグする方法やどこを見ればよいかについての提案はありますか?ありがとう。
質問する
813 次
1 に答える
2
あなたの Start() メソッドは、サービスの開始時に何をするにも時間がかかりすぎています-メモリが機能する場合、サービスが実行するはずのタスクを開始するのに15秒ほどかかります(長時間実行または継続的な別のスレッドで)サービスの開始が完了したことをサービス コントローラーが認識できるように、スタートアップ メソッドを終了できるようにする必要があります。
コードを投稿しませんでしたが、UDP トラフィックを同期的にリッスンしていると仮定します。そのため、起動メソッドは UDP メッセージを待っているだけで終了しません。UDP リスナーを独自のスレッドに配置し、そのスレッドを開始してから、スタートアップ メソッドを終了させます。
于 2012-10-18T21:23:09.353 に答える