J'ai une application winforms. Winforms commence par Program.cs où nous avons défini main(). J'ai placé ce code dans le bloc try-catch.Pourquoi l'exception win32 n'est pas interceptée par le mécanisme de gestion des exceptions C#
[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());
}
}
}
Chaque fois qu'il ya une exception win32, ce mécanisme échoue et unhandled message d'exception est levée et application se bloque.
J'ai 2 questions concernant ce code:
1) Pourquoi les exceptions win32 ne sont pas interceptées.
2) Est-ce une bonne pratique d'attraper des exceptions au plus haut niveau.
Wow, je n'ai jamais vraiment pensé à cela, bonne question et bonnes réponses :) – leppie
S'il vous plaît commenter sur la deuxième question aussi. – Rohit
Peut-être que vous pourriez en faire une deuxième question SO ;-) – Mac