Obtención de diálogo de informe de errores de Windows
Pregunta
En mi aplicación de C #, incluso excepción de identificador:
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
AppDomain.CurrentDomain.UnhandledException +=
new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
y luego en el cuadro de diálogo que muestra manejador y haciendo Application.Exit sigue recibiendo las ventanas de diálogo de informe de errores con SEND, no envíe ...
¿Cómo evitar errores de Windows de diálogo de aparecer?
De hecho, si la excepción desde un formulario principal constructor continuación, el programa termina con el informe de error de Windows DLG. De lo contrario, si de alguna otra ubicación de hilo de interfaz de usuario, a continuación, como se esperaba.
Solución
Tendrá que finalice la aplicación de uno mismo. Esto hará que:
static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) {
var ex = e.ExceptionObject as Exception;
MessageBox.Show(ex.ToString());
if (!System.Diagnostics.Debugger.IsAttached)
Environment.Exit(System.Runtime.InteropServices.Marshal.GetHRForException(ex));
}
Otros consejos
El diálogo que se presenta la opción de enviar o no enviar un informe de error a Microsoft está más allá de excepciones. Esto puede ocurrir si utiliza bloques inseguras o {} se utiliza p / invoke de que realizan alguna operación ilegal.
creo que no se debe combatir los síntomas de su problema. Las excepciones no controladas no pasaran en el primer lugar.
¿Tiene alguna pista sobre lo que está haciendo que?