Définit, réinitialise, ou demande le niveau de débogage pour les erreurs COM
#include <Debug.au3>
_DebugCOMError ( [$iComDebug = 1 [, $bExit = False]] )
$iComDebug | [optionnel] Niveau de débogage. Les valeurs possibles sont: -1 - Retourne les paramètres actuels 0 - Désactive le débogage 1 - Active le débogage. Affiche les informations de débogage (par défaut) |
$bExit | [optionnel] True si le script doit se terminer |
Succès: | Retourne: 1 si $iComDebug = 0 ou 1, et définit @extended de la façon suivante: 0 - Le gestionnaire d'erreurs COM n'est pas initialisé 1 - Le gestionnaire d'erreurs COM a été initialisé 2 - Le gestionnaire d'erreurs COM était déjà actif 3 - Le gestionnaire d'erreurs COM est déjà désactivé 1 si $iComDebug = -1 et @error et @extented sont définis de la façon suivante: @error = niveau de débogage courant @extended = terminaison du script courant. |
Échec: | Retourne 0 et définit @error <> 0. |
@error: |
1 - $iComDebug n'est pas un nombre entier ou < -1 ou > 1 2 - Le gestionnaire d'erreurs COM est déjà installé pour une autre fonction (= pas installé par cette fonction) 3 - _DebugSetup() ne s'est pas exécutée correctement. Assurez-vous que _DebugSetup() s'est exécutée correctement avant d'appeler cette fonction 4 - L'installation du gestionnaire d'erreur personnalisé a échoué. @extended contient le code d'erreur retourné par ObjEvent() |
Avant d'appeler cette fonction, _DebugSetup() doit être appelée en premier pour créer la session de débogage.
#include <Debug.au3> #include <MsgBoxConstants.au3> _DebugSetup(Default, True, 1, Default, True) ; 1 = Ecrit des messages avec horodatage dans le fichier journal de Window Example() ; Provoque une erreur COM et laisse _DebugCOMError afficher les messages d'erreur dans le fichier journal de Window Func Example() ; Crée un objet application Microsoft Internet Explorer Local $oIE = ObjCreate("InternetExplorer.Application") If @error <> 0 Then Exit MsgBox($MB_SYSTEMMODAL, "_DebugCOMError UDF", "Erreur lors de la création d'un nouvel objet application IE." & _ @CRLF & "@error = " & @error & ", @extended = " & @extended) ; Met en place le gestionnaire d'erreur COM pour écrire les messages d'erreur dans le Report Log Window _DebugCOMError(1) ; Provoque une erreur COM: la fonction est inconnue $oIE.xyz() If @error <> 0 Then Return MsgBox($MB_SYSTEMMODAL, "_DebugCOMError UDF", "Erreur survenue et gérée." & _ @CRLF & "@error = " & @error) ; Ferme IE $oIE.Quit() $oIE = 0 EndFunc ;==>Example