Funktionreferenz


_DebugCOMError

Beschreibung anzeigen in

Setzt das Debug-Level für COM Fehler, setzt es zurück oder fragt es ab.

#include <Debug.au3>
_DebugCOMError ( [$iComDebug = 1 [, $bExit = False]] )

Parameter

$iComDebug [optional] Debug Level. Mögliche Werte sind:
-1 - gibt die aktuelle Einstellung zurück
 0 - deaktiviert Debugging
 1 - aktiviert Debugging. Gibt die Debuginfos aus (standardmäßig)
$bExit [optional] True wenn das Script beendet werden muss

Rückgabewert

Erfolg: 1 wenn $iComDebug = 0 oder 1 und setzt @extended auf:
0 - Der COM Errorhandler ist nicht initialisiert
1 - Der COM Errorhandler wurde initialisiert
2 - Der COM Errorhandler war bereits aktiv
3 - Der COM Errorhandler ist bereits deaktiviert
1 wenn $iComDebug = -1 und setzt das @error und @extented auf die aktuelle Einstellung:
@error = aktuelles Debug Level
@extended = aktuelle Skript Beendigung
Fehler: 0 und setzt das @error Flag auf ungleich null.
@error: 1 - $iComDebug ist kein Integer oder < -1 oder > 1
2 - Der COM Errorhandler ist bereits auf eine andere Funktion gesetzt (= nicht von dieser Funktion gesetzt)
3 - _DebugSetup() lief nicht erfolgreich. Es muß sichergestellt sein, dass erfolgreich lief, bevor diese Funktion aufgerufen wird
4 - Installation des benutzerdefinierten Errorhandlers schlug fehl. @extended enthält den von
ObjEvent() gesetzten Fehlercode

Bemerkungen

Bevor diese Funktion aufgerufen wird muss _DebugSetup() aufgerufen worden sein um die Debugsitzung zu starten.

Verwandte Funktionen

_DebugSetup

Beispiel

#include <Debug.au3>
#include <MsgBoxConstants.au3>

_DebugSetup(Default, True, 1, Default, True) ; 1 = Write messages with timestamps to the Report Log Window

Example()

; Example
; Provoke a COM error and let _DebugCOMError display the error messages in the Report Log Window
Func Example()
    ; Create application object for the Microsoft Internet Explorer
    Local $oIE = ObjCreate("InternetExplorer.Application")
    If @error <> 0 Then Exit MsgBox($MB_SYSTEMMODAL, "_DebugCOMError UDF", "Error creating a new IE application object." & _
            @CRLF & "@error = " & @error & ", @extended = " & @extended)
    ; Set up the COM error handler to write error messages to the Report Log Window
    _DebugCOMError(1)
    ; Provoke a COM error. Function is unknown
    $oIE.xyz()
    If @error <> 0 Then Return MsgBox($MB_SYSTEMMODAL, "_DebugCOMError UDF", "Error occurred and handled." & _
            @CRLF & "@error = " & @error)
    ; Close the IE
    $oIE.Quit()
    $oIE = 0
EndFunc   ;==>Example