Installe un Gestionnaire d'exception
![[0.9]](../0.9.gif)
Fixe l'adresse d'un gestionnaire d'exception, autorisant une application
mode protégé à intercepter les exceptions CPU (comme les fautes d'absence
de segment )qui ne sont pas gérées par l'hôte DPMI et qui autrement génèreraient
une erreur fatale. Cette fonction doit etre évitée par les clients DPMI 1.0
(voir Notes).
Appel avec

AX = 0203H
BL = numero de l'exception/faute (00H-1FH)
CX:(e)DX = sélecteur:offset du gestionnaire d'exception
Retourne

si la fonction réussit
Carry flag = 0
si la fonction échoue
Carry flag = 1
AX = code d'erreur
8021H | valeur invalide (BL en dehors de 0 à 1FH) |
8022H | sélecteur invalide |
Notes
- La valeur transmise dans CX doit etre un sélecteur de code mode protege
valide (executable) , et pas une adresse de segment mode réel.
- Les clients 32-bit doivent fournir un offset 32-bit dans EDX .
Si le gestionnaire du client est chainé au suivant, il doit utiliser
un cadre de pile d'interruption 32-bit.
- Toutes les exceptions sont d'abord examinées par l'hôte DPMI . Si l'hôte
ne gère pas l'exception, il la reflète au prochain gestionnaire
dans la chaine des gestionnaires d'exception en mode protégé. Voircette page pour une discussion complète de
l'environnement et des responsabilités des gestionnaires d'exception en mode protégé
installés avec cette fonction.
- Les clients qui s'executent sous DPMI 1.0 doivent utiliser l' Int 31H Fonctions 0212H et 0213Hpour fixer les adresses des gestionnaires.
Cette fonction est supportée par les hôtes DPMI 1.0 uniquement par
compatibilité avec DPMI 0.9.
- Voir les règles d'usage des descripteurs dans Appendix D.