Windowsサービスである自分のプロジェクトの1つが、起動直後に停止するという問題が見つかりました。これは以前と同じようなものではありませんでした。開始直後に停止するバグウィンドウサービスをデバッグする方法
サービスが開始された直後に停止してしまったため、サービスがVisual Studioに接続できなくなりました。
私のシステムでは、Windowsサーバー2012 R2で、Visual Studioは2013年
である私は、サービスをデバッグするためにとにかくありますか?
Windowsサービスである自分のプロジェクトの1つが、起動直後に停止するという問題が見つかりました。これは以前と同じようなものではありませんでした。開始直後に停止するバグウィンドウサービスをデバッグする方法
サービスが開始された直後に停止してしまったため、サービスがVisual Studioに接続できなくなりました。
私のシステムでは、Windowsサーバー2012 R2で、Visual Studioは2013年
である私は、サービスをデバッグするためにとにかくありますか?
私はMSDNで答えを見つけました。 OnStartメソッドの先頭に
System.Diagnostics.Debugger.Launch();
:
https://msdn.microsoft.com/en-us/library/cktt23yw.aspx
は、次のコードを追加します。次に、net start serviceNameを実行します(管理資格が必要です)
あなたはこの問題を解決したので、あなたの回答を回答として記入してください。それはあなたと同じ問題を抱える他のコミュニティメンバーに役立つ良い解決策になります:) –
私は明日これを行います私は今それをすることができます)。 –
デバッガで直接サービスを開始することができます。これを実現するには、サービス開始コマンド(sc config binPath=
)を変更するか、GFlagsを使用して、デバッガで起動するサービスイメージを変更します。どちらの場合でも、デバッガはバックグラウンドにあり、遠隔操作する必要があります。
通常、問題があればダンプから解決できます。サービスと同じアカウントからサービス実行可能ファイルを開始するだけで、問題が明らかになります。
最終的には、printf
の力を忘れることはありません。ロギングを追加し、ログから問題を分離します。とにかくのサービスがである必要があります。
Visual Studioビルドフォルダのバイナリファイルにsc config binPathを使用し、Visual Studioでデバッグを開始する必要があるのですか? –
EventLog(アプリケーション、セキュリティ)は手がかりを与えていますか? – Filburt
はい、エラーメッセージはあまり意味がありません。それは単に言う:SimpleInjector.ActivationException。 –