Définition des exceptions structurées (C++)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Exceptions structurées sous Win32 (C++)

Le déclenchement d'une exception Win32 gérée au sein d'un même programme n'a généralement pas grand intérêt : les exceptions C++ ont plus d'efficacité, sont plus portables et utilisent une syntaxe plus simple. Les exceptions Win32 ont toutefois un avantage : elles peuvent être gérées par des composants n'ayant pas été compilés par le même compilateur C++.

La première étape consiste à définir l'exception. Une exception est un entier 32 bits qui a le format suivant (en commençant au bit 0) :

Bits Signification
31-30 11 = erreur (normal)
00 = succès
01 = informationnel
10 = avertissement
29 1 = défini par l'utilisateur
28 Réservé
27-0 Défini par l'utilisateur

En plus de la définition de code d'exception, vous devez décider si des informations supplémentaires doivent être incluses avec l'exception (accessibles au filtre / gestionnaire depuis l'enregistrement d'exception). Il n'existe aucune méthode conventionnelle pour encoder des paramètres supplémentaires dans le code d'exception.

Voir aussi