私たちのbuildserver(TeamCity、大いに推奨)は、完成したc ++プログラムで一連のテストスイートを実行します。
全体として、テストによりプログラムがクラッシュし、多くの場合、VisualStudioダイアログが表示され、JustInTimeでクラッシュをデバッグできます。このダイアログは、ビルドサーバーの進行を停止します。失敗としてマークされたビルドの代わりに、ハングします。 VisualStudioのJust In Timeデバッグ機能をオフにしましたが、オフにしても、「JustinTimeはこれをデバッグできませんでした。オプションでオンにできます」というメッセージが表示されます。
プログラム内の未処理の例外がモーダルダイアログにならないようにする方法を知っている人はいますか?
このMSDNの記事では、WindowsサーバーでJust-In-Timeデバッグを無効にする方法について説明しています 。以下の記事の関連部分を含めました。
Visual Studioをサーバーにインストールした後、未処理の例外が発生したときのデフォルトの動作は、ジャストインタイムデバッグを開始するか、例外を無視するためにユーザーの介入を必要とする例外ダイアログを表示することです。これは無人操作には望ましくない場合があります。未処理の例外が発生したときにダイアログを表示しないようにサーバーを構成するには(Visual Studioをインストールする前のデフォルトの動作)、レジストリエディターを使用して次のレジストリキーを削除します。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\DbgManagedDebugger
64ビットオペレーティングシステムでは、次のレジストリキーも削除します。
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\DbgManagedDebugger
C:\ windows\system32\vsjitdebugger.exeを削除(または名前変更)します。
レジストリキーを削除しようとし、Visual Studioオプションのすべてのボックスのチェックを外してみましたが、どちらも機能しませんでした。
明確にするために、私の状況はC++の状況ではありませんでした。私はVisual Studio 2010にMicro Focus COBOLを使用していましたが、レジストリとVSオプションの提案を使用して、「デバッグしたいですか?」ダイアログ、しかしそれは私の自動化されたプロセスを保持するために別のダイアログになりました:
Visual Studioジャストインタイムデバッガー
CASDBC.exeで未処理の例外(「COBOLランタイム:障害が検出されました」)が発生しました[3564]。この例外のジャストインタイムデバッグは、次のエラーで失敗しました。インストールされているデバッガーでジャストインタイムデバッグが有効になっていません。 Visual Studioでは、ツール/オプション/デバッグ/ジャストインタイムからジャストインタイムデバッグを有効にできます。
詳細については、「ジャストインタイムデバッグ、エラー」のドキュメントインデックスを確認してください。
OK
私の場合、win2012サーバーで、私は試しました:
そして、それはまだ現れました!
リブートしました。ダイアログが確認されるまでIISでストールしていました!
動作する最終的なソリューション:コントロールパネルの[プログラム]で、「Microsoft Visual Studion 2010 Shell(Isolated)」をアンインストールし、それをアンインストールして問題を解決しました。
(SQL Management Studioがまだ動作するかどうか....わかりません!)
質問のウィンドウで
選択したデバッガーを使用してデバッグしますか?
[〜#〜] yes [〜#〜](新しいウィンドウが開きます)> [〜#〜] options [〜#〜](一番上の行メニュー)>- [〜#〜] debug [〜#〜]
次に、新しいウィンドウで[〜#〜] tick [〜#〜]を削除します。これは、ENABLE JUST IN TIME DEBUGGERを示しています。 JUST IN TIMEデバッガーを無効にした後、ウィンドウを閉じるか[〜#〜] ok [〜#〜]をクリックすると、問題は解決します。私はこれを試しましたが、JUST IN TIME POP UPメッセージを取り除きました。