%%activeds.dll

%long

BOOL
HRESULT
ULONG

%wstr

LPWSTR

%ptr

LPVOID
LPVOID *
LPVOID **
REFIID
ULONG *
VOID **

%%advapi32.dll

%long

ACCESS_MASK
ACCESS_MODE
ACL_INFORMATION_CLASS
ALG_ID
BOOL
BYTE
DWORD
HANDLE
HCRYPTHASH
HCRYPTKEY
HCRYPTPROV
HKEY
INT
LONG
NTSTATUS
POLICY_INFORMATION_CLASS
REGSAM
SC_HANDLE
SC_STATUS_TYPE
SE_OBJECT_TYPE
SECURITY_DESCRIPTOR_CONTROL
SECURITY_IMPERSONATION_LEVEL
SECURITY_INFORMATION
SERVICE_STATUS_HANDLE
TOKEN_INFORMATION_CLASS
TOKEN_TYPE
UINT
ULONG
WORD
unsigned int

%long --extension

LSA_HANDLE

%ptr

BYTE *
DWORD *
FILETIME *
GUID *
HANDLE *
HCRYPTHASH *
HCRYPTKEY *
HCRYPTPROV *
LPBOOL
LPBYTE
LPCGUID
LPCSTR *
LPCVOID
LPCWSTR *
LPDWORD
LPENUM_SERVICE_STATUSA
LPENUM_SERVICE_STATUSW
LPHANDLER_FUNCTION
LPHW_PROFILE_INFOA
LPHW_PROFILE_INFOW
LPINT
LPLONG
LPPROCESS_INFORMATION
LPQUERY_SERVICE_CONFIGA
LPQUERY_SERVICE_CONFIGW
LPQUERY_SERVICE_LOCK_STATUSA
LPQUERY_SERVICE_LOCK_STATUSW
LPSECURITY_ATTRIBUTES
LPSERVICE_STATUS
LPSERVICE_TABLE_ENTRYA
LPSERVICE_TABLE_ENTRYW
LPSTARTUPINFOA
LPSTARTUPINFOW
LPSTR *
LPVOID
LPVOID *
LPWSTR *
MD4_CTX *
MD5_CTX *
PACCESS_MASK
PACL
PACL *
PACTRL_ACCESSW *
PACTRL_AUDITW *
PBOOL
PCHAR
PDWORD
PEXPLICIT_ACCESSA
PEXPLICIT_ACCESSA *
PEXPLICIT_ACCESSW
PEXPLICIT_ACCESSW *
PGENERIC_MAPPING
PHANDLE
PHKEY
PLSA_ENUMERATION_HANDLE
PLSA_HANDLE
PLSA_OBJECT_ATTRIBUTES
PLSA_REFERENCED_DOMAIN_LIST *
PLSA_TRANSLATED_NAME *
PLSA_TRANSLATED_SID *
PLSA_UNICODE_STRING
PLSA_UNICODE_STRING *
PLUID
POBJECT_TYPE_LIST
POBJECTS_AND_NAME_A
POBJECTS_AND_NAME_W
POBJECTS_AND_SID
PPRIVILEGE_SET
PSECURITY_DESCRIPTOR
PSECURITY_DESCRIPTOR *
PSECURITY_DESCRIPTOR_CONTROL
PSHA_CTX
PSID
PSID *
PSID_IDENTIFIER_AUTHORITY
PSID_NAME_USE
PTOKEN_GROUPS
PTRACE_GUID_REGISTRATION
PTRACEHANDLE
PTRUSTEEA
PTRUSTEEW
PUCHAR
PULONG
PVOID
PVOID *
PVALENTA
PVALENTW
SC_LOCK
SECURITY_ATTRIBUTES *
WCHAR *
WMIDPREQUEST
unsigned char *

%str

LPCSTR
LPSTR

%void

VOID

%wstr

LPCWSTR
LPWSTR

%%advpack.dll

%long

BOOL
DWORD
HINSTANCE
HMODULE
HRESULT
HWND
INT

%ptr

HANDLE *
LPCSTRTABLE
LPDWORD
LPVOID
SETUPCOMMAND_PARAMS *

%str

LPCSTR
LPSTR

%void

void

%%amstream.dll

%long

DWORD
HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%atl.dll

%long

BOOL
DWORD
HINSTANCE
HRESULT

%ptr

_ATL_INTMAP_ENTRY *
_ATL_MODULEA *
_ATL_MODULEW *
_ATL_OBJMAP_ENTRYA *
CLSID *
IID *
IRegistrar *
IStream *
IStream **
IUnknown *
IUnknown **
LPDWORD
LPVOID
LPVOID *
REFCLSID
REFIID
struct _ATL_REGMAP_ENTRY *

%str

LPCOLESTR

%%avicap32.dll

%long

BOOL
DWORD
HWND
INT
WORD

%str

LPSTR
LPCSTR

%wstr

LPCWSTR
LPWSTR

%%avifil32.dll

%long

BOOL
DWORD
HANDLE
HRESULT
HWND
INT
LONG
UINT
ULONG
int

%ptr

AVISAVECALLBACK
CLSID *
LONG *
LPAVICOMPRESSOPTIONS *
LPAVICOMPRESSOPTIONS
LPAVIFILEINFOA
LPAVIFILEINFOW
LPAVISTREAMINFOA
LPAVISTREAMINFOW
LPBITMAPINFOHEADER
LPCLSID
LPLONG
LPVOID *
LPVOID
PAVIFILE
PAVIFILE *
PAVISTREAM
PAVISTREAM *
PGETFRAME
REFIID

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR
LPWSTR

%%cabinet.dll

%long

BOOL
HFCI
HFDI
HRESULT
TCOMP
USHORT
int

%long --pointer

INT_PTR

%ptr

DLLVERSIONINFO *
EXTRACTdest *
PCCAB
PERF
PFDICABINETINFO
PFNALLOC
PFNCLOSE
PFNFCIALLOC
PFNFCICLOSE
PFNFCIDELETE
PFNFCIFILEPLACED
PFNFCIFREE
PFNFCIGETNEXTCABINET
PFNFCIGETOPENINFO
PFNFCIGETTEMPFILE
PFNFCIOPEN
PFNFCIREAD
PFNFCISEEK
PFNFCISTATUS
PFNFCIWRITE
PFNFDIDECRYPT
PFNFDINOTIFY
PFNFREE
PFNOPEN
PFNREAD
PFNSEEK
PFNWRITE
char *
void *

%str

LPCSTR

%%capi2032.dll

%long

DWORD

%ptr

DWORD *
PVOID
PVOID *
char *

%%cards.dll

%long

BOOL
DWORD
HDC
int

%ptr

int *

%void

void

%%cfgmgr32.dll

%long

CONFIGRET
ULONG

%ptr

LPVOID
PCHAR
ULONG *

%str

PCSTR

%%comcat.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%comctl32.dll

%long

BOOL
COLORREF
DWORD
HANDLE
HBITMAP
HDC
HDPA
HDSA
HICON
HIMAGELIST
HINSTANCE
HMENU
HPROPSHEETPAGE
HRESULT
HWND
INT
LANGID
LONG
LPARAM
LRESULT
UINT
WORD
WPARAM
int

%long --pointer

DWORD_PTR
UINT_PTR

%longlong

POINT

%ptr

DLLVERSIONINFO *
DPALOADPROC
DWORD_PTR *
HDPA *
HICON *
IMAGEINFO *
IMAGELISTDRAWPARAMS *
INT *
IStream *
LPCOLORMAP
LPCPROPSHEETHEADERA
LPCPROPSHEETHEADERW
LPCPROPSHEETPAGEA
LPCPROPSHEETPAGEW
LPCREATEMRULISTA
LPCREATEMRULISTW
LPCTBBUTTON
LPCVOID
LPINITCOMMONCONTROLSEX
LPINT
LPNMHDR
LPRECT
LPSCROLLINFO
LPSTR *
LPSTREAM
LPVOID
LPWSTR *
PFNDPACOMPARE
PFNDPAENUMCALLBACK
PFNDPAMERGE
PFNDSAENUMCALLBACK
POINT *
RGBQUAD *
SMOOTHSCROLLSTRUCT *
SUBCLASSPROC
TRACKMOUSEEVENT *
UINT *

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%comdlg32.dll

%long

BOOL
DWORD
HRESULT
HWND
WORD
short

%ptr

LPCHOOSECOLORA
LPCHOOSECOLORW
LPCHOOSEFONTA
LPCHOOSEFONTW
LPFINDREPLACEA
LPFINDREPLACEW
LPOPENFILENAMEA
LPOPENFILENAMEW
LPPAGESETUPDLGA
LPPAGESETUPDLGW
LPPRINTDLGA
LPPRINTDLGEXA
LPPRINTDLGEXW
LPPRINTDLGW

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%crtdll.dll

%long

int
size_t
unsigned int

%ptr

char *
char ***
int *
struct crtdll_stat *

%void

void

%%crypt32.dll

%long

BOOL
DWORD
HANDLE
HCERTSTORE
HCRYPTPROV

%ptr

BYTE *
CRYPTPROTECT_PROMPTSTRUCT *
DATA_BLOB *
DWORD *
GUID *
LPWSTR *
PCCERT_CONTEXT
PCCRL_CONTEXT
PCCRL_CONTEXT *
PCRYPT_DECODE_PARA
PCRYPT_ENCODE_PARA
PVOID
SIP_ADD_NEWPROVIDER *
SIP_DISPATCH_INFO *
void *

%str

LPCSTR

%wstr

LPCWSTR

%%ctl3d32.dll

%long

BOOL
DWORD
HBRUSH
HDC
HINSTANCE
HWND
LONG
LPARAM
LRESULT
UINT
WORD
WPARAM
int

%void

void

%%d3d8.dll

%long

BOOL
HRESULT
UINT

%ptr

IDirect3D8 *
LPVOID

%void

void

%%d3d9.dll

%long

BOOL
HRESULT
UINT

%ptr

IDirect3D9 *
LPVOID

%%d3dxof.dll

%long

DWORD
HRESULT

%ptr

REFCLSID
REFIID
LPDIRECTXFILE *
LPVOID *

%%dbghelp.dll

%long

BOOL
DWORD
HANDLE
HMODULE
IMAGEHLP_SYMBOL_TYPE_INFO
MINIDUMP_TYPE
ULONG

%longlong

DWORD64
ULONG64

%ptr

DWORD64 *
LPAPI_VERSION
LPSTACKFRAME
LPVOID
PDWORD
PENUMDIRTREE_CALLBACK
PENUMLOADED_MODULES_CALLBACK
PFIND_DEBUG_FILE_CALLBACK
PFINDFILEINPATHCALLBACK
PFUNCTION_TABLE_ACCESS_ROUTINE
PGET_MODULE_BASE_ROUTINE
PIMAGE_DEBUG_INFORMATION
PIMAGEHLP_CONTEXT
PIMAGEHLP_LINE
PIMAGEHLP_MODULE
PIMAGEHLP_SYMBOL
PIMAGEHLP_STACK_FRAME
PMINIDUMP_CALLBACK_INFORMATION
PMINIDUMP_DIRECTORY *
PMINIDUMP_EXCEPTION_INFORMATION
PMINIDUMP_USER_STREAM_INFORMATION
PREAD_PROCESS_MEMORY_ROUTINE
PSYM_ENUMERATESYMBOLS_CALLBACK
PSYM_ENUMMODULES_CALLBACK
PSYM_ENUMSOURCFILES_CALLBACK
PSYM_ENUMSYMBOLS_CALLBACK
PSYMBOL_REGISTERED_CALLBACK
PSYMBOL_INFO
PTRANSLATE_ADDRESS_ROUTINE
PVOID
ULONG *
char *
char **
void *
void **

%str

LPCSTR
LPSTR
PCSTR
PSTR

%%dciman32.dll

%long

HDC
int

%ptr

LPDCISURFACEINFO *

%void

void

%%d3dx8.dll

%long

DWORD
HFONT
HRESULT
UINT

%ptr

LPD3DXBUFFER *
LPDIRECT3DDEVICE8
LPCVOID
LPD3DXFONT *

%str

LPSTR

%%ddraw.dll

%long

DWORD
HRESULT

%ptr

LPDDENUMCALLBACKA
LPDDENUMCALLBACKEXA
LPDDENUMCALLBACKEXW
LPDDENUMCALLBACKW
LPDIRECTDRAW *
LPDIRECTDRAWCLIPPER *
LPGUID
LPUNKNOWN
LPVOID
LPVOID *
REFCLSID
REFIID

%%devenum.dll

%long

HRESULT

%ptr

REFCLSID
REFIID
LPVOID *


%%dinput.dll

%long

DWORD
HINSTANCE
HRESULT

%ptr

LPDIRECTINPUTA *
LPDIRECTINPUTW *
LPUNKNOWN
LPVOID *
REFCLSID
REFIID

%%dinput8.dll

%long

DWORD
HINSTANCE
HRESULT

%ptr

LPUNKNOWN
LPVOID *
REFCLSID
REFIID

%%dmband.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dmcompos.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dmime.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dmloader.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dmscript.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dmstyle.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dmsynth.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dmusic.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dmusic32.dll

%long

HRESULT

%ptr

LPVOID

%%dplayx.dll

%long

DWORD
HRESULT

%ptr

IUnknown *
LPDIRECTPLAY2 *
LPDIRECTPLAYLOBBY *
LPDIRECTPLAYLOBBYA *
LPDPENUMDPCALLBACKA
LPDPENUMDPCALLBACKW
LPGUID
LPVOID
LPVOID *
REFCLSID
REFIID

%%dpnet.dll

%long

BOOL
HRESULT

%ptr

LPUNKNOWN
LPVOID *
REFCLSID
REFGUID
REFIID

%%dpnhpast.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%dsound.dll

%long

DWORD
HRESULT
HWND

%ptr

IUnknown *
LPCDSBUFFERDESC
LPCDSCBUFFERDESC
LPCGUID
LPDIRECTSOUND *
LPDIRECTSOUND8 *
LPDIRECTSOUNDBUFFER8 *
LPDIRECTSOUNDCAPTURE *
LPDIRECTSOUNDCAPTURE8 *
LPDIRECTSOUNDCAPTUREBUFFER8 *
LPDIRECTSOUNDFULLDUPLEX *
LPDSENUMCALLBACKA
LPDSENUMCALLBACKW
LPGUID
LPUNKNOWN
LPVOID
LPVOID *
REFCLSID
REFIID

%%dswave.dll

%long

HRESULT

%ptr

REFCLSID
REFIID
LPVOID *

%%dxdiagn.dll

%ptr

REFCLSID
REFIID

%%gdi32.dll

%long

BOOL
COLORREF
DWORD
FLOAT
HANDLE
HBITMAP
HBRUSH
HCOLORSPACE
HDC
HENHMETAFILE
HFONT
HGDIOBJ
HGLOBAL
HMETAFILE
HPALETTE
HPEN
HRGN
HWND
INT
LONG
LPARAM
UINT
ULONG
WORD

%long --extension

HDC16
HPJOB16
HRGN16
INT16
int

%ptr

ABORTPROC
BITMAP *
BITMAPINFO *
BITMAPINFOHEADER *
BLENDFUNCTION
BYTE *
COLORADJUSTMENT *
DCHOOKPROC
DEVMODEA *
DEVMODEW *
DOCINFOA *
DOCINFOW *
DWORD *
ENHMETARECORD *
ENHMFENUMPROC
FONTENUMPROCA
FONTENUMPROCW
GCP_RESULTSA *
GCP_RESULTSW *
GOBJENUMPROC
HANDLETABLE *
ICMENUMPROCA     
ICMENUMPROCW
INT *
LINEDDAPROC
LOGBRUSH *
LOGFONTA *
LOGFONTW *
LOGPALETTE *
LOGPEN *
LPABC
LPABCFLOAT
LPBYTE
LPCHARSETINFO
LPCOLORADJUSTMENT
LPCVOID
LPDEVMODEA
LPDWORD
LPENHMETAHEADER
LPFONTSIGNATURE
LPGLYPHMETRICS
LPHANDLETABLE
LPINT
LPKERNINGPAIR
LPLOGCOLORSPACEA
LPLOGCOLORSPACEW
LPLOGFONTA
LPLOGFONTW
LPOUTLINETEXTMETRICA
LPOUTLINETEXTMETRICW
LPPALETTEENTRY
LPPIXELFORMATDESCRIPTOR
LPPOINT
LPRASTERIZER_STATUS
LPRECT
LPRGNDATA
LPSIZE
LPVOID
LPWORD
LPXFORM
MAT2 *
METAFILEPICT *
METARECORD *
MFENUMPROC
PALETTEENTRY *
PFLOAT
PIXELFORMATDESCRIPTOR *
POINT *
PPOLYTEXTA
PPOLYTEXTW
PVOID
RECT *
RGBQUAD *
RGNDATA *
TEXTMETRICA *
TEXTMETRICW *
TRIVERTEX *
WORD *
XFORM *
VOID **
void *

%ptr --extension

FARPROC16

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR
LPWSTR

%%glu32.dll

%double

double

%long

int

%ptr

char *
void *

%void

void

%%glut32.dll

%double

double

%float

float

%long

int
unsigned int

%ptr

void (*)(int)
void *
void **

%void

void

%%hhctrl.ocx

%long

DWORD
HMODULE
HRESULT
HWND
UINT
int

%str

LPCSTR
LPSTR

%wstr

LPCWSTR

%%iccvid.dll

%long

DWORD
HDRVR
LONG
LRESULT
UINT

%%icmp.dll

%long

BOOL
DWORD
HANDLE
IPAddr
WORD

%ptr

LPVOID
PIP_OPTION_INFORMATION

%%ifsmgr.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%imaadp32.acm

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT

%%imagehlp.dll

%long

BOOL
DWORD
HANDLE
ULONG
WORD

%ptr

DIGEST_FUNCTION
DIGEST_HANDLE
LPDWORD
LPSYSTEMTIME
LPVOID
PCHAR
PCHAR *
PDWORD
PIMAGEHLP_STATUS_ROUTINE
PIMAGE_LOAD_CONFIG_DIRECTORY
PIMAGE_NT_HEADERS
PLOADED_IMAGE
PWIN_CERTIFICATE
ULONG *

%str

LPSTR

%void

VOID

%wstr

LPWSTR

%%imm32.dll

%long

BOOL
DWORD
HIMC
HKL
HWND
LONG
LPARAM
LRESULT
UINT
WPARAM

%ptr

LPCANDIDATEFORM
LPCANDIDATELIST
LPCOMPOSITIONFORM
LPCVOID
LPDWORD
LPLOGFONTA
LPLOGFONTW
LPPOINT
LPSTYLEBUFA
LPSTYLEBUFW
LPVOID
REGISTERWORDENUMPROCA
REGISTERWORDENUMPROCW

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%iphlpapi.dll

%long

BOOL
DWORD
HANDLE
IPAddr
IPMask
UINT
ULONG

%ptr

HANDLE *
LPDWORD
LPOVERLAPPED
OVERLAPPED *
PDWORD
PFIXED_INFO
PHANDLE
PIP_ADAPTER_INDEX_MAP
PIP_ADAPTER_INFO
PIP_INTERFACE_INFO
PIP_PER_ADAPTER_INFO
PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS
PMIB_ICMP
PMIB_IFROW
PMIB_IFTABLE
PMIB_IFTABLE *
PMIB_IPADDRTABLE
PMIB_IPADDRTABLE *
PMIB_IPFORWARDROW
PMIB_IPFORWARDTABLE
PMIB_IPFORWARDTABLE *
PMIB_IPNETROW
PMIB_IPNETTABLE
PMIB_IPNETTABLE *
PMIB_IPSTATS
PMIB_TCPROW
PMIB_TCPSTATS
PMIB_TCPTABLE
PMIB_TCPTABLE *
PMIB_UDPSTATS
PMIB_UDPTABLE
PMIB_UDPTABLE *
PULONG

%wstr

LPWSTR

%%itss.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%joystick.drv

%long

DWORD
HDRVR
LONG

%%kernel32.dll

%long

ATOM
BOOL
BYTE
CALID
CALTYPE
CHAR
COORD
DWORD
EXECUTION_STATE
GEOCLASS
GEOID
GEOTYPE
HANDLE
HFILE
HGLOBAL
HINSTANCE
HLOCAL
HMODULE
HRSRC
HWND
INT
LANGID
LATENCY_TIME
LCID
LCTYPE
LONG
SIZE_T
UINT
ULONG
WCHAR
WORD
WOW_HANDLE_TYPE
int

%long --extension

BOOL16
HANDLE16
HFILE16
HGLOBAL16
HINSTANCE16
HLOCAL16
HMODULE16
HQUEUE16
HRSRC16
HTASK16
INT16
UINT16

%long --pointer

DWORD_PTR
LONG_PTR
ULONG_PTR

%longlong

DWORDLONG
LARGE_INTEGER

%ptr

BOOL *
BY_HANDLE_FILE_INFORMATION *
CALINFO_ENUMPROCA
CALINFO_ENUMPROCEXA
CALINFO_ENUMPROCEXW
CALINFO_ENUMPROCW
CHAR_INFO *
CODEPAGE_ENUMPROCA
CODEPAGE_ENUMPROCW
COMPUTER_NAME_FORMAT
CONTEXT *
CRITICAL_SECTION *
CURRENCYFMTA *
CURRENCYFMTW *
DATEFMT_ENUMPROCA
DATEFMT_ENUMPROCEXA
DATEFMT_ENUMPROCEXW
DATEFMT_ENUMPROCW
DWORD *
ENUMRESLANGPROCA
ENUMRESLANGPROCW
ENUMRESNAMEPROCA
ENUMRESNAMEPROCW
ENUMRESTYPEPROCA
ENUMRESTYPEPROCW
FARPROC
FARPROC *
FILETIME *
FINDEX_INFO_LEVELS
FINDEX_SEARCH_OPS
GEO_ENUMPROC
GET_FILEEX_INFO_LEVELS
GUID *
HANDLE *
IMAGE_DOS_HEADER *
INPUT_RECORD *
LANGGROUPLOCALE_ENUMPROCA
LANGGROUPLOCALE_ENUMPROCW
LANGUAGEGROUP_ENUMPROCA
LANGUAGEGROUP_ENUMPROCW
LARGE_INTEGER *
LOCALE_ENUMPROCA
LOCALE_ENUMPROCW
LONG *
LGRPID
LPBOOL
LPBYTE
LPCHAR_INFO
LPCOMMCONFIG
LPCOMMPROP
LPCOMMTIMEOUTS
LPCOMSTAT
LPCONSOLE_CURSOR_INFO
LPCONSOLE_SCREEN_BUFFER_INFO
LPCPINFO
LPCPINFOEXA
LPCPINFOEXW
LPCVOID
LPDCB
LPDEBUG_EVENT
LPDWORD
LPFIBER_START_ROUTINE
LPFILETIME
LPHEAPLIST32
LPLDT_ENTRY
LPMEMORYSTATUS
LPMEMORYSTATUSEX
LPMODULEENTRY32
LPMODULEENTRY32W
LPOSVERSIONINFOEXA
LPOSVERSIONINFOEXW
LPOVERLAPPED
LPOVERLAPPED *
LPOVERLAPPED_COMPLETION_ROUTINE
LPPROCESSENTRY32
LPPROCESSENTRY32W
LPPROCESS_HEAP_ENTRY
LPPROCESS_INFORMATION
LPPROGRESS_ROUTINE
LPSECURITY_ATTRIBUTES
LPSMALL_RECT
LPSTARTUPINFOA
LPSTARTUPINFOW
LPSTR *
LPSYSTEMTIME
LPSYSTEM_INFO
LPSYSTEM_POWER_STATUS
LPTHREADENTRY32
LPTHREAD_START_ROUTINE
LPTIME_ZONE_INFORMATION
LPTOP_LEVEL_EXCEPTION_FILTER
LPVOID
LPVOID *
LPWORD
LPWSTR *
NUMBERFMTA *
NUMBERFMTW *
OFSTRUCT *
OSVERSIONINFOA *
OSVERSIONINFOW *
PACTCTX_SECTION_KEYED_DATA
PAPCFUNC
PBOOL
PCACTCTXA
PCACTCTXW
PDWORD
PEXCEPTION_POINTERS
PHANDLE
PHANDLER_ROUTINE
PINPUT_RECORD
PIO_COUNTERS
PLARGE_INTEGER
PLONG
PMEMORY_BASIC_INFORMATION
PSIZE_T
PULONG_PTR
PVOID
PTIMERAPCROUTINE
PULARGE_INTEGER
SECURITY_ATTRIBUTES *
SIZE_T *
SYSLEVEL *
SYSLEVEL **
SYSTEMTIME *
TIME_ZONE_INFORMATION *
TIMEFMT_ENUMPROCA
TIMEFMT_ENUMPROCW
UILANGUAGE_ENUMPROCA
UILANGUAGE_ENUMPROCW
ULONG_PTR *
WAITORTIMERCALLBACK
WIN32_FIND_DATAA *
WIN32_FIND_DATAW *
WORD *
char *
struct ThunkDataCommon *
va_list
va_list *
void *

%ptr --extension

FARPROC16
SEGPTR

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%lz32.dll

%long

HFILE
INT
LONG
WORD

%ptr

LPOFSTRUCT

%str

LPSTR

%void

void

%wstr

LPWSTR

%%mapi32.dll

%long

BOOL
CMC_enum
CMC_return_code
CMC_session_id
DWORD
FLAGS
HRESULT
INT
LONG
SCODE
UINT
ULONG
int

%long --pointer

ULONG_PTR

%longlong

FILETIME
LONGLONG

%ptr

ALLOCATEBUFFER *
ALLOCATEMORE *
CMC_buffer
CMC_extension *
FREEBUFFER *
LPADRLIST
LPALLOCATEBUFFER
LPBYTE
LPCIID
LPENTRYLIST
LPFREEBUFFER
LPLHANDLE
LPMALLOC
LPMAPIADVISESINK
LPMAPIADVISESINK *
LPMAPINAMEID
LPMAPIPROP
LPMAPISESSION *
LPPROPDATA *
LPSPropTagArray
LPSPropValue
LPSPropValue *
LPSRowSet
LPSRow
LPSTR *
LPSTREAM *
LPVOID
LPVOID *
LPWSTR *
PULONG
PUSHORT
PVOID
ULONG *
void *

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%mcianim.drv

%long

DWORD
HDRVR
LONG

%%mciavi.drv

%long

DWORD
HDRVR
LONG

%%mcicda.drv

%long

DWORD
HDRVR
LONG

%%mciseq.drv

%long

DWORD
HDRVR
LONG

%%mciwave.drv

%long

DWORD
HDRVR
LONG

%%midimap.drv

%long

DWORD
HDRVR
LONG
UINT

%%mlang.dll

%long

DWORD
HRESULT
INT
LCID

%ptr

LPDWORD
LPINT
LPVOID *
REFCLSID
REFIID

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%mmdevldr.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%monodebg.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%mpr.dll

%long

BOOL
BYTE
DWORD
HANDLE
HPROVIDER
HWND
INT
UINT
WORD
enum NOTIFYTYPE

%ptr

BOOL *
ENUMPASSWORDPROC
LPAUTHDLGSTRUCTA
LPBYTE
LPCONNECTDLGSTRUCTA
LPCONNECTDLGSTRUCTW
LPCSTR *
LPDISCDLGSTRUCTA
LPDISCDLGSTRUCTW
LPDWORD
LPHANDLE
LPNETCONNECTINFOSTRUCT
LPNETINFOSTRUCT
LPNETRESOURCEA
LPNETRESOURCEW
LPSTR *
LPVOID
LPWORD
LPWSTR *
NOTIFYCALLBACK
PHPROVIDER

%str

LPCSTR
LPSTR

%void

VOID

%wstr

LPCWSTR
LPWSTR

%%msacm.drv

%long

DWORD
HDRVR
LONG
UINT
WORD

%%msacm32.dll

%long

DWORD
HACMDRIVER
HACMDRIVERID
HACMOBJ
HACMSTREAM
HDRVR
HINSTANCE
LPARAM
LRESULT
MMRESULT
UINT

%ptr

ACMDRIVERENUMCB
ACMFILTERENUMCBA
ACMFILTERENUMCBW
ACMFILTERTAGENUMCBA
ACMFILTERTAGENUMCBW
ACMFORMATENUMCBA
ACMFORMATENUMCBW
ACMFORMATTAGENUMCBA
ACMFORMATTAGENUMCBW
LPDWORD
LPVOID
PACMDRIVERDETAILSA
PACMDRIVERDETAILSW
PACMFILTERCHOOSEA
PACMFILTERCHOOSEW
PACMFILTERDETAILSA
PACMFILTERDETAILSW
PACMFILTERTAGDETAILSA
PACMFILTERTAGDETAILSW
PACMFORMATCHOOSEA
PACMFORMATCHOOSEW
PACMFORMATDETAILSA
PACMFORMATDETAILSW
PACMFORMATTAGDETAILSA
PACMFORMATTAGDETAILSW
PACMSTREAMHEADER
PHACMDRIVER
PHACMDRIVERID
PHACMSTREAM
PWAVEFILTER
PWAVEFORMATEX

%%msacmmap.dll

%long

DWORD
HDRVR
LONG
UINT
WORD

%%mscms.dll

%long

BMFORMAT
BOOL
COLORTYPE
DWORD
HPROFILE
HTRANSFORM
LPARAM
TAGTYPE
ULONG

%ptr

LPBYTE
LPDWORD
LPLOGCOLORSPACEA
LPLOGCOLORSPACEW
PBMCALLBACKFN
PBOOL
PBYTE
PBYTE *
PCOLOR
PCOLOR_NAME
PDWORD
PENUMTYPEA
PENUMTYPEW
PHPROFILE
PNAMED_PROFILE_INFO
PPROFILE
PPROFILEHEADER
PTAGTYPE
PVOID

%str

PCSTR
PSTR

%wstr

LPCWSTR
LPWSTR
PCWSTR
PWSTR

%%msdmo.dll

%long

DWORD
HRESULT
unsigned long

%ptr

DMO_MEDIA_TYPE **
DMO_MEDIA_TYPE *
DMO_PARTIAL_MEDIATYPE *
IEnumDMO **
REFCLSID
REFGUID
WCHAR *
unsigned long *

%wstr

LPCWSTR

%%msg711.acm

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT

%%mshtml.dll

%long

BOOL
HINSTANCE
HRESULT
INT

%ptr

LPVOID *
REFCLSID
REFIID

%str

LPCSTR

%wstr

LPCWSTR

%%msi.dll

%long

BOOL
DWORD
HRESULT
HWND
INSTALLMESSAGE
INSTALLSTATE
INSTALLTYPE
INSTALLUILEVEL
INT
LANGID
MSICOLINFO
MSICONDITION
MSIHANDLE
MSIMODIFY
MSIRUNMODE
UINT
USERINFOSTATE
WORD
int
unsigned int

%ptr

BYTE *
DLLVERSIONINFO *
DWORD *
FILETIME *
HWND *
INSTALLUI_HANDLERA
INSTALLUI_HANDLERW
INSTALLSTATE *
INT *
LPVOID
LPVOID *
MSIHANDLE *
PCCERT_CONTEXT *
REFCLSID
REFIID
UINT *
WORD *
char *

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%msimg32.dll

%void

void

%%msisys.ocx

%long

HRESULT

%ptr

CLSID *
IID *
void **

%%msrle32.dll

%long

DWORD
HDRVR
LRESULT
LPARAM
UINT

%%msnet32.dll

%long

LONG

%ptr

LPVOID

%%msvcrt.dll

%double

double

%long

DWORD
INT
LCID
LONG
MSVCRT_clock_t
MSVCRT_size_t
MSVCRT_time_t
MSVCRT_wchar_t
NTSTATUS
int
long
short
unsigned int
unsigned long
unsigned short int

%longlong

__int64
unsigned __int64

%ptr

EXCEPTION_REGISTRATION_RECORD *
EXCEPTION_REGISTRATION_RECORD **
MSVCRT__beginthread_start_routine_t
MSVCRT__beginthreadex_start_routine_t
MSVCRT__onexit_t
MSVCRT__onexit_t **
MSVCRT__se_translator_function
MSVCRT_EXCEPTION_FRAME *
MSVCRT_FILE *
MSVCRT_fpos_t *
MSVCRT_matherr_func
MSVCRT_new_handler_func
MSVCRT_terminate_function
MSVCRT_unexpected_function
MSVCRT_time_t *
MSVCRT_wchar_t *
MSVCRT_wchar_t **
MSVCRT_wchar_t ***
MSVCRT_wint_t
PCONTEXT
PEXCEPTION_POINTERS
PEXCEPTION_RECORD
WCHAR *
WCHAR **
WORD **
_INITTERMFUN *
char *
char **
char ***
cxx_exception_type *
exception *
free_func_t
int (*)(void *, void *)
int *
long *
malloc_func_t
struct MSVCRT___JUMP_BUFFER *
struct MSVCRT__exception *
struct MSVCRT__diskfree_t *
struct MSVCRT__finddata_t *
struct MSVCRT__finddatai64_t *
struct MSVCRT__heapinfo *
struct MSVCRT__stat *
struct MSVCRT__stati64 *
struct MSVCRT__timeb *
struct MSVCRT__utimbuf *
struct MSVCRT__wfinddata_t *
struct MSVCRT__wfinddatai64_t *
struct MSVCRT_lconv *
struct MSVCRT_tm *
type_info *
unsigned char *
unsigned int *
unsigned long *
va_list
void (*)(void)
void *
__sighandler_t

%unknown

MSVCRT_div_t
MSVCRT_ldiv_t
struct MSVCRT__complex

%void

VOID
void

%%msvcrtd.dll

%long

int
unsigned long

%ptr

char *
int *
void *

%%msvcrt20.dll

%long

int

%ptr

WCHAR ***
char ***
int *

%void

void

%%msvfw32.dll

%long

BOOL
DWORD
HANDLE
HDC
HDRAWDIB
HIC
HINSTANCE
HPALETTE
HWND
INT
LONG
LPARAM
LRESULT
UINT
WORD
int

%ptr

BOOL *
FARPROC
ICINFO *
LONG *
LPBITMAPINFO
LPBITMAPINFOHEADER
LPDRAWDIBTIME
LPDWORD
LPPALETTEENTRY
LPOPENFILENAMEA
LPOPENFILENAMEW
LPVOID
PCOMPVARS

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR

%%msvidc32.dll

%long

DWORD
HDRVR
LONG
LRESULT
UINT

%%mswsock.dll

%long

BOOL
DWORD
HANDLE
SOCKET

%ptr

LPDWORD
LPOVERLAPPED
LPTRANSMIT_FILE_BUFFERS
PVOID

%void

void

%%netapi32.dll

%long

DWORD
NET_API_STATUS
UCHAR

%ptr

LPBYTE
LPBYTE *
LPDWORD
LPVOID
LPVOID *
LPWSTR *
PBROWSER_EMULATED_DOMAIN *
PBYTE *
PDWORD
PNCB
PNETSETUP_JOIN_STATUS
PVOID *

%wstr

LPCWSTR
LPWSTR

%%newdev.dll

%long

BOOL
DWORD
HWND

%ptr

LPGUID
PBOOL
PDWORD

%str

LPCSTR

%wstr

LPCWSTR

%%ntdll.dll

%double

double

%long

ACCESS_MASK
ACL_INFORMATION_CLASS
ATOM_INFORMATION_CLASS
BOOL
BOOLEAN
BYTE
CCHAR
CHAR
DWORD
FILE_INFORMATION_CLASS
FS_INFORMATION_CLASS
HANDLE
HMODULE
INT
KEY_INFORMATION_CLASS
KEY_VALUE_INFORMATION_CLASS
KPROFILE_SOURCE
LANGID
LCID
LONG
MEMORY_INFORMATION_CLASS
MUTANT_INFORMATION_CLASS
NTSTATUS
OBJECT_INFORMATION_CLASS
POWER_ACTION
POWER_INFORMATION_LEVEL
PROCESSINFOCLASS
RTL_ATOM
SECTION_INFORMATION_CLASS
SECTION_INHERIT
SECURITY_IMPERSONATION_LEVEL
SECURITY_INFORMATION
SEMAPHORE_INFORMATION_CLASS
SHUTDOWN_ACTION
SIZE_T
SYSTEM_INFORMATION_CLASS
SYSTEM_POWER_STATE
THREADINFOCLASS
TIMER_INFORMATION_CLASS
TIMER_TYPE
TOKEN_INFORMATION_CLASS
TOKEN_TYPE
UCHAR
UINT
ULONG
WCHAR
WORD
enum loadorder_type
int
long
unsigned int
unsigned long

%long --pointer

ULONG_PTR

%long --extension

obj_handle_t

%longlong

DWORDLONG
LONGLONG
ULONGLONG

%ptr

ANSI_STRING *
BOOLEAN *
CONTEXT *
CLIENT_ID *
CURDIR *
DOS_PATHNAME_TYPE
DWORD *
EXCEPTION_RECORD *
EXCEPTION_REGISTRATION_RECORD *
EXCEPTION_REGISTRATION_RECORD **
FILE_NETWORK_OPEN_INFORMATION *
FILE_BASIC_INFORMATION *
GENERIC_MAPPING *
GUID *
HANDLE *
HMODULE *
IO_STATUS_BLOCK *
IMAGE_NT_HEADERS *
IMAGE_RESOURCE_DIRECTORY **
IMAGE_RESOURCE_DATA_ENTRY *
IMAGE_RESOURCE_DATA_ENTRY **
IMAGE_SECTION_HEADER **
INT *
LANGID *
LARGE_INTEGER *
LCID *
LDR_RESOURCE_INFO *
LPBYTE
LPCVOID
LPCVOID *
LPDWORD
LPRTL_RWLOCK
LPSTR *
LPTIME_ZONE_INFORMATION
LPVOID
LPVOID *
LPWSTR *
LUID *
LUID_AND_ATTRIBUTES *
MESSAGE_RESOURCE_ENTRY **
NTSTATUS *
OBJECT_ATTRIBUTES *
OEM_STRING *
PACCESS_MASK
PACE_HEADER
PACE_HEADER *
PACL
PACL *
PANSI_STRING
PBOOLEAN
PBYTE
PCANSI_STRING
PCHAR
PCRTL_BITMAP
PCSZ
PDEBUG_BUFFER
PDWORD
PEXCEPTION_RECORD
PGENERIC_MAPPING
PHANDLE
PIMAGE_NT_HEADERS
PIMAGE_SECTION_HEADER
PIO_APC_ROUTINE
PIO_STATUS_BLOCK
PLARGE_INTEGER
PLDR_MODULE *
PLONG
PLPC_MESSAGE
PLPC_SECTION_READ
PLPC_SECTION_WRITE
PLUID
PLUID_AND_ATTRIBUTES
PNTAPCFUNC
POBJDIR_INFORMATION
POBJECT_ATTRIBUTES
PPRIVILEGE_SET
PRTL_BITMAP
PRTL_BITMAP_RUN
PRTL_HEAP_DEFINITION
PRTL_USER_PROCESS_PARAMETERS
PSECURITY_DESCRIPTOR
PSECURITY_DESCRIPTOR_CONTROL
PSECURITY_QUALITY_OF_SERVICE
PSID
PSID *
PSID_IDENTIFIER_AUTHORITY
PSTRING
PSYSTEM_MODULE_INFORMATION
PRTL_QUERY_REGISTRY_TABLE
PRTL_THREAD_START_ROUTINE
PTIME_FIELDS
PTIMER_APC_ROUTINE
PTOKEN_GROUPS
PTOKEN_PRIVILEGES
PULARGE_INTEGER
PULONG
PUNICODE_STRING
PVECTORED_EXCEPTION_HANDLER
PVOID
PVOID *
PWSTR *
RTL_ATOM *
RTL_ATOM_TABLE
RTL_ATOM_TABLE *
RTL_CRITICAL_SECTION *
RTL_HANDLE *
RTL_HANDLE **
RTL_HANDLE_TABLE *
RTL_OSVERSIONINFOEXW *
RTL_USER_PROCESS_PARAMETERS *
RTL_USER_PROCESS_PARAMETERS **
SECURITY_DESCRIPTOR *
SIZE_T *
STRING *
TEB *
TIME_ZONE_INFORMATION *
UINT *
ULONG *
ULONGLONG *
USHORT *
UNICODE_STRING *
VOID *
WCHAR **
union cptable *
va_list *
void *
void **
wine_signal_handler

%ptr --extension

WCHAR *
char *
int *
obj_handle_t *

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR
PCWSTR
PWSTR

%%odbc32.dll

%long

SQLHANDLE
SQLHDBC
SQLHDESC
SQLHENV
SQLHSTMT
SQLHWND
SQLINTEGER
SQLRETURN
SQLSMALLINT
SQLUINTEGER
SQLUSMALLINT

%ptr

SQLCHAR *
SQLHANDLE *
SQLHDBC *
SQLHENV *
SQLHSTMT *
SQLINTEGER *
SQLPOINTER
SQLPOINTER *
SQLSMALLINT *
SQLUINTEGER *
SQLUSMALLINT *
WCHAR *

%%odbccp32.dll

%long

BOOL
DWORD
HWND
LONG
SQLRETURN
UWORD
WORD
int

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%ptr

DWORD *
LONG *
LPDWORD
UWORD *
WORD *

%%ole32.dll

%long

BOOL
CLIPFORMAT
DWORD
HACCEL
HANDLE
HGLOBAL
HICON
HINSTANCE
HMENU
HOLEMENU
HRESULT
HWND
INT
LONG
UINT
ULONG
int

%ptr

CLIPFORMAT *
CLSID *
COSERVERINFO *
DVTARGETDEVICE *
DWORD *
FILETIME *
FMTID *
GUID *
HGLOBAL *
HRESULT *
ICreateErrorInfo **
IDataObject *
IDataObject **
IDropSource *
IErrorInfo *
IErrorInfo **
ILockBytes *
IMoniker *
IMoniker **
IPersistStream *
IPropertySetStorage **
IStorage *
IStorage **
IStream *
IUnknown *
IUnknown **
LPBC
LPBC *
LPCLSID
LPCRECT
LPDATAADVISEHOLDER *
LPDATAOBJECT
LPDROPTARGET
LPDWORD
LPENUMFORMATETC *
LPENUMOLEVERB *
LPFORMATETC
LPLOCKBYTES *
LPMALLOC *
LPMALLOCSPY
LPMARSHAL *
LPMESSAGEFILTER
LPMESSAGEFILTER *
LPMONIKER
LPMONIKER *
LPMSG
LPOLEADVISEHOLDER *
LPOLECLIENTSITE
LPOLEINPLACEACTIVEOBJECT
LPOLEINPLACEFRAME
LPOLEINPLACEFRAMEINFO
LPOLEMENUGROUPWIDTHS
LPOLEOBJECT
LPOLESTR *
LPOLESTREAM
LPPERSISTSTORAGE
LPRUNNINGOBJECTTABLE *
LPSTORAGE
LPSTREAM
LPSTREAM *
LPUNKNOWN
LPUNKNOWN *
LPVOID
LPVOID *
MULTI_QI *
OLECHAR *
OLECHAR **
PROPVARIANT *
PSECURITY_DESCRIPTOR
REFCLSID
REFGUID
REFIID
SNB
SOLE_AUTHENTICATION_SERVICE *
STGMEDIUM *
STGOPTIONS *
ULONG *
WCHAR *
WORD *
void *
void **

%str

LPCOLESTR
LPOLESTR

%wstr

BSTR

%void

VOID
void

%%oleacc.dll

%long

DWORD
HRESULT
HWND
LONG
WPARAM

%ptr

LPUNKNOWN
REFIID
void **

%%oleaut32.dll

%float

float

%double

DATE
double

%long

BOOL
BYTE
CALLCONV
DISPID
DWORD
FLOAT
HCURSOR
HICON
HINSTANCE
HPALETTE
HRESULT
HWND
INT
LCID
LONG
OLE_COLOR
REGKIND
SHORT
SYSKIND
UINT
ULONG
USHORT
VARIANT_BOOL
VARTYPE
WORD
int
short
signed char
unsigned int
unsigned long

%longlong

CY
LONG64
ULONG64

%ptr

BSTR *
BYTE *
COLORREF *
CY *
DATE *
DECIMAL *
DISPID *
DISPPARAMS *
EXCEPINFO *
GUID *
ICreateTypeLib **
ICreateTypeLib2 **
IDispatch *
INTERFACEDATA *
IRecordInfo *
IRecordInfo **
ITypeInfo *
ITypeInfo **
ITypeLib *
ITypeLib **
IUnknown *
IUnknown **
LONG *
LONG64 *
LPBSTR
LPBYTE
LPCLSID
LPCUSTDATA
LPDWORD
LPFONTDESC
LPOCPFIPARAMS
LPPICTDESC
LPSTREAM
LPSYSTEMTIME
LPUNKNOWN
LPUNKNOWN *
LPVARIANT
LPVOID
LPVOID *
NUMPARSE *
OLECHAR *
OLECHAR **
REFCLSID
REFGUID
REFIID
SAFEARRAY *
SAFEARRAY **
SAFEARRAYBOUND *
SHORT *
UDATE *
UINT *
ULONG *
ULONG64 *
USHORT *
VARIANT *
VARIANTARG *
VARIANTARG **
VARIANT_BOOL *
VARTYPE *
VOID *
double *
float *
int *
signed char *
void *
void **
unsigned char *
unsigned long *


%str

LPCOLESTR
LPCSTR
LPOLESTR

%void

void

%wstr

BSTR

%%olecli32.dll

%long

BOOL
HDC
LHCLIENTDOC
LONG
OLECLIPFORMAT
OLEOPT_RENDER
OLESTATUS

%ptr

_LPOLEOBJECT
_LPOLEOBJECT *
LHCLIENTDOC *
LONG *
LPOLECLIENT

%str

LPCSTR

%%oledlg.dll

%long

BOOL
HMENU
HWND
INT
UINT
WORD

%ptr

HMENU *
LPOLEOBJECT
LPOLEUIBUSYA
LPOLEUIBUSYW
LPOLEUICHANGEICONA
LPOLEUICHANGEICONW
LPOLEUICHANGESOURCEA
LPOLEUICHANGESOURCEW
LPOLEUICONVERTA
LPOLEUICONVERTW
LPOLEUIEDITLINKSA
LPOLEUIEDITLINKSW
LPOLEUIINSERTOBJECTA
LPOLEUIINSERTOBJECTW
LPOLEUILINKCONTAINERA
LPOLEUILINKCONTAINERW
LPOLEUIOBJECTPROPSA
LPOLEUIOBJECTPROPSW
LPOLEUIPASTESPECIALA
LPOLEUIPASTESPECIALW
REFCLSID

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%olepro32.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%olesvr32.dll

%long

HINSTANCE
LHSERVER
LHSERVERDOC
OLESTATUS
OLE_SERVER_USE

%ptr

BOOL *
LHSERVER *
LHSERVERDOC *
LPOLESERVER
LPOLESERVERDOC

%str

LPCSTR

%%opengl32.dll

%double

GLclampd
GLdouble

%long

BOOL
DWORD
FLOAT
GLbitfield
GLboolean
GLbyte
GLclampf
GLenum
GLfloat
GLint
GLshort
GLsizei
GLubyte
GLuint
GLushort
HDC
HGLRC
UINT
int

%ptr

COLORREF *
GLboolean *
GLbyte *
GLclampf *
GLdouble *
GLfloat *
GLint *
GLshort *
GLubyte *
GLuint *
GLushort *
GLvoid *
GLvoid **
LPGLYPHMETRICSFLOAT
LPLAYERPLANEDESCRIPTOR
void *

%str

LPCSTR

%void

void

%%powrprof.dll

%long

BOOLEAN
LPARAM
NTSTATUS
POWER_INFORMATION_LEVEL
UINT
ULONG

%ptr

PADMINISTRATOR_POWER_POLICY
PGLOBAL_POWER_POLICY
PMACHINE_PROCESSOR_POWER_POLICY
PPOWER_POLICY
PSYSTEM_POWER_CAPABILITIES
PUINT
PVOID
PWRSCHEMESENUMPROC

%wstr

LPWSTR

%%psapi.dll

%long

BOOL
DWORD
HANDLE
HMODULE

%ptr

DWORD *
HMODULE *
LPDWORD
LPMODULEINFO
LPVOID
LPVOID *
PENUM_PAGE_FILE_CALLBACKA
PENUM_PAGE_FILE_CALLBACKW
PPERFORMANCE_INFORMATION
PPROCESS_MEMORY_COUNTERS
PPSAPI_WS_WATCH_INFORMATION

%str

LPSTR

%wstr

LPWSTR

%%qcap.dll

%long

HRESULT

%ptr

REFCLSID
REFIID
LPVOID *

%%quartz.dll

%long

HRESULT
LONG

%ptr

REFCLSID
REFIID
LPVOID *

%%rasapi32.dll

%long

BOOL
DWORD
HANDLE
HRASCONN
HWND
RASPROJECTION
UINT

%ptr

LPBOOL
LPBYTE
LPCSTR *
LPCWSTR *
LPDWORD
LPHRASCONN
LPRASAUTODIALENTRYA
LPRASAUTODIALENTRYW
LPRASCONNA
LPRASCONNW
LPRASCONNSTATUSA
LPRASCONNSTATUSW
LPRASDEVINFOA
LPRASDEVINFOW
LPRASDIALEXTENSIONS
LPRASDIALPARAMSA
LPRASDIALPARAMSW
LPRASENTRYA
LPRASENTRYW
LPRASENTRYNAMEA
LPRASENTRYNAMEW
LPRASSUBENTRYA
LPRASSUBENTRYW
LPVOID

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%riched20.dll

%long

HRESULT
HWND
LPARAM
LRESULT
UINT
WPARAM

%ptr

IUnknown *
IUnknown **
void *

%void

void

%%riched32.dll

%long

HRESULT

%ptr

DLLVERSIONINFO *

%%rpcrt4.dll

%long

DWORD
HMODULE
HRESULT
HWND
RPC_BINDING_HANDLE
RPC_IF_HANDLE
RPC_STATUS
UINT
ULONG
int
long
size_t
unsigned char
unsigned int
unsigned long
unsigned short

%long --pointer

LONG_PTR

%ptr

CLSID *
CStdPSFactoryBuffer *
LPPSFACTORYBUFFER
LPRPCCHANNELBUFFER
LPRPCPROXYBUFFER *
LPRPCSTUBBUFFER
LPTYPEINFO
LPUNKNOWN
LPVOID
LPVOID *
LPWSTR *
MIDL_STUB_MESSAGE *
PFORMAT_STRING
PMIDL_STUB_DESC
PMIDL_STUB_MESSAGE
PRPC_MESSAGE
PRPC_POLICY
PRPCOLEMESSAGE
ProxyFileInfo **
REFCLSID
REFIID
RPC_AUTH_KEY_RETRIEVAL_FN
RPC_BINDING_HANDLE *
RPC_BINDING_VECTOR *
RPC_BINDING_VECTOR **
RPC_BLOCKING_FN
RPC_IF_CALLBACK_FN *
RPC_MGR_EPV *
RPC_STATUS *
UUID *
UUID_VECTOR *
unsigned char *
unsigned char **
unsigned short *
unsigned short **
void *

%wstr

LPWSTR

%void

void

%%rsaenh.dll

%long

ALG_ID
BOOL
DWORD
HCRYPTHASH
HCRYPTKEY
HCRYPTPROV
HRESULT

%ptr

BYTE *
DWORD *
HCRYPTHASH *
HCRYPTKEY *
HCRYPTPROV *
PVTableProvStruc

%str

LPSTR

%wstr

LPCWSTR

%%secur32.dll

%long

BOOLEAN
EXTENDED_NAME_FORMAT
SECURITY_STATUS
ULONG
unsigned long

%ptr

HANDLE *
PCredHandle
PCtxtHandle
PLUID
PSecBuffer
PSecBufferDesc
PSecPkgInfoA *
PSecPkgInfoW *
PSecurityFunctionTableA
PSecurityFunctionTableW
PTimeStamp
PULONG
PVOID
SEC_CHAR *
SEC_GET_KEY_FN
SEC_WCHAR *
unsigned long *
void *
void **

%str

LPSTR

%wstr

LPWSTR

%%sensapi.dll

%long

BOOL

%ptr

LPDWORD
LPQOCINFO

%str

LPCSTR

%wstr

LPCWSTR

%%serialui.dll

%long

BOOL
DWORD
HWND
LPARAM

%ptr

LPCOMMCONFIG
LPDEVICE_INFO
LPDWORD
LPFNADDPROPSHEETPAGE

%str

LPCSTR

%wstr

LPCWSTR

%%setupapi.dll

%long

BOOL
DI_FUNCTION
DWORD
HANDLE
HDEVINFO
HDSKSPC
HINF
HINSTANCE
HKEY
HSPFILEQ
HWND
INT
LONG
REGSAM
UINT

%long --pointer

UINT_PTR

%ptr

BYTE *
GUID *
INFCONTEXT *
LONGLONG *
LPBYTE *
LPCVOID
LPDWORD
LPGUID
LPHANDLE
LPVOID
LPVOID *
LPWIN32_FIND_DATAW
LPWSTR *
PBYTE
PDWORD
PINFCONTEXT
PINT
PSECURITY_DESCRIPTOR
PSECURITY_DESCRIPTOR *
PSP_CLASSINSTALL_HEADER
PSP_DEVICE_INTERFACE_DATA
PSP_DEVICE_INTERFACE_DETAIL_DATA_A
PSP_DEVICE_INTERFACE_DETAIL_DATA_W
PSP_DEVINFO_DATA
PSP_DEVINFO_LIST_DETAIL_DATA_A
PSP_DEVINFO_LIST_DETAIL_DATA_W
PSP_DEVINSTALL_PARAMS_A
PSP_FILE_CALLBACK_A
PSP_FILE_CALLBACK_W
PSP_FILE_COPY_PARAMS_A
PSP_FILE_COPY_PARAMS_W
PSP_INF_INFORMATION
PSTR *
PUINT
PVOID
PWSTR *
UINT *
void *

%str

LPCSTR
LPSTR
PCSTR
PSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR
PCWSTR
PWSTR

%%shdocvw.dll

%long

BOOL
DWORD
HINSTANCE
HRESULT
HWND
int

%ptr

DLLVERSIONINFO *
LPVOID *
REFCLSID
REFIID

%str

LPCSTR

%void

void

%wstr

LPCWSTR

%%shell32.dll

%long

BOOL
COLORREF
DWORD
HANDLE
HBITMAP
HDROP
HICON
HIMAGELIST
HINSTANCE
HKEY
HMENU
HMODULE
HRESULT
HWND
INT
LONG
LPARAM
LRESULT
RESTRICTIONS
UINT
ULONG
WORD
WPARAM
int

%longlong

POINT

%ptr

AUTO_SCROLL_DATA *
BOOL *
CABINETSTATE *
CLSID *
DLLVERSIONINFO *
DWORD *
FARPROC
FORMATETC *
HICON *
HIMAGELIST *
HWND *
IShellFolder *
IShellFolder **
IShellView **
IStream *
ITEMIDLIST *
LPBROWSEINFOA
LPBROWSEINFOW
LPBYTE
LPCITEMIDLIST
LPCITEMIDLIST *
LPCRECT
LPCSFV
LPCVOID
LPCVOID *
LPDATAOBJECT
LPDATAOBJECT *
LPDRAWITEMSTRUCT
LPDROPSOURCE
LPDROPTARGET
LPDWORD
LPENUMFORMATETC *
LPFNCREATEINSTANCE
LPFNFMCALLBACK
LPITEMIDLIST
LPITEMIDLIST *
LPITEMIDLIST **
LPLONG
LPMALLOC *
LPMEASUREITEMSTRUCT
LPPOINT
LPSECURITY_ATTRIBUTES
LPSHELLEXECUTEINFOA
LPSHELLEXECUTEINFOW
LPSHELLFLAGSTATE
LPSHELLFOLDER
LPSHELLSTATE
LPSHFILEOPSTRUCTA
LPSHFILEOPSTRUCTW
LPSHQUERYRBINFO
LPSTRRET
LPTPMPARAMS
LPUNKNOWN
LPUNKNOWN *
LPVOID
LPVOID *
LPWORD
LPWSTR *
PAPPBARDATA
PHKEY
PNOTIFYICONDATAA
PNOTIFYICONDATAW
POINT *
REFCLSID
REFIID
SHChangeNotifyEntry *
SHFILEINFOA *
SHFILEINFOW *
int *

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%shlwapi.dll

%long

ASSOCF
ASSOCKEY
ASSOCSTR
BOOL
COLORREF
DISPID
DWORD
HANDLE
HDC
HDROP
HICON
HINSTANCE
HKEY
HMENU
HMODULE
HPALETTE
HRESULT
HUSKEY
HWND
INT
LANGID
LONG
LPARAM
LRESULT
REGSAM
SHREGDEL_FLAGS
SHREGENUM_FLAGS
UCHAR
UINT
ULONG
URLIS
WCHAR
WORD
WPARAM
char
int

%long --pointer

INT_PTR

%longlong

LONGLONG

%ptr

BOOL *
BSTR *
CLSID *
DLGPROC
DLLVERSIONINFO *
DWORD *
HICON *
HKEY *
HWND *
IBindCtx *
IConnectionPoint *
IConnectionPoint **
IDataObject *
IDispatch **
IDropTarget *
IFACE_INDEX_TBL *
IID *
INT *
IPropertyBag *
IShellFolder *
IStream *
IStream **
ITEMIDLIST *
IUnknown *
IUnknown **
LPBC
LPBROWSEINFOW
LPBYTE
LPCITEMIDLIST
LPCRECT
LPCSHLWAPI_CLIST
LPCSTR *
LPCVOID
LPCWSTR *
LPDWORD
LPINT
LPITEMIDLIST
LPMSG
LPOPENFILENAMEW
LPPAGESETUPDLGW
LPPOLICYDATA
LPPRINTDLGW
LPSECURITY_ATTRIBUTES
LPSHELLEXECUTEINFOW
LPSHELLFOLDER
LPSHFILEOPSTRUCTW
LPSHLWAPI_CLIST
LPSHLWAPI_CLIST *
LPSTR *
LPSTRRET
LPTHREAD_START_ROUTINE
LPUNKNOWN
LPVOID
LPVOID *
LPWORD
LPWSTR *
OLECMD *
OLECMDTEXT *
PARSEDURLA *
PARSEDURLW *
PHKEY
PHUSKEY
PLONG
PPOINTL
PSECURITY_DESCRIPTOR
PVOID
PVOID *
RECT *
REFCLSID
REFGUID
REFIID
SHFILEINFOW *
STRRET *
UINT *
ULARGE_INTEGER *
VARIANT *
VOID *
WNDCLASSA *
int *
unsigned char *
va_list
void **

%ptr --extension

WNDCLASSW *

%str

LPCSTR
LPSTR

%struct16

CLSID

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%sti.dll

%long

DWORD
HINSTANCE
HRESULT

%ptr

LPVOID

%%tapi32.dll

%long

DWORD
HCALL
HINSTANCE
HLINE
HLINEAPP
HPHONE
HPHONEAPP
HWND

%ptr

HICON *
LINECALLBACK
LPDWORD
LPHCALL
LPHLINE
LPHLINEAPP
LPHPHONE
LPHPHONEAPP
LPLINEADDRESSCAPS
LPLINEADDRESSSTATUS
LPLINECALLINFO
LPLINECALLLIST
LPLINECALLPARAMS
LPLINECALLSTATUS
LPLINECOUNTRYLIST
LPLINEDEVCAPS
LPLINEDEVSTATUS
LPLINEDIALPARAMS
LPLINEEXTENSIONID
LPLINEFORWARDLIST
LPLINEGENERATETONE
LPLINEMEDIACONTROLCALLSTATE
LPLINEMEDIACONTROLDIGIT
LPLINEMEDIACONTROLMEDIA
LPLINEMEDIACONTROLTONE
LPLINEMONITORTONE
LPLINEPROVIDERLIST
LPLINETRANSLATECAPS
LPLINETRANSLATEOUTPUT
LPPHONEBUTTONINFO
LPPHONECAPS
LPPHONEEXTENSIONID
LPPHONESTATUS
LPVARSTRING
LPVOID
PHONECALLBACK

%str

LPCSTR
LPSTR

%%twain_32.dll

%long

TW_UINT16
TW_UINT32

%ptr

TW_MEMREF
pTW_IDENTITY

%%urlmon.dll

%long

BOOL
DWORD
HRESULT
HWND
QUERYOPTION

%ptr

BINDINFO *
DWORD *
IBindCtx *
IBindCtx **
IBindStatusCallback *
IBindStatusCallback **
IEnumFORMATETC *
IInternetSecurityManager **
IInternetSession **
IInternetZoneManager **
IMoniker *
IMoniker **
IServiceProvider *
IUnknown *
LPBC
LPBINDCTX
LPBINDSTATUSCALLBACK
LPSOFTDISTINFO
LPWSTR *
LPUNKNOWN
LPVOID
LPVOID *
QUERYCONTEXT *
REFCLSID
REFIID
uCLSSPEC *

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR
LPWSTR

%%user32.dll

%long

ACCESS_MASK
ATOM
BOOL
BYTE
CHAR
COLORREF
GUITHREADINFO *
DWORD
HACCEL
HANDLE
HBITMAP
HBRUSH
HCONV
HCONVLIST
HCURSOR
HDC
HDDEDATA
HDESK
HDEVNOTIFY
HDWP
HFONT
HHOOK
HICON
HINSTANCE
HKL
HMENU
HMODULE
HMONITOR
HRESULT
HRGN
HSZ
HTASK
HWINEVENTHOOK
HWINSTA
HWND
INT
LONG
LPARAM
LRESULT
SHORT
UINT
ULONG
WCHAR
WORD
WPARAM
int

%long --pointer

INT_PTR
UINT_PTR
ULONG_PTR

%long --extension

HANDLE16
HDRVR16
HGLOBAL16
HINSTANCE16
HMODULE16
HWND16
INT16
UINT16
WPARAM16

%longlong

POINT

%ptr

BOOL *
COLORREF *
DLGPROC
DESKTOPENUMPROCA
DESKTOPENUMPROCW
DRAWSTATEPROC
DWORD *
GRAYSTRINGPROC
HANDLE *
HBRUSH *
HICON *
HKL *
HOOKPROC
HWND *
INT *
LPACCEL
LPBYTE
LPCDLGTEMPLATEA
LPCDLGTEMPLATEW
LPCMENUINFO
LPCVOID
LPDEVMODEA
LPDEVMODEW
LPDISPLAY_DEVICEA
LPDISPLAY_DEVICEW
LPDRAWTEXTPARAMS
LPDWORD
LPINPUT
LPINT
LPMENUINFO
LPMENUITEMINFOA
LPMENUITEMINFOW
LPMONITORINFO
LPMSG
LPMSGBOXPARAMSA
LPMSGBOXPARAMSW
LPPOINT
LPRECT
LPSCROLLBARINFO
LPSCROLLINFO
LPSECURITY_ATTRIBUTES
LPTPMPARAMS
LPVOID
LPWORD
MENUITEMINFOA *
MENUITEMINFOW *
MONITORENUMPROC
MSG *
PAINTSTRUCT *
PALTTABINFO
PCOMBOBOXINFO
PCONVCONTEXT
PCONVINFO
PCURSORINFO
PDWORD_PTR
PFLASHWINFO
PFNCALLBACK
PICONINFO
PLASTINPUTINFO
POINT *
PROPENUMPROCA
PROPENUMPROCEXA
PROPENUMPROCEXW
PROPENUMPROCW
PSECURITY_DESCRIPTOR
PSECURITY_INFORMATION
PSECURITY_QUALITY_OF_SERVICE
PTITLEBARINFO
PUINT_PTR
PVOID
PWINDOWINFO
RECT *
SCROLLINFO *
SECURITY_QUALITY_OF_SERVICE *
SENDASYNCPROC
TIMERPROC
TRACKMOUSEEVENT *
UINT *
WINDOWPLACEMENT *
WINEVENTPROC
WINSTAENUMPROCA
WINSTAENUMPROCW
WNDCLASSA *
WNDCLASSEXA *
WNDCLASSEXW *
WNDCLASSW *
WNDENUMPROC
WNDPROC
va_list

%ptr --extension

DLGPROC16
WND *
WNDPROC16

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%uxtheme.dll

%long

BOOL
COLORREF
DWORD
HBRUSH
HDC
HIMAGELIST
HRESULT
HRGN
HTHEME
HTHEMEFILE
HWND
THEMESIZE
UINT
int

%longlong

POINT 

%ptr

BOOL *
COLORREF *
DTBGOPTS *
EnumThemeProc
HRGN *
HTHEMEFILE *
INTLIST *
LOGFONTW *
LPVOID
MARGINS *
POINT *
PROPERTYORIGIN *
ParseThemeIniFileProc
RECT *
SIZE *
TEXTMETRICW *
WORD *
char *
int *

%void

void

%wstr

LPCWSTR
LPWSTR

%%vdhcp.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%version.dll

%long

BOOL
DWORD
UINT

%ptr

LPDWORD
LPVOID
LPVOID *
UINT *

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%vmm.vxd

%long

DWORD

%%vnbt.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%vnetbios.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%vtdapi.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%vwin32.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%w32skrnl.dll

%long

HTASK16

%str

LPSTR

%%winealsa.drv

%long

DWORD
HDRVR
LONG
UINT
WORD

%%winearts.drv

%long

DWORD
HDRVR
LONG
UINT
WORD

%%wineaudioio.drv

%long

DWORD
HDRVR
LONG
UINT
WORD

%%wined3d.dll

%long

UINT

%ptr

IUnknown *
IWineD3D *

%%winedos.dll

%long

BOOL
BYTE
DWORD
UINT
WORD
int

%ptr

LPVOID
UINT16 *
void *

%str

LPCSTR

%void

void

%%winejack.drv

%long

DWORD
HDRVR
LONG
UINT
WORD

%%winemp3.acm

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT

%%winenas.drv

%long

DWORD
HDRVR
LONG
WORD
UINT

%%wineoss.drv

%long

DWORD
HDRVR
LONG
UINT
WORD

%%wineps.drv

%long

BOOL
COLORREF
DWORD
HANDLE
HBITMAP
HBRUSH
HDC
HFONT
HPEN
HRGN
HWND
INT
LPARAM
UINT
WORD

%ptr

BITMAPINFO *
DEVMODEW *
DOCINFOW *
DWORD *
FONTENUMPROCW
INT *
LPCVOID
LPDEVMODEA
LPINT
LPLOGFONTW
LPSIZE
LPVOID
POINT *
PSDRV_PDEVICE *
PSDRV_PDEVICE **
RECT *
TEXTMETRICW *
void *

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR

%%winetty.drv

%long

BOOL
COLORREF
DWORD
HANDLE
HBITMAP
HDC
HFONT
HKL
HRGN
HWND
INT
LONG
SHORT
UINT
WCHAR
int

%ptr

BITMAPINFO *
CREATESTRUCTA *
DEVMODEW *
DWORD *
INT *
LPBYTE
LPCVOID
LPINT
LPPALETTEENTRY
LPPOINT
LPSIZE
LPTEXTMETRICW
LPVOID
POINT *
RECT *
TTYDRV_PDEVICE *
TTYDRV_PDEVICE **
WINDOWPOS *
struct tagCURSORICONINFO *
void *

%str

LPCSTR

%void

void

%wstr

LPCWSTR
LPWSTR

%%winex11.drv

%long

BOOL
COLORREF
DWORD
HANDLE
HANDLE16
HBITMAP
HBRUSH
HDC
HFONT
HICON
HKL
HPALETTE
HPEN
HRGN
HWND
INT
LONG
LPARAM
LRESULT
SHORT
UINT
WCHAR
WPARAM
int

%ptr

BITMAPINFO *
BLENDFUNCTION
CREATESTRUCTA *
CURSORICONINFO *
DEVMODEW *
DWORD *
FONTENUMPROCW
HANDLE *
HANDLE16 *
HKL *
INT *
LPBYTE
LPCVOID
LPDEVMODEW
LPINPUT
LPINT
LPLOGFONTW
LPPALETTEENTRY
LPPOINT
LPRECT
LPSIZE
LPVOID
LPWTPACKET *
PIXELFORMATDESCRIPTOR *
POINT *
RECT *
RGBQUAD *
TEXTMETRICW *
WINDOWPOS *
X11DRV_PDEVICE *
X11DRV_PDEVICE **
void *

%void

void

%wstr

LPCWSTR
LPWSTR

%%wininet.dll

%double

GROUPID

%long

BOOL
DWORD
HANDLE
HINSTANCE
HINTERNET
HRESULT
HWND
INTERNET_PORT
LONG
int
unsigned long

%long --pointer

DWORD_PTR

%longlong

FILETIME

%ptr

GROUPID *
GOPHER_ATTRIBUTE_ENUMERATORA
GOPHER_ATTRIBUTE_ENUMERATORW
HANDLE *
HINTERNET *
INTERNET_STATUS_CALLBACK
LPBYTE
LPCSTR *
LPCVOID
LPCWSTR *
LPDWORD
LPGOPHER_FIND_DATAA
LPGOPHER_FIND_DATAW
LPINTERNET_BUFFERSA
LPINTERNET_BUFFERSW
LPINTERNET_CACHE_ENTRY_INFOA
LPINTERNET_CACHE_ENTRY_INFOW
LPINTERNET_CACHE_GROUP_INFOA
LPINTERNET_CACHE_GROUP_INFOW
LPURL_COMPONENTSA
LPURL_COMPONENTSW
LPVOID
LPVOID *
LPWIN32_FIND_DATAA
LPWIN32_FIND_DATAW
PBYTE
PVOID
SYSTEMTIME *
unsigned long *

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR
PWSTR

%void

void

%%winmm.dll

%long

BOOL
DWORD
FOURCC
HANDLE
HDRVR
HINSTANCE
HMIDIIN
HMIDIOUT
HMIDISTRM
HMIXER
HMIXEROBJ
HMMIO
HMODULE
HTASK
HWAVEIN
HWAVEOUT
HWND
INT
LONG
LPARAM
LRESULT
MCIERROR
MCIDEVICEID
MMRESULT
UINT

%long --pointer

DWORD_PTR
UINT_PTR

%long --forbidden

HMMIO16
UINT16

%ptr

DWORD *
HANDLE *
HMIDIIN *
HMIDISTRM *
HPCSTR
HPSTR
HWAVEIN *
LPAUXCAPSA
LPAUXCAPSW
LPBYTE
LPCWAVEFORMATEX
LPDWORD
LPHMIXER
LPJOYCAPSA
LPJOYCAPSW
LPJOYINFO
LPJOYINFOEX
LPMIDIHDR
LPMIDIINCAPSA
LPMIDIINCAPSW
LPHMIDIOUT
LPMIDIOUTCAPSA
LPMIDIOUTCAPSW
LPMIXERCAPSA
LPMIXERCAPSW
LPMIXERCONTROLDETAILS
LPMIXERLINEA
LPMIXERLINECONTROLSA
LPMIXERLINECONTROLSW
LPMIXERLINEW
LPMMCKINFO
LPMMIOPROC
LPMMTIME
LPTIMECALLBACK
LPTIMECAPS
LPUINT
LPTASKCALLBACK
LPWAVEHDR
LPWAVEINCAPSA
LPWAVEINCAPSW
LPHWAVEOUT
LPWAVEOUTCAPSA
LPWAVEOUTCAPSW
MIDIHDR *
MMCKINFO *
MMIOINFO *
UINT *
WAVEHDR *
WORD *
YIELDPROC

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%void

void

%%winnls32.dll

%long

BOOL
HWND

%%winspool.drv

%long

BOOL
DWORD
HANDLE
HWND
INT
LONG
WORD

%ptr

DEVMODEW *
HANDLE *
LPBYTE
LPDEVMODEA
LPDEVMODEW
LPDWORD
LPPRINTER_DEFAULTSA
LPPRINTER_DEFAULTSW
LPVOID
LPVOID *
PBYTE
PDWORD
PDEVMODEA
PDEVMODEW
PPRINTER_NOTIFY_INFO

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%wintab32.dll

%long

BOOL
DWORD
LPARAM
LRESULT
HCTX
HMGR
HWND
HWTHOOK
UINT
WPARAM
int

%ptr

LPBYTE
LPINT
LPLOGCONTEXTA
LPLOGCONTEXTW
LPVOID
UINT *
WTENUMPROC

%str

LPSTR

%wstr

LPWSTR

%%wintrust.dll

%long

BOOL
DWORD
HANDLE
HCATADMIN
HWND
LONG

%ptr

BYTE *
CRYPT_REGISTER_ACTIONID *
DWORD *
GUID *
HCATADMIN *
WINTRUST_DATA *

%void

void

%%wnaspi32.dll

%long

BOOL
DWORD

%ptr

LPDWORD
LPSRB
PASPI32BUFF

%%ws2_32.dll

%long

BOOL
DWORD
GROUP
HANDLE
HWND
INT
SOCKET
UINT
WORD
WSAESETSERVICEOP
WSAEVENT
int
long
u_long
u_short

%ptr

FARPROC
INT *
LPCONDITIONPROC
LPDWORD
LPGUID
LPHANDLE
LPINT
LPQOS
LPSOCKADDR
LPVOID
LPWPUPOSTMESSAGE
LPWSABUF
LPWSADATA
LPWSANAMESPACE_INFOA
LPWSANAMESPACE_INFOW
LPWSANETWORKEVENTS
LPWSAOVERLAPPED
LPWSAOVERLAPPED_COMPLETION_ROUTINE
LPWSAPROTOCOL_INFOA
LPWSAPROTOCOL_INFOW
LPWSASERVICECLASSINFOA
LPWSASERVICECLASSINFOW
LPWSAQUERYSETA
LPWSAQUERYSETW
WS_fd_set *
char *
int *
struct WS_hostent *
struct WS_protoent *
struct WS_servent *
struct WS_sockaddr *
struct WS_timeval *
u_long *
u_short *

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%unknown

struct WS_in_addr

%void

void

%%wsock32.dll

%long

DWORD
INT
SOCKET
UINT

%ptr

INT *
LPDWORD
LPGUID
LPSERVICE_ASYNC_INFO
LPSERVICE_INFOA
LPSERVICE_INFOW
LPVOID
char *
struct netent *

%str

LPCSTR
LPSTR

%void

void

%wstr

LPWSTR

%%wtsapi32.dll

%long

BOOL
DWORD
HANDLE
WTS_INFO_CLASS

%ptr

DWORD *
LPSTR *
LPWSTR *
PVOID
PWTS_PROCESS_INFOA *
PWTS_PROCESS_INFOW *
PWTS_SESSION_INFOA *
PWTS_SESSION_INFOW *

%void

void
