%long

ACCESS_MASK
BOOL
BOOLEAN
BYTE
DWORD
FILE_INFORMATION_CLASS
FS_INFORMATION_CLASS
HANDLE
HMODULE
INT
KEY_INFORMATION_CLASS
KEY_VALUE_INFORMATION_CLASS
LONG
NTSTATUS
OBJECT_INFORMATION_CLASS
PROCESSINFOCLASS
SECTION_INHERIT
SECURITY_IMPERSONATION_LEVEL
SECURITY_INFORMATION
SIZE_T
SYSTEM_INFORMATION_CLASS
THREADINFOCLASS
TIMER_TYPE
TOKEN_TYPE
UINT
ULONG
WCHAR

%long # --forbidden

int
long
size_t
unsigned int
unsigned long

%longlong

LARGE_INTEGER

%ptr

CONTEXT *
CONTEXT86 *
CRITICAL_SECTION *
DWORD *
EXCEPTION_FRAME *
EXCEPTION_RECORD *
HANDLE *
LPBYTE
LPDWORD
LPDWORD *
LPFILETIME
LPRTL_RWLOCK
LPVOID
LPVOID *
LPWSTR *
OBJECT_ATTRIBUTES *
PACE_HEADER
PACE_HEADER *
PACL
PACL *
PBOOLEAN
PDWORD
PEXCEPTION_FRAME
PEXCEPTION_RECORD
PGENERIC_MAPPING
PHANDLE
PIMAGE_NT_HEADERS
PIO_APC_ROUTINE
PIO_STATUS_BLOCK
PLARGE_INTEGER
PLUID
POBJDIR_INFORMATION
POBJECT_ATTRIBUTES
PPRIVILEGE_SET
PRTL_HEAP_DEFINITION
PSECURITY_DESCRIPTOR
PSECURITY_DESCRIPTOR_CONTROL
PSID
PSID *
PSID_IDENTIFIER_AUTHORITY
PSTRING
PTIME_FIELDS
PTIMERAPCROUTINE
PTOKEN_PRIVILEGES
PULONG
PUNICODE_STRING
PVOID
PVOID *
STRING *
UNICODE_STRING *
VOID *
struct _TEB *
void *

%str

LPSTR
LPCSTR

%void

void
VOID

%wstr

LPCWSTR
LPWSTR
