Zitat:
Delphi-Quellcode:
buf := StrAlloc(10);
if GetLastError() = ERROR_SUCCESS then
Was soll GetLastError liefern, wenn StrAlloc keinen Fehler lieferte?
Etwas Zufälliges und zwar "laut Definition" den Fehlercode irgendeiner
WinAPI, welches davor als Letztes einen Fehler lieferte.
Genau darum steht auch niemals "Ergebnis siehe GetLastError,
sondern "prüfe Result und
wenn was schief lief, dann siehe GetLastError".
Zitat:
Delphi-Quellcode:
if GetLocaleInfo(
LOCALE_SYSTEM_DEFAULT,
LOCALE_STHOUSAND,
buf,
10) <> 0 then Result := StrPas(buf);
if GetLastError() <> ERROR_INSUFFICIENT_BUFFER then
Wenn GetLocaleInfo erfolgreich war, dann war in StrPas die letzte
WinAPI, aber vielleicht kommt das Result auch von irgendeiner
WinAPI von irgendwann weit davor.