Es sollte "PULONG_PTR = ^ULONG_PTR;" heissen. Offensichtlich ein Tippfehler.
ULONG_PTR ist ein Typ den Microsoft bei der Erweiterung des
Win32 API auf 64 Bit eingefuehrt hat. Es passt sowohl ein Pointer als auch ein DWORD (= Cardinal) in so eine Variable. Fuer 64 Bit Windows ist der Typ also Int64 waehrend er fuer 32 Bit Windows DWORD ist.
Damit wurden die Nachlaessigkeiten im
Win32 API geglaettet.