GetLastError: Unterschied zwischen den Versionen
(→Hinweise) |
(→Quellen) |
||
Zeile 39: | Zeile 39: | ||
[http://www.microsoft.com/germany/msdn/library/visualtools/vb6/APIFehlermeldungenImKlartext.mspx?mfr=true GetLastError ist keine VB-Funktion!] | [http://www.microsoft.com/germany/msdn/library/visualtools/vb6/APIFehlermeldungenImKlartext.mspx?mfr=true GetLastError ist keine VB-Funktion!] | ||
− | [[Kategorie: | + | |
+ | [[Kategorie:Fehler]] | ||
+ | [[Kategorie:Kernel]] | ||
+ | [[Kategorie:Funktionen]] |
Version vom 15. August 2008, 11:34 Uhr
|
Diese API-Funktion sollte nicht unter Visual Basic benutzt werden! Weitere Hinweise finden Sie in der Beschreibung! |
Liefert den Fehlercode des letzten aufgetretenen Funktionsfehlers des aufrufenden Prozesses zurück.
Declare Function GetLastError Lib "kernel32.dll" () As Long
Rückgabe
Die Funktion gibt – soweit kein Fehler aufgetreten ist – ERROR_SUCCESS zurück. Andernfalls wird der Fehlercode anhand der Systemfehler-Codes [1] zurückgegeben.
Hinweise
Für Visual Basic wird die Funktion Err.LastDLLError als Ersatz für den API-Aufruf bereitgestellt. Dies hat den Grund, dass Visual Basic selbst gebrauch von GetLastError macht und es somit zu einer Verfälschung der Fehlercodes kommen kann. Aus diesem Grunde stellt Visual Basic LastDLLError zur Verfügung, denn vom Code verursachte Fehler werden hier hinterlegt ohne dass diese vom SetLastError - Aufruf von Visual Basic verändert werden.
Sollten Sie dennoch GetLastError verwenden wollen, um über den Status eines Funktionsaufrufes Fehlerinformationen zu erhalten, so muss der Funktionsaufruf unbedingt direkt nach dem eigentlichen Funktionsaufruf stattfinden, da viele Funktionen als Rückgabe die Fehlerrückgabe per SetLastError auf ERROR_SUCCESS setzen.
Verweise
Eine ausführliche Information zu diesem Thema findet sich zudem in der deutschen MSDN [2]
Verwandte Funktion(en)
String formatieren - FormatMessage
Quellen
MSDN Englisch [3]
GetLastError ist keine VB-Funktion!