%%activeds.dll

%long

BOOL
DWORD
HRESULT
ULONG

%ptr

IADsContainer *
IEnumVARIANT *
IEnumVARIANT **
LPVOID
REFIID
ULONG *
VARIANT *
VOID **

%wstr

LPCWSTR

%%advapi32.dll

%long

ACCESS_MASK
ACCESS_MODE
ACL_INFORMATION_CLASS
ALG_ID
BOOL
BOOLEAN
BYTE
DWORD
HANDLE
HCRYPTHASH
HCRYPTKEY
HCRYPTPROV
HKEY
INT
LSA_HANDLE
LSTATUS
NTSTATUS
POLICY_INFORMATION_CLASS
POLICY_NOTIFICATION_INFORMATION_CLASS
REGSAM
SC_ENUM_TYPE
SC_HANDLE
SC_STATUS_TYPE
SE_OBJECT_TYPE
SECURITY_DESCRIPTOR_CONTROL
SECURITY_IMPERSONATION_LEVEL
SECURITY_INFORMATION
SERVICE_STATUS_HANDLE
TOKEN_INFORMATION_CLASS
TOKEN_TYPE
TRUSTED_INFORMATION_CLASS
TRUSTEE_FORM
TRUSTEE_TYPE
UINT
ULONG
WELL_KNOWN_SID_TYPE
WORD
unsigned int

%long --pointer

ULONG_PTR

%ptr

BYTE *
DWORD *
FILETIME *
GUID *
HANDLE *
HCRYPTHASH *
HCRYPTKEY *
HCRYPTPROV *
LPBOOL
LPBYTE
LPCGUID
LPCSTR *
LPCVOID
LPCWSTR *
LPDWORD
LPENUM_SERVICE_STATUSA
LPENUM_SERVICE_STATUSW
LPHANDLER_FUNCTION
LPHANDLER_FUNCTION_EX
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
LPSTARTUPINFOA
LPSTARTUPINFOW
LPSTR *
LPVOID
LPVOID *
LPWSTR *
MD4_CTX *
MD5_CTX *
PACCESS_MASK
PACL
PACL *
PACTRL_ACCESSW *
PACTRL_AUDITW *
PBOOL
PCREDENTIALA **
PCREDENTIALW **
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_TRANSLATED_SID2 *
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
PTOKEN_PRIVILEGES
PTRACE_GUID_REGISTRATION
PTRACEHANDLE
PTRUSTED_DOMAIN_AUTH_INFORMATION
PTRUSTED_DOMAIN_INFORMATION_EX
PTRUSTEEA
PTRUSTEEW
PUCHAR
PULONG
PVALENTA
PVALENTW
PVOID
PVOID *
SC_LOCK
SECURITY_ATTRIBUTES *
SERVICE_TABLE_ENTRYA *
SERVICE_TABLE_ENTRYW *
UNICODE_STRING *
WMIDPREQUEST
struct ustring *
unsigned char *

%str

LPCSTR
LPSTR

%void

VOID

%wstr

LPCWSTR
LPWSTR
WCHAR *

%%advpack.dll

%long

BOOL
DWORD
HINSTANCE
HKEY
HINF
HMODULE
HRESULT
HWND
INT

%ptr

CABINFOA *
CABINFOW *
HANDLE *
HINF *
LPDWORD
LPVOID
PDWORD
PERUSERSECTIONA *
PERUSERSECTIONW *
PVOID
SETUPCOMMAND_PARAMS *
STRTABLEA *
STRTABLEW *

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%amstream.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%atl.dll

%long

ATOM
BOOL
DWORD
HINSTANCE
HRESULT
HWND
LPARAM

%long --pointer

DWORD_PTR

%ptr

_ATL_INTMAP_ENTRY *
_ATL_MODULEW *
_ATL_OBJMAP_ENTRYW *
_ATL_TERMFUNC *
_ATL_WNDCLASSINFOW *
_AtlCreateWndData *
ATL_PROPMAP_ENTRY *
BSTR *
CLSID *
DLGPROC
IID *
IRegistrar *
IStream *
IStream **
ITypeLib **
IUnknown *
IUnknown **
LPDWORD
LPSTREAM
LPVOID *
REFCLSID
REFIID
SIZEL *
WNDPROC *
struct _ATL_REGMAP_ENTRY *
void *
void **

%str

LPCOLESTR
LPCSTR

%wstr

LPCWSTR

%void

void

%%avicap32.dll

%long

BOOL
DWORD
HWND
INT
WORD

%str

LPCSTR
LPSTR

%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
REFCLSID
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 *
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
SESSION *
void *

%str

LPCSTR
char *

%%capi2032.dll

%long

DWORD

%ptr

DWORD *
PVOID
PVOID *

%str

char *

%%cards.dll

%long

BOOL
DWORD
HDC
int

%ptr

int *

%void

void

%%cfgmgr32.dll

%long

CONFIGRET
ULONG

%ptr

LPVOID
ULONG *

%str

PCHAR
PCSTR

%%clusapi.dll

%long

DWORD

%ptr

LPDWORD

%wstr

LPCWSTR

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

%longlong

POINT

%ptr

CREATEMRULISTA *
CREATEMRULISTW *
DLLVERSIONINFO *
DPALOADPROC
DWORD_PTR *
HDPA *
HICON *
IMAGEINFO *
IMAGELISTDRAWPARAMS *
INITCOMMONCONTROLSEX *
INT *
IStream *
LPCOLORMAP
LPCPROPSHEETHEADERA
LPCPROPSHEETHEADERW
LPCPROPSHEETPAGEA
LPCPROPSHEETPAGEW
LPCRECT
LPCTBBUTTON
LPCVOID
LPINT
LPNMHDR
LPRECT
LPSCROLLINFO
LPSTR *
LPSTREAM
LPVOID
LPWSTR *
PFNDPACOMPARE
PFNDPAENUMCALLBACK
PFNDPAMERGE
PFNDSAENUMCALLBACK
POINT *
RECT *
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

%%compstui.dll

%long

BOOL
HWND
LONG
LPARAM

%long --pointer

ULONG_PTR

%ptr

LPDWORD
PFNPROPSHEETUI

%%credui.dll

%long

BOOL
DWORD
ULONG

%ptr

PBOOL
PCREDUI_INFOW
PCtxtHandle
PSTR *
PWSTR *

%str

PCSTR

%wstr

PCWSTR
PWSTR

%%crtdll.dll

%long

int
size_t
unsigned int

%ptr

char ***
int *
struct crtdll_stat *

%str

char *

%void

void

%%crypt32.dll

%long

ALG_ID
BOOL
DWORD
HANDLE
HCRYPTASN1MODULE
HCRYPTMSG
HCRYPTPROV
HCRYPTPROV_LEGACY
HCRYPTPROV_OR_NCRYPT_KEY_HANDLE
HMODULE
LONG
ULONG

%ptr

ASN1decoding_t
ASN1encoding_t
ASN1module_t
BOOL *
BYTE *
CERT_EXTENSION[]
CRYPT_ATTRIBUTE[]
CRYPT_OID_FUNC_ENTRY[]
CRYPTPROTECT_PROMPTSTRUCT *
DATA_BLOB *
DWORD *
GUID *
HCERTCHAINENGINE
HCERTCHAINENGINE *
HCERTSTORE
HCERTSTORE *
HCRYPTPROV_OR_NCRYPT_KEY_HANDLE *
HCRYPTKEY *
HCRYPTMSG *
HCRYPTOIDFUNCADDR
HCRYPTOIDFUNCADDR *
HCRYPTOIDFUNCSET
HLRUCACHE
HLRUCACHE *
LPCSTR *
LPCWSTR *
LPFILETIME
LPSTR *
LPVOID
LPWSTR *
PCCERT_CHAIN_CONTEXT
PCCERT_CHAIN_CONTEXT *
PCCERT_CONTEXT
PCCERT_CONTEXT *
PCCRL_CONTEXT
PCCRL_CONTEXT *
PCCRYPT_OID_INFO
PCCTL_CONTEXT
PCCTL_CONTEXT *
PCERT_CHAIN_ENGINE_CONFIG
PCERT_CHAIN_PARA
PCERT_CHAIN_POLICY_PARA
PCERT_CHAIN_POLICY_STATUS
PCERT_ENHKEY_USAGE
PCERT_EXTENSION
PCERT_EXTENSIONS
PCERT_INFO
PCERT_NAME_BLOB
PCERT_NAME_INFO
PCERT_PUBLIC_KEY_INFO
PCERT_RDN_ATTR
PCERT_RDN_VALUE_BLOB
PCERT_REVOCATION_PARA
PCERT_REVOCATION_STATUS
PCMSG_STREAM_INFO
PCRL_ENTRY *
PCRL_INFO
PCRL_INFO[]
PCRYPT_ALGORITHM_IDENTIFIER
PCRYPT_ATTRIBUTE
PCRYPT_DECODE_PARA
PCRYPT_ENCODE_PARA
PCRYPT_INTEGER_BLOB
PCRYPT_KEY_PROV_INFO
PCRYPT_VERIFY_MESSAGE_PARA
PFN_CERT_ENUM_SYSTEM_STORE
PFN_CRYPT_ENUM_OID_INFO
PSYSTEMTIME
PVOID
PVOID[]
SIP_ADD_NEWPROVIDER *
SIP_DISPATCH_INFO *
SIP_INDIRECT_DATA *
SIP_SUBJECTINFO *
int *
void *
void **

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%cryptnet.dll

%long

BOOL
DWORD
HCRYPTASYNC

%ptr

DWORD *
LPVOID
LPVOID *
PCERT_REVOCATION_PARA
PCERT_REVOCATION_STATUS
PCRYPT_CREDENTIALS
PCRYPT_RETRIEVE_AUX_INFO
PCRYPT_URL_ARRAY
PCRYPT_URL_INFO
PVOID[]

%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

DWORD *
IDirect3D8 *

%void

void

%%d3d9.dll

%long

BOOL
D3DCOLOR
DWORD
HRESULT
UINT
int

%ptr

IDirect3D9 *

%wstr

LPCWSTR

%void

void

%%d3dx8.dll

%long

DWORD
HFONT
HRESULT
UINT

%ptr

LPCVOID
LPD3DXBUFFER *
LPD3DXFONT *
LPDIRECT3DDEVICE8

%str

LPSTR

%%d3dxof.dll

%long

HRESULT

%ptr

LPDIRECTXFILE *
LPVOID *
REFCLSID
REFIID

%%d3drm.dll

%long

D3DCOLOR

%float

D3DVALUE

%ptr

D3DRMMATRIX4D
LPD3DRMQUATERNION
LPD3DVECTOR

%void

void

%%dbghelp.dll

%long

BOOL
DWORD
HANDLE
HMODULE
HWND
IMAGEHLP_SYMBOL_TYPE_INFO
MINIDUMP_TYPE
ULONG
unsigned short

%longlong

DWORD64
ULONG64

%ptr

DWORD *
DWORD64 *
LPAPI_VERSION
LPEXT_API_VERSION
LPSTACKFRAME
LPSTACKFRAME64
PDWORD
PDWORD64
PENUMDIRTREE_CALLBACK
PENUMDIRTREE_CALLBACKW
PENUMLOADED_MODULES_CALLBACK
PENUMLOADED_MODULES_CALLBACK64
PENUMLOADED_MODULES_CALLBACKW64
PFIND_DEBUG_FILE_CALLBACK
PFIND_EXE_FILE_CALLBACK
PFIND_EXE_FILE_CALLBACKW
PFINDFILEINPATHCALLBACK
PFINDFILEINPATHCALLBACKW
PFUNCTION_TABLE_ACCESS_ROUTINE
PFUNCTION_TABLE_ACCESS_ROUTINE64
PGET_MODULE_BASE_ROUTINE
PGET_MODULE_BASE_ROUTINE64
PIMAGE_DEBUG_INFORMATION
PIMAGEHLP_CONTEXT
PIMAGEHLP_LINE
PIMAGEHLP_LINE64
PIMAGEHLP_LINEW64
PIMAGEHLP_MODULE
PIMAGEHLP_MODULEW
PIMAGEHLP_MODULE64
PIMAGEHLP_MODULEW64
PIMAGEHLP_STACK_FRAME
PIMAGEHLP_SYMBOL
PIMAGEHLP_SYMBOL64
PMINIDUMP_CALLBACK_INFORMATION
PMINIDUMP_DIRECTORY *
PMINIDUMP_EXCEPTION_INFORMATION
PMINIDUMP_USER_STREAM_INFORMATION
PMODLOAD_DATA
PREAD_PROCESS_MEMORY_ROUTINE
PREAD_PROCESS_MEMORY_ROUTINE64
PSTR *
PSYM_ENUMERATESYMBOLS_CALLBACK
PSYM_ENUMERATESYMBOLS_CALLBACKW
PSYM_ENUMLINES_CALLBACK
PSYM_ENUMMODULES_CALLBACK
PSYM_ENUMMODULES_CALLBACK64
PSYM_ENUMMODULES_CALLBACKW64
PSYM_ENUMSOURCEFILES_CALLBACK
PSYM_ENUMSYMBOLS_CALLBACK
PSYMBOL_FUNCENTRY_CALLBACK
PSYMBOL_FUNCENTRY_CALLBACK64
PSYMBOL_INFO
PSYMBOL_INFOW
PSYMBOL_REGISTERED_CALLBACK
PSYMBOL_REGISTERED_CALLBACK64
PTRANSLATE_ADDRESS_ROUTINE
PTRANSLATE_ADDRESS_ROUTINE64
PVOID
PVOID *
PWINDBG_EXTENSION_APIS
PWSTR *
ULONG *

%str

PCSTR
PSTR

%wstr

PCWSTR
PWSTR

%void

void

%%dciman32.dll

%long

HDC
int

%ptr

LPDCISURFACEINFO *

%void

void

%%ddraw.dll

%long

DWORD
HRESULT

%ptr

GUID *
IUnknown *
LPDDENUMCALLBACKA
LPDDENUMCALLBACKEXA
LPDIRECTDRAW *
LPDIRECTDRAWCLIPPER *
LPVOID
LPVOID *
REFCLSID
REFIID

%%devenum.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID


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

%%dnsapi.dll

%long

BOOL
DNS_CHARSET
DNS_CONFIG_TYPE
DNS_FREE_TYPE
DNS_NAME_FORMAT
DNS_STATUS
DWORD
HANDLE
WORD

%ptr

PDNS_MESSAGE_BUFFER
PDNS_RECORD
PDNS_RECORD *
PDNS_RECORDA
PDNS_RECORDA *
PDNS_RECORDW
PDNS_RECORDW *
PDWORD
PHANDLE
PVOID
PVOID *

%str

PCSTR

%wstr

PCWSTR

%void

VOID

%%dplayx.dll

%long

DWORD
HRESULT

%ptr

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

%%dpnet.dll

%long

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

LPVOID *
REFCLSID
REFIID

%%dwmapi.dll

%long

DWORD
HRESULT
HTHUMBNAIL
HWND
UINT

%ptr

BOOL *
LPCVOID

%%dxdiagn.dll

%ptr

REFCLSID
REFIID

%%faultrep.dll

%long

BOOL
DWORD
EFaultRepRetVal

%ptr

LPEXCEPTION_POINTERS

%str

LPCSTR

%wstr

LPCWSTR

%%gdi32.dll

%long

BOOL
COLORREF
DWORD
HANDLE
HBITMAP
HBRUSH
HCOLORSPACE
HDC
HDC16
HENHMETAFILE
HFONT
HGDIOBJ
HGLOBAL
HGLRC
HMETAFILE
HPALETTE
HPEN
HPJOB16
HRGN
HRGN16
HWND
INT
INT16
LONG
LPARAM
UINT
ULONG
WORD
int

%long --pointer

DWORD_PTR

%float

FLOAT

%ptr

ABORTPROC
BITMAP *
BITMAPINFO *
BITMAPINFOHEADER *
BLENDFUNCTION
BYTE *
COLORADJUSTMENT *
DCHOOKPROC
DEVMODEA *
DEVMODEW *
DOCINFOA *
DOCINFOW *
DWORD *
ENHMETARECORD *
ENHMFENUMPROC
FARPROC16
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
LPGLYPHSET
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 *
POLYTEXTA *
POLYTEXTW *
PVOID
RECT *
RGBQUAD *
RGNDATA *
TEXTMETRICA *
TEXTMETRICW *
TRIVERTEX *
VOID **
WORD *
XFORM *
void *

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR
LPWSTR

%%gdiplus.dll

%long

ARGB
BOOL
ColorAdjustType
ColorMatrixFlags
CompositingMode
CompositingQuality
EmfType
GpDashCap
GpDashStyle
GpFillMode
GpLineCap
GpLineJoin
GpMatrixOrder
GpStatus
GpUnit
GpWrapMode
GraphicsState
HDC
HENHMETAFILE
HMETAFILE
HWND
INT
InterpolationMode
LANGID
LinearGradientMode
PixelFormat
PixelOffsetMode
PROPID
SIZE_T
SmoothingMode
Status
StringAlignment
StringTrimming
TextRenderingHint
UINT
WrapMode

%long --pointer

ULONG_PTR

%float

REAL

%ptr

ARGB *
BitmapData *
BOOL *
BYTE *
CLSID *
ColorMatrix *
ColorPalette *
CompositingMode *
CompositingQuality *
DrawImageAbort
EncoderParameters *
GpBitmap *
GpBitmap **
GpBrush *
GpBrush **
GpBrushType *
GpCustomLineCap *
GpCustomLineCap **
GpDashStyle *
GpFillMode *
GpFont *
GpFont **
GpGraphics *
GpGraphics **
GpImage *
GpImage **
GpImageAttributes *
GpImageAttributes **
GpLineGradient *
GpLineGradient **
GpMatrix *
GpMatrix **
GpMetafile *
GpMetafile **
GpPath *
GpPath **
GpPathGradient *
GpPathGradient **
GpPathIterator *
GpPathIterator **
GpPen *
GpPen **
GpPoint *
GpPointF *
GpRect *
GpRectF *
GpSolidFill *
GpSolidFill **
GpStringFormat *
GpStringFormat **
GpTexture *
GpTexture **
GpUnit *
GraphicsState *
GUID *
ImageItemData *
ImageType *
INT *
InterpolationMode *
IStream *
IStream **
LOGFONTA *
LOGFONTW *
MetafileHeader *
PixelFormat *
PixelOffsetMode *
REAL *
RectF *
SmoothingMode *
StringAlignment *
StringTrimming *
TextRenderingHint *
UINT *
ULONG_PTR *
VOID *
WmfPlaceableFileHeader *
struct GdiplusStartupInput *
struct GdiplusStartupOutput *
void *

%wstr

WCHAR *

%void

void

%%glu32.dll

%double

double

%long

int

%ptr

void *

%str

char *

%void

void

%%glut32.dll

%double

double

%float

float

%long

int
unsigned int

%ptr

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

%void

void

%%gphoto2.ds

%long

TW_UINT16
TW_UINT32

%ptr

pTW_IDENTITY
TW_MEMREF

%%hhctrl.ocx

%long

HINSTANCE
HRESULT
HWND
UINT
int

%long --pointer

DWORD_PTR

%str

LPCSTR
LPSTR

%wstr

LPCWSTR

%%hid.dll

%ptr

LPGUID

%void

void

%%hlink.dll

%long

DWORD
HRESULT
HWND
ULONG

%ptr

IBindStatusCallback *
IDataObject *
IHlink *
IHlinkBrowseContext *
IHlinkFrame *
IHlinkSite *
IMoniker *
IUnknown *
LPBC
LPWSTR *
REFIID
ULONG *
void **

%wstr

LPCWSTR

%%iccvid.dll

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

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

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%imagehlp.dll

%long

BOOL
DWORD
HANDLE
ULONG
WORD

%ptr

DIGEST_FUNCTION
DIGEST_HANDLE
LPDWORD
LPSYSTEMTIME
LPVOID
LPWIN_CERTIFICATE
PCHAR *
PDWORD
PIMAGE_LOAD_CONFIG_DIRECTORY
PIMAGE_NT_HEADERS
PIMAGE_NT_HEADERS32
PIMAGEHLP_STATUS_ROUTINE
PLOADED_IMAGE
ULONG *
ULONG_PTR *

%str

PCSTR
PSTR
PCHAR

%wstr

PCWSTR

%void

VOID

%%imm32.dll

%long

BOOL
DWORD
HIMC
HKL
HIMCC
HWND
LONG
LPARAM
LRESULT
UINT
WPARAM

%ptr

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

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%inseng.dll

%long

BOOL

%ptr

LPVOID

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

%%kernel32.dll

%long

ATOM
BOOL
BOOL16
BYTE
CALID
CALTYPE
CHAR
COORD
DWORD
EXECUTION_STATE
GEOCLASS
GEOID
GEOTYPE
HANDLE
HANDLE16
HEAP_INFORMATION_CLASS
HFILE
HFILE16
HGLOBAL
HGLOBAL16
HINSTANCE
HINSTANCE16
HLOCAL
HLOCAL16
HMODULE
HMODULE16
HRSRC
HRSRC16
HTASK16
HWND
INT
LANGID
LATENCY_TIME
LCID
LCTYPE
LGRPID
LONG
SIZE_T
UINT
UINT16
ULONG
WCHAR
WORD
WOW_HANDLE_TYPE
int

%long --pointer

DWORD_PTR
LONG_PTR
ULONG_PTR

%longlong

DWORDLONG
LARGE_INTEGER
ULONGLONG

%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
EXCEPTION_RECORD *
FARPROC
FARPROC *
FARPROC16
FILETIME *
FINDEX_INFO_LEVELS
FINDEX_SEARCH_OPS
GEO_ENUMPROC
GET_FILEEX_INFO_LEVELS
GUID *
HANDLE *
HMODULE *
IMAGE_DOS_HEADER *
INPUT_RECORD *
LANGGROUPLOCALE_ENUMPROCA
LANGGROUPLOCALE_ENUMPROCW
LANGUAGEGROUP_ENUMPROCA
LANGUAGEGROUP_ENUMPROCW
LARGE_INTEGER *
LOCALE_ENUMPROCA
LOCALE_ENUMPROCW
LONG *
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
LPOFSTRUCT
LPOSVERSIONINFOEXA
LPOSVERSIONINFOEXW
LPOVERLAPPED
LPOVERLAPPED *
LPOVERLAPPED_COMPLETION_ROUTINE
LPPROCESS_HEAP_ENTRY
LPPROCESS_INFORMATION
LPPROCESSENTRY32
LPPROCESSENTRY32W
LPPROGRESS_ROUTINE
LPSECURITY_ATTRIBUTES
LPSMALL_RECT
LPSTARTUPINFOA
LPSTARTUPINFOW
LPSTR *
LPSYSTEM_INFO
LPSYSTEM_POWER_STATUS
LPSYSTEMTIME
LPTHREAD_START_ROUTINE
LPTHREADENTRY32
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
PDWORD_PTR
PEXCEPTION_POINTERS
PHANDLE
PHANDLER_ROUTINE
PINPUT_RECORD
PIO_COUNTERS
PLARGE_INTEGER
PMEMORY_BASIC_INFORMATION
PSIZE_T
PTIMERAPCROUTINE
PULARGE_INTEGER
PULONG_PTR
PVOID
SECURITY_ATTRIBUTES *
SEGPTR
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 *
struct ThunkDataCommon *
va_list
va_list *
void *

%str

LPCSTR
LPSTR
char *

%void

VOID
void

%wstr

LPCWSTR
LPWSTR
WCHAR *

%%localspl.dll

%long

BOOL
DWORD

%ptr

LPMONITOREX
LPPRINTPROVIDOR

%wstr

LPWSTR

%%localui.dll

%ptr

PMONITORUI

%%mapi32.dll

%long

BOOL
CMC_enum
CMC_return_code
CMC_session_id
DWORD
FLAGS
HRESULT
INT
LHANDLE
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 *
LPPROFADMIN *
LPPROPDATA *
LPSPropTagArray
LPSPropValue
LPSPropValue *
LPSRow
LPSRowSet
LPSTR *
LPSTREAM *
LPVOID
LPVOID *
LPWSTR *
PULONG
PUSHORT
PVOID
ULONG *
lpMapiMessage
void *

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%mciavi32.dll

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%mcicda.dll

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%mciseq.dll

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%mciwave.dll

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%midimap.dll

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

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

%%mprapi.dll

%long

BOOL

%wstr

LPWSTR

%%msacm32.drv

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT
WORD

%long --pointer

DWORD_PTR

%%msacm32.dll

%long

DWORD
HACMDRIVER
HACMDRIVERID
HACMOBJ
HACMSTREAM
HDRVR
HINSTANCE
LPARAM
LRESULT
MMRESULT
UINT

%long --pointer

DWORD_PTR

%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

%%mscoree.dll

%long

BOOL
DWORD
HINSTANCE
HRESULT
__int32
int

%ptr

DWORD *
HMODULE *
IUnknown **
LPVOID
LPVOID *
PBYTE
REFCLSID
REFIID
PVOID
PVOID *
VOID *

%wstr

LPCWSTR
LPWSTR

%void

VOID
void

%%msdmo.dll

%long

DWORD
HRESULT
ULONG

%ptr

DMO_MEDIA_TYPE *
DMO_MEDIA_TYPE **
DMO_PARTIAL_MEDIATYPE *
IEnumDMO **
REFCLSID
REFGUID
ULONG *

%wstr

LPCWSTR
WCHAR[80]

%%msg711.acm

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%mshtml.dll

%long

BOOL
DWORD
HINSTANCE
HRESULT
HWND
INT

%ptr

IMoniker *
LPVOID *
REFCLSID
REFIID
VARIANT *

%str

LPSTR

%wstr

LPCWSTR
WCHAR *

%%msi.dll

%long

BOOL
DWORD
HRESULT
HWND
INSTALLMESSAGE
INSTALLSTATE
INSTALLTYPE
INSTALLUILEVEL
INT
LANGID
MSICOLINFO
MSICONDITION
MSICOSTTREE
MSIDBERROR
MSIDBSTATE
MSIHANDLE
MSIINSTALLCONTEXT
MSIMODIFY
MSIRUNMODE
UINT
USERINFOSTATE
WORD
int

%ptr

DLLVERSIONINFO *
FILETIME *
HWND *
INSTALLSTATE *
INSTALLUI_HANDLERA
INSTALLUI_HANDLERW
LPBYTE
LPDWORD
LPINT
LPVOID
LPVOID *
LPWORD
MSIHANDLE *
MSIINSTALLCONTEXT *
PCCERT_CONTEXT *
PHKEY
PMSIFILEHASHINFO
PUINT
REFCLSID
REFIID

%str

CHAR[39]
LPCSTR
LPSTR
char *

%wstr

LPCWSTR
LPWSTR
WCHAR[39]

%%msimg32.dll

%void

void

%%msisys.ocx

%long

HRESULT

%ptr

LPVOID *
REFCLSID

%%msnet32.dll

%long

LONG

%ptr

LPVOID

%%msrle32.dll

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%msvcrt.dll

%double

double

%long

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

%long --pointer

MSVCRT_intptr_t
MSVCRT_uintptr_t

%longlong

__int64
unsigned __int64

%ptr

_INITTERMFUN *
EXCEPTION_REGISTRATION_RECORD *
EXCEPTION_REGISTRATION_RECORD **
MSVCRT___sighandler_t
MSVCRT__beginthread_start_routine_t
MSVCRT__beginthreadex_start_routine_t
MSVCRT__LDOUBLE *
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_time_t *
MSVCRT_unexpected_function
MSVCRT_wchar_t **
MSVCRT_wchar_t ***
MSVCRT_wint_t
PCONTEXT
PEXCEPTION_POINTERS
PEXCEPTION_RECORD
WCHAR **
WORD **
char **
char ***
cxx_exception_type *
double *
exception *
free_func_t
int (*)(void *, void *)
int *
long *
malloc_func_t
struct MSVCRT___JUMP_BUFFER *
struct MSVCRT__diskfree_t *
struct MSVCRT__exception *
struct MSVCRT__finddata_t *
struct MSVCRT__finddatai64_t *
struct MSVCRT__heapinfo *
struct MSVCRT__stat *
struct MSVCRT__stat64 *
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 *

%str

char *

%unknown

MSVCRT_div_t
MSVCRT_ldiv_t
struct MSVCRT__complex

%void

VOID
void

%wstr

MSVCRT_wchar_t *

%%msvcrt20.dll

%long

int

%ptr

WCHAR ***
char ***
int *

%void

void

%%msvcrtd.dll

%long

int
unsigned long

%ptr

int *
void *

%str

char *

%%msvfw32.dll

%long

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

%long --pointer

DWORD_PTR

%ptr

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

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR

%%msvidc32.dll

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%mswsock.dll

%long

BOOL
DWORD
HANDLE
SOCKET

%ptr

LPDWORD
LPINT
LPOVERLAPPED
LPTRANSMIT_FILE_BUFFERS
PVOID
struct sockaddr **

%void

VOID
void

%%msxml3.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%nddeapi.dll

%long

DWORD
UINT

%str

LPSTR

%wstr

LPWSTR

%%netapi32.dll

%long

DSROLE_PRIMARY_DOMAIN_INFO_LEVEL
DWORD
NET_API_STATUS
UCHAR
ULONG

%ptr

GUID *
LPBYTE
LPBYTE *
LPDWORD
LPVOID
LPVOID *
LPWSTR *
PBROWSER_EMULATED_DOMAIN *
PBYTE *
PDOMAIN_CONTROLLER_INFOA *
PDOMAIN_CONTROLLER_INFOW *
PDWORD
PDWORD_PTR
PNCB
PNETSETUP_JOIN_STATUS
PSID
PVOID
PVOID *

%void

VOID

%str

LPCSTR

%wstr

LMCSTR
LMSTR
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
EVENT_INFORMATION_CLASS
FILE_INFORMATION_CLASS
FS_INFORMATION_CLASS
HANDLE
HMODULE
INT
IO_COMPLETION_INFORMATION_CLASS
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_DESCRIPTOR_CONTROL
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
int
obj_handle_t
size_t
unsigned int

%long --pointer

ULONG_PTR

%longlong

DWORDLONG
LONGLONG
ULONGLONG

%ptr

ANSI_STRING *
BOOLEAN *
BYTE *
CLIENT_ID *
CONTEXT *
CURDIR *
DOS_PATHNAME_TYPE
DWORD *
EXCEPTION_RECORD *
EXCEPTION_REGISTRATION_RECORD *
EXCEPTION_REGISTRATION_RECORD **
FILE_BASIC_INFORMATION *
FILE_NETWORK_OPEN_INFORMATION *
GENERIC_MAPPING *
GUID *
HANDLE *
HMODULE *
IMAGE_NT_HEADERS *
IMAGE_RESOURCE_DATA_ENTRY *
IMAGE_RESOURCE_DATA_ENTRY **
IMAGE_RESOURCE_DIRECTORY **
IMAGE_SECTION_HEADER **
INT *
IO_STATUS_BLOCK *
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
PCRTL_BITMAP
PCSZ
PDEBUG_BUFFER
PDIRECTORY_BASIC_INFORMATION
PDWORD
PEB *
PEXCEPTION_RECORD
PGENERIC_MAPPING
PHANDLE
PIMAGE_NT_HEADERS
PIMAGE_SECTION_HEADER
PIO_APC_ROUTINE
PIO_STATUS_BLOCK
PKEY_MULTIPLE_VALUE_INFORMATION
PLARGE_INTEGER
PLDR_MODULE *
PLONG
PLPC_MESSAGE
PLPC_SECTION_READ
PLPC_SECTION_WRITE
PLUID
PLUID_AND_ATTRIBUTES
PNTAPCFUNC
POBJECT_ATTRIBUTES
PPRIVILEGE_SET
PRTL_BITMAP
PRTL_BITMAP_RUN
PRTL_HEAP_DEFINITION
PRTL_QUERY_REGISTRY_TABLE
PRTL_THREAD_START_ROUTINE
PRTL_USER_PROCESS_PARAMETERS
PRTL_WORK_ITEM_ROUTINE
PSECURITY_DESCRIPTOR
PSECURITY_DESCRIPTOR *
PSECURITY_DESCRIPTOR_CONTROL
PSECURITY_QUALITY_OF_SERVICE
PSID
PSID *
PSID_IDENTIFIER_AUTHORITY
PSLIST_ENTRY
PSLIST_HEADER
PSTRING
PSYSTEM_MODULE_INFORMATION
PTIME_FIELDS
PTIMER_APC_ROUTINE
PTOKEN_GROUPS
PTOKEN_PRIVILEGES
PULARGE_INTEGER
PULONG
PULONG_PTR
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 *
SLIST_HEADER *
STRING *
UINT *
ULONG *
ULONGLONG *
UNICODE_STRING *
USHORT *
VOID *
WCHAR **
char **
int *
int (*)(void *, void *)
obj_handle_t *
union cptable *
unsigned int *
va_list
va_list *
void *
void **
wine_signal_handler

%str

LPCSTR
LPSTR
PCHAR
char *

%void

VOID
void

%wstr

LPCWSTR
LPWSTR
PCWSTR
PWSTR
WCHAR *

%%ntdsapi.dll

%long

DWORD
USHORT

%ptr

DWORD *

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%ntoskrnl.exe

%long

BOOLEAN
DEVICE_TYPE
HANDLE
NTSTATUS
POOL_TYPE
SIZE_T
ULONG

%ptr

DEVICE_OBJECT *
DEVICE_OBJECT **
DRIVER_OBJECT *
LARGE_INTEGER *
PCLIENT_ID
PCREATE_PROCESS_NOTIFY_ROUTINE
PHANDLE
PKSTART_ROUTINE
PKTIMER
POBJECT_ATTRIBUTES
PVOID
ULONG *
UNICODE_STRING *
void *

%void

void

%%ntprint.dll

%long

BOOL
DWORD
HANDLE

%ptr

LPDWORD
LPVOID

%wstr

LPWSTR

%void

VOID

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

%wstr

WCHAR *

%%odbccp32.dll

%long

BOOL
DWORD
HWND
LONG
SQLRETURN
UWORD
WORD
int

%ptr

DWORD *
LONG *
LPDWORD
UWORD *
WORD *

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%ole32.dll

%long

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

%ptr

BIND_OPTS *
CLIPFORMAT *
CLSID *
COSERVERINFO *
DVTARGETDEVICE *
DWORD *
FILETIME *
FMTID *
GUID *
HBITMAP *
HDC *
HENHMETAFILE *
HGLOBAL *
HMETAFILE *
HMETAFILEPICT *
HPALETTE *
HRESULT *
IChannelHook *
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
LPHANDLE
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 **
PROPVARIANT *
PSECURITY_DESCRIPTOR
REFCLSID
REFGUID
REFIID
RPC_AUTHZ_HANDLE *
SNB
SNB *
SOLE_AUTHENTICATION_SERVICE *
STGMEDIUM *
STGOPTIONS *
ULONG *
WORD *
unsigned char *
void *
void **

%str

LPCOLESTR
LPOLESTR

%void

VOID
void

%wstr

BSTR
OLECHAR *
LPCWSTR
WCHAR *

%%oleacc.dll

%long

DWORD
HRESULT
HWND
LONG
WPARAM

%ptr

LPUNKNOWN
REFIID
void **

%%oleaut32.dll

%double

DATE
double

%float

float
FLOAT

%long

BOOL
BYTE
CALLCONV
DISPID
DWORD
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

%long --pointer

ULONG_PTR

%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
LPSAFEARRAY *
LPSTREAM
LPSYSTEMTIME
LPUNKNOWN
LPUNKNOWN *
LPVARIANT
LPVOID
LPVOID *
NUMPARSE *
OLECHAR **
REFCLSID
REFGUID
REFIID
SAFEARRAY *
SAFEARRAY **
SAFEARRAYBOUND *
SHORT *
UDATE *
UINT *
ULONG *
ULONG64 *
USHORT *
VARIANT *
VARIANT_BOOL *
VARIANTARG *
VARIANTARG **
VARTYPE *
VOID *
double *
float *
int *
signed char *
unsigned char *
void *
void **

%str

LPCOLESTR
LPCSTR
LPOLESTR

%void

void

%wstr

BSTR
OLECHAR *

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

%ptr

BOOL *
LHSERVER *
LHSERVERDOC *
LPOLESERVER
LPOLESERVERDOC

%str

LPCSTR

%%opengl32.dll

%double

GLclampd
GLdouble

%float

FLOAT

%long

BOOL
DWORD
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
PROC

%str

LPCSTR

%void

void

%%pdh.dll

%long

BOOLEAN
DWORD
HANDLE
LONG
PDH_HCOUNTER
PDH_HLOG
PDH_HQUERY
PDH_STATUS

%long --pointer

DWORD_PTR

%ptr

LONGLONG *
LPDWORD
PDH_HCOUNTER *
PDH_HQUERY *
PPDH_COUNTER_INFO_A
PPDH_COUNTER_INFO_W
PPDH_FMT_COUNTERVALUE
PPDH_RAW_COUNTER

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

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

%%printui.dll

%long

DWORD
HINSTANCE
HWND

%wstr

LPCWSTR

%void

void

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

%%pstorec.dll

%long

DWORD
HRESULT

%ptr

IPStore **
PST_PROVIDERID *
void *

%%qcap.dll

%long

HRESULT

%ptr

LPVOID *
REFCLSID
REFIID

%%quartz.dll

%long

DWORD
HRESULT
LONG

%ptr

LPVOID *
REFCLSID
REFIID

%str

LPSTR

%wstr

LPWSTR

%%query.dll

%long

HRESULT
ULONG

%ptr

CI_STATE *
ULONG *

%str

CHAR *

%wstr

WCHAR *

%%rasapi32.dll

%long

BOOL
DWORD
HANDLE
HRASCONN
HWND
RASPROJECTION
UINT

%ptr

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

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%riched20.dll

%long

HRESULT
HWND
LPARAM
LRESULT
UINT
WPARAM

%ptr

ITextHost *
IUnknown *
IUnknown **

%%riched32.dll

%long

HRESULT

%ptr

DLLVERSIONINFO *

%%rpcrt4.dll

%long

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

%long --pointer

LONG_PTR

%ptr

CLSID *
CStdPSFactoryBuffer *
DWORD *
IRpcChannelBuffer *
IRpcStubBuffer *
LPPSFACTORYBUFFER
LPRPCCHANNELBUFFER
LPRPCPROXYBUFFER *
LPRPCSTUBBUFFER
LPTYPEINFO
LPUNKNOWN
LPVOID
LPVOID *
MIDL_STUB_MESSAGE *
NDR_CCONTEXT
NDR_CCONTEXT *
NDR_RUNDOWN
NDR_SCONTEXT
PFORMAT_STRING
PFULL_PTR_XLAT_TABLES
PMIDL_STUB_DESC
PMIDL_STUB_MESSAGE
PRPC_MESSAGE
PRPC_POLICY
PRPCOLEMESSAGE
PRPC_SYNTAX_IDENTIFIER
ProxyFileInfo **
REFCLSID
REFIID
RPC_AUTH_KEY_RETRIEVAL_FN
RPC_AUTH_IDENTITY_HANDLE
RPC_AUTH_IDENTITY_HANDLE *
RPC_BINDING_HANDLE *
RPC_BINDING_VECTOR *
RPC_BINDING_VECTOR **
RPC_BLOCKING_FN
RPC_CSTR *
RPC_EP_INQ_HANDLE *
RPC_IF_CALLBACK_FN *
RPC_IF_ID *
RPC_IF_ID_VECTOR **
RPC_MGR_EPV *
RPC_SECURITY_QOS *
RPC_STATUS *
RPC_SYNTAX_IDENTIFIER *
RPC_WSTR *
UUID *
UUID_VECTOR *
ULONG *
struct IRpcChannelBuffer *
struct IRpcStubBuffer *
char **
twr_t *
twr_t **
unsigned char *
unsigned char **
void *
void **

%void

void

%str

RPC_CSTR
char *

%wstr

RPC_WSTR

%%rsaenh.dll

%long

ALG_ID
BOOL
DWORD
HCRYPTHASH
HCRYPTKEY
HCRYPTPROV
HRESULT

%ptr

BYTE *
DWORD *
HCRYPTHASH *
HCRYPTKEY *
HCRYPTPROV *
PVTableProvStruc

%str

LPSTR

%wstr

LPCWSTR

%%schannel.dll

%long

NTSTATUS
ULONG

%ptr

PSECPKG_FUNCTION_TABLE *
PSECPKG_USER_FUNCTION_TABLE *
PULONG

%%secur32.dll

%long

BOOLEAN
EXTENDED_NAME_FORMAT
HANDLE
NTSTATUS
SECURITY_LOGON_TYPE
SECURITY_STATUS
ULONG

%ptr

HANDLE *
PCredHandle
PCtxtHandle
PHANDLE
PLSA_OPERATIONAL_MODE
PLSA_STRING
PLUID
PLUID *
PNTSTATUS
PQUOTA_LIMITS
PSecBuffer
PSecBufferDesc
PSecPkgInfoA *
PSecPkgInfoW *
PSECURITY_LOGON_SESSION_DATA *
PSecurityFunctionTableA
PSecurityFunctionTableW
PTimeStamp
PTOKEN_GROUPS
PTOKEN_SOURCE
PULONG
PVOID
PVOID *
SEC_GET_KEY_FN
ULONG *
void *
void **

%str

LPCSTR
LPSTR
SEC_CHAR *

%wstr

LPCWSTR
LPWSTR
SEC_WCHAR *

%%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
HSPFILELOG
HSPFILEQ
HSTRING_TABLE
HWND
INT
LogSeverity
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_DETSIG_CMPPROC
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
PSP_ORIGINAL_FILE_INFO_A
PSP_ORIGINAL_FILE_INFO_W
PCSTR *
PCWSTR *
PSTR *
PUINT
PVOID
PWSTR *
UINT *
void *

%str

LPCSTR
LPSTR
PCSTR
PSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR
PCWSTR
PWSTR

%%sfc_os.dll

%long

BOOL
HANDLE
HKEY
REGSAM

%wstr

LPCWSTR

%%shdocvw.dll

%long

BOOL
DWORD
HINSTANCE
HRESULT
HWND
int

%ptr

DLLVERSIONINFO *
LPVOID *
REFCLSID
REFIID

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR

%%shell32.dll

%long

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

%long --pointer

DWORD_PTR

%longlong

POINT

%ptr

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

%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
LONG
LPARAM
LRESULT
REGSAM
SHCONTF
SHREGDEL_FLAGS
SHREGENUM_FLAGS
UCHAR
UINT
ULONG
URLIS
WCHAR
WORD
WPARAM
char
int

%long --pointer

INT_PTR
DWORD_PTR

%longlong

LONGLONG

%ptr

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

%str

LPCSTR
LPSTR

%struct16

CLSID

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%snmpapi.dll

%void

VOID

%long

INT
UINT

%str

LPSTR

%ptr

AsnAny *
AsnObjectIdentifier *
AsnOctetString *
LPVOID
SnmpVarBind *
SnmpVarBindList *
UINT *

%%spoolss.dll

%long

BOOL
DWORD
HANDLE

%ptr

LPBYTE
LPVOID
LPVOID *

%wstr

LPCWSTR
LPWSTR

%%sti.dll

%long

DWORD
HINSTANCE
HRESULT

%ptr

LPVOID

%%tapi32.dll

%long

DWORD
HCALL
HINSTANCE
HLINE
HLINEAPP
HPHONE
HPHONEAPP
HWND
LONG

%ptr

HICON *
LINECALLBACK
LPDWORD
LPHCALL
LPHLINE
LPHLINEAPP
LPHPHONE
LPHPHONEAPP
LPLINEADDRESSCAPS
LPLINEADDRESSSTATUS
LPLINECALLINFO
LPLINECALLLIST
LPLINECALLPARAMS
LPLINECALLSTATUS
LPLINECOUNTRYLIST
LPLINEDEVCAPS
LPLINEDEVSTATUS
LPLINEDIALPARAMS
LPLINEEXTENSIONID
LPLINEFORWARDLIST
LPLINEINITIALIZEEXPARAMS
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

%%url.dll

%long

BOOL
DWORD
HRESULT
HWND
int

%str

LPCSTR
LPSTR

%%urlmon.dll

%long

BOOL
DWORD
HRESULT
HWND
PARSEACTION
QUERYOPTION
UINT

%ptr

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

%str

LPCSTR
LPSTR

%void

void

%wstr

LPCWSTR
LPWSTR

%%user32.dll

%long

ACCESS_MASK
ATOM
BOOL
BYTE
CHAR
COLORREF
DWORD
HACCEL
HANDLE
HANDLE16
HBITMAP
HBRUSH
HCONV
HCONVLIST
HCURSOR
HDC
HDDEDATA
HDESK
HDEVNOTIFY
HDRVR16
HDWP
HFONT
HGLOBAL16
HHOOK
HICON
HINSTANCE
HINSTANCE16
HKL
HMENU
HMODULE
HMODULE16
HMONITOR
HRAWINPUT
HRESULT
HRGN
HSZ
HTASK
HWINEVENTHOOK
HWINSTA
HWND
HWND16
INT
INT16
LONG
LPARAM
LRESULT
SHORT
UINT
UINT16
ULONG
WCHAR
WORD
WPARAM
WPARAM16
int

%long --pointer

INT_PTR
LONG_PTR
UINT_PTR
ULONG_PTR

%longlong

POINT

%ptr

BLENDFUNCTION *
BOOL *
COLORREF *
DESKTOPENUMPROCA
DESKTOPENUMPROCW
DLGPROC
DLGPROC16
DRAWSTATEPROC
DWORD *
GRAYSTRINGPROC
GUITHREADINFO *
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 *
PRAWINPUT
PRAWINPUT *
PRAWINPUTDEVICE
PRAWINPUTDEVICELIST
PROPENUMPROCA
PROPENUMPROCEXA
PROPENUMPROCEXW
PROPENUMPROCW
PSECURITY_DESCRIPTOR
PSECURITY_INFORMATION
PSECURITY_QUALITY_OF_SERVICE
PTITLEBARINFO
PUINT
PUINT_PTR
PVOID
PWINDOWINFO
RECT *
SCROLLINFO *
SECURITY_QUALITY_OF_SERVICE *
SENDASYNCPROC
SIZE *
TIMERPROC
TRACKMOUSEEVENT *
UINT *
WINDOWPLACEMENT *
WINEVENTPROC
WINSTAENUMPROCA
WINSTAENUMPROCW
WND *
WNDCLASSA *
WNDCLASSEXA *
WNDCLASSEXW *
WNDCLASSW *
WNDENUMPROC
WNDPROC
WNDPROC16
va_list

%str

LPCSTR
LPSTR

%void

VOID
void

%wstr

LPCWSTR
LPWSTR

%%userenv.dll

%long

BOOL
DWORD
HANDLE

%ptr

DWORD *
LPDWORD
LPPROFILEINFOA
LPVOID *

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%usp10.dll

%long

BOOL
DWORD
HDC
HRESULT
LCID
UINT
WORD
int

%ptr

ABC *
BYTE *
GOFFSET *
RECT *
SCRIPT_ANALYSIS *
SCRIPT_CACHE *
SCRIPT_CONTROL *
SCRIPT_DIGITSUBSTITUTE *
SCRIPT_FONTPROPERTIES *
SCRIPT_ITEM *
SCRIPT_LOGATTR *
SCRIPT_PROPERTIES ***
SCRIPT_STATE *
SCRIPT_STRING_ANALYSIS
SCRIPT_STRING_ANALYSIS *
SCRIPT_TABDEF *
SCRIPT_VISATTR *
SIZE *
UINT *
WORD *
int *
LONG *
void *

%wstr

WCHAR *

%%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 *
PTHEMENAMES
ParseThemeIniFileProc
RECT *
SIZE *
TEXTMETRICW *
WORD *
int *

%str

char *

%void

void

%wstr

LPCWSTR
LPWSTR

%%vdhcp.vxd

%long

BOOL
DWORD

%ptr

LPDWORD
LPOVERLAPPED
LPVOID

%%vdmdbg.dll

%long

DWORD
INT
LPARAM

%ptr

TASKENUMPROC

%%version.dll

%long

BOOL
DWORD

%ptr

LPCVOID
LPDWORD
LPVOID
LPVOID *
PUINT

%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
LPARAM
LRESULT
UINT
WORD

%long --pointer

DWORD_PTR

%%wineaudioio.drv

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT
WORD

%long --pointer

DWORD_PTR

%%winecoreaudio.drv

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT
WORD

%long --pointer

DWORD_PTR

%%wined3d.dll

%long

UINT

%ptr

IUnknown *
IWineD3D *
IWineD3DClipper *

%%winedos.dll

%long

BOOL
BYTE
DWORD
UINT
WORD
int

%ptr

LPVOID
UINT16 *
void *

%str

LPCSTR

%void

void

%%wineesd.drv

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT
WORD

%long --pointer

DWORD_PTR

%%winejack.drv

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT
WORD

%long --pointer

DWORD_PTR

%%winejoystick.drv

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%winemp3.acm

%long

HDRVR
LPARAM
LRESULT
UINT

%long --pointer

DWORD_PTR

%%winenas.drv

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT
WORD

%long --pointer

DWORD_PTR

%%wineoss.drv

%long

DWORD
HDRVR
LPARAM
LRESULT
UINT
WORD

%long --pointer

DWORD_PTR

%%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
HGLRC
HICON
HKL
HMONITOR
HPALETTE
HPBUFFERARB
HPEN
HRGN
HWND
INT
LONG
LPARAM
LRESULT
SHORT
UINT
WCHAR
Window
WPARAM
int

%ptr

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

%void

void

%str

LPCSTR

%wstr

LPCWSTR
LPWSTR

%%wing32.dll

%long

BOOL
COLORREF
HBITMAP
HBRUSH
HDC
HPALETTE
INT
UINT

%ptr

BITMAPINFO *
RGBQUAD *
void *
void **

%%winhttp.dll

%long

BOOL

%ptr

WINHTTP_CURRENT_USER_IE_PROXY_CONFIG *

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

DWORD *
DWORD_PTR *
FILETIME *
GOPHER_ATTRIBUTE_ENUMERATORA
GOPHER_ATTRIBUTE_ENUMERATORW
GROUPID *
HANDLE *
HINTERNET *
INTERNET_STATUS_CALLBACK
LPBYTE
LPCSTR *
LPCVOID
LPCWSTR *
LPDWORD
LPGOPHER_FIND_DATAA
LPGOPHER_FIND_DATAW
LPINTERNET_BUFFERSA
LPINTERNET_BUFFERSW
LPINTERNET_CACHE_CONFIG_INFOA
LPINTERNET_CACHE_CONFIG_INFOW
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

%%winmm.dll

%long

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

%long --forbidden

HMMIO16
UINT16

%long --pointer

DWORD_PTR
UINT_PTR

%ptr

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

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%void

VOID

%%winnls32.dll

%long

BOOL
HWND

%%winscard.dll

%long

DWORD
LONG

%ptr

LPCVOID
LPSCARDCONTEXT

%%winspool.drv

%long

BOOL
DWORD
HANDLE
HWND
INT
LONG
WORD

%ptr

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

%str

LPCSTR
LPSTR

%wstr

LPCWSTR
LPWSTR

%%wintab32.dll

%long

BOOL
DWORD
HCTX
HMGR
HWND
HWTHOOK
LPARAM
LRESULT
UINT
WPARAM
int

%ptr

LPBYTE
LPINT
LPLOGCONTEXTA
LPLOGCONTEXTW
LPVOID
UINT *
WTENUMPROC

%str

LPSTR

%wstr

LPWSTR

%%wintrust.dll

%long

BOOL
DWORD
HANDLE
HCATADMIN
HCATINFO
HCRYPTPROV
HRESULT
HWND
LONG

%ptr

BYTE *
CRYPT_PROVIDER_CERT *
CRYPT_PROVIDER_DATA *
CRYPT_PROVIDER_FUNCTIONS *
CRYPT_PROVIDER_REGDEFUSAGE *
CRYPT_PROVIDER_SGNR *
CRYPT_REGISTER_ACTIONID *
CRYPTCATMEMBER *
DWORD *
GUID *
HCATADMIN *
HCATINFO *
LPVOID
PCCERT_CONTEXT
WINTRUST_DATA *
void *

%str

LPCSTR
char *

%wstr

LPCWSTR
LPWSTR
PWSTR

%void

void

%%wldap32.dll

%long

BOOLEAN
HANDLE
INT
UCHAR
ULONG
int

%ptr

BERVAL *
BerElement *
CHAR **
HANDLE *
LDAPControlA *
LDAPControlA **
LDAPControlW *
LDAPControlW **
LDAPModA *[]
LDAPModW *[]
PBERVAL *
PCHAR *
PCHAR **
PCHAR[]
PINT
PLDAP_VERSION_INFO
PLDAPControlA
PLDAPControlA *
PLDAPControlA **
PLDAPControlW
PLDAPControlW *
PLDAPControlW **
PLDAPSearch
PLDAPSortKeyA *
PLDAPSortKeyW *
PULONG
PWCHAR *
PWCHAR **
PWCHAR[]
ULONG *
WLDAP32_BerElement *
WLDAP32_BerElement **
WLDAP32_LDAP *
WLDAP32_LDAPMessage *
WLDAP32_LDAPMessage **
WLDAP32_LDAPVLVInfo *
int *
struct WLDAP32_berval *
struct WLDAP32_berval **
struct l_timeval *
void *

%str

CHAR *
LPCSTR
LPSTR
PCHAR

%void

void

%wstr

LPCWSTR
LPWSTR
PWCHAR

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

%short

WS_u_short

%long

BOOL
DWORD
GROUP
HANDLE
HWND
INT
LONG
SOCKET
UINT
WORD
WS_socklen_t
WS_u_long
WSAESETSERVICEOP
WSAEVENT
int

%ptr

ADDRINFOW *
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
LPWSAQUERYSETA
LPWSAQUERYSETW
LPWSASERVICECLASSINFOA
LPWSASERVICECLASSINFOW
PADDRINFOW *
SOCKADDR *
WS_fd_set *
WS_u_long *
WS_u_short *
int *
struct WS_addrinfo *
struct WS_addrinfo **
struct WS_hostent *
struct WS_protoent *
struct WS_servent *
struct WS_sockaddr *
struct WS_timeval *

%str

LPCSTR
LPSTR
PCHAR
char *

%unknown

struct WS_in_addr

%void

void

%wstr

LPCWSTR
LPWSTR

%%wsock32.dll

%long

DWORD
INT
SOCKET
UINT

%ptr

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

%str

LPCSTR
LPSTR
char *

%void

void

%wstr

LPWSTR

%%wtsapi32.dll

%long

BOOL
DWORD
HANDLE
HWND
WTS_INFO_CLASS

%ptr

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

%str

LPSTR

%wstr

LPWSTR

%void

void
