| @WINAPI |
@WINAPI[module,function[,integer | PINT=n | PLONG=n | PDWORD=n | NULL | BUFFER | "string"]]: Gibt das Ergebnis des Aufrufs einer Windows API-Funktion zurück. Die Argumente sind:
module - Name der DLL, die die Funktion enthält
function - Funktionsname (Groß- und Kleinschreibung beachten)
integer - ein Integer-Wert, der an die Funktion übergeben wird
PINT -ein Zeiger auf die Ganzzahl n
PLONG - ein Zeiger auf die lange Ganzzahl n
PDWORD - ein Zeiger auf ein DWORD n
PINT64 - ein Zeigerauf eine 64-Bit-Ganzzahl
NULL - ein Null-Zeiger (0)
BUFFER - @WINAPI übergibt eine Adresse für einen internen Puffer, damit die API einen Unicode-String-Wert zurückgeben kann.
aBUFFER - @WINAPI übergibt eine Adresse für einen internen Puffer, damit die API einen ASCII-String-Wert zurückgeben kann.
"string" - Textargument (muss in doppelte Anführungszeichen gesetzt werden). Wenn dem Argument ein 'a' vorangestellt ist (d.h. ein "Argument"), wird es vor dem Aufruf der API von Unicode in ASCII konvertiert. (Einige Windows-APIs akzeptieren nur ASCII-Argumente.)
@WINAPI unterstützt maximal 8 Argumente. Der Rückgabewert ist entweder ein String-Wert, der von der API zurückgegeben wird (wenn BUFFER oder aBUFFER angegeben ist), oder der Integer-Wert, der von der API zurückgegeben wird. Die Funktion muss als WINAPI (__stdcall) definiert sein. Wenn @WINAPI die angegebene Funktion nicht finden kann, hängt es ein "W" (für die Unicode-Version) an den Funktionsnamen an und versucht es erneut.
Siehe auch @CAPI.