Jakékoli řešení, aby vnější výjimky z výjimka vyvolá uvnitř metodu použil v WinForms?

hlasů
0

Ve Windows Forms, když se výjimka vyvolá z volání Invoke, nebo BeginInvoke, a to je neošetřené jakýmkoli blokem catch, to může být řešeny prostřednictvím ovládacího nebo aplikační úrovni psovoda přes Windows.Forms.Application.ThreadExceptionudálosti. Jeho psovod vezme EventArgss majetkem Exception, která je vyvolána výjimka. Nicméně, pod kapotou, Windows.Forms.Control (nežádoucím) sundá všechny ale nejvíce vnitřní výjimka, za tuto odpověď .

Našel tento blog post na to, jak dobře, ale nenaznačují žádné řešení.

(To je v současné době mi způsobuje dostat triviální trasování zásobníku v mých chybové protokoly - trasování zásobníku, který mi říká, že nejvnitřnější podrobnosti, ale není volání kód uvedené a žádný způsob, jak zjistit kód Umístění takového omylu. )

Existuje řešení? Je nějaký způsob, jak dostat všechny vnější výjimky v mé žádosti obsluhy události (která je s přihlášením neočekávané výjimky pro řešení problémů)?

Jediný náznak Zjistil jsem, zdá se, že se zachytit výjimky uvnitř vyvolána kódem a nacpat některé jeho informací do Exception.Data, snad v nové výjimky - ale když jsem věděl, že vnější kód, který způsobil výjimku, jsem mohl jen opravit chybu spíše než protokolování. Namísto toho, jak bych mohl udělat na celém světě, aniž by obalením try-catch kolem každé kandidátské bloku kódu?

Položena 02/12/2019 v 23:53
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

Jakékoli řešení, aby vnější výjimky z výjimka vyvolá uvnitř metodu použil v WinForms?

hlasů
0

Ve Windows Forms, když se výjimka vyvolá z volání Invoke, nebo BeginInvoke, a to je neošetřené jakýmkoli blokem catch, to může být řešeny prostřednictvím ovládacího nebo aplikační úrovni psovoda přes Windows.Forms.Application.ThreadExceptionudálosti. Jeho psovod vezme EventArgss majetkem Exception, která je vyvolána výjimka. Nicméně, pod kapotou, Windows.Forms.Control (nežádoucím) sundá všechny ale nejvíce vnitřní výjimka, za tuto odpověď .

Našel tento blog post na to, jak dobře, ale nenaznačují žádné řešení.

(To je v současné době mi způsobuje dostat triviální trasování zásobníku v mých chybové protokoly - trasování zásobníku, který mi říká, že nejvnitřnější podrobnosti, ale není volání kód uvedené a žádný způsob, jak zjistit kód Umístění takového omylu. )

Existuje řešení? Je nějaký způsob, jak dostat všechny vnější výjimky v mé žádosti obsluhy události (která je s přihlášením neočekávané výjimky pro řešení problémů)?

Jediný náznak Zjistil jsem, zdá se, že se zachytit výjimky uvnitř vyvolána kódem a nacpat některé jeho informací do Exception.Data, snad v nové výjimky - ale když jsem věděl, že vnější kód, který způsobil výjimku, jsem mohl jen opravit chybu spíše než protokolování. Namísto toho, jak bych mohl udělat na celém světě, aniž by obalením try-catch kolem každé kandidátské bloku kódu?

Odpovězeno 02/12/2019 v 23:53
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more