Por que exceção win32 não são detectados pelo mecanismo de manipulação de exceção c #
Eu tenho um aplicativo winforms.Winforms começar com Program.cs onde temos main () definidos.Eu coloquei este código no bloco try-catch.
[STAThread]
static void Main()
{
try
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new frmSplash());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
if (ex.InnerException != null)
{
MessageBox.Show(ex.InnerException.ToString());
}
}
}
Sempre que há uma exceção do win32, esse mecanismo falha e a mensagem de exceção não tratada é lançada e o aplicativo falha.
Eu tenho 2 perguntas sobre este código:
1) Por que as exceções do win32 não são capturadas.
2) É uma boa prática pegar exceções no nível mais alto.