問題タブ [unhandled]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
exception - 混合ネイティブ/マネージド実行可能ファイルの最終マネージド例外ハンドラー?
/clr でコンパイルされた MFC アプリケーションがあり、キャッチされないマネージ例外の最終ハンドラーを実装しようとしています。ネイティブ例外の場合、オーバーライドCWinApp::ProcessWndProcException
が機能します。
Jeff のCodeProject 記事で提案されている 2 つのイベントApplication.ThreadException
とAppDomain.CurrentDomain.UnhandledException
は発生しません。
混合実行可能ファイルに最終的なマネージド例外ハンドラーを提供する方法を提案できる人はいますか?
アップデート:
これらの例外ハンドラーは、ダウンストリームApplication.Run
または同様のものでのみトリガーされるようです (ワーカー スレッド フレーバーがあり、名前を思い出せません)。マネージ例外を完全にグローバルにキャッチしたい場合は、SEH フィルターをインストールする必要があります。System.Exception
コールスタックが必要な場合は、独自のウォーカーをロールバックする必要があります。
このトピックに関する MSDN フォーラムの質問では、try ... catch (Exception^)
. たとえば、CWinApp::Run
. これは良い解決策かもしれませんが、パフォーマンスや安定性への影響については調べていません。保釈する前にコール スタックをログに記録する機会が得られ、デフォルトの Windows 未処理の例外動作を回避できます。
visual-studio-2008 - 未処理の例外で VS2008 デバッガーが中断しない
vs デバッガーで奇妙な問題が発生しています。vs デバッガーでプログラムを実行すると、ハンドルされない例外でデバッガーが中断しません。代わりに、プログラムが正常に終了したかのように、制御が VS に返されます。出力タブを見ると、スレッド終了の直前に最初のチャンスの例外がリストされています。
[デバッグ] メニューの [例外] ボックスの使用方法を理解しています。未処理の例外の中断をチェックしました。発生している特定の例外の初回例外をチェックすると、デバッガーが停止します。
ただし、デバッガーは「未処理の例外」でも停止する必要があることを理解しています。それは私のためにこれをしていません。
出力タブの最後の数行は次のとおりです。
例外が未処理のときに「最初のチャンス」例外としてフラグが立てられる理由がわかりません。
0xe0434f4d 終了コードは一般的な COM エラーだと思います。
何か案は?
メトロ。
c# - .Net set_unexpected() に相当するもの
C++のunexpected()/set_unexpected()機能に相当する.netはありますか?
編集: 申し訳ありませんが、以前はいくつかの詳細を省略しました:
言語: C# 2.0
どこかで未処理の例外をスローしているように見えるレガシーアプリがいくつかあります。問題の実際の原因を突き止めることができるまで、顧客の苦痛を止めるために何かを配置したいだけです. C++ では、set_unexpected() が指す関数は、私の知る限り、処理されない例外がメイン ルーチンに発生したときに呼び出されます。したがって、.net と同等の機能に関する私の質問です。
.net - さまざまなプラットフォームに基づいて問題をコンパイルする
PCで正常に動作するソリューションをコンパイルしていますが、別のプラットフォーム用にコンパイルしようとすると、次のエラーが発生します。
未処理の例外:System.ArgumentException:同じキーを持つアイテムが既に追加されています。」
誰もがそれが何を意味するのか知っていますか?
asp.net - カスタム Elmah YSOD データ
ASP.NET で Elmah を使用していますが、未処理の例外メールにセッション変数などのカスタム データを追加する方法を考えています。
Global.asax ファイルでいくつかのハンドラーを試しましたが、適切なハンドラーが見つからないようです。
wpf - WPF-未処理の例外を処理するときにキャプチャする情報は何ですか?
インターネットでダウンロードできるWPF/.Net3.5でアプリケーションを開発しています。私は、可能な限りバグのないコードを記述し、必要な場合にのみ例外を使用しています。しかし、ソフトウェア開発に関する私の経験では、ユーザーは常に奇妙なことを何とかして、想像もしなかった方法で例外がスローされることを示しています。未処理の例外をキャッチする必要がある場合は、追加情報を収集したいと思います。これまでのところ、私は以下をキャプチャしています。
- 標準の例外フィールド(メッセージ、タイプ、スタックトレースなど)
- OSバージョン
- .Netバージョン
- AppDomainにロードされたアプリケーションDLLのバージョン
- アプリのライセンス情報
- ユーザーが実行した最後のいくつかのコマンドのインストルメンテーション。
私はそのようなことを信じていないので、ユーザーに関する「個人」情報を取得したくないことを非常に意識しています。したがって、ユーザー名/ドメイン/ IPアドレスを気にする必要はありません(ただし、例外情報はWebサービスに配信されるため、本質的にIP情報を取得しますが、プロキシマシンの場合もあります)。
私の質問
アプリケーションをパブリックドメイン(つまり、管理された企業環境にないコンピューター)にリリースした人は誰でも、エラーの原因を追跡するのに役立つ他の何かを提案できますか?
特に、管理/コーディングできない情報を収集したくありません-つまり、PCで使用可能なメモリの量、または接続されているプリンタの種類-これらは.net Frameworkによって処理されるため、実際には収集すべきではありません(読み取り:そこにあるバリエーションに対処するために私のコードを変更する必要はありません!
ありがとう!
c# - Windowsフォーム未処理-例外ダイアログ
C#アプリケーションがUEに遭遇するたびに、デフォルトのWindowsフォーム未処理-例外ダイアログを取得したい。vs 2005では、次のようにapp.confでjitデバッグをオフにします。
アプリケーションは正しく動作し、WindowsフォームUEのデフォルトのダイアログを表示し、[続行]、[終了]、[コールスタック]などが表示されます。
ただし、vs 2008では、同じマシンまたは異なるマシンで、jitを無効にしても、[デバッグ]、[レポートの送信]、および[送信しない]ボタンのあるデフォルトの.NET未処理-例外ダイアログが表示されます。
vs 2008アプリをvs2005で作成したアプリのように動作させて、WindowsフォームUEダイアログボックスを表示するにはどうすればよいですか?
使用をお勧めしません
vs 2005プロジェクトでカスタムハンドラーを使用しないという理由だけで、vs 2008で使用するのはなぜですか?この仕事にCLRをさせたい。
どんな助けでも大歓迎です
c# - Windows エラー報告ダイアログの取得
私のC#アプリでは、例外を処理します:
そして、ハンドラーでダイアログボックスを表示し、Application.Exitを実行しても、送信、送信しないでWindowsエラー報告ダイアログが表示されます...
Windows エラー報告ダイアログがポップアップしないようにするにはどうすればよいですか?
実際、メイン フォーム コンストラクターから例外がスローされた場合、プログラムは Windows エラー レポート dlg で終了します。それ以外の場合は、UI スレッドの他の場所からであれば、期待どおりです。
c# - C#で同じ例外を処理しているときに2つの異なる結果が出るのはなぜですか?
2つのプログラムで同じ例外を処理しましたが、結果が異なります。どうしてか分かりません。
最初の結果は、プログラムがScapshot1をキャッチできなかった結果です
。www.freeimagehosting.net/ uploads / e2b37433a3.png
2つ目は、プログラムが成功したものです。
Scapshot2:www.freeimagehosting.net/uploads/6ab7564999.png
なぜ私はそんなに違うのですか?
winforms - Winforms アプリケーションで未処理の例外
テストケースを入力するために使用される単純な WinForms アプリがあります。このアプリケーションを .NET 4.0 にアップグレードし、XSD スキーマに対して XML を検証するための新しいタブ ページをタブ ページ コントロールに追加して以来、アプリケーションはランダムにクラッシュしていました。例外を再現できませんでした。
私の QA 担当者が受け取るエラーは、一般的な Windows メッセージです。
TestCaseViewer に問題が発生したため、終了する必要があります。ご不便をおかけしてしまい申し訳ございません。
実際のエラーに到達するために、プログラムの Main メソッドの先頭に次のコードを追加しました。
イベント ハンドラーは次のようになります。
残念ながら、これは役に立ちませんでした。エラーが発生しているものは何でも、OS にバブリングしている未処理のエラーを生成する方法で引き続き発生します。
この例外をトラップすることについて、誰か他のアイデアを教えてもらえますか?