2011-06-27 10 views
0

私はソフトウェアの一部であるWindowsサービスを作成しました。私はWindows 2003と2008の両方のWindowsサーバーにサービスを展開しましたが、クライアントはサーバーを再起動したときに再起動してしまいました2つの異なるクライアントを持つマシンは、最後の正常な設定でサーバを再起動し、サーバが稼動しています。サーバの1台に接続し、プロセスモニタを実行しました。システムが正常に動作していて、起動ログを見れば、サービスが正常に動作していることが示され、何も変わっていないことを確認した後、仮想マシンをインストールし、マネージャーはそれから数秒後に再起動します。最後の正常な設定でマシンを起動するまで、ログインしてプロセスモニタを実行する機会はありません、どのようにこの問題を追跡するための提案?いずれのsysinternalsツールも役に立ちますか?事前にトラックシステムの再起動

おかげで、

答えて

0

その他いくつかの良いツールを提案することができるかもしれないが、すべてはあなたが何ができるか失敗した場合、いくつかのテキストファイルに文字列パラメータを追加し、あなたのサービス内の関数を記述し、その関数を呼び出していますtgeサービスのスタートアップコードごとに(またはn番目ごとに)増分する。その後、テストを繰り返します。再起動後、ファイルをチェックすると、コンピュータを再起動させた行が正確に表示されます。コードをチェックして理由を見つけたり、ここに問題のコードを投稿すれば、人々があなたをより良く助けることができるかもしれません。

+0

はい、私はあなたが言っていることを理解していますが、サービスが正常に終了し、起動プロセスが続行され、起動時にサービスが一部のソケットサーバーに接続しようとしましたが失敗し、起こるすべてを見ることができます。サービスに関する疑いはない。 –

+0

ブートログやコードを調べるのではなく、説明するのは難しいですが、他にも試してみることができます:1)サービスのプロパティに行き、最初の失敗時にコンピュータを再起動するように設定されていないことを確認します2)サービスを無効にしてからサービスを有効にしてから差異を有効にする3)サービスを「手動」から「自動」に変更し、コンピュータが起動した後に手動で起動してみてください。エラーメッセージまたはログ4)すべてが失敗した場合は、コードの大部分をコメントし、問題が発生するまで段階的にコードのコメントを外すことができます – devsh

+0

ありがとうdevsh、はい私はこれを持っていますが、ソケットサーバーに接続して正常に終了すると、サーバーを再起動するサービスコードに関連するものは何もありません。プロセスモニターでアクションを追跡していますが、何も表示されません。 2回目以降はプロセスモニタを記録して実行する機会はありませんが、私が探しているのはプロセスモニタのようなものを数秒間リモートに接続する方法ですが、何か障害がある場合は、イベントビューア –