Dans une application winforms, dans un événement Load du formulaire, ajoutez la ligne suivante:
throw new Exception();
et exécuter l'application. Il a fonctionné sans problème. Cela s'appelle un échec silencieux, vous pouvez essayer d'ajouter messageboxes avant et après, et vous allez bientôt découvrir que, au lieu de planter l'application, l'instruction throw juste sorties de l'événement Load.
Je suis sûr qu'il n'est pas nécessaire d'expliquer comment laide et dangereuse c'est.
Je me demandais néanmoins dans l' (probablement de l'histoire) raisons de cette terrifiante comportement. Je suis sûr que ce n'est pas une décision de conception, probablement pas de choix, ou de la paresse. Quelqu'un sait?
Serait heureux si quelqu'un peut m'indiquer une liste d'événements qui peuvent causer des seilent des échecs aussi.
Voici un extrait de mon code, je n'ai aucune idée de comment il pourrait l'aider, mais, ici, il est:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Form f = new Form();
f.Load += new EventHandler((x, y) => { throw new Exception(); });
Application.Run(f);
}
}
}
MODIFIER Il semble qu'il n'est pas arrivé à tout le monde. J'utilise: fw 3.5, winforms, vs 2008, vista x64, propre projet de winforms, avec le code mentionné ci-dessus.