%%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
TRUSTEE_FORM
TRUSTEE_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_ACCESS_A
PEXPLICIT_ACCESSW
PEXPLICIT_ACCESSW *
PEXPLICIT_ACCESS_W
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
PTRUSTEE_A
PTRUSTEEW
PTRUSTEE_W
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
PCABINFO
PDWORD
PVOID
SETUPCOMMAND_PARAMS *

%str

LPCSTR
LPSTR
PCSTR
PSTR

%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
LONG

%ptr

BYTE *
CRYPTPROTECT_PROMPTSTRUCT *
DATA_BLOB *
DWORD *
GUID *
LPFILETIME
LPWSTR *
PCCERT_CONTEXT
PCCRL_CONTEXT
PCCRL_CONTEXT *
PCERT_EXTENSION
PCERT_INFO
PCERT_NAME_INFO
PCERT_RDN_ATTR
PCRYPT_ATTRIBUTE
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 *
LONG *
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
LPTEXTMETRICW
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.dll

%long

DWORD
HDRVR
LONG

%%mciseq.drv

%long

DWORD
HDRVR
LONG

%%mciwave.drv

%long

DWORD
HDRVR
LONG

%%midimap.dll

%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

LPSTR

%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
LMSTR
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 *
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_TIME_ZONE_INFORMATION *
RTL_USER_PROCESS_PARAMETERS *
RTL_USER_PROCESS_PARAMETERS **
SECURITY_DESCRIPTOR *
SIZE_T *
STRING *
TEB *
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
LPDWORD
LPHRASCONN
LPRASAUTODIALENTRYA
LPRASAUTODIALENTRYW
LPRASCONNA
LPRASCONNW
LPRASCONNSTATUSA
LPRASCONNSTATUSW
LPRASDEVINFOA
LPRASDEVINFOW
LPRASDIALEXTENSIONS
LPRASDIALPARAMSA
LPRASDIALPARAMSW
LPRASENTRYA
LPRASENTRYW
LPRASENTRYNAMEA
LPRASENTRYNAMEW
LPRASSUBENTRYA
LPRASSUBENTRYW
LPSTR *
LPWSTR *
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 *
NDR_CCONTEXT
NDR_CCONTEXT *
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
HANDLE
NTSTATUS
SECURITY_STATUS
ULONG
unsigned long

%ptr

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

%str

LPSTR
LPCSTR

%wstr

LPWSTR
LPCWSTR

%%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_ALTPLATFORM_INFO
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 *
HANDLE *
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
PMENUBARINFO
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
HRGN
HWND
INT
LONG
UINT

%ptr

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

%wstr

LPCWSTR

%%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

%%wldap32.dll

%long

INT
ULONG

%ptr

BerElement *
BERVAL *
PBERVAL *
CHAR *
CHAR **
PCHAR
ULONG *
struct l_timeval *

%wstr

PWCHAR

%void

void

%%wnaspi32.dll

%long

BOOL
DWORD

%ptr

LPDWORD
LPSRB
PASPI32BUFF

%%wow32.dll

%long

BOOL
DWORD
HANDLE
WORD
WOW_HANDLE_TYPE

%ptr

LPLDT_ENTRY
LPVOID
PDWORD
PVOID
WORD *

%void

void

%%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
LPINT
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
