In der Windows - Hilfe steht das man -1 übergeben soll. Der C-Compliler wandelt das dann in $FFFFFFFF um, was der ausgegebenen Dezimalzahl entspricht, und genau das wird erreicht mit dem CARDINAL(-1).
Das wird übrigens bei vielen Funktionen, wie z. B. MessageBeep(CARDINAL(-1)), gefordert. Ich habe den tieferen Sinn noch nicht verstanden, auf der einen Seite die Typen mit UINT zu deklarieren aber -1 übergeben zu lassen, warum nicht gleich dann als INT deklarieren? Vieleicht wegen des größeren Bereiches?
Gruß
KidPaddle