blob: b3d7158c979c8b819bb79a3f809390943363522f [file] [log] [blame]
cpp_quote("/**")
cpp_quote(" * This file is part of the mingw-w64 runtime package.")
cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
cpp_quote(" */")
cpp_quote("")
import "basetsd.h";
import "guiddef.h";
cpp_quote("")
[uuid (B1BEA154-1c2f-4da9-9abf-6e2d24eea1be), version (0.1), pointer_default (unique)]
interface IWinTypesBase {
cpp_quote("")
cpp_quote("#if 0")
typedef byte BYTE;
typedef unsigned short WORD;
typedef unsigned int UINT;
typedef int INT;
typedef long BOOL;
/*typedef long WINBOOL;*/
typedef long LONG;
typedef unsigned long DWORD;
typedef void *HANDLE;
typedef WORD *LPWORD;
typedef DWORD *LPDWORD;
typedef char CHAR;
typedef [string] CHAR *LPSTR;
typedef [string] const CHAR *LPCSTR;
typedef wchar_t WCHAR;
typedef WCHAR TCHAR;
typedef [string] WCHAR *LPWSTR;
typedef [string] TCHAR *LPTSTR;
typedef [string] const WCHAR *LPCWSTR;
typedef [string] const TCHAR *LPCTSTR;
typedef HANDLE *LPHANDLE;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#if !defined(OLE2ANSI)")
typedef WCHAR OLECHAR;
typedef [string] OLECHAR *LPOLESTR;
typedef [string] const OLECHAR *LPCOLESTR;
cpp_quote("")
cpp_quote("#define OLESTR(str) L##str")
cpp_quote("#else")
cpp_quote("typedef char OLECHAR;")
cpp_quote("typedef LPSTR LPOLESTR;")
cpp_quote("typedef LPCSTR LPCOLESTR;")
cpp_quote("")
cpp_quote("#define OLESTR(str) str")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _WINDEF_")
cpp_quote("#ifndef _MINWINDEF_")
typedef void *PVOID, *LPVOID;
typedef float FLOAT;
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
typedef unsigned char UCHAR;
typedef short SHORT;
typedef unsigned short USHORT;
typedef DWORD ULONG;
typedef double DOUBLE;
cpp_quote("#ifndef _DWORDLONG_")
typedef unsigned __int64 DWORDLONG;
typedef DWORDLONG *PDWORDLONG;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _ULONGLONG_")
typedef __int64 LONGLONG;
typedef unsigned __int64 ULONGLONG;
typedef LONGLONG *PLONGLONG;
typedef ULONGLONG *PULONGLONG;
cpp_quote("#endif")
cpp_quote("#if 0")
typedef struct _LARGE_INTEGER {
LONGLONG QuadPart;
} LARGE_INTEGER;
typedef LARGE_INTEGER *PLARGE_INTEGER;
typedef struct _ULARGE_INTEGER {
ULONGLONG QuadPart;
} ULARGE_INTEGER;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _WINBASE_")
cpp_quote("#ifndef _FILETIME_")
cpp_quote("#define _FILETIME_")
cpp_quote("")
typedef struct _FILETIME {
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME,*PFILETIME,*LPFILETIME;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _SYSTEMTIME_")
cpp_quote("#define _SYSTEMTIME_")
cpp_quote("")
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME,*PSYSTEMTIME,*LPSYSTEMTIME;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _SECURITY_ATTRIBUTES_")
cpp_quote("#define _SECURITY_ATTRIBUTES_")
cpp_quote("")
typedef struct _SECURITY_ATTRIBUTES {
DWORD nLength;
LPVOID lpSecurityDescriptor;
BOOL bInheritHandle;
} SECURITY_ATTRIBUTES,*PSECURITY_ATTRIBUTES,*LPSECURITY_ATTRIBUTES;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef SECURITY_DESCRIPTOR_REVISION")
typedef USHORT SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;
typedef PVOID PSID;
cpp_quote("")
typedef struct _ACL {
UCHAR AclRevision;
UCHAR Sbz1;
USHORT AclSize;
USHORT AceCount;
USHORT Sbz2;
} ACL;
cpp_quote("")
typedef ACL *PACL;
cpp_quote("")
typedef struct _SECURITY_DESCRIPTOR {
UCHAR Revision;
UCHAR Sbz1;
SECURITY_DESCRIPTOR_CONTROL Control;
PSID Owner;
PSID Group;
PACL Sacl;
PACL Dacl;
} SECURITY_DESCRIPTOR,*PISECURITY_DESCRIPTOR;
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
typedef struct _COAUTHIDENTITY {
[size_is (UserLength+1)] USHORT *User;
[range (0, 256)]ULONG UserLength;
[size_is (DomainLength+1)] USHORT *Domain;
[range (0, 256)]ULONG DomainLength;
[size_is (PasswordLength+1)] USHORT *Password;
[range (0, 256)]ULONG PasswordLength;
ULONG Flags;
} COAUTHIDENTITY;
cpp_quote("")
typedef struct _COAUTHINFO {
DWORD dwAuthnSvc;
DWORD dwAuthzSvc;
LPWSTR pwszServerPrincName;
DWORD dwAuthnLevel;
DWORD dwImpersonationLevel;
COAUTHIDENTITY *pAuthIdentityData;
DWORD dwCapabilities;
} COAUTHINFO;
cpp_quote("")
typedef LONG SCODE;
typedef SCODE *PSCODE;
cpp_quote("")
cpp_quote("#ifndef _HRESULT_DEFINED")
cpp_quote("#define _HRESULT_DEFINED")
#if defined (_STRICT_HRESULT)
typedef struct _HRESULT_STRUCT {
DWORD Data1;
} HRESULT_STRUCT,*PHRESULT_STRUCT;
typedef PHRESULT_STRUCT HRESULT;
#else
cpp_quote("#ifdef __WIDL__")
typedef LONG HRESULT;
cpp_quote("#else")
cpp_quote("typedef __LONG32 HRESULT;")
cpp_quote("#endif")
#endif
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __OBJECTID_DEFINED")
cpp_quote("#define __OBJECTID_DEFINED")
cpp_quote("#define _OBJECTID_DEFINED")
cpp_quote("")
typedef struct _OBJECTID {
GUID Lineage;
unsigned long Uniquifier;
} OBJECTID;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#if 0")
typedef GUID *REFGUID;
typedef IID *REFIID;
typedef CLSID *REFCLSID;
cpp_quote("#endif")
cpp_quote("")
typedef enum tagMEMCTX {
MEMCTX_TASK = 1,
MEMCTX_SHARED = 2,
MEMCTX_MACSYSTEM = 3,
MEMCTX_UNKNOWN = -1,
MEMCTX_SAME = -2,
} MEMCTX;
cpp_quote("#ifndef _ROTREGFLAGS_DEFINED")
cpp_quote("#define _ROTREGFLAGS_DEFINED")
cpp_quote("")
cpp_quote("#define ROTREGFLAGS_ALLOWANYCLIENT 0x1")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _APPIDREGFLAGS_DEFINED")
cpp_quote("#define _APPIDREGFLAGS_DEFINED")
cpp_quote("")
cpp_quote("#define APPIDREGFLAGS_ACTIVATE_IUSERVER_INDESKTOP 0x1")
cpp_quote("#define APPIDREGFLAGS_SECURE_SERVER_PROCESS_SD_AND_BIND 0x2")
cpp_quote("#define APPIDREGFLAGS_ISSUE_ACTIVATION_RPC_AT_IDENTIFY 0x4")
cpp_quote("#define APPIDREGFLAGS_IUSERVER_UNMODIFIED_LOGON_TOKEN 0x8")
cpp_quote("#define APPIDREGFLAGS_IUSERVER_SELF_SID_IN_LAUNCH_PERMISSION 0x10")
cpp_quote("#define APPIDREGFLAGS_IUSERVER_ACTIVATE_IN_CLIENT_SESSION_ONLY 0x20")
cpp_quote("#define APPIDREGFLAGS_RESERVED1 0x40")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _DCOMSCM_REMOTECALL_FLAGS_DEFINED")
cpp_quote("#define _DCOMSCM_REMOTECALL_FLAGS_DEFINED")
cpp_quote("")
cpp_quote("#define DCOMSCM_ACTIVATION_USE_ALL_AUTHNSERVICES 0x1")
cpp_quote("#define DCOMSCM_ACTIVATION_DISALLOW_UNSECURE_CALL 0x2")
cpp_quote("#define DCOMSCM_RESOLVE_USE_ALL_AUTHNSERVICES 0x4")
cpp_quote("#define DCOMSCM_RESOLVE_DISALLOW_UNSECURE_CALL 0x8")
cpp_quote("#define DCOMSCM_PING_USE_MID_AUTHNSERVICE 0x10")
cpp_quote("#define DCOMSCM_PING_DISALLOW_UNSECURE_CALL 0x20")
cpp_quote("#endif")
cpp_quote("")
typedef enum tagCLSCTX {
CLSCTX_INPROC_SERVER = 0x01,
CLSCTX_INPROC_HANDLER = 0x02,
CLSCTX_LOCAL_SERVER = 0x04,
CLSCTX_INPROC_SERVER16 = 0x08,
CLSCTX_REMOTE_SERVER = 0x10,
CLSCTX_INPROC_HANDLER16 = 0x20,
CLSCTX_RESERVED1 = 0x40,
CLSCTX_RESERVED2 = 0x80,
CLSCTX_RESERVED3 = 0x100,
CLSCTX_RESERVED4 = 0x200,
CLSCTX_NO_CODE_DOWNLOAD = 0x400,
CLSCTX_RESERVED5 = 0x800,
CLSCTX_NO_CUSTOM_MARSHAL = 0x1000,
CLSCTX_ENABLE_CODE_DOWNLOAD = 0x2000,
CLSCTX_NO_FAILURE_LOG = 0x4000,
CLSCTX_DISABLE_AAA = 0x8000,
CLSCTX_ENABLE_AAA = 0x10000,
CLSCTX_FROM_DEFAULT_CONTEXT = 0x20000,
CLSCTX_ACTIVATE_32_BIT_SERVER = 0x40000,
CLSCTX_ACTIVATE_64_BIT_SERVER = 0x80000,
CLSCTX_ENABLE_CLOAKING = 0x100000,
CLSCTX_APPCONTAINER = 0x400000,
CLSCTX_ACTIVATE_AAA_AS_IU = 0x800000,
CLSCTX_PS_DLL = (int) 0x80000000,
} CLSCTX;
cpp_quote("")
cpp_quote("#define CLSCTX_VALID_MASK (CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER | CLSCTX_INPROC_SERVER16 | CLSCTX_REMOTE_SERVER | CLSCTX_NO_CODE_DOWNLOAD | CLSCTX_NO_CUSTOM_MARSHAL | CLSCTX_ENABLE_CODE_DOWNLOAD | CLSCTX_NO_FAILURE_LOG | CLSCTX_DISABLE_AAA | CLSCTX_ENABLE_AAA | CLSCTX_FROM_DEFAULT_CONTEXT | CLSCTX_ACTIVATE_32_BIT_SERVER | CLSCTX_ACTIVATE_64_BIT_SERVER | CLSCTX_ENABLE_CLOAKING | CLSCTX_APPCONTAINER | CLSCTX_ACTIVATE_AAA_AS_IU | CLSCTX_PS_DLL)")
cpp_quote("")
typedef enum tagMSHLFLAGS {
MSHLFLAGS_NORMAL = 0,
MSHLFLAGS_TABLESTRONG = 1,
MSHLFLAGS_TABLEWEAK = 2,
MSHLFLAGS_NOPING = 4,
MSHLFLAGS_RESERVED1 = 8,
MSHLFLAGS_RESERVED2 = 16,
MSHLFLAGS_RESERVED3 = 32,
MSHLFLAGS_RESERVED4 = 64
} MSHLFLAGS;
cpp_quote("")
typedef enum tagMSHCTX {
MSHCTX_LOCAL = 0,
MSHCTX_NOSHAREDMEM = 1,
MSHCTX_DIFFERENTMACHINE = 2,
MSHCTX_INPROC = 3,
MSHCTX_CROSSCTX = 4
} MSHCTX;
cpp_quote("")
typedef struct _BYTE_BLOB {
unsigned long clSize;
[size_is (clSize)] byte abData[];
} BYTE_BLOB;
cpp_quote("")
typedef [unique] BYTE_BLOB *UP_BYTE_BLOB;
cpp_quote("")
typedef struct _WORD_BLOB {
unsigned long clSize;
[size_is (clSize)] unsigned short asData[];
} WORD_BLOB;
cpp_quote("")
typedef [unique] WORD_BLOB *UP_WORD_BLOB;
cpp_quote("")
typedef struct _DWORD_BLOB {
unsigned long clSize;
[size_is (clSize)] unsigned long alData[];
} DWORD_BLOB;
cpp_quote("")
typedef [unique] DWORD_BLOB *UP_DWORD_BLOB;
cpp_quote("")
typedef struct _FLAGGED_BYTE_BLOB {
unsigned long fFlags;
unsigned long clSize;
[size_is (clSize)] byte abData[];
} FLAGGED_BYTE_BLOB;
cpp_quote("")
typedef [unique] FLAGGED_BYTE_BLOB *UP_FLAGGED_BYTE_BLOB;
cpp_quote("")
typedef struct _FLAGGED_WORD_BLOB {
unsigned long fFlags;
unsigned long clSize;
[size_is (clSize)] unsigned short asData[];
} FLAGGED_WORD_BLOB;
cpp_quote("")
typedef [unique] FLAGGED_WORD_BLOB *UP_FLAGGED_WORD_BLOB;
cpp_quote("")
typedef struct _BYTE_SIZEDARR {
unsigned long clSize;
[size_is (clSize)] byte *pData;
} BYTE_SIZEDARR;
cpp_quote("")
typedef struct _SHORT_SIZEDARR {
unsigned long clSize;
[size_is (clSize)] unsigned short *pData;
} WORD_SIZEDARR;
cpp_quote("")
typedef struct _LONG_SIZEDARR {
unsigned long clSize;
[size_is (clSize)] unsigned long *pData;
} DWORD_SIZEDARR;
cpp_quote("")
typedef struct _HYPER_SIZEDARR {
unsigned long clSize;
[size_is (clSize)] hyper *pData;
} HYPER_SIZEDARR;
}
cpp_quote("")
typedef boolean BOOLEAN;
cpp_quote("#ifndef _tagBLOB_DEFINED")
cpp_quote("#define _tagBLOB_DEFINED")
cpp_quote("#define _BLOB_DEFINED")
cpp_quote("#define _LPBLOB_DEFINED")
cpp_quote("")
typedef struct tagBLOB {
ULONG cbSize;
[size_is (cbSize)] BYTE *pBlobData;
} BLOB,*LPBLOB;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef SID_IDENTIFIER_AUTHORITY_DEFINED")
cpp_quote("#define SID_IDENTIFIER_AUTHORITY_DEFINED")
typedef struct _SID_IDENTIFIER_AUTHORITY {
UCHAR Value[6];
} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef SID_DEFINED")
cpp_quote("#define SID_DEFINED")
cpp_quote("")
typedef struct _SID {
BYTE Revision;
BYTE SubAuthorityCount;
SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
[size_is (SubAuthorityCount)] ULONG SubAuthority[*];
} SID,*PISID;
cpp_quote("")
typedef struct _SID_AND_ATTRIBUTES {
SID *Sid;
DWORD Attributes;
} SID_AND_ATTRIBUTES,*PSID_AND_ATTRIBUTES;
cpp_quote("#endif")