Files
2021-11-09 11:32:03 -05:00

39679 lines
1.9 MiB
Plaintext

#pragma pack(push,_CRT_PACKING)
typedef __builtin_va_list __gnuc_va_list;
typedef __gnuc_va_list va_list;
#pragma pack(pop)
void __attribute__((__cdecl__)) __debugbreak(void);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void __attribute__((__cdecl__)) __debugbreak(void)
{
/*__asm__*/
}
const char *__mingw_get_crt_info (void);
#pragma pack(push,_CRT_PACKING)
typedef unsigned int size_t;
typedef int ssize_t;
typedef size_t rsize_t;
typedef int intptr_t;
typedef unsigned int uintptr_t;
typedef int ptrdiff_t;
typedef unsigned short wchar_t;
typedef unsigned short wint_t;
typedef unsigned short wctype_t;
typedef int errno_t;
typedef long __time32_t;
__extension__ typedef long long __time64_t;
typedef __time32_t time_t;
struct threadlocaleinfostruct;
struct threadmbcinfostruct;
typedef struct threadlocaleinfostruct *pthreadlocinfo;
typedef struct threadmbcinfostruct *pthreadmbcinfo;
struct __lc_time_data;
typedef struct localeinfo_struct {
pthreadlocinfo locinfo;
pthreadmbcinfo mbcinfo;
} _locale_tstruct,*_locale_t;
typedef struct tagLC_ID {
unsigned short wLanguage;
unsigned short wCountry;
unsigned short wCodePage;
} LC_ID,*LPLC_ID;
typedef struct threadlocaleinfostruct {
int refcount;
unsigned int lc_codepage;
unsigned int lc_collate_cp;
unsigned long lc_handle[6];
LC_ID lc_id[6];
struct {
char *locale;
wchar_t *wlocale;
int *refcount;
int *wrefcount;
} lc_category[6];
int lc_clike;
int mb_cur_max;
int *lconv_intl_refcount;
int *lconv_num_refcount;
int *lconv_mon_refcount;
struct lconv *lconv;
int *ctype1_refcount;
unsigned short *ctype1;
const unsigned short *pctype;
const unsigned char *pclmap;
const unsigned char *pcumap;
struct __lc_time_data *lc_time_curr;
} threadlocinfo;
#pragma pack(pop)
#pragma pack(push,_CRT_PACKING)
struct _EXCEPTION_POINTERS;
struct _EXCEPTION_RECORD;
struct _CONTEXT;
int __attribute__((__cdecl__)) _except_handler(struct _EXCEPTION_RECORD *_ExceptionRecord,void *_EstablisherFrame,struct _CONTEXT *_ContextRecord,void *_DispatcherContext);
unsigned long __attribute__((__cdecl__)) _exception_code(void);
void *__attribute__((__cdecl__)) _exception_info(void);
int __attribute__((__cdecl__)) _abnormal_termination(void);
typedef void (__attribute__((__cdecl__)) * _PHNDLR)(int);
struct _XCPT_ACTION {
unsigned long XcptNum;
int SigNum;
_PHNDLR XcptAction;
};
extern struct _XCPT_ACTION _XcptActTab[];
extern int _XcptActTabCount;
extern int _XcptActTabSize;
extern int _First_FPE_Indx;
extern int _Num_FPE;
int __attribute__((__cdecl__)) __CppXcptFilter(unsigned long _ExceptionNum,struct _EXCEPTION_POINTERS * _ExceptionPtr);
int __attribute__((__cdecl__)) _XcptFilter(unsigned long _ExceptionNum,struct _EXCEPTION_POINTERS * _ExceptionPtr);
typedef int (*PEXCEPTION_HANDLER)(struct _EXCEPTION_RECORD*, void*, struct _CONTEXT*, void*);
#pragma pack(pop)
typedef unsigned long ULONG;
typedef ULONG *PULONG;
typedef unsigned short USHORT;
typedef USHORT *PUSHORT;
typedef unsigned char UCHAR;
typedef UCHAR *PUCHAR;
typedef char *PSZ;
typedef int WINBOOL;
typedef int BOOL;
typedef WINBOOL *PBOOL;
typedef WINBOOL *LPBOOL;
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef unsigned long DWORD;
typedef float FLOAT;
typedef FLOAT *PFLOAT;
typedef BYTE *PBYTE;
typedef BYTE *LPBYTE;
typedef int *PINT;
typedef int *LPINT;
typedef WORD *PWORD;
typedef WORD *LPWORD;
typedef long *LPLONG;
typedef DWORD *PDWORD;
typedef DWORD *LPDWORD;
typedef void *LPVOID;
typedef const void *LPCVOID;
typedef int INT;
typedef unsigned int UINT;
typedef unsigned int *PUINT;
extern unsigned short ** _imp___pctype;
extern unsigned short ** _imp___wctype;
extern unsigned short ** _imp___pwctype;
extern const unsigned char __newclmap[];
extern const unsigned char __newcumap[];
extern pthreadlocinfo __ptlocinfo;
extern pthreadmbcinfo __ptmbcinfo;
extern int __globallocalestatus;
extern int __locale_changed;
extern struct threadlocaleinfostruct __initiallocinfo;
extern _locale_tstruct __initiallocalestructinfo;
pthreadlocinfo __attribute__((__cdecl__)) __updatetlocinfo(void);
pthreadmbcinfo __attribute__((__cdecl__)) __updatetmbcinfo(void);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isctype(int _C,int _Type);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isctype_l(int _C,int _Type,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isalpha(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isalpha_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isupper(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isupper_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) islower(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _islower_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isdigit(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isdigit_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isxdigit(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isxdigit_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isspace(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isspace_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) ispunct(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _ispunct_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isalnum(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isalnum_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isprint(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isprint_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isgraph(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isgraph_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) iscntrl(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iscntrl_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) toupper(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) tolower(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _tolower(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _tolower_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _toupper(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _toupper_l(int _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __isascii(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __toascii(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __iscsymf(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __iscsym(int _C);
int __attribute__((__cdecl__)) isblank(int _C);
int __attribute__((__cdecl__)) iswalpha(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswalpha_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswupper(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswupper_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswlower(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswlower_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswdigit(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswdigit_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswxdigit(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswxdigit_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswspace(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswspace_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswpunct(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswpunct_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswalnum(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswalnum_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswprint(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswprint_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswgraph(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswgraph_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswcntrl(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswcntrl_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswascii(wint_t _C);
int __attribute__((__cdecl__)) isleadbyte(int _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isleadbyte_l(int _C,_locale_t _Locale);
wint_t __attribute__((__cdecl__)) towupper(wint_t _C);
__attribute__ ((__dllimport__)) wint_t __attribute__((__cdecl__)) _towupper_l(wint_t _C,_locale_t _Locale);
wint_t __attribute__((__cdecl__)) towlower(wint_t _C);
__attribute__ ((__dllimport__)) wint_t __attribute__((__cdecl__)) _towlower_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) iswctype(wint_t _C,wctype_t _Type);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswctype_l(wint_t _C,wctype_t _Type,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __iswcsymf(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswcsymf_l(wint_t _C,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __iswcsym(wint_t _C);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswcsym_l(wint_t _C,_locale_t _Locale);
int __attribute__((__cdecl__)) is_wctype(wint_t _C,wctype_t _Type);
int __attribute__((__cdecl__)) iswblank(wint_t _C);
extern int * _imp____mb_cur_max;
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) ___mb_cur_max_func(void);
long _InterlockedAnd(long volatile *, long);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedAnd(volatile long *Destination, long Value) { return __sync_fetch_and_and(Destination, Value); }
long _InterlockedOr(long volatile *, long);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedOr(volatile long *Destination, long Value) { return __sync_fetch_and_or(Destination, Value); }
long _InterlockedXor(long volatile *, long);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedXor(volatile long *Destination, long Value) { return __sync_fetch_and_xor(Destination, Value); }
short _InterlockedIncrement16(short volatile *Addend);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
short _InterlockedIncrement16(short volatile *Addend) {
return __sync_add_and_fetch(Addend, 1);
}
short _InterlockedDecrement16(short volatile *Addend);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
short _InterlockedDecrement16(short volatile *Addend) {
return __sync_sub_and_fetch(Addend, 1);
}
short _InterlockedCompareExchange16(short volatile *Destination, short ExChange, short Comperand);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
short _InterlockedCompareExchange16(short volatile *Destination, short ExChange, short Comperand) {
return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
}
long _InterlockedExchangeAdd(long volatile *Addend, long Value);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedExchangeAdd(long volatile *Addend, long Value) {
return __sync_fetch_and_add(Addend, Value);
}
long _InterlockedCompareExchange(long volatile *Destination, long ExChange, long Comperand);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedCompareExchange(long volatile *Destination, long ExChange, long Comperand) {
return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
}
long _InterlockedIncrement(long volatile *Addend);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedIncrement(long volatile *Addend) {
return __sync_add_and_fetch(Addend, 1);
}
long _InterlockedDecrement(long volatile *Addend);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedDecrement(long volatile *Addend) {
return __sync_sub_and_fetch(Addend, 1);
}
long _InterlockedAdd(long volatile *Addend, long Value);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedAdd(long volatile *Addend, long Value) {
return __sync_add_and_fetch(Addend, Value);
}
__extension__ long long _InterlockedAdd64(long long volatile *Addend, long long Value);
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long long _InterlockedAdd64(long long volatile *Addend, long long Value) {
return __sync_add_and_fetch(Addend, Value);
}
long _InterlockedExchange(long volatile *Target, long Value);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long _InterlockedExchange(long volatile *Target, long Value) {
return __sync_lock_test_and_set(Target, Value);
}
__extension__ long long _InterlockedCompareExchange64(long long volatile *Destination, long long ExChange, long long Comperand);
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
long long _InterlockedCompareExchange64(long long volatile *Destination, long long ExChange, long long Comperand) {
return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
}
void *_InterlockedCompareExchangePointer(void * volatile *Destination, void *ExChange, void *Comperand);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void *_InterlockedCompareExchangePointer(void *volatile *Destination, void *ExChange, void *Comperand) {
return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
}
void *_InterlockedExchangePointer(void *volatile *Target,void *Value);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void *_InterlockedExchangePointer(void *volatile *Target,void *Value) {
return __sync_lock_test_and_set(Target, Value);
}
void __int2c(void);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __int2c(void) {
/*__asm__*/
}
void __stosb(unsigned char *, unsigned char, size_t);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __stosb(unsigned char *Dest, unsigned char Data, size_t Count) { /*__asm__*/ }
void __stosw(unsigned short *, unsigned short, size_t);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __stosw(unsigned short *Dest, unsigned short Data, size_t Count) { /*__asm__*/ }
void __stosd(unsigned long *, unsigned long, size_t);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __stosd(unsigned long *Dest, unsigned long Data, size_t Count) { /*__asm__*/ }
unsigned char _interlockedbittestandset(long volatile *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _interlockedbittestandset(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char _interlockedbittestandreset(long volatile *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _interlockedbittestandreset(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char _interlockedbittestandcomplement(long volatile *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _interlockedbittestandcomplement(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char InterlockedBitTestAndSet(volatile long *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char InterlockedBitTestAndSet(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char InterlockedBitTestAndReset(volatile long *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char InterlockedBitTestAndReset(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char InterlockedBitTestAndComplement(volatile long *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char InterlockedBitTestAndComplement(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char _BitScanForward(unsigned long *Index, unsigned long Mask);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _BitScanForward(unsigned long *Index, unsigned long Mask) { unsigned long n; unsigned char old; /*__asm__*/ *Index = n; return old; }
unsigned char _BitScanReverse(unsigned long *Index, unsigned long Mask);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _BitScanReverse(unsigned long *Index, unsigned long Mask) { unsigned long n; unsigned char old; /*__asm__*/ *Index = n; return old; }
unsigned char _bittest(long const *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _bittest(const long *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char _bittestandset(long *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _bittestandset(long *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char _bittestandreset(long *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _bittestandreset(long *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
unsigned char _bittestandcomplement(long *a, long b);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char _bittestandcomplement(long *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
void __movsb(unsigned char *Destination, unsigned char const *Source, size_t Count);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __movsb(unsigned char *Destination, unsigned char const *Source, size_t Count) { /*__asm__*/ }
void __movsw(unsigned short *Dest, unsigned short const *Source, size_t Count);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __movsw(unsigned short *Destination, unsigned short const *Source, size_t Count) { /*__asm__*/ }
void __movsd(unsigned long *Dest, unsigned long const *Source, size_t Count);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __movsd(unsigned long *Destination, unsigned long const *Source, size_t Count) { /*__asm__*/ }
unsigned char __readfsbyte(unsigned long Offset);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned char __readfsbyte(unsigned long Offset) { unsigned char ret; /*__asm__*/ return ret; }
unsigned short __readfsword(unsigned long Offset);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned short __readfsword(unsigned long Offset) { unsigned short ret; /*__asm__*/ return ret; }
unsigned long __readfsdword(unsigned long Offset);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
unsigned long __readfsdword(unsigned long Offset) { unsigned long ret; /*__asm__*/ return ret; }
void __writefsbyte(unsigned long Offset,unsigned char Data);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __writefsbyte(unsigned long Offset, unsigned char Data) { /*__asm__*/ }
void __writefsword(unsigned long Offset,unsigned short Data);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __writefsword(unsigned long Offset, unsigned short Data) { /*__asm__*/ }
void __writefsdword(unsigned long Offset,unsigned long Data);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
void __writefsdword(unsigned long Offset, unsigned long Data) { /*__asm__*/ }
typedef unsigned long POINTER_64_INT;
typedef signed char INT8,*PINT8;
typedef signed short INT16,*PINT16;
typedef signed int INT32,*PINT32;
__extension__ typedef signed long long INT64,*PINT64;
typedef unsigned char UINT8,*PUINT8;
typedef unsigned short UINT16,*PUINT16;
typedef unsigned int UINT32,*PUINT32;
__extension__ typedef unsigned long long UINT64,*PUINT64;
typedef signed int LONG32,*PLONG32;
typedef unsigned int ULONG32,*PULONG32;
typedef unsigned int DWORD32,*PDWORD32;
typedef int INT_PTR,*PINT_PTR;
typedef unsigned int UINT_PTR,*PUINT_PTR;
typedef long LONG_PTR,*PLONG_PTR;
typedef unsigned long ULONG_PTR,*PULONG_PTR;
typedef unsigned short UHALF_PTR,*PUHALF_PTR;
typedef short HALF_PTR,*PHALF_PTR;
typedef long SHANDLE_PTR;
typedef unsigned long HANDLE_PTR;
static __inline void * PtrToPtr64 (const void *p) { return ((void *) (ULONG_PTR) p); }
static __inline void *Ptr64ToPtr (const void * p) { return ((void *) (ULONG_PTR) p); }
static __inline void * HandleToHandle64 (const void *h) { return ((void *) (LONG_PTR) h); }
static __inline void *Handle64ToHandle (const void * h) { return ((void *) (ULONG_PTR) h); }
__extension__ typedef ULONG_PTR SIZE_T,*PSIZE_T;
__extension__ typedef LONG_PTR SSIZE_T,*PSSIZE_T;
__extension__ typedef ULONG_PTR DWORD_PTR,*PDWORD_PTR;
__extension__ typedef long long LONG64,*PLONG64;
__extension__ typedef unsigned long long ULONG64,*PULONG64;
__extension__ typedef unsigned long long DWORD64,*PDWORD64;
__extension__ typedef ULONG_PTR KAFFINITY;
__extension__ typedef KAFFINITY *PKAFFINITY;
typedef void *PVOID;
typedef void *PVOID64;
typedef char CHAR;
typedef short SHORT;
typedef long LONG;
typedef int INT;
typedef wchar_t WCHAR;
typedef WCHAR *PWCHAR,*LPWCH,*PWCH;
typedef const WCHAR *LPCWCH,*PCWCH;
typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR;
typedef PWSTR *PZPWSTR;
typedef const PWSTR *PCZPWSTR;
typedef WCHAR *LPUWSTR,*PUWSTR;
typedef const WCHAR *LPCWSTR,*PCWSTR;
typedef PCWSTR *PZPCWSTR;
typedef const WCHAR *LPCUWSTR,*PCUWSTR;
typedef WCHAR *PZZWSTR;
typedef const WCHAR *PCZZWSTR;
typedef WCHAR *PUZZWSTR;
typedef const WCHAR *PCUZZWSTR;
typedef WCHAR *PNZWCH;
typedef const WCHAR *PCNZWCH;
typedef WCHAR *PUNZWCH;
typedef const WCHAR *PCUNZWCH;
typedef CHAR *PCHAR,*LPCH,*PCH;
typedef const CHAR *LPCCH,*PCCH;
typedef CHAR *NPSTR,*LPSTR,*PSTR;
typedef PSTR *PZPSTR;
typedef const PSTR *PCZPSTR;
typedef const CHAR *LPCSTR,*PCSTR;
typedef PCSTR *PZPCSTR;
typedef CHAR *PZZSTR;
typedef const CHAR *PCZZSTR;
typedef CHAR *PNZCH;
typedef const CHAR *PCNZCH;
typedef char TCHAR, *PTCHAR;
typedef unsigned char TBYTE, *PTBYTE;
typedef LPSTR LPTCH,PTCH;
typedef LPCCH LPCTCH,PCTCH;
typedef LPSTR PTSTR,LPTSTR,PUTSTR,LPUTSTR;
typedef LPCSTR PCTSTR,LPCTSTR,PCUTSTR,LPCUTSTR;
typedef PZZSTR PZZTSTR, PUZZTSTR;
typedef PCZZSTR PCZZTSTR, PCUZZTSTR;
typedef PZPSTR PZPTSTR;
typedef PNZCH PNZTCH, PUNZTCH;
typedef PCNZCH PCNZTCH, PCUNZTCH;
typedef SHORT *PSHORT;
typedef LONG *PLONG;
typedef struct _GROUP_AFFINITY {
KAFFINITY Mask;
WORD Group;
WORD Reserved[3];
} GROUP_AFFINITY, *PGROUP_AFFINITY;
typedef void *HANDLE;
typedef HANDLE *PHANDLE;
typedef BYTE FCHAR;
typedef WORD FSHORT;
typedef DWORD FLONG;
typedef LONG HRESULT;
typedef char CCHAR;
typedef DWORD LCID;
typedef PDWORD PLCID;
typedef WORD LANGID;
typedef enum {
UNSPECIFIED_COMPARTMENT_ID = 0,
DEFAULT_COMPARTMENT_ID
} COMPARTMENT_ID,*PCOMPARTMENT_ID;
typedef struct _FLOAT128 {
__extension__ long long LowPart;
__extension__ long long HighPart;
} FLOAT128;
typedef FLOAT128 *PFLOAT128;
__extension__ typedef long long LONGLONG;
__extension__ typedef unsigned long long ULONGLONG;
typedef LONGLONG *PLONGLONG;
typedef ULONGLONG *PULONGLONG;
typedef LONGLONG USN;
typedef union _LARGE_INTEGER {
__extension__ struct {
DWORD LowPart;
LONG HighPart;
} ;
struct {
DWORD LowPart;
LONG HighPart;
} u;
LONGLONG QuadPart;
} LARGE_INTEGER;
typedef LARGE_INTEGER *PLARGE_INTEGER;
typedef union _ULARGE_INTEGER {
__extension__ struct {
DWORD LowPart;
DWORD HighPart;
} ;
struct {
DWORD LowPart;
DWORD HighPart;
} u;
ULONGLONG QuadPart;
} ULARGE_INTEGER;
typedef ULARGE_INTEGER *PULARGE_INTEGER;
typedef struct _LUID {
DWORD LowPart;
LONG HighPart;
} LUID,*PLUID;
typedef ULONGLONG DWORDLONG;
typedef DWORDLONG *PDWORDLONG;
unsigned int __attribute__((__cdecl__)) _rotl(unsigned int Value,int Shift);
unsigned int __attribute__((__cdecl__)) _rotr(unsigned int Value,int Shift);
__extension__ unsigned long long __attribute__((__cdecl__)) _rotl64(unsigned long long Value,int Shift);
__extension__ unsigned long long __attribute__((__cdecl__)) _rotr64(unsigned long long Value,int Shift);
typedef BYTE BOOLEAN;
typedef BOOLEAN *PBOOLEAN;
typedef struct _LIST_ENTRY {
struct _LIST_ENTRY *Flink;
struct _LIST_ENTRY *Blink;
} LIST_ENTRY,*PLIST_ENTRY,* PRLIST_ENTRY;
typedef struct _SINGLE_LIST_ENTRY {
struct _SINGLE_LIST_ENTRY *Next;
} SINGLE_LIST_ENTRY,*PSINGLE_LIST_ENTRY;
typedef struct LIST_ENTRY32 {
DWORD Flink;
DWORD Blink;
} LIST_ENTRY32;
typedef LIST_ENTRY32 *PLIST_ENTRY32;
typedef struct LIST_ENTRY64 {
ULONGLONG Flink;
ULONGLONG Blink;
} LIST_ENTRY64;
typedef LIST_ENTRY64 *PLIST_ENTRY64;
typedef struct _GUID {
unsigned long Data1;
unsigned short Data2;
unsigned short Data3;
unsigned char Data4[8];
} GUID;
typedef GUID *LPGUID;
typedef const GUID *LPCGUID;
typedef GUID IID;
typedef IID *LPIID;
typedef GUID CLSID;
typedef CLSID *LPCLSID;
typedef GUID FMTID;
typedef FMTID *LPFMTID;
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _memccpy(void *_Dst,const void *_Src,int _Val,size_t _MaxCount);
void *__attribute__((__cdecl__)) memchr(const void *_Buf ,int _Val,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _memicmp(const void *_Buf1,const void *_Buf2,size_t _Size);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _memicmp_l(const void *_Buf1,const void *_Buf2,size_t _Size,_locale_t _Locale);
int __attribute__((__cdecl__)) memcmp(const void *_Buf1,const void *_Buf2,size_t _Size);
void * __attribute__((__cdecl__)) memcpy(void * __restrict__ _Dst,const void * __restrict__ _Src,size_t _Size) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) memcpy_s (void *_dest,size_t _numberOfElements,const void *_src,size_t _count);
void * __attribute__((__cdecl__)) mempcpy (void *_Dst, const void *_Src, size_t _Size);
void * __attribute__((__cdecl__)) memset(void *_Dst,int _Val,size_t _Size);
void * __attribute__((__cdecl__)) memccpy(void *_Dst,const void *_Src,int _Val,size_t _Size) ;
int __attribute__((__cdecl__)) memicmp(const void *_Buf1,const void *_Buf2,size_t _Size) ;
char * __attribute__((__cdecl__)) _strset(char *_Str,int _Val) ;
char * __attribute__((__cdecl__)) _strset_l(char *_Str,int _Val,_locale_t _Locale) ;
char * __attribute__((__cdecl__)) strcpy(char * __restrict__ _Dest,const char * __restrict__ _Source);
char * __attribute__((__cdecl__)) strcat(char * __restrict__ _Dest,const char * __restrict__ _Source);
int __attribute__((__cdecl__)) strcmp(const char *_Str1,const char *_Str2);
size_t __attribute__((__cdecl__)) strlen(const char *_Str);
size_t __attribute__((__cdecl__)) strnlen(const char *_Str,size_t _MaxCount);
void *__attribute__((__cdecl__)) memmove(void *_Dst,const void *_Src,size_t _Size) ;
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strdup(const char *_Src);
char *__attribute__((__cdecl__)) strchr(const char *_Str,int _Val);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _stricmp(const char *_Str1,const char *_Str2);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strcmpi(const char *_Str1,const char *_Str2);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _stricmp_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
int __attribute__((__cdecl__)) strcoll(const char *_Str1,const char *_Str2);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strcoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _stricoll(const char *_Str1,const char *_Str2);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _stricoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strncoll (const char *_Str1,const char *_Str2,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strncoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strnicoll (const char *_Str1,const char *_Str2,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strnicoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
size_t __attribute__((__cdecl__)) strcspn(const char *_Str,const char *_Control);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strerror(const char *_ErrMsg) ;
char *__attribute__((__cdecl__)) strerror(int) ;
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strlwr(char *_String) ;
char *strlwr_l(char *_String,_locale_t _Locale) ;
char *__attribute__((__cdecl__)) strncat(char * __restrict__ _Dest,const char * __restrict__ _Source,size_t _Count) ;
int __attribute__((__cdecl__)) strncmp(const char *_Str1,const char *_Str2,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strnicmp(const char *_Str1,const char *_Str2,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strnicmp_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
char *strncpy(char * __restrict__ _Dest,const char * __restrict__ _Source,size_t _Count) ;
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strnset(char *_Str,int _Val,size_t _MaxCount) ;
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strnset_l(char *str,int c,size_t count,_locale_t _Locale) ;
char *__attribute__((__cdecl__)) strpbrk(const char *_Str,const char *_Control);
char *__attribute__((__cdecl__)) strrchr(const char *_Str,int _Ch);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strrev(char *_Str);
size_t __attribute__((__cdecl__)) strspn(const char *_Str,const char *_Control);
char *__attribute__((__cdecl__)) strstr(const char *_Str,const char *_SubStr);
char *__attribute__((__cdecl__)) strtok(char * __restrict__ _Str,const char * __restrict__ _Delim) ;
char *strtok_r(char * __restrict__ _Str, const char * __restrict__ _Delim, char ** __restrict__ __last);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strupr(char *_String) ;
__attribute__ ((__dllimport__)) char *_strupr_l(char *_String,_locale_t _Locale) ;
size_t __attribute__((__cdecl__)) strxfrm(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _strxfrm_l(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);
char *__attribute__((__cdecl__)) strdup(const char *_Src) ;
int __attribute__((__cdecl__)) strcmpi(const char *_Str1,const char *_Str2) ;
int __attribute__((__cdecl__)) stricmp(const char *_Str1,const char *_Str2) ;
char *__attribute__((__cdecl__)) strlwr(char *_Str) ;
int __attribute__((__cdecl__)) strnicmp(const char *_Str1,const char *_Str,size_t _MaxCount) ;
int __attribute__((__cdecl__)) strncasecmp (const char *, const char *, size_t);
int __attribute__((__cdecl__)) strcasecmp (const char *, const char *);
char *__attribute__((__cdecl__)) strnset(char *_Str,int _Val,size_t _MaxCount) ;
char *__attribute__((__cdecl__)) strrev(char *_Str) ;
char *__attribute__((__cdecl__)) strset(char *_Str,int _Val) ;
char *__attribute__((__cdecl__)) strupr(char *_Str) ;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsdup(const wchar_t *_Str);
wchar_t *__attribute__((__cdecl__)) wcscat(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source) ;
wchar_t *__attribute__((__cdecl__)) wcschr(const wchar_t *_Str,wchar_t _Ch);
int __attribute__((__cdecl__)) wcscmp(const wchar_t *_Str1,const wchar_t *_Str2);
wchar_t *__attribute__((__cdecl__)) wcscpy(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source) ;
size_t __attribute__((__cdecl__)) wcscspn(const wchar_t *_Str,const wchar_t *_Control);
size_t __attribute__((__cdecl__)) wcslen(const wchar_t *_Str);
size_t __attribute__((__cdecl__)) wcsnlen(const wchar_t *_Src,size_t _MaxCount);
wchar_t *wcsncat(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _Count) ;
int __attribute__((__cdecl__)) wcsncmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
wchar_t *wcsncpy(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _Count) ;
wchar_t *__attribute__((__cdecl__)) _wcsncpy_l(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _Count,_locale_t _Locale) ;
wchar_t *__attribute__((__cdecl__)) wcspbrk(const wchar_t *_Str,const wchar_t *_Control);
wchar_t *__attribute__((__cdecl__)) wcsrchr(const wchar_t *_Str,wchar_t _Ch);
size_t __attribute__((__cdecl__)) wcsspn(const wchar_t *_Str,const wchar_t *_Control);
wchar_t *__attribute__((__cdecl__)) wcsstr(const wchar_t *_Str,const wchar_t *_SubStr);
wchar_t *__attribute__((__cdecl__)) wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) ;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcserror(int _ErrNum) ;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) __wcserror(const wchar_t *_Str) ;
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsicmp(const wchar_t *_Str1,const wchar_t *_Str2);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsicmp_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsnicmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsnicmp_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsnset(wchar_t *_Str,wchar_t _Val,size_t _MaxCount) ;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsrev(wchar_t *_Str);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsset(wchar_t *_Str,wchar_t _Val) ;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcslwr(wchar_t *_String) ;
__attribute__ ((__dllimport__)) wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale) ;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsupr(wchar_t *_String) ;
__attribute__ ((__dllimport__)) wchar_t *_wcsupr_l(wchar_t *_String,_locale_t _Locale) ;
size_t __attribute__((__cdecl__)) wcsxfrm(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _wcsxfrm_l(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);
int __attribute__((__cdecl__)) wcscoll(const wchar_t *_Str1,const wchar_t *_Str2);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsncoll(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsncoll_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsnicoll(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsnicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
wchar_t *__attribute__((__cdecl__)) wcsdup(const wchar_t *_Str) ;
int __attribute__((__cdecl__)) wcsicmp(const wchar_t *_Str1,const wchar_t *_Str2) ;
int __attribute__((__cdecl__)) wcsnicmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount) ;
wchar_t *__attribute__((__cdecl__)) wcsnset(wchar_t *_Str,wchar_t _Val,size_t _MaxCount) ;
wchar_t *__attribute__((__cdecl__)) wcsrev(wchar_t *_Str) ;
wchar_t *__attribute__((__cdecl__)) wcsset(wchar_t *_Str,wchar_t _Val) ;
wchar_t *__attribute__((__cdecl__)) wcslwr(wchar_t *_Str) ;
wchar_t *__attribute__((__cdecl__)) wcsupr(wchar_t *_Str) ;
int __attribute__((__cdecl__)) wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2) ;
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strset_s(char *_Dst,size_t _DstSize,int _Value);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strerror_s(char *_Buf,size_t _SizeInBytes,const char *_ErrMsg);
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) strerror_s(char *_Buf,size_t _SizeInBytes,int _ErrNum);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strlwr_s(char *_Str,size_t _Size);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strlwr_s_l(char *_Str,size_t _Size,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strnset_s(char *_Str,size_t _Size,int _Val,size_t _MaxCount);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strupr_s(char *_Str,size_t _Size);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strupr_s_l(char *_Str,size_t _Size,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) strncat_s(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strncat_s_l(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) strcpy_s(char *_Dst, rsize_t _SizeInBytes, const char *_Src);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) strncpy_s(char *_Dst, size_t _DstSizeInChars, const char *_Src, size_t _MaxCount);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strncpy_s_l(char *_Dst, size_t _DstSizeInChars, const char *_Src, size_t _MaxCount, _locale_t _Locale);
;
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) strtok_s(char *_Str,const char *_Delim,char **_Context);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strtok_s_l(char *_Str,const char *_Delim,char **_Context,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) strcat_s(char *_Dst, rsize_t _SizeInBytes, const char * _Src);
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) memmove_s(void *_dest,size_t _numberOfElements,const void *_src,size_t _count);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) wcstok_s(wchar_t *_Str,const wchar_t *_Delim,wchar_t **_Context);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcserror_s(wchar_t *_Buf,size_t _SizeInWords,int _ErrNum);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) __wcserror_s(wchar_t *_Buffer,size_t _SizeInWords,const wchar_t *_ErrMsg);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsnset_s(wchar_t *_Dst,size_t _DstSizeInWords,wchar_t _Val,size_t _MaxCount);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsset_s(wchar_t *_Str,size_t _SizeInWords,wchar_t _Val);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcslwr_s(wchar_t *_Str,size_t _SizeInWords);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcslwr_s_l(wchar_t *_Str,size_t _SizeInWords,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsupr_s(wchar_t *_Str,size_t _Size);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsupr_s_l(wchar_t *_Str,size_t _Size,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcscpy_s(wchar_t *_Dst, rsize_t _SizeInWords, const wchar_t *_Src);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcscat_s(wchar_t * _Dst, rsize_t _SizeInWords, const wchar_t *_Src);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcsncat_s(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsncat_s_l(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcsncpy_s(wchar_t *_Dst, size_t _DstSizeInChars, const wchar_t *_Src, size_t _MaxCount);
;
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsncpy_s_l(wchar_t *_Dst, size_t _DstSizeInChars, const wchar_t *_Src, size_t _MaxCount, _locale_t _Locale);
;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcstok_s_l(wchar_t *_Str,const wchar_t *_Delim,wchar_t **_Context,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsset_s_l(wchar_t *_Str,size_t _SizeInChars,unsigned int _Val,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsnset_s_l(wchar_t *_Str,size_t _SizeInChars,unsigned int _Val, size_t _Count,_locale_t _Locale);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) size_t __attribute__((__cdecl__)) wcsnlen_s(const wchar_t * _src, size_t _count) {
return _src ? wcsnlen(_src, _count) : 0;
}
typedef struct _OBJECTID {
GUID Lineage;
DWORD Uniquifier;
} OBJECTID;
typedef int __attribute__((__stdcall__)) EXCEPTION_ROUTINE (struct _EXCEPTION_RECORD *ExceptionRecord, PVOID EstablisherFrame, struct _CONTEXT *ContextRecord, PVOID DispatcherContext);
typedef EXCEPTION_ROUTINE *PEXCEPTION_ROUTINE;
typedef ULONG_PTR KSPIN_LOCK;
typedef KSPIN_LOCK *PKSPIN_LOCK;
typedef struct __attribute__ ((__aligned__ (16))) _M128A {
ULONGLONG Low;
LONGLONG High;
} M128A,*PM128A;
typedef struct __attribute__ ((__aligned__ (16))) _XSAVE_FORMAT {
WORD ControlWord;
WORD StatusWord;
BYTE TagWord;
BYTE Reserved1;
WORD ErrorOpcode;
DWORD ErrorOffset;
WORD ErrorSelector;
WORD Reserved2;
DWORD DataOffset;
WORD DataSelector;
WORD Reserved3;
DWORD MxCsr;
DWORD MxCsr_Mask;
M128A FloatRegisters[8];
M128A XmmRegisters[8];
BYTE Reserved4[220];
DWORD Cr0NpxState;
} XSAVE_FORMAT,*PXSAVE_FORMAT;
typedef struct __attribute__ ((__aligned__ (8))) _XSAVE_AREA_HEADER {
DWORD64 Mask;
DWORD64 Reserved[7];
} XSAVE_AREA_HEADER,*PXSAVE_AREA_HEADER;
typedef struct __attribute__ ((__aligned__ (16))) _XSAVE_AREA {
XSAVE_FORMAT LegacyState;
XSAVE_AREA_HEADER Header;
} XSAVE_AREA,*PXSAVE_AREA;
typedef struct _XSTATE_CONTEXT {
DWORD64 Mask;
DWORD Length;
DWORD Reserved1;
PXSAVE_AREA Area;
DWORD Reserved2;
PVOID Buffer;
DWORD Reserved3;
} XSTATE_CONTEXT,*PXSTATE_CONTEXT;
typedef struct _SCOPE_TABLE_AMD64 {
DWORD Count;
struct {
DWORD BeginAddress;
DWORD EndAddress;
DWORD HandlerAddress;
DWORD JumpTarget;
} ScopeRecord[1];
} SCOPE_TABLE_AMD64,*PSCOPE_TABLE_AMD64;
void MemoryBarrier(void);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void MemoryBarrier(void)
{ unsigned char Barrier; /*__asm__*/ }
struct _TEB *NtCurrentTeb(void);
PVOID GetCurrentFiber(void);
PVOID GetFiberData(void);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) struct _TEB *NtCurrentTeb(void)
{
return (struct _TEB *)__readfsdword(0x18);
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) PVOID GetCurrentFiber(void)
{
return(PVOID)__readfsdword(0x10);
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) PVOID GetFiberData(void)
{
return *(PVOID *)GetCurrentFiber();
}
typedef struct _FLOATING_SAVE_AREA {
DWORD ControlWord;
DWORD StatusWord;
DWORD TagWord;
DWORD ErrorOffset;
DWORD ErrorSelector;
DWORD DataOffset;
DWORD DataSelector;
BYTE RegisterArea[80];
DWORD Cr0NpxState;
} FLOATING_SAVE_AREA;
typedef FLOATING_SAVE_AREA *PFLOATING_SAVE_AREA;
typedef struct _CONTEXT {
DWORD ContextFlags;
DWORD Dr0;
DWORD Dr1;
DWORD Dr2;
DWORD Dr3;
DWORD Dr6;
DWORD Dr7;
FLOATING_SAVE_AREA FloatSave;
DWORD SegGs;
DWORD SegFs;
DWORD SegEs;
DWORD SegDs;
DWORD Edi;
DWORD Esi;
DWORD Ebx;
DWORD Edx;
DWORD Ecx;
DWORD Eax;
DWORD Ebp;
DWORD Eip;
DWORD SegCs;
DWORD EFlags;
DWORD Esp;
DWORD SegSs;
BYTE ExtendedRegisters[512];
} CONTEXT;
typedef CONTEXT *PCONTEXT;
typedef struct _LDT_ENTRY {
WORD LimitLow;
WORD BaseLow;
union {
struct {
BYTE BaseMid;
BYTE Flags1;
BYTE Flags2;
BYTE BaseHi;
} Bytes;
struct {
DWORD BaseMid : 8;
DWORD Type : 5;
DWORD Dpl : 2;
DWORD Pres : 1;
DWORD LimitHi : 4;
DWORD Sys : 1;
DWORD Reserved_0 : 1;
DWORD Default_Big : 1;
DWORD Granularity : 1;
DWORD BaseHi : 8;
} Bits;
} HighWord;
} LDT_ENTRY,*PLDT_ENTRY;
typedef struct _EXCEPTION_RECORD {
DWORD ExceptionCode;
DWORD ExceptionFlags;
struct _EXCEPTION_RECORD *ExceptionRecord;
PVOID ExceptionAddress;
DWORD NumberParameters;
ULONG_PTR ExceptionInformation[15];
} EXCEPTION_RECORD;
typedef EXCEPTION_RECORD *PEXCEPTION_RECORD;
typedef struct _EXCEPTION_RECORD32 {
DWORD ExceptionCode;
DWORD ExceptionFlags;
DWORD ExceptionRecord;
DWORD ExceptionAddress;
DWORD NumberParameters;
DWORD ExceptionInformation[15];
} EXCEPTION_RECORD32,*PEXCEPTION_RECORD32;
typedef struct _EXCEPTION_RECORD64 {
DWORD ExceptionCode;
DWORD ExceptionFlags;
DWORD64 ExceptionRecord;
DWORD64 ExceptionAddress;
DWORD NumberParameters;
DWORD __unusedAlignment;
DWORD64 ExceptionInformation[15];
} EXCEPTION_RECORD64,*PEXCEPTION_RECORD64;
typedef struct _EXCEPTION_POINTERS {
PEXCEPTION_RECORD ExceptionRecord;
PCONTEXT ContextRecord;
} EXCEPTION_POINTERS,*PEXCEPTION_POINTERS;
typedef PVOID PACCESS_TOKEN;
typedef PVOID PSECURITY_DESCRIPTOR;
typedef PVOID PSID;
typedef PVOID PCLAIMS_BLOB;
typedef DWORD ACCESS_MASK;
typedef ACCESS_MASK *PACCESS_MASK;
typedef struct _GENERIC_MAPPING {
ACCESS_MASK GenericRead;
ACCESS_MASK GenericWrite;
ACCESS_MASK GenericExecute;
ACCESS_MASK GenericAll;
} GENERIC_MAPPING;
typedef GENERIC_MAPPING *PGENERIC_MAPPING;
#pragma pack(push,4)
typedef struct _LUID_AND_ATTRIBUTES {
LUID Luid;
DWORD Attributes;
} LUID_AND_ATTRIBUTES,*PLUID_AND_ATTRIBUTES;
typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[1];
typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY;
#pragma pack(pop)
typedef struct _SID_IDENTIFIER_AUTHORITY {
BYTE Value[6];
} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY;
typedef struct _SID {
BYTE Revision;
BYTE SubAuthorityCount;
SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
DWORD SubAuthority[1];
} SID,*PISID;
typedef enum _SID_NAME_USE {
SidTypeUser = 1,SidTypeGroup,SidTypeDomain,SidTypeAlias,SidTypeWellKnownGroup,SidTypeDeletedAccount,SidTypeInvalid,SidTypeUnknown,SidTypeComputer,SidTypeLabel,SidTypeLogonSession
} SID_NAME_USE,*PSID_NAME_USE;
typedef struct _SID_AND_ATTRIBUTES {
PSID Sid;
DWORD Attributes;
} SID_AND_ATTRIBUTES,*PSID_AND_ATTRIBUTES;
typedef SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES_ARRAY[1];
typedef SID_AND_ATTRIBUTES_ARRAY *PSID_AND_ATTRIBUTES_ARRAY;
typedef ULONG_PTR SID_HASH_ENTRY, *PSID_HASH_ENTRY;
typedef struct _SID_AND_ATTRIBUTES_HASH {
DWORD SidCount;
PSID_AND_ATTRIBUTES SidAttr;
SID_HASH_ENTRY Hash[32];
} SID_AND_ATTRIBUTES_HASH, *PSID_AND_ATTRIBUTES_HASH;
typedef enum {
WinNullSid = 0,WinWorldSid = 1,WinLocalSid = 2,WinCreatorOwnerSid = 3,
WinCreatorGroupSid = 4,WinCreatorOwnerServerSid = 5,
WinCreatorGroupServerSid = 6,WinNtAuthoritySid = 7,WinDialupSid = 8,
WinNetworkSid = 9,WinBatchSid = 10,WinInteractiveSid = 11,
WinServiceSid = 12,WinAnonymousSid = 13,WinProxySid = 14,
WinEnterpriseControllersSid = 15,WinSelfSid = 16,
WinAuthenticatedUserSid = 17,WinRestrictedCodeSid = 18,
WinTerminalServerSid = 19,WinRemoteLogonIdSid = 20,WinLogonIdsSid = 21,
WinLocalSystemSid = 22,WinLocalServiceSid = 23,WinNetworkServiceSid = 24,
WinBuiltinDomainSid = 25,WinBuiltinAdministratorsSid = 26,
WinBuiltinUsersSid = 27,WinBuiltinGuestsSid = 28,
WinBuiltinPowerUsersSid = 29,WinBuiltinAccountOperatorsSid = 30,
WinBuiltinSystemOperatorsSid = 31,WinBuiltinPrintOperatorsSid = 32,
WinBuiltinBackupOperatorsSid = 33,WinBuiltinReplicatorSid = 34,
WinBuiltinPreWindows2000CompatibleAccessSid = 35,
WinBuiltinRemoteDesktopUsersSid = 36,
WinBuiltinNetworkConfigurationOperatorsSid = 37,
WinAccountAdministratorSid = 38,WinAccountGuestSid = 39,
WinAccountKrbtgtSid = 40,WinAccountDomainAdminsSid = 41,
WinAccountDomainUsersSid = 42,WinAccountDomainGuestsSid = 43,
WinAccountComputersSid = 44,WinAccountControllersSid = 45,
WinAccountCertAdminsSid = 46,WinAccountSchemaAdminsSid = 47,
WinAccountEnterpriseAdminsSid = 48,WinAccountPolicyAdminsSid = 49,
WinAccountRasAndIasServersSid = 50,WinNTLMAuthenticationSid = 51,
WinDigestAuthenticationSid = 52,WinSChannelAuthenticationSid = 53,
WinThisOrganizationSid = 54,WinOtherOrganizationSid = 55,
WinBuiltinIncomingForestTrustBuildersSid = 56,
WinBuiltinPerfMonitoringUsersSid = 57,WinBuiltinPerfLoggingUsersSid = 58,
WinBuiltinAuthorizationAccessSid = 59,
WinBuiltinTerminalServerLicenseServersSid = 60,
WinBuiltinDCOMUsersSid = 61,WinBuiltinIUsersSid = 62,
WinIUserSid = 63, WinBuiltinCryptoOperatorsSid = 64,
WinUntrustedLabelSid = 65, WinLowLabelSid = 66, WinMediumLabelSid = 67,
WinHighLabelSid = 68, WinSystemLabelSid = 69, WinWriteRestrictedCodeSid = 70,
WinCreatorOwnerRightsSid = 71, WinCacheablePrincipalsGroupSid = 72,
WinNonCacheablePrincipalsGroupSid = 73, WinEnterpriseReadonlyControllersSid = 74,
WinAccountReadonlyControllersSid = 75, WinBuiltinEventLogReadersGroup = 76,
WinNewEnterpriseReadonlyControllersSid = 77, WinBuiltinCertSvcDComAccessGroup = 78,
WinMediumPlusLabelSid = 79, WinLocalLogonSid = 80, WinConsoleLogonSid = 81,
WinThisOrganizationCertificateSid = 82, WinApplicationPackageAuthoritySid = 83,
WinBuiltinAnyPackageSid = 84, WinCapabilityInternetClientSid = 85,
WinCapabilityInternetClientServerSid = 86,
WinCapabilityPrivateNetworkClientServerSid = 87,
WinCapabilityPicturesLibrarySid = 88, WinCapabilityVideosLibrarySid = 89,
WinCapabilityMusicLibrarySid = 90, WinCapabilityDocumentsLibrarySid = 91,
WinCapabilitySharedUserCertificatesSid = 92, WinCapabilityEnterpriseAuthenticationSid = 93,
WinCapabilityRemovableStorageSid = 94, WinBuiltinRDSRemoteAccessServersSid = 95,
WinBuiltinRDSEndpointServersSid = 96, WinBuiltinRDSManagementServersSid = 97,
WinUserModeDriversSid = 98, WinBuiltinHyperVAdminsSid = 99,
WinAccountCloneableControllersSid = 100,
WinBuiltinAccessControlAssistanceOperatorsSid = 101,
WinBuiltinRemoteManagementUsersSid = 102, WinAuthenticationAuthorityAssertedSid = 103,
WinAuthenticationServiceAssertedSid = 104,
WinLocalAccountSid = 105,
WinLocalAccountAndAdministratorSid = 106,
WinAccountProtectedUsersSid = 107,
WinCapabilityAppointmentsSid = 108,
WinCapabilityContactsSid = 109,
WinAccountDefaultSystemManagedSid = 110,
WinBuiltinDefaultSystemManagedGroupSid = 111,
WinBuiltinStorageReplicaAdminsSid = 112,
WinAccountKeyAdminsSid = 113,
WinAccountEnterpriseKeyAdminsSid = 114,
WinAuthenticationKeyTrustSid = 115,
WinAuthenticationKeyPropertyMFASid = 116,
WinAuthenticationKeyPropertyAttestationSid = 117
} WELL_KNOWN_SID_TYPE;
typedef struct _ACL {
BYTE AclRevision;
BYTE Sbz1;
WORD AclSize;
WORD AceCount;
WORD Sbz2;
} ACL;
typedef ACL *PACL;
typedef struct _ACE_HEADER {
BYTE AceType;
BYTE AceFlags;
WORD AceSize;
} ACE_HEADER;
typedef ACE_HEADER *PACE_HEADER;
typedef struct _ACCESS_ALLOWED_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} ACCESS_ALLOWED_ACE;
typedef ACCESS_ALLOWED_ACE *PACCESS_ALLOWED_ACE;
typedef struct _ACCESS_DENIED_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} ACCESS_DENIED_ACE;
typedef ACCESS_DENIED_ACE *PACCESS_DENIED_ACE;
typedef struct _SYSTEM_AUDIT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} SYSTEM_AUDIT_ACE;
typedef SYSTEM_AUDIT_ACE *PSYSTEM_AUDIT_ACE;
typedef struct _SYSTEM_ALARM_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} SYSTEM_ALARM_ACE;
typedef SYSTEM_ALARM_ACE *PSYSTEM_ALARM_ACE;
typedef struct _SYSTEM_RESOURCE_ATTRIBUTE_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} SYSTEM_RESOURCE_ATTRIBUTE_ACE,*PSYSTEM_RESOURCE_ATTRIBUTE_ACE;
typedef struct _SYSTEM_SCOPED_POLICY_ID_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} SYSTEM_SCOPED_POLICY_ID_ACE,*PSYSTEM_SCOPED_POLICY_ID_ACE;
typedef struct _SYSTEM_MANDATORY_LABEL_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} SYSTEM_MANDATORY_LABEL_ACE, *PSYSTEM_MANDATORY_LABEL_ACE;
typedef struct _ACCESS_ALLOWED_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} ACCESS_ALLOWED_OBJECT_ACE,*PACCESS_ALLOWED_OBJECT_ACE;
typedef struct _ACCESS_DENIED_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} ACCESS_DENIED_OBJECT_ACE,*PACCESS_DENIED_OBJECT_ACE;
typedef struct _SYSTEM_AUDIT_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} SYSTEM_AUDIT_OBJECT_ACE,*PSYSTEM_AUDIT_OBJECT_ACE;
typedef struct _SYSTEM_ALARM_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} SYSTEM_ALARM_OBJECT_ACE,*PSYSTEM_ALARM_OBJECT_ACE;
typedef struct _ACCESS_ALLOWED_CALLBACK_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} ACCESS_ALLOWED_CALLBACK_ACE,*PACCESS_ALLOWED_CALLBACK_ACE;
typedef struct _ACCESS_DENIED_CALLBACK_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} ACCESS_DENIED_CALLBACK_ACE,*PACCESS_DENIED_CALLBACK_ACE;
typedef struct _SYSTEM_AUDIT_CALLBACK_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} SYSTEM_AUDIT_CALLBACK_ACE,*PSYSTEM_AUDIT_CALLBACK_ACE;
typedef struct _SYSTEM_ALARM_CALLBACK_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} SYSTEM_ALARM_CALLBACK_ACE,*PSYSTEM_ALARM_CALLBACK_ACE;
typedef struct _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} ACCESS_ALLOWED_CALLBACK_OBJECT_ACE,*PACCESS_ALLOWED_CALLBACK_OBJECT_ACE;
typedef struct _ACCESS_DENIED_CALLBACK_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} ACCESS_DENIED_CALLBACK_OBJECT_ACE,*PACCESS_DENIED_CALLBACK_OBJECT_ACE;
typedef struct _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} SYSTEM_AUDIT_CALLBACK_OBJECT_ACE,*PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE;
typedef struct _SYSTEM_ALARM_CALLBACK_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} SYSTEM_ALARM_CALLBACK_OBJECT_ACE,*PSYSTEM_ALARM_CALLBACK_OBJECT_ACE;
typedef enum _ACL_INFORMATION_CLASS {
AclRevisionInformation = 1,AclSizeInformation
} ACL_INFORMATION_CLASS;
typedef struct _ACL_REVISION_INFORMATION {
DWORD AclRevision;
} ACL_REVISION_INFORMATION;
typedef ACL_REVISION_INFORMATION *PACL_REVISION_INFORMATION;
typedef struct _ACL_SIZE_INFORMATION {
DWORD AceCount;
DWORD AclBytesInUse;
DWORD AclBytesFree;
} ACL_SIZE_INFORMATION;
typedef ACL_SIZE_INFORMATION *PACL_SIZE_INFORMATION;
typedef WORD SECURITY_DESCRIPTOR_CONTROL,*PSECURITY_DESCRIPTOR_CONTROL;
typedef struct _SECURITY_DESCRIPTOR_RELATIVE {
BYTE Revision;
BYTE Sbz1;
SECURITY_DESCRIPTOR_CONTROL Control;
DWORD Owner;
DWORD Group;
DWORD Sacl;
DWORD Dacl;
} SECURITY_DESCRIPTOR_RELATIVE,*PISECURITY_DESCRIPTOR_RELATIVE;
typedef struct _SECURITY_DESCRIPTOR {
BYTE Revision;
BYTE Sbz1;
SECURITY_DESCRIPTOR_CONTROL Control;
PSID Owner;
PSID Group;
PACL Sacl;
PACL Dacl;
} SECURITY_DESCRIPTOR,*PISECURITY_DESCRIPTOR;
typedef struct _OBJECT_TYPE_LIST {
WORD Level;
WORD Sbz;
GUID *ObjectType;
} OBJECT_TYPE_LIST,*POBJECT_TYPE_LIST;
typedef enum _AUDIT_EVENT_TYPE {
AuditEventObjectAccess,AuditEventDirectoryServiceAccess
} AUDIT_EVENT_TYPE,*PAUDIT_EVENT_TYPE;
typedef struct _PRIVILEGE_SET {
DWORD PrivilegeCount;
DWORD Control;
LUID_AND_ATTRIBUTES Privilege[1];
} PRIVILEGE_SET,*PPRIVILEGE_SET;
typedef enum _ACCESS_REASON_TYPE {
AccessReasonNone = 0x00000000,
AccessReasonAllowedAce = 0x00010000,
AccessReasonDeniedAce = 0x00020000,
AccessReasonAllowedParentAce = 0x00030000,
AccessReasonDeniedParentAce = 0x00040000,
AccessReasonNotGrantedByCape = 0x00050000,
AccessReasonNotGrantedByParentCape = 0x00060000,
AccessReasonNotGrantedToAppContainer = 0x00070000,
AccessReasonMissingPrivilege = 0x00100000,
AccessReasonFromPrivilege = 0x00200000,
AccessReasonIntegrityLevel = 0x00300000,
AccessReasonOwnership = 0x00400000,
AccessReasonNullDacl = 0x00500000,
AccessReasonEmptyDacl = 0x00600000,
AccessReasonNoSD = 0x00700000,
AccessReasonNoGrant = 0x00800000
} ACCESS_REASON_TYPE;
typedef DWORD ACCESS_REASON;
typedef struct _ACCESS_REASONS {
ACCESS_REASON Data[32];
} ACCESS_REASONS,*PACCESS_REASONS;
typedef struct _SE_SECURITY_DESCRIPTOR {
DWORD Size;
DWORD Flags;
PSECURITY_DESCRIPTOR SecurityDescriptor;
} SE_SECURITY_DESCRIPTOR,*PSE_SECURITY_DESCRIPTOR;
typedef struct _SE_ACCESS_REQUEST {
DWORD Size;
PSE_SECURITY_DESCRIPTOR SeSecurityDescriptor;
ACCESS_MASK DesiredAccess;
ACCESS_MASK PreviouslyGrantedAccess;
PSID PrincipalSelfSid;
PGENERIC_MAPPING GenericMapping;
DWORD ObjectTypeListCount;
POBJECT_TYPE_LIST ObjectTypeList;
} SE_ACCESS_REQUEST,*PSE_ACCESS_REQUEST;
typedef struct _SE_ACCESS_REPLY {
DWORD Size;
DWORD ResultListCount;
PACCESS_MASK GrantedAccess;
PDWORD AccessStatus;
PACCESS_REASONS AccessReason;
PPRIVILEGE_SET *Privileges;
} SE_ACCESS_REPLY,*PSE_ACCESS_REPLY;
typedef enum _SECURITY_IMPERSONATION_LEVEL {
SecurityAnonymous,SecurityIdentification,SecurityImpersonation,SecurityDelegation
} SECURITY_IMPERSONATION_LEVEL,*PSECURITY_IMPERSONATION_LEVEL;
typedef enum _TOKEN_TYPE {
TokenPrimary = 1,TokenImpersonation
} TOKEN_TYPE;
typedef TOKEN_TYPE *PTOKEN_TYPE;
typedef enum _TOKEN_ELEVATION_TYPE {
TokenElevationTypeDefault = 1,
TokenElevationTypeFull,
TokenElevationTypeLimited
} TOKEN_ELEVATION_TYPE, *PTOKEN_ELEVATION_TYPE;
typedef enum _TOKEN_INFORMATION_CLASS {
TokenUser = 1,
TokenGroups,
TokenPrivileges,
TokenOwner,
TokenPrimaryGroup,
TokenDefaultDacl,
TokenSource,
TokenType,
TokenImpersonationLevel,
TokenStatistics,
TokenRestrictedSids,
TokenSessionId,
TokenGroupsAndPrivileges,
TokenSessionReference,
TokenSandBoxInert,
TokenAuditPolicy,
TokenOrigin,
TokenElevationType,
TokenLinkedToken,
TokenElevation,
TokenHasRestrictions,
TokenAccessInformation,
TokenVirtualizationAllowed,
TokenVirtualizationEnabled,
TokenIntegrityLevel,
TokenUIAccess,
TokenMandatoryPolicy,
TokenLogonSid,
TokenIsAppContainer,
TokenCapabilities,
TokenAppContainerSid,
TokenAppContainerNumber,
TokenUserClaimAttributes,
TokenDeviceClaimAttributes,
TokenRestrictedUserClaimAttributes,
TokenRestrictedDeviceClaimAttributes,
TokenDeviceGroups,
TokenRestrictedDeviceGroups,
TokenSecurityAttributes,
TokenIsRestricted,
MaxTokenInfoClass
} TOKEN_INFORMATION_CLASS,*PTOKEN_INFORMATION_CLASS;
typedef struct _TOKEN_USER {
SID_AND_ATTRIBUTES User;
} TOKEN_USER,*PTOKEN_USER;
typedef struct _TOKEN_GROUPS {
DWORD GroupCount;
SID_AND_ATTRIBUTES Groups[1];
} TOKEN_GROUPS,*PTOKEN_GROUPS;
typedef struct _TOKEN_PRIVILEGES {
DWORD PrivilegeCount;
LUID_AND_ATTRIBUTES Privileges[1];
} TOKEN_PRIVILEGES,*PTOKEN_PRIVILEGES;
typedef struct _TOKEN_OWNER {
PSID Owner;
} TOKEN_OWNER,*PTOKEN_OWNER;
typedef struct _TOKEN_PRIMARY_GROUP {
PSID PrimaryGroup;
} TOKEN_PRIMARY_GROUP,*PTOKEN_PRIMARY_GROUP;
typedef struct _TOKEN_DEFAULT_DACL {
PACL DefaultDacl;
} TOKEN_DEFAULT_DACL,*PTOKEN_DEFAULT_DACL;
typedef struct _TOKEN_USER_CLAIMS {
PCLAIMS_BLOB UserClaims;
} TOKEN_USER_CLAIMS,*PTOKEN_USER_CLAIMS;
typedef struct _TOKEN_DEVICE_CLAIMS {
PCLAIMS_BLOB DeviceClaims;
} TOKEN_DEVICE_CLAIMS,*PTOKEN_DEVICE_CLAIMS;
typedef struct _TOKEN_GROUPS_AND_PRIVILEGES {
DWORD SidCount;
DWORD SidLength;
PSID_AND_ATTRIBUTES Sids;
DWORD RestrictedSidCount;
DWORD RestrictedSidLength;
PSID_AND_ATTRIBUTES RestrictedSids;
DWORD PrivilegeCount;
DWORD PrivilegeLength;
PLUID_AND_ATTRIBUTES Privileges;
LUID AuthenticationId;
} TOKEN_GROUPS_AND_PRIVILEGES,*PTOKEN_GROUPS_AND_PRIVILEGES;
typedef struct _TOKEN_LINKED_TOKEN {
HANDLE LinkedToken;
} TOKEN_LINKED_TOKEN,*PTOKEN_LINKED_TOKEN;
typedef struct _TOKEN_ELEVATION {
DWORD TokenIsElevated;
} TOKEN_ELEVATION,*PTOKEN_ELEVATION;
typedef struct _TOKEN_MANDATORY_LABEL {
SID_AND_ATTRIBUTES Label;
} TOKEN_MANDATORY_LABEL,*PTOKEN_MANDATORY_LABEL;
typedef struct _TOKEN_MANDATORY_POLICY {
DWORD Policy;
} TOKEN_MANDATORY_POLICY,*PTOKEN_MANDATORY_POLICY;
typedef struct _TOKEN_ACCESS_INFORMATION {
PSID_AND_ATTRIBUTES_HASH SidHash;
PSID_AND_ATTRIBUTES_HASH RestrictedSidHash;
PTOKEN_PRIVILEGES Privileges;
LUID AuthenticationId;
TOKEN_TYPE TokenType;
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
TOKEN_MANDATORY_POLICY MandatoryPolicy;
DWORD Flags;
DWORD AppContainerNumber;
PSID PackageSid;
PSID_AND_ATTRIBUTES_HASH CapabilitiesHash;
} TOKEN_ACCESS_INFORMATION,*PTOKEN_ACCESS_INFORMATION;
typedef struct _TOKEN_AUDIT_POLICY {
UCHAR PerUserPolicy[(((56)) >> 1) + 1];
} TOKEN_AUDIT_POLICY, *PTOKEN_AUDIT_POLICY;
typedef struct _TOKEN_SOURCE {
CHAR SourceName[8];
LUID SourceIdentifier;
} TOKEN_SOURCE,*PTOKEN_SOURCE;
typedef struct _TOKEN_STATISTICS {
LUID TokenId;
LUID AuthenticationId;
LARGE_INTEGER ExpirationTime;
TOKEN_TYPE TokenType;
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
DWORD DynamicCharged;
DWORD DynamicAvailable;
DWORD GroupCount;
DWORD PrivilegeCount;
LUID ModifiedId;
} TOKEN_STATISTICS,*PTOKEN_STATISTICS;
typedef struct _TOKEN_CONTROL {
LUID TokenId;
LUID AuthenticationId;
LUID ModifiedId;
TOKEN_SOURCE TokenSource;
} TOKEN_CONTROL,*PTOKEN_CONTROL;
typedef struct _TOKEN_ORIGIN {
LUID OriginatingLogonSession;
} TOKEN_ORIGIN,*PTOKEN_ORIGIN;
typedef enum _MANDATORY_LEVEL {
MandatoryLevelUntrusted = 0,
MandatoryLevelLow,
MandatoryLevelMedium,
MandatoryLevelHigh,
MandatoryLevelSystem,
MandatoryLevelSecureProcess,
MandatoryLevelCount
} MANDATORY_LEVEL,*PMANDATORY_LEVEL;
typedef struct _TOKEN_APPCONTAINER_INFORMATION {
PSID TokenAppContainer;
} TOKEN_APPCONTAINER_INFORMATION,*PTOKEN_APPCONTAINER_INFORMATION;
typedef struct _CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE {
DWORD64 Version;
PWSTR Name;
} CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE,*PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE;
typedef struct _CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE {
PVOID pValue;
DWORD ValueLength;
} CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE, *PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE;
typedef struct _CLAIM_SECURITY_ATTRIBUTE_V1 {
PWSTR Name;
WORD ValueType;
WORD Reserved;
DWORD Flags;
DWORD ValueCount;
union {
PLONG64 pInt64;
PDWORD64 pUint64;
PWSTR *ppString;
PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE pFqbn;
PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE pOctetString;
} Values;
} CLAIM_SECURITY_ATTRIBUTE_V1,*PCLAIM_SECURITY_ATTRIBUTE_V1;
typedef struct _CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 {
DWORD Name;
WORD ValueType;
WORD Reserved;
DWORD Flags;
DWORD ValueCount;
union {
DWORD pInt64[1];
DWORD pUint64[1];
DWORD ppString[1];
DWORD pFqbn[1];
DWORD pOctetString[1];
} Values;
} CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1,*PCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1;
typedef struct _CLAIM_SECURITY_ATTRIBUTES_INFORMATION {
WORD Version;
WORD Reserved;
DWORD AttributeCount;
union {
PCLAIM_SECURITY_ATTRIBUTE_V1 pAttributeV1;
} Attribute;
} CLAIM_SECURITY_ATTRIBUTES_INFORMATION,*PCLAIM_SECURITY_ATTRIBUTES_INFORMATION;
typedef BOOLEAN SECURITY_CONTEXT_TRACKING_MODE,*PSECURITY_CONTEXT_TRACKING_MODE;
typedef struct _SECURITY_QUALITY_OF_SERVICE {
DWORD Length;
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode;
BOOLEAN EffectiveOnly;
} SECURITY_QUALITY_OF_SERVICE,*PSECURITY_QUALITY_OF_SERVICE;
typedef struct _SE_IMPERSONATION_STATE {
PACCESS_TOKEN Token;
BOOLEAN CopyOnOpen;
BOOLEAN EffectiveOnly;
SECURITY_IMPERSONATION_LEVEL Level;
} SE_IMPERSONATION_STATE,*PSE_IMPERSONATION_STATE;
typedef DWORD SECURITY_INFORMATION,*PSECURITY_INFORMATION;
typedef enum _SE_LEARNING_MODE_DATA_TYPE {
SeLearningModeInvalidType = 0,
SeLearningModeSettings,
SeLearningModeMax
} SE_LEARNING_MODE_DATA_TYPE;
typedef struct _SECURITY_CAPABILITIES {
PSID AppContainerSid;
PSID_AND_ATTRIBUTES Capabilities;
DWORD CapabilityCount;
DWORD Reserved;
} SECURITY_CAPABILITIES,*PSECURITY_CAPABILITIES,*LPSECURITY_CAPABILITIES;
typedef struct _JOB_SET_ARRAY {
HANDLE JobHandle;
DWORD MemberLevel;
DWORD Flags;
} JOB_SET_ARRAY,*PJOB_SET_ARRAY;
typedef struct _EXCEPTION_REGISTRATION_RECORD {
__extension__ union {
struct _EXCEPTION_REGISTRATION_RECORD *Next;
struct _EXCEPTION_REGISTRATION_RECORD *prev;
};
__extension__ union {
PEXCEPTION_ROUTINE Handler;
PEXCEPTION_ROUTINE handler;
};
} EXCEPTION_REGISTRATION_RECORD;
typedef EXCEPTION_REGISTRATION_RECORD *PEXCEPTION_REGISTRATION_RECORD;
typedef EXCEPTION_REGISTRATION_RECORD EXCEPTION_REGISTRATION;
typedef PEXCEPTION_REGISTRATION_RECORD PEXCEPTION_REGISTRATION;
__extension__ typedef struct _NT_TIB {
struct _EXCEPTION_REGISTRATION_RECORD *ExceptionList;
PVOID StackBase;
PVOID StackLimit;
PVOID SubSystemTib;
__extension__ union {
PVOID FiberData;
DWORD Version;
};
PVOID ArbitraryUserPointer;
struct _NT_TIB *Self;
} NT_TIB;
typedef NT_TIB *PNT_TIB;
__extension__ typedef struct _NT_TIB32 {
DWORD ExceptionList;
DWORD StackBase;
DWORD StackLimit;
DWORD SubSystemTib;
__extension__ union {
DWORD FiberData;
DWORD Version;
};
DWORD ArbitraryUserPointer;
DWORD Self;
} NT_TIB32,*PNT_TIB32;
__extension__ typedef struct _NT_TIB64 {
DWORD64 ExceptionList;
DWORD64 StackBase;
DWORD64 StackLimit;
DWORD64 SubSystemTib;
__extension__ union {
DWORD64 FiberData;
DWORD Version;
};
DWORD64 ArbitraryUserPointer;
DWORD64 Self;
} NT_TIB64,*PNT_TIB64;
typedef struct _UMS_CREATE_THREAD_ATTRIBUTES {
DWORD UmsVersion;
PVOID UmsContext;
PVOID UmsCompletionList;
} UMS_CREATE_THREAD_ATTRIBUTES,*PUMS_CREATE_THREAD_ATTRIBUTES;
typedef struct _QUOTA_LIMITS {
SIZE_T PagedPoolLimit;
SIZE_T NonPagedPoolLimit;
SIZE_T MinimumWorkingSetSize;
SIZE_T MaximumWorkingSetSize;
SIZE_T PagefileLimit;
LARGE_INTEGER TimeLimit;
} QUOTA_LIMITS,*PQUOTA_LIMITS;
typedef union _RATE_QUOTA_LIMIT {
DWORD RateData;
__extension__ struct {
DWORD RatePercent : 7;
DWORD Reserved0 : 25;
} ;
} RATE_QUOTA_LIMIT, *PRATE_QUOTA_LIMIT;
typedef struct _QUOTA_LIMITS_EX {
SIZE_T PagedPoolLimit;
SIZE_T NonPagedPoolLimit;
SIZE_T MinimumWorkingSetSize;
SIZE_T MaximumWorkingSetSize;
SIZE_T PagefileLimit;
LARGE_INTEGER TimeLimit;
SIZE_T WorkingSetLimit;
SIZE_T Reserved2;
SIZE_T Reserved3;
SIZE_T Reserved4;
DWORD Flags;
RATE_QUOTA_LIMIT CpuRateLimit;
} QUOTA_LIMITS_EX,*PQUOTA_LIMITS_EX;
typedef struct _IO_COUNTERS {
ULONGLONG ReadOperationCount;
ULONGLONG WriteOperationCount;
ULONGLONG OtherOperationCount;
ULONGLONG ReadTransferCount;
ULONGLONG WriteTransferCount;
ULONGLONG OtherTransferCount;
} IO_COUNTERS;
typedef IO_COUNTERS *PIO_COUNTERS;
typedef enum _HARDWARE_COUNTER_TYPE {
PMCCounter,
MaxHardwareCounterType
} HARDWARE_COUNTER_TYPE, *PHARDWARE_COUNTER_TYPE;
typedef enum _PROCESS_MITIGATION_POLICY {
ProcessDEPPolicy,
ProcessASLRPolicy,
ProcessDynamicCodePolicy,
ProcessStrictHandleCheckPolicy,
ProcessSystemCallDisablePolicy,
ProcessMitigationOptionsMask,
ProcessExtensionPointDisablePolicy,
ProcessControlFlowGuardPolicy,
ProcessSignaturePolicy,
ProcessFontDisablePolicy,
ProcessImageLoadPolicy,
MaxProcessMitigationPolicy
} PROCESS_MITIGATION_POLICY,*PPROCESS_MITIGATION_POLICY;
typedef struct _PROCESS_MITIGATION_ASLR_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD EnableBottomUpRandomization : 1;
DWORD EnableForceRelocateImages : 1;
DWORD EnableHighEntropy : 1;
DWORD DisallowStrippedImages : 1;
DWORD ReservedFlags : 28;
};
};
} PROCESS_MITIGATION_ASLR_POLICY,*PPROCESS_MITIGATION_ASLR_POLICY;
typedef struct _PROCESS_MITIGATION_DEP_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD Enable : 1;
DWORD DisableAtlThunkEmulation : 1;
DWORD ReservedFlags : 30;
};
};
BOOLEAN Permanent;
} PROCESS_MITIGATION_DEP_POLICY,*PPROCESS_MITIGATION_DEP_POLICY;
typedef struct _PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD RaiseExceptionOnInvalidHandleReference : 1;
DWORD HandleExceptionsPermanentlyEnabled : 1;
DWORD ReservedFlags : 30;
};
};
} PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY,*PPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY;
typedef struct _PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD DisallowWin32kSystemCalls : 1;
DWORD ReservedFlags : 31;
};
};
} PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY,*PPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY;
typedef struct _PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD DisableExtensionPoints : 1;
DWORD ReservedFlags : 31;
};
};
} PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY,*PPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY;
typedef struct _PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD EnableControlFlowGuard :1;
DWORD EnableExportSuppression :1;
DWORD StrictMode :1;
DWORD ReservedFlags :29;
};
};
} PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY, *PPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY;
typedef struct _PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD MicrosoftSignedOnly :1;
DWORD StoreSignedOnly :1;
DWORD MitigationOptIn :1;
DWORD ReservedFlags :29;
};
};
} PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY, *PPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY;
typedef struct _PROCESS_MITIGATION_DYNAMIC_CODE_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD ProhibitDynamicCode :1;
DWORD AllowThreadOptOut :1;
DWORD AllowRemoteDowngrade :1;
DWORD ReservedFlags :30;
};
};
} PROCESS_MITIGATION_DYNAMIC_CODE_POLICY, *PPROCESS_MITIGATION_DYNAMIC_CODE_POLICY;
typedef struct _PROCESS_MITIGATION_FONT_DISABLE_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD DisableNonSystemFonts :1;
DWORD AuditNonSystemFontLoading :1;
DWORD ReservedFlags :30;
};
};
} PROCESS_MITIGATION_FONT_DISABLE_POLICY, *PPROCESS_MITIGATION_FONT_DISABLE_POLICY;
typedef struct _PROCESS_MITIGATION_IMAGE_LOAD_POLICY {
__extension__ union {
DWORD Flags;
__extension__ struct {
DWORD NoRemoteImages :1;
DWORD NoLowMandatoryLabelImages :1;
DWORD PreferSystem32Images :1;
DWORD ReservedFlags :29;
};
};
} PROCESS_MITIGATION_IMAGE_LOAD_POLICY, *PPROCESS_MITIGATION_IMAGE_LOAD_POLICY;
typedef struct _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION {
LARGE_INTEGER TotalUserTime;
LARGE_INTEGER TotalKernelTime;
LARGE_INTEGER ThisPeriodTotalUserTime;
LARGE_INTEGER ThisPeriodTotalKernelTime;
DWORD TotalPageFaultCount;
DWORD TotalProcesses;
DWORD ActiveProcesses;
DWORD TotalTerminatedProcesses;
} JOBOBJECT_BASIC_ACCOUNTING_INFORMATION,*PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION;
typedef struct _JOBOBJECT_BASIC_LIMIT_INFORMATION {
LARGE_INTEGER PerProcessUserTimeLimit;
LARGE_INTEGER PerJobUserTimeLimit;
DWORD LimitFlags;
SIZE_T MinimumWorkingSetSize;
SIZE_T MaximumWorkingSetSize;
DWORD ActiveProcessLimit;
ULONG_PTR Affinity;
DWORD PriorityClass;
DWORD SchedulingClass;
} JOBOBJECT_BASIC_LIMIT_INFORMATION,*PJOBOBJECT_BASIC_LIMIT_INFORMATION;
typedef struct _JOBOBJECT_EXTENDED_LIMIT_INFORMATION {
JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation;
IO_COUNTERS IoInfo;
SIZE_T ProcessMemoryLimit;
SIZE_T JobMemoryLimit;
SIZE_T PeakProcessMemoryUsed;
SIZE_T PeakJobMemoryUsed;
} JOBOBJECT_EXTENDED_LIMIT_INFORMATION,*PJOBOBJECT_EXTENDED_LIMIT_INFORMATION;
typedef struct _JOBOBJECT_BASIC_PROCESS_ID_LIST {
DWORD NumberOfAssignedProcesses;
DWORD NumberOfProcessIdsInList;
ULONG_PTR ProcessIdList[1];
} JOBOBJECT_BASIC_PROCESS_ID_LIST,*PJOBOBJECT_BASIC_PROCESS_ID_LIST;
typedef struct _JOBOBJECT_BASIC_UI_RESTRICTIONS {
DWORD UIRestrictionsClass;
} JOBOBJECT_BASIC_UI_RESTRICTIONS,*PJOBOBJECT_BASIC_UI_RESTRICTIONS;
typedef struct _JOBOBJECT_SECURITY_LIMIT_INFORMATION {
DWORD SecurityLimitFlags;
HANDLE JobToken;
PTOKEN_GROUPS SidsToDisable;
PTOKEN_PRIVILEGES PrivilegesToDelete;
PTOKEN_GROUPS RestrictedSids;
} JOBOBJECT_SECURITY_LIMIT_INFORMATION,*PJOBOBJECT_SECURITY_LIMIT_INFORMATION;
typedef struct _JOBOBJECT_END_OF_JOB_TIME_INFORMATION {
DWORD EndOfJobTimeAction;
} JOBOBJECT_END_OF_JOB_TIME_INFORMATION,*PJOBOBJECT_END_OF_JOB_TIME_INFORMATION;
typedef struct _JOBOBJECT_ASSOCIATE_COMPLETION_PORT {
PVOID CompletionKey;
HANDLE CompletionPort;
} JOBOBJECT_ASSOCIATE_COMPLETION_PORT,*PJOBOBJECT_ASSOCIATE_COMPLETION_PORT;
typedef struct _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION {
JOBOBJECT_BASIC_ACCOUNTING_INFORMATION BasicInfo;
IO_COUNTERS IoInfo;
} JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION,*PJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION;
typedef struct _JOBOBJECT_JOBSET_INFORMATION {
DWORD MemberLevel;
} JOBOBJECT_JOBSET_INFORMATION,*PJOBOBJECT_JOBSET_INFORMATION;
typedef enum _JOBOBJECT_RATE_CONTROL_TOLERANCE {
ToleranceLow = 1,
ToleranceMedium,
ToleranceHigh
} JOBOBJECT_RATE_CONTROL_TOLERANCE;
typedef enum _JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL {
ToleranceIntervalShort = 1,
ToleranceIntervalMedium,
ToleranceIntervalLong
} JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL;
typedef struct _JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION {
DWORD64 IoReadBytesLimit;
DWORD64 IoWriteBytesLimit;
LARGE_INTEGER PerJobUserTimeLimit;
DWORD64 JobMemoryLimit;
JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL RateControlToleranceInterval;
DWORD LimitFlags;
} JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION,*PJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION;
typedef struct _JOBOBJECT_LIMIT_VIOLATION_INFORMATION {
DWORD LimitFlags;
DWORD ViolationLimitFlags;
DWORD64 IoReadBytes;
DWORD64 IoReadBytesLimit;
DWORD64 IoWriteBytes;
DWORD64 IoWriteBytesLimit;
LARGE_INTEGER PerJobUserTime;
LARGE_INTEGER PerJobUserTimeLimit;
DWORD64 JobMemory;
DWORD64 JobMemoryLimit;
JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL RateControlToleranceLimit;
} JOBOBJECT_LIMIT_VIOLATION_INFORMATION,*PJOBOBJECT_LIMIT_VIOLATION_INFORMATION;
typedef struct _JOBOBJECT_CPU_RATE_CONTROL_INFORMATION {
DWORD ControlFlags;
__extension__ union {
DWORD CpuRate;
DWORD Weight;
};
} JOBOBJECT_CPU_RATE_CONTROL_INFORMATION,*PJOBOBJECT_CPU_RATE_CONTROL_INFORMATION;
typedef enum _JOBOBJECTINFOCLASS {
JobObjectBasicAccountingInformation = 1, JobObjectBasicLimitInformation,
JobObjectBasicProcessIdList, JobObjectBasicUIRestrictions,
JobObjectSecurityLimitInformation, JobObjectEndOfJobTimeInformation,
JobObjectAssociateCompletionPortInformation, JobObjectBasicAndIoAccountingInformation,
JobObjectExtendedLimitInformation, JobObjectJobSetInformation,
JobObjectGroupInformation,
JobObjectNotificationLimitInformation,
JobObjectLimitViolationInformation,
JobObjectGroupInformationEx,
JobObjectCpuRateControlInformation,
JobObjectCompletionFilter,
JobObjectCompletionCounter,
JobObjectReserved1Information = 18,
JobObjectReserved2Information,
JobObjectReserved3Information,
JobObjectReserved4Information,
JobObjectReserved5Information,
JobObjectReserved6Information,
JobObjectReserved7Information,
JobObjectReserved8Information,
MaxJobObjectInfoClass
} JOBOBJECTINFOCLASS;
typedef enum _FIRMWARE_TYPE {
FirmwareTypeUnknown,
FirmwareTypeBios,
FirmwareTypeUefi,
FirmwareTypeMax
} FIRMWARE_TYPE,*PFIRMWARE_TYPE;
typedef enum _LOGICAL_PROCESSOR_RELATIONSHIP {
RelationProcessorCore,RelationNumaNode,RelationCache,
RelationProcessorPackage,RelationGroup,RelationAll=0xffff
} LOGICAL_PROCESSOR_RELATIONSHIP;
typedef enum _PROCESSOR_CACHE_TYPE {
CacheUnified,CacheInstruction,CacheData,CacheTrace
} PROCESSOR_CACHE_TYPE;
typedef struct _CACHE_DESCRIPTOR {
BYTE Level;
BYTE Associativity;
WORD LineSize;
DWORD Size;
PROCESSOR_CACHE_TYPE Type;
} CACHE_DESCRIPTOR,*PCACHE_DESCRIPTOR;
typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION {
ULONG_PTR ProcessorMask;
LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
__extension__ union {
struct {
BYTE Flags;
} ProcessorCore;
struct {
DWORD NodeNumber;
} NumaNode;
CACHE_DESCRIPTOR Cache;
ULONGLONG Reserved[2];
} ;
} SYSTEM_LOGICAL_PROCESSOR_INFORMATION,*PSYSTEM_LOGICAL_PROCESSOR_INFORMATION;
typedef struct _PROCESSOR_RELATIONSHIP {
BYTE Flags;
BYTE Reserved[21];
WORD GroupCount;
GROUP_AFFINITY GroupMask[1];
} PROCESSOR_RELATIONSHIP,*PPROCESSOR_RELATIONSHIP;
typedef struct _NUMA_NODE_RELATIONSHIP {
DWORD NodeNumber;
BYTE Reserved[20];
GROUP_AFFINITY GroupMask;
} NUMA_NODE_RELATIONSHIP,*PNUMA_NODE_RELATIONSHIP;
typedef struct _CACHE_RELATIONSHIP {
BYTE Level;
BYTE Associativity;
WORD LineSize;
DWORD CacheSize;
PROCESSOR_CACHE_TYPE Type;
BYTE Reserved[20];
GROUP_AFFINITY GroupMask;
} CACHE_RELATIONSHIP,*PCACHE_RELATIONSHIP;
typedef struct _PROCESSOR_GROUP_INFO {
BYTE MaximumProcessorCount;
BYTE ActiveProcessorCount;
BYTE Reserved[38];
KAFFINITY ActiveProcessorMask;
} PROCESSOR_GROUP_INFO,*PPROCESSOR_GROUP_INFO;
typedef struct _GROUP_RELATIONSHIP {
WORD MaximumGroupCount;
WORD ActiveGroupCount;
BYTE Reserved[20];
PROCESSOR_GROUP_INFO GroupInfo[1];
} GROUP_RELATIONSHIP,*PGROUP_RELATIONSHIP;
struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX {
LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
DWORD Size;
__extension__ union {
PROCESSOR_RELATIONSHIP Processor;
NUMA_NODE_RELATIONSHIP NumaNode;
CACHE_RELATIONSHIP Cache;
GROUP_RELATIONSHIP Group;
} ;
};
typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX,*PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX;
typedef struct _SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION {
DWORD64 CycleTime;
} SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION,*PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION;
typedef struct _XSTATE_FEATURE {
DWORD Offset;
DWORD Size;
} XSTATE_FEATURE,*PXSTATE_FEATURE;
typedef struct _XSTATE_CONFIGURATION {
DWORD64 EnabledFeatures;
DWORD64 EnabledVolatileFeatures;
DWORD Size;
DWORD OptimizedSave : 1;
XSTATE_FEATURE Features[(64)];
} XSTATE_CONFIGURATION,*PXSTATE_CONFIGURATION;
typedef struct _MEMORY_BASIC_INFORMATION {
PVOID BaseAddress;
PVOID AllocationBase;
DWORD AllocationProtect;
SIZE_T RegionSize;
DWORD State;
DWORD Protect;
DWORD Type;
} MEMORY_BASIC_INFORMATION,*PMEMORY_BASIC_INFORMATION;
typedef struct _MEMORY_BASIC_INFORMATION32 {
DWORD BaseAddress;
DWORD AllocationBase;
DWORD AllocationProtect;
DWORD RegionSize;
DWORD State;
DWORD Protect;
DWORD Type;
} MEMORY_BASIC_INFORMATION32,*PMEMORY_BASIC_INFORMATION32;
typedef struct __attribute__ ((__aligned__ (16))) _MEMORY_BASIC_INFORMATION64 {
ULONGLONG BaseAddress;
ULONGLONG AllocationBase;
DWORD AllocationProtect;
DWORD __alignment1;
ULONGLONG RegionSize;
DWORD State;
DWORD Protect;
DWORD Type;
DWORD __alignment2;
} MEMORY_BASIC_INFORMATION64,*PMEMORY_BASIC_INFORMATION64;
typedef struct FILE_ID_128 {
BYTE Identifier[16];
} FILE_ID_128, *PFILE_ID_128;
typedef struct _FILE_NOTIFY_INFORMATION {
DWORD NextEntryOffset;
DWORD Action;
DWORD FileNameLength;
WCHAR FileName[1];
} FILE_NOTIFY_INFORMATION,*PFILE_NOTIFY_INFORMATION;
typedef union _FILE_SEGMENT_ELEMENT {
PVOID64 Buffer;
ULONGLONG Alignment;
} FILE_SEGMENT_ELEMENT,*PFILE_SEGMENT_ELEMENT;
typedef struct _REPARSE_GUID_DATA_BUFFER {
DWORD ReparseTag;
WORD ReparseDataLength;
WORD Reserved;
GUID ReparseGuid;
struct {
BYTE DataBuffer[1];
} GenericReparseBuffer;
} REPARSE_GUID_DATA_BUFFER,*PREPARSE_GUID_DATA_BUFFER;
extern const GUID GUID_MAX_POWER_SAVINGS;
extern const GUID GUID_MIN_POWER_SAVINGS;
extern const GUID GUID_TYPICAL_POWER_SAVINGS;
extern const GUID NO_SUBGROUP_GUID;
extern const GUID ALL_POWERSCHEMES_GUID;
extern const GUID GUID_POWERSCHEME_PERSONALITY;
extern const GUID GUID_ACTIVE_POWERSCHEME;
extern const GUID GUID_IDLE_RESILIENCY_SUBGROUP;
extern const GUID GUID_IDLE_RESILIENCY_PERIOD;
extern const GUID GUID_DISK_COALESCING_POWERDOWN_TIMEOUT;
extern const GUID GUID_EXECUTION_REQUIRED_REQUEST_TIMEOUT;
extern const GUID GUID_VIDEO_SUBGROUP;
extern const GUID GUID_VIDEO_POWERDOWN_TIMEOUT;
extern const GUID GUID_VIDEO_ANNOYANCE_TIMEOUT;
extern const GUID GUID_VIDEO_ADAPTIVE_PERCENT_INCREASE;
extern const GUID GUID_VIDEO_DIM_TIMEOUT;
extern const GUID GUID_VIDEO_ADAPTIVE_POWERDOWN;
extern const GUID GUID_MONITOR_POWER_ON;
extern const GUID GUID_DEVICE_POWER_POLICY_VIDEO_BRIGHTNESS;
extern const GUID GUID_DEVICE_POWER_POLICY_VIDEO_DIM_BRIGHTNESS;
extern const GUID GUID_VIDEO_CURRENT_MONITOR_BRIGHTNESS;
extern const GUID GUID_VIDEO_ADAPTIVE_DISPLAY_BRIGHTNESS;
extern const GUID GUID_CONSOLE_DISPLAY_STATE;
extern const GUID GUID_ALLOW_DISPLAY_REQUIRED;
extern const GUID GUID_VIDEO_CONSOLE_LOCK_TIMEOUT;
extern const GUID GUID_ADAPTIVE_POWER_BEHAVIOR_SUBGROUP;
extern const GUID GUID_NON_ADAPTIVE_INPUT_TIMEOUT;
extern const GUID GUID_DISK_SUBGROUP;
extern const GUID GUID_DISK_POWERDOWN_TIMEOUT;
extern const GUID GUID_DISK_IDLE_TIMEOUT;
extern const GUID GUID_DISK_BURST_IGNORE_THRESHOLD;
extern const GUID GUID_DISK_ADAPTIVE_POWERDOWN;
extern const GUID GUID_SLEEP_SUBGROUP;
extern const GUID GUID_SLEEP_IDLE_THRESHOLD;
extern const GUID GUID_STANDBY_TIMEOUT;
extern const GUID GUID_UNATTEND_SLEEP_TIMEOUT;
extern const GUID GUID_HIBERNATE_TIMEOUT;
extern const GUID GUID_HIBERNATE_FASTS4_POLICY;
extern const GUID GUID_CRITICAL_POWER_TRANSITION;
extern const GUID GUID_SYSTEM_AWAYMODE;
extern const GUID GUID_ALLOW_AWAYMODE;
extern const GUID GUID_ALLOW_STANDBY_STATES;
extern const GUID GUID_ALLOW_RTC_WAKE;
extern const GUID GUID_ALLOW_SYSTEM_REQUIRED;
extern const GUID GUID_SYSTEM_BUTTON_SUBGROUP;
extern const GUID GUID_POWERBUTTON_ACTION;
extern const GUID GUID_SLEEPBUTTON_ACTION;
extern const GUID GUID_USERINTERFACEBUTTON_ACTION;
extern const GUID GUID_LIDCLOSE_ACTION;
extern const GUID GUID_LIDOPEN_POWERSTATE;
extern const GUID GUID_BATTERY_SUBGROUP;
extern const GUID GUID_BATTERY_DISCHARGE_ACTION_0;
extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_0;
extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_0;
extern const GUID GUID_BATTERY_DISCHARGE_ACTION_1;
extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_1;
extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_1;
extern const GUID GUID_BATTERY_DISCHARGE_ACTION_2;
extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_2;
extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_2;
extern const GUID GUID_BATTERY_DISCHARGE_ACTION_3;
extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_3;
extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_3;
extern const GUID GUID_PROCESSOR_SETTINGS_SUBGROUP;
extern const GUID GUID_PROCESSOR_THROTTLE_POLICY;
extern const GUID GUID_PROCESSOR_THROTTLE_MAXIMUM;
extern const GUID GUID_PROCESSOR_THROTTLE_MINIMUM;
extern const GUID GUID_PROCESSOR_ALLOW_THROTTLING;
extern const GUID GUID_PROCESSOR_IDLESTATE_POLICY;
extern const GUID GUID_PROCESSOR_PERFSTATE_POLICY;
extern const GUID GUID_PROCESSOR_PERF_INCREASE_THRESHOLD;
extern const GUID GUID_PROCESSOR_PERF_DECREASE_THRESHOLD;
extern const GUID GUID_PROCESSOR_PERF_INCREASE_POLICY;
extern const GUID GUID_PROCESSOR_PERF_DECREASE_POLICY;
extern const GUID GUID_PROCESSOR_PERF_INCREASE_TIME;
extern const GUID GUID_PROCESSOR_PERF_DECREASE_TIME;
extern const GUID GUID_PROCESSOR_PERF_TIME_CHECK;
extern const GUID GUID_PROCESSOR_PERF_BOOST_POLICY;
extern const GUID GUID_PROCESSOR_PERF_BOOST_MODE;
extern const GUID GUID_PROCESSOR_IDLE_ALLOW_SCALING;
extern const GUID GUID_PROCESSOR_IDLE_DISABLE;
extern const GUID GUID_PROCESSOR_IDLE_STATE_MAXIMUM;
extern const GUID GUID_PROCESSOR_IDLE_TIME_CHECK;
extern const GUID GUID_PROCESSOR_IDLE_DEMOTE_THRESHOLD;
extern const GUID GUID_PROCESSOR_IDLE_PROMOTE_THRESHOLD;
extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_THRESHOLD;
extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_THRESHOLD;
extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_POLICY;
extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_POLICY;
extern const GUID GUID_PROCESSOR_CORE_PARKING_MAX_CORES;
extern const GUID GUID_PROCESSOR_CORE_PARKING_MIN_CORES;
extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_TIME;
extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_TIME;
extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_DECREASE_FACTOR;
extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_THRESHOLD;
extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_WEIGHTING;
extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_DECREASE_FACTOR;
extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_THRESHOLD;
extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_WEIGHTING;
extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_THRESHOLD;
extern const GUID GUID_PROCESSOR_PARKING_CORE_OVERRIDE;
extern const GUID GUID_PROCESSOR_PARKING_PERF_STATE;
extern const GUID GUID_PROCESSOR_PARKING_CONCURRENCY_THRESHOLD;
extern const GUID GUID_PROCESSOR_PARKING_HEADROOM_THRESHOLD;
extern const GUID GUID_PROCESSOR_PERF_HISTORY;
extern const GUID GUID_PROCESSOR_PERF_LATENCY_HINT;
extern const GUID GUID_PROCESSOR_DISTRIBUTE_UTILITY;
extern const GUID GUID_SYSTEM_COOLING_POLICY;
extern const GUID GUID_LOCK_CONSOLE_ON_WAKE;
extern const GUID GUID_DEVICE_IDLE_POLICY;
extern const GUID GUID_ACDC_POWER_SOURCE;
extern const GUID GUID_LIDSWITCH_STATE_CHANGE;
extern const GUID GUID_BATTERY_PERCENTAGE_REMAINING;
extern const GUID GUID_GLOBAL_USER_PRESENCE;
extern const GUID GUID_SESSION_DISPLAY_STATUS;
extern const GUID GUID_SESSION_USER_PRESENCE;
extern const GUID GUID_IDLE_BACKGROUND_TASK;
extern const GUID GUID_BACKGROUND_TASK_NOTIFICATION;
extern const GUID GUID_APPLAUNCH_BUTTON;
extern const GUID GUID_PCIEXPRESS_SETTINGS_SUBGROUP;
extern const GUID GUID_PCIEXPRESS_ASPM_POLICY;
extern const GUID GUID_ENABLE_SWITCH_FORCED_SHUTDOWN;
typedef enum _SYSTEM_POWER_STATE {
PowerSystemUnspecified = 0,PowerSystemWorking = 1,PowerSystemSleeping1 = 2,PowerSystemSleeping2 = 3,PowerSystemSleeping3 = 4,PowerSystemHibernate = 5,PowerSystemShutdown = 6,PowerSystemMaximum = 7
} SYSTEM_POWER_STATE,*PSYSTEM_POWER_STATE;
typedef enum {
PowerActionNone = 0, PowerActionReserved, PowerActionSleep, PowerActionHibernate,
PowerActionShutdown, PowerActionShutdownReset, PowerActionShutdownOff,
PowerActionWarmEject
} POWER_ACTION,*PPOWER_ACTION;
typedef enum _DEVICE_POWER_STATE {
PowerDeviceUnspecified = 0, PowerDeviceD0, PowerDeviceD1, PowerDeviceD2, PowerDeviceD3,
PowerDeviceMaximum
} DEVICE_POWER_STATE,*PDEVICE_POWER_STATE;
typedef enum _MONITOR_DISPLAY_STATE {
PowerMonitorOff = 0, PowerMonitorOn, PowerMonitorDim
} MONITOR_DISPLAY_STATE, *PMONITOR_DISPLAY_STATE;
typedef enum _USER_ACTIVITY_PRESENCE {
PowerUserPresent = 0,
PowerUserNotPresent,
PowerUserInactive,
PowerUserMaximum,
PowerUserInvalid = PowerUserMaximum
} USER_ACTIVITY_PRESENCE,*PUSER_ACTIVITY_PRESENCE;
typedef DWORD EXECUTION_STATE, *PEXECUTION_STATE;
typedef enum {
LT_DONT_CARE,LT_LOWEST_LATENCY
} LATENCY_TIME;
typedef enum _POWER_REQUEST_TYPE {
PowerRequestDisplayRequired,
PowerRequestSystemRequired,
PowerRequestAwayModeRequired,
PowerRequestExecutionRequired
} POWER_REQUEST_TYPE,*PPOWER_REQUEST_TYPE;
typedef struct CM_Power_Data_s {
DWORD PD_Size;
DEVICE_POWER_STATE PD_MostRecentPowerState;
DWORD PD_Capabilities;
DWORD PD_D1Latency;
DWORD PD_D2Latency;
DWORD PD_D3Latency;
DEVICE_POWER_STATE PD_PowerStateMapping[7];
SYSTEM_POWER_STATE PD_DeepestSystemWake;
} CM_POWER_DATA,*PCM_POWER_DATA;
typedef enum {
SystemPowerPolicyAc,
SystemPowerPolicyDc,
VerifySystemPolicyAc,
VerifySystemPolicyDc,
SystemPowerCapabilities,
SystemBatteryState,
SystemPowerStateHandler,
ProcessorStateHandler,
SystemPowerPolicyCurrent,
AdministratorPowerPolicy,
SystemReserveHiberFile,
ProcessorInformation,
SystemPowerInformation,
ProcessorStateHandler2,
LastWakeTime,
LastSleepTime,
SystemExecutionState,
SystemPowerStateNotifyHandler,
ProcessorPowerPolicyAc,
ProcessorPowerPolicyDc,
VerifyProcessorPowerPolicyAc,
VerifyProcessorPowerPolicyDc,
ProcessorPowerPolicyCurrent,
SystemPowerStateLogging,
SystemPowerLoggingEntry,
SetPowerSettingValue,
NotifyUserPowerSetting,
PowerInformationLevelUnused0,
SystemMonitorHiberBootPowerOff,
SystemVideoState,
TraceApplicationPowerMessage,
TraceApplicationPowerMessageEnd,
ProcessorPerfStates,
ProcessorIdleStates,
ProcessorCap,
SystemWakeSource,
SystemHiberFileInformation,
TraceServicePowerMessage,
ProcessorLoad,
PowerShutdownNotification,
MonitorCapabilities,
SessionPowerInit,
SessionDisplayState,
PowerRequestCreate,
PowerRequestAction,
GetPowerRequestList,
ProcessorInformationEx,
NotifyUserModeLegacyPowerEvent,
GroupPark,
ProcessorIdleDomains,
WakeTimerList,
SystemHiberFileSize,
ProcessorIdleStatesHv,
ProcessorPerfStatesHv,
ProcessorPerfCapHv,
ProcessorSetIdle,
LogicalProcessorIdling,
UserPresence,
PowerSettingNotificationName,
GetPowerSettingValue,
IdleResiliency,
SessionRITState,
SessionConnectNotification,
SessionPowerCleanup,
SessionLockState,
SystemHiberbootState,
PlatformInformation,
PdcInvocation,
MonitorInvocation,
FirmwareTableInformationRegistered,
SetShutdownSelectedTime,
SuspendResumeInvocation,
PlmPowerRequestCreate,
ScreenOff,
CsDeviceNotification,
PlatformRole,
LastResumePerformance,
DisplayBurst,
ExitLatencySamplingPercentage,
ApplyLowPowerScenarioSettings,
PowerInformationLevelMaximum
} POWER_INFORMATION_LEVEL;
typedef enum {
UserNotPresent = 0,
UserPresent = 1,
UserUnknown = 0xff
} POWER_USER_PRESENCE_TYPE,*PPOWER_USER_PRESENCE_TYPE;
typedef struct _POWER_USER_PRESENCE {
POWER_USER_PRESENCE_TYPE UserPresence;
} POWER_USER_PRESENCE,*PPOWER_USER_PRESENCE;
typedef struct _POWER_SESSION_CONNECT {
BOOLEAN Connected;
BOOLEAN Console;
} POWER_SESSION_CONNECT,*PPOWER_SESSION_CONNECT;
typedef struct _POWER_SESSION_TIMEOUTS {
DWORD InputTimeout;
DWORD DisplayTimeout;
} POWER_SESSION_TIMEOUTS,*PPOWER_SESSION_TIMEOUTS;
typedef struct _POWER_SESSION_RIT_STATE {
BOOLEAN Active;
DWORD LastInputTime;
} POWER_SESSION_RIT_STATE,*PPOWER_SESSION_RIT_STATE;
typedef struct _POWER_SESSION_WINLOGON {
DWORD SessionId;
BOOLEAN Console;
BOOLEAN Locked;
} POWER_SESSION_WINLOGON,*PPOWER_SESSION_WINLOGON;
typedef struct _POWER_IDLE_RESILIENCY {
DWORD CoalescingTimeout;
DWORD IdleResiliencyPeriod;
} POWER_IDLE_RESILIENCY,*PPOWER_IDLE_RESILIENCY;
typedef enum {
MonitorRequestReasonUnknown,
MonitorRequestReasonPowerButton,
MonitorRequestReasonRemoteConnection,
MonitorRequestReasonScMonitorpower,
MonitorRequestReasonUserInput,
MonitorRequestReasonAcDcDisplayBurst,
MonitorRequestReasonUserDisplayBurst,
MonitorRequestReasonPoSetSystemState,
MonitorRequestReasonSetThreadExecutionState,
MonitorRequestReasonFullWake,
MonitorRequestReasonSessionUnlock,
MonitorRequestReasonScreenOffRequest,
MonitorRequestReasonIdleTimeout,
MonitorRequestReasonPolicyChange,
MonitorRequestReasonMax
} POWER_MONITOR_REQUEST_REASON;
typedef struct _POWER_MONITOR_INVOCATION {
BOOLEAN On;
BOOLEAN Console;
POWER_MONITOR_REQUEST_REASON RequestReason;
} POWER_MONITOR_INVOCATION,*PPOWER_MONITOR_INVOCATION;
typedef struct _RESUME_PERFORMANCE {
DWORD PostTimeMs;
ULONGLONG TotalResumeTimeMs;
ULONGLONG ResumeCompleteTimestamp;
} RESUME_PERFORMANCE,*PRESUME_PERFORMANCE;
typedef enum {
PoAc,
PoDc,
PoHot,
PoConditionMaximum
} SYSTEM_POWER_CONDITION;
typedef struct {
DWORD Version;
GUID Guid;
SYSTEM_POWER_CONDITION PowerCondition;
DWORD DataLength;
BYTE Data[1];
} SET_POWER_SETTING_VALUE,*PSET_POWER_SETTING_VALUE;
typedef struct {
GUID Guid;
} NOTIFY_USER_POWER_SETTING,*PNOTIFY_USER_POWER_SETTING;
typedef struct _APPLICATIONLAUNCH_SETTING_VALUE {
LARGE_INTEGER ActivationTime;
DWORD Flags;
DWORD ButtonInstanceID;
} APPLICATIONLAUNCH_SETTING_VALUE,*PAPPLICATIONLAUNCH_SETTING_VALUE;
typedef enum _POWER_PLATFORM_ROLE {
PlatformRoleUnspecified = 0,
PlatformRoleDesktop,
PlatformRoleMobile,
PlatformRoleWorkstation,
PlatformRoleEnterpriseServer,
PlatformRoleSOHOServer,
PlatformRoleAppliancePC,
PlatformRolePerformanceServer,
PlatformRoleSlate,
PlatformRoleMaximum
} POWER_PLATFORM_ROLE,*PPOWER_PLATFORM_ROLE;
typedef struct _POWER_PLATFORM_INFORMATION {
BOOLEAN AoAc;
} POWER_PLATFORM_INFORMATION,*PPOWER_PLATFORM_INFORMATION;
typedef struct {
DWORD Granularity;
DWORD Capacity;
} BATTERY_REPORTING_SCALE,*PBATTERY_REPORTING_SCALE;
typedef struct {
DWORD Frequency;
DWORD Flags;
DWORD PercentFrequency;
} PPM_WMI_LEGACY_PERFSTATE,*PPPM_WMI_LEGACY_PERFSTATE;
typedef struct {
DWORD Latency;
DWORD Power;
DWORD TimeCheck;
BYTE PromotePercent;
BYTE DemotePercent;
BYTE StateType;
BYTE Reserved;
DWORD StateFlags;
DWORD Context;
DWORD IdleHandler;
DWORD Reserved1;
} PPM_WMI_IDLE_STATE,*PPPM_WMI_IDLE_STATE;
typedef struct {
DWORD Type;
DWORD Count;
DWORD TargetState;
DWORD OldState;
DWORD64 TargetProcessors;
PPM_WMI_IDLE_STATE State[1];
} PPM_WMI_IDLE_STATES,*PPPM_WMI_IDLE_STATES;
typedef struct {
DWORD Type;
DWORD Count;
DWORD TargetState;
DWORD OldState;
PVOID TargetProcessors;
PPM_WMI_IDLE_STATE State[1];
} PPM_WMI_IDLE_STATES_EX,*PPPM_WMI_IDLE_STATES_EX;
typedef struct {
DWORD Frequency;
DWORD Power;
BYTE PercentFrequency;
BYTE IncreaseLevel;
BYTE DecreaseLevel;
BYTE Type;
DWORD IncreaseTime;
DWORD DecreaseTime;
DWORD64 Control;
DWORD64 Status;
DWORD HitCount;
DWORD Reserved1;
DWORD64 Reserved2;
DWORD64 Reserved3;
} PPM_WMI_PERF_STATE,*PPPM_WMI_PERF_STATE;
typedef struct {
DWORD Count;
DWORD MaxFrequency;
DWORD CurrentState;
DWORD MaxPerfState;
DWORD MinPerfState;
DWORD LowestPerfState;
DWORD ThermalConstraint;
BYTE BusyAdjThreshold;
BYTE PolicyType;
BYTE Type;
BYTE Reserved;
DWORD TimerInterval;
DWORD64 TargetProcessors;
DWORD PStateHandler;
DWORD PStateContext;
DWORD TStateHandler;
DWORD TStateContext;
DWORD FeedbackHandler;
DWORD Reserved1;
DWORD64 Reserved2;
PPM_WMI_PERF_STATE State[1];
} PPM_WMI_PERF_STATES,*PPPM_WMI_PERF_STATES;
typedef struct {
DWORD Count;
DWORD MaxFrequency;
DWORD CurrentState;
DWORD MaxPerfState;
DWORD MinPerfState;
DWORD LowestPerfState;
DWORD ThermalConstraint;
BYTE BusyAdjThreshold;
BYTE PolicyType;
BYTE Type;
BYTE Reserved;
DWORD TimerInterval;
PVOID TargetProcessors;
DWORD PStateHandler;
DWORD PStateContext;
DWORD TStateHandler;
DWORD TStateContext;
DWORD FeedbackHandler;
DWORD Reserved1;
DWORD64 Reserved2;
PPM_WMI_PERF_STATE State[1];
} PPM_WMI_PERF_STATES_EX,*PPPM_WMI_PERF_STATES_EX;
typedef struct {
DWORD IdleTransitions;
DWORD FailedTransitions;
DWORD InvalidBucketIndex;
DWORD64 TotalTime;
DWORD IdleTimeBuckets[6];
} PPM_IDLE_STATE_ACCOUNTING,*PPPM_IDLE_STATE_ACCOUNTING;
typedef struct {
DWORD StateCount;
DWORD TotalTransitions;
DWORD ResetCount;
DWORD64 StartTime;
PPM_IDLE_STATE_ACCOUNTING State[1];
} PPM_IDLE_ACCOUNTING,*PPPM_IDLE_ACCOUNTING;
typedef struct {
DWORD64 TotalTimeUs;
DWORD MinTimeUs;
DWORD MaxTimeUs;
DWORD Count;
} PPM_IDLE_STATE_BUCKET_EX,*PPPM_IDLE_STATE_BUCKET_EX;
typedef struct {
DWORD64 TotalTime;
DWORD IdleTransitions;
DWORD FailedTransitions;
DWORD InvalidBucketIndex;
DWORD MinTimeUs;
DWORD MaxTimeUs;
DWORD CancelledTransitions;
PPM_IDLE_STATE_BUCKET_EX IdleTimeBuckets[16];
} PPM_IDLE_STATE_ACCOUNTING_EX,*PPPM_IDLE_STATE_ACCOUNTING_EX;
typedef struct {
DWORD StateCount;
DWORD TotalTransitions;
DWORD ResetCount;
DWORD AbortCount;
DWORD64 StartTime;
PPM_IDLE_STATE_ACCOUNTING_EX State[1];
} PPM_IDLE_ACCOUNTING_EX,*PPPM_IDLE_ACCOUNTING_EX;
typedef struct {
DWORD State;
DWORD Status;
DWORD Latency;
DWORD Speed;
DWORD Processor;
} PPM_PERFSTATE_EVENT,*PPPM_PERFSTATE_EVENT;
typedef struct {
DWORD State;
DWORD Latency;
DWORD Speed;
DWORD64 Processors;
} PPM_PERFSTATE_DOMAIN_EVENT,*PPPM_PERFSTATE_DOMAIN_EVENT;
typedef struct {
DWORD NewState;
DWORD OldState;
DWORD64 Processors;
} PPM_IDLESTATE_EVENT,*PPPM_IDLESTATE_EVENT;
typedef struct {
DWORD ThermalConstraint;
DWORD64 Processors;
} PPM_THERMALCHANGE_EVENT,*PPPM_THERMALCHANGE_EVENT;
typedef struct {
BYTE Mode;
DWORD64 Processors;
} PPM_THERMAL_POLICY_EVENT,*PPPM_THERMAL_POLICY_EVENT;
extern const GUID PPM_PERFSTATE_CHANGE_GUID;
extern const GUID PPM_PERFSTATE_DOMAIN_CHANGE_GUID;
extern const GUID PPM_IDLESTATE_CHANGE_GUID;
extern const GUID PPM_PERFSTATES_DATA_GUID;
extern const GUID PPM_IDLESTATES_DATA_GUID;
extern const GUID PPM_IDLE_ACCOUNTING_GUID;
extern const GUID PPM_IDLE_ACCOUNTING_EX_GUID;
extern const GUID PPM_THERMALCONSTRAINT_GUID;
extern const GUID PPM_PERFMON_PERFSTATE_GUID;
extern const GUID PPM_THERMAL_POLICY_CHANGE_GUID;
typedef struct {
POWER_ACTION Action;
DWORD Flags;
DWORD EventCode;
} POWER_ACTION_POLICY,*PPOWER_ACTION_POLICY;
typedef struct {
DWORD TimeCheck;
BYTE DemotePercent;
BYTE PromotePercent;
BYTE Spare[2];
} PROCESSOR_IDLESTATE_INFO,*PPROCESSOR_IDLESTATE_INFO;
typedef struct {
BOOLEAN Enable;
BYTE Spare[3];
DWORD BatteryLevel;
POWER_ACTION_POLICY PowerPolicy;
SYSTEM_POWER_STATE MinSystemState;
} SYSTEM_POWER_LEVEL,*PSYSTEM_POWER_LEVEL;
typedef struct _SYSTEM_POWER_POLICY {
DWORD Revision;
POWER_ACTION_POLICY PowerButton;
POWER_ACTION_POLICY SleepButton;
POWER_ACTION_POLICY LidClose;
SYSTEM_POWER_STATE LidOpenWake;
DWORD Reserved;
POWER_ACTION_POLICY Idle;
DWORD IdleTimeout;
BYTE IdleSensitivity;
BYTE DynamicThrottle;
BYTE Spare2[2];
SYSTEM_POWER_STATE MinSleep;
SYSTEM_POWER_STATE MaxSleep;
SYSTEM_POWER_STATE ReducedLatencySleep;
DWORD WinLogonFlags;
DWORD Spare3;
DWORD DozeS4Timeout;
DWORD BroadcastCapacityResolution;
SYSTEM_POWER_LEVEL DischargePolicy[4];
DWORD VideoTimeout;
BOOLEAN VideoDimDisplay;
DWORD VideoReserved[3];
DWORD SpindownTimeout;
BOOLEAN OptimizeForPower;
BYTE FanThrottleTolerance;
BYTE ForcedThrottle;
BYTE MinThrottle;
POWER_ACTION_POLICY OverThrottled;
} SYSTEM_POWER_POLICY,*PSYSTEM_POWER_POLICY;
typedef struct {
WORD Revision;
union {
WORD AsWORD;
__extension__ struct {
WORD AllowScaling : 1;
WORD Disabled : 1;
WORD Reserved : 14;
} ;
} Flags;
DWORD PolicyCount;
PROCESSOR_IDLESTATE_INFO Policy[0x3];
} PROCESSOR_IDLESTATE_POLICY,*PPROCESSOR_IDLESTATE_POLICY;
typedef struct _PROCESSOR_POWER_POLICY_INFO {
DWORD TimeCheck;
DWORD DemoteLimit;
DWORD PromoteLimit;
BYTE DemotePercent;
BYTE PromotePercent;
BYTE Spare[2];
DWORD AllowDemotion:1;
DWORD AllowPromotion:1;
DWORD Reserved:30;
} PROCESSOR_POWER_POLICY_INFO,*PPROCESSOR_POWER_POLICY_INFO;
typedef struct _PROCESSOR_POWER_POLICY {
DWORD Revision;
BYTE DynamicThrottle;
BYTE Spare[3];
DWORD DisableCStates:1;
DWORD Reserved:31;
DWORD PolicyCount;
PROCESSOR_POWER_POLICY_INFO Policy[3];
} PROCESSOR_POWER_POLICY,*PPROCESSOR_POWER_POLICY;
typedef struct {
DWORD Revision;
BYTE MaxThrottle;
BYTE MinThrottle;
BYTE BusyAdjThreshold;
__extension__ union {
BYTE Spare;
union {
BYTE AsBYTE;
__extension__ struct {
BYTE NoDomainAccounting : 1;
BYTE IncreasePolicy: 2;
BYTE DecreasePolicy: 2;
BYTE Reserved : 3;
} ;
} Flags;
} ;
DWORD TimeCheck;
DWORD IncreaseTime;
DWORD DecreaseTime;
DWORD IncreasePercent;
DWORD DecreasePercent;
} PROCESSOR_PERFSTATE_POLICY,*PPROCESSOR_PERFSTATE_POLICY;
typedef struct _ADMINISTRATOR_POWER_POLICY {
SYSTEM_POWER_STATE MinSleep;
SYSTEM_POWER_STATE MaxSleep;
DWORD MinVideoTimeout;
DWORD MaxVideoTimeout;
DWORD MinSpindownTimeout;
DWORD MaxSpindownTimeout;
} ADMINISTRATOR_POWER_POLICY,*PADMINISTRATOR_POWER_POLICY;
typedef struct {
BOOLEAN PowerButtonPresent;
BOOLEAN SleepButtonPresent;
BOOLEAN LidPresent;
BOOLEAN SystemS1;
BOOLEAN SystemS2;
BOOLEAN SystemS3;
BOOLEAN SystemS4;
BOOLEAN SystemS5;
BOOLEAN HiberFilePresent;
BOOLEAN FullWake;
BOOLEAN VideoDimPresent;
BOOLEAN ApmPresent;
BOOLEAN UpsPresent;
BOOLEAN ThermalControl;
BOOLEAN ProcessorThrottle;
BYTE ProcessorMinThrottle;
BYTE ProcessorMaxThrottle;
BOOLEAN FastSystemS4;
BYTE spare2[3];
BOOLEAN DiskSpinDown;
BYTE spare3[8];
BOOLEAN SystemBatteriesPresent;
BOOLEAN BatteriesAreShortTerm;
BATTERY_REPORTING_SCALE BatteryScale[3];
SYSTEM_POWER_STATE AcOnLineWake;
SYSTEM_POWER_STATE SoftLidWake;
SYSTEM_POWER_STATE RtcWake;
SYSTEM_POWER_STATE MinDeviceWakeState;
SYSTEM_POWER_STATE DefaultLowLatencyWake;
} SYSTEM_POWER_CAPABILITIES,*PSYSTEM_POWER_CAPABILITIES;
typedef struct {
BOOLEAN AcOnLine;
BOOLEAN BatteryPresent;
BOOLEAN Charging;
BOOLEAN Discharging;
BOOLEAN Spare1[4];
DWORD MaxCapacity;
DWORD RemainingCapacity;
DWORD Rate;
DWORD EstimatedTime;
DWORD DefaultAlert1;
DWORD DefaultAlert2;
} SYSTEM_BATTERY_STATE,*PSYSTEM_BATTERY_STATE;
#pragma pack(push,4)
#pragma pack(push,2)
typedef struct _IMAGE_DOS_HEADER {
WORD e_magic;
WORD e_cblp;
WORD e_cp;
WORD e_crlc;
WORD e_cparhdr;
WORD e_minalloc;
WORD e_maxalloc;
WORD e_ss;
WORD e_sp;
WORD e_csum;
WORD e_ip;
WORD e_cs;
WORD e_lfarlc;
WORD e_ovno;
WORD e_res[4];
WORD e_oemid;
WORD e_oeminfo;
WORD e_res2[10];
LONG e_lfanew;
} IMAGE_DOS_HEADER,*PIMAGE_DOS_HEADER;
typedef struct _IMAGE_OS2_HEADER {
WORD ne_magic;
CHAR ne_ver;
CHAR ne_rev;
WORD ne_enttab;
WORD ne_cbenttab;
LONG ne_crc;
WORD ne_flags;
WORD ne_autodata;
WORD ne_heap;
WORD ne_stack;
LONG ne_csip;
LONG ne_sssp;
WORD ne_cseg;
WORD ne_cmod;
WORD ne_cbnrestab;
WORD ne_segtab;
WORD ne_rsrctab;
WORD ne_restab;
WORD ne_modtab;
WORD ne_imptab;
LONG ne_nrestab;
WORD ne_cmovent;
WORD ne_align;
WORD ne_cres;
BYTE ne_exetyp;
BYTE ne_flagsothers;
WORD ne_pretthunks;
WORD ne_psegrefbytes;
WORD ne_swaparea;
WORD ne_expver;
} IMAGE_OS2_HEADER,*PIMAGE_OS2_HEADER;
typedef struct _IMAGE_VXD_HEADER {
WORD e32_magic;
BYTE e32_border;
BYTE e32_worder;
DWORD e32_level;
WORD e32_cpu;
WORD e32_os;
DWORD e32_ver;
DWORD e32_mflags;
DWORD e32_mpages;
DWORD e32_startobj;
DWORD e32_eip;
DWORD e32_stackobj;
DWORD e32_esp;
DWORD e32_pagesize;
DWORD e32_lastpagesize;
DWORD e32_fixupsize;
DWORD e32_fixupsum;
DWORD e32_ldrsize;
DWORD e32_ldrsum;
DWORD e32_objtab;
DWORD e32_objcnt;
DWORD e32_objmap;
DWORD e32_itermap;
DWORD e32_rsrctab;
DWORD e32_rsrccnt;
DWORD e32_restab;
DWORD e32_enttab;
DWORD e32_dirtab;
DWORD e32_dircnt;
DWORD e32_fpagetab;
DWORD e32_frectab;
DWORD e32_impmod;
DWORD e32_impmodcnt;
DWORD e32_impproc;
DWORD e32_pagesum;
DWORD e32_datapage;
DWORD e32_preload;
DWORD e32_nrestab;
DWORD e32_cbnrestab;
DWORD e32_nressum;
DWORD e32_autodata;
DWORD e32_debuginfo;
DWORD e32_debuglen;
DWORD e32_instpreload;
DWORD e32_instdemand;
DWORD e32_heapsize;
BYTE e32_res3[12];
DWORD e32_winresoff;
DWORD e32_winreslen;
WORD e32_devid;
WORD e32_ddkver;
} IMAGE_VXD_HEADER,*PIMAGE_VXD_HEADER;
#pragma pack(pop)
typedef struct _IMAGE_FILE_HEADER {
WORD Machine;
WORD NumberOfSections;
DWORD TimeDateStamp;
DWORD PointerToSymbolTable;
DWORD NumberOfSymbols;
WORD SizeOfOptionalHeader;
WORD Characteristics;
} IMAGE_FILE_HEADER,*PIMAGE_FILE_HEADER;
typedef struct _IMAGE_DATA_DIRECTORY {
DWORD VirtualAddress;
DWORD Size;
} IMAGE_DATA_DIRECTORY,*PIMAGE_DATA_DIRECTORY;
typedef struct _IMAGE_OPTIONAL_HEADER {
WORD Magic;
BYTE MajorLinkerVersion;
BYTE MinorLinkerVersion;
DWORD SizeOfCode;
DWORD SizeOfInitializedData;
DWORD SizeOfUninitializedData;
DWORD AddressOfEntryPoint;
DWORD BaseOfCode;
DWORD BaseOfData;
DWORD ImageBase;
DWORD SectionAlignment;
DWORD FileAlignment;
WORD MajorOperatingSystemVersion;
WORD MinorOperatingSystemVersion;
WORD MajorImageVersion;
WORD MinorImageVersion;
WORD MajorSubsystemVersion;
WORD MinorSubsystemVersion;
DWORD Win32VersionValue;
DWORD SizeOfImage;
DWORD SizeOfHeaders;
DWORD CheckSum;
WORD Subsystem;
WORD DllCharacteristics;
DWORD SizeOfStackReserve;
DWORD SizeOfStackCommit;
DWORD SizeOfHeapReserve;
DWORD SizeOfHeapCommit;
DWORD LoaderFlags;
DWORD NumberOfRvaAndSizes;
IMAGE_DATA_DIRECTORY DataDirectory[16];
} IMAGE_OPTIONAL_HEADER32,*PIMAGE_OPTIONAL_HEADER32;
typedef struct _IMAGE_ROM_OPTIONAL_HEADER {
WORD Magic;
BYTE MajorLinkerVersion;
BYTE MinorLinkerVersion;
DWORD SizeOfCode;
DWORD SizeOfInitializedData;
DWORD SizeOfUninitializedData;
DWORD AddressOfEntryPoint;
DWORD BaseOfCode;
DWORD BaseOfData;
DWORD BaseOfBss;
DWORD GprMask;
DWORD CprMask[4];
DWORD GpValue;
} IMAGE_ROM_OPTIONAL_HEADER,*PIMAGE_ROM_OPTIONAL_HEADER;
typedef struct _IMAGE_OPTIONAL_HEADER64 {
WORD Magic;
BYTE MajorLinkerVersion;
BYTE MinorLinkerVersion;
DWORD SizeOfCode;
DWORD SizeOfInitializedData;
DWORD SizeOfUninitializedData;
DWORD AddressOfEntryPoint;
DWORD BaseOfCode;
ULONGLONG ImageBase;
DWORD SectionAlignment;
DWORD FileAlignment;
WORD MajorOperatingSystemVersion;
WORD MinorOperatingSystemVersion;
WORD MajorImageVersion;
WORD MinorImageVersion;
WORD MajorSubsystemVersion;
WORD MinorSubsystemVersion;
DWORD Win32VersionValue;
DWORD SizeOfImage;
DWORD SizeOfHeaders;
DWORD CheckSum;
WORD Subsystem;
WORD DllCharacteristics;
ULONGLONG SizeOfStackReserve;
ULONGLONG SizeOfStackCommit;
ULONGLONG SizeOfHeapReserve;
ULONGLONG SizeOfHeapCommit;
DWORD LoaderFlags;
DWORD NumberOfRvaAndSizes;
IMAGE_DATA_DIRECTORY DataDirectory[16];
} IMAGE_OPTIONAL_HEADER64,*PIMAGE_OPTIONAL_HEADER64;
typedef IMAGE_OPTIONAL_HEADER32 IMAGE_OPTIONAL_HEADER;
typedef PIMAGE_OPTIONAL_HEADER32 PIMAGE_OPTIONAL_HEADER;
typedef struct _IMAGE_NT_HEADERS64 {
DWORD Signature;
IMAGE_FILE_HEADER FileHeader;
IMAGE_OPTIONAL_HEADER64 OptionalHeader;
} IMAGE_NT_HEADERS64,*PIMAGE_NT_HEADERS64;
typedef struct _IMAGE_NT_HEADERS {
DWORD Signature;
IMAGE_FILE_HEADER FileHeader;
IMAGE_OPTIONAL_HEADER32 OptionalHeader;
} IMAGE_NT_HEADERS32,*PIMAGE_NT_HEADERS32;
typedef struct _IMAGE_ROM_HEADERS {
IMAGE_FILE_HEADER FileHeader;
IMAGE_ROM_OPTIONAL_HEADER OptionalHeader;
} IMAGE_ROM_HEADERS,*PIMAGE_ROM_HEADERS;
typedef IMAGE_NT_HEADERS32 IMAGE_NT_HEADERS;
typedef PIMAGE_NT_HEADERS32 PIMAGE_NT_HEADERS;
typedef struct ANON_OBJECT_HEADER {
WORD Sig1;
WORD Sig2;
WORD Version;
WORD Machine;
DWORD TimeDateStamp;
CLSID ClassID;
DWORD SizeOfData;
} ANON_OBJECT_HEADER;
typedef struct ANON_OBJECT_HEADER_V2 {
WORD Sig1;
WORD Sig2;
WORD Version;
WORD Machine;
DWORD TimeDateStamp;
CLSID ClassID;
DWORD SizeOfData;
DWORD Flags;
DWORD MetaDataSize;
DWORD MetaDataOffset;
} ANON_OBJECT_HEADER_V2;
typedef struct ANON_OBJECT_HEADER_BIGOBJ {
WORD Sig1;
WORD Sig2;
WORD Version;
WORD Machine;
DWORD TimeDateStamp;
CLSID ClassID;
DWORD SizeOfData;
DWORD Flags;
DWORD MetaDataSize;
DWORD MetaDataOffset;
DWORD NumberOfSections;
DWORD PointerToSymbolTable;
DWORD NumberOfSymbols;
} ANON_OBJECT_HEADER_BIGOBJ;
typedef struct _IMAGE_SECTION_HEADER {
BYTE Name[8];
union {
DWORD PhysicalAddress;
DWORD VirtualSize;
} Misc;
DWORD VirtualAddress;
DWORD SizeOfRawData;
DWORD PointerToRawData;
DWORD PointerToRelocations;
DWORD PointerToLinenumbers;
WORD NumberOfRelocations;
WORD NumberOfLinenumbers;
DWORD Characteristics;
} IMAGE_SECTION_HEADER,*PIMAGE_SECTION_HEADER;
#pragma pack(push,2)
typedef struct _IMAGE_SYMBOL {
union {
BYTE ShortName[8];
struct {
DWORD Short;
DWORD Long;
} Name;
DWORD LongName[2];
} N;
DWORD Value;
SHORT SectionNumber;
WORD Type;
BYTE StorageClass;
BYTE NumberOfAuxSymbols;
} IMAGE_SYMBOL;
typedef IMAGE_SYMBOL *PIMAGE_SYMBOL;
typedef struct _IMAGE_SYMBOL_EX {
union {
BYTE ShortName[8];
struct {
DWORD Short;
DWORD Long;
} Name;
DWORD LongName[2];
} N;
DWORD Value;
LONG SectionNumber;
WORD Type;
BYTE StorageClass;
BYTE NumberOfAuxSymbols;
} IMAGE_SYMBOL_EX, *PIMAGE_SYMBOL_EX;
#pragma pack(push,2)
typedef struct IMAGE_AUX_SYMBOL_TOKEN_DEF {
BYTE bAuxType;
BYTE bReserved;
DWORD SymbolTableIndex;
BYTE rgbReserved[12];
} IMAGE_AUX_SYMBOL_TOKEN_DEF, *PIMAGE_AUX_SYMBOL_TOKEN_DEF;
#pragma pack(pop)
typedef union _IMAGE_AUX_SYMBOL {
struct {
DWORD TagIndex;
union {
struct {
WORD Linenumber;
WORD Size;
} LnSz;
DWORD TotalSize;
} Misc;
union {
struct {
DWORD PointerToLinenumber;
DWORD PointerToNextFunction;
} Function;
struct {
WORD Dimension[4];
} Array;
} FcnAry;
WORD TvIndex;
} Sym;
struct {
BYTE Name[18];
} File;
struct {
DWORD Length;
WORD NumberOfRelocations;
WORD NumberOfLinenumbers;
DWORD CheckSum;
SHORT Number;
BYTE Selection;
} Section;
IMAGE_AUX_SYMBOL_TOKEN_DEF TokenDef;
struct {
DWORD crc;
BYTE rgbReserved[14];
} CRC;
} IMAGE_AUX_SYMBOL, *PIMAGE_AUX_SYMBOL;
typedef union _IMAGE_AUX_SYMBOL_EX {
struct {
DWORD WeakDefaultSymIndex;
DWORD WeakSearchType;
BYTE rgbReserved[12];
} Sym;
struct {
BYTE Name[sizeof (IMAGE_SYMBOL_EX)];
} File;
struct {
DWORD Length;
WORD NumberOfRelocations;
WORD NumberOfLinenumbers;
DWORD CheckSum;
SHORT Number;
BYTE Selection;
BYTE bReserved;
SHORT HighNumber;
BYTE rgbReserved[2];
} Section;
__extension__ struct {
IMAGE_AUX_SYMBOL_TOKEN_DEF TokenDef;
BYTE rgbReserved[2];
};
struct {
DWORD crc;
BYTE rgbReserved[16];
} CRC;
} IMAGE_AUX_SYMBOL_EX, *PIMAGE_AUX_SYMBOL_EX;
typedef enum IMAGE_AUX_SYMBOL_TYPE {
IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF = 1
} IMAGE_AUX_SYMBOL_TYPE;
typedef struct _IMAGE_RELOCATION {
__extension__ union {
DWORD VirtualAddress;
DWORD RelocCount;
} ;
DWORD SymbolTableIndex;
WORD Type;
} IMAGE_RELOCATION;
typedef IMAGE_RELOCATION *PIMAGE_RELOCATION;
typedef struct _IMAGE_LINENUMBER {
union {
DWORD SymbolTableIndex;
DWORD VirtualAddress;
} Type;
WORD Linenumber;
} IMAGE_LINENUMBER;
typedef IMAGE_LINENUMBER *PIMAGE_LINENUMBER;
#pragma pack(pop)
typedef struct _IMAGE_BASE_RELOCATION {
DWORD VirtualAddress;
DWORD SizeOfBlock;
} IMAGE_BASE_RELOCATION;
typedef IMAGE_BASE_RELOCATION *PIMAGE_BASE_RELOCATION;
typedef struct _IMAGE_ARCHIVE_MEMBER_HEADER {
BYTE Name[16];
BYTE Date[12];
BYTE UserID[6];
BYTE GroupID[6];
BYTE Mode[8];
BYTE Size[10];
BYTE EndHeader[2];
} IMAGE_ARCHIVE_MEMBER_HEADER,*PIMAGE_ARCHIVE_MEMBER_HEADER;
typedef struct _IMAGE_EXPORT_DIRECTORY {
DWORD Characteristics;
DWORD TimeDateStamp;
WORD MajorVersion;
WORD MinorVersion;
DWORD Name;
DWORD Base;
DWORD NumberOfFunctions;
DWORD NumberOfNames;
DWORD AddressOfFunctions;
DWORD AddressOfNames;
DWORD AddressOfNameOrdinals;
} IMAGE_EXPORT_DIRECTORY,*PIMAGE_EXPORT_DIRECTORY;
typedef struct _IMAGE_IMPORT_BY_NAME {
WORD Hint;
CHAR Name[1];
} IMAGE_IMPORT_BY_NAME,*PIMAGE_IMPORT_BY_NAME;
#pragma pack(push,8)
typedef struct _IMAGE_THUNK_DATA64 {
union {
ULONGLONG ForwarderString;
ULONGLONG Function;
ULONGLONG Ordinal;
ULONGLONG AddressOfData;
} u1;
} IMAGE_THUNK_DATA64;
typedef IMAGE_THUNK_DATA64 *PIMAGE_THUNK_DATA64;
#pragma pack(pop)
typedef struct _IMAGE_THUNK_DATA32 {
union {
DWORD ForwarderString;
DWORD Function;
DWORD Ordinal;
DWORD AddressOfData;
} u1;
} IMAGE_THUNK_DATA32;
typedef IMAGE_THUNK_DATA32 *PIMAGE_THUNK_DATA32;
typedef void (__attribute__((__stdcall__)) *PIMAGE_TLS_CALLBACK)(PVOID DllHandle,DWORD Reason,PVOID Reserved);
typedef struct _IMAGE_TLS_DIRECTORY64 {
ULONGLONG StartAddressOfRawData;
ULONGLONG EndAddressOfRawData;
ULONGLONG AddressOfIndex;
ULONGLONG AddressOfCallBacks;
DWORD SizeOfZeroFill;
DWORD Characteristics;
} IMAGE_TLS_DIRECTORY64;
typedef IMAGE_TLS_DIRECTORY64 *PIMAGE_TLS_DIRECTORY64;
typedef struct _IMAGE_TLS_DIRECTORY32 {
DWORD StartAddressOfRawData;
DWORD EndAddressOfRawData;
DWORD AddressOfIndex;
DWORD AddressOfCallBacks;
DWORD SizeOfZeroFill;
DWORD Characteristics;
} IMAGE_TLS_DIRECTORY32;
typedef IMAGE_TLS_DIRECTORY32 *PIMAGE_TLS_DIRECTORY32;
typedef IMAGE_THUNK_DATA32 IMAGE_THUNK_DATA;
typedef PIMAGE_THUNK_DATA32 PIMAGE_THUNK_DATA;
typedef IMAGE_TLS_DIRECTORY32 IMAGE_TLS_DIRECTORY;
typedef PIMAGE_TLS_DIRECTORY32 PIMAGE_TLS_DIRECTORY;
typedef struct _IMAGE_IMPORT_DESCRIPTOR {
__extension__ union {
DWORD Characteristics;
DWORD OriginalFirstThunk;
} ;
DWORD TimeDateStamp;
DWORD ForwarderChain;
DWORD Name;
DWORD FirstThunk;
} IMAGE_IMPORT_DESCRIPTOR;
typedef IMAGE_IMPORT_DESCRIPTOR *PIMAGE_IMPORT_DESCRIPTOR;
typedef struct _IMAGE_BOUND_IMPORT_DESCRIPTOR {
DWORD TimeDateStamp;
WORD OffsetModuleName;
WORD NumberOfModuleForwarderRefs;
} IMAGE_BOUND_IMPORT_DESCRIPTOR,*PIMAGE_BOUND_IMPORT_DESCRIPTOR;
typedef struct _IMAGE_BOUND_FORWARDER_REF {
DWORD TimeDateStamp;
WORD OffsetModuleName;
WORD Reserved;
} IMAGE_BOUND_FORWARDER_REF,*PIMAGE_BOUND_FORWARDER_REF;
typedef struct _IMAGE_DELAYLOAD_DESCRIPTOR {
union {
DWORD AllAttributes;
__extension__ struct {
DWORD RvaBased : 1;
DWORD ReservedAttributes : 31;
};
} Attributes;
DWORD DllNameRVA;
DWORD ModuleHandleRVA;
DWORD ImportAddressTableRVA;
DWORD ImportNameTableRVA;
DWORD BoundImportAddressTableRVA;
DWORD UnloadInformationTableRVA;
DWORD TimeDateStamp;
} IMAGE_DELAYLOAD_DESCRIPTOR,*PIMAGE_DELAYLOAD_DESCRIPTOR;
typedef const IMAGE_DELAYLOAD_DESCRIPTOR *PCIMAGE_DELAYLOAD_DESCRIPTOR;
typedef struct _IMAGE_RESOURCE_DIRECTORY {
DWORD Characteristics;
DWORD TimeDateStamp;
WORD MajorVersion;
WORD MinorVersion;
WORD NumberOfNamedEntries;
WORD NumberOfIdEntries;
} IMAGE_RESOURCE_DIRECTORY,*PIMAGE_RESOURCE_DIRECTORY;
typedef struct _IMAGE_RESOURCE_DIRECTORY_ENTRY {
__extension__ union {
__extension__ struct {
DWORD NameOffset:31;
DWORD NameIsString:1;
} ;
DWORD Name;
WORD Id;
} ;
__extension__ union {
DWORD OffsetToData;
__extension__ struct {
DWORD OffsetToDirectory:31;
DWORD DataIsDirectory:1;
} ;
} ;
} IMAGE_RESOURCE_DIRECTORY_ENTRY,*PIMAGE_RESOURCE_DIRECTORY_ENTRY;
typedef struct _IMAGE_RESOURCE_DIRECTORY_STRING {
WORD Length;
CHAR NameString[1];
} IMAGE_RESOURCE_DIRECTORY_STRING,*PIMAGE_RESOURCE_DIRECTORY_STRING;
typedef struct _IMAGE_RESOURCE_DIR_STRING_U {
WORD Length;
WCHAR NameString[1];
} IMAGE_RESOURCE_DIR_STRING_U,*PIMAGE_RESOURCE_DIR_STRING_U;
typedef struct _IMAGE_RESOURCE_DATA_ENTRY {
DWORD OffsetToData;
DWORD Size;
DWORD CodePage;
DWORD Reserved;
} IMAGE_RESOURCE_DATA_ENTRY,*PIMAGE_RESOURCE_DATA_ENTRY;
typedef struct {
DWORD Size;
DWORD TimeDateStamp;
WORD MajorVersion;
WORD MinorVersion;
DWORD GlobalFlagsClear;
DWORD GlobalFlagsSet;
DWORD CriticalSectionDefaultTimeout;
DWORD DeCommitFreeBlockThreshold;
DWORD DeCommitTotalFreeThreshold;
DWORD LockPrefixTable;
DWORD MaximumAllocationSize;
DWORD VirtualMemoryThreshold;
DWORD ProcessHeapFlags;
DWORD ProcessAffinityMask;
WORD CSDVersion;
WORD Reserved1;
DWORD EditList;
DWORD SecurityCookie;
DWORD SEHandlerTable;
DWORD SEHandlerCount;
} IMAGE_LOAD_CONFIG_DIRECTORY32,*PIMAGE_LOAD_CONFIG_DIRECTORY32;
typedef struct {
DWORD Size;
DWORD TimeDateStamp;
WORD MajorVersion;
WORD MinorVersion;
DWORD GlobalFlagsClear;
DWORD GlobalFlagsSet;
DWORD CriticalSectionDefaultTimeout;
ULONGLONG DeCommitFreeBlockThreshold;
ULONGLONG DeCommitTotalFreeThreshold;
ULONGLONG LockPrefixTable;
ULONGLONG MaximumAllocationSize;
ULONGLONG VirtualMemoryThreshold;
ULONGLONG ProcessAffinityMask;
DWORD ProcessHeapFlags;
WORD CSDVersion;
WORD Reserved1;
ULONGLONG EditList;
ULONGLONG SecurityCookie;
ULONGLONG SEHandlerTable;
ULONGLONG SEHandlerCount;
} IMAGE_LOAD_CONFIG_DIRECTORY64,*PIMAGE_LOAD_CONFIG_DIRECTORY64;
typedef IMAGE_LOAD_CONFIG_DIRECTORY32 IMAGE_LOAD_CONFIG_DIRECTORY;
typedef PIMAGE_LOAD_CONFIG_DIRECTORY32 PIMAGE_LOAD_CONFIG_DIRECTORY;
typedef struct _IMAGE_CE_RUNTIME_FUNCTION_ENTRY {
DWORD FuncStart;
DWORD PrologLen : 8;
DWORD FuncLen : 22;
DWORD ThirtyTwoBit : 1;
DWORD ExceptionFlag : 1;
} IMAGE_CE_RUNTIME_FUNCTION_ENTRY,*PIMAGE_CE_RUNTIME_FUNCTION_ENTRY;
typedef struct _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY {
ULONGLONG BeginAddress;
ULONGLONG EndAddress;
ULONGLONG ExceptionHandler;
ULONGLONG HandlerData;
ULONGLONG PrologEndAddress;
} IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY,*PIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY;
typedef struct _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY {
DWORD BeginAddress;
DWORD EndAddress;
DWORD ExceptionHandler;
DWORD HandlerData;
DWORD PrologEndAddress;
} IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY,*PIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY;
typedef struct _IMAGE_ARM_RUNTIME_FUNCTION_ENTRY {
DWORD BeginAddress;
__extension__ union {
DWORD UnwindData;
__extension__ struct {
DWORD Flag : 2;
DWORD FunctionLength : 11;
DWORD Ret : 2;
DWORD H : 1;
DWORD Reg : 3;
DWORD R : 1;
DWORD L : 1;
DWORD C : 1;
DWORD StackAdjust : 10;
} ;
} ;
} IMAGE_ARM_RUNTIME_FUNCTION_ENTRY,*PIMAGE_ARM_RUNTIME_FUNCTION_ENTRY;
typedef struct _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY {
DWORD BeginAddress;
__extension__ union {
DWORD UnwindData;
__extension__ struct {
DWORD Flag : 2;
DWORD FunctionLength : 11;
DWORD RegF : 3;
DWORD RegI : 4;
DWORD H : 1;
DWORD CR : 2;
DWORD FrameSize : 9;
} ;
} ;
} IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY,*PIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY;
typedef struct _IMAGE_RUNTIME_FUNCTION_ENTRY {
DWORD BeginAddress;
DWORD EndAddress;
__extension__ union {
DWORD UnwindInfoAddress;
DWORD UnwindData;
} ;
} _IMAGE_RUNTIME_FUNCTION_ENTRY,*_PIMAGE_RUNTIME_FUNCTION_ENTRY;
typedef _IMAGE_RUNTIME_FUNCTION_ENTRY IMAGE_IA64_RUNTIME_FUNCTION_ENTRY;
typedef _PIMAGE_RUNTIME_FUNCTION_ENTRY PIMAGE_IA64_RUNTIME_FUNCTION_ENTRY;
typedef _IMAGE_RUNTIME_FUNCTION_ENTRY IMAGE_RUNTIME_FUNCTION_ENTRY;
typedef _PIMAGE_RUNTIME_FUNCTION_ENTRY PIMAGE_RUNTIME_FUNCTION_ENTRY;
typedef struct _IMAGE_DEBUG_DIRECTORY {
DWORD Characteristics;
DWORD TimeDateStamp;
WORD MajorVersion;
WORD MinorVersion;
DWORD Type;
DWORD SizeOfData;
DWORD AddressOfRawData;
DWORD PointerToRawData;
} IMAGE_DEBUG_DIRECTORY,*PIMAGE_DEBUG_DIRECTORY;
typedef struct _IMAGE_COFF_SYMBOLS_HEADER {
DWORD NumberOfSymbols;
DWORD LvaToFirstSymbol;
DWORD NumberOfLinenumbers;
DWORD LvaToFirstLinenumber;
DWORD RvaToFirstByteOfCode;
DWORD RvaToLastByteOfCode;
DWORD RvaToFirstByteOfData;
DWORD RvaToLastByteOfData;
} IMAGE_COFF_SYMBOLS_HEADER,*PIMAGE_COFF_SYMBOLS_HEADER;
typedef struct _FPO_DATA {
DWORD ulOffStart;
DWORD cbProcSize;
DWORD cdwLocals;
WORD cdwParams;
WORD cbProlog : 8;
WORD cbRegs : 3;
WORD fHasSEH : 1;
WORD fUseBP : 1;
WORD reserved : 1;
WORD cbFrame : 2;
} FPO_DATA,*PFPO_DATA;
typedef struct _IMAGE_DEBUG_MISC {
DWORD DataType;
DWORD Length;
BOOLEAN Unicode;
BYTE Reserved[3];
BYTE Data[1];
} IMAGE_DEBUG_MISC,*PIMAGE_DEBUG_MISC;
typedef struct _IMAGE_FUNCTION_ENTRY {
DWORD StartingAddress;
DWORD EndingAddress;
DWORD EndOfPrologue;
} IMAGE_FUNCTION_ENTRY,*PIMAGE_FUNCTION_ENTRY;
typedef struct _IMAGE_FUNCTION_ENTRY64 {
ULONGLONG StartingAddress;
ULONGLONG EndingAddress;
__extension__ union {
ULONGLONG EndOfPrologue;
ULONGLONG UnwindInfoAddress;
} ;
} IMAGE_FUNCTION_ENTRY64,*PIMAGE_FUNCTION_ENTRY64;
typedef struct _IMAGE_SEPARATE_DEBUG_HEADER {
WORD Signature;
WORD Flags;
WORD Machine;
WORD Characteristics;
DWORD TimeDateStamp;
DWORD CheckSum;
DWORD ImageBase;
DWORD SizeOfImage;
DWORD NumberOfSections;
DWORD ExportedNamesSize;
DWORD DebugDirectorySize;
DWORD SectionAlignment;
DWORD Reserved[2];
} IMAGE_SEPARATE_DEBUG_HEADER,*PIMAGE_SEPARATE_DEBUG_HEADER;
typedef struct _NON_PAGED_DEBUG_INFO {
WORD Signature;
WORD Flags;
DWORD Size;
WORD Machine;
WORD Characteristics;
DWORD TimeDateStamp;
DWORD CheckSum;
DWORD SizeOfImage;
ULONGLONG ImageBase;
} NON_PAGED_DEBUG_INFO,*PNON_PAGED_DEBUG_INFO;
typedef struct _ImageArchitectureHeader {
unsigned int AmaskValue: 1;
int Adummy1 : 7;
unsigned int AmaskShift : 8;
int Adummy2 : 16;
DWORD FirstEntryRVA;
} IMAGE_ARCHITECTURE_HEADER,*PIMAGE_ARCHITECTURE_HEADER;
typedef struct _ImageArchitectureEntry {
DWORD FixupInstRVA;
DWORD NewInst;
} IMAGE_ARCHITECTURE_ENTRY,*PIMAGE_ARCHITECTURE_ENTRY;
#pragma pack(pop)
typedef struct IMPORT_OBJECT_HEADER {
WORD Sig1;
WORD Sig2;
WORD Version;
WORD Machine;
DWORD TimeDateStamp;
DWORD SizeOfData;
__extension__ union {
WORD Ordinal;
WORD Hint;
};
WORD Type : 2;
WORD NameType : 3;
WORD Reserved : 11;
} IMPORT_OBJECT_HEADER;
typedef enum IMPORT_OBJECT_TYPE {
IMPORT_OBJECT_CODE = 0,IMPORT_OBJECT_DATA = 1,IMPORT_OBJECT_CONST = 2
} IMPORT_OBJECT_TYPE;
typedef enum IMPORT_OBJECT_NAME_TYPE {
IMPORT_OBJECT_ORDINAL = 0,IMPORT_OBJECT_NAME = 1,IMPORT_OBJECT_NAME_NO_PREFIX = 2,IMPORT_OBJECT_NAME_UNDECORATE = 3
} IMPORT_OBJECT_NAME_TYPE;
typedef enum ReplacesCorHdrNumericDefines {
COMIMAGE_FLAGS_ILONLY = 0x00000001,COMIMAGE_FLAGS_32BITREQUIRED = 0x00000002,COMIMAGE_FLAGS_IL_LIBRARY = 0x00000004,
COMIMAGE_FLAGS_STRONGNAMESIGNED = 0x00000008,COMIMAGE_FLAGS_TRACKDEBUGDATA = 0x00010000,COR_VERSION_MAJOR_V2 = 2,
COR_VERSION_MAJOR = COR_VERSION_MAJOR_V2,COR_VERSION_MINOR = 0,COR_DELETED_NAME_LENGTH = 8,COR_VTABLEGAP_NAME_LENGTH = 8,
NATIVE_TYPE_MAX_CB = 1,COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE= 0xFF,IMAGE_COR_MIH_METHODRVA = 0x01,IMAGE_COR_MIH_EHRVA = 0x02,
IMAGE_COR_MIH_BASICBLOCK = 0x08,COR_VTABLE_32BIT =0x01,COR_VTABLE_64BIT =0x02,COR_VTABLE_FROM_UNMANAGED = 0x04,
COR_VTABLE_CALL_MOST_DERIVED = 0x10,IMAGE_COR_EATJ_THUNK_SIZE = 32,MAX_CLASS_NAME =1024,MAX_PACKAGE_NAME = 1024
} ReplacesCorHdrNumericDefines;
typedef struct IMAGE_COR20_HEADER {
DWORD cb;
WORD MajorRuntimeVersion;
WORD MinorRuntimeVersion;
IMAGE_DATA_DIRECTORY MetaData;
DWORD Flags;
__extension__ union {
DWORD EntryPointToken;
DWORD EntryPointRVA;
} ;
IMAGE_DATA_DIRECTORY Resources;
IMAGE_DATA_DIRECTORY StrongNameSignature;
IMAGE_DATA_DIRECTORY CodeManagerTable;
IMAGE_DATA_DIRECTORY VTableFixups;
IMAGE_DATA_DIRECTORY ExportAddressTableJumps;
IMAGE_DATA_DIRECTORY ManagedNativeHeader;
} IMAGE_COR20_HEADER,*PIMAGE_COR20_HEADER;
__attribute__((dllimport)) WORD __attribute__((__stdcall__)) RtlCaptureStackBackTrace (DWORD FramesToSkip, DWORD FramesToCapture, PVOID *BackTrace, PDWORD BackTraceHash);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RtlCaptureContext (PCONTEXT ContextRecord);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) RtlCompareMemory (const void *Source1, const void *Source2, SIZE_T Length);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RtlUnwind (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) RtlPcToFileHeader (PVOID PcValue, PVOID *BaseOfImage);
typedef struct _SINGLE_LIST_ENTRY SLIST_ENTRY,*PSLIST_ENTRY;
typedef union _SLIST_HEADER {
ULONGLONG Alignment;
__extension__ struct {
SLIST_ENTRY Next;
WORD Depth;
WORD Sequence;
} ;
} SLIST_HEADER,*PSLIST_HEADER;
__attribute__((dllimport)) void __attribute__((__stdcall__)) RtlInitializeSListHead (PSLIST_HEADER ListHead);
__attribute__((dllimport)) PSLIST_ENTRY __attribute__((__stdcall__)) RtlFirstEntrySList (const SLIST_HEADER *ListHead);
__attribute__((dllimport)) PSLIST_ENTRY __attribute__((__stdcall__)) RtlInterlockedPopEntrySList (PSLIST_HEADER ListHead);
__attribute__((dllimport)) PSLIST_ENTRY __attribute__((__stdcall__)) RtlInterlockedPushEntrySList (PSLIST_HEADER ListHead, PSLIST_ENTRY ListEntry);
__attribute__((dllimport)) PSLIST_ENTRY __attribute__((__stdcall__)) RtlInterlockedPushListSListEx (PSLIST_HEADER ListHead, PSLIST_ENTRY List, PSLIST_ENTRY ListEnd, DWORD Count);
__attribute__((dllimport)) PSLIST_ENTRY __attribute__((__stdcall__)) RtlInterlockedFlushSList (PSLIST_HEADER ListHead);
__attribute__((dllimport)) WORD __attribute__((__stdcall__)) RtlQueryDepthSList (PSLIST_HEADER ListHead);
typedef struct _RTL_RUN_ONCE { PVOID Ptr; } RTL_RUN_ONCE, *PRTL_RUN_ONCE;
typedef DWORD (__attribute__((__stdcall__)) *PRTL_RUN_ONCE_INIT_FN)(PRTL_RUN_ONCE, PVOID, PVOID *);
typedef struct _RTL_BARRIER {
DWORD Reserved1;
DWORD Reserved2;
ULONG_PTR Reserved3[2];
DWORD Reserved4;
DWORD Reserved5;
} RTL_BARRIER,*PRTL_BARRIER;
PVOID __attribute__((__stdcall__)) RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt);
typedef struct _MESSAGE_RESOURCE_ENTRY {
WORD Length;
WORD Flags;
BYTE Text[1];
} MESSAGE_RESOURCE_ENTRY,*PMESSAGE_RESOURCE_ENTRY;
typedef struct _MESSAGE_RESOURCE_BLOCK {
DWORD LowId;
DWORD HighId;
DWORD OffsetToEntries;
} MESSAGE_RESOURCE_BLOCK,*PMESSAGE_RESOURCE_BLOCK;
typedef struct _MESSAGE_RESOURCE_DATA {
DWORD NumberOfBlocks;
MESSAGE_RESOURCE_BLOCK Blocks[1];
} MESSAGE_RESOURCE_DATA,*PMESSAGE_RESOURCE_DATA;
typedef struct _OSVERSIONINFOA {
DWORD dwOSVersionInfoSize;
DWORD dwMajorVersion;
DWORD dwMinorVersion;
DWORD dwBuildNumber;
DWORD dwPlatformId;
CHAR szCSDVersion[128];
} OSVERSIONINFOA,*POSVERSIONINFOA,*LPOSVERSIONINFOA;
typedef struct _OSVERSIONINFOW {
DWORD dwOSVersionInfoSize;
DWORD dwMajorVersion;
DWORD dwMinorVersion;
DWORD dwBuildNumber;
DWORD dwPlatformId;
WCHAR szCSDVersion[128];
} OSVERSIONINFOW,*POSVERSIONINFOW,*LPOSVERSIONINFOW,RTL_OSVERSIONINFOW,*PRTL_OSVERSIONINFOW;
typedef OSVERSIONINFOA OSVERSIONINFO;
typedef POSVERSIONINFOA POSVERSIONINFO;
typedef LPOSVERSIONINFOA LPOSVERSIONINFO;
typedef struct _OSVERSIONINFOEXA {
DWORD dwOSVersionInfoSize;
DWORD dwMajorVersion;
DWORD dwMinorVersion;
DWORD dwBuildNumber;
DWORD dwPlatformId;
CHAR szCSDVersion[128];
WORD wServicePackMajor;
WORD wServicePackMinor;
WORD wSuiteMask;
BYTE wProductType;
BYTE wReserved;
} OSVERSIONINFOEXA,*POSVERSIONINFOEXA,*LPOSVERSIONINFOEXA;
typedef struct _OSVERSIONINFOEXW {
DWORD dwOSVersionInfoSize;
DWORD dwMajorVersion;
DWORD dwMinorVersion;
DWORD dwBuildNumber;
DWORD dwPlatformId;
WCHAR szCSDVersion[128];
WORD wServicePackMajor;
WORD wServicePackMinor;
WORD wSuiteMask;
BYTE wProductType;
BYTE wReserved;
} OSVERSIONINFOEXW,*POSVERSIONINFOEXW,*LPOSVERSIONINFOEXW,RTL_OSVERSIONINFOEXW,*PRTL_OSVERSIONINFOEXW;
typedef OSVERSIONINFOEXA OSVERSIONINFOEX;
typedef POSVERSIONINFOEXA POSVERSIONINFOEX;
typedef LPOSVERSIONINFOEXA LPOSVERSIONINFOEX;
__attribute__((dllimport)) ULONGLONG __attribute__((__stdcall__)) VerSetConditionMask (ULONGLONG ConditionMask, DWORD TypeMask, BYTE Condition);
typedef enum _RTL_UMS_THREAD_INFO_CLASS {
UmsThreadInvalidInfoClass = 0,
UmsThreadUserContext,
UmsThreadPriority,
UmsThreadAffinity,
UmsThreadTeb,
UmsThreadIsSuspended,
UmsThreadIsTerminated,
UmsThreadMaxInfoClass
} RTL_UMS_THREAD_INFO_CLASS,*PRTL_UMS_THREAD_INFO_CLASS;
typedef enum _RTL_UMS_SCHEDULER_REASON {
UmsSchedulerStartup = 0,
UmsSchedulerThreadBlocked,
UmsSchedulerThreadYield,
} RTL_UMS_SCHEDULER_REASON,*PRTL_UMS_SCHEDULER_REASON;
typedef void __attribute__((__stdcall__)) RTL_UMS_SCHEDULER_ENTRY_POINT (RTL_UMS_SCHEDULER_REASON Reason, ULONG_PTR ActivationPayload, PVOID SchedulerParam);
typedef RTL_UMS_SCHEDULER_ENTRY_POINT *PRTL_UMS_SCHEDULER_ENTRY_POINT;
typedef struct _RTL_CRITICAL_SECTION_DEBUG {
WORD Type;
WORD CreatorBackTraceIndex;
struct _RTL_CRITICAL_SECTION *CriticalSection;
LIST_ENTRY ProcessLocksList;
DWORD EntryCount;
DWORD ContentionCount;
DWORD Flags;
WORD CreatorBackTraceIndexHigh;
WORD SpareWORD;
} RTL_CRITICAL_SECTION_DEBUG,*PRTL_CRITICAL_SECTION_DEBUG,RTL_RESOURCE_DEBUG,*PRTL_RESOURCE_DEBUG;
#pragma pack(push,8)
typedef struct _RTL_CRITICAL_SECTION {
PRTL_CRITICAL_SECTION_DEBUG DebugInfo;
LONG LockCount;
LONG RecursionCount;
HANDLE OwningThread;
HANDLE LockSemaphore;
ULONG_PTR SpinCount;
} RTL_CRITICAL_SECTION,*PRTL_CRITICAL_SECTION;
#pragma pack(pop)
typedef struct _RTL_SRWLOCK { PVOID Ptr; } RTL_SRWLOCK,*PRTL_SRWLOCK;
typedef struct _RTL_CONDITION_VARIABLE { PVOID Ptr; } RTL_CONDITION_VARIABLE,*PRTL_CONDITION_VARIABLE;
typedef void (__attribute__((__stdcall__)) *PAPCFUNC) (ULONG_PTR Parameter);
typedef LONG (__attribute__((__stdcall__)) *PVECTORED_EXCEPTION_HANDLER) (struct _EXCEPTION_POINTERS *ExceptionInfo);
typedef enum _HEAP_INFORMATION_CLASS {
HeapCompatibilityInformation,
HeapEnableTerminationOnCorruption
} HEAP_INFORMATION_CLASS;
typedef void (__attribute__((__stdcall__)) *WORKERCALLBACKFUNC) (PVOID);
typedef void (__attribute__((__stdcall__)) *APC_CALLBACK_FUNCTION) (DWORD, PVOID, PVOID);
typedef void (__attribute__((__stdcall__)) *WAITORTIMERCALLBACKFUNC) (PVOID, BOOLEAN);
typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK;
typedef void (__attribute__((__stdcall__)) *PFLS_CALLBACK_FUNCTION) (PVOID lpFlsData);
typedef BOOLEAN (__attribute__((__stdcall__)) *PSECURE_MEMORY_CACHE_CALLBACK) (PVOID Addr, SIZE_T Range);
typedef enum _ACTIVATION_CONTEXT_INFO_CLASS {
ActivationContextBasicInformation = 1,
ActivationContextDetailedInformation = 2,
AssemblyDetailedInformationInActivationContext = 3,
FileInformationInAssemblyOfAssemblyInActivationContext = 4,
RunlevelInformationInActivationContext = 5,
CompatibilityInformationInActivationContext = 6,
ActivationContextManifestResourceName = 7,
MaxActivationContextInfoClass,
AssemblyDetailedInformationInActivationContxt = 3,
FileInformationInAssemblyOfAssemblyInActivationContxt = 4
} ACTIVATION_CONTEXT_INFO_CLASS;
typedef enum {
ACTCTX_RUN_LEVEL_UNSPECIFIED = 0,
ACTCTX_RUN_LEVEL_AS_INVOKER,
ACTCTX_RUN_LEVEL_HIGHEST_AVAILABLE,
ACTCTX_RUN_LEVEL_REQUIRE_ADMIN,
ACTCTX_RUN_LEVEL_NUMBERS
} ACTCTX_REQUESTED_RUN_LEVEL;
typedef enum {
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_UNKNOWN = 0,
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_OS,
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_MITIGATION
} ACTCTX_COMPATIBILITY_ELEMENT_TYPE;
typedef struct _ACTIVATION_CONTEXT_QUERY_INDEX {
DWORD ulAssemblyIndex;
DWORD ulFileIndexInAssembly;
} ACTIVATION_CONTEXT_QUERY_INDEX,*PACTIVATION_CONTEXT_QUERY_INDEX;
typedef struct _ASSEMBLY_FILE_DETAILED_INFORMATION {
DWORD ulFlags;
DWORD ulFilenameLength;
DWORD ulPathLength;
PCWSTR lpFileName;
PCWSTR lpFilePath;
} ASSEMBLY_FILE_DETAILED_INFORMATION,*PASSEMBLY_FILE_DETAILED_INFORMATION;
typedef struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION {
DWORD ulFlags;
DWORD ulEncodedAssemblyIdentityLength;
DWORD ulManifestPathType;
DWORD ulManifestPathLength;
LARGE_INTEGER liManifestLastWriteTime;
DWORD ulPolicyPathType;
DWORD ulPolicyPathLength;
LARGE_INTEGER liPolicyLastWriteTime;
DWORD ulMetadataSatelliteRosterIndex;
DWORD ulManifestVersionMajor;
DWORD ulManifestVersionMinor;
DWORD ulPolicyVersionMajor;
DWORD ulPolicyVersionMinor;
DWORD ulAssemblyDirectoryNameLength;
PCWSTR lpAssemblyEncodedAssemblyIdentity;
PCWSTR lpAssemblyManifestPath;
PCWSTR lpAssemblyPolicyPath;
PCWSTR lpAssemblyDirectoryName;
DWORD ulFileCount;
} ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION,*PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
typedef struct _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION {
DWORD ulFlags;
ACTCTX_REQUESTED_RUN_LEVEL RunLevel;
DWORD UiAccess;
} ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION,*PACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION;
typedef struct _COMPATIBILITY_CONTEXT_ELEMENT {
GUID Id;
ACTCTX_COMPATIBILITY_ELEMENT_TYPE Type;
} COMPATIBILITY_CONTEXT_ELEMENT,*PCOMPATIBILITY_CONTEXT_ELEMENT;
typedef struct _ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION {
DWORD ElementCount;
COMPATIBILITY_CONTEXT_ELEMENT Elements[];
} ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION,*PACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION;
typedef struct _SUPPORTED_OS_INFO {
WORD OsCount;
WORD MitigationExist;
WORD OsList[(4)];
} SUPPORTED_OS_INFO,*PSUPPORTED_OS_INFO;
typedef struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION {
DWORD dwFlags;
DWORD ulFormatVersion;
DWORD ulAssemblyCount;
DWORD ulRootManifestPathType;
DWORD ulRootManifestPathChars;
DWORD ulRootConfigurationPathType;
DWORD ulRootConfigurationPathChars;
DWORD ulAppDirPathType;
DWORD ulAppDirPathChars;
PCWSTR lpRootManifestPath;
PCWSTR lpRootConfigurationPath;
PCWSTR lpAppDirPath;
} ACTIVATION_CONTEXT_DETAILED_INFORMATION,*PACTIVATION_CONTEXT_DETAILED_INFORMATION;
typedef const struct _ACTIVATION_CONTEXT_QUERY_INDEX *PCACTIVATION_CONTEXT_QUERY_INDEX;
typedef const ASSEMBLY_FILE_DETAILED_INFORMATION *PCASSEMBLY_FILE_DETAILED_INFORMATION;
typedef const struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
typedef const struct _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION *PCACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION;
typedef const struct _COMPATIBILITY_CONTEXT_ELEMENT *PCCOMPATIBILITY_CONTEXT_ELEMENT;
typedef const struct _ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION *PCACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION;
typedef const struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_DETAILED_INFORMATION;
typedef void (__attribute__((__stdcall__)) *RTL_VERIFIER_DLL_LOAD_CALLBACK) (PWSTR DllName,PVOID DllBase,SIZE_T DllSize,PVOID Reserved);
typedef void (__attribute__((__stdcall__)) *RTL_VERIFIER_DLL_UNLOAD_CALLBACK) (PWSTR DllName,PVOID DllBase,SIZE_T DllSize,PVOID Reserved);
typedef void (__attribute__((__stdcall__)) *RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK)(PVOID AllocationBase,SIZE_T AllocationSize);
typedef struct _RTL_VERIFIER_THUNK_DESCRIPTOR {
PCHAR ThunkName;
PVOID ThunkOldAddress;
PVOID ThunkNewAddress;
} RTL_VERIFIER_THUNK_DESCRIPTOR,*PRTL_VERIFIER_THUNK_DESCRIPTOR;
typedef struct _RTL_VERIFIER_DLL_DESCRIPTOR {
PWCHAR DllName;
DWORD DllFlags;
PVOID DllAddress;
PRTL_VERIFIER_THUNK_DESCRIPTOR DllThunks;
} RTL_VERIFIER_DLL_DESCRIPTOR,*PRTL_VERIFIER_DLL_DESCRIPTOR;
typedef struct _RTL_VERIFIER_PROVIDER_DESCRIPTOR {
DWORD Length;
PRTL_VERIFIER_DLL_DESCRIPTOR ProviderDlls;
RTL_VERIFIER_DLL_LOAD_CALLBACK ProviderDllLoadCallback;
RTL_VERIFIER_DLL_UNLOAD_CALLBACK ProviderDllUnloadCallback;
PWSTR VerifierImage;
DWORD VerifierFlags;
DWORD VerifierDebug;
PVOID RtlpGetStackTraceAddress;
PVOID RtlpDebugPageHeapCreate;
PVOID RtlpDebugPageHeapDestroy;
RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK ProviderNtdllHeapFreeCallback;
} RTL_VERIFIER_PROVIDER_DESCRIPTOR,*PRTL_VERIFIER_PROVIDER_DESCRIPTOR;
void __attribute__((__stdcall__)) RtlApplicationVerifierStop(ULONG_PTR Code,PSTR Message,ULONG_PTR Param1,PSTR Description1,ULONG_PTR Param2,PSTR Description2,ULONG_PTR Param3,PSTR Description3,ULONG_PTR Param4,PSTR Description4);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) RtlSetHeapInformation(PVOID HeapHandle,HEAP_INFORMATION_CLASS HeapInformationClass,PVOID HeapInformation,SIZE_T HeapInformationLength);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) RtlQueryHeapInformation(PVOID HeapHandle,HEAP_INFORMATION_CLASS HeapInformationClass,PVOID HeapInformation,SIZE_T HeapInformationLength,PSIZE_T ReturnLength);
DWORD __attribute__((__stdcall__)) RtlMultipleAllocateHeap(PVOID HeapHandle,DWORD Flags,SIZE_T Size,DWORD Count,PVOID *Array);
DWORD __attribute__((__stdcall__)) RtlMultipleFreeHeap(PVOID HeapHandle,DWORD Flags,DWORD Count,PVOID *Array);
typedef struct _HARDWARE_COUNTER_DATA {
HARDWARE_COUNTER_TYPE Type;
DWORD Reserved;
DWORD64 Value;
} HARDWARE_COUNTER_DATA,*PHARDWARE_COUNTER_DATA;
typedef struct _PERFORMANCE_DATA {
WORD Size;
BYTE Version;
BYTE HwCountersCount;
DWORD ContextSwitchCount;
DWORD64 WaitReasonBitMap;
DWORD64 CycleTime;
DWORD RetryCount;
DWORD Reserved;
HARDWARE_COUNTER_DATA HwCounters[16];
} PERFORMANCE_DATA,*PPERFORMANCE_DATA;
typedef struct _EVENTLOGRECORD {
DWORD Length;
DWORD Reserved;
DWORD RecordNumber;
DWORD TimeGenerated;
DWORD TimeWritten;
DWORD EventID;
WORD EventType;
WORD NumStrings;
WORD EventCategory;
WORD ReservedFlags;
DWORD ClosingRecordNumber;
DWORD StringOffset;
DWORD UserSidLength;
DWORD UserSidOffset;
DWORD DataLength;
DWORD DataOffset;
} EVENTLOGRECORD,*PEVENTLOGRECORD;
typedef struct _EVENTSFORLOGFILE {
DWORD ulSize;
WCHAR szLogicalLogFile[256];
DWORD ulNumRecords;
EVENTLOGRECORD pEventLogRecords[];
} EVENTSFORLOGFILE,*PEVENTSFORLOGFILE;
typedef struct _PACKEDEVENTINFO {
DWORD ulSize;
DWORD ulNumEventsForLogFile;
DWORD ulOffsets[];
} PACKEDEVENTINFO,*PPACKEDEVENTINFO;
typedef enum _CM_SERVICE_NODE_TYPE {
DriverType = 0x00000001,FileSystemType = 0x00000002,Win32ServiceOwnProcess = 0x00000010,
Win32ServiceShareProcess = 0x00000020,AdapterType = 0x00000004,RecognizerType = 0x00000008
} SERVICE_NODE_TYPE;
typedef enum _CM_SERVICE_LOAD_TYPE {
BootLoad = 0x00000000,SystemLoad = 0x00000001,AutoLoad = 0x00000002,DemandLoad = 0x00000003,
DisableLoad = 0x00000004
} SERVICE_LOAD_TYPE;
typedef enum _CM_ERROR_CONTROL_TYPE {
IgnoreError = 0x00000000,NormalError = 0x00000001,SevereError = 0x00000002,CriticalError = 0x00000003
} SERVICE_ERROR_TYPE;
typedef struct _TAPE_ERASE {
DWORD Type;
BOOLEAN Immediate;
} TAPE_ERASE,*PTAPE_ERASE;
typedef struct _TAPE_PREPARE {
DWORD Operation;
BOOLEAN Immediate;
} TAPE_PREPARE,*PTAPE_PREPARE;
typedef struct _TAPE_WRITE_MARKS {
DWORD Type;
DWORD Count;
BOOLEAN Immediate;
} TAPE_WRITE_MARKS,*PTAPE_WRITE_MARKS;
typedef struct _TAPE_GET_POSITION {
DWORD Type;
DWORD Partition;
LARGE_INTEGER Offset;
} TAPE_GET_POSITION,*PTAPE_GET_POSITION;
typedef struct _TAPE_SET_POSITION {
DWORD Method;
DWORD Partition;
LARGE_INTEGER Offset;
BOOLEAN Immediate;
} TAPE_SET_POSITION,*PTAPE_SET_POSITION;
typedef struct _TAPE_GET_DRIVE_PARAMETERS {
BOOLEAN ECC;
BOOLEAN Compression;
BOOLEAN DataPadding;
BOOLEAN ReportSetmarks;
DWORD DefaultBlockSize;
DWORD MaximumBlockSize;
DWORD MinimumBlockSize;
DWORD MaximumPartitionCount;
DWORD FeaturesLow;
DWORD FeaturesHigh;
DWORD EOTWarningZoneSize;
} TAPE_GET_DRIVE_PARAMETERS,*PTAPE_GET_DRIVE_PARAMETERS;
typedef struct _TAPE_SET_DRIVE_PARAMETERS {
BOOLEAN ECC;
BOOLEAN Compression;
BOOLEAN DataPadding;
BOOLEAN ReportSetmarks;
DWORD EOTWarningZoneSize;
} TAPE_SET_DRIVE_PARAMETERS,*PTAPE_SET_DRIVE_PARAMETERS;
typedef struct _TAPE_GET_MEDIA_PARAMETERS {
LARGE_INTEGER Capacity;
LARGE_INTEGER Remaining;
DWORD BlockSize;
DWORD PartitionCount;
BOOLEAN WriteProtected;
} TAPE_GET_MEDIA_PARAMETERS,*PTAPE_GET_MEDIA_PARAMETERS;
typedef struct _TAPE_SET_MEDIA_PARAMETERS {
DWORD BlockSize;
} TAPE_SET_MEDIA_PARAMETERS,*PTAPE_SET_MEDIA_PARAMETERS;
typedef struct _TAPE_CREATE_PARTITION {
DWORD Method;
DWORD Count;
DWORD Size;
} TAPE_CREATE_PARTITION,*PTAPE_CREATE_PARTITION;
typedef struct _TAPE_WMI_OPERATIONS {
DWORD Method;
DWORD DataBufferSize;
PVOID DataBuffer;
} TAPE_WMI_OPERATIONS,*PTAPE_WMI_OPERATIONS;
typedef enum _TAPE_DRIVE_PROBLEM_TYPE {
TapeDriveProblemNone,TapeDriveReadWriteWarning,TapeDriveReadWriteError,TapeDriveReadWarning,TapeDriveWriteWarning,TapeDriveReadError,TapeDriveWriteError,TapeDriveHardwareError,TapeDriveUnsupportedMedia,TapeDriveScsiConnectionError,TapeDriveTimetoClean,TapeDriveCleanDriveNow,TapeDriveMediaLifeExpired,TapeDriveSnappedTape
} TAPE_DRIVE_PROBLEM_TYPE;
typedef DWORD TP_VERSION,*PTP_VERSION;
typedef struct _TP_CALLBACK_INSTANCE TP_CALLBACK_INSTANCE,*PTP_CALLBACK_INSTANCE;
typedef void (__attribute__((__stdcall__)) *PTP_SIMPLE_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context);
typedef struct _TP_POOL TP_POOL,*PTP_POOL;
typedef enum _TP_CALLBACK_PRIORITY {
TP_CALLBACK_PRIORITY_HIGH,
TP_CALLBACK_PRIORITY_NORMAL,
TP_CALLBACK_PRIORITY_LOW,
TP_CALLBACK_PRIORITY_INVALID,
TP_CALLBACK_PRIORITY_COUNT = TP_CALLBACK_PRIORITY_INVALID
} TP_CALLBACK_PRIORITY;
typedef struct _TP_POOL_STACK_INFORMATION {
SIZE_T StackReserve;
SIZE_T StackCommit;
} TP_POOL_STACK_INFORMATION, *PTP_POOL_STACK_INFORMATION;
typedef struct _TP_CLEANUP_GROUP TP_CLEANUP_GROUP,*PTP_CLEANUP_GROUP;
typedef void (__attribute__((__stdcall__)) *PTP_CLEANUP_GROUP_CANCEL_CALLBACK) (PVOID ObjectContext, PVOID CleanupContext);
typedef struct _TP_CALLBACK_ENVIRON_V1 {
TP_VERSION Version;
PTP_POOL Pool;
PTP_CLEANUP_GROUP CleanupGroup;
PTP_CLEANUP_GROUP_CANCEL_CALLBACK CleanupGroupCancelCallback;
PVOID RaceDll;
struct _ACTIVATION_CONTEXT *ActivationContext;
PTP_SIMPLE_CALLBACK FinalizationCallback;
union {
DWORD Flags;
struct {
DWORD LongFunction : 1;
DWORD Persistent : 1;
DWORD Private : 30;
} s;
} u;
} TP_CALLBACK_ENVIRON_V1;
typedef TP_CALLBACK_ENVIRON_V1 TP_CALLBACK_ENVIRON,*PTP_CALLBACK_ENVIRON;
typedef struct _TP_WORK TP_WORK,*PTP_WORK;
typedef void (__attribute__((__stdcall__)) *PTP_WORK_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context, PTP_WORK Work);
typedef struct _TP_TIMER TP_TIMER,*PTP_TIMER;
typedef void (__attribute__((__stdcall__)) *PTP_TIMER_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context, PTP_TIMER Timer);
typedef DWORD TP_WAIT_RESULT;
typedef struct _TP_WAIT TP_WAIT,*PTP_WAIT;
typedef void (__attribute__((__stdcall__)) *PTP_WAIT_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context, PTP_WAIT Wait, TP_WAIT_RESULT WaitResult);
typedef struct _TP_IO TP_IO,*PTP_IO;
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpInitializeCallbackEnviron (PTP_CALLBACK_ENVIRON cbe) {
cbe->Pool = ((void *)0);
cbe->CleanupGroup = ((void *)0);
cbe->CleanupGroupCancelCallback = ((void *)0);
cbe->RaceDll = ((void *)0);
cbe->ActivationContext = ((void *)0);
cbe->FinalizationCallback = ((void *)0);
cbe->u.Flags = 0;
cbe->Version = 1;
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackThreadpool (PTP_CALLBACK_ENVIRON cbe, PTP_POOL pool) { cbe->Pool = pool; }
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackCleanupGroup (PTP_CALLBACK_ENVIRON cbe, PTP_CLEANUP_GROUP cleanup_group, PTP_CLEANUP_GROUP_CANCEL_CALLBACK cleanup_group_cb) {
cbe->CleanupGroup = cleanup_group;
cbe->CleanupGroupCancelCallback = cleanup_group_cb;
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackActivationContext (PTP_CALLBACK_ENVIRON cbe, struct _ACTIVATION_CONTEXT *actx) { cbe->ActivationContext = actx; }
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackNoActivationContext (PTP_CALLBACK_ENVIRON cbe) { cbe->ActivationContext = (struct _ACTIVATION_CONTEXT *) (LONG_PTR) -1; }
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackLongFunction (PTP_CALLBACK_ENVIRON cbe) { cbe->u.s.LongFunction = 1; }
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackRaceWithDll (PTP_CALLBACK_ENVIRON cbe, PVOID h) { cbe->RaceDll = h; }
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackFinalizationCallback (PTP_CALLBACK_ENVIRON cbe, PTP_SIMPLE_CALLBACK fini_cb) { cbe->FinalizationCallback = fini_cb; }
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackPersistent (PTP_CALLBACK_ENVIRON cbe) { cbe->u.s.Persistent = 1; }
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpDestroyCallbackEnviron (PTP_CALLBACK_ENVIRON cbe) { {(cbe) = (cbe);}; }
typedef GUID CRM_PROTOCOL_ID,*PCRM_PROTOCOL_ID;
typedef ULONG NOTIFICATION_MASK;
typedef struct _TRANSACTION_NOTIFICATION {
PVOID TransactionKey;
ULONG TransactionNotification;
LARGE_INTEGER TmVirtualClock;
ULONG ArgumentLength;
} TRANSACTION_NOTIFICATION,*PTRANSACTION_NOTIFICATION;
typedef struct _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT {
GUID EnlistmentId;
GUID UOW;
} TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT,*PTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT;
typedef struct _TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT {
GUID TmIdentity;
ULONG Flags;
} TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT,*PTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT;
typedef ULONG SAVEPOINT_ID,*PSAVEPOINT_ID;
typedef struct _TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT {
SAVEPOINT_ID SavepointId;
} TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT,*PTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT;
typedef struct _TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT {
ULONG PropagationCookie;
GUID UOW;
GUID TmIdentity;
ULONG BufferLength;
} TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT,*PTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT;
typedef struct _TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT {
ULONG MarshalCookie;
GUID UOW;
} TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT,*PTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT;
typedef TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT TRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT,*PTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT;
typedef struct _KCRM_MARSHAL_HEADER {
ULONG VersionMajor;
ULONG VersionMinor;
ULONG NumProtocols;
ULONG Unused;
} KCRM_MARSHAL_HEADER,*PKCRM_MARSHAL_HEADER,* PRKCRM_MARSHAL_HEADER;
typedef struct _KCRM_TRANSACTION_BLOB {
GUID UOW;
GUID TmIdentity;
ULONG IsolationLevel;
ULONG IsolationFlags;
ULONG Timeout;
WCHAR Description[64];
} KCRM_TRANSACTION_BLOB,*PKCRM_TRANSACTION_BLOB,* PRKCRM_TRANSACTION_BLOB;
typedef struct _KCRM_PROTOCOL_BLOB {
CRM_PROTOCOL_ID ProtocolId;
ULONG StaticInfoLength;
ULONG TransactionIdInfoLength;
ULONG Unused1;
ULONG Unused2;
} KCRM_PROTOCOL_BLOB,*PKCRM_PROTOCOL_BLOB,* PRKCRM_PROTOCOL_BLOB;
typedef enum _TRANSACTION_OUTCOME {
TransactionOutcomeUndetermined = 1,
TransactionOutcomeCommitted,
TransactionOutcomeAborted,
} TRANSACTION_OUTCOME;
typedef enum _TRANSACTION_STATE {
TransactionStateNormal = 1,
TransactionStateIndoubt,
TransactionStateCommittedNotify,
} TRANSACTION_STATE;
typedef struct _TRANSACTION_BASIC_INFORMATION {
GUID TransactionId;
DWORD State;
DWORD Outcome;
} TRANSACTION_BASIC_INFORMATION,*PTRANSACTION_BASIC_INFORMATION;
typedef struct _TRANSACTIONMANAGER_BASIC_INFORMATION {
GUID TmIdentity;
LARGE_INTEGER VirtualClock;
} TRANSACTIONMANAGER_BASIC_INFORMATION,*PTRANSACTIONMANAGER_BASIC_INFORMATION;
typedef struct _TRANSACTIONMANAGER_LOG_INFORMATION {
GUID LogIdentity;
} TRANSACTIONMANAGER_LOG_INFORMATION,*PTRANSACTIONMANAGER_LOG_INFORMATION;
typedef struct _TRANSACTIONMANAGER_LOGPATH_INFORMATION {
DWORD LogPathLength;
WCHAR LogPath[1];
} TRANSACTIONMANAGER_LOGPATH_INFORMATION,*PTRANSACTIONMANAGER_LOGPATH_INFORMATION;
typedef struct _TRANSACTIONMANAGER_RECOVERY_INFORMATION {
ULONGLONG LastRecoveredLsn;
} TRANSACTIONMANAGER_RECOVERY_INFORMATION,*PTRANSACTIONMANAGER_RECOVERY_INFORMATION;
typedef struct _TRANSACTIONMANAGER_OLDEST_INFORMATION {
GUID OldestTransactionGuid;
} TRANSACTIONMANAGER_OLDEST_INFORMATION,*PTRANSACTIONMANAGER_OLDEST_INFORMATION;
typedef struct _TRANSACTION_PROPERTIES_INFORMATION {
DWORD IsolationLevel;
DWORD IsolationFlags;
LARGE_INTEGER Timeout;
DWORD Outcome;
DWORD DescriptionLength;
WCHAR Description[1];
} TRANSACTION_PROPERTIES_INFORMATION,*PTRANSACTION_PROPERTIES_INFORMATION;
typedef struct _TRANSACTION_BIND_INFORMATION {
HANDLE TmHandle;
} TRANSACTION_BIND_INFORMATION,*PTRANSACTION_BIND_INFORMATION;
typedef struct _TRANSACTION_ENLISTMENT_PAIR {
GUID EnlistmentId;
GUID ResourceManagerId;
} TRANSACTION_ENLISTMENT_PAIR,*PTRANSACTION_ENLISTMENT_PAIR;
typedef struct _TRANSACTION_ENLISTMENTS_INFORMATION {
DWORD NumberOfEnlistments;
TRANSACTION_ENLISTMENT_PAIR EnlistmentPair[1];
} TRANSACTION_ENLISTMENTS_INFORMATION,*PTRANSACTION_ENLISTMENTS_INFORMATION;
typedef struct _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION {
TRANSACTION_ENLISTMENT_PAIR SuperiorEnlistmentPair;
} TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION,*PTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION;
typedef struct _RESOURCEMANAGER_BASIC_INFORMATION {
GUID ResourceManagerId;
DWORD DescriptionLength;
WCHAR Description[1];
} RESOURCEMANAGER_BASIC_INFORMATION,*PRESOURCEMANAGER_BASIC_INFORMATION;
typedef struct _RESOURCEMANAGER_COMPLETION_INFORMATION {
HANDLE IoCompletionPortHandle;
ULONG_PTR CompletionKey;
} RESOURCEMANAGER_COMPLETION_INFORMATION,*PRESOURCEMANAGER_COMPLETION_INFORMATION;
typedef enum _TRANSACTION_INFORMATION_CLASS {
TransactionBasicInformation,
TransactionPropertiesInformation,
TransactionEnlistmentInformation,
TransactionSuperiorEnlistmentInformation,
TransactionBindInformation,
TransactionDTCPrivateInformation
} TRANSACTION_INFORMATION_CLASS;
typedef enum _TRANSACTIONMANAGER_INFORMATION_CLASS {
TransactionManagerBasicInformation,
TransactionManagerLogInformation,
TransactionManagerLogPathInformation,
TransactionManagerOnlineProbeInformation = 3,
TransactionManagerRecoveryInformation = 4,
TransactionManagerOldestTransactionInformation = 5
} TRANSACTIONMANAGER_INFORMATION_CLASS;
typedef enum _RESOURCEMANAGER_INFORMATION_CLASS {
ResourceManagerBasicInformation,
ResourceManagerCompletionInformation
} RESOURCEMANAGER_INFORMATION_CLASS;
typedef struct _ENLISTMENT_BASIC_INFORMATION {
GUID EnlistmentId;
GUID TransactionId;
GUID ResourceManagerId;
} ENLISTMENT_BASIC_INFORMATION,*PENLISTMENT_BASIC_INFORMATION;
typedef struct _ENLISTMENT_CRM_INFORMATION {
GUID CrmTransactionManagerId;
GUID CrmResourceManagerId;
GUID CrmEnlistmentId;
} ENLISTMENT_CRM_INFORMATION,*PENLISTMENT_CRM_INFORMATION;
typedef enum _ENLISTMENT_INFORMATION_CLASS {
EnlistmentBasicInformation,
EnlistmentRecoveryInformation,
EnlistmentCrmInformation
} ENLISTMENT_INFORMATION_CLASS;
typedef struct _TRANSACTION_LIST_ENTRY {
GUID UOW;
} TRANSACTION_LIST_ENTRY,*PTRANSACTION_LIST_ENTRY;
typedef struct _TRANSACTION_LIST_INFORMATION {
DWORD NumberOfTransactions;
TRANSACTION_LIST_ENTRY TransactionInformation[1];
} TRANSACTION_LIST_INFORMATION,*PTRANSACTION_LIST_INFORMATION;
typedef enum _KTMOBJECT_TYPE {
KTMOBJECT_TRANSACTION,
KTMOBJECT_TRANSACTION_MANAGER,
KTMOBJECT_RESOURCE_MANAGER,
KTMOBJECT_ENLISTMENT,
KTMOBJECT_INVALID
} KTMOBJECT_TYPE,*PKTMOBJECT_TYPE;
typedef struct _KTMOBJECT_CURSOR {
GUID LastQuery;
DWORD ObjectIdCount;
GUID ObjectIds[1];
} KTMOBJECT_CURSOR,*PKTMOBJECT_CURSOR;
typedef struct _WOW64_FLOATING_SAVE_AREA {
DWORD ControlWord;
DWORD StatusWord;
DWORD TagWord;
DWORD ErrorOffset;
DWORD ErrorSelector;
DWORD DataOffset;
DWORD DataSelector;
BYTE RegisterArea[80];
DWORD Cr0NpxState;
} WOW64_FLOATING_SAVE_AREA, *PWOW64_FLOATING_SAVE_AREA;
#pragma pack(push,4)
typedef struct _WOW64_CONTEXT {
DWORD ContextFlags;
DWORD Dr0;
DWORD Dr1;
DWORD Dr2;
DWORD Dr3;
DWORD Dr6;
DWORD Dr7;
WOW64_FLOATING_SAVE_AREA FloatSave;
DWORD SegGs;
DWORD SegFs;
DWORD SegEs;
DWORD SegDs;
DWORD Edi;
DWORD Esi;
DWORD Ebx;
DWORD Edx;
DWORD Ecx;
DWORD Eax;
DWORD Ebp;
DWORD Eip;
DWORD SegCs;
DWORD EFlags;
DWORD Esp;
DWORD SegSs;
BYTE ExtendedRegisters[512];
} WOW64_CONTEXT, *PWOW64_CONTEXT;
#pragma pack(pop)
typedef struct _WOW64_LDT_ENTRY {
WORD LimitLow;
WORD BaseLow;
__extension__ union {
struct {
BYTE BaseMid;
BYTE Flags1;
BYTE Flags2;
BYTE BaseHi;
} Bytes;
struct {
DWORD BaseMid :8;
DWORD Type :5;
DWORD Dpl :2;
DWORD Pres :1;
DWORD LimitHi :4;
DWORD Sys :1;
DWORD Reserved_0 :1;
DWORD Default_Big :1;
DWORD Granularity :1;
DWORD BaseHi :8;
} Bits;
} HighWord;
} WOW64_LDT_ENTRY, *PWOW64_LDT_ENTRY;
typedef struct _WOW64_DESCRIPTOR_TABLE_ENTRY {
DWORD Selector;
WOW64_LDT_ENTRY Descriptor;
} WOW64_DESCRIPTOR_TABLE_ENTRY,*PWOW64_DESCRIPTOR_TABLE_ENTRY;
typedef UINT_PTR WPARAM;
typedef LONG_PTR LPARAM;
typedef LONG_PTR LRESULT;
typedef HANDLE *SPHANDLE;
typedef HANDLE *LPHANDLE;
typedef HANDLE HGLOBAL;
typedef HANDLE HLOCAL;
typedef HANDLE GLOBALHANDLE;
typedef HANDLE LOCALHANDLE;
typedef int (__attribute__((__stdcall__)) *FARPROC) ();
typedef int (__attribute__((__stdcall__)) *NEARPROC) ();
typedef int (__attribute__((__stdcall__)) *PROC) ();
typedef WORD ATOM;
typedef int HFILE;
struct HINSTANCE__ { int unused; }; typedef struct HINSTANCE__ *HINSTANCE;
struct HKEY__ { int unused; }; typedef struct HKEY__ *HKEY;
typedef HKEY *PHKEY;
struct HKL__ { int unused; }; typedef struct HKL__ *HKL;
struct HLSURF__ { int unused; }; typedef struct HLSURF__ *HLSURF;
struct HMETAFILE__ { int unused; }; typedef struct HMETAFILE__ *HMETAFILE;
typedef HINSTANCE HMODULE;
struct HRGN__ { int unused; }; typedef struct HRGN__ *HRGN;
struct HRSRC__ { int unused; }; typedef struct HRSRC__ *HRSRC;
struct HSPRITE__ { int unused; }; typedef struct HSPRITE__ *HSPRITE;
struct HSTR__ { int unused; }; typedef struct HSTR__ *HSTR;
struct HTASK__ { int unused; }; typedef struct HTASK__ *HTASK;
struct HWINSTA__ { int unused; }; typedef struct HWINSTA__ *HWINSTA;
typedef struct _FILETIME {
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME,*PFILETIME,*LPFILETIME;
struct HWND__ { int unused; }; typedef struct HWND__ *HWND;
struct HHOOK__ { int unused; }; typedef struct HHOOK__ *HHOOK;
typedef void *HGDIOBJ;
struct HACCEL__ { int unused; }; typedef struct HACCEL__ *HACCEL;
struct HBITMAP__ { int unused; }; typedef struct HBITMAP__ *HBITMAP;
struct HBRUSH__ { int unused; }; typedef struct HBRUSH__ *HBRUSH;
struct HCOLORSPACE__ { int unused; }; typedef struct HCOLORSPACE__ *HCOLORSPACE;
struct HDC__ { int unused; }; typedef struct HDC__ *HDC;
struct HGLRC__ { int unused; }; typedef struct HGLRC__ *HGLRC;
struct HDESK__ { int unused; }; typedef struct HDESK__ *HDESK;
struct HENHMETAFILE__ { int unused; }; typedef struct HENHMETAFILE__ *HENHMETAFILE;
struct HFONT__ { int unused; }; typedef struct HFONT__ *HFONT;
struct HICON__ { int unused; }; typedef struct HICON__ *HICON;
struct HMENU__ { int unused; }; typedef struct HMENU__ *HMENU;
struct HPALETTE__ { int unused; }; typedef struct HPALETTE__ *HPALETTE;
struct HPEN__ { int unused; }; typedef struct HPEN__ *HPEN;
struct HMONITOR__ { int unused; }; typedef struct HMONITOR__ *HMONITOR;
struct HWINEVENTHOOK__ { int unused; }; typedef struct HWINEVENTHOOK__ *HWINEVENTHOOK;
typedef HICON HCURSOR;
typedef DWORD COLORREF;
struct HUMPD__ { int unused; }; typedef struct HUMPD__ *HUMPD;
typedef DWORD *LPCOLORREF;
typedef struct tagRECT {
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECT,*PRECT,*NPRECT,*LPRECT;
typedef const RECT *LPCRECT;
typedef struct _RECTL {
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECTL,*PRECTL,*LPRECTL;
typedef const RECTL *LPCRECTL;
typedef struct tagPOINT {
LONG x;
LONG y;
} POINT,*PPOINT,*NPPOINT,*LPPOINT;
typedef struct _POINTL {
LONG x;
LONG y;
} POINTL,*PPOINTL;
typedef struct tagSIZE {
LONG cx;
LONG cy;
} SIZE,*PSIZE,*LPSIZE;
typedef SIZE SIZEL;
typedef SIZE *PSIZEL,*LPSIZEL;
typedef struct tagPOINTS {
SHORT x;
SHORT y;
} POINTS,*PPOINTS,*LPPOINTS;
typedef struct _SECURITY_ATTRIBUTES {
DWORD nLength;
LPVOID lpSecurityDescriptor;
WINBOOL bInheritHandle;
} SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;
typedef struct _OVERLAPPED {
ULONG_PTR Internal;
ULONG_PTR InternalHigh;
__extension__ union {
struct {
DWORD Offset;
DWORD OffsetHigh;
} ;
PVOID Pointer;
} ;
HANDLE hEvent;
} OVERLAPPED, *LPOVERLAPPED;
typedef struct _OVERLAPPED_ENTRY {
ULONG_PTR lpCompletionKey;
LPOVERLAPPED lpOverlapped;
ULONG_PTR Internal;
DWORD dwNumberOfBytesTransferred;
} OVERLAPPED_ENTRY, *LPOVERLAPPED_ENTRY;
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME, *PSYSTEMTIME, *LPSYSTEMTIME;
typedef struct _WIN32_FIND_DATAA {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
CHAR cFileName[260];
CHAR cAlternateFileName[14];
} WIN32_FIND_DATAA, *PWIN32_FIND_DATAA, *LPWIN32_FIND_DATAA;
typedef struct _WIN32_FIND_DATAW {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
WCHAR cFileName[260];
WCHAR cAlternateFileName[14];
} WIN32_FIND_DATAW, *PWIN32_FIND_DATAW, *LPWIN32_FIND_DATAW;
typedef WIN32_FIND_DATAA WIN32_FIND_DATA;
typedef PWIN32_FIND_DATAA PWIN32_FIND_DATA;
typedef LPWIN32_FIND_DATAA LPWIN32_FIND_DATA;
typedef enum _FINDEX_INFO_LEVELS {
FindExInfoStandard,
FindExInfoBasic,
FindExInfoMaxInfoLevel
} FINDEX_INFO_LEVELS;
typedef enum _FINDEX_SEARCH_OPS {
FindExSearchNameMatch,
FindExSearchLimitToDirectories,
FindExSearchLimitToDevices,
FindExSearchMaxSearchOp
} FINDEX_SEARCH_OPS;
typedef enum _GET_FILEEX_INFO_LEVELS {
GetFileExInfoStandard,
GetFileExMaxInfoLevel
} GET_FILEEX_INFO_LEVELS;
typedef RTL_CRITICAL_SECTION CRITICAL_SECTION;
typedef PRTL_CRITICAL_SECTION PCRITICAL_SECTION;
typedef PRTL_CRITICAL_SECTION LPCRITICAL_SECTION;
typedef RTL_CRITICAL_SECTION_DEBUG CRITICAL_SECTION_DEBUG;
typedef PRTL_CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG;
typedef PRTL_CRITICAL_SECTION_DEBUG LPCRITICAL_SECTION_DEBUG;
typedef void (__attribute__((__stdcall__)) *LPOVERLAPPED_COMPLETION_ROUTINE) (DWORD dwErrorCode, DWORD dwNumberOfBytesTransfered, LPOVERLAPPED lpOverlapped);
typedef struct _PROCESS_HEAP_ENTRY {
PVOID lpData;
DWORD cbData;
BYTE cbOverhead;
BYTE iRegionIndex;
WORD wFlags;
__extension__ union {
struct {
HANDLE hMem;
DWORD dwReserved[3];
} Block;
struct {
DWORD dwCommittedSize;
DWORD dwUnCommittedSize;
LPVOID lpFirstBlock;
LPVOID lpLastBlock;
} Region;
} ;
} PROCESS_HEAP_ENTRY,*LPPROCESS_HEAP_ENTRY,*PPROCESS_HEAP_ENTRY;
typedef struct _REASON_CONTEXT {
ULONG Version;
DWORD Flags;
union {
struct {
HMODULE LocalizedReasonModule;
ULONG LocalizedReasonId;
ULONG ReasonStringCount;
LPWSTR *ReasonStrings;
} Detailed;
LPWSTR SimpleReasonString;
} Reason;
} REASON_CONTEXT, *PREASON_CONTEXT;
typedef DWORD (__attribute__((__stdcall__)) *PTHREAD_START_ROUTINE) (LPVOID lpThreadParameter);
typedef PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE;
typedef LPVOID (__attribute__((__stdcall__)) *PENCLAVE_ROUTINE) (LPVOID lpThreadParameter);
typedef PENCLAVE_ROUTINE LPENCLAVE_ROUTINE;
typedef struct _EXCEPTION_DEBUG_INFO {
EXCEPTION_RECORD ExceptionRecord;
DWORD dwFirstChance;
} EXCEPTION_DEBUG_INFO, *LPEXCEPTION_DEBUG_INFO;
typedef struct _CREATE_THREAD_DEBUG_INFO {
HANDLE hThread;
LPVOID lpThreadLocalBase;
LPTHREAD_START_ROUTINE lpStartAddress;
} CREATE_THREAD_DEBUG_INFO, *LPCREATE_THREAD_DEBUG_INFO;
typedef struct _CREATE_PROCESS_DEBUG_INFO {
HANDLE hFile;
HANDLE hProcess;
HANDLE hThread;
LPVOID lpBaseOfImage;
DWORD dwDebugInfoFileOffset;
DWORD nDebugInfoSize;
LPVOID lpThreadLocalBase;
LPTHREAD_START_ROUTINE lpStartAddress;
LPVOID lpImageName;
WORD fUnicode;
} CREATE_PROCESS_DEBUG_INFO, *LPCREATE_PROCESS_DEBUG_INFO;
typedef struct _EXIT_THREAD_DEBUG_INFO {
DWORD dwExitCode;
} EXIT_THREAD_DEBUG_INFO, *LPEXIT_THREAD_DEBUG_INFO;
typedef struct _EXIT_PROCESS_DEBUG_INFO {
DWORD dwExitCode;
} EXIT_PROCESS_DEBUG_INFO, *LPEXIT_PROCESS_DEBUG_INFO;
typedef struct _LOAD_DLL_DEBUG_INFO {
HANDLE hFile;
LPVOID lpBaseOfDll;
DWORD dwDebugInfoFileOffset;
DWORD nDebugInfoSize;
LPVOID lpImageName;
WORD fUnicode;
} LOAD_DLL_DEBUG_INFO, *LPLOAD_DLL_DEBUG_INFO;
typedef struct _UNLOAD_DLL_DEBUG_INFO {
LPVOID lpBaseOfDll;
} UNLOAD_DLL_DEBUG_INFO, *LPUNLOAD_DLL_DEBUG_INFO;
typedef struct _OUTPUT_DEBUG_STRING_INFO {
LPSTR lpDebugStringData;
WORD fUnicode;
WORD nDebugStringLength;
} OUTPUT_DEBUG_STRING_INFO, *LPOUTPUT_DEBUG_STRING_INFO;
typedef struct _RIP_INFO {
DWORD dwError;
DWORD dwType;
} RIP_INFO, *LPRIP_INFO;
typedef struct _DEBUG_EVENT {
DWORD dwDebugEventCode;
DWORD dwProcessId;
DWORD dwThreadId;
union {
EXCEPTION_DEBUG_INFO Exception;
CREATE_THREAD_DEBUG_INFO CreateThread;
CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
EXIT_THREAD_DEBUG_INFO ExitThread;
EXIT_PROCESS_DEBUG_INFO ExitProcess;
LOAD_DLL_DEBUG_INFO LoadDll;
UNLOAD_DLL_DEBUG_INFO UnloadDll;
OUTPUT_DEBUG_STRING_INFO DebugString;
RIP_INFO RipInfo;
} u;
} DEBUG_EVENT, *LPDEBUG_EVENT;
typedef PCONTEXT LPCONTEXT;
typedef struct _CONTRACT_DESCRIPTION CONTRACT_DESCRIPTION;
typedef struct _BEM_REFERENCE BEM_REFERENCE;
typedef void (__attribute__((__stdcall__)) *BEM_FREE_INTERFACE_CALLBACK) (void *interfaceInstance);
HRESULT __attribute__((__stdcall__)) BemCreateReference (const GUID *const iid, void *interfaceInstance, BEM_FREE_INTERFACE_CALLBACK freeCallback, BEM_REFERENCE **reference);
HRESULT __attribute__((__stdcall__)) BemCreateContractFrom (LPCWSTR dllPath, const GUID *const extensionId, const CONTRACT_DESCRIPTION *contractDescription, void *hostContract, void **contract);
HRESULT __attribute__((__stdcall__)) BemCopyReference (BEM_REFERENCE *reference, BEM_REFERENCE **copiedReference);
void __attribute__((__stdcall__)) BemFreeReference (BEM_REFERENCE *reference);
void __attribute__((__stdcall__)) BemFreeContract (void *contract);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsDebuggerPresent (void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) OutputDebugStringA (LPCSTR lpOutputString);
__attribute__((dllimport)) void __attribute__((__stdcall__)) OutputDebugStringW (LPCWSTR lpOutputString);
__attribute__((dllimport)) void __attribute__((__stdcall__)) DebugBreak (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ContinueDebugEvent (DWORD dwProcessId, DWORD dwThreadId, DWORD dwContinueStatus);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WaitForDebugEvent (LPDEBUG_EVENT lpDebugEvent, DWORD dwMilliseconds);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DebugActiveProcess (DWORD dwProcessId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DebugActiveProcessStop (DWORD dwProcessId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CheckRemoteDebuggerPresent (HANDLE hProcess, PBOOL pbDebuggerPresent);
typedef LONG (__attribute__((__stdcall__)) *PTOP_LEVEL_EXCEPTION_FILTER) (struct _EXCEPTION_POINTERS *ExceptionInfo);
typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) SetErrorMode (UINT uMode);
__attribute__((dllimport)) LPTOP_LEVEL_EXCEPTION_FILTER __attribute__((__stdcall__)) SetUnhandledExceptionFilter (LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) UnhandledExceptionFilter (struct _EXCEPTION_POINTERS *ExceptionInfo);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) AddVectoredExceptionHandler (ULONG First, PVECTORED_EXCEPTION_HANDLER Handler);
__attribute__((dllimport)) ULONG __attribute__((__stdcall__)) RemoveVectoredExceptionHandler (PVOID Handle);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) AddVectoredContinueHandler (ULONG First, PVECTORED_EXCEPTION_HANDLER Handler);
__attribute__((dllimport)) ULONG __attribute__((__stdcall__)) RemoveVectoredContinueHandler (PVOID Handle);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RaiseException (DWORD dwExceptionCode, DWORD dwExceptionFlags, DWORD nNumberOfArguments, const ULONG_PTR *lpArguments);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetLastError (void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) SetLastError (DWORD dwErrCode);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateFileW (LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFileAttributesW (LPCWSTR lpFileName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFileSize (HANDLE hFile, LPDWORD lpFileSizeHigh);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetFilePointer (HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod);
typedef struct _BY_HANDLE_FILE_INFORMATION {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD dwVolumeSerialNumber;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD nNumberOfLinks;
DWORD nFileIndexHigh;
DWORD nFileIndexLow;
} BY_HANDLE_FILE_INFORMATION, *PBY_HANDLE_FILE_INFORMATION,
*LPBY_HANDLE_FILE_INFORMATION;
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateFileA (LPCSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DefineDosDeviceW (DWORD dwFlags, LPCWSTR lpDeviceName, LPCWSTR lpTargetPath);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindCloseChangeNotification (HANDLE hChangeHandle);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstChangeNotificationA (LPCSTR lpPathName, WINBOOL bWatchSubtree, DWORD dwNotifyFilter);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstChangeNotificationW (LPCWSTR lpPathName, WINBOOL bWatchSubtree, DWORD dwNotifyFilter);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstVolumeW (LPWSTR lpszVolumeName, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextChangeNotification (HANDLE hChangeHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextVolumeW (HANDLE hFindVolume, LPWSTR lpszVolumeName, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindVolumeClose (HANDLE hFindVolume);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetFileInformationByHandle (HANDLE hFile, LPBY_HANDLE_FILE_INFORMATION lpFileInformation);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) CompareFileTime (const FILETIME *lpFileTime1, const FILETIME *lpFileTime2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteVolumeMountPointW (LPCWSTR lpszVolumeMountPoint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FileTimeToLocalFileTime (const FILETIME *lpFileTime, LPFILETIME lpLocalFileTime);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstFileA (LPCSTR lpFileName, LPWIN32_FIND_DATAA lpFindFileData);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstFileW (LPCWSTR lpFileName, LPWIN32_FIND_DATAW lpFindFileData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDiskFreeSpaceA (LPCSTR lpRootPathName, LPDWORD lpSectorsPerCluster, LPDWORD lpBytesPerSector, LPDWORD lpNumberOfFreeClusters, LPDWORD lpTotalNumberOfClusters);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDiskFreeSpaceW (LPCWSTR lpRootPathName, LPDWORD lpSectorsPerCluster, LPDWORD lpBytesPerSector, LPDWORD lpNumberOfFreeClusters, LPDWORD lpTotalNumberOfClusters);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetDriveTypeA (LPCSTR lpRootPathName);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetDriveTypeW (LPCWSTR lpRootPathName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFileAttributesA (LPCSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetFileSizeEx (HANDLE hFile, PLARGE_INTEGER lpFileSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetFileTime (HANDLE hFile, LPFILETIME lpCreationTime, LPFILETIME lpLastAccessTime, LPFILETIME lpLastWriteTime);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFileType (HANDLE hFile);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFullPathNameA (LPCSTR lpFileName, DWORD nBufferLength, LPSTR lpBuffer, LPSTR *lpFilePart);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFullPathNameW (LPCWSTR lpFileName, DWORD nBufferLength, LPWSTR lpBuffer, LPWSTR *lpFilePart);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetLogicalDrives (void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetLogicalDriveStringsW (DWORD nBufferLength, LPWSTR lpBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetLongPathNameA (LPCSTR lpszShortPath, LPSTR lpszLongPath, DWORD cchBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetLongPathNameW (LPCWSTR lpszShortPath, LPWSTR lpszLongPath, DWORD cchBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetShortPathNameW (LPCWSTR lpszLongPath, LPWSTR lpszShortPath, DWORD cchBuffer);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetTempFileNameA (LPCSTR lpPathName, LPCSTR lpPrefixString, UINT uUnique, LPSTR lpTempFileName);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetTempFileNameW (LPCWSTR lpPathName, LPCWSTR lpPrefixString, UINT uUnique, LPWSTR lpTempFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVolumeInformationW (LPCWSTR lpRootPathName, LPWSTR lpVolumeNameBuffer, DWORD nVolumeNameSize, LPDWORD lpVolumeSerialNumber, LPDWORD lpMaximumComponentLength, LPDWORD lpFileSystemFlags, LPWSTR lpFileSystemNameBuffer, DWORD nFileSystemNameSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVolumePathNameW (LPCWSTR lpszFileName, LPWSTR lpszVolumePathName, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LocalFileTimeToFileTime (const FILETIME *lpLocalFileTime, LPFILETIME lpFileTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LockFile (HANDLE hFile, DWORD dwFileOffsetLow, DWORD dwFileOffsetHigh, DWORD nNumberOfBytesToLockLow, DWORD nNumberOfBytesToLockHigh);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) QueryDosDeviceW (LPCWSTR lpDeviceName, LPWSTR lpTargetPath, DWORD ucchMax);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadFileEx (HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadFileScatter (HANDLE hFile, FILE_SEGMENT_ELEMENT aSegmentArray[], DWORD nNumberOfBytesToRead, LPDWORD lpReserved, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFileTime (HANDLE hFile, const FILETIME *lpCreationTime, const FILETIME *lpLastAccessTime, const FILETIME *lpLastWriteTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFileValidData (HANDLE hFile, LONGLONG ValidDataLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnlockFile (HANDLE hFile, DWORD dwFileOffsetLow, DWORD dwFileOffsetHigh, DWORD nNumberOfBytesToUnlockLow, DWORD nNumberOfBytesToUnlockHigh);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteFileEx (HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteFileGather (HANDLE hFile, FILE_SEGMENT_ELEMENT aSegmentArray[], DWORD nNumberOfBytesToWrite, LPDWORD lpReserved, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVolumeNameForVolumeMountPointW (LPCWSTR lpszVolumeMountPoint, LPWSTR lpszVolumeName, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVolumePathNamesForVolumeNameW (LPCWSTR lpszVolumeName, LPWCH lpszVolumePathNames, DWORD cchBufferLength, PDWORD lpcchReturnLength);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTempPathA (DWORD nBufferLength, LPSTR lpBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTempPathW (DWORD nBufferLength, LPWSTR lpBuffer);
typedef struct _WIN32_FILE_ATTRIBUTE_DATA {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
} WIN32_FILE_ATTRIBUTE_DATA, *LPWIN32_FILE_ATTRIBUTE_DATA;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateDirectoryA (LPCSTR lpPathName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateDirectoryW (LPCWSTR lpPathName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteFileA (LPCSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteFileW (LPCWSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindClose (HANDLE hFindFile);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstFileExA (LPCSTR lpFileName, FINDEX_INFO_LEVELS fInfoLevelId, LPVOID lpFindFileData, FINDEX_SEARCH_OPS fSearchOp, LPVOID lpSearchFilter, DWORD dwAdditionalFlags);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstFileExW (LPCWSTR lpFileName, FINDEX_INFO_LEVELS fInfoLevelId, LPVOID lpFindFileData, FINDEX_SEARCH_OPS fSearchOp, LPVOID lpSearchFilter, DWORD dwAdditionalFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextFileA (HANDLE hFindFile, LPWIN32_FIND_DATAA lpFindFileData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextFileW (HANDLE hFindFile, LPWIN32_FIND_DATAW lpFindFileData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FlushFileBuffers (HANDLE hFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDiskFreeSpaceExA (LPCSTR lpDirectoryName, PULARGE_INTEGER lpFreeBytesAvailableToCaller, PULARGE_INTEGER lpTotalNumberOfBytes, PULARGE_INTEGER lpTotalNumberOfFreeBytes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDiskFreeSpaceExW (LPCWSTR lpDirectoryName, PULARGE_INTEGER lpFreeBytesAvailableToCaller, PULARGE_INTEGER lpTotalNumberOfBytes, PULARGE_INTEGER lpTotalNumberOfFreeBytes);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFileType (HANDLE hFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetFileAttributesExA (LPCSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, LPVOID lpFileInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetFileAttributesExW (LPCWSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, LPVOID lpFileInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LockFileEx (HANDLE hFile, DWORD dwFlags, DWORD dwReserved, DWORD nNumberOfBytesToLockLow, DWORD nNumberOfBytesToLockHigh, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadFile (HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveDirectoryA (LPCSTR lpPathName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveDirectoryW (LPCWSTR lpPathName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetEndOfFile (HANDLE hFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFileAttributesA (LPCSTR lpFileName, DWORD dwFileAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFileAttributesW (LPCWSTR lpFileName, DWORD dwFileAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFilePointerEx (HANDLE hFile, LARGE_INTEGER liDistanceToMove, PLARGE_INTEGER lpNewFilePointer, DWORD dwMoveMethod);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnlockFileEx (HANDLE hFile, DWORD dwReserved, DWORD nNumberOfBytesToUnlockLow, DWORD nNumberOfBytesToUnlockHigh, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteFile (HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CloseHandle (HANDLE hObject);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DuplicateHandle (HANDLE hSourceProcessHandle, HANDLE hSourceHandle, HANDLE hTargetProcessHandle, LPHANDLE lpTargetHandle, DWORD dwDesiredAccess, WINBOOL bInheritHandle, DWORD dwOptions);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetHandleInformation (HANDLE hObject, LPDWORD lpdwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetHandleInformation (HANDLE hObject, DWORD dwMask, DWORD dwFlags);
typedef struct _HEAP_SUMMARY {
DWORD cb;
SIZE_T cbAllocated;
SIZE_T cbCommitted;
SIZE_T cbReserved;
SIZE_T cbMaxReserve;
} HEAP_SUMMARY,*PHEAP_SUMMARY;
typedef PHEAP_SUMMARY LPHEAP_SUMMARY;
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) HeapCreate (DWORD flOptions, SIZE_T dwInitialSize, SIZE_T dwMaximumSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HeapDestroy (HANDLE hHeap);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HeapValidate (HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) HeapCompact (HANDLE hHeap, DWORD dwFlags);
WINBOOL __attribute__((__stdcall__)) HeapSummary (HANDLE hHeap, DWORD dwFlags, LPHEAP_SUMMARY lpSummary);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetProcessHeaps (DWORD NumberOfHeaps, PHANDLE ProcessHeaps);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HeapLock (HANDLE hHeap);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HeapUnlock (HANDLE hHeap);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HeapWalk (HANDLE hHeap, LPPROCESS_HEAP_ENTRY lpEntry);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HeapSetInformation (HANDLE HeapHandle, HEAP_INFORMATION_CLASS HeapInformationClass, PVOID HeapInformation, SIZE_T HeapInformationLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HeapQueryInformation (HANDLE HeapHandle, HEAP_INFORMATION_CLASS HeapInformationClass, PVOID HeapInformation, SIZE_T HeapInformationLength, PSIZE_T ReturnLength);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) HeapAlloc (HANDLE hHeap, DWORD dwFlags, SIZE_T dwBytes);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) HeapReAlloc (HANDLE hHeap, DWORD dwFlags, LPVOID lpMem, SIZE_T dwBytes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HeapFree (HANDLE hHeap, DWORD dwFlags, LPVOID lpMem);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) HeapSize (HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) GetProcessHeap (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetOverlappedResult (HANDLE hFile, LPOVERLAPPED lpOverlapped, LPDWORD lpNumberOfBytesTransferred, WINBOOL bWait);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateIoCompletionPort (HANDLE FileHandle, HANDLE ExistingCompletionPort, ULONG_PTR CompletionKey, DWORD NumberOfConcurrentThreads);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetQueuedCompletionStatus (HANDLE CompletionPort, LPDWORD lpNumberOfBytesTransferred, PULONG_PTR lpCompletionKey, LPOVERLAPPED *lpOverlapped, DWORD dwMilliseconds);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PostQueuedCompletionStatus (HANDLE CompletionPort, DWORD dwNumberOfBytesTransferred, ULONG_PTR dwCompletionKey, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeviceIoControl (HANDLE hDevice, DWORD dwIoControlCode, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CancelIo (HANDLE hFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetOverlappedResultEx (HANDLE hFile, LPOVERLAPPED lpOverlapped, LPDWORD lpNumberOfBytesTransferred, DWORD dwMilliseconds, WINBOOL bAlertable);
__attribute__((dllimport)) void __attribute__((__stdcall__)) InitializeSListHead (PSLIST_HEADER ListHead);
__attribute__((dllimport)) PSLIST_ENTRY __attribute__((__stdcall__)) InterlockedPopEntrySList (PSLIST_HEADER ListHead);
__attribute__((dllimport)) PSLIST_ENTRY __attribute__((__stdcall__)) InterlockedPushEntrySList (PSLIST_HEADER ListHead, PSLIST_ENTRY ListEntry);
__attribute__((dllimport)) PSLIST_ENTRY __attribute__((__stdcall__)) InterlockedFlushSList (PSLIST_HEADER ListHead);
__attribute__((dllimport)) USHORT __attribute__((__stdcall__)) QueryDepthSList (PSLIST_HEADER ListHead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsProcessInJob (HANDLE ProcessHandle, HANDLE JobHandle, PBOOL Result);
typedef struct tagENUMUILANG {
ULONG NumOfEnumUILang;
ULONG SizeOfEnumUIBuffer;
LANGID *pEnumUIBuffer;
} ENUMUILANG, *PENUMUILANG;
typedef WINBOOL (__attribute__((__stdcall__)) *ENUMRESLANGPROCA) (HMODULE hModule, LPCSTR lpType, LPCSTR lpName, WORD wLanguage, LONG_PTR lParam);
typedef WINBOOL (__attribute__((__stdcall__)) *ENUMRESLANGPROCW) (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage, LONG_PTR lParam);
typedef WINBOOL (__attribute__((__stdcall__)) *ENUMRESNAMEPROCA) (HMODULE hModule, LPCSTR lpType, LPSTR lpName, LONG_PTR lParam);
typedef WINBOOL (__attribute__((__stdcall__)) *ENUMRESNAMEPROCW) (HMODULE hModule, LPCWSTR lpType, LPWSTR lpName, LONG_PTR lParam);
typedef WINBOOL (__attribute__((__stdcall__)) *ENUMRESTYPEPROCA) (HMODULE hModule, LPSTR lpType, LONG_PTR lParam);
typedef WINBOOL (__attribute__((__stdcall__)) *ENUMRESTYPEPROCW) (HMODULE hModule, LPWSTR lpType, LONG_PTR lParam);
typedef WINBOOL (__attribute__((__stdcall__)) *PGET_MODULE_HANDLE_EXA) (DWORD dwFlags, LPCSTR lpModuleName, HMODULE *phModule);
typedef WINBOOL (__attribute__((__stdcall__)) *PGET_MODULE_HANDLE_EXW) (DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule);
typedef PVOID DLL_DIRECTORY_COOKIE, *PDLL_DIRECTORY_COOKIE;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceNamesW(HMODULE hModule, LPCWSTR lpType, ENUMRESNAMEPROCW lpEnumFunc, LONG_PTR lParam);
__attribute__((dllimport)) HRSRC __attribute__((__stdcall__)) FindResourceW(HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
__attribute__((dllimport)) HRSRC __attribute__((__stdcall__)) FindResourceExW (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage);
__attribute__((dllimport)) __attribute__((noreturn)) void __attribute__((__stdcall__)) FreeLibraryAndExitThread (HMODULE hLibModule, DWORD dwExitCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FreeResource (HGLOBAL hResData);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) GetModuleHandleA (LPCSTR lpModuleName);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) GetModuleHandleW (LPCWSTR lpModuleName);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) LoadLibraryA(LPCSTR lpLibFileName);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) LoadLibraryW(LPCWSTR lpLibFileName);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) LoadLibraryExA (LPCSTR lpLibFileName, HANDLE hFile, DWORD dwFlags);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) LoadLibraryExW (LPCWSTR lpLibFileName, HANDLE hFile, DWORD dwFlags);
__attribute__((dllimport)) HGLOBAL __attribute__((__stdcall__)) LoadResource (HMODULE hModule, HRSRC hResInfo);
__attribute__((dllimport)) int __attribute__((__stdcall__)) LoadStringA (HINSTANCE hInstance, UINT uID, LPSTR lpBuffer, int cchBufferMax);
__attribute__((dllimport)) int __attribute__((__stdcall__)) LoadStringW (HINSTANCE hInstance, UINT uID, LPWSTR lpBuffer, int cchBufferMax);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) LockResource (HGLOBAL hResData);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SizeofResource (HMODULE hModule, HRSRC hResInfo);
__attribute__((dllimport)) DLL_DIRECTORY_COOKIE __attribute__((__stdcall__)) AddDllDirectory (PCWSTR NewDirectory);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveDllDirectory (DLL_DIRECTORY_COOKIE Cookie);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDefaultDllDirectories (DWORD DirectoryFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetModuleHandleExA (DWORD dwFlags, LPCSTR lpModuleName, HMODULE *phModule);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetModuleHandleExW (DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceLanguagesA(HMODULE hModule,LPCSTR lpType,LPCSTR lpName,ENUMRESLANGPROCA lpEnumFunc,LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceLanguagesW(HMODULE hModule,LPCWSTR lpType,LPCWSTR lpName,ENUMRESLANGPROCW lpEnumFunc,LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DisableThreadLibraryCalls (HMODULE hLibModule);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FreeLibrary (HMODULE hLibModule);
__attribute__((dllimport)) FARPROC __attribute__((__stdcall__)) GetProcAddress (HMODULE hModule, LPCSTR lpProcName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetModuleFileNameA (HMODULE hModule, LPSTR lpFilename, DWORD nSize);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetModuleFileNameW (HMODULE hModule, LPWSTR lpFilename, DWORD nSize);
typedef struct _REDIRECTION_FUNCTION_DESCRIPTOR {
PCSTR DllName;
PCSTR FunctionName;
PVOID RedirectionTarget;
} REDIRECTION_FUNCTION_DESCRIPTOR, *PREDIRECTION_FUNCTION_DESCRIPTOR;
typedef const REDIRECTION_FUNCTION_DESCRIPTOR *PCREDIRECTION_FUNCTION_DESCRIPTOR;
typedef struct _REDIRECTION_DESCRIPTOR {
ULONG Version;
ULONG FunctionCount;
PCREDIRECTION_FUNCTION_DESCRIPTOR Redirections;
} REDIRECTION_DESCRIPTOR, *PREDIRECTION_DESCRIPTOR;
typedef const REDIRECTION_DESCRIPTOR *PCREDIRECTION_DESCRIPTOR;
typedef enum _MEMORY_RESOURCE_NOTIFICATION_TYPE {
LowMemoryResourceNotification,
HighMemoryResourceNotification
} MEMORY_RESOURCE_NOTIFICATION_TYPE;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) VirtualFree (LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) VirtualQuery (LPCVOID lpAddress, PMEMORY_BASIC_INFORMATION lpBuffer, SIZE_T dwLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FlushViewOfFile (LPCVOID lpBaseAddress, SIZE_T dwNumberOfBytesToFlush);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnmapViewOfFile (LPCVOID lpBaseAddress);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateFileMappingFromApp (HANDLE hFile, PSECURITY_ATTRIBUTES SecurityAttributes, ULONG PageProtection, ULONG64 MaximumSize, PCWSTR Name);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) MapViewOfFileFromApp (HANDLE hFileMappingObject, ULONG DesiredAccess, ULONG64 FileOffset, SIZE_T NumberOfBytesToMap);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) VirtualProtect (LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) VirtualAlloc (LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) VirtualAllocEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) VirtualFreeEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) VirtualProtectEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) VirtualQueryEx (HANDLE hProcess, LPCVOID lpAddress, PMEMORY_BASIC_INFORMATION lpBuffer, SIZE_T dwLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadProcessMemory (HANDLE hProcess, LPCVOID lpBaseAddress, LPVOID lpBuffer, SIZE_T nSize, SIZE_T *lpNumberOfBytesRead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteProcessMemory (HANDLE hProcess, LPVOID lpBaseAddress, LPCVOID lpBuffer, SIZE_T nSize, SIZE_T *lpNumberOfBytesWritten);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateFileMappingW (HANDLE hFile, LPSECURITY_ATTRIBUTES lpFileMappingAttributes, DWORD flProtect, DWORD dwMaximumSizeHigh, DWORD dwMaximumSizeLow, LPCWSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenFileMappingW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) MapViewOfFile (HANDLE hFileMappingObject, DWORD dwDesiredAccess, DWORD dwFileOffsetHigh, DWORD dwFileOffsetLow, SIZE_T dwNumberOfBytesToMap);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) MapViewOfFileEx (HANDLE hFileMappingObject, DWORD dwDesiredAccess, DWORD dwFileOffsetHigh, DWORD dwFileOffsetLow, SIZE_T dwNumberOfBytesToMap, LPVOID lpBaseAddress);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) GetLargePageMinimum (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessWorkingSetSizeEx (HANDLE hProcess, PSIZE_T lpMinimumWorkingSetSize, PSIZE_T lpMaximumWorkingSetSize, PDWORD Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetProcessWorkingSetSizeEx (HANDLE hProcess, SIZE_T dwMinimumWorkingSetSize, SIZE_T dwMaximumWorkingSetSize, DWORD Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) VirtualLock (LPVOID lpAddress, SIZE_T dwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) VirtualUnlock (LPVOID lpAddress, SIZE_T dwSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetWriteWatch (DWORD dwFlags, PVOID lpBaseAddress, SIZE_T dwRegionSize, PVOID *lpAddresses, ULONG_PTR *lpdwCount, LPDWORD lpdwGranularity);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) ResetWriteWatch (LPVOID lpBaseAddress, SIZE_T dwRegionSize);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateMemoryResourceNotification (MEMORY_RESOURCE_NOTIFICATION_TYPE NotificationType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryMemoryResourceNotification (HANDLE ResourceNotificationHandle, PBOOL ResourceState);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSystemFileCacheSize (PSIZE_T lpMinimumFileCacheSize, PSIZE_T lpMaximumFileCacheSize, PDWORD lpFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSystemFileCacheSize (SIZE_T MinimumFileCacheSize, SIZE_T MaximumFileCacheSize, DWORD Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ImpersonateNamedPipeClient (HANDLE hNamedPipe);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreatePipe (PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY_ATTRIBUTES lpPipeAttributes, DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ConnectNamedPipe (HANDLE hNamedPipe, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DisconnectNamedPipe (HANDLE hNamedPipe);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetNamedPipeHandleState (HANDLE hNamedPipe, LPDWORD lpMode, LPDWORD lpMaxCollectionCount, LPDWORD lpCollectDataTimeout);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PeekNamedPipe (HANDLE hNamedPipe, LPVOID lpBuffer, DWORD nBufferSize, LPDWORD lpBytesRead, LPDWORD lpTotalBytesAvail, LPDWORD lpBytesLeftThisMessage);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TransactNamedPipe (HANDLE hNamedPipe, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesRead, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateNamedPipeW (LPCWSTR lpName, DWORD dwOpenMode, DWORD dwPipeMode, DWORD nMaxInstances, DWORD nOutBufferSize, DWORD nInBufferSize, DWORD nDefaultTimeOut, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WaitNamedPipeW (LPCWSTR lpNamedPipeName, DWORD nTimeOut);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreatePrivateNamespaceW (LPSECURITY_ATTRIBUTES lpPrivateNamespaceAttributes, LPVOID lpBoundaryDescriptor, LPCWSTR lpAliasPrefix);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenPrivateNamespaceW (LPVOID lpBoundaryDescriptor, LPCWSTR lpAliasPrefix);
__attribute__((dllimport)) BOOLEAN __attribute__((__stdcall__)) ClosePrivateNamespace (HANDLE Handle, ULONG Flags);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateBoundaryDescriptorW (LPCWSTR Name, ULONG Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddSIDToBoundaryDescriptor (HANDLE *BoundaryDescriptor, PSID RequiredSid);
__attribute__((dllimport)) void __attribute__((__stdcall__)) DeleteBoundaryDescriptor (HANDLE BoundaryDescriptor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetEnvironmentStringsW (LPWCH NewEnvironment);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) GetCommandLineA (void);
__attribute__((dllimport)) LPWSTR __attribute__((__stdcall__)) GetCommandLineW (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCurrentDirectoryA (LPCSTR lpPathName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCurrentDirectoryW (LPCWSTR lpPathName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCurrentDirectoryA (DWORD nBufferLength, LPSTR lpBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCurrentDirectoryW (DWORD nBufferLength, LPWSTR lpBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SearchPathW (LPCWSTR lpPath, LPCWSTR lpFileName, LPCWSTR lpExtension, DWORD nBufferLength, LPWSTR lpBuffer, LPWSTR *lpFilePart);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SearchPathA (LPCSTR lpPath, LPCSTR lpFileName, LPCSTR lpExtension, DWORD nBufferLength, LPSTR lpBuffer, LPSTR *lpFilePart);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) NeedCurrentDirectoryForExePathA (LPCSTR ExeName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) NeedCurrentDirectoryForExePathW (LPCWSTR ExeName);
__attribute__((dllimport)) LPCH __attribute__((__stdcall__)) GetEnvironmentStrings (void);
__attribute__((dllimport)) LPWCH __attribute__((__stdcall__)) GetEnvironmentStringsW (void);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) GetStdHandle (DWORD nStdHandle);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) ExpandEnvironmentStringsA (LPCSTR lpSrc, LPSTR lpDst, DWORD nSize);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) ExpandEnvironmentStringsW (LPCWSTR lpSrc, LPWSTR lpDst, DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FreeEnvironmentStringsA (LPCH penv);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FreeEnvironmentStringsW (LPWCH penv);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetEnvironmentVariableA (LPCSTR lpName, LPSTR lpBuffer, DWORD nSize);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetEnvironmentVariableW (LPCWSTR lpName, LPWSTR lpBuffer, DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetEnvironmentVariableA (LPCSTR lpName, LPCSTR lpValue);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetEnvironmentVariableW (LPCWSTR lpName, LPCWSTR lpValue);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetStdHandle (DWORD nStdHandle, HANDLE hHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TerminateProcess (HANDLE hProcess, UINT uExitCode);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenProcess (DWORD dwDesiredAccess, WINBOOL bInheritHandle, DWORD dwProcessId);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) QueueUserAPC (PAPCFUNC pfnAPC, HANDLE hThread, ULONG_PTR dwData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessTimes (HANDLE hProcess, LPFILETIME lpCreationTime, LPFILETIME lpExitTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime);
__attribute__((dllimport)) __attribute__((noreturn)) void __attribute__((__stdcall__)) ExitProcess (UINT uExitCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetExitCodeProcess (HANDLE hProcess, LPDWORD lpExitCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SwitchToThread (void);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenThread (DWORD dwDesiredAccess, WINBOOL bInheritHandle, DWORD dwThreadId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetThreadPriorityBoost (HANDLE hThread, WINBOOL bDisablePriorityBoost);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetThreadPriorityBoost (HANDLE hThread, PBOOL pDisablePriorityBoost);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetThreadToken (PHANDLE Thread, HANDLE Token);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OpenProcessToken (HANDLE ProcessHandle, DWORD DesiredAccess, PHANDLE TokenHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OpenThreadToken (HANDLE ThreadHandle, DWORD DesiredAccess, WINBOOL OpenAsSelf, PHANDLE TokenHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetPriorityClass (HANDLE hProcess, DWORD dwPriorityClass);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetPriorityClass (HANDLE hProcess);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetProcessId (HANDLE Process);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetThreadId (HANDLE Thread);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetThreadContext (HANDLE hThread, LPCONTEXT lpContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FlushInstructionCache (HANDLE hProcess, LPCVOID lpBaseAddress, SIZE_T dwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetThreadTimes (HANDLE hThread, LPFILETIME lpCreationTime, LPFILETIME lpExitTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCurrentProcessorNumber (void);
typedef struct _PROCESS_INFORMATION {
HANDLE hProcess;
HANDLE hThread;
DWORD dwProcessId;
DWORD dwThreadId;
} PROCESS_INFORMATION, *PPROCESS_INFORMATION, *LPPROCESS_INFORMATION;
typedef struct _PROC_THREAD_ATTRIBUTE_LIST *PPROC_THREAD_ATTRIBUTE_LIST, *LPPROC_THREAD_ATTRIBUTE_LIST;
typedef struct _STARTUPINFOA {
DWORD cb;
LPSTR lpReserved;
LPSTR lpDesktop;
LPSTR lpTitle;
DWORD dwX;
DWORD dwY;
DWORD dwXSize;
DWORD dwYSize;
DWORD dwXCountChars;
DWORD dwYCountChars;
DWORD dwFillAttribute;
DWORD dwFlags;
WORD wShowWindow;
WORD cbReserved2;
LPBYTE lpReserved2;
HANDLE hStdInput;
HANDLE hStdOutput;
HANDLE hStdError;
} STARTUPINFOA, *LPSTARTUPINFOA;
typedef struct _STARTUPINFOW {
DWORD cb;
LPWSTR lpReserved;
LPWSTR lpDesktop;
LPWSTR lpTitle;
DWORD dwX;
DWORD dwY;
DWORD dwXSize;
DWORD dwYSize;
DWORD dwXCountChars;
DWORD dwYCountChars;
DWORD dwFillAttribute;
DWORD dwFlags;
WORD wShowWindow;
WORD cbReserved2;
LPBYTE lpReserved2;
HANDLE hStdInput;
HANDLE hStdOutput;
HANDLE hStdError;
} STARTUPINFOW, *LPSTARTUPINFOW;
typedef STARTUPINFOA STARTUPINFO;
typedef LPSTARTUPINFOA LPSTARTUPINFO;
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateRemoteThread (HANDLE hProcess, LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPDWORD lpThreadId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TerminateThread (HANDLE hThread, DWORD dwExitCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetProcessShutdownParameters (DWORD dwLevel, DWORD dwFlags);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetProcessVersion (DWORD ProcessId);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GetStartupInfoW (LPSTARTUPINFOW lpStartupInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetThreadStackGuarantee (PULONG StackSizeInBytes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ProcessIdToSessionId (DWORD dwProcessId, DWORD *pSessionId);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateRemoteThreadEx (HANDLE hProcess, LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList, LPDWORD lpThreadId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetThreadContext (HANDLE hThread, const CONTEXT *lpContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessHandleCount (HANDLE hProcess, PDWORD pdwHandleCount);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateProcessA (LPCSTR lpApplicationName, LPSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, WINBOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCSTR lpCurrentDirectory, LPSTARTUPINFOA lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateProcessW (LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, WINBOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateProcessAsUserW (HANDLE hToken, LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, WINBOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) GetCurrentProcess (void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCurrentProcessId (void);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) GetCurrentThread (void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCurrentThreadId (void);
WINBOOL __attribute__((__stdcall__)) IsProcessorFeaturePresent (DWORD ProcessorFeature);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateThread (LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPDWORD lpThreadId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetThreadPriority (HANDLE hThread, int nPriority);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetThreadPriority (HANDLE hThread);
__attribute__((dllimport)) __attribute__((noreturn)) void __attribute__((__stdcall__)) ExitThread (DWORD dwExitCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetExitCodeThread (HANDLE hThread, LPDWORD lpExitCode);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SuspendThread (HANDLE hThread);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) ResumeThread (HANDLE hThread);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) TlsAlloc (void);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) TlsGetValue (DWORD dwTlsIndex);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TlsSetValue (DWORD dwTlsIndex, LPVOID lpTlsValue);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TlsFree (DWORD dwTlsIndex);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryPerformanceCounter (LARGE_INTEGER *lpPerformanceCount);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryPerformanceFrequency (LARGE_INTEGER *lpFrequency);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheck (PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, PPRIVILEGE_SET PrivilegeSet, LPDWORD PrivilegeSetLength, LPDWORD GrantedAccess, LPBOOL AccessStatus);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckAndAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, LPWSTR ObjectTypeName, LPWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckByType (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID PrincipalSelfSid, HANDLE ClientToken, DWORD DesiredAccess, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, PPRIVILEGE_SET PrivilegeSet, LPDWORD PrivilegeSetLength, LPDWORD GrantedAccess, LPBOOL AccessStatus);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckByTypeResultList (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID PrincipalSelfSid, HANDLE ClientToken, DWORD DesiredAccess, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, PPRIVILEGE_SET PrivilegeSet, LPDWORD PrivilegeSetLength, LPDWORD GrantedAccessList, LPDWORD AccessStatusList);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckByTypeAndAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, LPCWSTR ObjectTypeName, LPCWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckByTypeResultListAndAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, LPCWSTR ObjectTypeName, LPCWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccessList, LPDWORD AccessStatusList, LPBOOL pfGenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckByTypeResultListAndAuditAlarmByHandleW (LPCWSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, LPCWSTR ObjectTypeName, LPCWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccessList, LPDWORD AccessStatusList, LPBOOL pfGenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAccessAllowedAce (PACL pAcl, DWORD dwAceRevision, DWORD AccessMask, PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAccessAllowedAceEx (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAccessAllowedObjectAce (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, GUID *ObjectTypeGuid, GUID *InheritedObjectTypeGuid, PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAccessDeniedAce (PACL pAcl, DWORD dwAceRevision, DWORD AccessMask, PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAccessDeniedAceEx (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAccessDeniedObjectAce (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, GUID *ObjectTypeGuid, GUID *InheritedObjectTypeGuid, PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAce (PACL pAcl, DWORD dwAceRevision, DWORD dwStartingAceIndex, LPVOID pAceList, DWORD nAceListLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAuditAccessAce (PACL pAcl, DWORD dwAceRevision, DWORD dwAccessMask, PSID pSid, WINBOOL bAuditSuccess, WINBOOL bAuditFailure);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAuditAccessAceEx (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD dwAccessMask, PSID pSid, WINBOOL bAuditSuccess, WINBOOL bAuditFailure);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddAuditAccessObjectAce (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, GUID *ObjectTypeGuid, GUID *InheritedObjectTypeGuid, PSID pSid, WINBOOL bAuditSuccess, WINBOOL bAuditFailure);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AdjustTokenGroups (HANDLE TokenHandle, WINBOOL ResetToDefault, PTOKEN_GROUPS NewState, DWORD BufferLength, PTOKEN_GROUPS PreviousState, PDWORD ReturnLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AdjustTokenPrivileges (HANDLE TokenHandle, WINBOOL DisableAllPrivileges, PTOKEN_PRIVILEGES NewState, DWORD BufferLength, PTOKEN_PRIVILEGES PreviousState, PDWORD ReturnLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AllocateAndInitializeSid (PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount, DWORD nSubAuthority0, DWORD nSubAuthority1, DWORD nSubAuthority2, DWORD nSubAuthority3, DWORD nSubAuthority4, DWORD nSubAuthority5, DWORD nSubAuthority6, DWORD nSubAuthority7, PSID *pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AllocateLocallyUniqueId (PLUID Luid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AreAllAccessesGranted (DWORD GrantedAccess, DWORD DesiredAccess);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AreAnyAccessesGranted (DWORD GrantedAccess, DWORD DesiredAccess);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CheckTokenMembership (HANDLE TokenHandle, PSID SidToCheck, PBOOL IsMember);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ConvertToAutoInheritPrivateObjectSecurity (PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CurrentSecurityDescriptor, PSECURITY_DESCRIPTOR *NewSecurityDescriptor, GUID *ObjectType, BOOLEAN IsDirectoryObject, PGENERIC_MAPPING GenericMapping);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CopySid (DWORD nDestinationSidLength, PSID pDestinationSid, PSID pSourceSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreatePrivateObjectSecurity (PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CreatorDescriptor, PSECURITY_DESCRIPTOR *NewDescriptor, WINBOOL IsDirectoryObject, HANDLE Token, PGENERIC_MAPPING GenericMapping);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreatePrivateObjectSecurityEx (PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CreatorDescriptor, PSECURITY_DESCRIPTOR *NewDescriptor, GUID *ObjectType, WINBOOL IsContainerObject, ULONG AutoInheritFlags, HANDLE Token, PGENERIC_MAPPING GenericMapping);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreatePrivateObjectSecurityWithMultipleInheritance (PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CreatorDescriptor, PSECURITY_DESCRIPTOR *NewDescriptor, GUID **ObjectTypes, ULONG GuidCount, WINBOOL IsContainerObject, ULONG AutoInheritFlags, HANDLE Token, PGENERIC_MAPPING GenericMapping);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateRestrictedToken (HANDLE ExistingTokenHandle, DWORD Flags, DWORD DisableSidCount, PSID_AND_ATTRIBUTES SidsToDisable, DWORD DeletePrivilegeCount, PLUID_AND_ATTRIBUTES PrivilegesToDelete, DWORD RestrictedSidCount, PSID_AND_ATTRIBUTES SidsToRestrict, PHANDLE NewTokenHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateWellKnownSid (WELL_KNOWN_SID_TYPE WellKnownSidType, PSID DomainSid, PSID pSid, DWORD *cbSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EqualDomainSid (PSID pSid1, PSID pSid2, WINBOOL *pfEqual);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteAce (PACL pAcl, DWORD dwAceIndex);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DestroyPrivateObjectSecurity (PSECURITY_DESCRIPTOR *ObjectDescriptor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DuplicateToken (HANDLE ExistingTokenHandle, SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, PHANDLE DuplicateTokenHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DuplicateTokenEx (HANDLE hExistingToken, DWORD dwDesiredAccess, LPSECURITY_ATTRIBUTES lpTokenAttributes, SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, TOKEN_TYPE TokenType, PHANDLE phNewToken);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EqualPrefixSid (PSID pSid1, PSID pSid2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EqualSid (PSID pSid1, PSID pSid2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindFirstFreeAce (PACL pAcl, LPVOID *pAce);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) FreeSid (PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetAce (PACL pAcl, DWORD dwAceIndex, LPVOID *pAce);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetAclInformation (PACL pAcl, LPVOID pAclInformation, DWORD nAclInformationLength, ACL_INFORMATION_CLASS dwAclInformationClass);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetFileSecurityW (LPCWSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetKernelObjectSecurity (HANDLE Handle, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetLengthSid (PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetPrivateObjectSecurity (PSECURITY_DESCRIPTOR ObjectDescriptor, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR ResultantDescriptor, DWORD DescriptorLength, PDWORD ReturnLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSecurityDescriptorControl (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSECURITY_DESCRIPTOR_CONTROL pControl, LPDWORD lpdwRevision);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSecurityDescriptorDacl (PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbDaclPresent, PACL *pDacl, LPBOOL lpbDaclDefaulted);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSecurityDescriptorGroup (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID *pGroup, LPBOOL lpbGroupDefaulted);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetSecurityDescriptorLength (PSECURITY_DESCRIPTOR pSecurityDescriptor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSecurityDescriptorOwner (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID *pOwner, LPBOOL lpbOwnerDefaulted);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetSecurityDescriptorRMControl (PSECURITY_DESCRIPTOR SecurityDescriptor, PUCHAR RMControl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSecurityDescriptorSacl (PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbSaclPresent, PACL *pSacl, LPBOOL lpbSaclDefaulted);
__attribute__((dllimport)) PSID_IDENTIFIER_AUTHORITY __attribute__((__stdcall__)) GetSidIdentifierAuthority (PSID pSid);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetSidLengthRequired (UCHAR nSubAuthorityCount);
__attribute__((dllimport)) PDWORD __attribute__((__stdcall__)) GetSidSubAuthority (PSID pSid, DWORD nSubAuthority);
__attribute__((dllimport)) PUCHAR __attribute__((__stdcall__)) GetSidSubAuthorityCount (PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTokenInformation (HANDLE TokenHandle, TOKEN_INFORMATION_CLASS TokenInformationClass, LPVOID TokenInformation, DWORD TokenInformationLength, PDWORD ReturnLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetWindowsAccountDomainSid (PSID pSid, PSID pDomainSid, DWORD *cbDomainSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ImpersonateAnonymousToken (HANDLE ThreadHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ImpersonateLoggedOnUser (HANDLE hToken);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ImpersonateSelf (SECURITY_IMPERSONATION_LEVEL ImpersonationLevel);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitializeAcl (PACL pAcl, DWORD nAclLength, DWORD dwAclRevision);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitializeSecurityDescriptor (PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitializeSid (PSID Sid, PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsTokenRestricted (HANDLE TokenHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsValidAcl (PACL pAcl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsValidSecurityDescriptor (PSECURITY_DESCRIPTOR pSecurityDescriptor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsValidSid (PSID pSid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsWellKnownSid (PSID pSid, WELL_KNOWN_SID_TYPE WellKnownSidType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MakeAbsoluteSD (PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, LPDWORD lpdwAbsoluteSecurityDescriptorSize, PACL pDacl, LPDWORD lpdwDaclSize, PACL pSacl, LPDWORD lpdwSaclSize, PSID pOwner, LPDWORD lpdwOwnerSize, PSID pPrimaryGroup, LPDWORD lpdwPrimaryGroupSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MakeSelfRelativeSD (PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, LPDWORD lpdwBufferLength);
__attribute__((dllimport)) void __attribute__((__stdcall__)) MapGenericMask (PDWORD AccessMask, PGENERIC_MAPPING GenericMapping);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ObjectCloseAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, WINBOOL GenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ObjectDeleteAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, WINBOOL GenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ObjectOpenAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, LPWSTR ObjectTypeName, LPWSTR ObjectName, PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, DWORD GrantedAccess, PPRIVILEGE_SET Privileges, WINBOOL ObjectCreation, WINBOOL AccessGranted, LPBOOL GenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ObjectPrivilegeAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, DWORD DesiredAccess, PPRIVILEGE_SET Privileges, WINBOOL AccessGranted);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PrivilegeCheck (HANDLE ClientToken, PPRIVILEGE_SET RequiredPrivileges, LPBOOL pfResult);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PrivilegedServiceAuditAlarmW (LPCWSTR SubsystemName, LPCWSTR ServiceName, HANDLE ClientToken, PPRIVILEGE_SET Privileges, WINBOOL AccessGranted);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RevertToSelf (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetAclInformation (PACL pAcl, LPVOID pAclInformation, DWORD nAclInformationLength, ACL_INFORMATION_CLASS dwAclInformationClass);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFileSecurityW (LPCWSTR lpFileName, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetKernelObjectSecurity (HANDLE Handle, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR SecurityDescriptor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetPrivateObjectSecurity (SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR ModificationDescriptor, PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, PGENERIC_MAPPING GenericMapping, HANDLE Token);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetPrivateObjectSecurityEx (SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR ModificationDescriptor, PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, ULONG AutoInheritFlags, PGENERIC_MAPPING GenericMapping, HANDLE Token);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSecurityDescriptorControl (PSECURITY_DESCRIPTOR pSecurityDescriptor, SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest, SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSecurityDescriptorDacl (PSECURITY_DESCRIPTOR pSecurityDescriptor, WINBOOL bDaclPresent, PACL pDacl, WINBOOL bDaclDefaulted);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSecurityDescriptorGroup (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID pGroup, WINBOOL bGroupDefaulted);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSecurityDescriptorOwner (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID pOwner, WINBOOL bOwnerDefaulted);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetSecurityDescriptorRMControl (PSECURITY_DESCRIPTOR SecurityDescriptor, PUCHAR RMControl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSecurityDescriptorSacl (PSECURITY_DESCRIPTOR pSecurityDescriptor, WINBOOL bSaclPresent, PACL pSacl, WINBOOL bSaclDefaulted);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetTokenInformation (HANDLE TokenHandle, TOKEN_INFORMATION_CLASS TokenInformationClass, LPVOID TokenInformation, DWORD TokenInformationLength);
typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK;
typedef RTL_RUN_ONCE INIT_ONCE;
typedef PRTL_RUN_ONCE PINIT_ONCE;
typedef PRTL_RUN_ONCE LPINIT_ONCE;
typedef WINBOOL (__attribute__((__stdcall__)) *PINIT_ONCE_FN) (PINIT_ONCE InitOnce, PVOID Parameter, PVOID *Context);
typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE;
__attribute__((dllimport)) void __attribute__((__stdcall__)) EnterCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
__attribute__((dllimport)) void __attribute__((__stdcall__)) LeaveCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TryEnterCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
__attribute__((dllimport)) void __attribute__((__stdcall__)) DeleteCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetEvent (HANDLE hEvent);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ResetEvent (HANDLE hEvent);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReleaseSemaphore (HANDLE hSemaphore, LONG lReleaseCount, LPLONG lpPreviousCount);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReleaseMutex (HANDLE hMutex);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WaitForSingleObjectEx (HANDLE hHandle, DWORD dwMilliseconds, WINBOOL bAlertable);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WaitForMultipleObjectsEx (DWORD nCount, const HANDLE *lpHandles, WINBOOL bWaitAll, DWORD dwMilliseconds, WINBOOL bAlertable);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenMutexW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenEventA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenEventW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenSemaphoreW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
WINBOOL __attribute__((__stdcall__)) WaitOnAddress (volatile void *Address, PVOID CompareAddress, SIZE_T AddressSize, DWORD dwMilliseconds);
void __attribute__((__stdcall__)) WakeByAddressSingle (PVOID Address);
void __attribute__((__stdcall__)) WakeByAddressAll (PVOID Address);
typedef void (__attribute__((__stdcall__)) *PTIMERAPCROUTINE) (LPVOID lpArgToCompletionRoutine, DWORD dwTimerLowValue, DWORD dwTimerHighValue);
typedef RTL_BARRIER SYNCHRONIZATION_BARRIER;
typedef PRTL_BARRIER PSYNCHRONIZATION_BARRIER;
typedef PRTL_BARRIER LPSYNCHRONIZATION_BARRIER;
__attribute__((dllimport)) void __attribute__((__stdcall__)) InitializeCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitializeCriticalSectionAndSpinCount (LPCRITICAL_SECTION lpCriticalSection, DWORD dwSpinCount);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetCriticalSectionSpinCount (LPCRITICAL_SECTION lpCriticalSection, DWORD dwSpinCount);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WaitForSingleObject (HANDLE hHandle, DWORD dwMilliseconds);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SleepEx (DWORD dwMilliseconds, WINBOOL bAlertable);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateMutexA (LPSECURITY_ATTRIBUTES lpMutexAttributes, WINBOOL bInitialOwner, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateMutexW (LPSECURITY_ATTRIBUTES lpMutexAttributes, WINBOOL bInitialOwner, LPCWSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateEventA (LPSECURITY_ATTRIBUTES lpEventAttributes, WINBOOL bManualReset, WINBOOL bInitialState, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateEventW (LPSECURITY_ATTRIBUTES lpEventAttributes, WINBOOL bManualReset, WINBOOL bInitialState, LPCWSTR lpName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWaitableTimer (HANDLE hTimer, const LARGE_INTEGER *lpDueTime, LONG lPeriod, PTIMERAPCROUTINE pfnCompletionRoutine, LPVOID lpArgToCompletionRoutine, WINBOOL fResume);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CancelWaitableTimer (HANDLE hTimer);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenWaitableTimerW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpTimerName);
WINBOOL __attribute__((__stdcall__)) EnterSynchronizationBarrier (LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags);
WINBOOL __attribute__((__stdcall__)) InitializeSynchronizationBarrier (LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount);
WINBOOL __attribute__((__stdcall__)) DeleteSynchronizationBarrier (LPSYNCHRONIZATION_BARRIER lpBarrier);
__attribute__((dllimport)) void __attribute__((__stdcall__)) Sleep (DWORD dwMilliseconds);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SignalObjectAndWait (HANDLE hObjectToSignal, HANDLE hObjectToWaitOn, DWORD dwMilliseconds, WINBOOL bAlertable);
typedef struct _SYSTEM_INFO {
__extension__ union {
DWORD dwOemId;
__extension__ struct {
WORD wProcessorArchitecture;
WORD wReserved;
} ;
} ;
DWORD dwPageSize;
LPVOID lpMinimumApplicationAddress;
LPVOID lpMaximumApplicationAddress;
DWORD_PTR dwActiveProcessorMask;
DWORD dwNumberOfProcessors;
DWORD dwProcessorType;
DWORD dwAllocationGranularity;
WORD wProcessorLevel;
WORD wProcessorRevision;
} SYSTEM_INFO, *LPSYSTEM_INFO;
__attribute__((dllimport)) void __attribute__((__stdcall__)) GetSystemTime (LPSYSTEMTIME lpSystemTime);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GetSystemTimeAsFileTime (LPFILETIME lpSystemTimeAsFileTime);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GetLocalTime (LPSYSTEMTIME lpSystemTime);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GetNativeSystemInfo (LPSYSTEM_INFO lpSystemInfo);
typedef struct _MEMORYSTATUSEX {
DWORD dwLength;
DWORD dwMemoryLoad;
DWORDLONG ullTotalPhys;
DWORDLONG ullAvailPhys;
DWORDLONG ullTotalPageFile;
DWORDLONG ullAvailPageFile;
DWORDLONG ullTotalVirtual;
DWORDLONG ullAvailVirtual;
DWORDLONG ullAvailExtendedVirtual;
} MEMORYSTATUSEX,*LPMEMORYSTATUSEX;
__attribute__((dllimport)) void __attribute__((__stdcall__)) GetSystemInfo (LPSYSTEM_INFO lpSystemInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GlobalMemoryStatusEx (LPMEMORYSTATUSEX lpBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTickCount (void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GetSystemTimePreciseAsFileTime (LPFILETIME lpSystemTimeAsFileTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVersionExA (LPOSVERSIONINFOA lpVersionInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVersionExW (LPOSVERSIONINFOW lpVersionInformation);
typedef enum _COMPUTER_NAME_FORMAT {
ComputerNameNetBIOS,
ComputerNameDnsHostname,
ComputerNameDnsDomain,
ComputerNameDnsFullyQualified,
ComputerNamePhysicalNetBIOS,
ComputerNamePhysicalDnsHostname,
ComputerNamePhysicalDnsDomain,
ComputerNamePhysicalDnsFullyQualified,
ComputerNameMax
} COMPUTER_NAME_FORMAT;
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetVersion (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetLocalTime (const SYSTEMTIME *lpSystemTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSystemTimeAdjustment (PDWORD lpTimeAdjustment, PDWORD lpTimeIncrement, PBOOL lpTimeAdjustmentDisabled);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemDirectoryA (LPSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemDirectoryW (LPWSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetWindowsDirectoryA (LPSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetWindowsDirectoryW (LPWSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemWindowsDirectoryA (LPSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemWindowsDirectoryW (LPWSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetComputerNameExA (COMPUTER_NAME_FORMAT NameType, LPSTR lpBuffer, LPDWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetComputerNameExW (COMPUTER_NAME_FORMAT NameType, LPWSTR lpBuffer, LPDWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetComputerNameExW (COMPUTER_NAME_FORMAT NameType, LPCWSTR lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSystemTime (const SYSTEMTIME *lpSystemTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetLogicalProcessorInformation (PSYSTEM_LOGICAL_PROCESSOR_INFORMATION Buffer, PDWORD ReturnedLength);
__attribute__((dllimport)) ULONGLONG __attribute__((__stdcall__)) VerSetConditionMask (ULONGLONG ConditionMask, ULONG TypeMask, UCHAR Condition);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) EnumSystemFirmwareTables (DWORD FirmwareTableProviderSignature, PVOID pFirmwareTableEnumBuffer, DWORD BufferSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemFirmwareTable (DWORD FirmwareTableProviderSignature, DWORD FirmwareTableID, PVOID pFirmwareTableBuffer, DWORD BufferSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNumaHighestNodeNumber (PULONG HighestNodeNumber);
typedef void (__attribute__((__stdcall__)) *PTP_WIN32_IO_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context, PVOID Overlapped, ULONG IoResult, ULONG_PTR NumberOfBytesTransferred, PTP_IO Io);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateTimerQueueTimer (PHANDLE phNewTimer, HANDLE TimerQueue, WAITORTIMERCALLBACK Callback, PVOID Parameter, DWORD DueTime, DWORD Period, ULONG Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteTimerQueueTimer (HANDLE TimerQueue, HANDLE Timer, HANDLE CompletionEvent);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueueUserWorkItem (LPTHREAD_START_ROUTINE Function, PVOID Context, ULONG Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnregisterWaitEx (HANDLE WaitHandle, HANDLE CompletionEvent);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateTimerQueue (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChangeTimerQueueTimer (HANDLE TimerQueue, HANDLE Timer, ULONG DueTime, ULONG Period);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteTimerQueueEx (HANDLE TimerQueue, HANDLE CompletionEvent);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) EncodePointer (PVOID Ptr);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) DecodePointer (PVOID Ptr);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) EncodeSystemPointer (PVOID Ptr);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) DecodeSystemPointer (PVOID Ptr);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Beep (DWORD dwFreq, DWORD dwDuration);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Wow64DisableWow64FsRedirection (PVOID *OldValue);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Wow64RevertWow64FsRedirection (PVOID OlValue);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsWow64Process (HANDLE hProcess, PBOOL Wow64Process);
typedef void (__attribute__((__stdcall__)) *PFIBER_START_ROUTINE) (LPVOID lpFiberParameter);
typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE;
typedef PLDT_ENTRY LPLDT_ENTRY;
typedef struct _COMMPROP {
WORD wPacketLength;
WORD wPacketVersion;
DWORD dwServiceMask;
DWORD dwReserved1;
DWORD dwMaxTxQueue;
DWORD dwMaxRxQueue;
DWORD dwMaxBaud;
DWORD dwProvSubType;
DWORD dwProvCapabilities;
DWORD dwSettableParams;
DWORD dwSettableBaud;
WORD wSettableData;
WORD wSettableStopParity;
DWORD dwCurrentTxQueue;
DWORD dwCurrentRxQueue;
DWORD dwProvSpec1;
DWORD dwProvSpec2;
WCHAR wcProvChar[1];
} COMMPROP,*LPCOMMPROP;
typedef struct _COMSTAT {
DWORD fCtsHold : 1;
DWORD fDsrHold : 1;
DWORD fRlsdHold : 1;
DWORD fXoffHold : 1;
DWORD fXoffSent : 1;
DWORD fEof : 1;
DWORD fTxim : 1;
DWORD fReserved : 25;
DWORD cbInQue;
DWORD cbOutQue;
} COMSTAT,*LPCOMSTAT;
typedef struct _DCB {
DWORD DCBlength;
DWORD BaudRate;
DWORD fBinary: 1;
DWORD fParity: 1;
DWORD fOutxCtsFlow:1;
DWORD fOutxDsrFlow:1;
DWORD fDtrControl:2;
DWORD fDsrSensitivity:1;
DWORD fTXContinueOnXoff: 1;
DWORD fOutX: 1;
DWORD fInX: 1;
DWORD fErrorChar: 1;
DWORD fNull: 1;
DWORD fRtsControl:2;
DWORD fAbortOnError:1;
DWORD fDummy2:17;
WORD wReserved;
WORD XonLim;
WORD XoffLim;
BYTE ByteSize;
BYTE Parity;
BYTE StopBits;
char XonChar;
char XoffChar;
char ErrorChar;
char EofChar;
char EvtChar;
WORD wReserved1;
} DCB,*LPDCB;
typedef struct _COMMTIMEOUTS {
DWORD ReadIntervalTimeout;
DWORD ReadTotalTimeoutMultiplier;
DWORD ReadTotalTimeoutConstant;
DWORD WriteTotalTimeoutMultiplier;
DWORD WriteTotalTimeoutConstant;
} COMMTIMEOUTS,*LPCOMMTIMEOUTS;
typedef struct _COMMCONFIG {
DWORD dwSize;
WORD wVersion;
WORD wReserved;
DCB dcb;
DWORD dwProviderSubType;
DWORD dwProviderOffset;
DWORD dwProviderSize;
WCHAR wcProviderData[1];
} COMMCONFIG,*LPCOMMCONFIG;
typedef struct _MEMORYSTATUS {
DWORD dwLength;
DWORD dwMemoryLoad;
SIZE_T dwTotalPhys;
SIZE_T dwAvailPhys;
SIZE_T dwTotalPageFile;
SIZE_T dwAvailPageFile;
SIZE_T dwTotalVirtual;
SIZE_T dwAvailVirtual;
} MEMORYSTATUS,*LPMEMORYSTATUS;
typedef struct _JIT_DEBUG_INFO {
DWORD dwSize;
DWORD dwProcessorArchitecture;
DWORD dwThreadID;
DWORD dwReserved0;
ULONG64 lpExceptionAddress;
ULONG64 lpExceptionRecord;
ULONG64 lpContextRecord;
} JIT_DEBUG_INFO,*LPJIT_DEBUG_INFO;
typedef JIT_DEBUG_INFO JIT_DEBUG_INFO32, *LPJIT_DEBUG_INFO32;
typedef JIT_DEBUG_INFO JIT_DEBUG_INFO64, *LPJIT_DEBUG_INFO64;
typedef PEXCEPTION_RECORD LPEXCEPTION_RECORD;
typedef PEXCEPTION_POINTERS LPEXCEPTION_POINTERS;
typedef struct _OFSTRUCT {
BYTE cBytes;
BYTE fFixedDisk;
WORD nErrCode;
WORD Reserved1;
WORD Reserved2;
CHAR szPathName[128];
} OFSTRUCT, *LPOFSTRUCT,*POFSTRUCT;
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) LONGLONG _InterlockedAnd64 (LONGLONG volatile *Destination, LONGLONG Value) {
LONGLONG Old;
do {
Old = *Destination;
} while (_InterlockedCompareExchange64 (Destination, Old &Value, Old) != Old);
return Old;
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) LONGLONG _InterlockedOr64 (LONGLONG volatile *Destination, LONGLONG Value) {
LONGLONG Old;
do {
Old = *Destination;
} while (_InterlockedCompareExchange64 (Destination, Old | Value, Old) != Old);
return Old;
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) LONGLONG _InterlockedXor64 (LONGLONG volatile *Destination, LONGLONG Value) {
LONGLONG Old;
do {
Old = *Destination;
} while (_InterlockedCompareExchange64 (Destination, Old ^ Value, Old) != Old);
return Old;
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) LONGLONG _InterlockedIncrement64 (LONGLONG volatile *Addend) {
LONGLONG Old;
do {
Old = *Addend;
} while (_InterlockedCompareExchange64 (Addend, Old + 1, Old) != Old);
return Old + 1;
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) LONGLONG _InterlockedDecrement64 (LONGLONG volatile *Addend) {
LONGLONG Old;
do {
Old = *Addend;
} while (_InterlockedCompareExchange64 (Addend, Old - 1, Old) != Old);
return Old - 1;
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) LONGLONG _InterlockedExchange64 (LONGLONG volatile *Target, LONGLONG Value) {
LONGLONG Old;
do {
Old = *Target;
} while (_InterlockedCompareExchange64 (Target, Value, Old) != Old);
return Old;
}
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) LONGLONG _InterlockedExchangeAdd64 (LONGLONG volatile *Addend, LONGLONG Value) {
LONGLONG Old;
do {
Old = *Addend;
} while (_InterlockedCompareExchange64 (Addend, Old + Value, Old) != Old);
return Old;
}
__attribute__((dllimport)) HLOCAL __attribute__((__stdcall__)) LocalAlloc (UINT uFlags, SIZE_T uBytes);
__attribute__((dllimport)) HLOCAL __attribute__((__stdcall__)) LocalFree (HLOCAL hMem);
int __attribute__((__stdcall__)) WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd);
int __attribute__((__stdcall__)) wWinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nShowCmd);
__attribute__((dllimport)) HGLOBAL __attribute__((__stdcall__)) GlobalAlloc (UINT uFlags, SIZE_T dwBytes);
__attribute__((dllimport)) HGLOBAL __attribute__((__stdcall__)) GlobalReAlloc (HGLOBAL hMem, SIZE_T dwBytes, UINT uFlags);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) GlobalSize (HGLOBAL hMem);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GlobalFlags (HGLOBAL hMem);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) GlobalLock (HGLOBAL hMem);
__attribute__((dllimport)) HGLOBAL __attribute__((__stdcall__)) GlobalHandle (LPCVOID pMem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GlobalUnlock (HGLOBAL hMem);
__attribute__((dllimport)) HGLOBAL __attribute__((__stdcall__)) GlobalFree (HGLOBAL hMem);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) GlobalCompact (DWORD dwMinFree);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GlobalFix (HGLOBAL hMem);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GlobalUnfix (HGLOBAL hMem);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) GlobalWire (HGLOBAL hMem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GlobalUnWire (HGLOBAL hMem);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GlobalMemoryStatus (LPMEMORYSTATUS lpBuffer);
__attribute__((dllimport)) HLOCAL __attribute__((__stdcall__)) LocalReAlloc (HLOCAL hMem, SIZE_T uBytes, UINT uFlags);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) LocalLock (HLOCAL hMem);
__attribute__((dllimport)) HLOCAL __attribute__((__stdcall__)) LocalHandle (LPCVOID pMem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LocalUnlock (HLOCAL hMem);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) LocalSize (HLOCAL hMem);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) LocalFlags (HLOCAL hMem);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) LocalShrink (HLOCAL hMem, UINT cbNewSize);
__attribute__((dllimport)) SIZE_T __attribute__((__stdcall__)) LocalCompact (UINT uMinFree);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetBinaryTypeA (LPCSTR lpApplicationName, LPDWORD lpBinaryType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetBinaryTypeW (LPCWSTR lpApplicationName, LPDWORD lpBinaryType);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetShortPathNameA (LPCSTR lpszLongPath, LPSTR lpszShortPath, DWORD cchBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessAffinityMask (HANDLE hProcess, PDWORD_PTR lpProcessAffinityMask, PDWORD_PTR lpSystemAffinityMask);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetProcessAffinityMask (HANDLE hProcess, DWORD_PTR dwProcessAffinityMask);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessIoCounters (HANDLE hProcess, PIO_COUNTERS lpIoCounters);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessWorkingSetSize (HANDLE hProcess, PSIZE_T lpMinimumWorkingSetSize, PSIZE_T lpMaximumWorkingSetSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetProcessWorkingSetSize (HANDLE hProcess, SIZE_T dwMinimumWorkingSetSize, SIZE_T dwMaximumWorkingSetSize);
__attribute__((dllimport)) void __attribute__((__stdcall__)) FatalExit (int ExitCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetEnvironmentStringsA (LPCH NewEnvironment);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RaiseFailFastException (PEXCEPTION_RECORD pExceptionRecord, PCONTEXT pContextRecord, DWORD dwFlags);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetThreadIdealProcessor (HANDLE hThread, DWORD dwIdealProcessor);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) CreateFiber (SIZE_T dwStackSize, LPFIBER_START_ROUTINE lpStartAddress, LPVOID lpParameter);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) CreateFiberEx (SIZE_T dwStackCommitSize, SIZE_T dwStackReserveSize, DWORD dwFlags, LPFIBER_START_ROUTINE lpStartAddress, LPVOID lpParameter);
__attribute__((dllimport)) void __attribute__((__stdcall__)) DeleteFiber (LPVOID lpFiber);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) ConvertThreadToFiber (LPVOID lpParameter);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) ConvertThreadToFiberEx (LPVOID lpParameter, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ConvertFiberToThread (void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) SwitchToFiber (LPVOID lpFiber);
__attribute__((dllimport)) DWORD_PTR __attribute__((__stdcall__)) SetThreadAffinityMask (HANDLE hThread, DWORD_PTR dwThreadAffinityMask);
typedef enum _THREAD_INFORMATION_CLASS {
ThreadMemoryPriority,
ThreadAbsoluteCpuPriority,
ThreadInformationClassMax
} THREAD_INFORMATION_CLASS;
typedef enum _PROCESS_INFORMATION_CLASS {
ProcessMemoryPriority,
ProcessInformationClassMax
} PROCESS_INFORMATION_CLASS;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetProcessPriorityBoost (HANDLE hProcess, WINBOOL bDisablePriorityBoost);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessPriorityBoost (HANDLE hProcess, PBOOL pDisablePriorityBoost);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RequestWakeupLatency (LATENCY_TIME latency);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsSystemResumeAutomatic (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetThreadIOPendingFlag (HANDLE hThread, PBOOL lpIOIsPending);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetThreadSelectorEntry (HANDLE hThread, DWORD dwSelector, LPLDT_ENTRY lpSelectorEntry);
__attribute__((dllimport)) EXECUTION_STATE __attribute__((__stdcall__)) SetThreadExecutionState (EXECUTION_STATE esFlags);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetThreadErrorMode (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetThreadErrorMode (DWORD dwNewMode, LPDWORD lpOldMode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DebugSetProcessKillOnExit (WINBOOL KillOnExit);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DebugBreakProcess (HANDLE Process);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WaitForMultipleObjects (DWORD nCount, const HANDLE *lpHandles, WINBOOL bWaitAll, DWORD dwMilliseconds);
typedef enum _DEP_SYSTEM_POLICY_TYPE {
DEPPolicyAlwaysOff = 0,
DEPPolicyAlwaysOn,
DEPPolicyOptIn,
DEPPolicyOptOut,
DEPTotalPolicyCount
} DEP_SYSTEM_POLICY_TYPE;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PulseEvent (HANDLE hEvent);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) GlobalDeleteAtom (ATOM nAtom);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitAtomTable (DWORD nSize);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) DeleteAtom (ATOM nAtom);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) SetHandleCount (UINT uNumber);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RequestDeviceWakeup (HANDLE hDevice);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CancelDeviceWakeupRequest (HANDLE hDevice);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDevicePowerState (HANDLE hDevice, WINBOOL *pfOn);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMessageWaitingIndicator (HANDLE hMsgIndicator, ULONG ulMsgCount);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFileShortNameA (HANDLE hFile, LPCSTR lpShortName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFileShortNameW (HANDLE hFile, LPCWSTR lpShortName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) LoadModule (LPCSTR lpModuleName, LPVOID lpParameterBlock);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) WinExec (LPCSTR lpCmdLine, UINT uCmdShow);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ClearCommBreak (HANDLE hFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ClearCommError (HANDLE hFile, LPDWORD lpErrors, LPCOMSTAT lpStat);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetupComm (HANDLE hFile, DWORD dwInQueue, DWORD dwOutQueue);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EscapeCommFunction (HANDLE hFile, DWORD dwFunc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCommConfig (HANDLE hCommDev, LPCOMMCONFIG lpCC, LPDWORD lpdwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCommMask (HANDLE hFile, LPDWORD lpEvtMask);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCommProperties (HANDLE hFile, LPCOMMPROP lpCommProp);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCommModemStatus (HANDLE hFile, LPDWORD lpModemStat);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCommState (HANDLE hFile, LPDCB lpDCB);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCommTimeouts (HANDLE hFile, LPCOMMTIMEOUTS lpCommTimeouts);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PurgeComm (HANDLE hFile, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCommBreak (HANDLE hFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCommConfig (HANDLE hCommDev, LPCOMMCONFIG lpCC, DWORD dwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCommMask (HANDLE hFile, DWORD dwEvtMask);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCommState (HANDLE hFile, LPDCB lpDCB);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCommTimeouts (HANDLE hFile, LPCOMMTIMEOUTS lpCommTimeouts);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TransmitCommChar (HANDLE hFile, char cChar);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WaitCommEvent (HANDLE hFile, LPDWORD lpEvtMask, LPOVERLAPPED lpOverlapped);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetTapePosition (HANDLE hDevice, DWORD dwPositionMethod, DWORD dwPartition, DWORD dwOffsetLow, DWORD dwOffsetHigh, WINBOOL bImmediate);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTapePosition (HANDLE hDevice, DWORD dwPositionType, LPDWORD lpdwPartition, LPDWORD lpdwOffsetLow, LPDWORD lpdwOffsetHigh);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) PrepareTape (HANDLE hDevice, DWORD dwOperation, WINBOOL bImmediate);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) EraseTape (HANDLE hDevice, DWORD dwEraseType, WINBOOL bImmediate);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CreateTapePartition (HANDLE hDevice, DWORD dwPartitionMethod, DWORD dwCount, DWORD dwSize);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WriteTapemark (HANDLE hDevice, DWORD dwTapemarkType, DWORD dwTapemarkCount, WINBOOL bImmediate);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTapeStatus (HANDLE hDevice);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTapeParameters (HANDLE hDevice, DWORD dwOperation, LPDWORD lpdwSize, LPVOID lpTapeInformation);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetTapeParameters (HANDLE hDevice, DWORD dwOperation, LPVOID lpTapeInformation);
__attribute__((dllimport)) DEP_SYSTEM_POLICY_TYPE __attribute__((__stdcall__)) GetSystemDEPPolicy (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSystemRegistryQuota (PDWORD pdwQuotaAllowed, PDWORD pdwQuotaUsed);
WINBOOL __attribute__((__stdcall__)) GetSystemTimes (LPFILETIME lpIdleTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FileTimeToDosDateTime (const FILETIME *lpFileTime, LPWORD lpFatDate, LPWORD lpFatTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DosDateTimeToFileTime (WORD wFatDate, WORD wFatTime, LPFILETIME lpFileTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSystemTimeAdjustment (DWORD dwTimeAdjustment, WINBOOL bTimeAdjustmentDisabled);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MulDiv (int nNumber, int nNumerator, int nDenominator);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) FormatMessageA (DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPSTR lpBuffer, DWORD nSize, va_list *Arguments);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) FormatMessageW (DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPWSTR lpBuffer, DWORD nSize, va_list *Arguments);
typedef DWORD (__attribute__((__stdcall__)) *PFE_EXPORT_FUNC) (PBYTE pbData, PVOID pvCallbackContext, ULONG ulLength);
typedef DWORD (__attribute__((__stdcall__)) *PFE_IMPORT_FUNC) (PBYTE pbData, PVOID pvCallbackContext, PULONG ulLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNamedPipeInfo (HANDLE hNamedPipe, LPDWORD lpFlags, LPDWORD lpOutBufferSize, LPDWORD lpInBufferSize, LPDWORD lpMaxInstances);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateMailslotA (LPCSTR lpName, DWORD nMaxMessageSize, DWORD lReadTimeout, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateMailslotW (LPCWSTR lpName, DWORD nMaxMessageSize, DWORD lReadTimeout, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMailslotInfo (HANDLE hMailslot, LPDWORD lpMaxMessageSize, LPDWORD lpNextSize, LPDWORD lpMessageCount, LPDWORD lpReadTimeout);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMailslotInfo (HANDLE hMailslot, DWORD lReadTimeout);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EncryptFileA (LPCSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EncryptFileW (LPCWSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DecryptFileA (LPCSTR lpFileName, DWORD dwReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DecryptFileW (LPCWSTR lpFileName, DWORD dwReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FileEncryptionStatusA (LPCSTR lpFileName, LPDWORD lpStatus);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FileEncryptionStatusW (LPCWSTR lpFileName, LPDWORD lpStatus);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) OpenEncryptedFileRawA (LPCSTR lpFileName, ULONG ulFlags, PVOID *pvContext);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) OpenEncryptedFileRawW (LPCWSTR lpFileName, ULONG ulFlags, PVOID *pvContext);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) ReadEncryptedFileRaw (PFE_EXPORT_FUNC pfExportCallback, PVOID pvCallbackContext, PVOID pvContext);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WriteEncryptedFileRaw (PFE_IMPORT_FUNC pfImportCallback, PVOID pvCallbackContext, PVOID pvContext);
__attribute__((dllimport)) void __attribute__((__stdcall__)) CloseEncryptedFileRaw (PVOID pvContext);
__attribute__((dllimport)) int __attribute__((__stdcall__)) lstrcmpA (LPCSTR lpString1, LPCSTR lpString2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) lstrcmpW (LPCWSTR lpString1, LPCWSTR lpString2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) lstrcmpiA (LPCSTR lpString1, LPCSTR lpString2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) lstrcmpiW (LPCWSTR lpString1, LPCWSTR lpString2);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) lstrcpynA (LPSTR lpString1, LPCSTR lpString2, int iMaxLength);
__attribute__((dllimport)) LPWSTR __attribute__((__stdcall__)) lstrcpynW (LPWSTR lpString1, LPCWSTR lpString2, int iMaxLength);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) lstrcpyA (LPSTR lpString1, LPCSTR lpString2);
__attribute__((dllimport)) LPWSTR __attribute__((__stdcall__)) lstrcpyW (LPWSTR lpString1, LPCWSTR lpString2);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) lstrcatA (LPSTR lpString1, LPCSTR lpString2);
__attribute__((dllimport)) LPWSTR __attribute__((__stdcall__)) lstrcatW (LPWSTR lpString1, LPCWSTR lpString2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) lstrlenA (LPCSTR lpString);
__attribute__((dllimport)) int __attribute__((__stdcall__)) lstrlenW (LPCWSTR lpString);
__attribute__((dllimport)) HFILE __attribute__((__stdcall__)) OpenFile (LPCSTR lpFileName, LPOFSTRUCT lpReOpenBuff, UINT uStyle);
__attribute__((dllimport)) HFILE __attribute__((__stdcall__)) _lopen (LPCSTR lpPathName, int iReadWrite);
__attribute__((dllimport)) HFILE __attribute__((__stdcall__)) _lcreat (LPCSTR lpPathName, int iAttribute);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) _lread (HFILE hFile, LPVOID lpBuffer, UINT uBytes);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) _lwrite (HFILE hFile, LPCCH lpBuffer, UINT uBytes);
__attribute__((dllimport)) long __attribute__((__stdcall__)) _hread (HFILE hFile, LPVOID lpBuffer, long lBytes);
__attribute__((dllimport)) long __attribute__((__stdcall__)) _hwrite (HFILE hFile, LPCCH lpBuffer, long lBytes);
__attribute__((dllimport)) HFILE __attribute__((__stdcall__)) _lclose (HFILE hFile);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) _llseek (HFILE hFile, LONG lOffset, int iOrigin);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsTextUnicode (const void *lpv, int iSize, LPINT lpiResult);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SignalObjectAndWait (HANDLE hObjectToSignal, HANDLE hObjectToWaitOn, DWORD dwMilliseconds, WINBOOL bAlertable);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BackupRead (HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, WINBOOL bAbort, WINBOOL bProcessSecurity, LPVOID *lpContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BackupSeek (HANDLE hFile, DWORD dwLowBytesToSeek, DWORD dwHighBytesToSeek, LPDWORD lpdwLowByteSeeked, LPDWORD lpdwHighByteSeeked, LPVOID *lpContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BackupWrite (HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten, WINBOOL bAbort, WINBOOL bProcessSecurity, LPVOID *lpContext);
typedef struct _WIN32_STREAM_ID {
DWORD dwStreamId;
DWORD dwStreamAttributes;
LARGE_INTEGER Size;
DWORD dwStreamNameSize;
WCHAR cStreamName[1];
} WIN32_STREAM_ID,*LPWIN32_STREAM_ID;
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateSemaphoreW (LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCWSTR lpName);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) LoadLibraryW (LPCWSTR lpLibFileName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenMutexA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateSemaphoreA (LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenSemaphoreA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateWaitableTimerA (LPSECURITY_ATTRIBUTES lpTimerAttributes, WINBOOL bManualReset, LPCSTR lpTimerName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateWaitableTimerW (LPSECURITY_ATTRIBUTES lpTimerAttributes, WINBOOL bManualReset, LPCWSTR lpTimerName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenWaitableTimerA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpTimerName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateFileMappingA (HANDLE hFile, LPSECURITY_ATTRIBUTES lpFileMappingAttributes, DWORD flProtect, DWORD dwMaximumSizeHigh, DWORD dwMaximumSizeLow, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenFileMappingA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetLogicalDriveStringsA (DWORD nBufferLength, LPSTR lpBuffer);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) LoadLibraryA (LPCSTR lpLibFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessShutdownParameters (LPDWORD lpdwLevel, LPDWORD lpdwFlags);
__attribute__((dllimport)) void __attribute__((__stdcall__)) FatalAppExitA (UINT uAction, LPCSTR lpMessageText);
__attribute__((dllimport)) void __attribute__((__stdcall__)) FatalAppExitW (UINT uAction, LPCWSTR lpMessageText);
__attribute__((dllimport)) void __attribute__((__stdcall__)) GetStartupInfoA (LPSTARTUPINFOA lpStartupInfo);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFirmwareEnvironmentVariableA (LPCSTR lpName, LPCSTR lpGuid, PVOID pBuffer, DWORD nSize);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFirmwareEnvironmentVariableW (LPCWSTR lpName, LPCWSTR lpGuid, PVOID pBuffer, DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFirmwareEnvironmentVariableA (LPCSTR lpName, LPCSTR lpGuid, PVOID pValue, DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFirmwareEnvironmentVariableW (LPCWSTR lpName, LPCWSTR lpGuid, PVOID pValue, DWORD nSize);
__attribute__((dllimport)) HRSRC __attribute__((__stdcall__)) FindResourceA (HMODULE hModule, LPCSTR lpName, LPCSTR lpType);
__attribute__((dllimport)) HRSRC __attribute__((__stdcall__)) FindResourceW (HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
__attribute__((dllimport)) HRSRC __attribute__((__stdcall__)) FindResourceExA (HMODULE hModule, LPCSTR lpType, LPCSTR lpName, WORD wLanguage);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceTypesA (HMODULE hModule, ENUMRESTYPEPROCA lpEnumFunc, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceTypesW (HMODULE hModule, ENUMRESTYPEPROCW lpEnumFunc, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceNamesA (HMODULE hModule, LPCSTR lpType, ENUMRESNAMEPROCA lpEnumFunc, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceNamesW (HMODULE hModule, LPCWSTR lpType, ENUMRESNAMEPROCW lpEnumFunc, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceLanguagesA (HMODULE hModule, LPCSTR lpType, LPCSTR lpName, ENUMRESLANGPROCA lpEnumFunc, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumResourceLanguagesW (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, ENUMRESLANGPROCW lpEnumFunc, LONG_PTR lParam);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) BeginUpdateResourceA (LPCSTR pFileName, WINBOOL bDeleteExistingResources);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) BeginUpdateResourceW (LPCWSTR pFileName, WINBOOL bDeleteExistingResources);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UpdateResourceA (HANDLE hUpdate, LPCSTR lpType, LPCSTR lpName, WORD wLanguage, LPVOID lpData, DWORD cb);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UpdateResourceW (HANDLE hUpdate, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage, LPVOID lpData, DWORD cb);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EndUpdateResourceA (HANDLE hUpdate, WINBOOL fDiscard);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EndUpdateResourceW (HANDLE hUpdate, WINBOOL fDiscard);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) GlobalAddAtomA (LPCSTR lpString);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) GlobalAddAtomW (LPCWSTR lpString);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) GlobalAddAtomExA (LPCSTR lpString, DWORD Flags);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) GlobalAddAtomExW (LPCWSTR lpString, DWORD Flags);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) GlobalFindAtomA (LPCSTR lpString);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) GlobalFindAtomW (LPCWSTR lpString);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GlobalGetAtomNameA (ATOM nAtom, LPSTR lpBuffer, int nSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GlobalGetAtomNameW (ATOM nAtom, LPWSTR lpBuffer, int nSize);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) AddAtomA (LPCSTR lpString);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) AddAtomW (LPCWSTR lpString);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) FindAtomA (LPCSTR lpString);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) FindAtomW (LPCWSTR lpString);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetAtomNameA (ATOM nAtom, LPSTR lpBuffer, int nSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetAtomNameW (ATOM nAtom, LPWSTR lpBuffer, int nSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetProfileIntA (LPCSTR lpAppName, LPCSTR lpKeyName, INT nDefault);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetProfileIntW (LPCWSTR lpAppName, LPCWSTR lpKeyName, INT nDefault);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetProfileStringA (LPCSTR lpAppName, LPCSTR lpKeyName, LPCSTR lpDefault, LPSTR lpReturnedString, DWORD nSize);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetProfileStringW (LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpDefault, LPWSTR lpReturnedString, DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteProfileStringA (LPCSTR lpAppName, LPCSTR lpKeyName, LPCSTR lpString);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteProfileStringW (LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpString);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetProfileSectionA (LPCSTR lpAppName, LPSTR lpReturnedString, DWORD nSize);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetProfileSectionW (LPCWSTR lpAppName, LPWSTR lpReturnedString, DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteProfileSectionA (LPCSTR lpAppName, LPCSTR lpString);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteProfileSectionW (LPCWSTR lpAppName, LPCWSTR lpString);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetPrivateProfileIntA (LPCSTR lpAppName, LPCSTR lpKeyName, INT nDefault, LPCSTR lpFileName);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetPrivateProfileIntW (LPCWSTR lpAppName, LPCWSTR lpKeyName, INT nDefault, LPCWSTR lpFileName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetPrivateProfileStringA (LPCSTR lpAppName, LPCSTR lpKeyName, LPCSTR lpDefault, LPSTR lpReturnedString, DWORD nSize, LPCSTR lpFileName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetPrivateProfileStringW (LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpDefault, LPWSTR lpReturnedString, DWORD nSize, LPCWSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WritePrivateProfileStringA (LPCSTR lpAppName, LPCSTR lpKeyName, LPCSTR lpString, LPCSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WritePrivateProfileStringW (LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpString, LPCWSTR lpFileName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetPrivateProfileSectionA (LPCSTR lpAppName, LPSTR lpReturnedString, DWORD nSize, LPCSTR lpFileName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetPrivateProfileSectionW (LPCWSTR lpAppName, LPWSTR lpReturnedString, DWORD nSize, LPCWSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WritePrivateProfileSectionA (LPCSTR lpAppName, LPCSTR lpString, LPCSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WritePrivateProfileSectionW (LPCWSTR lpAppName, LPCWSTR lpString, LPCWSTR lpFileName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetPrivateProfileSectionNamesA (LPSTR lpszReturnBuffer, DWORD nSize, LPCSTR lpFileName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetPrivateProfileSectionNamesW (LPWSTR lpszReturnBuffer, DWORD nSize, LPCWSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetPrivateProfileStructA (LPCSTR lpszSection, LPCSTR lpszKey, LPVOID lpStruct, UINT uSizeStruct, LPCSTR szFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetPrivateProfileStructW (LPCWSTR lpszSection, LPCWSTR lpszKey, LPVOID lpStruct, UINT uSizeStruct, LPCWSTR szFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WritePrivateProfileStructA (LPCSTR lpszSection, LPCSTR lpszKey, LPVOID lpStruct, UINT uSizeStruct, LPCSTR szFile);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WritePrivateProfileStructW (LPCWSTR lpszSection, LPCWSTR lpszKey, LPVOID lpStruct, UINT uSizeStruct, LPCWSTR szFile);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemWow64DirectoryA (LPSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemWow64DirectoryW (LPWSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) BOOLEAN __attribute__((__stdcall__)) Wow64EnableWow64FsRedirection (BOOLEAN Wow64FsEnableRedirection);
typedef UINT (__attribute__((__stdcall__)) *PGET_SYSTEM_WOW64_DIRECTORY_A) (LPSTR lpBuffer, UINT uSize);
typedef UINT (__attribute__((__stdcall__)) *PGET_SYSTEM_WOW64_DIRECTORY_W) (LPWSTR lpBuffer, UINT uSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDllDirectoryA (LPCSTR lpPathName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDllDirectoryW (LPCWSTR lpPathName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetDllDirectoryA (DWORD nBufferLength, LPSTR lpBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetDllDirectoryW (DWORD nBufferLength, LPWSTR lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSearchPathMode (DWORD Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateDirectoryExA (LPCSTR lpTemplateDirectory, LPCSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateDirectoryExW (LPCWSTR lpTemplateDirectory, LPCWSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DefineDosDeviceA (DWORD dwFlags, LPCSTR lpDeviceName, LPCSTR lpTargetPath);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) QueryDosDeviceA (LPCSTR lpDeviceName, LPSTR lpTargetPath, DWORD ucchMax);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) ReOpenFile (HANDLE hOriginalFile, DWORD dwDesiredAccess, DWORD dwShareMode, DWORD dwFlagsAndAttributes);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCompressedFileSizeA (LPCSTR lpFileName, LPDWORD lpFileSizeHigh);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCompressedFileSizeW (LPCWSTR lpFileName, LPDWORD lpFileSizeHigh);
typedef DWORD (__attribute__((__stdcall__)) *LPPROGRESS_ROUTINE) (LARGE_INTEGER TotalFileSize, LARGE_INTEGER TotalBytesTransferred, LARGE_INTEGER StreamSize, LARGE_INTEGER StreamBytesTransferred, DWORD dwStreamNumber, DWORD dwCallbackReason, HANDLE hSourceFile, HANDLE hDestinationFile, LPVOID lpData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CopyFileExA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL pbCancel, DWORD dwCopyFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CopyFileExW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL pbCancel, DWORD dwCopyFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CheckNameLegalDOS8Dot3A (LPCSTR lpName, LPSTR lpOemName, DWORD OemNameSize, PBOOL pbNameContainsSpaces, PBOOL pbNameLegal);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CheckNameLegalDOS8Dot3W (LPCWSTR lpName, LPSTR lpOemName, DWORD OemNameSize, PBOOL pbNameContainsSpaces, PBOOL pbNameLegal);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CopyFileA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName, WINBOOL bFailIfExists);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CopyFileW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, WINBOOL bFailIfExists);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MoveFileA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MoveFileW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MoveFileExA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MoveFileExW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MoveFileWithProgressA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MoveFileWithProgressW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNamedPipeClientComputerNameA (HANDLE Pipe, LPSTR ClientComputerName, ULONG ClientComputerNameLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNamedPipeHandleStateA (HANDLE hNamedPipe, LPDWORD lpState, LPDWORD lpCurInstances, LPDWORD lpMaxCollectionCount, LPDWORD lpCollectDataTimeout, LPSTR lpUserName, DWORD nMaxUserNameSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WaitNamedPipeA (LPCSTR lpNamedPipeName, DWORD nTimeOut);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CallNamedPipeA (LPCSTR lpNamedPipeName, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesRead, DWORD nTimeOut);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CallNamedPipeW (LPCWSTR lpNamedPipeName, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesRead, DWORD nTimeOut);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateNamedPipeA (LPCSTR lpName, DWORD dwOpenMode, DWORD dwPipeMode, DWORD nMaxInstances, DWORD nOutBufferSize, DWORD nInBufferSize, DWORD nDefaultTimeOut, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReplaceFileA (LPCSTR lpReplacedFileName, LPCSTR lpReplacementFileName, LPCSTR lpBackupFileName, DWORD dwReplaceFlags, LPVOID lpExclude, LPVOID lpReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReplaceFileW (LPCWSTR lpReplacedFileName, LPCWSTR lpReplacementFileName, LPCWSTR lpBackupFileName, DWORD dwReplaceFlags, LPVOID lpExclude, LPVOID lpReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateHardLinkA (LPCSTR lpFileName, LPCSTR lpExistingFileName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateHardLinkW (LPCWSTR lpFileName, LPCWSTR lpExistingFileName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
typedef enum _STREAM_INFO_LEVELS {
FindStreamInfoStandard,
FindStreamInfoMaxInfoLevel
} STREAM_INFO_LEVELS;
typedef struct _WIN32_FIND_STREAM_DATA {
LARGE_INTEGER StreamSize;
WCHAR cStreamName[260 + 36];
} WIN32_FIND_STREAM_DATA,*PWIN32_FIND_STREAM_DATA;
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstStreamW (LPCWSTR lpFileName, STREAM_INFO_LEVELS InfoLevel, LPVOID lpFindStreamData, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextStreamW (HANDLE hFindStream, LPVOID lpFindStreamData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNamedPipeHandleStateW (HANDLE hNamedPipe, LPDWORD lpState, LPDWORD lpCurInstances, LPDWORD lpMaxCollectionCount, LPDWORD lpCollectDataTimeout, LPWSTR lpUserName, DWORD nMaxUserNameSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetVolumeLabelA (LPCSTR lpRootPathName, LPCSTR lpVolumeName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetVolumeLabelW (LPCWSTR lpRootPathName, LPCWSTR lpVolumeName);
__attribute__((dllimport)) void __attribute__((__stdcall__)) SetFileApisToOEM (void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) SetFileApisToANSI (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AreFileApisANSI (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVolumeInformationA (LPCSTR lpRootPathName, LPSTR lpVolumeNameBuffer, DWORD nVolumeNameSize, LPDWORD lpVolumeSerialNumber, LPDWORD lpMaximumComponentLength, LPDWORD lpFileSystemFlags, LPSTR lpFileSystemNameBuffer, DWORD nFileSystemNameSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ClearEventLogA (HANDLE hEventLog, LPCSTR lpBackupFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ClearEventLogW (HANDLE hEventLog, LPCWSTR lpBackupFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BackupEventLogA (HANDLE hEventLog, LPCSTR lpBackupFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BackupEventLogW (HANDLE hEventLog, LPCWSTR lpBackupFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CloseEventLog (HANDLE hEventLog);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeregisterEventSource (HANDLE hEventLog);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) NotifyChangeEventLog (HANDLE hEventLog, HANDLE hEvent);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNumberOfEventLogRecords (HANDLE hEventLog, PDWORD NumberOfRecords);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetOldestEventLogRecord (HANDLE hEventLog, PDWORD OldestRecord);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenEventLogA (LPCSTR lpUNCServerName, LPCSTR lpSourceName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenEventLogW (LPCWSTR lpUNCServerName, LPCWSTR lpSourceName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) RegisterEventSourceA (LPCSTR lpUNCServerName, LPCSTR lpSourceName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) RegisterEventSourceW (LPCWSTR lpUNCServerName, LPCWSTR lpSourceName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenBackupEventLogA (LPCSTR lpUNCServerName, LPCSTR lpFileName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenBackupEventLogW (LPCWSTR lpUNCServerName, LPCWSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadEventLogA (HANDLE hEventLog, DWORD dwReadFlags, DWORD dwRecordOffset, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, DWORD *pnBytesRead, DWORD *pnMinNumberOfBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadEventLogW (HANDLE hEventLog, DWORD dwReadFlags, DWORD dwRecordOffset, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, DWORD *pnBytesRead, DWORD *pnMinNumberOfBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReportEventA (HANDLE hEventLog, WORD wType, WORD wCategory, DWORD dwEventID, PSID lpUserSid, WORD wNumStrings, DWORD dwDataSize, LPCSTR *lpStrings, LPVOID lpRawData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReportEventW (HANDLE hEventLog, WORD wType, WORD wCategory, DWORD dwEventID, PSID lpUserSid, WORD wNumStrings, DWORD dwDataSize, LPCWSTR *lpStrings, LPVOID lpRawData);
typedef struct _EVENTLOG_FULL_INFORMATION {
DWORD dwFull;
} EVENTLOG_FULL_INFORMATION,*LPEVENTLOG_FULL_INFORMATION;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetEventLogInformation (HANDLE hEventLog, DWORD dwInfoLevel, LPVOID lpBuffer, DWORD cbBufSize, LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadDirectoryChangesW (HANDLE hDirectory, LPVOID lpBuffer, DWORD nBufferLength, WINBOOL bWatchSubtree, DWORD dwNotifyFilter, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckAndAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, LPSTR ObjectTypeName, LPSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckByTypeAndAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, LPCSTR ObjectTypeName, LPCSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckByTypeResultListAndAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, LPCSTR ObjectTypeName, LPCSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPDWORD AccessStatusList, LPBOOL pfGenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AccessCheckByTypeResultListAndAuditAlarmByHandleA (LPCSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, LPCSTR ObjectTypeName, LPCSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPDWORD AccessStatusList, LPBOOL pfGenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ObjectOpenAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, LPSTR ObjectTypeName, LPSTR ObjectName, PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, DWORD GrantedAccess, PPRIVILEGE_SET Privileges, WINBOOL ObjectCreation, WINBOOL AccessGranted, LPBOOL GenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ObjectPrivilegeAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, DWORD DesiredAccess, PPRIVILEGE_SET Privileges, WINBOOL AccessGranted);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ObjectCloseAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, WINBOOL GenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ObjectDeleteAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, WINBOOL GenerateOnClose);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PrivilegedServiceAuditAlarmA (LPCSTR SubsystemName, LPCSTR ServiceName, HANDLE ClientToken, PPRIVILEGE_SET Privileges, WINBOOL AccessGranted);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetFileSecurityA (LPCSTR lpFileName, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetFileSecurityA (LPCSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsBadReadPtr (const void *lp, UINT_PTR ucb);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsBadWritePtr (LPVOID lp, UINT_PTR ucb);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsBadHugeReadPtr (const void *lp, UINT_PTR ucb);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsBadHugeWritePtr (LPVOID lp, UINT_PTR ucb);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsBadCodePtr (FARPROC lpfn);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsBadStringPtrA (LPCSTR lpsz, UINT_PTR ucchMax);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsBadStringPtrW (LPCWSTR lpsz, UINT_PTR ucchMax);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupAccountSidA (LPCSTR lpSystemName, PSID Sid, LPSTR Name, LPDWORD cchName, LPSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupAccountSidW (LPCWSTR lpSystemName, PSID Sid, LPWSTR Name, LPDWORD cchName, LPWSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupAccountNameA (LPCSTR lpSystemName, LPCSTR lpAccountName, PSID Sid, LPDWORD cbSid, LPSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupAccountNameW (LPCWSTR lpSystemName, LPCWSTR lpAccountName, PSID Sid, LPDWORD cbSid, LPWSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupPrivilegeValueA (LPCSTR lpSystemName, LPCSTR lpName, PLUID lpLuid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupPrivilegeValueW (LPCWSTR lpSystemName, LPCWSTR lpName, PLUID lpLuid);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupPrivilegeNameA (LPCSTR lpSystemName, PLUID lpLuid, LPSTR lpName, LPDWORD cchName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupPrivilegeNameW (LPCWSTR lpSystemName, PLUID lpLuid, LPWSTR lpName, LPDWORD cchName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupPrivilegeDisplayNameA (LPCSTR lpSystemName, LPCSTR lpName, LPSTR lpDisplayName, LPDWORD cchDisplayName, LPDWORD lpLanguageId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LookupPrivilegeDisplayNameW (LPCWSTR lpSystemName, LPCWSTR lpName, LPWSTR lpDisplayName, LPDWORD cchDisplayName, LPDWORD lpLanguageId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BuildCommDCBA (LPCSTR lpDef, LPDCB lpDCB);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BuildCommDCBW (LPCWSTR lpDef, LPDCB lpDCB);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BuildCommDCBAndTimeoutsA (LPCSTR lpDef, LPDCB lpDCB, LPCOMMTIMEOUTS lpCommTimeouts);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BuildCommDCBAndTimeoutsW (LPCWSTR lpDef, LPDCB lpDCB, LPCOMMTIMEOUTS lpCommTimeouts);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CommConfigDialogA (LPCSTR lpszName, HWND hWnd, LPCOMMCONFIG lpCC);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CommConfigDialogW (LPCWSTR lpszName, HWND hWnd, LPCOMMCONFIG lpCC);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDefaultCommConfigA (LPCSTR lpszName, LPCOMMCONFIG lpCC, LPDWORD lpdwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDefaultCommConfigW (LPCWSTR lpszName, LPCOMMCONFIG lpCC, LPDWORD lpdwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDefaultCommConfigA (LPCSTR lpszName, LPCOMMCONFIG lpCC, DWORD dwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDefaultCommConfigW (LPCWSTR lpszName, LPCOMMCONFIG lpCC, DWORD dwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetComputerNameA (LPSTR lpBuffer, LPDWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetComputerNameW (LPWSTR lpBuffer, LPDWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetComputerNameA (LPCSTR lpComputerName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetComputerNameW (LPCWSTR lpComputerName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetComputerNameExA (COMPUTER_NAME_FORMAT NameType, LPCTSTR lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DnsHostnameToComputerNameA (LPCSTR Hostname, LPSTR ComputerName, LPDWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DnsHostnameToComputerNameW (LPCWSTR Hostname, LPWSTR ComputerName, LPDWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUserNameA (LPSTR lpBuffer, LPDWORD pcbBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUserNameW (LPWSTR lpBuffer, LPDWORD pcbBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LogonUserA (LPCSTR lpszUsername, LPCSTR lpszDomain, LPCSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LogonUserW (LPCWSTR lpszUsername, LPCWSTR lpszDomain, LPCWSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LogonUserExA (LPCSTR lpszUsername, LPCSTR lpszDomain, LPCSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken, PSID *ppLogonSid, PVOID *ppProfileBuffer, LPDWORD pdwProfileLength, PQUOTA_LIMITS pQuotaLimits);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LogonUserExW (LPCWSTR lpszUsername, LPCWSTR lpszDomain, LPCWSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken, PSID *ppLogonSid, PVOID *ppProfileBuffer, LPDWORD pdwProfileLength, PQUOTA_LIMITS pQuotaLimits);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateProcessAsUserA (HANDLE hToken, LPCSTR lpApplicationName, LPSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, WINBOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCSTR lpCurrentDirectory, LPSTARTUPINFOA lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateProcessWithLogonW (LPCWSTR lpUsername, LPCWSTR lpDomain, LPCWSTR lpPassword, DWORD dwLogonFlags, LPCWSTR lpApplicationName, LPWSTR lpCommandLine, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateProcessWithTokenW (HANDLE hToken, DWORD dwLogonFlags, LPCWSTR lpApplicationName, LPWSTR lpCommandLine, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsTokenUntrusted (HANDLE TokenHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RegisterWaitForSingleObject (PHANDLE phNewWaitObject, HANDLE hObject, WAITORTIMERCALLBACK Callback, PVOID Context, ULONG dwMilliseconds, ULONG dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnregisterWait (HANDLE WaitHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BindIoCompletionCallback (HANDLE FileHandle, LPOVERLAPPED_COMPLETION_ROUTINE Function, ULONG Flags);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) SetTimerQueueTimer (HANDLE TimerQueue, WAITORTIMERCALLBACK Callback, PVOID Parameter, DWORD DueTime, DWORD Period, WINBOOL PreferIo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CancelTimerQueueTimer (HANDLE TimerQueue, HANDLE Timer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteTimerQueue (HANDLE TimerQueue);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreatePrivateNamespaceA (LPSECURITY_ATTRIBUTES lpPrivateNamespaceAttributes, LPVOID lpBoundaryDescriptor, LPCSTR lpAliasPrefix);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenPrivateNamespaceA (LPVOID lpBoundaryDescriptor, LPCSTR lpAliasPrefix);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateBoundaryDescriptorA (LPCSTR Name, ULONG Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddIntegrityLabelToBoundaryDescriptor (HANDLE *BoundaryDescriptor, PSID IntegrityLabel);
typedef struct tagHW_PROFILE_INFOA {
DWORD dwDockInfo;
CHAR szHwProfileGuid[39];
CHAR szHwProfileName[80];
} HW_PROFILE_INFOA,*LPHW_PROFILE_INFOA;
typedef struct tagHW_PROFILE_INFOW {
DWORD dwDockInfo;
WCHAR szHwProfileGuid[39];
WCHAR szHwProfileName[80];
} HW_PROFILE_INFOW,*LPHW_PROFILE_INFOW;
typedef HW_PROFILE_INFOA HW_PROFILE_INFO;
typedef LPHW_PROFILE_INFOA LPHW_PROFILE_INFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCurrentHwProfileA (LPHW_PROFILE_INFOA lpHwProfileInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCurrentHwProfileW (LPHW_PROFILE_INFOW lpHwProfileInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) VerifyVersionInfoA (LPOSVERSIONINFOEXA lpVersionInformation, DWORD dwTypeMask, DWORDLONG dwlConditionMask);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) VerifyVersionInfoW (LPOSVERSIONINFOEXW lpVersionInformation, DWORD dwTypeMask, DWORDLONG dwlConditionMask);
typedef struct _TIME_ZONE_INFORMATION {
LONG Bias;
WCHAR StandardName[32];
SYSTEMTIME StandardDate;
LONG StandardBias;
WCHAR DaylightName[32];
SYSTEMTIME DaylightDate;
LONG DaylightBias;
} TIME_ZONE_INFORMATION,*PTIME_ZONE_INFORMATION,*LPTIME_ZONE_INFORMATION;
typedef struct _TIME_DYNAMIC_ZONE_INFORMATION {
LONG Bias;
WCHAR StandardName[32];
SYSTEMTIME StandardDate;
LONG StandardBias;
WCHAR DaylightName[32];
SYSTEMTIME DaylightDate;
LONG DaylightBias;
WCHAR TimeZoneKeyName[128];
BOOLEAN DynamicDaylightTimeDisabled;
} DYNAMIC_TIME_ZONE_INFORMATION,*PDYNAMIC_TIME_ZONE_INFORMATION;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SystemTimeToTzSpecificLocalTime (const TIME_ZONE_INFORMATION *lpTimeZoneInformation, const SYSTEMTIME *lpUniversalTime, LPSYSTEMTIME lpLocalTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TzSpecificLocalTimeToSystemTime (const TIME_ZONE_INFORMATION *lpTimeZoneInformation, const SYSTEMTIME *lpLocalTime, LPSYSTEMTIME lpUniversalTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FileTimeToSystemTime (const FILETIME *lpFileTime, LPSYSTEMTIME lpSystemTime);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SystemTimeToFileTime (const SYSTEMTIME *lpSystemTime, LPFILETIME lpFileTime);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTimeZoneInformation (LPTIME_ZONE_INFORMATION lpTimeZoneInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetTimeZoneInformation (const TIME_ZONE_INFORMATION *lpTimeZoneInformation);
typedef struct _SYSTEM_POWER_STATUS {
BYTE ACLineStatus;
BYTE BatteryFlag;
BYTE BatteryLifePercent;
BYTE Reserved1;
DWORD BatteryLifeTime;
DWORD BatteryFullLifeTime;
} SYSTEM_POWER_STATUS,*LPSYSTEM_POWER_STATUS;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSystemPowerStatus (LPSYSTEM_POWER_STATUS lpSystemPowerStatus);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSystemPowerState (WINBOOL fSuspend, WINBOOL fForce);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AllocateUserPhysicalPages (HANDLE hProcess, PULONG_PTR NumberOfPages, PULONG_PTR PageArray);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FreeUserPhysicalPages (HANDLE hProcess, PULONG_PTR NumberOfPages, PULONG_PTR PageArray);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MapUserPhysicalPages (PVOID VirtualAddress, ULONG_PTR NumberOfPages, PULONG_PTR PageArray);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MapUserPhysicalPagesScatter (PVOID *VirtualAddresses, ULONG_PTR NumberOfPages, PULONG_PTR PageArray);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateJobObjectA (LPSECURITY_ATTRIBUTES lpJobAttributes, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateJobObjectW (LPSECURITY_ATTRIBUTES lpJobAttributes, LPCWSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenJobObjectA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OpenJobObjectW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AssignProcessToJobObject (HANDLE hJob, HANDLE hProcess);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TerminateJobObject (HANDLE hJob, UINT uExitCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryInformationJobObject (HANDLE hJob, JOBOBJECTINFOCLASS JobObjectInformationClass, LPVOID lpJobObjectInformation, DWORD cbJobObjectInformationLength, LPDWORD lpReturnLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetInformationJobObject (HANDLE hJob, JOBOBJECTINFOCLASS JobObjectInformationClass, LPVOID lpJobObjectInformation, DWORD cbJobObjectInformationLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateJobSet (ULONG NumJob, PJOB_SET_ARRAY UserJobSet, ULONG Flags);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstVolumeA (LPSTR lpszVolumeName, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextVolumeA (HANDLE hFindVolume, LPSTR lpszVolumeName, DWORD cchBufferLength);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstVolumeMountPointA (LPCSTR lpszRootPathName, LPSTR lpszVolumeMountPoint, DWORD cchBufferLength);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstVolumeMountPointW (LPCWSTR lpszRootPathName, LPWSTR lpszVolumeMountPoint, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextVolumeMountPointA (HANDLE hFindVolumeMountPoint, LPSTR lpszVolumeMountPoint, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextVolumeMountPointW (HANDLE hFindVolumeMountPoint, LPWSTR lpszVolumeMountPoint, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindVolumeMountPointClose (HANDLE hFindVolumeMountPoint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetVolumeMountPointA (LPCSTR lpszVolumeMountPoint, LPCSTR lpszVolumeName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetVolumeMountPointW (LPCWSTR lpszVolumeMountPoint, LPCWSTR lpszVolumeName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteVolumeMountPointA (LPCSTR lpszVolumeMountPoint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVolumeNameForVolumeMountPointA (LPCSTR lpszVolumeMountPoint, LPSTR lpszVolumeName, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVolumePathNameA (LPCSTR lpszFileName, LPSTR lpszVolumePathName, DWORD cchBufferLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetVolumePathNamesForVolumeNameA (LPCSTR lpszVolumeName, LPCH lpszVolumePathNames, DWORD cchBufferLength, PDWORD lpcchReturnLength);
typedef struct tagACTCTXA {
ULONG cbSize;
DWORD dwFlags;
LPCSTR lpSource;
USHORT wProcessorArchitecture;
LANGID wLangId;
LPCSTR lpAssemblyDirectory;
LPCSTR lpResourceName;
LPCSTR lpApplicationName;
HMODULE hModule;
} ACTCTXA,*PACTCTXA;
typedef struct tagACTCTXW {
ULONG cbSize;
DWORD dwFlags;
LPCWSTR lpSource;
USHORT wProcessorArchitecture;
LANGID wLangId;
LPCWSTR lpAssemblyDirectory;
LPCWSTR lpResourceName;
LPCWSTR lpApplicationName;
HMODULE hModule;
} ACTCTXW,*PACTCTXW;
typedef ACTCTXA ACTCTX;
typedef PACTCTXA PACTCTX;
typedef const ACTCTXA *PCACTCTXA;
typedef const ACTCTXW *PCACTCTXW;
typedef PCACTCTXA PCACTCTX;
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateActCtxA (PCACTCTXA pActCtx);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateActCtxW (PCACTCTXW pActCtx);
__attribute__((dllimport)) void __attribute__((__stdcall__)) AddRefActCtx (HANDLE hActCtx);
__attribute__((dllimport)) void __attribute__((__stdcall__)) ReleaseActCtx (HANDLE hActCtx);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ZombifyActCtx (HANDLE hActCtx);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ActivateActCtx (HANDLE hActCtx, ULONG_PTR *lpCookie);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeactivateActCtx (DWORD dwFlags, ULONG_PTR ulCookie);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCurrentActCtx (HANDLE *lphActCtx);
typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 {
ULONG cbSize;
ULONG ulDataFormatVersion;
PVOID lpData;
ULONG ulLength;
PVOID lpSectionGlobalData;
ULONG ulSectionGlobalDataLength;
PVOID lpSectionBase;
ULONG ulSectionTotalLength;
HANDLE hActCtx;
ULONG ulAssemblyRosterIndex;
} ACTCTX_SECTION_KEYED_DATA_2600,*PACTCTX_SECTION_KEYED_DATA_2600;
typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600;
typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA {
PVOID lpInformation;
PVOID lpSectionBase;
ULONG ulSectionLength;
PVOID lpSectionGlobalDataBase;
ULONG ulSectionGlobalDataLength;
} ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA,*PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
typedef struct tagACTCTX_SECTION_KEYED_DATA {
ULONG cbSize;
ULONG ulDataFormatVersion;
PVOID lpData;
ULONG ulLength;
PVOID lpSectionGlobalData;
ULONG ulSectionGlobalDataLength;
PVOID lpSectionBase;
ULONG ulSectionTotalLength;
HANDLE hActCtx;
ULONG ulAssemblyRosterIndex;
ULONG ulFlags;
ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
} ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA;
typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindActCtxSectionStringA (DWORD dwFlags, const GUID *lpExtensionGuid, ULONG ulSectionId, LPCSTR lpStringToFind, PACTCTX_SECTION_KEYED_DATA ReturnedData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindActCtxSectionStringW (DWORD dwFlags, const GUID *lpExtensionGuid, ULONG ulSectionId, LPCWSTR lpStringToFind, PACTCTX_SECTION_KEYED_DATA ReturnedData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindActCtxSectionGuid (DWORD dwFlags, const GUID *lpExtensionGuid, ULONG ulSectionId, const GUID *lpGuidToFind, PACTCTX_SECTION_KEYED_DATA ReturnedData);
typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION {
HANDLE hActCtx;
DWORD dwFlags;
} ACTIVATION_CONTEXT_BASIC_INFORMATION,*PACTIVATION_CONTEXT_BASIC_INFORMATION;
typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryActCtxW (DWORD dwFlags, HANDLE hActCtx, PVOID pvSubInstance, ULONG ulInfoClass, PVOID pvBuffer, SIZE_T cbBuffer, SIZE_T *pcbWrittenOrRequired);
typedef WINBOOL (__attribute__((__stdcall__)) *PQUERYACTCTXW_FUNC) (DWORD dwFlags, HANDLE hActCtx, PVOID pvSubInstance, ULONG ulInfoClass, PVOID pvBuffer, SIZE_T cbBuffer, SIZE_T *pcbWrittenOrRequired);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WTSGetActiveConsoleSessionId (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNumaProcessorNode (UCHAR Processor, PUCHAR NodeNumber);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNumaNodeProcessorMask (UCHAR Node, PULONGLONG ProcessorMask);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNumaAvailableMemoryNode (UCHAR Node, PULONGLONG AvailableBytes);
typedef DWORD (__attribute__((__stdcall__)) *APPLICATION_RECOVERY_CALLBACK) (PVOID pvParameter);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CopyContext (PCONTEXT Destination, DWORD ContextFlags, PCONTEXT Source);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitializeContext (PVOID Buffer, DWORD ContextFlags, PCONTEXT *Context, PDWORD ContextLength);
__attribute__((dllimport)) DWORD64 __attribute__((__stdcall__)) GetEnabledXStateFeatures (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetXStateFeaturesMask (PCONTEXT Context, PDWORD64 FeatureMask);
__attribute__((dllimport)) PVOID __attribute__((__stdcall__)) LocateXStateFeature (PCONTEXT Context, DWORD FeatureId, PDWORD Length);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetXStateFeaturesMask (PCONTEXT Context, DWORD64 FeatureMask);
typedef struct _DRAWPATRECT {
POINT ptPosition;
POINT ptSize;
WORD wStyle;
WORD wPattern;
} DRAWPATRECT,*PDRAWPATRECT;
typedef struct _PSINJECTDATA {
DWORD DataBytes;
WORD InjectionPoint;
WORD PageNumber;
} PSINJECTDATA,*PPSINJECTDATA;
typedef struct _PSFEATURE_OUTPUT {
WINBOOL bPageIndependent;
WINBOOL bSetPageDevice;
} PSFEATURE_OUTPUT,*PPSFEATURE_OUTPUT;
typedef struct _PSFEATURE_CUSTPAPER {
LONG lOrientation;
LONG lWidth;
LONG lHeight;
LONG lWidthOffset;
LONG lHeightOffset;
} PSFEATURE_CUSTPAPER,*PPSFEATURE_CUSTPAPER;
typedef struct tagXFORM {
FLOAT eM11;
FLOAT eM12;
FLOAT eM21;
FLOAT eM22;
FLOAT eDx;
FLOAT eDy;
} XFORM,*PXFORM,*LPXFORM;
typedef struct tagBITMAP {
LONG bmType;
LONG bmWidth;
LONG bmHeight;
LONG bmWidthBytes;
WORD bmPlanes;
WORD bmBitsPixel;
LPVOID bmBits;
} BITMAP,*PBITMAP,*NPBITMAP,*LPBITMAP;
#pragma pack(push,1)
typedef struct tagRGBTRIPLE {
BYTE rgbtBlue;
BYTE rgbtGreen;
BYTE rgbtRed;
} RGBTRIPLE;
#pragma pack(pop)
typedef struct tagRGBQUAD {
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
BYTE rgbReserved;
} RGBQUAD;
typedef RGBQUAD *LPRGBQUAD;
typedef LONG LCSCSTYPE;
typedef LONG LCSGAMUTMATCH;
typedef long FXPT16DOT16,*LPFXPT16DOT16;
typedef long FXPT2DOT30,*LPFXPT2DOT30;
typedef struct tagCIEXYZ {
FXPT2DOT30 ciexyzX;
FXPT2DOT30 ciexyzY;
FXPT2DOT30 ciexyzZ;
} CIEXYZ;
typedef CIEXYZ *LPCIEXYZ;
typedef struct tagICEXYZTRIPLE {
CIEXYZ ciexyzRed;
CIEXYZ ciexyzGreen;
CIEXYZ ciexyzBlue;
} CIEXYZTRIPLE;
typedef CIEXYZTRIPLE *LPCIEXYZTRIPLE;
typedef struct tagLOGCOLORSPACEA {
DWORD lcsSignature;
DWORD lcsVersion;
DWORD lcsSize;
LCSCSTYPE lcsCSType;
LCSGAMUTMATCH lcsIntent;
CIEXYZTRIPLE lcsEndpoints;
DWORD lcsGammaRed;
DWORD lcsGammaGreen;
DWORD lcsGammaBlue;
CHAR lcsFilename[260];
} LOGCOLORSPACEA,*LPLOGCOLORSPACEA;
typedef struct tagLOGCOLORSPACEW {
DWORD lcsSignature;
DWORD lcsVersion;
DWORD lcsSize;
LCSCSTYPE lcsCSType;
LCSGAMUTMATCH lcsIntent;
CIEXYZTRIPLE lcsEndpoints;
DWORD lcsGammaRed;
DWORD lcsGammaGreen;
DWORD lcsGammaBlue;
WCHAR lcsFilename[260];
} LOGCOLORSPACEW,*LPLOGCOLORSPACEW;
typedef LOGCOLORSPACEA LOGCOLORSPACE;
typedef LPLOGCOLORSPACEA LPLOGCOLORSPACE;
typedef struct tagBITMAPCOREHEADER {
DWORD bcSize;
WORD bcWidth;
WORD bcHeight;
WORD bcPlanes;
WORD bcBitCount;
} BITMAPCOREHEADER,*LPBITMAPCOREHEADER,*PBITMAPCOREHEADER;
typedef struct tagBITMAPINFOHEADER {
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD biPlanes;
WORD biBitCount;
DWORD biCompression;
DWORD biSizeImage;
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
} BITMAPINFOHEADER,*LPBITMAPINFOHEADER,*PBITMAPINFOHEADER;
typedef struct {
DWORD bV4Size;
LONG bV4Width;
LONG bV4Height;
WORD bV4Planes;
WORD bV4BitCount;
DWORD bV4V4Compression;
DWORD bV4SizeImage;
LONG bV4XPelsPerMeter;
LONG bV4YPelsPerMeter;
DWORD bV4ClrUsed;
DWORD bV4ClrImportant;
DWORD bV4RedMask;
DWORD bV4GreenMask;
DWORD bV4BlueMask;
DWORD bV4AlphaMask;
DWORD bV4CSType;
CIEXYZTRIPLE bV4Endpoints;
DWORD bV4GammaRed;
DWORD bV4GammaGreen;
DWORD bV4GammaBlue;
} BITMAPV4HEADER,*LPBITMAPV4HEADER,*PBITMAPV4HEADER;
typedef struct {
DWORD bV5Size;
LONG bV5Width;
LONG bV5Height;
WORD bV5Planes;
WORD bV5BitCount;
DWORD bV5Compression;
DWORD bV5SizeImage;
LONG bV5XPelsPerMeter;
LONG bV5YPelsPerMeter;
DWORD bV5ClrUsed;
DWORD bV5ClrImportant;
DWORD bV5RedMask;
DWORD bV5GreenMask;
DWORD bV5BlueMask;
DWORD bV5AlphaMask;
DWORD bV5CSType;
CIEXYZTRIPLE bV5Endpoints;
DWORD bV5GammaRed;
DWORD bV5GammaGreen;
DWORD bV5GammaBlue;
DWORD bV5Intent;
DWORD bV5ProfileData;
DWORD bV5ProfileSize;
DWORD bV5Reserved;
} BITMAPV5HEADER,*LPBITMAPV5HEADER,*PBITMAPV5HEADER;
typedef struct tagBITMAPINFO {
BITMAPINFOHEADER bmiHeader;
RGBQUAD bmiColors[1];
} BITMAPINFO,*LPBITMAPINFO,*PBITMAPINFO;
typedef struct tagBITMAPCOREINFO {
BITMAPCOREHEADER bmciHeader;
RGBTRIPLE bmciColors[1];
} BITMAPCOREINFO,*LPBITMAPCOREINFO,*PBITMAPCOREINFO;
#pragma pack(push,2)
typedef struct tagBITMAPFILEHEADER {
WORD bfType;
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;
} BITMAPFILEHEADER,*LPBITMAPFILEHEADER,*PBITMAPFILEHEADER;
#pragma pack(pop)
typedef struct tagFONTSIGNATURE {
DWORD fsUsb[4];
DWORD fsCsb[2];
} FONTSIGNATURE,*PFONTSIGNATURE,*LPFONTSIGNATURE;
typedef struct tagCHARSETINFO {
UINT ciCharset;
UINT ciACP;
FONTSIGNATURE fs;
} CHARSETINFO,*PCHARSETINFO,*NPCHARSETINFO,*LPCHARSETINFO;
typedef struct tagLOCALESIGNATURE {
DWORD lsUsb[4];
DWORD lsCsbDefault[2];
DWORD lsCsbSupported[2];
} LOCALESIGNATURE,*PLOCALESIGNATURE,*LPLOCALESIGNATURE;
typedef struct tagHANDLETABLE {
HGDIOBJ objectHandle[1];
} HANDLETABLE,*PHANDLETABLE,*LPHANDLETABLE;
typedef struct tagMETARECORD {
DWORD rdSize;
WORD rdFunction;
WORD rdParm[1];
} METARECORD;
typedef struct tagMETARECORD *PMETARECORD;
typedef struct tagMETARECORD *LPMETARECORD;
typedef struct tagMETAFILEPICT {
LONG mm;
LONG xExt;
LONG yExt;
HMETAFILE hMF;
} METAFILEPICT,*LPMETAFILEPICT;
#pragma pack(push,2)
typedef struct tagMETAHEADER {
WORD mtType;
WORD mtHeaderSize;
WORD mtVersion;
DWORD mtSize;
WORD mtNoObjects;
DWORD mtMaxRecord;
WORD mtNoParameters;
} METAHEADER;
typedef struct tagMETAHEADER *PMETAHEADER;
typedef struct tagMETAHEADER *LPMETAHEADER;
#pragma pack(pop)
typedef struct tagENHMETARECORD {
DWORD iType;
DWORD nSize;
DWORD dParm[1];
} ENHMETARECORD,*PENHMETARECORD,*LPENHMETARECORD;
typedef struct tagENHMETAHEADER {
DWORD iType;
DWORD nSize;
RECTL rclBounds;
RECTL rclFrame;
DWORD dSignature;
DWORD nVersion;
DWORD nBytes;
DWORD nRecords;
WORD nHandles;
WORD sReserved;
DWORD nDescription;
DWORD offDescription;
DWORD nPalEntries;
SIZEL szlDevice;
SIZEL szlMillimeters;
DWORD cbPixelFormat;
DWORD offPixelFormat;
DWORD bOpenGL;
SIZEL szlMicrometers;
} ENHMETAHEADER,*PENHMETAHEADER,*LPENHMETAHEADER;
typedef BYTE BCHAR;
#pragma pack(push,4)
typedef struct tagTEXTMETRICA {
LONG tmHeight;
LONG tmAscent;
LONG tmDescent;
LONG tmInternalLeading;
LONG tmExternalLeading;
LONG tmAveCharWidth;
LONG tmMaxCharWidth;
LONG tmWeight;
LONG tmOverhang;
LONG tmDigitizedAspectX;
LONG tmDigitizedAspectY;
BYTE tmFirstChar;
BYTE tmLastChar;
BYTE tmDefaultChar;
BYTE tmBreakChar;
BYTE tmItalic;
BYTE tmUnderlined;
BYTE tmStruckOut;
BYTE tmPitchAndFamily;
BYTE tmCharSet;
} TEXTMETRICA,*PTEXTMETRICA,*NPTEXTMETRICA,*LPTEXTMETRICA;
typedef struct tagTEXTMETRICW {
LONG tmHeight;
LONG tmAscent;
LONG tmDescent;
LONG tmInternalLeading;
LONG tmExternalLeading;
LONG tmAveCharWidth;
LONG tmMaxCharWidth;
LONG tmWeight;
LONG tmOverhang;
LONG tmDigitizedAspectX;
LONG tmDigitizedAspectY;
WCHAR tmFirstChar;
WCHAR tmLastChar;
WCHAR tmDefaultChar;
WCHAR tmBreakChar;
BYTE tmItalic;
BYTE tmUnderlined;
BYTE tmStruckOut;
BYTE tmPitchAndFamily;
BYTE tmCharSet;
} TEXTMETRICW,*PTEXTMETRICW,*NPTEXTMETRICW,*LPTEXTMETRICW;
typedef TEXTMETRICA TEXTMETRIC;
typedef PTEXTMETRICA PTEXTMETRIC;
typedef NPTEXTMETRICA NPTEXTMETRIC;
typedef LPTEXTMETRICA LPTEXTMETRIC;
#pragma pack(pop)
#pragma pack(push,4)
typedef struct tagNEWTEXTMETRICA {
LONG tmHeight;
LONG tmAscent;
LONG tmDescent;
LONG tmInternalLeading;
LONG tmExternalLeading;
LONG tmAveCharWidth;
LONG tmMaxCharWidth;
LONG tmWeight;
LONG tmOverhang;
LONG tmDigitizedAspectX;
LONG tmDigitizedAspectY;
BYTE tmFirstChar;
BYTE tmLastChar;
BYTE tmDefaultChar;
BYTE tmBreakChar;
BYTE tmItalic;
BYTE tmUnderlined;
BYTE tmStruckOut;
BYTE tmPitchAndFamily;
BYTE tmCharSet;
DWORD ntmFlags;
UINT ntmSizeEM;
UINT ntmCellHeight;
UINT ntmAvgWidth;
} NEWTEXTMETRICA,*PNEWTEXTMETRICA,*NPNEWTEXTMETRICA,*LPNEWTEXTMETRICA;
typedef struct tagNEWTEXTMETRICW {
LONG tmHeight;
LONG tmAscent;
LONG tmDescent;
LONG tmInternalLeading;
LONG tmExternalLeading;
LONG tmAveCharWidth;
LONG tmMaxCharWidth;
LONG tmWeight;
LONG tmOverhang;
LONG tmDigitizedAspectX;
LONG tmDigitizedAspectY;
WCHAR tmFirstChar;
WCHAR tmLastChar;
WCHAR tmDefaultChar;
WCHAR tmBreakChar;
BYTE tmItalic;
BYTE tmUnderlined;
BYTE tmStruckOut;
BYTE tmPitchAndFamily;
BYTE tmCharSet;
DWORD ntmFlags;
UINT ntmSizeEM;
UINT ntmCellHeight;
UINT ntmAvgWidth;
} NEWTEXTMETRICW,*PNEWTEXTMETRICW,*NPNEWTEXTMETRICW,*LPNEWTEXTMETRICW;
typedef NEWTEXTMETRICA NEWTEXTMETRIC;
typedef PNEWTEXTMETRICA PNEWTEXTMETRIC;
typedef NPNEWTEXTMETRICA NPNEWTEXTMETRIC;
typedef LPNEWTEXTMETRICA LPNEWTEXTMETRIC;
#pragma pack(pop)
typedef struct tagNEWTEXTMETRICEXA {
NEWTEXTMETRICA ntmTm;
FONTSIGNATURE ntmFontSig;
} NEWTEXTMETRICEXA;
typedef struct tagNEWTEXTMETRICEXW {
NEWTEXTMETRICW ntmTm;
FONTSIGNATURE ntmFontSig;
} NEWTEXTMETRICEXW;
typedef NEWTEXTMETRICEXA NEWTEXTMETRICEX;
typedef struct tagPELARRAY {
LONG paXCount;
LONG paYCount;
LONG paXExt;
LONG paYExt;
BYTE paRGBs;
} PELARRAY,*PPELARRAY,*NPPELARRAY,*LPPELARRAY;
typedef struct tagLOGBRUSH {
UINT lbStyle;
COLORREF lbColor;
ULONG_PTR lbHatch;
} LOGBRUSH,*PLOGBRUSH,*NPLOGBRUSH,*LPLOGBRUSH;
typedef struct tagLOGBRUSH32 {
UINT lbStyle;
COLORREF lbColor;
ULONG lbHatch;
} LOGBRUSH32,*PLOGBRUSH32,*NPLOGBRUSH32,*LPLOGBRUSH32;
typedef LOGBRUSH PATTERN;
typedef PATTERN *PPATTERN;
typedef PATTERN *NPPATTERN;
typedef PATTERN *LPPATTERN;
typedef struct tagLOGPEN {
UINT lopnStyle;
POINT lopnWidth;
COLORREF lopnColor;
} LOGPEN,*PLOGPEN,*NPLOGPEN,*LPLOGPEN;
typedef struct tagEXTLOGPEN {
DWORD elpPenStyle;
DWORD elpWidth;
UINT elpBrushStyle;
COLORREF elpColor;
ULONG_PTR elpHatch;
DWORD elpNumEntries;
DWORD elpStyleEntry[1];
} EXTLOGPEN,*PEXTLOGPEN,*NPEXTLOGPEN,*LPEXTLOGPEN;
typedef struct tagEXTLOGPEN32 {
DWORD elpPenStyle;
DWORD elpWidth;
UINT elpBrushStyle;
COLORREF elpColor;
ULONG elpHatch;
DWORD elpNumEntries;
DWORD elpStyleEntry[1];
} EXTLOGPEN32, *PEXTLOGPEN32, *NPEXTLOGPEN32, *LPEXTLOGPEN32;
typedef struct tagPALETTEENTRY {
BYTE peRed;
BYTE peGreen;
BYTE peBlue;
BYTE peFlags;
} PALETTEENTRY,*PPALETTEENTRY,*LPPALETTEENTRY;
typedef struct tagLOGPALETTE {
WORD palVersion;
WORD palNumEntries;
PALETTEENTRY palPalEntry[1];
} LOGPALETTE,*PLOGPALETTE,*NPLOGPALETTE,*LPLOGPALETTE;
typedef struct tagLOGFONTA {
LONG lfHeight;
LONG lfWidth;
LONG lfEscapement;
LONG lfOrientation;
LONG lfWeight;
BYTE lfItalic;
BYTE lfUnderline;
BYTE lfStrikeOut;
BYTE lfCharSet;
BYTE lfOutPrecision;
BYTE lfClipPrecision;
BYTE lfQuality;
BYTE lfPitchAndFamily;
CHAR lfFaceName[32];
} LOGFONTA,*PLOGFONTA,*NPLOGFONTA,*LPLOGFONTA;
typedef struct tagLOGFONTW {
LONG lfHeight;
LONG lfWidth;
LONG lfEscapement;
LONG lfOrientation;
LONG lfWeight;
BYTE lfItalic;
BYTE lfUnderline;
BYTE lfStrikeOut;
BYTE lfCharSet;
BYTE lfOutPrecision;
BYTE lfClipPrecision;
BYTE lfQuality;
BYTE lfPitchAndFamily;
WCHAR lfFaceName[32];
} LOGFONTW,*PLOGFONTW,*NPLOGFONTW,*LPLOGFONTW;
typedef LOGFONTA LOGFONT;
typedef PLOGFONTA PLOGFONT;
typedef NPLOGFONTA NPLOGFONT;
typedef LPLOGFONTA LPLOGFONT;
typedef struct tagENUMLOGFONTA {
LOGFONTA elfLogFont;
BYTE elfFullName[64];
BYTE elfStyle[32];
} ENUMLOGFONTA,*LPENUMLOGFONTA;
typedef struct tagENUMLOGFONTW {
LOGFONTW elfLogFont;
WCHAR elfFullName[64];
WCHAR elfStyle[32];
} ENUMLOGFONTW,*LPENUMLOGFONTW;
typedef ENUMLOGFONTA ENUMLOGFONT;
typedef LPENUMLOGFONTA LPENUMLOGFONT;
typedef struct tagENUMLOGFONTEXA {
LOGFONTA elfLogFont;
BYTE elfFullName[64];
BYTE elfStyle[32];
BYTE elfScript[32];
} ENUMLOGFONTEXA,*LPENUMLOGFONTEXA;
typedef struct tagENUMLOGFONTEXW {
LOGFONTW elfLogFont;
WCHAR elfFullName[64];
WCHAR elfStyle[32];
WCHAR elfScript[32];
} ENUMLOGFONTEXW,*LPENUMLOGFONTEXW;
typedef ENUMLOGFONTEXA ENUMLOGFONTEX;
typedef LPENUMLOGFONTEXA LPENUMLOGFONTEX;
typedef struct tagPANOSE {
BYTE bFamilyType;
BYTE bSerifStyle;
BYTE bWeight;
BYTE bProportion;
BYTE bContrast;
BYTE bStrokeVariation;
BYTE bArmStyle;
BYTE bLetterform;
BYTE bMidline;
BYTE bXHeight;
} PANOSE,*LPPANOSE;
typedef struct tagEXTLOGFONTA {
LOGFONTA elfLogFont;
BYTE elfFullName[64];
BYTE elfStyle[32];
DWORD elfVersion;
DWORD elfStyleSize;
DWORD elfMatch;
DWORD elfReserved;
BYTE elfVendorId[4];
DWORD elfCulture;
PANOSE elfPanose;
} EXTLOGFONTA,*PEXTLOGFONTA,*NPEXTLOGFONTA,*LPEXTLOGFONTA;
typedef struct tagEXTLOGFONTW {
LOGFONTW elfLogFont;
WCHAR elfFullName[64];
WCHAR elfStyle[32];
DWORD elfVersion;
DWORD elfStyleSize;
DWORD elfMatch;
DWORD elfReserved;
BYTE elfVendorId[4];
DWORD elfCulture;
PANOSE elfPanose;
} EXTLOGFONTW,*PEXTLOGFONTW,*NPEXTLOGFONTW,*LPEXTLOGFONTW;
typedef EXTLOGFONTA EXTLOGFONT;
typedef PEXTLOGFONTA PEXTLOGFONT;
typedef NPEXTLOGFONTA NPEXTLOGFONT;
typedef LPEXTLOGFONTA LPEXTLOGFONT;
typedef struct _devicemodeA {
BYTE dmDeviceName[32];
WORD dmSpecVersion;
WORD dmDriverVersion;
WORD dmSize;
WORD dmDriverExtra;
DWORD dmFields;
__extension__ union {
__extension__ struct {
short dmOrientation;
short dmPaperSize;
short dmPaperLength;
short dmPaperWidth;
short dmScale;
short dmCopies;
short dmDefaultSource;
short dmPrintQuality;
};
struct {
POINTL dmPosition;
DWORD dmDisplayOrientation;
DWORD dmDisplayFixedOutput;
};
};
short dmColor;
short dmDuplex;
short dmYResolution;
short dmTTOption;
short dmCollate;
BYTE dmFormName[32];
WORD dmLogPixels;
DWORD dmBitsPerPel;
DWORD dmPelsWidth;
DWORD dmPelsHeight;
__extension__ union {
DWORD dmDisplayFlags;
DWORD dmNup;
};
DWORD dmDisplayFrequency;
DWORD dmICMMethod;
DWORD dmICMIntent;
DWORD dmMediaType;
DWORD dmDitherType;
DWORD dmReserved1;
DWORD dmReserved2;
DWORD dmPanningWidth;
DWORD dmPanningHeight;
} DEVMODEA,*PDEVMODEA,*NPDEVMODEA,*LPDEVMODEA;
typedef struct _devicemodeW {
WCHAR dmDeviceName[32];
WORD dmSpecVersion;
WORD dmDriverVersion;
WORD dmSize;
WORD dmDriverExtra;
DWORD dmFields;
__extension__ union {
__extension__ struct {
short dmOrientation;
short dmPaperSize;
short dmPaperLength;
short dmPaperWidth;
short dmScale;
short dmCopies;
short dmDefaultSource;
short dmPrintQuality;
};
__extension__ struct {
POINTL dmPosition;
DWORD dmDisplayOrientation;
DWORD dmDisplayFixedOutput;
};
};
short dmColor;
short dmDuplex;
short dmYResolution;
short dmTTOption;
short dmCollate;
WCHAR dmFormName[32];
WORD dmLogPixels;
DWORD dmBitsPerPel;
DWORD dmPelsWidth;
DWORD dmPelsHeight;
__extension__ union {
DWORD dmDisplayFlags;
DWORD dmNup;
};
DWORD dmDisplayFrequency;
DWORD dmICMMethod;
DWORD dmICMIntent;
DWORD dmMediaType;
DWORD dmDitherType;
DWORD dmReserved1;
DWORD dmReserved2;
DWORD dmPanningWidth;
DWORD dmPanningHeight;
} DEVMODEW,*PDEVMODEW,*NPDEVMODEW,*LPDEVMODEW;
typedef DEVMODEA DEVMODE;
typedef PDEVMODEA PDEVMODE;
typedef NPDEVMODEA NPDEVMODE;
typedef LPDEVMODEA LPDEVMODE;
typedef struct _DISPLAY_DEVICEA {
DWORD cb;
CHAR DeviceName[32];
CHAR DeviceString[128];
DWORD StateFlags;
CHAR DeviceID[128];
CHAR DeviceKey[128];
} DISPLAY_DEVICEA,*PDISPLAY_DEVICEA,*LPDISPLAY_DEVICEA;
typedef struct _DISPLAY_DEVICEW {
DWORD cb;
WCHAR DeviceName[32];
WCHAR DeviceString[128];
DWORD StateFlags;
WCHAR DeviceID[128];
WCHAR DeviceKey[128];
} DISPLAY_DEVICEW,*PDISPLAY_DEVICEW,*LPDISPLAY_DEVICEW;
typedef DISPLAY_DEVICEA DISPLAY_DEVICE;
typedef PDISPLAY_DEVICEA PDISPLAY_DEVICE;
typedef LPDISPLAY_DEVICEA LPDISPLAY_DEVICE;
typedef struct _RGNDATAHEADER {
DWORD dwSize;
DWORD iType;
DWORD nCount;
DWORD nRgnSize;
RECT rcBound;
} RGNDATAHEADER,*PRGNDATAHEADER;
typedef struct _RGNDATA {
RGNDATAHEADER rdh;
char Buffer[1];
} RGNDATA,*PRGNDATA,*NPRGNDATA,*LPRGNDATA;
typedef struct _ABC {
int abcA;
UINT abcB;
int abcC;
} ABC,*PABC,*NPABC,*LPABC;
typedef struct _ABCFLOAT {
FLOAT abcfA;
FLOAT abcfB;
FLOAT abcfC;
} ABCFLOAT,*PABCFLOAT,*NPABCFLOAT,*LPABCFLOAT;
typedef struct _OUTLINETEXTMETRICA {
UINT otmSize;
TEXTMETRICA otmTextMetrics;
BYTE otmFiller;
PANOSE otmPanoseNumber;
UINT otmfsSelection;
UINT otmfsType;
int otmsCharSlopeRise;
int otmsCharSlopeRun;
int otmItalicAngle;
UINT otmEMSquare;
int otmAscent;
int otmDescent;
UINT otmLineGap;
UINT otmsCapEmHeight;
UINT otmsXHeight;
RECT otmrcFontBox;
int otmMacAscent;
int otmMacDescent;
UINT otmMacLineGap;
UINT otmusMinimumPPEM;
POINT otmptSubscriptSize;
POINT otmptSubscriptOffset;
POINT otmptSuperscriptSize;
POINT otmptSuperscriptOffset;
UINT otmsStrikeoutSize;
int otmsStrikeoutPosition;
int otmsUnderscoreSize;
int otmsUnderscorePosition;
PSTR otmpFamilyName;
PSTR otmpFaceName;
PSTR otmpStyleName;
PSTR otmpFullName;
} OUTLINETEXTMETRICA,*POUTLINETEXTMETRICA,*NPOUTLINETEXTMETRICA,*LPOUTLINETEXTMETRICA;
typedef struct _OUTLINETEXTMETRICW {
UINT otmSize;
TEXTMETRICW otmTextMetrics;
BYTE otmFiller;
PANOSE otmPanoseNumber;
UINT otmfsSelection;
UINT otmfsType;
int otmsCharSlopeRise;
int otmsCharSlopeRun;
int otmItalicAngle;
UINT otmEMSquare;
int otmAscent;
int otmDescent;
UINT otmLineGap;
UINT otmsCapEmHeight;
UINT otmsXHeight;
RECT otmrcFontBox;
int otmMacAscent;
int otmMacDescent;
UINT otmMacLineGap;
UINT otmusMinimumPPEM;
POINT otmptSubscriptSize;
POINT otmptSubscriptOffset;
POINT otmptSuperscriptSize;
POINT otmptSuperscriptOffset;
UINT otmsStrikeoutSize;
int otmsStrikeoutPosition;
int otmsUnderscoreSize;
int otmsUnderscorePosition;
PSTR otmpFamilyName;
PSTR otmpFaceName;
PSTR otmpStyleName;
PSTR otmpFullName;
} OUTLINETEXTMETRICW,*POUTLINETEXTMETRICW,*NPOUTLINETEXTMETRICW,*LPOUTLINETEXTMETRICW;
typedef OUTLINETEXTMETRICA OUTLINETEXTMETRIC;
typedef POUTLINETEXTMETRICA POUTLINETEXTMETRIC;
typedef NPOUTLINETEXTMETRICA NPOUTLINETEXTMETRIC;
typedef LPOUTLINETEXTMETRICA LPOUTLINETEXTMETRIC;
typedef struct tagPOLYTEXTA {
int x;
int y;
UINT n;
LPCSTR lpstr;
UINT uiFlags;
RECT rcl;
int *pdx;
} POLYTEXTA,*PPOLYTEXTA,*NPPOLYTEXTA,*LPPOLYTEXTA;
typedef struct tagPOLYTEXTW {
int x;
int y;
UINT n;
LPCWSTR lpstr;
UINT uiFlags;
RECT rcl;
int *pdx;
} POLYTEXTW,*PPOLYTEXTW,*NPPOLYTEXTW,*LPPOLYTEXTW;
typedef POLYTEXTA POLYTEXT;
typedef PPOLYTEXTA PPOLYTEXT;
typedef NPPOLYTEXTA NPPOLYTEXT;
typedef LPPOLYTEXTA LPPOLYTEXT;
typedef struct _FIXED {
WORD fract;
short value;
} FIXED;
typedef struct _MAT2 {
FIXED eM11;
FIXED eM12;
FIXED eM21;
FIXED eM22;
} MAT2,*LPMAT2;
typedef struct _GLYPHMETRICS {
UINT gmBlackBoxX;
UINT gmBlackBoxY;
POINT gmptGlyphOrigin;
short gmCellIncX;
short gmCellIncY;
} GLYPHMETRICS,*LPGLYPHMETRICS;
typedef struct tagPOINTFX {
FIXED x;
FIXED y;
} POINTFX,*LPPOINTFX;
typedef struct tagTTPOLYCURVE {
WORD wType;
WORD cpfx;
POINTFX apfx[1];
} TTPOLYCURVE,*LPTTPOLYCURVE;
typedef struct tagTTPOLYGONHEADER {
DWORD cb;
DWORD dwType;
POINTFX pfxStart;
} TTPOLYGONHEADER,*LPTTPOLYGONHEADER;
typedef struct tagGCP_RESULTSA {
DWORD lStructSize;
LPSTR lpOutString;
UINT *lpOrder;
int *lpDx;
int *lpCaretPos;
LPSTR lpClass;
LPWSTR lpGlyphs;
UINT nGlyphs;
int nMaxFit;
} GCP_RESULTSA,*LPGCP_RESULTSA;
typedef struct tagGCP_RESULTSW {
DWORD lStructSize;
LPWSTR lpOutString;
UINT *lpOrder;
int *lpDx;
int *lpCaretPos;
LPSTR lpClass;
LPWSTR lpGlyphs;
UINT nGlyphs;
int nMaxFit;
} GCP_RESULTSW,*LPGCP_RESULTSW;
typedef GCP_RESULTSA GCP_RESULTS;
typedef LPGCP_RESULTSA LPGCP_RESULTS;
typedef struct _RASTERIZER_STATUS {
short nSize;
short wFlags;
short nLanguageID;
} RASTERIZER_STATUS,*LPRASTERIZER_STATUS;
typedef struct tagPIXELFORMATDESCRIPTOR {
WORD nSize;
WORD nVersion;
DWORD dwFlags;
BYTE iPixelType;
BYTE cColorBits;
BYTE cRedBits;
BYTE cRedShift;
BYTE cGreenBits;
BYTE cGreenShift;
BYTE cBlueBits;
BYTE cBlueShift;
BYTE cAlphaBits;
BYTE cAlphaShift;
BYTE cAccumBits;
BYTE cAccumRedBits;
BYTE cAccumGreenBits;
BYTE cAccumBlueBits;
BYTE cAccumAlphaBits;
BYTE cDepthBits;
BYTE cStencilBits;
BYTE cAuxBuffers;
BYTE iLayerType;
BYTE bReserved;
DWORD dwLayerMask;
DWORD dwVisibleMask;
DWORD dwDamageMask;
} PIXELFORMATDESCRIPTOR,*PPIXELFORMATDESCRIPTOR,*LPPIXELFORMATDESCRIPTOR;
typedef int (__attribute__((__stdcall__)) *OLDFONTENUMPROCA)(const LOGFONTA *,const TEXTMETRICA *,DWORD,LPARAM);
typedef int (__attribute__((__stdcall__)) *OLDFONTENUMPROCW)(const LOGFONTW *,const TEXTMETRICW *,DWORD,LPARAM);
typedef OLDFONTENUMPROCA FONTENUMPROCA;
typedef OLDFONTENUMPROCW FONTENUMPROCW;
typedef FONTENUMPROCA FONTENUMPROC;
typedef int (__attribute__((__stdcall__)) *GOBJENUMPROC)(LPVOID,LPARAM);
typedef void (__attribute__((__stdcall__)) *LINEDDAPROC)(int,int,LPARAM);
__attribute__((dllimport)) int __attribute__((__stdcall__)) AddFontResourceA(LPCSTR);
__attribute__((dllimport)) int __attribute__((__stdcall__)) AddFontResourceW(LPCWSTR);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AnimatePalette(HPALETTE hPal,UINT iStartIndex,UINT cEntries,const PALETTEENTRY *ppe);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Arc(HDC hdc,int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BitBlt(HDC hdc,int x,int y,int cx,int cy,HDC hdcSrc,int x1,int y1,DWORD rop);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CancelDC(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Chord(HDC hdc,int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ChoosePixelFormat(HDC hdc,const PIXELFORMATDESCRIPTOR *ppfd);
__attribute__((dllimport)) HMETAFILE __attribute__((__stdcall__)) CloseMetaFile(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) CombineRgn(HRGN hrgnDst,HRGN hrgnSrc1,HRGN hrgnSrc2,int iMode);
__attribute__((dllimport)) HMETAFILE __attribute__((__stdcall__)) CopyMetaFileA(HMETAFILE,LPCSTR);
__attribute__((dllimport)) HMETAFILE __attribute__((__stdcall__)) CopyMetaFileW(HMETAFILE,LPCWSTR);
__attribute__((dllimport)) HBITMAP __attribute__((__stdcall__)) CreateBitmap(int nWidth,int nHeight,UINT nPlanes,UINT nBitCount,const void *lpBits);
__attribute__((dllimport)) HBITMAP __attribute__((__stdcall__)) CreateBitmapIndirect(const BITMAP *pbm);
__attribute__((dllimport)) HBRUSH __attribute__((__stdcall__)) CreateBrushIndirect(const LOGBRUSH *plbrush);
__attribute__((dllimport)) HBITMAP __attribute__((__stdcall__)) CreateCompatibleBitmap(HDC hdc,int cx,int cy);
__attribute__((dllimport)) HBITMAP __attribute__((__stdcall__)) CreateDiscardableBitmap(HDC hdc,int cx,int cy);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateCompatibleDC(HDC hdc);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateDCA(LPCSTR pwszDriver,LPCSTR pwszDevice,LPCSTR pszPort,const DEVMODEA *pdm);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateDCW(LPCWSTR pwszDriver,LPCWSTR pwszDevice,LPCWSTR pszPort,const DEVMODEW *pdm);
__attribute__((dllimport)) HBITMAP __attribute__((__stdcall__)) CreateDIBitmap(HDC hdc,const BITMAPINFOHEADER *pbmih,DWORD flInit,const void *pjBits,const BITMAPINFO *pbmi,UINT iUsage);
__attribute__((dllimport)) HBRUSH __attribute__((__stdcall__)) CreateDIBPatternBrush(HGLOBAL h,UINT iUsage);
__attribute__((dllimport)) HBRUSH __attribute__((__stdcall__)) CreateDIBPatternBrushPt(const void *lpPackedDIB,UINT iUsage);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) CreateEllipticRgn(int x1,int y1,int x2,int y2);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) CreateEllipticRgnIndirect(const RECT *lprect);
__attribute__((dllimport)) HFONT __attribute__((__stdcall__)) CreateFontIndirectA(const LOGFONTA *lplf);
__attribute__((dllimport)) HFONT __attribute__((__stdcall__)) CreateFontIndirectW(const LOGFONTW *lplf);
__attribute__((dllimport)) HFONT __attribute__((__stdcall__)) CreateFontA(int cHeight,int cWidth,int cEscapement,int cOrientation,int cWeight,DWORD bItalic,DWORD bUnderline,DWORD bStrikeOut,DWORD iCharSet,DWORD iOutPrecision,DWORD iClipPrecision,DWORD iQuality,DWORD iPitchAndFamily,LPCSTR pszFaceName);
__attribute__((dllimport)) HFONT __attribute__((__stdcall__)) CreateFontW(int cHeight,int cWidth,int cEscapement,int cOrientation,int cWeight,DWORD bItalic,DWORD bUnderline,DWORD bStrikeOut,DWORD iCharSet,DWORD iOutPrecision,DWORD iClipPrecision,DWORD iQuality,DWORD iPitchAndFamily,LPCWSTR pszFaceName);
__attribute__((dllimport)) HBRUSH __attribute__((__stdcall__)) CreateHatchBrush(int iHatch,COLORREF color);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateICA(LPCSTR pszDriver,LPCSTR pszDevice,LPCSTR pszPort,const DEVMODEA *pdm);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateICW(LPCWSTR pszDriver,LPCWSTR pszDevice,LPCWSTR pszPort,const DEVMODEW *pdm);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateMetaFileA(LPCSTR pszFile);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateMetaFileW(LPCWSTR pszFile);
__attribute__((dllimport)) HPALETTE __attribute__((__stdcall__)) CreatePalette(const LOGPALETTE *plpal);
__attribute__((dllimport)) HPEN __attribute__((__stdcall__)) CreatePen(int iStyle,int cWidth,COLORREF color);
__attribute__((dllimport)) HPEN __attribute__((__stdcall__)) CreatePenIndirect(const LOGPEN *plpen);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) CreatePolyPolygonRgn(const POINT *pptl,const INT *pc,int cPoly,int iMode);
__attribute__((dllimport)) HBRUSH __attribute__((__stdcall__)) CreatePatternBrush(HBITMAP hbm);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) CreateRectRgn(int x1,int y1,int x2,int y2);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) CreateRectRgnIndirect(const RECT *lprect);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) CreateRoundRectRgn(int x1,int y1,int x2,int y2,int w,int h);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateScalableFontResourceA(DWORD fdwHidden,LPCSTR lpszFont,LPCSTR lpszFile,LPCSTR lpszPath);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateScalableFontResourceW(DWORD fdwHidden,LPCWSTR lpszFont,LPCWSTR lpszFile,LPCWSTR lpszPath);
__attribute__((dllimport)) HBRUSH __attribute__((__stdcall__)) CreateSolidBrush(COLORREF color);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteDC(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteMetaFile(HMETAFILE hmf);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteObject(HGDIOBJ ho);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DescribePixelFormat(HDC hdc,int iPixelFormat,UINT nBytes,LPPIXELFORMATDESCRIPTOR ppfd);
typedef UINT (__attribute__((__stdcall__)) *LPFNDEVMODE)(HWND,HMODULE,LPDEVMODE,LPSTR,LPSTR,LPDEVMODE,LPSTR,UINT);
typedef DWORD (__attribute__((__stdcall__)) *LPFNDEVCAPS)(LPSTR,LPSTR,UINT,LPSTR,LPDEVMODE);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DeviceCapabilitiesA(LPCSTR pDevice,LPCSTR pPort,WORD fwCapability,LPSTR pOutput,const DEVMODEA *pDevMode);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DeviceCapabilitiesW(LPCWSTR pDevice,LPCWSTR pPort,WORD fwCapability,LPWSTR pOutput,const DEVMODEW *pDevMode);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DrawEscape(HDC hdc,int iEscape,int cjIn,LPCSTR lpIn);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Ellipse(HDC hdc,int left,int top,int right,int bottom);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumFontFamiliesExA(HDC hdc,LPLOGFONTA lpLogfont,FONTENUMPROCA lpProc,LPARAM lParam,DWORD dwFlags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumFontFamiliesExW(HDC hdc,LPLOGFONTW lpLogfont,FONTENUMPROCW lpProc,LPARAM lParam,DWORD dwFlags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumFontFamiliesA(HDC hdc,LPCSTR lpLogfont,FONTENUMPROCA lpProc,LPARAM lParam);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumFontFamiliesW(HDC hdc,LPCWSTR lpLogfont,FONTENUMPROCW lpProc,LPARAM lParam);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumFontsA(HDC hdc,LPCSTR lpLogfont,FONTENUMPROCA lpProc,LPARAM lParam);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumFontsW(HDC hdc,LPCWSTR lpLogfont,FONTENUMPROCW lpProc,LPARAM lParam);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumObjects(HDC hdc,int nType,GOBJENUMPROC lpFunc,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EqualRgn(HRGN hrgn1,HRGN hrgn2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) Escape(HDC hdc,int iEscape,int cjIn,LPCSTR pvIn,LPVOID pvOut);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ExtEscape(HDC hdc,int iEscape,int cjInput,LPCSTR lpInData,int cjOutput,LPSTR lpOutData);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ExcludeClipRect(HDC hdc,int left,int top,int right,int bottom);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) ExtCreateRegion(const XFORM *lpx,DWORD nCount,const RGNDATA *lpData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ExtFloodFill(HDC hdc,int x,int y,COLORREF color,UINT type);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FillRgn(HDC hdc,HRGN hrgn,HBRUSH hbr);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FloodFill(HDC hdc,int x,int y,COLORREF color);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FrameRgn(HDC hdc,HRGN hrgn,HBRUSH hbr,int w,int h);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetROP2(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetAspectRatioFilterEx(HDC hdc,LPSIZE lpsize);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) GetBkColor(HDC hdc);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) GetDCBrushColor(HDC hdc);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) GetDCPenColor(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetBkMode(HDC hdc);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) GetBitmapBits(HBITMAP hbit,LONG cb,LPVOID lpvBits);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetBitmapDimensionEx(HBITMAP hbit,LPSIZE lpsize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetBoundsRect(HDC hdc,LPRECT lprect,UINT flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetBrushOrgEx(HDC hdc,LPPOINT lppt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharWidthA(HDC hdc,UINT iFirst,UINT iLast,LPINT lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharWidthW(HDC hdc,UINT iFirst,UINT iLast,LPINT lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharWidth32A(HDC hdc,UINT iFirst,UINT iLast,LPINT lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharWidth32W(HDC hdc,UINT iFirst,UINT iLast,LPINT lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharWidthFloatA(HDC hdc,UINT iFirst,UINT iLast,PFLOAT lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharWidthFloatW(HDC hdc,UINT iFirst,UINT iLast,PFLOAT lpBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharABCWidthsA(HDC hdc,UINT wFirst,UINT wLast,LPABC lpABC);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharABCWidthsW(HDC hdc,UINT wFirst,UINT wLast,LPABC lpABC);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharABCWidthsFloatA(HDC hdc,UINT iFirst,UINT iLast,LPABCFLOAT lpABC);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharABCWidthsFloatW(HDC hdc,UINT iFirst,UINT iLast,LPABCFLOAT lpABC);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetClipBox(HDC hdc,LPRECT lprect);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetClipRgn(HDC hdc,HRGN hrgn);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetMetaRgn(HDC hdc,HRGN hrgn);
__attribute__((dllimport)) HGDIOBJ __attribute__((__stdcall__)) GetCurrentObject(HDC hdc,UINT type);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCurrentPositionEx(HDC hdc,LPPOINT lppt);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetDeviceCaps(HDC hdc,int index);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetDIBits(HDC hdc,HBITMAP hbm,UINT start,UINT cLines,LPVOID lpvBits,LPBITMAPINFO lpbmi,UINT usage);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFontData (HDC hdc,DWORD dwTable,DWORD dwOffset,PVOID pvBuffer,DWORD cjBuffer);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetGlyphOutlineA(HDC hdc,UINT uChar,UINT fuFormat,LPGLYPHMETRICS lpgm,DWORD cjBuffer,LPVOID pvBuffer,const MAT2 *lpmat2);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetGlyphOutlineW(HDC hdc,UINT uChar,UINT fuFormat,LPGLYPHMETRICS lpgm,DWORD cjBuffer,LPVOID pvBuffer,const MAT2 *lpmat2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetGraphicsMode(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetMapMode(HDC hdc);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetMetaFileBitsEx(HMETAFILE hMF,UINT cbBuffer,LPVOID lpData);
__attribute__((dllimport)) HMETAFILE __attribute__((__stdcall__)) GetMetaFileA(LPCSTR lpName);
__attribute__((dllimport)) HMETAFILE __attribute__((__stdcall__)) GetMetaFileW(LPCWSTR lpName);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) GetNearestColor(HDC hdc,COLORREF color);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetNearestPaletteIndex(HPALETTE h,COLORREF color);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetObjectType(HGDIOBJ h);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetOutlineTextMetricsA(HDC hdc,UINT cjCopy,LPOUTLINETEXTMETRICA potm);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetOutlineTextMetricsW(HDC hdc,UINT cjCopy,LPOUTLINETEXTMETRICW potm);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetPaletteEntries(HPALETTE hpal,UINT iStart,UINT cEntries,LPPALETTEENTRY pPalEntries);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) GetPixel(HDC hdc,int x,int y);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetPixelFormat(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetPolyFillMode(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetRasterizerCaps(LPRASTERIZER_STATUS lpraststat,UINT cjBytes);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetRandomRgn (HDC hdc,HRGN hrgn,INT i);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetRegionData(HRGN hrgn,DWORD nCount,LPRGNDATA lpRgnData);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetRgnBox(HRGN hrgn,LPRECT lprc);
__attribute__((dllimport)) HGDIOBJ __attribute__((__stdcall__)) GetStockObject(int i);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetStretchBltMode(HDC hdc);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemPaletteEntries(HDC hdc,UINT iStart,UINT cEntries,LPPALETTEENTRY pPalEntries);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetSystemPaletteUse(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetTextCharacterExtra(HDC hdc);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetTextAlign(HDC hdc);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) GetTextColor(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextExtentPointA(HDC hdc,LPCSTR lpString,int c,LPSIZE lpsz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextExtentPointW(HDC hdc,LPCWSTR lpString,int c,LPSIZE lpsz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextExtentPoint32A(HDC hdc,LPCSTR lpString,int c,LPSIZE psizl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextExtentPoint32W(HDC hdc,LPCWSTR lpString,int c,LPSIZE psizl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextExtentExPointA(HDC hdc,LPCSTR lpszString,int cchString,int nMaxExtent,LPINT lpnFit,LPINT lpnDx,LPSIZE lpSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextExtentExPointW(HDC hdc,LPCWSTR lpszString,int cchString,int nMaxExtent,LPINT lpnFit,LPINT lpnDx,LPSIZE lpSize);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetTextCharset(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetTextCharsetInfo(HDC hdc,LPFONTSIGNATURE lpSig,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TranslateCharsetInfo(DWORD *lpSrc,LPCHARSETINFO lpCs,DWORD dwFlags);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFontLanguageInfo(HDC hdc);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCharacterPlacementA(HDC hdc,LPCSTR lpString,int nCount,int nMexExtent,LPGCP_RESULTSA lpResults,DWORD dwFlags);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetCharacterPlacementW(HDC hdc,LPCWSTR lpString,int nCount,int nMexExtent,LPGCP_RESULTSW lpResults,DWORD dwFlags);
typedef struct tagWCRANGE {
WCHAR wcLow;
USHORT cGlyphs;
} WCRANGE,*PWCRANGE,*LPWCRANGE;
typedef struct tagGLYPHSET {
DWORD cbThis;
DWORD flAccel;
DWORD cGlyphsSupported;
DWORD cRanges;
WCRANGE ranges[1];
} GLYPHSET,*PGLYPHSET,*LPGLYPHSET;
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetFontUnicodeRanges(HDC hdc,LPGLYPHSET lpgs);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetGlyphIndicesA(HDC hdc,LPCSTR lpstr,int c,LPWORD pgi,DWORD fl);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetGlyphIndicesW(HDC hdc,LPCWSTR lpstr,int c,LPWORD pgi,DWORD fl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextExtentPointI(HDC hdc,LPWORD pgiIn,int cgi,LPSIZE psize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextExtentExPointI (HDC hdc,LPWORD lpwszString,int cwchString,int nMaxExtent,LPINT lpnFit,LPINT lpnDx,LPSIZE lpSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharWidthI(HDC hdc,UINT giFirst,UINT cgi,LPWORD pgi,LPINT piWidths);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCharABCWidthsI(HDC hdc,UINT giFirst,UINT cgi,LPWORD pgi,LPABC pabc);
typedef struct tagDESIGNVECTOR {
DWORD dvReserved;
DWORD dvNumAxes;
LONG dvValues[16];
} DESIGNVECTOR,*PDESIGNVECTOR,*LPDESIGNVECTOR;
__attribute__((dllimport)) int __attribute__((__stdcall__)) AddFontResourceExA(LPCSTR name,DWORD fl,PVOID res);
__attribute__((dllimport)) int __attribute__((__stdcall__)) AddFontResourceExW(LPCWSTR name,DWORD fl,PVOID res);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveFontResourceExA(LPCSTR name,DWORD fl,PVOID pdv);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveFontResourceExW(LPCWSTR name,DWORD fl,PVOID pdv);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) AddFontMemResourceEx(PVOID pFileView,DWORD cjSize,PVOID pvResrved,DWORD *pNumFonts);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveFontMemResourceEx(HANDLE h);
typedef struct tagAXISINFOA {
LONG axMinValue;
LONG axMaxValue;
BYTE axAxisName[16];
} AXISINFOA,*PAXISINFOA,*LPAXISINFOA;
typedef struct tagAXISINFOW {
LONG axMinValue;
LONG axMaxValue;
WCHAR axAxisName[16];
} AXISINFOW,*PAXISINFOW,*LPAXISINFOW;
typedef AXISINFOA AXISINFO;
typedef PAXISINFOA PAXISINFO;
typedef LPAXISINFOA LPAXISINFO;
typedef struct tagAXESLISTA {
DWORD axlReserved;
DWORD axlNumAxes;
AXISINFOA axlAxisInfo[16];
} AXESLISTA,*PAXESLISTA,*LPAXESLISTA;
typedef struct tagAXESLISTW {
DWORD axlReserved;
DWORD axlNumAxes;
AXISINFOW axlAxisInfo[16];
} AXESLISTW,*PAXESLISTW,*LPAXESLISTW;
typedef AXESLISTA AXESLIST;
typedef PAXESLISTA PAXESLIST;
typedef LPAXESLISTA LPAXESLIST;
typedef struct tagENUMLOGFONTEXDVA {
ENUMLOGFONTEXA elfEnumLogfontEx;
DESIGNVECTOR elfDesignVector;
} ENUMLOGFONTEXDVA,*PENUMLOGFONTEXDVA,*LPENUMLOGFONTEXDVA;
typedef struct tagENUMLOGFONTEXDVW {
ENUMLOGFONTEXW elfEnumLogfontEx;
DESIGNVECTOR elfDesignVector;
} ENUMLOGFONTEXDVW,*PENUMLOGFONTEXDVW,*LPENUMLOGFONTEXDVW;
typedef ENUMLOGFONTEXDVA ENUMLOGFONTEXDV;
typedef PENUMLOGFONTEXDVA PENUMLOGFONTEXDV;
typedef LPENUMLOGFONTEXDVA LPENUMLOGFONTEXDV;
__attribute__((dllimport)) HFONT __attribute__((__stdcall__)) CreateFontIndirectExA(const ENUMLOGFONTEXDVA *);
__attribute__((dllimport)) HFONT __attribute__((__stdcall__)) CreateFontIndirectExW(const ENUMLOGFONTEXDVW *);
typedef struct tagENUMTEXTMETRICA {
NEWTEXTMETRICEXA etmNewTextMetricEx;
AXESLISTA etmAxesList;
} ENUMTEXTMETRICA,*PENUMTEXTMETRICA,*LPENUMTEXTMETRICA;
typedef struct tagENUMTEXTMETRICW
{
NEWTEXTMETRICEXW etmNewTextMetricEx;
AXESLISTW etmAxesList;
} ENUMTEXTMETRICW,*PENUMTEXTMETRICW,*LPENUMTEXTMETRICW;
typedef ENUMTEXTMETRICA ENUMTEXTMETRIC;
typedef PENUMTEXTMETRICA PENUMTEXTMETRIC;
typedef LPENUMTEXTMETRICA LPENUMTEXTMETRIC;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetViewportExtEx(HDC hdc,LPSIZE lpsize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetViewportOrgEx(HDC hdc,LPPOINT lppoint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetWindowExtEx(HDC hdc,LPSIZE lpsize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetWindowOrgEx(HDC hdc,LPPOINT lppoint);
__attribute__((dllimport)) int __attribute__((__stdcall__)) IntersectClipRect(HDC hdc,int left,int top,int right,int bottom);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InvertRgn(HDC hdc,HRGN hrgn);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LineDDA(int xStart,int yStart,int xEnd,int yEnd,LINEDDAPROC lpProc,LPARAM data);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LineTo(HDC hdc,int x,int y);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MaskBlt(HDC hdcDest,int xDest,int yDest,int width,int height,HDC hdcSrc,int xSrc,int ySrc,HBITMAP hbmMask,int xMask,int yMask,DWORD rop);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PlgBlt(HDC hdcDest,const POINT *lpPoint,HDC hdcSrc,int xSrc,int ySrc,int width,int height,HBITMAP hbmMask,int xMask,int yMask);
__attribute__((dllimport)) int __attribute__((__stdcall__)) OffsetClipRgn(HDC hdc,int x,int y);
__attribute__((dllimport)) int __attribute__((__stdcall__)) OffsetRgn(HRGN hrgn,int x,int y);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PatBlt(HDC hdc,int x,int y,int w,int h,DWORD rop);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Pie(HDC hdc,int left,int top,int right,int bottom,int xr1,int yr1,int xr2,int yr2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PlayMetaFile(HDC hdc,HMETAFILE hmf);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PaintRgn(HDC hdc,HRGN hrgn);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PolyPolygon(HDC hdc,const POINT *apt,const INT *asz,int csz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PtInRegion(HRGN hrgn,int x,int y);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PtVisible(HDC hdc,int x,int y);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RectInRegion(HRGN hrgn,const RECT *lprect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RectVisible(HDC hdc,const RECT *lprect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Rectangle(HDC hdc,int left,int top,int right,int bottom);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RestoreDC(HDC hdc,int nSavedDC);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) ResetDCA(HDC hdc,const DEVMODEA *lpdm);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) ResetDCW(HDC hdc,const DEVMODEW *lpdm);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) RealizePalette(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveFontResourceA(LPCSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveFontResourceW(LPCWSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RoundRect(HDC hdc,int left,int top,int right,int bottom,int width,int height);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ResizePalette(HPALETTE hpal,UINT n);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SaveDC(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SelectClipRgn(HDC hdc,HRGN hrgn);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ExtSelectClipRgn(HDC hdc,HRGN hrgn,int mode);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetMetaRgn(HDC hdc);
__attribute__((dllimport)) HGDIOBJ __attribute__((__stdcall__)) SelectObject(HDC hdc,HGDIOBJ h);
__attribute__((dllimport)) HPALETTE __attribute__((__stdcall__)) SelectPalette(HDC hdc,HPALETTE hPal,WINBOOL bForceBkgd);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) SetBkColor(HDC hdc,COLORREF color);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) SetDCBrushColor(HDC hdc,COLORREF color);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) SetDCPenColor(HDC hdc,COLORREF color);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetBkMode(HDC hdc,int mode);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) SetBitmapBits(HBITMAP hbm,DWORD cb,const void *pvBits);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) SetBoundsRect(HDC hdc,const RECT *lprect,UINT flags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetDIBits(HDC hdc,HBITMAP hbm,UINT start,UINT cLines,const void *lpBits,const BITMAPINFO *lpbmi,UINT ColorUse);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetDIBitsToDevice(HDC hdc,int xDest,int yDest,DWORD w,DWORD h,int xSrc,int ySrc,UINT StartScan,UINT cLines,const void *lpvBits,const BITMAPINFO *lpbmi,UINT ColorUse);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetMapperFlags(HDC hdc,DWORD flags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetGraphicsMode(HDC hdc,int iMode);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetMapMode(HDC hdc,int iMode);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetLayout(HDC hdc,DWORD l);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetLayout(HDC hdc);
__attribute__((dllimport)) HMETAFILE __attribute__((__stdcall__)) SetMetaFileBitsEx(UINT cbBuffer,const BYTE *lpData);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) SetPaletteEntries(HPALETTE hpal,UINT iStart,UINT cEntries,const PALETTEENTRY *pPalEntries);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) SetPixel(HDC hdc,int x,int y,COLORREF color);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetPixelV(HDC hdc,int x,int y,COLORREF color);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetPixelFormat(HDC hdc,int format,const PIXELFORMATDESCRIPTOR *ppfd);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetPolyFillMode(HDC hdc,int mode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) StretchBlt(HDC hdcDest,int xDest,int yDest,int wDest,int hDest,HDC hdcSrc,int xSrc,int ySrc,int wSrc,int hSrc,DWORD rop);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetRectRgn(HRGN hrgn,int left,int top,int right,int bottom);
__attribute__((dllimport)) int __attribute__((__stdcall__)) StretchDIBits(HDC hdc,int xDest,int yDest,int DestWidth,int DestHeight,int xSrc,int ySrc,int SrcWidth,int SrcHeight,const void *lpBits,const BITMAPINFO *lpbmi,UINT iUsage,DWORD rop);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetROP2(HDC hdc,int rop2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetStretchBltMode(HDC hdc,int mode);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) SetSystemPaletteUse(HDC hdc,UINT use);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetTextCharacterExtra(HDC hdc,int extra);
__attribute__((dllimport)) COLORREF __attribute__((__stdcall__)) SetTextColor(HDC hdc,COLORREF color);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) SetTextAlign(HDC hdc,UINT align);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetTextJustification(HDC hdc,int extra,int count);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UpdateColors(HDC hdc);
typedef USHORT COLOR16;
typedef struct _TRIVERTEX {
LONG x;
LONG y;
COLOR16 Red;
COLOR16 Green;
COLOR16 Blue;
COLOR16 Alpha;
} TRIVERTEX,*PTRIVERTEX,*LPTRIVERTEX;
typedef struct _GRADIENT_TRIANGLE {
ULONG Vertex1;
ULONG Vertex2;
ULONG Vertex3;
} GRADIENT_TRIANGLE,*PGRADIENT_TRIANGLE,*LPGRADIENT_TRIANGLE;
typedef struct _GRADIENT_RECT {
ULONG UpperLeft;
ULONG LowerRight;
} GRADIENT_RECT,*PGRADIENT_RECT,*LPGRADIENT_RECT;
typedef struct _BLENDFUNCTION {
BYTE BlendOp;
BYTE BlendFlags;
BYTE SourceConstantAlpha;
BYTE AlphaFormat;
} BLENDFUNCTION,*PBLENDFUNCTION;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AlphaBlend(HDC hdcDest,int xoriginDest,int yoriginDest,int wDest,int hDest,HDC hdcSrc,int xoriginSrc,int yoriginSrc,int wSrc,int hSrc,BLENDFUNCTION ftn);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GdiAlphaBlend(HDC hdcDest,int xoriginDest,int yoriginDest,int wDest,int hDest,HDC hdcSrc,int xoriginSrc,int yoriginSrc,int wSrc,int hSrc,BLENDFUNCTION ftn);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TransparentBlt(HDC hdcDest,int xoriginDest,int yoriginDest,int wDest,int hDest,HDC hdcSrc,int xoriginSrc,int yoriginSrc,int wSrc,int hSrc,UINT crTransparent);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GdiTransparentBlt(HDC hdcDest,int xoriginDest,int yoriginDest,int wDest,int hDest,HDC hdcSrc,int xoriginSrc,int yoriginSrc,int wSrc,int hSrc,UINT crTransparent);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GradientFill(HDC hdc,PTRIVERTEX pVertex,ULONG nVertex,PVOID pMesh,ULONG nMesh,ULONG ulMode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GdiGradientFill(HDC hdc,PTRIVERTEX pVertex,ULONG nVertex,PVOID pMesh,ULONG nMesh,ULONG ulMode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PlayMetaFileRecord(HDC hdc,LPHANDLETABLE lpHandleTable,LPMETARECORD lpMR,UINT noObjs);
typedef int (__attribute__((__stdcall__)) *MFENUMPROC)(HDC hdc,HANDLETABLE *lpht,METARECORD *lpMR,int nObj,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumMetaFile(HDC hdc,HMETAFILE hmf,MFENUMPROC lpProc,LPARAM lParam);
typedef int (__attribute__((__stdcall__)) *ENHMFENUMPROC)(HDC hdc,HANDLETABLE *lpht,const ENHMETARECORD *lpmr,int hHandles,LPARAM data);
__attribute__((dllimport)) HENHMETAFILE __attribute__((__stdcall__)) CloseEnhMetaFile(HDC hdc);
__attribute__((dllimport)) HENHMETAFILE __attribute__((__stdcall__)) CopyEnhMetaFileA(HENHMETAFILE hEnh,LPCSTR lpFileName);
__attribute__((dllimport)) HENHMETAFILE __attribute__((__stdcall__)) CopyEnhMetaFileW(HENHMETAFILE hEnh,LPCWSTR lpFileName);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateEnhMetaFileA(HDC hdc,LPCSTR lpFilename,const RECT *lprc,LPCSTR lpDesc);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) CreateEnhMetaFileW(HDC hdc,LPCWSTR lpFilename,const RECT *lprc,LPCWSTR lpDesc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteEnhMetaFile(HENHMETAFILE hmf);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumEnhMetaFile(HDC hdc,HENHMETAFILE hmf,ENHMFENUMPROC lpProc,LPVOID lpParam,const RECT *lpRect);
__attribute__((dllimport)) HENHMETAFILE __attribute__((__stdcall__)) GetEnhMetaFileA(LPCSTR lpName);
__attribute__((dllimport)) HENHMETAFILE __attribute__((__stdcall__)) GetEnhMetaFileW(LPCWSTR lpName);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetEnhMetaFileBits(HENHMETAFILE hEMF,UINT nSize,LPBYTE lpData);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetEnhMetaFileDescriptionA(HENHMETAFILE hemf,UINT cchBuffer,LPSTR lpDescription);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetEnhMetaFileDescriptionW(HENHMETAFILE hemf,UINT cchBuffer,LPWSTR lpDescription);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetEnhMetaFileHeader(HENHMETAFILE hemf,UINT nSize,LPENHMETAHEADER lpEnhMetaHeader);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetEnhMetaFilePaletteEntries(HENHMETAFILE hemf,UINT nNumEntries,LPPALETTEENTRY lpPaletteEntries);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetEnhMetaFilePixelFormat(HENHMETAFILE hemf,UINT cbBuffer,PIXELFORMATDESCRIPTOR *ppfd);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetWinMetaFileBits(HENHMETAFILE hemf,UINT cbData16,LPBYTE pData16,INT iMapMode,HDC hdcRef);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PlayEnhMetaFile(HDC hdc,HENHMETAFILE hmf,const RECT *lprect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PlayEnhMetaFileRecord(HDC hdc,LPHANDLETABLE pht,const ENHMETARECORD *pmr,UINT cht);
__attribute__((dllimport)) HENHMETAFILE __attribute__((__stdcall__)) SetEnhMetaFileBits(UINT nSize,const BYTE *pb);
__attribute__((dllimport)) HENHMETAFILE __attribute__((__stdcall__)) SetWinMetaFileBits(UINT nSize,const BYTE *lpMeta16Data,HDC hdcRef,const METAFILEPICT *lpMFP);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GdiComment(HDC hdc,UINT nSize,const BYTE *lpData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextMetricsA(HDC hdc,LPTEXTMETRICA lptm);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTextMetricsW(HDC hdc,LPTEXTMETRICW lptm);
typedef struct tagDIBSECTION {
BITMAP dsBm;
BITMAPINFOHEADER dsBmih;
DWORD dsBitfields[3];
HANDLE dshSection;
DWORD dsOffset;
} DIBSECTION,*LPDIBSECTION,*PDIBSECTION;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AngleArc(HDC hdc,int x,int y,DWORD r,FLOAT StartAngle,FLOAT SweepAngle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PolyPolyline(HDC hdc,const POINT *apt,const DWORD *asz,DWORD csz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetWorldTransform(HDC hdc,LPXFORM lpxf);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWorldTransform(HDC hdc,const XFORM *lpxf);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ModifyWorldTransform(HDC hdc,const XFORM *lpxf,DWORD mode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CombineTransform(LPXFORM lpxfOut,const XFORM *lpxf1,const XFORM *lpxf2);
__attribute__((dllimport)) HBITMAP __attribute__((__stdcall__)) CreateDIBSection(HDC hdc,const BITMAPINFO *lpbmi,UINT usage,void **ppvBits,HANDLE hSection,DWORD offset);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetDIBColorTable(HDC hdc,UINT iStart,UINT cEntries,RGBQUAD *prgbq);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) SetDIBColorTable(HDC hdc,UINT iStart,UINT cEntries,const RGBQUAD *prgbq);
typedef struct tagCOLORADJUSTMENT {
WORD caSize;
WORD caFlags;
WORD caIlluminantIndex;
WORD caRedGamma;
WORD caGreenGamma;
WORD caBlueGamma;
WORD caReferenceBlack;
WORD caReferenceWhite;
SHORT caContrast;
SHORT caBrightness;
SHORT caColorfulness;
SHORT caRedGreenTint;
} COLORADJUSTMENT,*PCOLORADJUSTMENT,*LPCOLORADJUSTMENT;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetColorAdjustment(HDC hdc,const COLORADJUSTMENT *lpca);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetColorAdjustment(HDC hdc,LPCOLORADJUSTMENT lpca);
__attribute__((dllimport)) HPALETTE __attribute__((__stdcall__)) CreateHalftonePalette(HDC hdc);
typedef WINBOOL (__attribute__((__stdcall__)) *ABORTPROC)(HDC,int);
typedef struct _DOCINFOA {
int cbSize;
LPCSTR lpszDocName;
LPCSTR lpszOutput;
LPCSTR lpszDatatype;
DWORD fwType;
} DOCINFOA,*LPDOCINFOA;
typedef struct _DOCINFOW {
int cbSize;
LPCWSTR lpszDocName;
LPCWSTR lpszOutput;
LPCWSTR lpszDatatype;
DWORD fwType;
} DOCINFOW,*LPDOCINFOW;
typedef DOCINFOA DOCINFO;
typedef LPDOCINFOA LPDOCINFO;
__attribute__((dllimport)) int __attribute__((__stdcall__)) StartDocA(HDC hdc,const DOCINFOA *lpdi);
__attribute__((dllimport)) int __attribute__((__stdcall__)) StartDocW(HDC hdc,const DOCINFOW *lpdi);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EndDoc(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) StartPage(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EndPage(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) AbortDoc(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetAbortProc(HDC hdc,ABORTPROC lpProc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AbortPath(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ArcTo(HDC hdc,int left,int top,int right,int bottom,int xr1,int yr1,int xr2,int yr2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BeginPath(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CloseFigure(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EndPath(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FillPath(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FlattenPath(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetPath(HDC hdc,LPPOINT apt,LPBYTE aj,int cpt);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) PathToRegion(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PolyDraw(HDC hdc,const POINT *apt,const BYTE *aj,int cpt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SelectClipPath(HDC hdc,int mode);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetArcDirection(HDC hdc,int dir);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMiterLimit(HDC hdc,FLOAT limit,PFLOAT old);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) StrokeAndFillPath(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) StrokePath(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WidenPath(HDC hdc);
__attribute__((dllimport)) HPEN __attribute__((__stdcall__)) ExtCreatePen(DWORD iPenStyle,DWORD cWidth,const LOGBRUSH *plbrush,DWORD cStyle,const DWORD *pstyle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMiterLimit(HDC hdc,PFLOAT plimit);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetArcDirection(HDC hdc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetObjectA(HANDLE h,int c,LPVOID pv);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetObjectW(HANDLE h,int c,LPVOID pv);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MoveToEx(HDC hdc,int x,int y,LPPOINT lppt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TextOutA(HDC hdc,int x,int y,LPCSTR lpString,int c);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TextOutW(HDC hdc,int x,int y,LPCWSTR lpString,int c);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ExtTextOutA(HDC hdc,int x,int y,UINT options,const RECT *lprect,LPCSTR lpString,UINT c,const INT *lpDx);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ExtTextOutW(HDC hdc,int x,int y,UINT options,const RECT *lprect,LPCWSTR lpString,UINT c,const INT *lpDx);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PolyTextOutA(HDC hdc,const POLYTEXTA *ppt,int nstrings);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PolyTextOutW(HDC hdc,const POLYTEXTW *ppt,int nstrings);
__attribute__((dllimport)) HRGN __attribute__((__stdcall__)) CreatePolygonRgn(const POINT *pptl,int cPoint,int iMode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DPtoLP(HDC hdc,LPPOINT lppt,int c);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LPtoDP(HDC hdc,LPPOINT lppt,int c);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Polygon(HDC hdc,const POINT *apt,int cpt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Polyline(HDC hdc,const POINT *apt,int cpt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PolyBezier(HDC hdc,const POINT *apt,DWORD cpt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PolyBezierTo(HDC hdc,const POINT *apt,DWORD cpt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PolylineTo(HDC hdc,const POINT *apt,DWORD cpt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetViewportExtEx(HDC hdc,int x,int y,LPSIZE lpsz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetViewportOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWindowExtEx(HDC hdc,int x,int y,LPSIZE lpsz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWindowOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OffsetViewportOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OffsetWindowOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ScaleViewportExtEx(HDC hdc,int xn,int dx,int yn,int yd,LPSIZE lpsz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ScaleWindowExtEx(HDC hdc,int xn,int xd,int yn,int yd,LPSIZE lpsz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetBitmapDimensionEx(HBITMAP hbm,int w,int h,LPSIZE lpsz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetBrushOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetTextFaceA(HDC hdc,int c,LPSTR lpName);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetTextFaceW(HDC hdc,int c,LPWSTR lpName);
typedef struct tagKERNINGPAIR {
WORD wFirst;
WORD wSecond;
int iKernAmount;
} KERNINGPAIR,*LPKERNINGPAIR;
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetKerningPairsA(HDC hdc,DWORD nPairs,LPKERNINGPAIR lpKernPair);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetKerningPairsW(HDC hdc,DWORD nPairs,LPKERNINGPAIR lpKernPair);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDCOrgEx(HDC hdc,LPPOINT lppt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FixBrushOrgEx(HDC hdc,int x,int y,LPPOINT ptl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnrealizeObject(HGDIOBJ h);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GdiFlush(void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GdiSetBatchLimit(DWORD dw);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GdiGetBatchLimit(void);
typedef int (__attribute__((__stdcall__)) *ICMENUMPROCA)(LPSTR,LPARAM);
typedef int (__attribute__((__stdcall__)) *ICMENUMPROCW)(LPWSTR,LPARAM);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetICMMode(HDC hdc,int mode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CheckColorsInGamut(HDC hdc,LPVOID lpRGBTriple,LPVOID dlpBuffer,DWORD nCount);
__attribute__((dllimport)) HCOLORSPACE __attribute__((__stdcall__)) GetColorSpace(HDC hdc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetLogColorSpaceA(HCOLORSPACE hColorSpace,LPLOGCOLORSPACEA lpBuffer,DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetLogColorSpaceW(HCOLORSPACE hColorSpace,LPLOGCOLORSPACEW lpBuffer,DWORD nSize);
__attribute__((dllimport)) HCOLORSPACE __attribute__((__stdcall__)) CreateColorSpaceA(LPLOGCOLORSPACEA lplcs);
__attribute__((dllimport)) HCOLORSPACE __attribute__((__stdcall__)) CreateColorSpaceW(LPLOGCOLORSPACEW lplcs);
__attribute__((dllimport)) HCOLORSPACE __attribute__((__stdcall__)) SetColorSpace(HDC hdc,HCOLORSPACE hcs);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteColorSpace(HCOLORSPACE hcs);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetICMProfileA(HDC hdc,LPDWORD pBufSize,LPSTR pszFilename);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetICMProfileW(HDC hdc,LPDWORD pBufSize,LPWSTR pszFilename);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetICMProfileA(HDC hdc,LPSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetICMProfileW(HDC hdc,LPWSTR lpFileName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetDeviceGammaRamp(HDC hdc,LPVOID lpRamp);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDeviceGammaRamp(HDC hdc,LPVOID lpRamp);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ColorMatchToTarget(HDC hdc,HDC hdcTarget,DWORD action);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumICMProfilesA(HDC hdc,ICMENUMPROCA lpProc,LPARAM lParam);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumICMProfilesW(HDC hdc,ICMENUMPROCW lpProc,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UpdateICMRegKeyA(DWORD reserved,LPSTR lpszCMID,LPSTR lpszFileName,UINT command);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UpdateICMRegKeyW(DWORD reserved,LPWSTR lpszCMID,LPWSTR lpszFileName,UINT command);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ColorCorrectPalette(HDC hdc,HPALETTE hPal,DWORD deFirst,DWORD num);
typedef struct tagEMR {
DWORD iType;
DWORD nSize;
} EMR,*PEMR;
typedef struct tagEMRTEXT {
POINTL ptlReference;
DWORD nChars;
DWORD offString;
DWORD fOptions;
RECTL rcl;
DWORD offDx;
} EMRTEXT,*PEMRTEXT;
typedef struct tagABORTPATH {
EMR emr;
} EMRABORTPATH,*PEMRABORTPATH,EMRBEGINPATH,*PEMRBEGINPATH,EMRENDPATH,*PEMRENDPATH,EMRCLOSEFIGURE,*PEMRCLOSEFIGURE,EMRFLATTENPATH,*PEMRFLATTENPATH,EMRWIDENPATH,*PEMRWIDENPATH,EMRSETMETARGN,*PEMRSETMETARGN,EMRSAVEDC,*PEMRSAVEDC,EMRREALIZEPALETTE,*PEMRREALIZEPALETTE;
typedef struct tagEMRSELECTCLIPPATH {
EMR emr;
DWORD iMode;
} EMRSELECTCLIPPATH,*PEMRSELECTCLIPPATH,EMRSETBKMODE,*PEMRSETBKMODE,EMRSETMAPMODE,*PEMRSETMAPMODE,EMRSETLAYOUT,*PEMRSETLAYOUT,
EMRSETPOLYFILLMODE,*PEMRSETPOLYFILLMODE,EMRSETROP2,*PEMRSETROP2,EMRSETSTRETCHBLTMODE,*PEMRSETSTRETCHBLTMODE,EMRSETICMMODE,
*PEMRSETICMMODE,EMRSETTEXTALIGN,*PEMRSETTEXTALIGN;
typedef struct tagEMRSETMITERLIMIT {
EMR emr;
FLOAT eMiterLimit;
} EMRSETMITERLIMIT,*PEMRSETMITERLIMIT;
typedef struct tagEMRRESTOREDC {
EMR emr;
LONG iRelative;
} EMRRESTOREDC,*PEMRRESTOREDC;
typedef struct tagEMRSETARCDIRECTION {
EMR emr;
DWORD iArcDirection;
} EMRSETARCDIRECTION,*PEMRSETARCDIRECTION;
typedef struct tagEMRSETMAPPERFLAGS {
EMR emr;
DWORD dwFlags;
} EMRSETMAPPERFLAGS,*PEMRSETMAPPERFLAGS;
typedef struct tagEMRSETTEXTCOLOR {
EMR emr;
COLORREF crColor;
} EMRSETBKCOLOR,*PEMRSETBKCOLOR,EMRSETTEXTCOLOR,*PEMRSETTEXTCOLOR;
typedef struct tagEMRSELECTOBJECT {
EMR emr;
DWORD ihObject;
} EMRSELECTOBJECT,*PEMRSELECTOBJECT,EMRDELETEOBJECT,*PEMRDELETEOBJECT;
typedef struct tagEMRSELECTPALETTE {
EMR emr;
DWORD ihPal;
} EMRSELECTPALETTE,*PEMRSELECTPALETTE;
typedef struct tagEMRRESIZEPALETTE {
EMR emr;
DWORD ihPal;
DWORD cEntries;
} EMRRESIZEPALETTE,*PEMRRESIZEPALETTE;
typedef struct tagEMRSETPALETTEENTRIES {
EMR emr;
DWORD ihPal;
DWORD iStart;
DWORD cEntries;
PALETTEENTRY aPalEntries[1];
} EMRSETPALETTEENTRIES,*PEMRSETPALETTEENTRIES;
typedef struct tagEMRSETCOLORADJUSTMENT {
EMR emr;
COLORADJUSTMENT ColorAdjustment;
} EMRSETCOLORADJUSTMENT,*PEMRSETCOLORADJUSTMENT;
typedef struct tagEMRGDICOMMENT {
EMR emr;
DWORD cbData;
BYTE Data[1];
} EMRGDICOMMENT,*PEMRGDICOMMENT;
typedef struct tagEMREOF {
EMR emr;
DWORD nPalEntries;
DWORD offPalEntries;
DWORD nSizeLast;
} EMREOF,*PEMREOF;
typedef struct tagEMRLINETO {
EMR emr;
POINTL ptl;
} EMRLINETO,*PEMRLINETO,EMRMOVETOEX,*PEMRMOVETOEX;
typedef struct tagEMROFFSETCLIPRGN {
EMR emr;
POINTL ptlOffset;
} EMROFFSETCLIPRGN,*PEMROFFSETCLIPRGN;
typedef struct tagEMRFILLPATH {
EMR emr;
RECTL rclBounds;
} EMRFILLPATH,*PEMRFILLPATH,EMRSTROKEANDFILLPATH,*PEMRSTROKEANDFILLPATH,EMRSTROKEPATH,*PEMRSTROKEPATH;
typedef struct tagEMREXCLUDECLIPRECT {
EMR emr;
RECTL rclClip;
} EMREXCLUDECLIPRECT,*PEMREXCLUDECLIPRECT,EMRINTERSECTCLIPRECT,*PEMRINTERSECTCLIPRECT;
typedef struct tagEMRSETVIEWPORTORGEX {
EMR emr;
POINTL ptlOrigin;
} EMRSETVIEWPORTORGEX,*PEMRSETVIEWPORTORGEX,EMRSETWINDOWORGEX,*PEMRSETWINDOWORGEX,EMRSETBRUSHORGEX,*PEMRSETBRUSHORGEX;
typedef struct tagEMRSETVIEWPORTEXTEX {
EMR emr;
SIZEL szlExtent;
} EMRSETVIEWPORTEXTEX,*PEMRSETVIEWPORTEXTEX,EMRSETWINDOWEXTEX,*PEMRSETWINDOWEXTEX;
typedef struct tagEMRSCALEVIEWPORTEXTEX {
EMR emr;
LONG xNum;
LONG xDenom;
LONG yNum;
LONG yDenom;
} EMRSCALEVIEWPORTEXTEX,*PEMRSCALEVIEWPORTEXTEX,EMRSCALEWINDOWEXTEX,*PEMRSCALEWINDOWEXTEX;
typedef struct tagEMRSETWORLDTRANSFORM {
EMR emr;
XFORM xform;
} EMRSETWORLDTRANSFORM,*PEMRSETWORLDTRANSFORM;
typedef struct tagEMRMODIFYWORLDTRANSFORM {
EMR emr;
XFORM xform;
DWORD iMode;
} EMRMODIFYWORLDTRANSFORM,*PEMRMODIFYWORLDTRANSFORM;
typedef struct tagEMRSETPIXELV {
EMR emr;
POINTL ptlPixel;
COLORREF crColor;
} EMRSETPIXELV,*PEMRSETPIXELV;
typedef struct tagEMREXTFLOODFILL {
EMR emr;
POINTL ptlStart;
COLORREF crColor;
DWORD iMode;
} EMREXTFLOODFILL,*PEMREXTFLOODFILL;
typedef struct tagEMRELLIPSE {
EMR emr;
RECTL rclBox;
} EMRELLIPSE,*PEMRELLIPSE,EMRRECTANGLE,*PEMRRECTANGLE;
typedef struct tagEMRROUNDRECT {
EMR emr;
RECTL rclBox;
SIZEL szlCorner;
} EMRROUNDRECT,*PEMRROUNDRECT;
typedef struct tagEMRARC {
EMR emr;
RECTL rclBox;
POINTL ptlStart;
POINTL ptlEnd;
} EMRARC,*PEMRARC,EMRARCTO,*PEMRARCTO,EMRCHORD,*PEMRCHORD,EMRPIE,*PEMRPIE;
typedef struct tagEMRANGLEARC {
EMR emr;
POINTL ptlCenter;
DWORD nRadius;
FLOAT eStartAngle;
FLOAT eSweepAngle;
} EMRANGLEARC,*PEMRANGLEARC;
typedef struct tagEMRPOLYLINE {
EMR emr;
RECTL rclBounds;
DWORD cptl;
POINTL aptl[1];
} EMRPOLYLINE,*PEMRPOLYLINE,EMRPOLYBEZIER,*PEMRPOLYBEZIER,EMRPOLYGON,*PEMRPOLYGON,EMRPOLYBEZIERTO,*PEMRPOLYBEZIERTO,EMRPOLYLINETO,*PEMRPOLYLINETO;
typedef struct tagEMRPOLYLINE16 {
EMR emr;
RECTL rclBounds;
DWORD cpts;
POINTS apts[1];
} EMRPOLYLINE16,*PEMRPOLYLINE16,EMRPOLYBEZIER16,*PEMRPOLYBEZIER16,EMRPOLYGON16,*PEMRPOLYGON16,EMRPOLYBEZIERTO16,*PEMRPOLYBEZIERTO16,EMRPOLYLINETO16,*PEMRPOLYLINETO16;
typedef struct tagEMRPOLYDRAW {
EMR emr;
RECTL rclBounds;
DWORD cptl;
POINTL aptl[1];
BYTE abTypes[1];
} EMRPOLYDRAW,*PEMRPOLYDRAW;
typedef struct tagEMRPOLYDRAW16 {
EMR emr;
RECTL rclBounds;
DWORD cpts;
POINTS apts[1];
BYTE abTypes[1];
} EMRPOLYDRAW16,*PEMRPOLYDRAW16;
typedef struct tagEMRPOLYPOLYLINE {
EMR emr;
RECTL rclBounds;
DWORD nPolys;
DWORD cptl;
DWORD aPolyCounts[1];
POINTL aptl[1];
} EMRPOLYPOLYLINE,*PEMRPOLYPOLYLINE,EMRPOLYPOLYGON,*PEMRPOLYPOLYGON;
typedef struct tagEMRPOLYPOLYLINE16 {
EMR emr;
RECTL rclBounds;
DWORD nPolys;
DWORD cpts;
DWORD aPolyCounts[1];
POINTS apts[1];
} EMRPOLYPOLYLINE16,*PEMRPOLYPOLYLINE16,EMRPOLYPOLYGON16,*PEMRPOLYPOLYGON16;
typedef struct tagEMRINVERTRGN {
EMR emr;
RECTL rclBounds;
DWORD cbRgnData;
BYTE RgnData[1];
} EMRINVERTRGN,*PEMRINVERTRGN,EMRPAINTRGN,*PEMRPAINTRGN;
typedef struct tagEMRFILLRGN {
EMR emr;
RECTL rclBounds;
DWORD cbRgnData;
DWORD ihBrush;
BYTE RgnData[1];
} EMRFILLRGN,*PEMRFILLRGN;
typedef struct tagEMRFRAMERGN {
EMR emr;
RECTL rclBounds;
DWORD cbRgnData;
DWORD ihBrush;
SIZEL szlStroke;
BYTE RgnData[1];
} EMRFRAMERGN,*PEMRFRAMERGN;
typedef struct tagEMREXTSELECTCLIPRGN {
EMR emr;
DWORD cbRgnData;
DWORD iMode;
BYTE RgnData[1];
} EMREXTSELECTCLIPRGN,*PEMREXTSELECTCLIPRGN;
typedef struct tagEMREXTTEXTOUTA {
EMR emr;
RECTL rclBounds;
DWORD iGraphicsMode;
FLOAT exScale;
FLOAT eyScale;
EMRTEXT emrtext;
} EMREXTTEXTOUTA,*PEMREXTTEXTOUTA,EMREXTTEXTOUTW,*PEMREXTTEXTOUTW;
typedef struct tagEMRPOLYTEXTOUTA {
EMR emr;
RECTL rclBounds;
DWORD iGraphicsMode;
FLOAT exScale;
FLOAT eyScale;
LONG cStrings;
EMRTEXT aemrtext[1];
} EMRPOLYTEXTOUTA,*PEMRPOLYTEXTOUTA,EMRPOLYTEXTOUTW,*PEMRPOLYTEXTOUTW;
typedef struct tagEMRBITBLT {
EMR emr;
RECTL rclBounds;
LONG xDest;
LONG yDest;
LONG cxDest;
LONG cyDest;
DWORD dwRop;
LONG xSrc;
LONG ySrc;
XFORM xformSrc;
COLORREF crBkColorSrc;
DWORD iUsageSrc;
DWORD offBmiSrc;
DWORD cbBmiSrc;
DWORD offBitsSrc;
DWORD cbBitsSrc;
} EMRBITBLT,*PEMRBITBLT;
typedef struct tagEMRSTRETCHBLT {
EMR emr;
RECTL rclBounds;
LONG xDest;
LONG yDest;
LONG cxDest;
LONG cyDest;
DWORD dwRop;
LONG xSrc;
LONG ySrc;
XFORM xformSrc;
COLORREF crBkColorSrc;
DWORD iUsageSrc;
DWORD offBmiSrc;
DWORD cbBmiSrc;
DWORD offBitsSrc;
DWORD cbBitsSrc;
LONG cxSrc;
LONG cySrc;
} EMRSTRETCHBLT,*PEMRSTRETCHBLT;
typedef struct tagEMRMASKBLT {
EMR emr;
RECTL rclBounds;
LONG xDest;
LONG yDest;
LONG cxDest;
LONG cyDest;
DWORD dwRop;
LONG xSrc;
LONG ySrc;
XFORM xformSrc;
COLORREF crBkColorSrc;
DWORD iUsageSrc;
DWORD offBmiSrc;
DWORD cbBmiSrc;
DWORD offBitsSrc;
DWORD cbBitsSrc;
LONG xMask;
LONG yMask;
DWORD iUsageMask;
DWORD offBmiMask;
DWORD cbBmiMask;
DWORD offBitsMask;
DWORD cbBitsMask;
} EMRMASKBLT,*PEMRMASKBLT;
typedef struct tagEMRPLGBLT {
EMR emr;
RECTL rclBounds;
POINTL aptlDest[3];
LONG xSrc;
LONG ySrc;
LONG cxSrc;
LONG cySrc;
XFORM xformSrc;
COLORREF crBkColorSrc;
DWORD iUsageSrc;
DWORD offBmiSrc;
DWORD cbBmiSrc;
DWORD offBitsSrc;
DWORD cbBitsSrc;
LONG xMask;
LONG yMask;
DWORD iUsageMask;
DWORD offBmiMask;
DWORD cbBmiMask;
DWORD offBitsMask;
DWORD cbBitsMask;
} EMRPLGBLT,*PEMRPLGBLT;
typedef struct tagEMRSETDIBITSTODEVICE {
EMR emr;
RECTL rclBounds;
LONG xDest;
LONG yDest;
LONG xSrc;
LONG ySrc;
LONG cxSrc;
LONG cySrc;
DWORD offBmiSrc;
DWORD cbBmiSrc;
DWORD offBitsSrc;
DWORD cbBitsSrc;
DWORD iUsageSrc;
DWORD iStartScan;
DWORD cScans;
} EMRSETDIBITSTODEVICE,*PEMRSETDIBITSTODEVICE;
typedef struct tagEMRSTRETCHDIBITS {
EMR emr;
RECTL rclBounds;
LONG xDest;
LONG yDest;
LONG xSrc;
LONG ySrc;
LONG cxSrc;
LONG cySrc;
DWORD offBmiSrc;
DWORD cbBmiSrc;
DWORD offBitsSrc;
DWORD cbBitsSrc;
DWORD iUsageSrc;
DWORD dwRop;
LONG cxDest;
LONG cyDest;
} EMRSTRETCHDIBITS,*PEMRSTRETCHDIBITS;
typedef struct tagEMREXTCREATEFONTINDIRECTW {
EMR emr;
DWORD ihFont;
EXTLOGFONTW elfw;
} EMREXTCREATEFONTINDIRECTW,*PEMREXTCREATEFONTINDIRECTW;
typedef struct tagEMRCREATEPALETTE {
EMR emr;
DWORD ihPal;
LOGPALETTE lgpl;
} EMRCREATEPALETTE,*PEMRCREATEPALETTE;
typedef struct tagEMRCREATEPEN {
EMR emr;
DWORD ihPen;
LOGPEN lopn;
} EMRCREATEPEN,*PEMRCREATEPEN;
typedef struct tagEMREXTCREATEPEN {
EMR emr;
DWORD ihPen;
DWORD offBmi;
DWORD cbBmi;
DWORD offBits;
DWORD cbBits;
EXTLOGPEN elp;
} EMREXTCREATEPEN,*PEMREXTCREATEPEN;
typedef struct tagEMRCREATEBRUSHINDIRECT {
EMR emr;
DWORD ihBrush;
LOGBRUSH32 lb;
} EMRCREATEBRUSHINDIRECT,*PEMRCREATEBRUSHINDIRECT;
typedef struct tagEMRCREATEMONOBRUSH {
EMR emr;
DWORD ihBrush;
DWORD iUsage;
DWORD offBmi;
DWORD cbBmi;
DWORD offBits;
DWORD cbBits;
} EMRCREATEMONOBRUSH,*PEMRCREATEMONOBRUSH;
typedef struct tagEMRCREATEDIBPATTERNBRUSHPT {
EMR emr;
DWORD ihBrush;
DWORD iUsage;
DWORD offBmi;
DWORD cbBmi;
DWORD offBits;
DWORD cbBits;
} EMRCREATEDIBPATTERNBRUSHPT,*PEMRCREATEDIBPATTERNBRUSHPT;
typedef struct tagEMRFORMAT {
DWORD dSignature;
DWORD nVersion;
DWORD cbData;
DWORD offData;
} EMRFORMAT,*PEMRFORMAT;
typedef struct tagEMRGLSRECORD {
EMR emr;
DWORD cbData;
BYTE Data[1];
} EMRGLSRECORD,*PEMRGLSRECORD;
typedef struct tagEMRGLSBOUNDEDRECORD {
EMR emr;
RECTL rclBounds;
DWORD cbData;
BYTE Data[1];
} EMRGLSBOUNDEDRECORD,*PEMRGLSBOUNDEDRECORD;
typedef struct tagEMRPIXELFORMAT {
EMR emr;
PIXELFORMATDESCRIPTOR pfd;
} EMRPIXELFORMAT,*PEMRPIXELFORMAT;
typedef struct tagEMRCREATECOLORSPACE {
EMR emr;
DWORD ihCS;
LOGCOLORSPACEA lcs;
} EMRCREATECOLORSPACE,*PEMRCREATECOLORSPACE;
typedef struct tagEMRSETCOLORSPACE {
EMR emr;
DWORD ihCS;
} EMRSETCOLORSPACE,*PEMRSETCOLORSPACE,EMRSELECTCOLORSPACE,*PEMRSELECTCOLORSPACE,EMRDELETECOLORSPACE,*PEMRDELETECOLORSPACE;
typedef struct tagEMREXTESCAPE {
EMR emr;
INT iEscape;
INT cbEscData;
BYTE EscData[1];
} EMREXTESCAPE,*PEMREXTESCAPE,EMRDRAWESCAPE,*PEMRDRAWESCAPE;
typedef struct tagEMRNAMEDESCAPE {
EMR emr;
INT iEscape;
INT cbDriver;
INT cbEscData;
BYTE EscData[1];
} EMRNAMEDESCAPE,*PEMRNAMEDESCAPE;
typedef struct tagEMRSETICMPROFILE {
EMR emr;
DWORD dwFlags;
DWORD cbName;
DWORD cbData;
BYTE Data[1];
} EMRSETICMPROFILE,*PEMRSETICMPROFILE,EMRSETICMPROFILEA,*PEMRSETICMPROFILEA,EMRSETICMPROFILEW,*PEMRSETICMPROFILEW;
typedef struct tagEMRCREATECOLORSPACEW {
EMR emr;
DWORD ihCS;
LOGCOLORSPACEW lcs;
DWORD dwFlags;
DWORD cbData;
BYTE Data[1];
} EMRCREATECOLORSPACEW,*PEMRCREATECOLORSPACEW;
typedef struct tagCOLORMATCHTOTARGET {
EMR emr;
DWORD dwAction;
DWORD dwFlags;
DWORD cbName;
DWORD cbData;
BYTE Data[1];
} EMRCOLORMATCHTOTARGET,*PEMRCOLORMATCHTOTARGET;
typedef struct tagCOLORCORRECTPALETTE {
EMR emr;
DWORD ihPalette;
DWORD nFirstEntry;
DWORD nPalEntries;
DWORD nReserved;
} EMRCOLORCORRECTPALETTE,*PEMRCOLORCORRECTPALETTE;
typedef struct tagEMRALPHABLEND {
EMR emr;
RECTL rclBounds;
LONG xDest;
LONG yDest;
LONG cxDest;
LONG cyDest;
DWORD dwRop;
LONG xSrc;
LONG ySrc;
XFORM xformSrc;
COLORREF crBkColorSrc;
DWORD iUsageSrc;
DWORD offBmiSrc;
DWORD cbBmiSrc;
DWORD offBitsSrc;
DWORD cbBitsSrc;
LONG cxSrc;
LONG cySrc;
} EMRALPHABLEND,*PEMRALPHABLEND;
typedef struct tagEMRGRADIENTFILL {
EMR emr;
RECTL rclBounds;
DWORD nVer;
DWORD nTri;
ULONG ulMode;
TRIVERTEX Ver[1];
} EMRGRADIENTFILL,*PEMRGRADIENTFILL;
typedef struct tagEMRTRANSPARENTBLT {
EMR emr;
RECTL rclBounds;
LONG xDest;
LONG yDest;
LONG cxDest;
LONG cyDest;
DWORD dwRop;
LONG xSrc;
LONG ySrc;
XFORM xformSrc;
COLORREF crBkColorSrc;
DWORD iUsageSrc;
DWORD offBmiSrc;
DWORD cbBmiSrc;
DWORD offBitsSrc;
DWORD cbBitsSrc;
LONG cxSrc;
LONG cySrc;
} EMRTRANSPARENTBLT,*PEMRTRANSPARENTBLT;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglCopyContext(HGLRC,HGLRC,UINT);
__attribute__((dllimport)) HGLRC __attribute__((__stdcall__)) wglCreateContext(HDC);
__attribute__((dllimport)) HGLRC __attribute__((__stdcall__)) wglCreateLayerContext(HDC,int);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglDeleteContext(HGLRC);
__attribute__((dllimport)) HGLRC __attribute__((__stdcall__)) wglGetCurrentContext(void);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) wglGetCurrentDC(void);
__attribute__((dllimport)) PROC __attribute__((__stdcall__)) wglGetProcAddress(LPCSTR);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglMakeCurrent(HDC,HGLRC);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglShareLists(HGLRC,HGLRC);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglUseFontBitmapsA(HDC,DWORD,DWORD,DWORD);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglUseFontBitmapsW(HDC,DWORD,DWORD,DWORD);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SwapBuffers(HDC);
typedef struct _POINTFLOAT {
FLOAT x;
FLOAT y;
} POINTFLOAT,*PPOINTFLOAT;
typedef struct _GLYPHMETRICSFLOAT {
FLOAT gmfBlackBoxX;
FLOAT gmfBlackBoxY;
POINTFLOAT gmfptGlyphOrigin;
FLOAT gmfCellIncX;
FLOAT gmfCellIncY;
} GLYPHMETRICSFLOAT,*PGLYPHMETRICSFLOAT,*LPGLYPHMETRICSFLOAT;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglUseFontOutlinesA(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglUseFontOutlinesW(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
typedef struct tagLAYERPLANEDESCRIPTOR {
WORD nSize;
WORD nVersion;
DWORD dwFlags;
BYTE iPixelType;
BYTE cColorBits;
BYTE cRedBits;
BYTE cRedShift;
BYTE cGreenBits;
BYTE cGreenShift;
BYTE cBlueBits;
BYTE cBlueShift;
BYTE cAlphaBits;
BYTE cAlphaShift;
BYTE cAccumBits;
BYTE cAccumRedBits;
BYTE cAccumGreenBits;
BYTE cAccumBlueBits;
BYTE cAccumAlphaBits;
BYTE cDepthBits;
BYTE cStencilBits;
BYTE cAuxBuffers;
BYTE iLayerPlane;
BYTE bReserved;
COLORREF crTransparent;
} LAYERPLANEDESCRIPTOR,*PLAYERPLANEDESCRIPTOR,*LPLAYERPLANEDESCRIPTOR;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglDescribeLayerPlane(HDC,int,int,UINT,LPLAYERPLANEDESCRIPTOR);
__attribute__((dllimport)) int __attribute__((__stdcall__)) wglSetLayerPaletteEntries(HDC,int,int,int,const COLORREF *);
__attribute__((dllimport)) int __attribute__((__stdcall__)) wglGetLayerPaletteEntries(HDC,int,int,int,COLORREF *);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglRealizeLayerPalette(HDC,int,WINBOOL);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) wglSwapLayerBuffers(HDC,UINT);
typedef struct _WGLSWAP {
HDC hdc;
UINT uiFlags;
} WGLSWAP,*PWGLSWAP,*LPWGLSWAP;
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) wglSwapMultipleBuffers(UINT,const WGLSWAP *);
typedef HANDLE HDWP;
typedef void MENUTEMPLATEA;
typedef void MENUTEMPLATEW;
typedef PVOID LPMENUTEMPLATEA;
typedef PVOID LPMENUTEMPLATEW;
typedef MENUTEMPLATEA MENUTEMPLATE;
typedef LPMENUTEMPLATEA LPMENUTEMPLATE;
typedef LRESULT (__attribute__((__stdcall__)) *WNDPROC)(HWND,UINT,WPARAM,LPARAM);
typedef INT_PTR (__attribute__((__stdcall__)) *DLGPROC) (HWND, UINT, WPARAM, LPARAM);
typedef void (__attribute__((__stdcall__)) *TIMERPROC) (HWND, UINT, UINT_PTR, DWORD);
typedef WINBOOL (__attribute__((__stdcall__)) *GRAYSTRINGPROC) (HDC, LPARAM, int);
typedef WINBOOL (__attribute__((__stdcall__)) *WNDENUMPROC) (HWND, LPARAM);
typedef LRESULT (__attribute__((__stdcall__)) *HOOKPROC) (int code, WPARAM wParam, LPARAM lParam);
typedef void (__attribute__((__stdcall__)) *SENDASYNCPROC) (HWND, UINT, ULONG_PTR, LRESULT);
typedef WINBOOL (__attribute__((__stdcall__)) *PROPENUMPROCA) (HWND, LPCSTR, HANDLE);
typedef WINBOOL (__attribute__((__stdcall__)) *PROPENUMPROCW) (HWND, LPCWSTR, HANDLE);
typedef WINBOOL (__attribute__((__stdcall__)) *PROPENUMPROCEXA) (HWND, LPSTR, HANDLE, ULONG_PTR);
typedef WINBOOL (__attribute__((__stdcall__)) *PROPENUMPROCEXW) (HWND, LPWSTR, HANDLE, ULONG_PTR);
typedef int (__attribute__((__stdcall__)) *EDITWORDBREAKPROCA) (LPSTR lpch, int ichCurrent, int cch, int code);
typedef int (__attribute__((__stdcall__)) *EDITWORDBREAKPROCW) (LPWSTR lpch, int ichCurrent, int cch, int code);
typedef WINBOOL (__attribute__((__stdcall__)) *DRAWSTATEPROC) (HDC hdc, LPARAM lData, WPARAM wData, int cx, int cy);
typedef PROPENUMPROCA PROPENUMPROC;
typedef PROPENUMPROCEXA PROPENUMPROCEX;
typedef EDITWORDBREAKPROCA EDITWORDBREAKPROC;
typedef WINBOOL (__attribute__((__stdcall__)) *NAMEENUMPROCA) (LPSTR, LPARAM);
typedef WINBOOL (__attribute__((__stdcall__)) *NAMEENUMPROCW) (LPWSTR, LPARAM);
typedef NAMEENUMPROCA WINSTAENUMPROCA;
typedef NAMEENUMPROCW WINSTAENUMPROCW;
typedef NAMEENUMPROCA DESKTOPENUMPROCA;
typedef NAMEENUMPROCW DESKTOPENUMPROCW;
typedef WINSTAENUMPROCA WINSTAENUMPROC;
typedef DESKTOPENUMPROCA DESKTOPENUMPROC;
__attribute__((dllimport)) int __attribute__((__stdcall__)) wvsprintfA(LPSTR,LPCSTR,va_list arglist);
__attribute__((dllimport)) int __attribute__((__stdcall__)) wvsprintfW(LPWSTR,LPCWSTR,va_list arglist);
__attribute__((dllimport)) int __attribute__((__cdecl__)) wsprintfA(LPSTR,LPCSTR,...);
__attribute__((dllimport)) int __attribute__((__cdecl__)) wsprintfW(LPWSTR,LPCWSTR,...);
typedef struct tagCBT_CREATEWNDA {
struct tagCREATESTRUCTA *lpcs;
HWND hwndInsertAfter;
} CBT_CREATEWNDA,*LPCBT_CREATEWNDA;
typedef struct tagCBT_CREATEWNDW {
struct tagCREATESTRUCTW *lpcs;
HWND hwndInsertAfter;
} CBT_CREATEWNDW,*LPCBT_CREATEWNDW;
typedef CBT_CREATEWNDA CBT_CREATEWND;
typedef LPCBT_CREATEWNDA LPCBT_CREATEWND;
typedef struct tagCBTACTIVATESTRUCT {
WINBOOL fMouse;
HWND hWndActive;
} CBTACTIVATESTRUCT,*LPCBTACTIVATESTRUCT;
typedef struct tagWTSSESSION_NOTIFICATION {
DWORD cbSize;
DWORD dwSessionId;
} WTSSESSION_NOTIFICATION,*PWTSSESSION_NOTIFICATION;
typedef struct {
HWND hwnd;
RECT rc;
} SHELLHOOKINFO,*LPSHELLHOOKINFO;
typedef struct tagEVENTMSG {
UINT message;
UINT paramL;
UINT paramH;
DWORD time;
HWND hwnd;
} EVENTMSG,*PEVENTMSGMSG,*NPEVENTMSGMSG,*LPEVENTMSGMSG;
typedef struct tagEVENTMSG *PEVENTMSG,*NPEVENTMSG,*LPEVENTMSG;
typedef struct tagCWPSTRUCT {
LPARAM lParam;
WPARAM wParam;
UINT message;
HWND hwnd;
} CWPSTRUCT,*PCWPSTRUCT,*NPCWPSTRUCT,*LPCWPSTRUCT;
typedef struct tagCWPRETSTRUCT {
LRESULT lResult;
LPARAM lParam;
WPARAM wParam;
UINT message;
HWND hwnd;
} CWPRETSTRUCT,*PCWPRETSTRUCT,*NPCWPRETSTRUCT,*LPCWPRETSTRUCT;
typedef struct tagKBDLLHOOKSTRUCT {
DWORD vkCode;
DWORD scanCode;
DWORD flags;
DWORD time;
ULONG_PTR dwExtraInfo;
} KBDLLHOOKSTRUCT,*LPKBDLLHOOKSTRUCT,*PKBDLLHOOKSTRUCT;
typedef struct tagMSLLHOOKSTRUCT {
POINT pt;
DWORD mouseData;
DWORD flags;
DWORD time;
ULONG_PTR dwExtraInfo;
} MSLLHOOKSTRUCT,*LPMSLLHOOKSTRUCT,*PMSLLHOOKSTRUCT;
typedef struct tagDEBUGHOOKINFO {
DWORD idThread;
DWORD idThreadInstaller;
LPARAM lParam;
WPARAM wParam;
int code;
} DEBUGHOOKINFO,*PDEBUGHOOKINFO,*NPDEBUGHOOKINFO,*LPDEBUGHOOKINFO;
typedef struct tagMOUSEHOOKSTRUCT {
POINT pt;
HWND hwnd;
UINT wHitTestCode;
ULONG_PTR dwExtraInfo;
} MOUSEHOOKSTRUCT,*LPMOUSEHOOKSTRUCT,*PMOUSEHOOKSTRUCT;
typedef struct tagMOUSEHOOKSTRUCTEX {
MOUSEHOOKSTRUCT __unnamed;
DWORD mouseData;
} MOUSEHOOKSTRUCTEX,*LPMOUSEHOOKSTRUCTEX,*PMOUSEHOOKSTRUCTEX;
typedef struct tagHARDWAREHOOKSTRUCT {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
} HARDWAREHOOKSTRUCT,*LPHARDWAREHOOKSTRUCT,*PHARDWAREHOOKSTRUCT;
__attribute__((dllimport)) HKL __attribute__((__stdcall__)) LoadKeyboardLayoutA(LPCSTR pwszKLID,UINT Flags);
__attribute__((dllimport)) HKL __attribute__((__stdcall__)) LoadKeyboardLayoutW(LPCWSTR pwszKLID,UINT Flags);
__attribute__((dllimport)) HKL __attribute__((__stdcall__)) ActivateKeyboardLayout(HKL hkl,UINT Flags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ToUnicodeEx(UINT wVirtKey,UINT wScanCode,const BYTE *lpKeyState,LPWSTR pwszBuff,int cchBuff,UINT wFlags,HKL dwhkl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnloadKeyboardLayout(HKL hkl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetKeyboardLayoutNameA(LPSTR pwszKLID);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetKeyboardLayoutNameW(LPWSTR pwszKLID);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetKeyboardLayoutList(int nBuff,HKL *lpList);
__attribute__((dllimport)) HKL __attribute__((__stdcall__)) GetKeyboardLayout(DWORD idThread);
typedef struct tagMOUSEMOVEPOINT {
int x;
int y;
DWORD time;
ULONG_PTR dwExtraInfo;
} MOUSEMOVEPOINT,*PMOUSEMOVEPOINT,*LPMOUSEMOVEPOINT;
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetMouseMovePointsEx(UINT cbSize,LPMOUSEMOVEPOINT lppt,LPMOUSEMOVEPOINT lpptBuf,int nBufPoints,DWORD resolution);
__attribute__((dllimport)) HDESK __attribute__((__stdcall__)) CreateDesktopA(LPCSTR lpszDesktop,LPCSTR lpszDevice,LPDEVMODEA pDevmode,DWORD dwFlags,ACCESS_MASK dwDesiredAccess,LPSECURITY_ATTRIBUTES lpsa);
__attribute__((dllimport)) HDESK __attribute__((__stdcall__)) CreateDesktopW(LPCWSTR lpszDesktop,LPCWSTR lpszDevice,LPDEVMODEW pDevmode,DWORD dwFlags,ACCESS_MASK dwDesiredAccess,LPSECURITY_ATTRIBUTES lpsa);
__attribute__((dllimport)) HDESK __attribute__((__stdcall__)) CreateDesktopExA (LPCSTR lpszDesktop, LPCSTR lpszDevice, DEVMODEA *pDevmode, DWORD dwFlags, ACCESS_MASK dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa, ULONG ulHeapSize, PVOID pvoid);
__attribute__((dllimport)) HDESK __attribute__((__stdcall__)) CreateDesktopExW (LPCWSTR lpszDesktop, LPCWSTR lpszDevice, DEVMODEW *pDevmode, DWORD dwFlags, ACCESS_MASK dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa, ULONG ulHeapSize, PVOID pvoid);
__attribute__((dllimport)) HDESK __attribute__((__stdcall__)) OpenDesktopA(LPCSTR lpszDesktop,DWORD dwFlags,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
__attribute__((dllimport)) HDESK __attribute__((__stdcall__)) OpenDesktopW(LPCWSTR lpszDesktop,DWORD dwFlags,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
__attribute__((dllimport)) HDESK __attribute__((__stdcall__)) OpenInputDesktop(DWORD dwFlags,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDesktopsA(HWINSTA hwinsta,DESKTOPENUMPROCA lpEnumFunc,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDesktopsW(HWINSTA hwinsta,DESKTOPENUMPROCW lpEnumFunc,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDesktopWindows(HDESK hDesktop,WNDENUMPROC lpfn,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SwitchDesktop(HDESK hDesktop);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetThreadDesktop(HDESK hDesktop);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CloseDesktop(HDESK hDesktop);
__attribute__((dllimport)) HDESK __attribute__((__stdcall__)) GetThreadDesktop(DWORD dwThreadId);
__attribute__((dllimport)) HWINSTA __attribute__((__stdcall__)) CreateWindowStationA(LPCSTR lpwinsta,DWORD dwFlags,ACCESS_MASK dwDesiredAccess,LPSECURITY_ATTRIBUTES lpsa);
__attribute__((dllimport)) HWINSTA __attribute__((__stdcall__)) CreateWindowStationW(LPCWSTR lpwinsta,DWORD dwFlags,ACCESS_MASK dwDesiredAccess,LPSECURITY_ATTRIBUTES lpsa);
__attribute__((dllimport)) HWINSTA __attribute__((__stdcall__)) OpenWindowStationA(LPCSTR lpszWinSta,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
__attribute__((dllimport)) HWINSTA __attribute__((__stdcall__)) OpenWindowStationW(LPCWSTR lpszWinSta,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumWindowStationsA(WINSTAENUMPROCA lpEnumFunc,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumWindowStationsW(WINSTAENUMPROCW lpEnumFunc,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CloseWindowStation(HWINSTA hWinSta);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetProcessWindowStation(HWINSTA hWinSta);
__attribute__((dllimport)) HWINSTA __attribute__((__stdcall__)) GetProcessWindowStation(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUserObjectSecurity(HANDLE hObj,PSECURITY_INFORMATION pSIRequested,PSECURITY_DESCRIPTOR pSID);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUserObjectSecurity(HANDLE hObj,PSECURITY_INFORMATION pSIRequested,PSECURITY_DESCRIPTOR pSID,DWORD nLength,LPDWORD lpnLengthNeeded);
typedef struct tagUSEROBJECTFLAGS {
WINBOOL fInherit;
WINBOOL fReserved;
DWORD dwFlags;
} USEROBJECTFLAGS,*PUSEROBJECTFLAGS;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUserObjectInformationA(HANDLE hObj,int nIndex,PVOID pvInfo,DWORD nLength,LPDWORD lpnLengthNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUserObjectInformationW(HANDLE hObj,int nIndex,PVOID pvInfo,DWORD nLength,LPDWORD lpnLengthNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUserObjectInformationA(HANDLE hObj,int nIndex,PVOID pvInfo,DWORD nLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUserObjectInformationW(HANDLE hObj,int nIndex,PVOID pvInfo,DWORD nLength);
typedef struct tagWNDCLASSEXA {
UINT cbSize;
UINT style;
WNDPROC lpfnWndProc;
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCSTR lpszMenuName;
LPCSTR lpszClassName;
HICON hIconSm;
} WNDCLASSEXA,*PWNDCLASSEXA,*NPWNDCLASSEXA,*LPWNDCLASSEXA;
typedef struct tagWNDCLASSEXW {
UINT cbSize;
UINT style;
WNDPROC lpfnWndProc;
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCWSTR lpszMenuName;
LPCWSTR lpszClassName;
HICON hIconSm;
} WNDCLASSEXW,*PWNDCLASSEXW,*NPWNDCLASSEXW,*LPWNDCLASSEXW;
typedef WNDCLASSEXA WNDCLASSEX;
typedef PWNDCLASSEXA PWNDCLASSEX;
typedef NPWNDCLASSEXA NPWNDCLASSEX;
typedef LPWNDCLASSEXA LPWNDCLASSEX;
typedef struct tagWNDCLASSA {
UINT style;
WNDPROC lpfnWndProc;
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCSTR lpszMenuName;
LPCSTR lpszClassName;
} WNDCLASSA,*PWNDCLASSA,*NPWNDCLASSA,*LPWNDCLASSA;
typedef struct tagWNDCLASSW {
UINT style;
WNDPROC lpfnWndProc;
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCWSTR lpszMenuName;
LPCWSTR lpszClassName;
} WNDCLASSW,*PWNDCLASSW,*NPWNDCLASSW,*LPWNDCLASSW;
typedef WNDCLASSA WNDCLASS;
typedef PWNDCLASSA PWNDCLASS;
typedef NPWNDCLASSA NPWNDCLASS;
typedef LPWNDCLASSA LPWNDCLASS;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsHungAppWindow(HWND hwnd);
__attribute__((dllimport)) void __attribute__((__stdcall__)) DisableProcessWindowsGhosting(void);
typedef struct tagMSG {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
} MSG,*PMSG,*NPMSG,*LPMSG;
typedef struct tagMINMAXINFO {
POINT ptReserved;
POINT ptMaxSize;
POINT ptMaxPosition;
POINT ptMinTrackSize;
POINT ptMaxTrackSize;
} MINMAXINFO,*PMINMAXINFO,*LPMINMAXINFO;
typedef struct tagCOPYDATASTRUCT {
ULONG_PTR dwData;
DWORD cbData;
PVOID lpData;
} COPYDATASTRUCT,*PCOPYDATASTRUCT;
typedef struct tagMDINEXTMENU {
HMENU hmenuIn;
HMENU hmenuNext;
HWND hwndNext;
} MDINEXTMENU,*PMDINEXTMENU,*LPMDINEXTMENU;
typedef struct {
GUID PowerSetting;
DWORD DataLength;
UCHAR Data[1];
} POWERBROADCAST_SETTING,*PPOWERBROADCAST_SETTING;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) RegisterWindowMessageA(LPCSTR lpString);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) RegisterWindowMessageW(LPCWSTR lpString);
typedef struct tagWINDOWPOS {
HWND hwnd;
HWND hwndInsertAfter;
int x;
int y;
int cx;
int cy;
UINT flags;
} WINDOWPOS,*LPWINDOWPOS,*PWINDOWPOS;
typedef struct tagNCCALCSIZE_PARAMS {
RECT rgrc[3];
PWINDOWPOS lppos;
} NCCALCSIZE_PARAMS,*LPNCCALCSIZE_PARAMS;
typedef struct tagTRACKMOUSEEVENT {
DWORD cbSize;
DWORD dwFlags;
HWND hwndTrack;
DWORD dwHoverTime;
} TRACKMOUSEEVENT,*LPTRACKMOUSEEVENT;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TrackMouseEvent(LPTRACKMOUSEEVENT lpEventTrack);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawEdge(HDC hdc,LPRECT qrc,UINT edge,UINT grfFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawFrameControl(HDC,LPRECT,UINT,UINT);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawCaption(HWND hwnd,HDC hdc,const RECT *lprect,UINT flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawAnimatedRects(HWND hwnd,int idAni,const RECT *lprcFrom,const RECT *lprcTo);
typedef struct tagACCEL {
BYTE fVirt;
WORD key;
WORD cmd;
} ACCEL,*LPACCEL;
typedef struct tagPAINTSTRUCT {
HDC hdc;
WINBOOL fErase;
RECT rcPaint;
WINBOOL fRestore;
WINBOOL fIncUpdate;
BYTE rgbReserved[32];
} PAINTSTRUCT,*PPAINTSTRUCT,*NPPAINTSTRUCT,*LPPAINTSTRUCT;
typedef struct tagCREATESTRUCTA {
LPVOID lpCreateParams;
HINSTANCE hInstance;
HMENU hMenu;
HWND hwndParent;
int cy;
int cx;
int y;
int x;
LONG style;
LPCSTR lpszName;
LPCSTR lpszClass;
DWORD dwExStyle;
} CREATESTRUCTA,*LPCREATESTRUCTA;
typedef struct tagCREATESTRUCTW {
LPVOID lpCreateParams;
HINSTANCE hInstance;
HMENU hMenu;
HWND hwndParent;
int cy;
int cx;
int y;
int x;
LONG style;
LPCWSTR lpszName;
LPCWSTR lpszClass;
DWORD dwExStyle;
} CREATESTRUCTW,*LPCREATESTRUCTW;
typedef CREATESTRUCTA CREATESTRUCT;
typedef LPCREATESTRUCTA LPCREATESTRUCT;
typedef struct tagWINDOWPLACEMENT {
UINT length;
UINT flags;
UINT showCmd;
POINT ptMinPosition;
POINT ptMaxPosition;
RECT rcNormalPosition;
} WINDOWPLACEMENT;
typedef WINDOWPLACEMENT *PWINDOWPLACEMENT,*LPWINDOWPLACEMENT;
typedef struct tagNMHDR {
HWND hwndFrom;
UINT_PTR idFrom;
UINT code;
} NMHDR;
typedef NMHDR *LPNMHDR;
typedef struct tagSTYLESTRUCT {
DWORD styleOld;
DWORD styleNew;
} STYLESTRUCT,*LPSTYLESTRUCT;
typedef struct tagMEASUREITEMSTRUCT {
UINT CtlType;
UINT CtlID;
UINT itemID;
UINT itemWidth;
UINT itemHeight;
ULONG_PTR itemData;
} MEASUREITEMSTRUCT,*PMEASUREITEMSTRUCT,*LPMEASUREITEMSTRUCT;
typedef struct tagDRAWITEMSTRUCT {
UINT CtlType;
UINT CtlID;
UINT itemID;
UINT itemAction;
UINT itemState;
HWND hwndItem;
HDC hDC;
RECT rcItem;
ULONG_PTR itemData;
} DRAWITEMSTRUCT,*PDRAWITEMSTRUCT,*LPDRAWITEMSTRUCT;
typedef struct tagDELETEITEMSTRUCT {
UINT CtlType;
UINT CtlID;
UINT itemID;
HWND hwndItem;
ULONG_PTR itemData;
} DELETEITEMSTRUCT,*PDELETEITEMSTRUCT,*LPDELETEITEMSTRUCT;
typedef struct tagCOMPAREITEMSTRUCT {
UINT CtlType;
UINT CtlID;
HWND hwndItem;
UINT itemID1;
ULONG_PTR itemData1;
UINT itemID2;
ULONG_PTR itemData2;
DWORD dwLocaleId;
} COMPAREITEMSTRUCT,*PCOMPAREITEMSTRUCT,*LPCOMPAREITEMSTRUCT;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMessageA(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMessageW(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TranslateMessage(const MSG *lpMsg);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DispatchMessageA(const MSG *lpMsg);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DispatchMessageW(const MSG *lpMsg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMessageQueue(int cMessagesMax);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PeekMessageA(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax,UINT wRemoveMsg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PeekMessageW(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax,UINT wRemoveMsg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RegisterHotKey(HWND hWnd,int id,UINT fsModifiers,UINT vk);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnregisterHotKey(HWND hWnd,int id);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ExitWindowsEx(UINT uFlags,DWORD dwReason);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SwapMouseButton(WINBOOL fSwap);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetMessagePos(void);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) GetMessageTime(void);
__attribute__((dllimport)) LPARAM __attribute__((__stdcall__)) GetMessageExtraInfo(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsWow64Message(void);
__attribute__((dllimport)) LPARAM __attribute__((__stdcall__)) SetMessageExtraInfo(LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) SendMessageA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) SendMessageW(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) SendMessageTimeoutA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,UINT fuFlags,UINT uTimeout,PDWORD_PTR lpdwResult);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) SendMessageTimeoutW(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,UINT fuFlags,UINT uTimeout,PDWORD_PTR lpdwResult);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SendNotifyMessageA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SendNotifyMessageW(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SendMessageCallbackA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,SENDASYNCPROC lpResultCallBack,ULONG_PTR dwData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SendMessageCallbackW(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,SENDASYNCPROC lpResultCallBack,ULONG_PTR dwData);
typedef struct {
UINT cbSize;
HDESK hdesk;
HWND hwnd;
LUID luid;
} BSMINFO,*PBSMINFO;
__attribute__((dllimport)) long __attribute__((__stdcall__)) BroadcastSystemMessageExA(DWORD flags,LPDWORD lpInfo,UINT Msg,WPARAM wParam,LPARAM lParam,PBSMINFO pbsmInfo);
__attribute__((dllimport)) long __attribute__((__stdcall__)) BroadcastSystemMessageExW(DWORD flags,LPDWORD lpInfo,UINT Msg,WPARAM wParam,LPARAM lParam,PBSMINFO pbsmInfo);
__attribute__((dllimport)) long __attribute__((__stdcall__)) BroadcastSystemMessageA(DWORD flags,LPDWORD lpInfo,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) long __attribute__((__stdcall__)) BroadcastSystemMessageW(DWORD flags,LPDWORD lpInfo,UINT Msg,WPARAM wParam,LPARAM lParam);
typedef PVOID HDEVNOTIFY;
typedef HDEVNOTIFY *PHDEVNOTIFY;
typedef HANDLE HPOWERNOTIFY;
typedef HPOWERNOTIFY *PHPOWERNOTIFY;
__attribute__((dllimport)) HPOWERNOTIFY __attribute__((__stdcall__)) RegisterPowerSettingNotification (HANDLE hRecipient, LPCGUID PowerSettingGuid, DWORD Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnregisterPowerSettingNotification (HPOWERNOTIFY Handle);
__attribute__((dllimport)) HPOWERNOTIFY __attribute__((__stdcall__)) RegisterSuspendResumeNotification (HANDLE hRecipient, DWORD Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnregisterSuspendResumeNotification (HPOWERNOTIFY Handle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PostMessageA (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PostMessageW (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PostThreadMessageA (DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PostThreadMessageW (DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AttachThreadInput (DWORD idAttach, DWORD idAttachTo, WINBOOL fAttach);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReplyMessage (LRESULT lResult);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WaitMessage (void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WaitForInputIdle (HANDLE hProcess, DWORD dwMilliseconds);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefWindowProcA (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefWindowProcW (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
__attribute__((dllimport)) void __attribute__((__stdcall__)) PostQuitMessage (int nExitCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InSendMessage (void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InSendMessageEx (LPVOID lpReserved);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetDoubleClickTime (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDoubleClickTime (UINT);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) RegisterClassA (const WNDCLASSA *lpWndClass);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) RegisterClassW (const WNDCLASSW *lpWndClass);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnregisterClassA (LPCSTR lpClassName, HINSTANCE hInstance);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnregisterClassW (LPCWSTR lpClassName, HINSTANCE hInstance);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetClassInfoA (HINSTANCE hInstance, LPCSTR lpClassName, LPWNDCLASSA lpWndClass);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetClassInfoW (HINSTANCE hInstance, LPCWSTR lpClassName, LPWNDCLASSW lpWndClass);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) RegisterClassExA (const WNDCLASSEXA *);
__attribute__((dllimport)) ATOM __attribute__((__stdcall__)) RegisterClassExW (const WNDCLASSEXW *);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetClassInfoExA (HINSTANCE hInstance, LPCSTR lpszClass, LPWNDCLASSEXA lpwcx);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetClassInfoExW (HINSTANCE hInstance, LPCWSTR lpszClass, LPWNDCLASSEXW lpwcx);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) CallWindowProcA (WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) CallWindowProcW (WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
extern const GUID GUID_POWERSCHEME_PERSONALITY;
extern const GUID GUID_MIN_POWER_SAVINGS;
extern const GUID GUID_MAX_POWER_SAVINGS;
extern const GUID GUID_TYPICAL_POWER_SAVINGS;
extern const GUID GUID_ACDC_POWER_SOURCE;
extern const GUID GUID_BATTERY_PERCENTAGE_REMAINING;
extern const GUID GUID_IDLE_BACKGROUND_TASK;
extern const GUID GUID_SYSTEM_AWAYMODE;
extern const GUID GUID_MONITOR_POWER_ON;
__attribute__((dllimport)) HDEVNOTIFY __attribute__((__stdcall__)) RegisterDeviceNotificationA(HANDLE hRecipient,LPVOID NotificationFilter,DWORD Flags);
__attribute__((dllimport)) HDEVNOTIFY __attribute__((__stdcall__)) RegisterDeviceNotificationW(HANDLE hRecipient,LPVOID NotificationFilter,DWORD Flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnregisterDeviceNotification(HDEVNOTIFY Handle);
typedef BOOLEAN (__attribute__((__stdcall__)) *PREGISTERCLASSNAMEW)(LPCWSTR);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) CreateWindowExA(DWORD dwExStyle,LPCSTR lpClassName,LPCSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HINSTANCE hInstance,LPVOID lpParam);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) CreateWindowExW(DWORD dwExStyle,LPCWSTR lpClassName,LPCWSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HINSTANCE hInstance,LPVOID lpParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsWindow(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsMenu(HMENU hMenu);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsChild(HWND hWndParent,HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DestroyWindow(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShowWindow(HWND hWnd,int nCmdShow);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AnimateWindow(HWND hWnd,DWORD dwTime,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UpdateLayeredWindow (HWND hWnd, HDC hdcDst, POINT *pptDst, SIZE *psize, HDC hdcSrc, POINT *pptSrc, COLORREF crKey, BLENDFUNCTION *pblend, DWORD dwFlags);
typedef struct tagUPDATELAYEREDWINDOWINFO {
DWORD cbSize;
HDC hdcDst;
const POINT *pptDst;
const SIZE *psize;
HDC hdcSrc;
const POINT *pptSrc;
COLORREF crKey;
const BLENDFUNCTION *pblend;
DWORD dwFlags;
const RECT *prcDirty;
} UPDATELAYEREDWINDOWINFO,*PUPDATELAYEREDWINDOWINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UpdateLayeredWindowIndirect (HWND hWnd, const UPDATELAYEREDWINDOWINFO *pULWInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetLayeredWindowAttributes (HWND hwnd, COLORREF *pcrKey, BYTE *pbAlpha, DWORD *pdwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PrintWindow (HWND hwnd, HDC hdcBlt, UINT nFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetLayeredWindowAttributes (HWND hwnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags);
typedef struct {
UINT cbSize;
HWND hwnd;
DWORD dwFlags;
UINT uCount;
DWORD dwTimeout;
} FLASHWINFO,*PFLASHWINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShowWindowAsync (HWND hWnd, int nCmdShow);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FlashWindow (HWND hWnd, WINBOOL bInvert);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FlashWindowEx (PFLASHWINFO pfwi);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShowOwnedPopups (HWND hWnd, WINBOOL fShow);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OpenIcon (HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CloseWindow (HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MoveWindow (HWND hWnd, int X, int Y, int nWidth, int nHeight, WINBOOL bRepaint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWindowPos (HWND hWnd, HWND hWndInsertAfter, int X, int Y, int cx, int cy, UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetWindowPlacement (HWND hWnd, WINDOWPLACEMENT *lpwndpl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWindowPlacement (HWND hWnd, const WINDOWPLACEMENT *lpwndpl);
__attribute__((dllimport)) HDWP __attribute__((__stdcall__)) BeginDeferWindowPos (int nNumWindows);
__attribute__((dllimport)) HDWP __attribute__((__stdcall__)) DeferWindowPos (HDWP hWinPosInfo, HWND hWnd, HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EndDeferWindowPos (HDWP hWinPosInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsWindowVisible (HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsIconic (HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AnyPopup (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BringWindowToTop (HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsZoomed (HWND hWnd);
#pragma pack(push,2)
typedef struct {
DWORD style;
DWORD dwExtendedStyle;
WORD cdit;
short x;
short y;
short cx;
short cy;
} DLGTEMPLATE;
typedef DLGTEMPLATE *LPDLGTEMPLATEA;
typedef DLGTEMPLATE *LPDLGTEMPLATEW;
typedef LPDLGTEMPLATEA LPDLGTEMPLATE;
typedef const DLGTEMPLATE *LPCDLGTEMPLATEA;
typedef const DLGTEMPLATE *LPCDLGTEMPLATEW;
typedef LPCDLGTEMPLATEA LPCDLGTEMPLATE;
typedef struct {
DWORD style;
DWORD dwExtendedStyle;
short x;
short y;
short cx;
short cy;
WORD id;
} DLGITEMTEMPLATE;
typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATEA;
typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATEW;
typedef PDLGITEMTEMPLATEA PDLGITEMTEMPLATE;
typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEA;
typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEW;
typedef LPDLGITEMTEMPLATEA LPDLGITEMTEMPLATE;
#pragma pack(pop)
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) CreateDialogParamA(HINSTANCE hInstance,LPCSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) CreateDialogParamW(HINSTANCE hInstance,LPCWSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) CreateDialogIndirectParamA(HINSTANCE hInstance,LPCDLGTEMPLATEA lpTemplate,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) CreateDialogIndirectParamW(HINSTANCE hInstance,LPCDLGTEMPLATEW lpTemplate,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
__attribute__((dllimport)) INT_PTR __attribute__((__stdcall__)) DialogBoxParamA(HINSTANCE hInstance,LPCSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
__attribute__((dllimport)) INT_PTR __attribute__((__stdcall__)) DialogBoxParamW(HINSTANCE hInstance,LPCWSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
__attribute__((dllimport)) INT_PTR __attribute__((__stdcall__)) DialogBoxIndirectParamA(HINSTANCE hInstance,LPCDLGTEMPLATEA hDialogTemplate,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
__attribute__((dllimport)) INT_PTR __attribute__((__stdcall__)) DialogBoxIndirectParamW(HINSTANCE hInstance,LPCDLGTEMPLATEW hDialogTemplate,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EndDialog(HWND hDlg,INT_PTR nResult);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetDlgItem(HWND hDlg,int nIDDlgItem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDlgItemInt(HWND hDlg,int nIDDlgItem,UINT uValue,WINBOOL bSigned);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetDlgItemInt(HWND hDlg,int nIDDlgItem,WINBOOL *lpTranslated,WINBOOL bSigned);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDlgItemTextA(HWND hDlg,int nIDDlgItem,LPCSTR lpString);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetDlgItemTextW(HWND hDlg,int nIDDlgItem,LPCWSTR lpString);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetDlgItemTextA(HWND hDlg,int nIDDlgItem,LPSTR lpString,int cchMax);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetDlgItemTextW(HWND hDlg,int nIDDlgItem,LPWSTR lpString,int cchMax);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CheckDlgButton(HWND hDlg,int nIDButton,UINT uCheck);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CheckRadioButton(HWND hDlg,int nIDFirstButton,int nIDLastButton,int nIDCheckButton);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) IsDlgButtonChecked(HWND hDlg,int nIDButton);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) SendDlgItemMessageA(HWND hDlg,int nIDDlgItem,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) SendDlgItemMessageW(HWND hDlg,int nIDDlgItem,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetNextDlgGroupItem(HWND hDlg,HWND hCtl,WINBOOL bPrevious);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetNextDlgTabItem(HWND hDlg,HWND hCtl,WINBOOL bPrevious);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetDlgCtrlID(HWND hWnd);
__attribute__((dllimport)) long __attribute__((__stdcall__)) GetDialogBaseUnits(void);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefDlgProcA(HWND hDlg,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefDlgProcW(HWND hDlg,UINT Msg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CallMsgFilterA(LPMSG lpMsg,int nCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CallMsgFilterW(LPMSG lpMsg,int nCode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OpenClipboard(HWND hWndNewOwner);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CloseClipboard(void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetClipboardSequenceNumber(void);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetClipboardOwner(void);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) SetClipboardViewer(HWND hWndNewViewer);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetClipboardViewer(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChangeClipboardChain(HWND hWndRemove, HWND hWndNewNext);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) SetClipboardData(UINT uFormat, HANDLE hMem);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) GetClipboardData(UINT uFormat);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) RegisterClipboardFormatA(LPCSTR lpszFormat);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) RegisterClipboardFormatW(LPCWSTR lpszFormat);
__attribute__((dllimport)) int __attribute__((__stdcall__)) CountClipboardFormats(void);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) EnumClipboardFormats(UINT format);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetClipboardFormatNameA(UINT format, LPSTR lpszFormatName, int cchMaxCount);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetClipboardFormatNameW(UINT format, LPWSTR lpszFormatName, int cchMaxCount);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EmptyClipboard(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsClipboardFormatAvailable(UINT format);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetPriorityClipboardFormat(UINT *paFormatPriorityList, int cFormats);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetOpenClipboardWindow(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CharToOemA(LPCSTR lpszSrc,LPSTR lpszDst);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CharToOemW(LPCWSTR lpszSrc,LPSTR lpszDst);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OemToCharA(LPCSTR lpszSrc,LPSTR lpszDst);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OemToCharW(LPCSTR lpszSrc,LPWSTR lpszDst);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CharToOemBuffA(LPCSTR lpszSrc,LPSTR lpszDst,DWORD cchDstLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CharToOemBuffW(LPCWSTR lpszSrc,LPSTR lpszDst,DWORD cchDstLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OemToCharBuffA(LPCSTR lpszSrc,LPSTR lpszDst,DWORD cchDstLength);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OemToCharBuffW(LPCSTR lpszSrc,LPWSTR lpszDst,DWORD cchDstLength);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) CharUpperA(LPSTR lpsz);
__attribute__((dllimport)) LPWSTR __attribute__((__stdcall__)) CharUpperW(LPWSTR lpsz);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CharUpperBuffA(LPSTR lpsz,DWORD cchLength);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CharUpperBuffW(LPWSTR lpsz,DWORD cchLength);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) CharLowerA(LPSTR lpsz);
__attribute__((dllimport)) LPWSTR __attribute__((__stdcall__)) CharLowerW(LPWSTR lpsz);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CharLowerBuffA(LPSTR lpsz,DWORD cchLength);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CharLowerBuffW(LPWSTR lpsz,DWORD cchLength);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) CharNextA(LPCSTR lpsz);
__attribute__((dllimport)) LPWSTR __attribute__((__stdcall__)) CharNextW(LPCWSTR lpsz);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) CharPrevA(LPCSTR lpszStart,LPCSTR lpszCurrent);
__attribute__((dllimport)) LPWSTR __attribute__((__stdcall__)) CharPrevW(LPCWSTR lpszStart,LPCWSTR lpszCurrent);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) CharNextExA(WORD CodePage,LPCSTR lpCurrentChar,DWORD dwFlags);
__attribute__((dllimport)) LPSTR __attribute__((__stdcall__)) CharPrevExA(WORD CodePage,LPCSTR lpStart,LPCSTR lpCurrentChar,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsCharAlphaA(CHAR ch);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsCharAlphaW(WCHAR ch);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsCharAlphaNumericA(CHAR ch);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsCharAlphaNumericW(WCHAR ch);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsCharUpperA(CHAR ch);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsCharUpperW(WCHAR ch);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsCharLowerA(CHAR ch);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsCharLowerW(WCHAR ch);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) SetFocus(HWND hWnd);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetActiveWindow(void);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetFocus(void);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetKBCodePage(void);
__attribute__((dllimport)) SHORT __attribute__((__stdcall__)) GetKeyState(int nVirtKey);
__attribute__((dllimport)) SHORT __attribute__((__stdcall__)) GetAsyncKeyState(int vKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetKeyboardState(PBYTE lpKeyState);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetKeyboardState(LPBYTE lpKeyState);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetKeyNameTextA(LONG lParam,LPSTR lpString,int cchSize);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetKeyNameTextW(LONG lParam,LPWSTR lpString,int cchSize);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetKeyboardType(int nTypeFlag);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ToAscii(UINT uVirtKey,UINT uScanCode,const BYTE *lpKeyState,LPWORD lpChar,UINT uFlags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ToAsciiEx(UINT uVirtKey,UINT uScanCode,const BYTE *lpKeyState,LPWORD lpChar,UINT uFlags,HKL dwhkl);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ToUnicode(UINT wVirtKey,UINT wScanCode,const BYTE *lpKeyState,LPWSTR pwszBuff,int cchBuff,UINT wFlags);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) OemKeyScan(WORD wOemChar);
__attribute__((dllimport)) SHORT __attribute__((__stdcall__)) VkKeyScanA(CHAR ch);
__attribute__((dllimport)) SHORT __attribute__((__stdcall__)) VkKeyScanW(WCHAR ch);
__attribute__((dllimport)) SHORT __attribute__((__stdcall__)) VkKeyScanExA(CHAR ch,HKL dwhkl);
__attribute__((dllimport)) SHORT __attribute__((__stdcall__)) VkKeyScanExW(WCHAR ch,HKL dwhkl);
__attribute__((dllimport)) void __attribute__((__stdcall__)) keybd_event(BYTE bVk,BYTE bScan,DWORD dwFlags,ULONG_PTR dwExtraInfo);
__attribute__((dllimport)) void __attribute__((__stdcall__)) mouse_event(DWORD dwFlags,DWORD dx,DWORD dy,DWORD dwData,ULONG_PTR dwExtraInfo);
typedef struct tagMOUSEINPUT {
LONG dx;
LONG dy;
DWORD mouseData;
DWORD dwFlags;
DWORD time;
ULONG_PTR dwExtraInfo;
} MOUSEINPUT,*PMOUSEINPUT,*LPMOUSEINPUT;
typedef struct tagKEYBDINPUT {
WORD wVk;
WORD wScan;
DWORD dwFlags;
DWORD time;
ULONG_PTR dwExtraInfo;
} KEYBDINPUT,*PKEYBDINPUT,*LPKEYBDINPUT;
typedef struct tagHARDWAREINPUT {
DWORD uMsg;
WORD wParamL;
WORD wParamH;
} HARDWAREINPUT,*PHARDWAREINPUT,*LPHARDWAREINPUT;
typedef struct tagINPUT {
DWORD type;
__extension__ union {
MOUSEINPUT mi;
KEYBDINPUT ki;
HARDWAREINPUT hi;
} ;
} INPUT,*PINPUT,*LPINPUT;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) SendInput(UINT cInputs,LPINPUT pInputs,int cbSize);
typedef struct tagLASTINPUTINFO {
UINT cbSize;
DWORD dwTime;
} LASTINPUTINFO,*PLASTINPUTINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetLastInputInfo(PLASTINPUTINFO plii);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) MapVirtualKeyA(UINT uCode,UINT uMapType);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) MapVirtualKeyW(UINT uCode,UINT uMapType);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) MapVirtualKeyExA(UINT uCode,UINT uMapType,HKL dwhkl);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) MapVirtualKeyExW(UINT uCode,UINT uMapType,HKL dwhkl);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetInputState(void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetQueueStatus(UINT flags);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetCapture(void);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) SetCapture(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReleaseCapture(void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) MsgWaitForMultipleObjects(DWORD nCount,const HANDLE *pHandles,WINBOOL fWaitAll,DWORD dwMilliseconds,DWORD dwWakeMask);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) MsgWaitForMultipleObjectsEx(DWORD nCount,const HANDLE *pHandles,DWORD dwMilliseconds,DWORD dwWakeMask,DWORD dwFlags);
__attribute__((dllimport)) UINT_PTR __attribute__((__stdcall__)) SetTimer(HWND hWnd,UINT_PTR nIDEvent,UINT uElapse,TIMERPROC lpTimerFunc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) KillTimer(HWND hWnd,UINT_PTR uIDEvent);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsWindowUnicode(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnableWindow(HWND hWnd,WINBOOL bEnable);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsWindowEnabled(HWND hWnd);
__attribute__((dllimport)) HACCEL __attribute__((__stdcall__)) LoadAcceleratorsA(HINSTANCE hInstance,LPCSTR lpTableName);
__attribute__((dllimport)) HACCEL __attribute__((__stdcall__)) LoadAcceleratorsW(HINSTANCE hInstance,LPCWSTR lpTableName);
__attribute__((dllimport)) HACCEL __attribute__((__stdcall__)) CreateAcceleratorTableA(LPACCEL paccel,int cAccel);
__attribute__((dllimport)) HACCEL __attribute__((__stdcall__)) CreateAcceleratorTableW(LPACCEL paccel,int cAccel);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DestroyAcceleratorTable(HACCEL hAccel);
__attribute__((dllimport)) int __attribute__((__stdcall__)) CopyAcceleratorTableA(HACCEL hAccelSrc,LPACCEL lpAccelDst,int cAccelEntries);
__attribute__((dllimport)) int __attribute__((__stdcall__)) CopyAcceleratorTableW(HACCEL hAccelSrc,LPACCEL lpAccelDst,int cAccelEntries);
__attribute__((dllimport)) int __attribute__((__stdcall__)) TranslateAcceleratorA(HWND hWnd,HACCEL hAccTable,LPMSG lpMsg);
__attribute__((dllimport)) int __attribute__((__stdcall__)) TranslateAcceleratorW(HWND hWnd,HACCEL hAccTable,LPMSG lpMsg);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetSystemMetrics(int nIndex);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) LoadMenuA(HINSTANCE hInstance,LPCSTR lpMenuName);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) LoadMenuW(HINSTANCE hInstance,LPCWSTR lpMenuName);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) LoadMenuIndirectA(const MENUTEMPLATEA *lpMenuTemplate);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) LoadMenuIndirectW(const MENUTEMPLATEW *lpMenuTemplate);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) GetMenu(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMenu(HWND hWnd,HMENU hMenu);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChangeMenuA(HMENU hMenu,UINT cmd,LPCSTR lpszNewItem,UINT cmdInsert,UINT flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChangeMenuW(HMENU hMenu,UINT cmd,LPCWSTR lpszNewItem,UINT cmdInsert,UINT flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HiliteMenuItem(HWND hWnd,HMENU hMenu,UINT uIDHiliteItem,UINT uHilite);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetMenuStringA(HMENU hMenu,UINT uIDItem,LPSTR lpString,int cchMax,UINT flags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetMenuStringW(HMENU hMenu,UINT uIDItem,LPWSTR lpString,int cchMax,UINT flags);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetMenuState(HMENU hMenu,UINT uId,UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawMenuBar(HWND hWnd);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) GetSystemMenu(HWND hWnd,WINBOOL bRevert);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) CreateMenu(void);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) CreatePopupMenu(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DestroyMenu(HMENU hMenu);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CheckMenuItem(HMENU hMenu,UINT uIDCheckItem,UINT uCheck);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnableMenuItem(HMENU hMenu,UINT uIDEnableItem,UINT uEnable);
__attribute__((dllimport)) HMENU __attribute__((__stdcall__)) GetSubMenu(HMENU hMenu,int nPos);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetMenuItemID(HMENU hMenu,int nPos);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetMenuItemCount(HMENU hMenu);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InsertMenuA(HMENU hMenu,UINT uPosition,UINT uFlags,UINT_PTR uIDNewItem,LPCSTR lpNewItem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InsertMenuW(HMENU hMenu,UINT uPosition,UINT uFlags,UINT_PTR uIDNewItem,LPCWSTR lpNewItem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AppendMenuA(HMENU hMenu,UINT uFlags,UINT_PTR uIDNewItem,LPCSTR lpNewItem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AppendMenuW(HMENU hMenu,UINT uFlags,UINT_PTR uIDNewItem,LPCWSTR lpNewItem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ModifyMenuA(HMENU hMnu,UINT uPosition,UINT uFlags,UINT_PTR uIDNewItem,LPCSTR lpNewItem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ModifyMenuW(HMENU hMnu,UINT uPosition,UINT uFlags,UINT_PTR uIDNewItem,LPCWSTR lpNewItem);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RemoveMenu(HMENU hMenu,UINT uPosition,UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteMenu(HMENU hMenu,UINT uPosition,UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMenuItemBitmaps(HMENU hMenu,UINT uPosition,UINT uFlags,HBITMAP hBitmapUnchecked,HBITMAP hBitmapChecked);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) GetMenuCheckMarkDimensions(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TrackPopupMenu(HMENU hMenu,UINT uFlags,int x,int y,int nReserved,HWND hWnd,const RECT *prcRect);
typedef struct tagTPMPARAMS {
UINT cbSize;
RECT rcExclude;
} TPMPARAMS;
typedef struct tagMENUINFO {
DWORD cbSize;
DWORD fMask;
DWORD dwStyle;
UINT cyMax;
HBRUSH hbrBack;
DWORD dwContextHelpID;
ULONG_PTR dwMenuData;
} MENUINFO,*LPMENUINFO;
typedef TPMPARAMS *LPTPMPARAMS;
typedef MENUINFO const *LPCMENUINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TrackPopupMenuEx(HMENU,UINT,int,int,HWND,LPTPMPARAMS);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMenuInfo(HMENU,LPMENUINFO);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMenuInfo(HMENU,LPCMENUINFO);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EndMenu(void);
typedef struct tagMENUGETOBJECTINFO {
DWORD dwFlags;
UINT uPos;
HMENU hmenu;
PVOID riid;
PVOID pvObj;
} MENUGETOBJECTINFO,*PMENUGETOBJECTINFO;
typedef struct tagMENUITEMINFOA {
UINT cbSize;
UINT fMask;
UINT fType;
UINT fState;
UINT wID;
HMENU hSubMenu;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
ULONG_PTR dwItemData;
LPSTR dwTypeData;
UINT cch;
HBITMAP hbmpItem;
} MENUITEMINFOA,*LPMENUITEMINFOA;
typedef struct tagMENUITEMINFOW {
UINT cbSize;
UINT fMask;
UINT fType;
UINT fState;
UINT wID;
HMENU hSubMenu;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
ULONG_PTR dwItemData;
LPWSTR dwTypeData;
UINT cch;
HBITMAP hbmpItem;
} MENUITEMINFOW,*LPMENUITEMINFOW;
typedef MENUITEMINFOA MENUITEMINFO;
typedef LPMENUITEMINFOA LPMENUITEMINFO;
typedef MENUITEMINFOA const *LPCMENUITEMINFOA;
typedef MENUITEMINFOW const *LPCMENUITEMINFOW;
typedef LPCMENUITEMINFOA LPCMENUITEMINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InsertMenuItemA(HMENU hmenu,UINT item,WINBOOL fByPosition,LPCMENUITEMINFOA lpmi);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InsertMenuItemW(HMENU hmenu,UINT item,WINBOOL fByPosition,LPCMENUITEMINFOW lpmi);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMenuItemInfoA(HMENU hmenu,UINT item,WINBOOL fByPosition,LPMENUITEMINFOA lpmii);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMenuItemInfoW(HMENU hmenu,UINT item,WINBOOL fByPosition,LPMENUITEMINFOW lpmii);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMenuItemInfoA(HMENU hmenu,UINT item,WINBOOL fByPositon,LPCMENUITEMINFOA lpmii);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMenuItemInfoW(HMENU hmenu,UINT item,WINBOOL fByPositon,LPCMENUITEMINFOW lpmii);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetMenuDefaultItem(HMENU hMenu,UINT fByPos,UINT gmdiFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMenuDefaultItem(HMENU hMenu,UINT uItem,UINT fByPos);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMenuItemRect(HWND hWnd,HMENU hMenu,UINT uItem,LPRECT lprcItem);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MenuItemFromPoint(HWND hWnd,HMENU hMenu,POINT ptScreen);
typedef struct tagDROPSTRUCT {
HWND hwndSource;
HWND hwndSink;
DWORD wFmt;
ULONG_PTR dwData;
POINT ptDrop;
DWORD dwControlData;
} DROPSTRUCT,*PDROPSTRUCT,*LPDROPSTRUCT;
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) DragObject(HWND hwndParent,HWND hwndFrom,UINT fmt,ULONG_PTR data,HCURSOR hcur);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DragDetect(HWND hwnd,POINT pt);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawIcon(HDC hDC,int X,int Y,HICON hIcon);
typedef struct tagDRAWTEXTPARAMS {
UINT cbSize;
int iTabLength;
int iLeftMargin;
int iRightMargin;
UINT uiLengthDrawn;
} DRAWTEXTPARAMS,*LPDRAWTEXTPARAMS;
__attribute__((dllimport)) int __attribute__((__stdcall__)) DrawTextA(HDC hdc,LPCSTR lpchText,int cchText,LPRECT lprc,UINT format);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DrawTextW(HDC hdc,LPCWSTR lpchText,int cchText,LPRECT lprc,UINT format);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DrawTextExA(HDC hdc,LPSTR lpchText,int cchText,LPRECT lprc,UINT format,LPDRAWTEXTPARAMS lpdtp);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DrawTextExW(HDC hdc,LPWSTR lpchText,int cchText,LPRECT lprc,UINT format,LPDRAWTEXTPARAMS lpdtp);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GrayStringA(HDC hDC,HBRUSH hBrush,GRAYSTRINGPROC lpOutputFunc,LPARAM lpData,int nCount,int X,int Y,int nWidth,int nHeight);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GrayStringW(HDC hDC,HBRUSH hBrush,GRAYSTRINGPROC lpOutputFunc,LPARAM lpData,int nCount,int X,int Y,int nWidth,int nHeight);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawStateA(HDC hdc,HBRUSH hbrFore,DRAWSTATEPROC qfnCallBack,LPARAM lData,WPARAM wData,int x,int y,int cx,int cy,UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawStateW(HDC hdc,HBRUSH hbrFore,DRAWSTATEPROC qfnCallBack,LPARAM lData,WPARAM wData,int x,int y,int cx,int cy,UINT uFlags);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) TabbedTextOutA(HDC hdc,int x,int y,LPCSTR lpString,int chCount,int nTabPositions,const INT *lpnTabStopPositions,int nTabOrigin);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) TabbedTextOutW(HDC hdc,int x,int y,LPCWSTR lpString,int chCount,int nTabPositions,const INT *lpnTabStopPositions,int nTabOrigin);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTabbedTextExtentA(HDC hdc,LPCSTR lpString,int chCount,int nTabPositions,const INT *lpnTabStopPositions);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetTabbedTextExtentW(HDC hdc,LPCWSTR lpString,int chCount,int nTabPositions,const INT *lpnTabStopPositions);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UpdateWindow(HWND hWnd);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) SetActiveWindow(HWND hWnd);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetForegroundWindow(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PaintDesktop(HDC hdc);
__attribute__((dllimport)) void __attribute__((__stdcall__)) SwitchToThisWindow(HWND hwnd,WINBOOL fUnknown);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetForegroundWindow(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AllowSetForegroundWindow(DWORD dwProcessId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LockSetForegroundWindow(UINT uLockCode);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) WindowFromDC(HDC hDC);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) GetDC(HWND hWnd);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) GetDCEx(HWND hWnd,HRGN hrgnClip,DWORD flags);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) GetWindowDC(HWND hWnd);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ReleaseDC(HWND hWnd,HDC hDC);
__attribute__((dllimport)) HDC __attribute__((__stdcall__)) BeginPaint(HWND hWnd,LPPAINTSTRUCT lpPaint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EndPaint(HWND hWnd,const PAINTSTRUCT *lpPaint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUpdateRect(HWND hWnd,LPRECT lpRect,WINBOOL bErase);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetUpdateRgn(HWND hWnd,HRGN hRgn,WINBOOL bErase);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetWindowRgn(HWND hWnd,HRGN hRgn,WINBOOL bRedraw);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetWindowRgn(HWND hWnd,HRGN hRgn);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetWindowRgnBox(HWND hWnd,LPRECT lprc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ExcludeUpdateRgn(HDC hDC,HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InvalidateRect(HWND hWnd,const RECT *lpRect,WINBOOL bErase);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ValidateRect(HWND hWnd,const RECT *lpRect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InvalidateRgn(HWND hWnd,HRGN hRgn,WINBOOL bErase);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ValidateRgn(HWND hWnd,HRGN hRgn);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RedrawWindow(HWND hWnd,const RECT *lprcUpdate,HRGN hrgnUpdate,UINT flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LockWindowUpdate(HWND hWndLock);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ScrollWindow(HWND hWnd,int XAmount,int YAmount,const RECT *lpRect,const RECT *lpClipRect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ScrollDC(HDC hDC,int dx,int dy,const RECT *lprcScroll,const RECT *lprcClip,HRGN hrgnUpdate,LPRECT lprcUpdate);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ScrollWindowEx(HWND hWnd,int dx,int dy,const RECT *prcScroll,const RECT *prcClip,HRGN hrgnUpdate,LPRECT prcUpdate,UINT flags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetScrollPos(HWND hWnd,int nBar,int nPos,WINBOOL bRedraw);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetScrollPos(HWND hWnd,int nBar);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetScrollRange(HWND hWnd,int nBar,int nMinPos,int nMaxPos,WINBOOL bRedraw);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetScrollRange(HWND hWnd,int nBar,LPINT lpMinPos,LPINT lpMaxPos);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShowScrollBar(HWND hWnd,int wBar,WINBOOL bShow);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnableScrollBar(HWND hWnd,UINT wSBflags,UINT wArrows);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetPropA(HWND hWnd,LPCSTR lpString,HANDLE hData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetPropW(HWND hWnd,LPCWSTR lpString,HANDLE hData);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) GetPropA(HWND hWnd,LPCSTR lpString);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) GetPropW(HWND hWnd,LPCWSTR lpString);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) RemovePropA(HWND hWnd,LPCSTR lpString);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) RemovePropW(HWND hWnd,LPCWSTR lpString);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumPropsExA(HWND hWnd,PROPENUMPROCEXA lpEnumFunc,LPARAM lParam);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumPropsExW(HWND hWnd,PROPENUMPROCEXW lpEnumFunc,LPARAM lParam);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumPropsA(HWND hWnd,PROPENUMPROCA lpEnumFunc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) EnumPropsW(HWND hWnd,PROPENUMPROCW lpEnumFunc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWindowTextA(HWND hWnd,LPCSTR lpString);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWindowTextW(HWND hWnd,LPCWSTR lpString);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetWindowTextA(HWND hWnd,LPSTR lpString,int nMaxCount);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetWindowTextW(HWND hWnd,LPWSTR lpString,int nMaxCount);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetWindowTextLengthA(HWND hWnd);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetWindowTextLengthW(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetClientRect(HWND hWnd,LPRECT lpRect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetWindowRect(HWND hWnd,LPRECT lpRect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AdjustWindowRect(LPRECT lpRect,DWORD dwStyle,WINBOOL bMenu);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AdjustWindowRectEx(LPRECT lpRect,DWORD dwStyle,WINBOOL bMenu,DWORD dwExStyle);
typedef struct tagHELPINFO {
UINT cbSize;
int iContextType;
int iCtrlId;
HANDLE hItemHandle;
DWORD_PTR dwContextId;
POINT MousePos;
} HELPINFO,*LPHELPINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetWindowContextHelpId(HWND,DWORD);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetWindowContextHelpId(HWND);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetMenuContextHelpId(HMENU,DWORD);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetMenuContextHelpId(HMENU);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MessageBoxA(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption,UINT uType);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MessageBoxW(HWND hWnd,LPCWSTR lpText,LPCWSTR lpCaption,UINT uType);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MessageBoxExA(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption,UINT uType,WORD wLanguageId);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MessageBoxExW(HWND hWnd,LPCWSTR lpText,LPCWSTR lpCaption,UINT uType,WORD wLanguageId);
typedef void (__attribute__((__stdcall__)) *MSGBOXCALLBACK)(LPHELPINFO lpHelpInfo);
typedef struct tagMSGBOXPARAMSA {
UINT cbSize;
HWND hwndOwner;
HINSTANCE hInstance;
LPCSTR lpszText;
LPCSTR lpszCaption;
DWORD dwStyle;
LPCSTR lpszIcon;
DWORD_PTR dwContextHelpId;
MSGBOXCALLBACK lpfnMsgBoxCallback;
DWORD dwLanguageId;
} MSGBOXPARAMSA,*PMSGBOXPARAMSA,*LPMSGBOXPARAMSA;
typedef struct tagMSGBOXPARAMSW {
UINT cbSize;
HWND hwndOwner;
HINSTANCE hInstance;
LPCWSTR lpszText;
LPCWSTR lpszCaption;
DWORD dwStyle;
LPCWSTR lpszIcon;
DWORD_PTR dwContextHelpId;
MSGBOXCALLBACK lpfnMsgBoxCallback;
DWORD dwLanguageId;
} MSGBOXPARAMSW,*PMSGBOXPARAMSW,*LPMSGBOXPARAMSW;
typedef MSGBOXPARAMSA MSGBOXPARAMS;
typedef PMSGBOXPARAMSA PMSGBOXPARAMS;
typedef LPMSGBOXPARAMSA LPMSGBOXPARAMS;
__attribute__((dllimport)) int __attribute__((__stdcall__)) MessageBoxIndirectA(const MSGBOXPARAMSA *lpmbp);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MessageBoxIndirectW(const MSGBOXPARAMSW *lpmbp);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MessageBeep(UINT uType);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ShowCursor(WINBOOL bShow);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCursorPos(int X,int Y);
__attribute__((dllimport)) HCURSOR __attribute__((__stdcall__)) SetCursor(HCURSOR hCursor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCursorPos(LPPOINT lpPoint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ClipCursor(const RECT *lpRect);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetClipCursor(LPRECT lpRect);
__attribute__((dllimport)) HCURSOR __attribute__((__stdcall__)) GetCursor(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateCaret(HWND hWnd,HBITMAP hBitmap,int nWidth,int nHeight);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetCaretBlinkTime(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCaretBlinkTime(UINT uMSeconds);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DestroyCaret(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HideCaret(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShowCaret(HWND hWnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCaretPos(int X,int Y);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCaretPos(LPPOINT lpPoint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ClientToScreen(HWND hWnd,LPPOINT lpPoint);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ScreenToClient(HWND hWnd,LPPOINT lpPoint);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MapWindowPoints(HWND hWndFrom,HWND hWndTo,LPPOINT lpPoints,UINT cPoints);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) WindowFromPoint(POINT Point);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) ChildWindowFromPoint(HWND hWndParent,POINT Point);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) ChildWindowFromPointEx(HWND hwnd,POINT pt,UINT flags);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetSysColor(int nIndex);
__attribute__((dllimport)) HBRUSH __attribute__((__stdcall__)) GetSysColorBrush(int nIndex);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSysColors(int cElements,const INT *lpaElements,const COLORREF *lpaRgbValues);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawFocusRect(HDC hDC,const RECT *lprc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) FillRect(HDC hDC,const RECT *lprc,HBRUSH hbr);
__attribute__((dllimport)) int __attribute__((__stdcall__)) FrameRect(HDC hDC,const RECT *lprc,HBRUSH hbr);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InvertRect(HDC hDC,const RECT *lprc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetRect(LPRECT lprc,int xLeft,int yTop,int xRight,int yBottom);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetRectEmpty(LPRECT lprc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CopyRect(LPRECT lprcDst,const RECT *lprcSrc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InflateRect(LPRECT lprc,int dx,int dy);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IntersectRect(LPRECT lprcDst,const RECT *lprcSrc1,const RECT *lprcSrc2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnionRect(LPRECT lprcDst,const RECT *lprcSrc1,const RECT *lprcSrc2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SubtractRect(LPRECT lprcDst,const RECT *lprcSrc1,const RECT *lprcSrc2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OffsetRect(LPRECT lprc,int dx,int dy);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsRectEmpty(const RECT *lprc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EqualRect(const RECT *lprc1,const RECT *lprc2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PtInRect(const RECT *lprc,POINT pt);
__attribute__((dllimport)) WORD __attribute__((__stdcall__)) GetWindowWord(HWND hWnd,int nIndex);
__attribute__((dllimport)) WORD __attribute__((__stdcall__)) SetWindowWord(HWND hWnd,int nIndex,WORD wNewWord);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) GetWindowLongA(HWND hWnd,int nIndex);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) GetWindowLongW(HWND hWnd,int nIndex);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) SetWindowLongA(HWND hWnd,int nIndex,LONG dwNewLong);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) SetWindowLongW(HWND hWnd,int nIndex,LONG dwNewLong);
__attribute__((dllimport)) WORD __attribute__((__stdcall__)) GetClassWord(HWND hWnd,int nIndex);
__attribute__((dllimport)) WORD __attribute__((__stdcall__)) SetClassWord(HWND hWnd,int nIndex,WORD wNewWord);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetClassLongA(HWND hWnd,int nIndex);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetClassLongW(HWND hWnd,int nIndex);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetClassLongA(HWND hWnd,int nIndex,LONG dwNewLong);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetClassLongW(HWND hWnd,int nIndex,LONG dwNewLong);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetProcessDefaultLayout(DWORD *pdwDefaultLayout);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetProcessDefaultLayout(DWORD dwDefaultLayout);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetDesktopWindow(void);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetParent(HWND hWnd);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) SetParent(HWND hWndChild,HWND hWndNewParent);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumChildWindows(HWND hWndParent,WNDENUMPROC lpEnumFunc,LPARAM lParam);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) FindWindowA(LPCSTR lpClassName,LPCSTR lpWindowName);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) FindWindowW(LPCWSTR lpClassName,LPCWSTR lpWindowName);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) FindWindowExA(HWND hWndParent,HWND hWndChildAfter,LPCSTR lpszClass,LPCSTR lpszWindow);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) FindWindowExW(HWND hWndParent,HWND hWndChildAfter,LPCWSTR lpszClass,LPCWSTR lpszWindow);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetShellWindow(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RegisterShellHookWindow(HWND hwnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeregisterShellHookWindow(HWND hwnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumWindows(WNDENUMPROC lpEnumFunc,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumThreadWindows(DWORD dwThreadId,WNDENUMPROC lpfn,LPARAM lParam);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetClassNameA(HWND hWnd,LPSTR lpClassName,int nMaxCount);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetClassNameW(HWND hWnd,LPWSTR lpClassName,int nMaxCount);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetTopWindow(HWND hWnd);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetWindowThreadProcessId(HWND hWnd,LPDWORD lpdwProcessId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsGUIThread(WINBOOL bConvert);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetLastActivePopup(HWND hWnd);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetWindow(HWND hWnd,UINT uCmd);
__attribute__((dllimport)) HHOOK __attribute__((__stdcall__)) SetWindowsHookA (int nFilterType, HOOKPROC pfnFilterProc);
__attribute__((dllimport)) HHOOK __attribute__((__stdcall__)) SetWindowsHookW (int nFilterType, HOOKPROC pfnFilterProc);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnhookWindowsHook (int nCode, HOOKPROC pfnFilterProc);
__attribute__((dllimport)) HHOOK __attribute__((__stdcall__)) SetWindowsHookExA (int idHook, HOOKPROC lpfn, HINSTANCE hmod, DWORD dwThreadId);
__attribute__((dllimport)) HHOOK __attribute__((__stdcall__)) SetWindowsHookExW (int idHook, HOOKPROC lpfn, HINSTANCE hmod, DWORD dwThreadId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnhookWindowsHookEx (HHOOK hhk);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) CallNextHookEx (HHOOK hhk, int nCode, WPARAM wParam, LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CheckMenuRadioItem(HMENU hmenu,UINT first,UINT last,UINT check,UINT flags);
typedef struct {
WORD versionNumber;
WORD offset;
} MENUITEMTEMPLATEHEADER,*PMENUITEMTEMPLATEHEADER;
typedef struct {
WORD mtOption;
WORD mtID;
WCHAR mtString[1];
} MENUITEMTEMPLATE,*PMENUITEMTEMPLATE;
__attribute__((dllimport)) HBITMAP __attribute__((__stdcall__)) LoadBitmapA(HINSTANCE hInstance,LPCSTR lpBitmapName);
__attribute__((dllimport)) HBITMAP __attribute__((__stdcall__)) LoadBitmapW(HINSTANCE hInstance,LPCWSTR lpBitmapName);
__attribute__((dllimport)) HCURSOR __attribute__((__stdcall__)) LoadCursorA(HINSTANCE hInstance,LPCSTR lpCursorName);
__attribute__((dllimport)) HCURSOR __attribute__((__stdcall__)) LoadCursorW(HINSTANCE hInstance,LPCWSTR lpCursorName);
__attribute__((dllimport)) HCURSOR __attribute__((__stdcall__)) LoadCursorFromFileA(LPCSTR lpFileName);
__attribute__((dllimport)) HCURSOR __attribute__((__stdcall__)) LoadCursorFromFileW(LPCWSTR lpFileName);
__attribute__((dllimport)) HCURSOR __attribute__((__stdcall__)) CreateCursor(HINSTANCE hInst,int xHotSpot,int yHotSpot,int nWidth,int nHeight,const void *pvANDPlane,const void *pvXORPlane);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DestroyCursor(HCURSOR hCursor);
typedef struct _ICONINFO {
WINBOOL fIcon;
DWORD xHotspot;
DWORD yHotspot;
HBITMAP hbmMask;
HBITMAP hbmColor;
} ICONINFO;
typedef ICONINFO *PICONINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetSystemCursor(HCURSOR hcur,DWORD id);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) LoadIconA(HINSTANCE hInstance,LPCSTR lpIconName);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) LoadIconW(HINSTANCE hInstance,LPCWSTR lpIconName);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) PrivateExtractIconsA(LPCSTR szFileName,int nIconIndex,int cxIcon,int cyIcon,HICON *phicon,UINT *piconid,UINT nIcons,UINT flags);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) PrivateExtractIconsW(LPCWSTR szFileName,int nIconIndex,int cxIcon,int cyIcon,HICON *phicon,UINT *piconid,UINT nIcons,UINT flags);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) CreateIcon(HINSTANCE hInstance,int nWidth,int nHeight,BYTE cPlanes,BYTE cBitsPixel,const BYTE *lpbANDbits,const BYTE *lpbXORbits);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DestroyIcon(HICON hIcon);
__attribute__((dllimport)) int __attribute__((__stdcall__)) LookupIconIdFromDirectory(PBYTE presbits,WINBOOL fIcon);
__attribute__((dllimport)) int __attribute__((__stdcall__)) LookupIconIdFromDirectoryEx(PBYTE presbits,WINBOOL fIcon,int cxDesired,int cyDesired,UINT Flags);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) CreateIconFromResource(PBYTE presbits,DWORD dwResSize,WINBOOL fIcon,DWORD dwVer);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) CreateIconFromResourceEx(PBYTE presbits,DWORD dwResSize,WINBOOL fIcon,DWORD dwVer,int cxDesired,int cyDesired,UINT Flags);
typedef struct tagCURSORSHAPE {
int xHotSpot;
int yHotSpot;
int cx;
int cy;
int cbWidth;
BYTE Planes;
BYTE BitsPixel;
} CURSORSHAPE,*LPCURSORSHAPE;
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) LoadImageA(HINSTANCE hInst,LPCSTR name,UINT type,int cx,int cy,UINT fuLoad);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) LoadImageW(HINSTANCE hInst,LPCWSTR name,UINT type,int cx,int cy,UINT fuLoad);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CopyImage(HANDLE h,UINT type,int cx,int cy,UINT flags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DrawIconEx(HDC hdc,int xLeft,int yTop,HICON hIcon,int cxWidth,int cyWidth,UINT istepIfAniCur,HBRUSH hbrFlickerFreeDraw,UINT diFlags);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) CreateIconIndirect(PICONINFO piconinfo);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) CopyIcon(HICON hIcon);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetIconInfo(HICON hIcon,PICONINFO piconinfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsDialogMessageA(HWND hDlg,LPMSG lpMsg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsDialogMessageW(HWND hDlg,LPMSG lpMsg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) MapDialogRect(HWND hDlg,LPRECT lpRect);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DlgDirListA(HWND hDlg,LPSTR lpPathSpec,int nIDListBox,int nIDStaticPath,UINT uFileType);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DlgDirListW(HWND hDlg,LPWSTR lpPathSpec,int nIDListBox,int nIDStaticPath,UINT uFileType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DlgDirSelectExA(HWND hwndDlg,LPSTR lpString,int chCount,int idListBox);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DlgDirSelectExW(HWND hwndDlg,LPWSTR lpString,int chCount,int idListBox);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DlgDirListComboBoxA(HWND hDlg,LPSTR lpPathSpec,int nIDComboBox,int nIDStaticPath,UINT uFiletype);
__attribute__((dllimport)) int __attribute__((__stdcall__)) DlgDirListComboBoxW(HWND hDlg,LPWSTR lpPathSpec,int nIDComboBox,int nIDStaticPath,UINT uFiletype);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DlgDirSelectComboBoxExA(HWND hwndDlg,LPSTR lpString,int cchOut,int idComboBox);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DlgDirSelectComboBoxExW(HWND hwndDlg,LPWSTR lpString,int cchOut,int idComboBox);
typedef struct tagSCROLLINFO {
UINT cbSize;
UINT fMask;
int nMin;
int nMax;
UINT nPage;
int nPos;
int nTrackPos;
} SCROLLINFO,*LPSCROLLINFO;
typedef SCROLLINFO const *LPCSCROLLINFO;
__attribute__((dllimport)) int __attribute__((__stdcall__)) SetScrollInfo(HWND hwnd,int nBar,LPCSCROLLINFO lpsi,WINBOOL redraw);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetScrollInfo(HWND hwnd,int nBar,LPSCROLLINFO lpsi);
typedef struct tagMDICREATESTRUCTA {
LPCSTR szClass;
LPCSTR szTitle;
HANDLE hOwner;
int x;
int y;
int cx;
int cy;
DWORD style;
LPARAM lParam;
} MDICREATESTRUCTA,*LPMDICREATESTRUCTA;
typedef struct tagMDICREATESTRUCTW {
LPCWSTR szClass;
LPCWSTR szTitle;
HANDLE hOwner;
int x;
int y;
int cx;
int cy;
DWORD style;
LPARAM lParam;
} MDICREATESTRUCTW,*LPMDICREATESTRUCTW;
typedef MDICREATESTRUCTA MDICREATESTRUCT;
typedef LPMDICREATESTRUCTA LPMDICREATESTRUCT;
typedef struct tagCLIENTCREATESTRUCT {
HANDLE hWindowMenu;
UINT idFirstChild;
} CLIENTCREATESTRUCT,*LPCLIENTCREATESTRUCT;
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefFrameProcA(HWND hWnd,HWND hWndMDIClient,UINT uMsg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefFrameProcW(HWND hWnd,HWND hWndMDIClient,UINT uMsg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefMDIChildProcA(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefMDIChildProcW(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) TranslateMDISysAccel(HWND hWndClient,LPMSG lpMsg);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) ArrangeIconicWindows(HWND hWnd);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) CreateMDIWindowA(LPCSTR lpClassName,LPCSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HINSTANCE hInstance,LPARAM lParam);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) CreateMDIWindowW(LPCWSTR lpClassName,LPCWSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HINSTANCE hInstance,LPARAM lParam);
__attribute__((dllimport)) WORD __attribute__((__stdcall__)) TileWindows(HWND hwndParent,UINT wHow,const RECT *lpRect,UINT cKids,const HWND *lpKids);
__attribute__((dllimport)) WORD __attribute__((__stdcall__)) CascadeWindows(HWND hwndParent,UINT wHow,const RECT *lpRect,UINT cKids,const HWND *lpKids);
typedef DWORD HELPPOLY;
typedef struct tagMULTIKEYHELPA {
DWORD mkSize;
CHAR mkKeylist;
CHAR szKeyphrase[1];
} MULTIKEYHELPA,*PMULTIKEYHELPA,*LPMULTIKEYHELPA;
typedef struct tagMULTIKEYHELPW {
DWORD mkSize;
WCHAR mkKeylist;
WCHAR szKeyphrase[1];
} MULTIKEYHELPW,*PMULTIKEYHELPW,*LPMULTIKEYHELPW;
typedef MULTIKEYHELPA MULTIKEYHELP;
typedef PMULTIKEYHELPA PMULTIKEYHELP;
typedef LPMULTIKEYHELPA LPMULTIKEYHELP;
typedef struct tagHELPWININFOA {
int wStructSize;
int x;
int y;
int dx;
int dy;
int wMax;
CHAR rgchMember[2];
} HELPWININFOA,*PHELPWININFOA,*LPHELPWININFOA;
typedef struct tagHELPWININFOW {
int wStructSize;
int x;
int y;
int dx;
int dy;
int wMax;
WCHAR rgchMember[2];
} HELPWININFOW,*PHELPWININFOW,*LPHELPWININFOW;
typedef HELPWININFOA HELPWININFO;
typedef PHELPWININFOA PHELPWININFO;
typedef LPHELPWININFOA LPHELPWININFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WinHelpA(HWND hWndMain,LPCSTR lpszHelp,UINT uCommand,ULONG_PTR dwData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WinHelpW(HWND hWndMain,LPCWSTR lpszHelp,UINT uCommand,ULONG_PTR dwData);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetGuiResources(HANDLE hProcess,DWORD uiFlags);
typedef struct tagNONCLIENTMETRICSA {
UINT cbSize;
int iBorderWidth;
int iScrollWidth;
int iScrollHeight;
int iCaptionWidth;
int iCaptionHeight;
LOGFONTA lfCaptionFont;
int iSmCaptionWidth;
int iSmCaptionHeight;
LOGFONTA lfSmCaptionFont;
int iMenuWidth;
int iMenuHeight;
LOGFONTA lfMenuFont;
LOGFONTA lfStatusFont;
LOGFONTA lfMessageFont;
} NONCLIENTMETRICSA,*PNONCLIENTMETRICSA,*LPNONCLIENTMETRICSA;
typedef struct tagNONCLIENTMETRICSW {
UINT cbSize;
int iBorderWidth;
int iScrollWidth;
int iScrollHeight;
int iCaptionWidth;
int iCaptionHeight;
LOGFONTW lfCaptionFont;
int iSmCaptionWidth;
int iSmCaptionHeight;
LOGFONTW lfSmCaptionFont;
int iMenuWidth;
int iMenuHeight;
LOGFONTW lfMenuFont;
LOGFONTW lfStatusFont;
LOGFONTW lfMessageFont;
} NONCLIENTMETRICSW,*PNONCLIENTMETRICSW,*LPNONCLIENTMETRICSW;
typedef NONCLIENTMETRICSA NONCLIENTMETRICS;
typedef PNONCLIENTMETRICSA PNONCLIENTMETRICS;
typedef LPNONCLIENTMETRICSA LPNONCLIENTMETRICS;
typedef struct tagMINIMIZEDMETRICS {
UINT cbSize;
int iWidth;
int iHorzGap;
int iVertGap;
int iArrange;
} MINIMIZEDMETRICS,*PMINIMIZEDMETRICS,*LPMINIMIZEDMETRICS;
typedef struct tagICONMETRICSA {
UINT cbSize;
int iHorzSpacing;
int iVertSpacing;
int iTitleWrap;
LOGFONTA lfFont;
} ICONMETRICSA,*PICONMETRICSA,*LPICONMETRICSA;
typedef struct tagICONMETRICSW {
UINT cbSize;
int iHorzSpacing;
int iVertSpacing;
int iTitleWrap;
LOGFONTW lfFont;
} ICONMETRICSW,*PICONMETRICSW,*LPICONMETRICSW;
typedef ICONMETRICSA ICONMETRICS;
typedef PICONMETRICSA PICONMETRICS;
typedef LPICONMETRICSA LPICONMETRICS;
typedef struct tagANIMATIONINFO {
UINT cbSize;
int iMinAnimate;
} ANIMATIONINFO,*LPANIMATIONINFO;
typedef struct tagSERIALKEYSA {
UINT cbSize;
DWORD dwFlags;
LPSTR lpszActivePort;
LPSTR lpszPort;
UINT iBaudRate;
UINT iPortState;
UINT iActive;
} SERIALKEYSA,*LPSERIALKEYSA;
typedef struct tagSERIALKEYSW {
UINT cbSize;
DWORD dwFlags;
LPWSTR lpszActivePort;
LPWSTR lpszPort;
UINT iBaudRate;
UINT iPortState;
UINT iActive;
} SERIALKEYSW,*LPSERIALKEYSW;
typedef SERIALKEYSA SERIALKEYS;
typedef LPSERIALKEYSA LPSERIALKEYS;
typedef struct tagHIGHCONTRASTA {
UINT cbSize;
DWORD dwFlags;
LPSTR lpszDefaultScheme;
} HIGHCONTRASTA,*LPHIGHCONTRASTA;
typedef struct tagHIGHCONTRASTW {
UINT cbSize;
DWORD dwFlags;
LPWSTR lpszDefaultScheme;
} HIGHCONTRASTW,*LPHIGHCONTRASTW;
typedef HIGHCONTRASTA HIGHCONTRAST;
typedef LPHIGHCONTRASTA LPHIGHCONTRAST;
typedef struct _VIDEOPARAMETERS {
GUID Guid;
ULONG dwOffset;
ULONG dwCommand;
ULONG dwFlags;
ULONG dwMode;
ULONG dwTVStandard;
ULONG dwAvailableModes;
ULONG dwAvailableTVStandard;
ULONG dwFlickerFilter;
ULONG dwOverScanX;
ULONG dwOverScanY;
ULONG dwMaxUnscaledX;
ULONG dwMaxUnscaledY;
ULONG dwPositionX;
ULONG dwPositionY;
ULONG dwBrightness;
ULONG dwContrast;
ULONG dwCPType;
ULONG dwCPCommand;
ULONG dwCPStandard;
ULONG dwCPKey;
ULONG bCP_APSTriggerBits;
UCHAR bOEMCopyProtection[256];
} VIDEOPARAMETERS,*PVIDEOPARAMETERS,*LPVIDEOPARAMETERS;
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) ChangeDisplaySettingsA(LPDEVMODEA lpDevMode,DWORD dwFlags);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) ChangeDisplaySettingsW(LPDEVMODEW lpDevMode,DWORD dwFlags);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) ChangeDisplaySettingsExA(LPCSTR lpszDeviceName,LPDEVMODEA lpDevMode,HWND hwnd,DWORD dwflags,LPVOID lParam);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) ChangeDisplaySettingsExW(LPCWSTR lpszDeviceName,LPDEVMODEW lpDevMode,HWND hwnd,DWORD dwflags,LPVOID lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDisplaySettingsA(LPCSTR lpszDeviceName,DWORD iModeNum,LPDEVMODEA lpDevMode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDisplaySettingsW(LPCWSTR lpszDeviceName,DWORD iModeNum,LPDEVMODEW lpDevMode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDisplaySettingsExA(LPCSTR lpszDeviceName,DWORD iModeNum,LPDEVMODEA lpDevMode,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDisplaySettingsExW(LPCWSTR lpszDeviceName,DWORD iModeNum,LPDEVMODEW lpDevMode,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDisplayDevicesA(LPCSTR lpDevice,DWORD iDevNum,PDISPLAY_DEVICEA lpDisplayDevice,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDisplayDevicesW(LPCWSTR lpDevice,DWORD iDevNum,PDISPLAY_DEVICEW lpDisplayDevice,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SystemParametersInfoA(UINT uiAction,UINT uiParam,PVOID pvParam,UINT fWinIni);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SystemParametersInfoW(UINT uiAction,UINT uiParam,PVOID pvParam,UINT fWinIni);
typedef struct tagFILTERKEYS {
UINT cbSize;
DWORD dwFlags;
DWORD iWaitMSec;
DWORD iDelayMSec;
DWORD iRepeatMSec;
DWORD iBounceMSec;
} FILTERKEYS,*LPFILTERKEYS;
typedef struct tagSTICKYKEYS {
UINT cbSize;
DWORD dwFlags;
} STICKYKEYS,*LPSTICKYKEYS;
typedef struct tagMOUSEKEYS {
UINT cbSize;
DWORD dwFlags;
DWORD iMaxSpeed;
DWORD iTimeToMaxSpeed;
DWORD iCtrlSpeed;
DWORD dwReserved1;
DWORD dwReserved2;
} MOUSEKEYS,*LPMOUSEKEYS;
typedef struct tagACCESSTIMEOUT {
UINT cbSize;
DWORD dwFlags;
DWORD iTimeOutMSec;
} ACCESSTIMEOUT,*LPACCESSTIMEOUT;
typedef struct tagSOUNDSENTRYA {
UINT cbSize;
DWORD dwFlags;
DWORD iFSTextEffect;
DWORD iFSTextEffectMSec;
DWORD iFSTextEffectColorBits;
DWORD iFSGrafEffect;
DWORD iFSGrafEffectMSec;
DWORD iFSGrafEffectColor;
DWORD iWindowsEffect;
DWORD iWindowsEffectMSec;
LPSTR lpszWindowsEffectDLL;
DWORD iWindowsEffectOrdinal;
} SOUNDSENTRYA,*LPSOUNDSENTRYA;
typedef struct tagSOUNDSENTRYW {
UINT cbSize;
DWORD dwFlags;
DWORD iFSTextEffect;
DWORD iFSTextEffectMSec;
DWORD iFSTextEffectColorBits;
DWORD iFSGrafEffect;
DWORD iFSGrafEffectMSec;
DWORD iFSGrafEffectColor;
DWORD iWindowsEffect;
DWORD iWindowsEffectMSec;
LPWSTR lpszWindowsEffectDLL;
DWORD iWindowsEffectOrdinal;
} SOUNDSENTRYW,*LPSOUNDSENTRYW;
typedef SOUNDSENTRYA SOUNDSENTRY;
typedef LPSOUNDSENTRYA LPSOUNDSENTRY;
typedef struct tagTOGGLEKEYS {
UINT cbSize;
DWORD dwFlags;
} TOGGLEKEYS,*LPTOGGLEKEYS;
typedef struct tagMONITORINFO {
DWORD cbSize;
RECT rcMonitor;
RECT rcWork;
DWORD dwFlags;
} MONITORINFO,*LPMONITORINFO;
typedef struct tagMONITORINFOEXA {
__extension__ struct {
DWORD cbSize;
RECT rcMonitor;
RECT rcWork;
DWORD dwFlags;
};
CHAR szDevice[32];
} MONITORINFOEXA,*LPMONITORINFOEXA;
typedef struct tagMONITORINFOEXW {
__extension__ struct {
DWORD cbSize;
RECT rcMonitor;
RECT rcWork;
DWORD dwFlags;
};
WCHAR szDevice[32];
} MONITORINFOEXW,*LPMONITORINFOEXW;
typedef MONITORINFOEXA MONITORINFOEX;
typedef LPMONITORINFOEXA LPMONITORINFOEX;
typedef WINBOOL (__attribute__((__stdcall__)) *MONITORENUMPROC)(HMONITOR,HDC,LPRECT,LPARAM);
__attribute__((dllimport)) void __attribute__((__stdcall__)) SetDebugErrorLevel (DWORD dwLevel);
__attribute__((dllimport)) void __attribute__((__stdcall__)) SetLastErrorEx (DWORD dwErrCode, DWORD dwType);
__attribute__((dllimport)) int __attribute__((__stdcall__)) InternalGetWindowText (HWND hWnd, LPWSTR pString, int cchMaxCount);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CancelShutdown (void);
__attribute__((dllimport)) HMONITOR __attribute__((__stdcall__)) MonitorFromPoint(POINT pt,DWORD dwFlags);
__attribute__((dllimport)) HMONITOR __attribute__((__stdcall__)) MonitorFromRect(LPCRECT lprc,DWORD dwFlags);
__attribute__((dllimport)) HMONITOR __attribute__((__stdcall__)) MonitorFromWindow(HWND hwnd,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMonitorInfoA(HMONITOR hMonitor,LPMONITORINFO lpmi);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMonitorInfoW(HMONITOR hMonitor,LPMONITORINFO lpmi);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDisplayMonitors(HDC hdc,LPCRECT lprcClip,MONITORENUMPROC lpfnEnum,LPARAM dwData);
typedef void (__attribute__((__stdcall__)) *WINEVENTPROC)(HWINEVENTHOOK hWinEventHook,DWORD event,HWND hwnd,LONG idObject,LONG idChild,DWORD idEventThread,DWORD dwmsEventTime);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NotifyWinEvent(DWORD event,HWND hwnd,LONG idObject,LONG idChild);
__attribute__((dllimport)) HWINEVENTHOOK __attribute__((__stdcall__)) SetWinEventHook(DWORD eventMin,DWORD eventMax,HMODULE hmodWinEventProc,WINEVENTPROC pfnWinEventProc,DWORD idProcess,DWORD idThread,DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsWinEventHookInstalled(DWORD event);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnhookWinEvent(HWINEVENTHOOK hWinEventHook);
typedef struct tagGUITHREADINFO {
DWORD cbSize;
DWORD flags;
HWND hwndActive;
HWND hwndFocus;
HWND hwndCapture;
HWND hwndMenuOwner;
HWND hwndMoveSize;
HWND hwndCaret;
RECT rcCaret;
} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetGUIThreadInfo(DWORD idThread,PGUITHREADINFO pgui);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) BlockInput (WINBOOL fBlockIt);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetWindowModuleFileNameA(HWND hwnd,LPSTR pszFileName,UINT cchFileNameMax);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetWindowModuleFileNameW(HWND hwnd,LPWSTR pszFileName,UINT cchFileNameMax);
typedef struct tagCURSORINFO {
DWORD cbSize;
DWORD flags;
HCURSOR hCursor;
POINT ptScreenPos;
} CURSORINFO,*PCURSORINFO,*LPCURSORINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCursorInfo(PCURSORINFO pci);
typedef struct tagWINDOWINFO {
DWORD cbSize;
RECT rcWindow;
RECT rcClient;
DWORD dwStyle;
DWORD dwExStyle;
DWORD dwWindowStatus;
UINT cxWindowBorders;
UINT cyWindowBorders;
ATOM atomWindowType;
WORD wCreatorVersion;
} WINDOWINFO,*PWINDOWINFO,*LPWINDOWINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetWindowInfo(HWND hwnd,PWINDOWINFO pwi);
typedef struct tagTITLEBARINFO {
DWORD cbSize;
RECT rcTitleBar;
DWORD rgstate[5 + 1];
} TITLEBARINFO,*PTITLEBARINFO,*LPTITLEBARINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetTitleBarInfo(HWND hwnd,PTITLEBARINFO pti);
typedef struct tagMENUBARINFO {
DWORD cbSize;
RECT rcBar;
HMENU hMenu;
HWND hwndMenu;
WINBOOL fBarFocused:1;
WINBOOL fFocused:1;
} MENUBARINFO,*PMENUBARINFO,*LPMENUBARINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetMenuBarInfo(HWND hwnd,LONG idObject,LONG idItem,PMENUBARINFO pmbi);
typedef struct tagSCROLLBARINFO {
DWORD cbSize;
RECT rcScrollBar;
int dxyLineButton;
int xyThumbTop;
int xyThumbBottom;
int reserved;
DWORD rgstate[5 + 1];
} SCROLLBARINFO,*PSCROLLBARINFO,*LPSCROLLBARINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetScrollBarInfo(HWND hwnd,LONG idObject,PSCROLLBARINFO psbi);
typedef struct tagCOMBOBOXINFO {
DWORD cbSize;
RECT rcItem;
RECT rcButton;
DWORD stateButton;
HWND hwndCombo;
HWND hwndItem;
HWND hwndList;
} COMBOBOXINFO,*PCOMBOBOXINFO,*LPCOMBOBOXINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetComboBoxInfo(HWND hwndCombo,PCOMBOBOXINFO pcbi);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetAncestor(HWND hwnd,UINT gaFlags);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) RealChildWindowFromPoint(HWND hwndParent,POINT ptParentClientCoords);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) RealGetWindowClassA(HWND hwnd,LPSTR ptszClassName,UINT cchClassNameMax);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) RealGetWindowClassW(HWND hwnd,LPWSTR ptszClassName,UINT cchClassNameMax);
typedef struct tagALTTABINFO {
DWORD cbSize;
int cItems;
int cColumns;
int cRows;
int iColFocus;
int iRowFocus;
int cxItem;
int cyItem;
POINT ptStart;
} ALTTABINFO,*PALTTABINFO,*LPALTTABINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetAltTabInfoA(HWND hwnd,int iItem,PALTTABINFO pati,LPSTR pszItemText,UINT cchItemText);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetAltTabInfoW(HWND hwnd,int iItem,PALTTABINFO pati,LPWSTR pszItemText,UINT cchItemText);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetListBoxInfo(HWND hwnd);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) LockWorkStation(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UserHandleGrantAccess(HANDLE hUserHandle,HANDLE hJob,WINBOOL bGrant);
struct HRAWINPUT__ { int unused; }; typedef struct HRAWINPUT__ *HRAWINPUT;
typedef struct tagRAWINPUTHEADER {
DWORD dwType;
DWORD dwSize;
HANDLE hDevice;
WPARAM wParam;
} RAWINPUTHEADER,*PRAWINPUTHEADER,*LPRAWINPUTHEADER;
typedef struct tagRAWMOUSE {
USHORT usFlags;
__extension__ union {
ULONG ulButtons;
__extension__ struct {
USHORT usButtonFlags;
USHORT usButtonData;
};
};
ULONG ulRawButtons;
LONG lLastX;
LONG lLastY;
ULONG ulExtraInformation;
} RAWMOUSE,*PRAWMOUSE,*LPRAWMOUSE;
typedef struct tagRAWKEYBOARD {
USHORT MakeCode;
USHORT Flags;
USHORT Reserved;
USHORT VKey;
UINT Message;
ULONG ExtraInformation;
} RAWKEYBOARD,*PRAWKEYBOARD,*LPRAWKEYBOARD;
typedef struct tagRAWHID {
DWORD dwSizeHid;
DWORD dwCount;
BYTE bRawData[1];
} RAWHID,*PRAWHID,*LPRAWHID;
typedef struct tagRAWINPUT {
RAWINPUTHEADER header;
union {
RAWMOUSE mouse;
RAWKEYBOARD keyboard;
RAWHID hid;
} data;
} RAWINPUT,*PRAWINPUT,*LPRAWINPUT;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetRawInputData(HRAWINPUT hRawInput,UINT uiCommand,LPVOID pData,PUINT pcbSize,UINT cbSizeHeader);
typedef struct tagRID_DEVICE_INFO_MOUSE {
DWORD dwId;
DWORD dwNumberOfButtons;
DWORD dwSampleRate;
WINBOOL fHasHorizontalWheel;
} RID_DEVICE_INFO_MOUSE,*PRID_DEVICE_INFO_MOUSE;
typedef struct tagRID_DEVICE_INFO_KEYBOARD {
DWORD dwType;
DWORD dwSubType;
DWORD dwKeyboardMode;
DWORD dwNumberOfFunctionKeys;
DWORD dwNumberOfIndicators;
DWORD dwNumberOfKeysTotal;
} RID_DEVICE_INFO_KEYBOARD,*PRID_DEVICE_INFO_KEYBOARD;
typedef struct tagRID_DEVICE_INFO_HID {
DWORD dwVendorId;
DWORD dwProductId;
DWORD dwVersionNumber;
USHORT usUsagePage;
USHORT usUsage;
} RID_DEVICE_INFO_HID,*PRID_DEVICE_INFO_HID;
typedef struct tagRID_DEVICE_INFO {
DWORD cbSize;
DWORD dwType;
__extension__ union {
RID_DEVICE_INFO_MOUSE mouse;
RID_DEVICE_INFO_KEYBOARD keyboard;
RID_DEVICE_INFO_HID hid;
} ;
} RID_DEVICE_INFO,*PRID_DEVICE_INFO,*LPRID_DEVICE_INFO;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetRawInputDeviceInfoA(HANDLE hDevice,UINT uiCommand,LPVOID pData,PUINT pcbSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetRawInputDeviceInfoW(HANDLE hDevice,UINT uiCommand,LPVOID pData,PUINT pcbSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetRawInputBuffer(PRAWINPUT pData,PUINT pcbSize,UINT cbSizeHeader);
typedef struct tagRAWINPUTDEVICE {
USHORT usUsagePage;
USHORT usUsage;
DWORD dwFlags;
HWND hwndTarget;
} RAWINPUTDEVICE,*PRAWINPUTDEVICE,*LPRAWINPUTDEVICE;
typedef const RAWINPUTDEVICE *PCRAWINPUTDEVICE;
typedef struct tagRAWINPUTDEVICELIST {
HANDLE hDevice;
DWORD dwType;
} RAWINPUTDEVICELIST,*PRAWINPUTDEVICELIST;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RegisterRawInputDevices (PCRAWINPUTDEVICE pRawInputDevices, UINT uiNumDevices, UINT cbSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetRegisteredRawInputDevices (PRAWINPUTDEVICE pRawInputDevices, PUINT puiNumDevices, UINT cbSize);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetRawInputDeviceList (PRAWINPUTDEVICELIST pRawInputDeviceList, PUINT puiNumDevices, UINT cbSize);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefRawInputProc (PRAWINPUT *paRawInput, INT nInput, UINT cbSizeHeader);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShutdownBlockReasonCreate (HWND hWnd, LPCWSTR pwszReason);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShutdownBlockReasonQuery (HWND hWnd, LPWSTR pwszBuff, DWORD *pcchBuff);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShutdownBlockReasonDestroy (HWND hWnd);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetTimeFormatEx (LPCWSTR lpLocaleName, DWORD dwFlags, const SYSTEMTIME *lpTime, LPCWSTR lpFormat, LPWSTR lpTimeStr, int cchTime);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetDateFormatEx (LPCWSTR lpLocaleName, DWORD dwFlags, const SYSTEMTIME *lpDate, LPCWSTR lpFormat, LPWSTR lpDateStr, int cchDate, LPCWSTR lpCalendar);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetDateFormatA (LCID Locale, DWORD dwFlags, const SYSTEMTIME *lpDate, LPCSTR lpFormat, LPSTR lpDateStr, int cchDate);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetDateFormatW (LCID Locale, DWORD dwFlags, const SYSTEMTIME *lpDate, LPCWSTR lpFormat, LPWSTR lpDateStr, int cchDate);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetTimeFormatA (LCID Locale, DWORD dwFlags, const SYSTEMTIME *lpTime, LPCSTR lpFormat, LPSTR lpTimeStr, int cchTime);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetTimeFormatW (LCID Locale, DWORD dwFlags, const SYSTEMTIME *lpTime, LPCWSTR lpFormat, LPWSTR lpTimeStr, int cchTime);
typedef DWORD LGRPID;
typedef DWORD LCTYPE;
typedef DWORD CALTYPE;
typedef DWORD CALID;
typedef struct _cpinfo {
UINT MaxCharSize;
BYTE DefaultChar[2];
BYTE LeadByte[12];
} CPINFO,*LPCPINFO;
typedef struct _cpinfoexA {
UINT MaxCharSize;
BYTE DefaultChar[2];
BYTE LeadByte[12];
WCHAR UnicodeDefaultChar;
UINT CodePage;
CHAR CodePageName[260];
} CPINFOEXA,*LPCPINFOEXA;
typedef struct _cpinfoexW {
UINT MaxCharSize;
BYTE DefaultChar[2];
BYTE LeadByte[12];
WCHAR UnicodeDefaultChar;
UINT CodePage;
WCHAR CodePageName[260];
} CPINFOEXW,*LPCPINFOEXW;
typedef CPINFOEXA CPINFOEX;
typedef LPCPINFOEXA LPCPINFOEX;
typedef struct _numberfmtA {
UINT NumDigits;
UINT LeadingZero;
UINT Grouping;
LPSTR lpDecimalSep;
LPSTR lpThousandSep;
UINT NegativeOrder;
} NUMBERFMTA,*LPNUMBERFMTA;
typedef struct _numberfmtW {
UINT NumDigits;
UINT LeadingZero;
UINT Grouping;
LPWSTR lpDecimalSep;
LPWSTR lpThousandSep;
UINT NegativeOrder;
} NUMBERFMTW,*LPNUMBERFMTW;
typedef NUMBERFMTA NUMBERFMT;
typedef LPNUMBERFMTA LPNUMBERFMT;
typedef struct _currencyfmtA {
UINT NumDigits;
UINT LeadingZero;
UINT Grouping;
LPSTR lpDecimalSep;
LPSTR lpThousandSep;
UINT NegativeOrder;
UINT PositiveOrder;
LPSTR lpCurrencySymbol;
} CURRENCYFMTA,*LPCURRENCYFMTA;
typedef struct _currencyfmtW {
UINT NumDigits;
UINT LeadingZero;
UINT Grouping;
LPWSTR lpDecimalSep;
LPWSTR lpThousandSep;
UINT NegativeOrder;
UINT PositiveOrder;
LPWSTR lpCurrencySymbol;
} CURRENCYFMTW,*LPCURRENCYFMTW;
typedef CURRENCYFMTA CURRENCYFMT;
typedef LPCURRENCYFMTA LPCURRENCYFMT;
enum SYSNLS_FUNCTION {
COMPARE_STRING = 0x1
};
typedef DWORD NLS_FUNCTION;
typedef struct _nlsversioninfo {
DWORD dwNLSVersionInfoSize;
DWORD dwNLSVersion;
DWORD dwDefinedVersion;
} NLSVERSIONINFO,*LPNLSVERSIONINFO;
typedef struct _nlsversioninfoex {
DWORD dwNLSVersionInfoSize;
DWORD dwNLSVersion;
DWORD dwDefinedVersion;
DWORD dwEffectiveId;
GUID guidCustomVersion;
} NLSVERSIONINFOEX,*LPNLSVERSIONINFOEX;
typedef LONG GEOID;
typedef DWORD GEOTYPE;
typedef DWORD GEOCLASS;
enum SYSGEOTYPE {
GEO_NATION = 0x0001,
GEO_LATITUDE = 0x0002,
GEO_LONGITUDE = 0x0003,
GEO_ISO2 = 0x0004,
GEO_ISO3 = 0x0005,
GEO_RFC1766 = 0x0006,
GEO_LCID = 0x0007,
GEO_FRIENDLYNAME= 0x0008,
GEO_OFFICIALNAME= 0x0009,
GEO_TIMEZONES = 0x000a,
GEO_OFFICIALLANGUAGES = 0x000b,
GEO_ISO_UN_NUMBER = 0x000c,
GEO_PARENT = 0x000d
};
enum SYSGEOCLASS {
GEOCLASS_NATION = 16,
GEOCLASS_REGION = 14,
GEOCLASS_ALL = 0
};
typedef WINBOOL (__attribute__((__stdcall__)) *LANGUAGEGROUP_ENUMPROCA) (LGRPID, LPSTR, LPSTR, DWORD, LONG_PTR);
typedef WINBOOL (__attribute__((__stdcall__)) *LANGGROUPLOCALE_ENUMPROCA) (LGRPID, LCID, LPSTR, LONG_PTR);
typedef WINBOOL (__attribute__((__stdcall__)) *UILANGUAGE_ENUMPROCA) (LPSTR, LONG_PTR);
typedef WINBOOL (__attribute__((__stdcall__)) *CODEPAGE_ENUMPROCA) (LPSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *DATEFMT_ENUMPROCA) (LPSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *DATEFMT_ENUMPROCEXA) (LPSTR, CALID);
typedef WINBOOL (__attribute__((__stdcall__)) *TIMEFMT_ENUMPROCA) (LPSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *CALINFO_ENUMPROCA) (LPSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *CALINFO_ENUMPROCEXA) (LPSTR, CALID);
typedef WINBOOL (__attribute__((__stdcall__)) *LOCALE_ENUMPROCA) (LPSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *LOCALE_ENUMPROCW) (LPWSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *LANGUAGEGROUP_ENUMPROCW) (LGRPID, LPWSTR, LPWSTR, DWORD, LONG_PTR);
typedef WINBOOL (__attribute__((__stdcall__)) *LANGGROUPLOCALE_ENUMPROCW) (LGRPID, LCID, LPWSTR, LONG_PTR);
typedef WINBOOL (__attribute__((__stdcall__)) *UILANGUAGE_ENUMPROCW) (LPWSTR, LONG_PTR);
typedef WINBOOL (__attribute__((__stdcall__)) *CODEPAGE_ENUMPROCW) (LPWSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *DATEFMT_ENUMPROCW) (LPWSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *DATEFMT_ENUMPROCEXW) (LPWSTR, CALID);
typedef WINBOOL (__attribute__((__stdcall__)) *TIMEFMT_ENUMPROCW) (LPWSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *CALINFO_ENUMPROCW) (LPWSTR);
typedef WINBOOL (__attribute__((__stdcall__)) *CALINFO_ENUMPROCEXW) (LPWSTR, CALID);
typedef WINBOOL (__attribute__((__stdcall__)) *GEO_ENUMPROC) (GEOID);
typedef struct _FILEMUIINFO {
DWORD dwSize;
DWORD dwVersion;
DWORD dwFileType;
BYTE pChecksum[16];
BYTE pServiceChecksum[16];
DWORD dwLanguageNameOffset;
DWORD dwTypeIDMainSize;
DWORD dwTypeIDMainOffset;
DWORD dwTypeNameMainOffset;
DWORD dwTypeIDMUISize;
DWORD dwTypeIDMUIOffset;
DWORD dwTypeNameMUIOffset;
BYTE abBuffer[8];
} FILEMUIINFO,*PFILEMUIINFO;
__attribute__((dllimport)) int __attribute__((__stdcall__)) CompareStringW (LCID Locale, DWORD dwCmpFlags, PCNZWCH lpString1, int cchCount1, PCNZWCH lpString2, int cchCount2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) FoldStringW (DWORD dwMapFlags, LPCWCH lpSrcStr, int cchSrc, LPWSTR lpDestStr, int cchDest);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetStringTypeExW (LCID Locale, DWORD dwInfoType, LPCWCH lpSrcStr, int cchSrc, LPWORD lpCharType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetStringTypeW (DWORD dwInfoType, LPCWCH lpSrcStr, int cchSrc, LPWORD lpCharType);
__attribute__((dllimport)) int __attribute__((__stdcall__)) MultiByteToWideChar (UINT CodePage, DWORD dwFlags, LPCCH lpMultiByteStr, int cbMultiByte, LPWSTR lpWideCharStr, int cchWideChar);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WideCharToMultiByte (UINT CodePage, DWORD dwFlags, LPCWCH lpWideCharStr, int cchWideChar, LPSTR lpMultiByteStr, int cbMultiByte, LPCCH lpDefaultChar, LPBOOL lpUsedDefaultChar);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsValidCodePage (UINT CodePage);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetACP (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsDBCSLeadByteEx (UINT CodePage, BYTE TestChar);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetOEMCP (void);
__attribute__((dllimport)) int __attribute__((__stdcall__)) CompareStringA (LCID Locale, DWORD dwCmpFlags, PCNZCH lpString1, int cchCount1, PCNZCH lpString2, int cchCount2);
__attribute__((dllimport)) int __attribute__((__stdcall__)) LCMapStringW (LCID Locale, DWORD dwMapFlags, LPCWSTR lpSrcStr, int cchSrc, LPWSTR lpDestStr, int cchDest);
__attribute__((dllimport)) int __attribute__((__stdcall__)) LCMapStringA (LCID Locale, DWORD dwMapFlags, LPCSTR lpSrcStr, int cchSrc, LPSTR lpDestStr, int cchDest);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetLocaleInfoW (LCID Locale, LCTYPE LCType, LPWSTR lpLCData, int cchData);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetLocaleInfoA (LCID Locale, LCTYPE LCType, LPSTR lpLCData, int cchData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsDBCSLeadByte (BYTE TestChar);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetNumberFormatA (LCID Locale, DWORD dwFlags, LPCSTR lpValue, const NUMBERFMTA *lpFormat, LPSTR lpNumberStr, int cchNumber);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetNumberFormatW (LCID Locale, DWORD dwFlags, LPCWSTR lpValue, const NUMBERFMTW *lpFormat, LPWSTR lpNumberStr, int cchNumber);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetCurrencyFormatA (LCID Locale, DWORD dwFlags, LPCSTR lpValue, const CURRENCYFMTA *lpFormat, LPSTR lpCurrencyStr, int cchCurrency);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetCurrencyFormatW (LCID Locale, DWORD dwFlags, LPCWSTR lpValue, const CURRENCYFMTW *lpFormat, LPWSTR lpCurrencyStr, int cchCurrency);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumCalendarInfoA (CALINFO_ENUMPROCA lpCalInfoEnumProc, LCID Locale, CALID Calendar, CALTYPE CalType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumCalendarInfoW (CALINFO_ENUMPROCW lpCalInfoEnumProc, LCID Locale, CALID Calendar, CALTYPE CalType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumCalendarInfoExA (CALINFO_ENUMPROCEXA lpCalInfoEnumProcEx, LCID Locale, CALID Calendar, CALTYPE CalType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumCalendarInfoExW (CALINFO_ENUMPROCEXW lpCalInfoEnumProcEx, LCID Locale, CALID Calendar, CALTYPE CalType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumTimeFormatsA (TIMEFMT_ENUMPROCA lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumTimeFormatsW (TIMEFMT_ENUMPROCW lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDateFormatsA (DATEFMT_ENUMPROCA lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDateFormatsW (DATEFMT_ENUMPROCW lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDateFormatsExA (DATEFMT_ENUMPROCEXA lpDateFmtEnumProcEx, LCID Locale, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDateFormatsExW (DATEFMT_ENUMPROCEXW lpDateFmtEnumProcEx, LCID Locale, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsValidLanguageGroup (LGRPID LanguageGroup, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNLSVersion (NLS_FUNCTION Function, LCID Locale, LPNLSVERSIONINFO lpVersionInformation);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsNLSDefinedString (NLS_FUNCTION Function, DWORD dwFlags, LPNLSVERSIONINFO lpVersionInformation, LPCWSTR lpString, INT cchStr);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsValidLocale (LCID Locale, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetLocaleInfoA (LCID Locale, LCTYPE LCType, LPCSTR lpLCData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetLocaleInfoW (LCID Locale, LCTYPE LCType, LPCWSTR lpLCData);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetCalendarInfoA (LCID Locale, CALID Calendar, CALTYPE CalType, LPSTR lpCalData, int cchData, LPDWORD lpValue);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetCalendarInfoW (LCID Locale, CALID Calendar, CALTYPE CalType, LPWSTR lpCalData, int cchData, LPDWORD lpValue);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCalendarInfoA (LCID Locale, CALID Calendar, CALTYPE CalType, LPCSTR lpCalData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCalendarInfoW (LCID Locale, CALID Calendar, CALTYPE CalType, LPCWSTR lpCalData);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetGeoInfoA (GEOID Location, GEOTYPE GeoType, LPSTR lpGeoData, int cchData, LANGID LangId);
__attribute__((dllimport)) int __attribute__((__stdcall__)) GetGeoInfoW (GEOID Location, GEOTYPE GeoType, LPWSTR lpGeoData, int cchData, LANGID LangId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumSystemGeoID (GEOCLASS GeoClass, GEOID ParentGeoId, GEO_ENUMPROC lpGeoEnumProc);
__attribute__((dllimport)) GEOID __attribute__((__stdcall__)) GetUserGeoID (GEOCLASS GeoClass);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCPInfo (UINT CodePage, LPCPINFO lpCPInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCPInfoExA (UINT CodePage, DWORD dwFlags, LPCPINFOEXA lpCPInfoEx);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCPInfoExW (UINT CodePage, DWORD dwFlags, LPCPINFOEXW lpCPInfoEx);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUserGeoID (GEOID GeoId);
__attribute__((dllimport)) LCID __attribute__((__stdcall__)) ConvertDefaultLocale (LCID Locale);
__attribute__((dllimport)) LCID __attribute__((__stdcall__)) GetThreadLocale (void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetThreadLocale (LCID Locale);
__attribute__((dllimport)) LANGID __attribute__((__stdcall__)) GetSystemDefaultUILanguage (void);
__attribute__((dllimport)) LANGID __attribute__((__stdcall__)) GetUserDefaultUILanguage (void);
__attribute__((dllimport)) LANGID __attribute__((__stdcall__)) GetSystemDefaultLangID (void);
__attribute__((dllimport)) LANGID __attribute__((__stdcall__)) GetUserDefaultLangID (void);
__attribute__((dllimport)) LCID __attribute__((__stdcall__)) GetSystemDefaultLCID (void);
__attribute__((dllimport)) LCID __attribute__((__stdcall__)) GetUserDefaultLCID (void);
__attribute__((dllimport)) LANGID __attribute__((__stdcall__)) SetThreadUILanguage (LANGID LangId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetStringTypeExA (LCID Locale, DWORD dwInfoType, LPCSTR lpSrcStr, int cchSrc, LPWORD lpCharType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetStringTypeA (LCID Locale, DWORD dwInfoType, LPCSTR lpSrcStr, int cchSrc, LPWORD lpCharType);
__attribute__((dllimport)) int __attribute__((__stdcall__)) FoldStringA (DWORD dwMapFlags, LPCSTR lpSrcStr, int cchSrc, LPSTR lpDestStr, int cchDest);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumSystemLocalesA (LOCALE_ENUMPROCA lpLocaleEnumProc, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumSystemLocalesW (LOCALE_ENUMPROCW lpLocaleEnumProc, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumSystemLanguageGroupsA (LANGUAGEGROUP_ENUMPROCA lpLanguageGroupEnumProc, DWORD dwFlags, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumSystemLanguageGroupsW (LANGUAGEGROUP_ENUMPROCW lpLanguageGroupEnumProc, DWORD dwFlags, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumLanguageGroupLocalesA (LANGGROUPLOCALE_ENUMPROCA lpLangGroupLocaleEnumProc, LGRPID LanguageGroup, DWORD dwFlags, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumLanguageGroupLocalesW (LANGGROUPLOCALE_ENUMPROCW lpLangGroupLocaleEnumProc, LGRPID LanguageGroup, DWORD dwFlags, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumUILanguagesA (UILANGUAGE_ENUMPROCA lpUILanguageEnumProc, DWORD dwFlags, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumUILanguagesW (UILANGUAGE_ENUMPROCW lpUILanguageEnumProc, DWORD dwFlags, LONG_PTR lParam);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumSystemCodePagesA (CODEPAGE_ENUMPROCA lpCodePageEnumProc, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumSystemCodePagesW (CODEPAGE_ENUMPROCW lpCodePageEnumProc, DWORD dwFlags);
typedef struct _COORD {
SHORT X;
SHORT Y;
} COORD,*PCOORD;
typedef struct _SMALL_RECT {
SHORT Left;
SHORT Top;
SHORT Right;
SHORT Bottom;
} SMALL_RECT,*PSMALL_RECT;
typedef struct _KEY_EVENT_RECORD {
WINBOOL bKeyDown;
WORD wRepeatCount;
WORD wVirtualKeyCode;
WORD wVirtualScanCode;
union {
WCHAR UnicodeChar;
CHAR AsciiChar;
} uChar;
DWORD dwControlKeyState;
} KEY_EVENT_RECORD,*PKEY_EVENT_RECORD;
typedef struct _MOUSE_EVENT_RECORD {
COORD dwMousePosition;
DWORD dwButtonState;
DWORD dwControlKeyState;
DWORD dwEventFlags;
} MOUSE_EVENT_RECORD,*PMOUSE_EVENT_RECORD;
typedef struct _WINDOW_BUFFER_SIZE_RECORD {
COORD dwSize;
} WINDOW_BUFFER_SIZE_RECORD,*PWINDOW_BUFFER_SIZE_RECORD;
typedef struct _MENU_EVENT_RECORD {
UINT dwCommandId;
} MENU_EVENT_RECORD,*PMENU_EVENT_RECORD;
typedef struct _FOCUS_EVENT_RECORD {
WINBOOL bSetFocus;
} FOCUS_EVENT_RECORD,*PFOCUS_EVENT_RECORD;
typedef struct _INPUT_RECORD {
WORD EventType;
union {
KEY_EVENT_RECORD KeyEvent;
MOUSE_EVENT_RECORD MouseEvent;
WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent;
MENU_EVENT_RECORD MenuEvent;
FOCUS_EVENT_RECORD FocusEvent;
} Event;
} INPUT_RECORD,*PINPUT_RECORD;
typedef struct _CHAR_INFO {
union {
WCHAR UnicodeChar;
CHAR AsciiChar;
} Char;
WORD Attributes;
} CHAR_INFO,*PCHAR_INFO;
typedef struct _CONSOLE_SCREEN_BUFFER_INFO {
COORD dwSize;
COORD dwCursorPosition;
WORD wAttributes;
SMALL_RECT srWindow;
COORD dwMaximumWindowSize;
} CONSOLE_SCREEN_BUFFER_INFO,*PCONSOLE_SCREEN_BUFFER_INFO;
typedef struct _CONSOLE_CURSOR_INFO {
DWORD dwSize;
WINBOOL bVisible;
} CONSOLE_CURSOR_INFO,*PCONSOLE_CURSOR_INFO;
typedef struct _CONSOLE_FONT_INFO {
DWORD nFont;
COORD dwFontSize;
} CONSOLE_FONT_INFO,*PCONSOLE_FONT_INFO;
typedef struct _CONSOLE_SELECTION_INFO {
DWORD dwFlags;
COORD dwSelectionAnchor;
SMALL_RECT srSelection;
} CONSOLE_SELECTION_INFO,*PCONSOLE_SELECTION_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PHANDLER_ROUTINE)(DWORD CtrlType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PeekConsoleInputA(HANDLE hConsoleInput,PINPUT_RECORD lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsRead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PeekConsoleInputW(HANDLE hConsoleInput,PINPUT_RECORD lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsRead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleInputA(HANDLE hConsoleInput,PINPUT_RECORD lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsRead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleInputW(HANDLE hConsoleInput,PINPUT_RECORD lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsRead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleInputA(HANDLE hConsoleInput,const INPUT_RECORD *lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsWritten);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleInputW(HANDLE hConsoleInput,const INPUT_RECORD *lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsWritten);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleOutputA(HANDLE hConsoleOutput,PCHAR_INFO lpBuffer,COORD dwBufferSize,COORD dwBufferCoord,PSMALL_RECT lpReadRegion);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleOutputW(HANDLE hConsoleOutput,PCHAR_INFO lpBuffer,COORD dwBufferSize,COORD dwBufferCoord,PSMALL_RECT lpReadRegion);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleOutputA(HANDLE hConsoleOutput,const CHAR_INFO *lpBuffer,COORD dwBufferSize,COORD dwBufferCoord,PSMALL_RECT lpWriteRegion);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleOutputW(HANDLE hConsoleOutput,const CHAR_INFO *lpBuffer,COORD dwBufferSize,COORD dwBufferCoord,PSMALL_RECT lpWriteRegion);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleOutputCharacterA(HANDLE hConsoleOutput,LPSTR lpCharacter,DWORD nLength,COORD dwReadCoord,LPDWORD lpNumberOfCharsRead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleOutputCharacterW(HANDLE hConsoleOutput,LPWSTR lpCharacter,DWORD nLength,COORD dwReadCoord,LPDWORD lpNumberOfCharsRead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleOutputAttribute(HANDLE hConsoleOutput,LPWORD lpAttribute,DWORD nLength,COORD dwReadCoord,LPDWORD lpNumberOfAttrsRead);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleOutputCharacterA(HANDLE hConsoleOutput,LPCSTR lpCharacter,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfCharsWritten);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleOutputCharacterW(HANDLE hConsoleOutput,LPCWSTR lpCharacter,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfCharsWritten);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleOutputAttribute(HANDLE hConsoleOutput,const WORD *lpAttribute,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfAttrsWritten);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FillConsoleOutputCharacterA(HANDLE hConsoleOutput,CHAR cCharacter,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfCharsWritten);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FillConsoleOutputCharacterW(HANDLE hConsoleOutput,WCHAR cCharacter,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfCharsWritten);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FillConsoleOutputAttribute(HANDLE hConsoleOutput,WORD wAttribute,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfAttrsWritten);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetConsoleMode(HANDLE hConsoleHandle,LPDWORD lpMode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNumberOfConsoleInputEvents(HANDLE hConsoleInput,LPDWORD lpNumberOfEvents);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetConsoleScreenBufferInfo(HANDLE hConsoleOutput,PCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo);
__attribute__((dllimport)) COORD __attribute__((__stdcall__)) GetLargestConsoleWindowSize(HANDLE hConsoleOutput);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetConsoleCursorInfo(HANDLE hConsoleOutput,PCONSOLE_CURSOR_INFO lpConsoleCursorInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCurrentConsoleFont(HANDLE hConsoleOutput,WINBOOL bMaximumWindow,PCONSOLE_FONT_INFO lpConsoleCurrentFont);
__attribute__((dllimport)) COORD __attribute__((__stdcall__)) GetConsoleFontSize(HANDLE hConsoleOutput,DWORD nFont);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetConsoleSelectionInfo(PCONSOLE_SELECTION_INFO lpConsoleSelectionInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetNumberOfConsoleMouseButtons(LPDWORD lpNumberOfMouseButtons);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleMode(HANDLE hConsoleHandle,DWORD dwMode);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleActiveScreenBuffer(HANDLE hConsoleOutput);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FlushConsoleInputBuffer(HANDLE hConsoleInput);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleScreenBufferSize(HANDLE hConsoleOutput,COORD dwSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleCursorPosition(HANDLE hConsoleOutput,COORD dwCursorPosition);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleCursorInfo(HANDLE hConsoleOutput,const CONSOLE_CURSOR_INFO *lpConsoleCursorInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ScrollConsoleScreenBufferA(HANDLE hConsoleOutput,const SMALL_RECT *lpScrollRectangle,const SMALL_RECT *lpClipRectangle,COORD dwDestinationOrigin,const CHAR_INFO *lpFill);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ScrollConsoleScreenBufferW(HANDLE hConsoleOutput,const SMALL_RECT *lpScrollRectangle,const SMALL_RECT *lpClipRectangle,COORD dwDestinationOrigin,const CHAR_INFO *lpFill);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleWindowInfo(HANDLE hConsoleOutput,WINBOOL bAbsolute,const SMALL_RECT *lpConsoleWindow);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleTextAttribute(HANDLE hConsoleOutput,WORD wAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleCtrlHandler(PHANDLER_ROUTINE HandlerRoutine,WINBOOL Add);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GenerateConsoleCtrlEvent(DWORD dwCtrlEvent,DWORD dwProcessGroupId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AllocConsole(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FreeConsole(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AttachConsole(DWORD dwProcessId);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleTitleA(LPSTR lpConsoleTitle,DWORD nSize);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleTitleW(LPWSTR lpConsoleTitle,DWORD nSize);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleTitleA(LPCSTR lpConsoleTitle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleTitleW(LPCWSTR lpConsoleTitle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleA(HANDLE hConsoleInput,LPVOID lpBuffer,DWORD nNumberOfCharsToRead,LPDWORD lpNumberOfCharsRead,LPVOID lpReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadConsoleW(HANDLE hConsoleInput,LPVOID lpBuffer,DWORD nNumberOfCharsToRead,LPDWORD lpNumberOfCharsRead,LPVOID lpReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleA(HANDLE hConsoleOutput,const void *lpBuffer,DWORD nNumberOfCharsToWrite,LPDWORD lpNumberOfCharsWritten,LPVOID lpReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WriteConsoleW(HANDLE hConsoleOutput,const void *lpBuffer,DWORD nNumberOfCharsToWrite,LPDWORD lpNumberOfCharsWritten,LPVOID lpReserved);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) CreateConsoleScreenBuffer(DWORD dwDesiredAccess,DWORD dwShareMode,const SECURITY_ATTRIBUTES *lpSecurityAttributes,DWORD dwFlags,LPVOID lpScreenBufferData);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetConsoleCP(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleCP(UINT wCodePageID);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) GetConsoleOutputCP(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleOutputCP(UINT wCodePageID);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetConsoleDisplayMode(LPDWORD lpModeFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleDisplayMode(HANDLE hConsoleOutput, DWORD dwFlags, PCOORD lpNewScreenBufferDimensions);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) GetConsoleWindow(void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleProcessList(LPDWORD lpdwProcessList,DWORD dwProcessCount);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddConsoleAliasA(LPSTR Source,LPSTR Target,LPSTR ExeName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AddConsoleAliasW(LPWSTR Source,LPWSTR Target,LPWSTR ExeName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasA(LPSTR Source,LPSTR TargetBuffer,DWORD TargetBufferLength,LPSTR ExeName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasW(LPWSTR Source,LPWSTR TargetBuffer,DWORD TargetBufferLength,LPWSTR ExeName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasesLengthA(LPSTR ExeName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasesLengthW(LPWSTR ExeName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasExesLengthA(void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasExesLengthW(void);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasesA(LPSTR AliasBuffer,DWORD AliasBufferLength,LPSTR ExeName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasesW(LPWSTR AliasBuffer,DWORD AliasBufferLength,LPWSTR ExeName);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasExesA(LPSTR ExeNameBuffer,DWORD ExeNameBufferLength);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) GetConsoleAliasExesW(LPWSTR ExeNameBuffer,DWORD ExeNameBufferLength);
typedef struct _CONSOLE_FONT_INFOEX {
ULONG cbSize;
DWORD nFont;
COORD dwFontSize;
UINT FontFamily;
UINT FontWeight;
WCHAR FaceName[32];
} CONSOLE_FONT_INFOEX, *PCONSOLE_FONT_INFOEX;
typedef struct _CONSOLE_HISTORY_INFO {
UINT cbSize;
UINT HistoryBufferSize;
UINT NumberOfHistoryBuffers;
DWORD dwFlags;
} CONSOLE_HISTORY_INFO, *PCONSOLE_HISTORY_INFO;
typedef struct _CONSOLE_READCONSOLE_CONTROL {
ULONG nLength;
ULONG nInitialChars;
ULONG dwCtrlWakeupMask;
ULONG dwControlKeyState;
} CONSOLE_READCONSOLE_CONTROL, *PCONSOLE_READCONSOLE_CONTROL;
typedef struct _CONSOLE_SCREEN_BUFFER_INFOEX {
ULONG cbSize;
COORD dwSize;
COORD dwCursorPosition;
WORD wAttributes;
SMALL_RECT srWindow;
COORD dwMaximumWindowSize;
WORD wPopupAttributes;
WINBOOL bFullscreenSupported;
COLORREF ColorTable[16];
} CONSOLE_SCREEN_BUFFER_INFOEX, *PCONSOLE_SCREEN_BUFFER_INFOEX;
WINBOOL __attribute__((__stdcall__)) GetConsoleHistoryInfo(
PCONSOLE_HISTORY_INFO lpConsoleHistoryInfo
);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetConsoleScreenBufferInfoEx(
HANDLE hConsoleOutput,
PCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx
);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetCurrentConsoleFontEx(
HANDLE hConsoleOutput,
WINBOOL bMaximumWindow,
PCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx
);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleHistoryInfo(
PCONSOLE_HISTORY_INFO lpConsoleHistoryInfo
);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetConsoleScreenBufferInfoEx(
HANDLE hConsoleOutput,
PCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx
);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetCurrentConsoleFontEx(
HANDLE hConsoleOutput,
WINBOOL bMaximumWindow,
PCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx
);
typedef struct tagVS_FIXEDFILEINFO
{
DWORD dwSignature;
DWORD dwStrucVersion;
DWORD dwFileVersionMS;
DWORD dwFileVersionLS;
DWORD dwProductVersionMS;
DWORD dwProductVersionLS;
DWORD dwFileFlagsMask;
DWORD dwFileFlags;
DWORD dwFileOS;
DWORD dwFileType;
DWORD dwFileSubtype;
DWORD dwFileDateMS;
DWORD dwFileDateLS;
} VS_FIXEDFILEINFO;
DWORD __attribute__((__stdcall__)) VerFindFileA(DWORD uFlags,LPSTR szFileName,LPSTR szWinDir,LPSTR szAppDir,LPSTR szCurDir,PUINT lpuCurDirLen,LPSTR szDestDir,PUINT lpuDestDirLen);
DWORD __attribute__((__stdcall__)) VerFindFileW(DWORD uFlags,LPWSTR szFileName,LPWSTR szWinDir,LPWSTR szAppDir,LPWSTR szCurDir,PUINT lpuCurDirLen,LPWSTR szDestDir,PUINT lpuDestDirLen);
DWORD __attribute__((__stdcall__)) VerInstallFileA(DWORD uFlags,LPSTR szSrcFileName,LPSTR szDestFileName,LPSTR szSrcDir,LPSTR szDestDir,LPSTR szCurDir,LPSTR szTmpFile,PUINT lpuTmpFileLen);
DWORD __attribute__((__stdcall__)) VerInstallFileW(DWORD uFlags,LPWSTR szSrcFileName,LPWSTR szDestFileName,LPWSTR szSrcDir,LPWSTR szDestDir,LPWSTR szCurDir,LPWSTR szTmpFile,PUINT lpuTmpFileLen);
DWORD __attribute__((__stdcall__)) GetFileVersionInfoSizeA(LPCSTR lptstrFilename,LPDWORD lpdwHandle);
DWORD __attribute__((__stdcall__)) GetFileVersionInfoSizeW(LPCWSTR lptstrFilename,LPDWORD lpdwHandle);
WINBOOL __attribute__((__stdcall__)) GetFileVersionInfoA(LPCSTR lptstrFilename,DWORD dwHandle,DWORD dwLen,LPVOID lpData);
WINBOOL __attribute__((__stdcall__)) GetFileVersionInfoW(LPCWSTR lptstrFilename,DWORD dwHandle,DWORD dwLen,LPVOID lpData);
DWORD __attribute__((__stdcall__)) VerLanguageNameA(DWORD wLang,LPSTR szLang,DWORD nSize);
DWORD __attribute__((__stdcall__)) VerLanguageNameW(DWORD wLang,LPWSTR szLang,DWORD nSize);
WINBOOL __attribute__((__stdcall__)) VerQueryValueA(LPCVOID pBlock,LPCSTR lpSubBlock,LPVOID *lplpBuffer,PUINT puLen);
WINBOOL __attribute__((__stdcall__)) VerQueryValueW(LPCVOID pBlock,LPCWSTR lpSubBlock,LPVOID *lplpBuffer,PUINT puLen);
typedef ACCESS_MASK REGSAM;
typedef LONG LSTATUS;
struct val_context {
int valuelen;
LPVOID value_context;
LPVOID val_buff_ptr;
};
typedef struct val_context *PVALCONTEXT;
typedef struct pvalueA {
LPSTR pv_valuename;
int pv_valuelen;
LPVOID pv_value_context;
DWORD pv_type;
}PVALUEA,*PPVALUEA;
typedef struct pvalueW {
LPWSTR pv_valuename;
int pv_valuelen;
LPVOID pv_value_context;
DWORD pv_type;
}PVALUEW,*PPVALUEW;
typedef PVALUEA PVALUE;
typedef PPVALUEA PPVALUE;
typedef DWORD __attribute__((__cdecl__)) QUERYHANDLER(LPVOID keycontext,PVALCONTEXT val_list,DWORD num_vals,LPVOID outputbuffer,DWORD *total_outlen,DWORD input_blen);
typedef QUERYHANDLER *PQUERYHANDLER;
typedef struct provider_info {
PQUERYHANDLER pi_R0_1val;
PQUERYHANDLER pi_R0_allvals;
PQUERYHANDLER pi_R3_1val;
PQUERYHANDLER pi_R3_allvals;
DWORD pi_flags;
LPVOID pi_key_context;
} REG_PROVIDER;
typedef struct provider_info *PPROVIDER;
typedef struct value_entA {
LPSTR ve_valuename;
DWORD ve_valuelen;
DWORD_PTR ve_valueptr;
DWORD ve_type;
} VALENTA,*PVALENTA;
typedef struct value_entW {
LPWSTR ve_valuename;
DWORD ve_valuelen;
DWORD_PTR ve_valueptr;
DWORD ve_type;
} VALENTW,*PVALENTW;
typedef VALENTA VALENT;
typedef PVALENTA PVALENT;
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegCloseKey(HKEY hKey);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegOverridePredefKey(HKEY hKey,HKEY hNewHKey);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegOpenUserClassesRoot(HANDLE hToken,DWORD dwOptions,REGSAM samDesired,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegOpenCurrentUser(REGSAM samDesired,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDisablePredefinedCache(void);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDisablePredefinedCacheEx(void);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegConnectRegistryA(LPCSTR lpMachineName,HKEY hKey,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegConnectRegistryW(LPCWSTR lpMachineName,HKEY hKey,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegConnectRegistryExA(LPCSTR lpMachineName,HKEY hKey,ULONG Flags,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegConnectRegistryExW(LPCWSTR lpMachineName,HKEY hKey,ULONG Flags,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegCreateKeyA(HKEY hKey,LPCSTR lpSubKey,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegCreateKeyW(HKEY hKey,LPCWSTR lpSubKey,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegCreateKeyExA(HKEY hKey,LPCSTR lpSubKey,DWORD Reserved,LPSTR lpClass,DWORD dwOptions,REGSAM samDesired,LPSECURITY_ATTRIBUTES lpSecurityAttributes,PHKEY phkResult,LPDWORD lpdwDisposition);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegCreateKeyExW(HKEY hKey,LPCWSTR lpSubKey,DWORD Reserved,LPWSTR lpClass,DWORD dwOptions,REGSAM samDesired,LPSECURITY_ATTRIBUTES lpSecurityAttributes,PHKEY phkResult,LPDWORD lpdwDisposition);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDeleteKeyA(HKEY hKey,LPCSTR lpSubKey);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDeleteKeyW(HKEY hKey,LPCWSTR lpSubKey);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDeleteKeyExA(HKEY hKey,LPCSTR lpSubKey,REGSAM samDesired,DWORD Reserved);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDeleteKeyExW(HKEY hKey,LPCWSTR lpSubKey,REGSAM samDesired,DWORD Reserved);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDisableReflectionKey(HKEY hBase);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegEnableReflectionKey(HKEY hBase);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryReflectionKey(HKEY hBase,WINBOOL *bIsReflectionDisabled);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDeleteValueA(HKEY hKey,LPCSTR lpValueName);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegDeleteValueW(HKEY hKey,LPCWSTR lpValueName);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegEnumKeyA(HKEY hKey,DWORD dwIndex,LPSTR lpName,DWORD cchName);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegEnumKeyW(HKEY hKey,DWORD dwIndex,LPWSTR lpName,DWORD cchName);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegEnumKeyExA(HKEY hKey,DWORD dwIndex,LPSTR lpName,LPDWORD lpcchName,LPDWORD lpReserved,LPSTR lpClass,LPDWORD lpcchClass,PFILETIME lpftLastWriteTime);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegEnumKeyExW(HKEY hKey,DWORD dwIndex,LPWSTR lpName,LPDWORD lpcchName,LPDWORD lpReserved,LPWSTR lpClass,LPDWORD lpcchClass,PFILETIME lpftLastWriteTime);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegEnumValueA(HKEY hKey,DWORD dwIndex,LPSTR lpValueName,LPDWORD lpcchValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegEnumValueW(HKEY hKey,DWORD dwIndex,LPWSTR lpValueName,LPDWORD lpcchValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegFlushKey(HKEY hKey);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegGetKeySecurity(HKEY hKey,SECURITY_INFORMATION SecurityInformation,PSECURITY_DESCRIPTOR pSecurityDescriptor,LPDWORD lpcbSecurityDescriptor);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegLoadKeyA(HKEY hKey,LPCSTR lpSubKey,LPCSTR lpFile);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegLoadKeyW(HKEY hKey,LPCWSTR lpSubKey,LPCWSTR lpFile);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegNotifyChangeKeyValue(HKEY hKey,WINBOOL bWatchSubtree,DWORD dwNotifyFilter,HANDLE hEvent,WINBOOL fAsynchronous);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegOpenKeyA(HKEY hKey,LPCSTR lpSubKey,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegOpenKeyW(HKEY hKey,LPCWSTR lpSubKey,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegOpenKeyExA(HKEY hKey,LPCSTR lpSubKey,DWORD ulOptions,REGSAM samDesired,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegOpenKeyExW(HKEY hKey,LPCWSTR lpSubKey,DWORD ulOptions,REGSAM samDesired,PHKEY phkResult);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryInfoKeyA(HKEY hKey,LPSTR lpClass,LPDWORD lpcchClass,LPDWORD lpReserved,LPDWORD lpcSubKeys,LPDWORD lpcbMaxSubKeyLen,LPDWORD lpcbMaxClassLen,LPDWORD lpcValues,LPDWORD lpcbMaxValueNameLen,LPDWORD lpcbMaxValueLen,LPDWORD lpcbSecurityDescriptor,PFILETIME lpftLastWriteTime);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryInfoKeyW(HKEY hKey,LPWSTR lpClass,LPDWORD lpcchClass,LPDWORD lpReserved,LPDWORD lpcSubKeys,LPDWORD lpcbMaxSubKeyLen,LPDWORD lpcbMaxClassLen,LPDWORD lpcValues,LPDWORD lpcbMaxValueNameLen,LPDWORD lpcbMaxValueLen,LPDWORD lpcbSecurityDescriptor,PFILETIME lpftLastWriteTime);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryValueA(HKEY hKey,LPCSTR lpSubKey,LPSTR lpData,PLONG lpcbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryValueW(HKEY hKey,LPCWSTR lpSubKey,LPWSTR lpData,PLONG lpcbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryMultipleValuesA(HKEY hKey,PVALENTA val_list,DWORD num_vals,LPSTR lpValueBuf,LPDWORD ldwTotsize);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryMultipleValuesW(HKEY hKey,PVALENTW val_list,DWORD num_vals,LPWSTR lpValueBuf,LPDWORD ldwTotsize);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryValueExA(HKEY hKey,LPCSTR lpValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegQueryValueExW(HKEY hKey,LPCWSTR lpValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegReplaceKeyA(HKEY hKey,LPCSTR lpSubKey,LPCSTR lpNewFile,LPCSTR lpOldFile);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegReplaceKeyW(HKEY hKey,LPCWSTR lpSubKey,LPCWSTR lpNewFile,LPCWSTR lpOldFile);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegRestoreKeyA(HKEY hKey,LPCSTR lpFile,DWORD dwFlags);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegRestoreKeyW(HKEY hKey,LPCWSTR lpFile,DWORD dwFlags);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSaveKeyA(HKEY hKey,LPCSTR lpFile,LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSaveKeyW(HKEY hKey,LPCWSTR lpFile,LPSECURITY_ATTRIBUTES lpSecurityAttributes);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSetKeySecurity(HKEY hKey,SECURITY_INFORMATION SecurityInformation,PSECURITY_DESCRIPTOR pSecurityDescriptor);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSetValueA(HKEY hKey,LPCSTR lpSubKey,DWORD dwType,LPCSTR lpData,DWORD cbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSetValueW(HKEY hKey,LPCWSTR lpSubKey,DWORD dwType,LPCWSTR lpData,DWORD cbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSetValueExA(HKEY hKey,LPCSTR lpValueName,DWORD Reserved,DWORD dwType,const BYTE *lpData,DWORD cbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSetValueExW(HKEY hKey,LPCWSTR lpValueName,DWORD Reserved,DWORD dwType,const BYTE *lpData,DWORD cbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegUnLoadKeyA(HKEY hKey,LPCSTR lpSubKey);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegUnLoadKeyW(HKEY hKey,LPCWSTR lpSubKey);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegGetValueA(HKEY hkey,LPCSTR lpSubKey,LPCSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegGetValueW(HKEY hkey,LPCWSTR lpSubKey,LPCWSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitiateSystemShutdownA(LPSTR lpMachineName,LPSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitiateSystemShutdownW(LPWSTR lpMachineName,LPWSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AbortSystemShutdownA(LPSTR lpMachineName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) AbortSystemShutdownW(LPWSTR lpMachineName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitiateSystemShutdownExA(LPSTR lpMachineName,LPSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown,DWORD dwReason);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InitiateSystemShutdownExW(LPWSTR lpMachineName,LPWSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown,DWORD dwReason);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSaveKeyExA(HKEY hKey,LPCSTR lpFile,LPSECURITY_ATTRIBUTES lpSecurityAttributes,DWORD Flags);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) RegSaveKeyExW(HKEY hKey,LPCWSTR lpFile,LPSECURITY_ATTRIBUTES lpSecurityAttributes,DWORD Flags);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) Wow64Win32ApiEntry (DWORD dwFuncNumber,DWORD dwFlag,DWORD dwRes);
typedef struct _NETRESOURCEA {
DWORD dwScope;
DWORD dwType;
DWORD dwDisplayType;
DWORD dwUsage;
LPSTR lpLocalName;
LPSTR lpRemoteName;
LPSTR lpComment;
LPSTR lpProvider;
} NETRESOURCEA,*LPNETRESOURCEA;
typedef struct _NETRESOURCEW {
DWORD dwScope;
DWORD dwType;
DWORD dwDisplayType;
DWORD dwUsage;
LPWSTR lpLocalName;
LPWSTR lpRemoteName;
LPWSTR lpComment;
LPWSTR lpProvider;
} NETRESOURCEW,*LPNETRESOURCEW;
typedef NETRESOURCEA NETRESOURCE;
typedef LPNETRESOURCEA LPNETRESOURCE;
DWORD __attribute__((__stdcall__)) WNetAddConnectionA(LPCSTR lpRemoteName,LPCSTR lpPassword,LPCSTR lpLocalName);
DWORD __attribute__((__stdcall__)) WNetAddConnectionW(LPCWSTR lpRemoteName,LPCWSTR lpPassword,LPCWSTR lpLocalName);
DWORD __attribute__((__stdcall__)) WNetAddConnection2A(LPNETRESOURCEA lpNetResource,LPCSTR lpPassword,LPCSTR lpUserName,DWORD dwFlags);
DWORD __attribute__((__stdcall__)) WNetAddConnection2W(LPNETRESOURCEW lpNetResource,LPCWSTR lpPassword,LPCWSTR lpUserName,DWORD dwFlags);
DWORD __attribute__((__stdcall__)) WNetAddConnection3A(HWND hwndOwner,LPNETRESOURCEA lpNetResource,LPCSTR lpPassword,LPCSTR lpUserName,DWORD dwFlags);
DWORD __attribute__((__stdcall__)) WNetAddConnection3W(HWND hwndOwner,LPNETRESOURCEW lpNetResource,LPCWSTR lpPassword,LPCWSTR lpUserName,DWORD dwFlags);
DWORD __attribute__((__stdcall__)) WNetCancelConnectionA(LPCSTR lpName,WINBOOL fForce);
DWORD __attribute__((__stdcall__)) WNetCancelConnectionW(LPCWSTR lpName,WINBOOL fForce);
DWORD __attribute__((__stdcall__)) WNetCancelConnection2A(LPCSTR lpName,DWORD dwFlags,WINBOOL fForce);
DWORD __attribute__((__stdcall__)) WNetCancelConnection2W(LPCWSTR lpName,DWORD dwFlags,WINBOOL fForce);
DWORD __attribute__((__stdcall__)) WNetGetConnectionA(LPCSTR lpLocalName,LPSTR lpRemoteName,LPDWORD lpnLength);
DWORD __attribute__((__stdcall__)) WNetGetConnectionW(LPCWSTR lpLocalName,LPWSTR lpRemoteName,LPDWORD lpnLength);
DWORD __attribute__((__stdcall__)) WNetRestoreConnectionA(HWND hwndParent,LPCSTR lpDevice);
DWORD __attribute__((__stdcall__)) WNetUseConnectionA(HWND hwndOwner,LPNETRESOURCEA lpNetResource,LPCSTR lpPassword,LPCSTR lpUserID,DWORD dwFlags,LPSTR lpAccessName,LPDWORD lpBufferSize,LPDWORD lpResult);
DWORD __attribute__((__stdcall__)) WNetUseConnectionW(HWND hwndOwner,LPNETRESOURCEW lpNetResource,LPCWSTR lpPassword,LPCWSTR lpUserID,DWORD dwFlags,LPWSTR lpAccessName,LPDWORD lpBufferSize,LPDWORD lpResult);
DWORD __attribute__((__stdcall__)) WNetConnectionDialog(HWND hwnd,DWORD dwType);
DWORD __attribute__((__stdcall__)) WNetDisconnectDialog(HWND hwnd,DWORD dwType);
DWORD __attribute__((__stdcall__)) WNetRestoreConnectionW(HWND hwndParent,LPCWSTR lpDevice);
typedef struct _CONNECTDLGSTRUCTA {
DWORD cbStructure;
HWND hwndOwner;
LPNETRESOURCEA lpConnRes;
DWORD dwFlags;
DWORD dwDevNum;
} CONNECTDLGSTRUCTA,*LPCONNECTDLGSTRUCTA;
typedef struct _CONNECTDLGSTRUCTW {
DWORD cbStructure;
HWND hwndOwner;
LPNETRESOURCEW lpConnRes;
DWORD dwFlags;
DWORD dwDevNum;
} CONNECTDLGSTRUCTW,*LPCONNECTDLGSTRUCTW;
typedef CONNECTDLGSTRUCTA CONNECTDLGSTRUCT;
typedef LPCONNECTDLGSTRUCTA LPCONNECTDLGSTRUCT;
DWORD __attribute__((__stdcall__)) WNetConnectionDialog1A(LPCONNECTDLGSTRUCTA lpConnDlgStruct);
DWORD __attribute__((__stdcall__)) WNetConnectionDialog1W(LPCONNECTDLGSTRUCTW lpConnDlgStruct);
typedef struct _DISCDLGSTRUCTA {
DWORD cbStructure;
HWND hwndOwner;
LPSTR lpLocalName;
LPSTR lpRemoteName;
DWORD dwFlags;
} DISCDLGSTRUCTA,*LPDISCDLGSTRUCTA;
typedef struct _DISCDLGSTRUCTW {
DWORD cbStructure;
HWND hwndOwner;
LPWSTR lpLocalName;
LPWSTR lpRemoteName;
DWORD dwFlags;
} DISCDLGSTRUCTW,*LPDISCDLGSTRUCTW;
typedef DISCDLGSTRUCTA DISCDLGSTRUCT;
typedef LPDISCDLGSTRUCTA LPDISCDLGSTRUCT;
DWORD __attribute__((__stdcall__)) WNetDisconnectDialog1A(LPDISCDLGSTRUCTA lpConnDlgStruct);
DWORD __attribute__((__stdcall__)) WNetDisconnectDialog1W(LPDISCDLGSTRUCTW lpConnDlgStruct);
DWORD __attribute__((__stdcall__)) WNetOpenEnumA(DWORD dwScope,DWORD dwType,DWORD dwUsage,LPNETRESOURCEA lpNetResource,LPHANDLE lphEnum);
DWORD __attribute__((__stdcall__)) WNetOpenEnumW(DWORD dwScope,DWORD dwType,DWORD dwUsage,LPNETRESOURCEW lpNetResource,LPHANDLE lphEnum);
DWORD __attribute__((__stdcall__)) WNetEnumResourceA(HANDLE hEnum,LPDWORD lpcCount,LPVOID lpBuffer,LPDWORD lpBufferSize);
DWORD __attribute__((__stdcall__)) WNetEnumResourceW(HANDLE hEnum,LPDWORD lpcCount,LPVOID lpBuffer,LPDWORD lpBufferSize);
DWORD __attribute__((__stdcall__)) WNetCloseEnum(HANDLE hEnum);
DWORD __attribute__((__stdcall__)) WNetGetResourceParentA(LPNETRESOURCEA lpNetResource,LPVOID lpBuffer,LPDWORD lpcbBuffer);
DWORD __attribute__((__stdcall__)) WNetGetResourceParentW(LPNETRESOURCEW lpNetResource,LPVOID lpBuffer,LPDWORD lpcbBuffer);
DWORD __attribute__((__stdcall__)) WNetGetResourceInformationA(LPNETRESOURCEA lpNetResource,LPVOID lpBuffer,LPDWORD lpcbBuffer,LPSTR *lplpSystem);
DWORD __attribute__((__stdcall__)) WNetGetResourceInformationW(LPNETRESOURCEW lpNetResource,LPVOID lpBuffer,LPDWORD lpcbBuffer,LPWSTR *lplpSystem);
typedef struct _UNIVERSAL_NAME_INFOA {
LPSTR lpUniversalName;
} UNIVERSAL_NAME_INFOA,*LPUNIVERSAL_NAME_INFOA;
typedef struct _UNIVERSAL_NAME_INFOW {
LPWSTR lpUniversalName;
} UNIVERSAL_NAME_INFOW,*LPUNIVERSAL_NAME_INFOW;
typedef UNIVERSAL_NAME_INFOA UNIVERSAL_NAME_INFO;
typedef LPUNIVERSAL_NAME_INFOA LPUNIVERSAL_NAME_INFO;
typedef struct _REMOTE_NAME_INFOA {
LPSTR lpUniversalName;
LPSTR lpConnectionName;
LPSTR lpRemainingPath;
} REMOTE_NAME_INFOA,*LPREMOTE_NAME_INFOA;
typedef struct _REMOTE_NAME_INFOW {
LPWSTR lpUniversalName;
LPWSTR lpConnectionName;
LPWSTR lpRemainingPath;
} REMOTE_NAME_INFOW,*LPREMOTE_NAME_INFOW;
typedef REMOTE_NAME_INFOA REMOTE_NAME_INFO;
typedef LPREMOTE_NAME_INFOA LPREMOTE_NAME_INFO;
DWORD __attribute__((__stdcall__)) WNetGetUniversalNameA(LPCSTR lpLocalPath,DWORD dwInfoLevel,LPVOID lpBuffer,LPDWORD lpBufferSize);
DWORD __attribute__((__stdcall__)) WNetGetUniversalNameW(LPCWSTR lpLocalPath,DWORD dwInfoLevel,LPVOID lpBuffer,LPDWORD lpBufferSize);
DWORD __attribute__((__stdcall__)) WNetGetUserA(LPCSTR lpName,LPSTR lpUserName,LPDWORD lpnLength);
DWORD __attribute__((__stdcall__)) WNetGetUserW(LPCWSTR lpName,LPWSTR lpUserName,LPDWORD lpnLength);
DWORD __attribute__((__stdcall__)) WNetGetProviderNameA(DWORD dwNetType,LPSTR lpProviderName,LPDWORD lpBufferSize);
DWORD __attribute__((__stdcall__)) WNetGetProviderNameW(DWORD dwNetType,LPWSTR lpProviderName,LPDWORD lpBufferSize);
typedef struct _NETINFOSTRUCT {
DWORD cbStructure;
DWORD dwProviderVersion;
DWORD dwStatus;
DWORD dwCharacteristics;
ULONG_PTR dwHandle;
WORD wNetType;
DWORD dwPrinters;
DWORD dwDrives;
} NETINFOSTRUCT,*LPNETINFOSTRUCT;
DWORD __attribute__((__stdcall__)) WNetGetNetworkInformationA(LPCSTR lpProvider,LPNETINFOSTRUCT lpNetInfoStruct);
DWORD __attribute__((__stdcall__)) WNetGetNetworkInformationW(LPCWSTR lpProvider,LPNETINFOSTRUCT lpNetInfoStruct);
typedef UINT (__attribute__((__stdcall__)) *PFNGETPROFILEPATHA) (LPCSTR pszUsername,LPSTR pszBuffer,UINT cbBuffer);
typedef UINT (__attribute__((__stdcall__)) *PFNGETPROFILEPATHW) (LPCWSTR pszUsername,LPWSTR pszBuffer,UINT cbBuffer);
typedef UINT (__attribute__((__stdcall__)) *PFNRECONCILEPROFILEA) (LPCSTR pszCentralFile,LPCSTR pszLocalFile,DWORD dwFlags);
typedef UINT (__attribute__((__stdcall__)) *PFNRECONCILEPROFILEW) (LPCWSTR pszCentralFile,LPCWSTR pszLocalFile,DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFNPROCESSPOLICIESA) (HWND hwnd,LPCSTR pszPath,LPCSTR pszUsername,LPCSTR pszComputerName,DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFNPROCESSPOLICIESW) (HWND hwnd,LPCWSTR pszPath,LPCWSTR pszUsername,LPCWSTR pszComputerName,DWORD dwFlags);
DWORD __attribute__((__stdcall__)) WNetGetLastErrorA(LPDWORD lpError,LPSTR lpErrorBuf,DWORD nErrorBufSize,LPSTR lpNameBuf,DWORD nNameBufSize);
DWORD __attribute__((__stdcall__)) WNetGetLastErrorW(LPDWORD lpError,LPWSTR lpErrorBuf,DWORD nErrorBufSize,LPWSTR lpNameBuf,DWORD nNameBufSize);
typedef struct _NETCONNECTINFOSTRUCT {
DWORD cbStructure;
DWORD dwFlags;
DWORD dwSpeed;
DWORD dwDelay;
DWORD dwOptDataSize;
} NETCONNECTINFOSTRUCT,*LPNETCONNECTINFOSTRUCT;
DWORD __attribute__((__stdcall__)) MultinetGetConnectionPerformanceA(LPNETRESOURCEA lpNetResource,LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct);
DWORD __attribute__((__stdcall__)) MultinetGetConnectionPerformanceW(LPNETRESOURCEW lpNetResource,LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct);
typedef struct {
unsigned short bAppReturnCode:8,reserved:6,fBusy:1,fAck:1;
} DDEACK;
typedef struct {
unsigned short reserved:14,fDeferUpd:1,fAckReq:1;
short cfFormat;
} DDEADVISE;
typedef struct {
unsigned short unused:12,fResponse:1,fRelease:1,reserved:1,fAckReq:1;
short cfFormat;
BYTE Value[1];
} DDEDATA;
typedef struct {
unsigned short unused:13,fRelease:1,fReserved:2;
short cfFormat;
BYTE Value[1];
} DDEPOKE;
typedef struct {
unsigned short unused:13,fRelease:1,fDeferUpd:1,fAckReq:1;
short cfFormat;
} DDELN;
typedef struct {
unsigned short unused:12,fAck:1,fRelease:1,fReserved:1,fAckReq:1;
short cfFormat;
BYTE rgb[1];
} DDEUP;
WINBOOL __attribute__((__stdcall__)) DdeSetQualityOfService(HWND hwndClient,const SECURITY_QUALITY_OF_SERVICE *pqosNew,PSECURITY_QUALITY_OF_SERVICE pqosPrev);
WINBOOL __attribute__((__stdcall__)) ImpersonateDdeClientWindow(HWND hWndClient,HWND hWndServer);
LPARAM __attribute__((__stdcall__)) PackDDElParam(UINT msg,UINT_PTR uiLo,UINT_PTR uiHi);
WINBOOL __attribute__((__stdcall__)) UnpackDDElParam(UINT msg,LPARAM lParam,PUINT_PTR puiLo,PUINT_PTR puiHi);
WINBOOL __attribute__((__stdcall__)) FreeDDElParam(UINT msg,LPARAM lParam);
LPARAM __attribute__((__stdcall__)) ReuseDDElParam(LPARAM lParam,UINT msgIn,UINT msgOut,UINT_PTR uiLo,UINT_PTR uiHi);
struct HCONVLIST__ { int unused; }; typedef struct HCONVLIST__ *HCONVLIST;
struct HCONV__ { int unused; }; typedef struct HCONV__ *HCONV;
struct HSZ__ { int unused; }; typedef struct HSZ__ *HSZ;
struct HDDEDATA__ { int unused; }; typedef struct HDDEDATA__ *HDDEDATA;
typedef struct tagHSZPAIR {
HSZ hszSvc;
HSZ hszTopic;
} HSZPAIR, *PHSZPAIR;
typedef struct tagCONVCONTEXT {
UINT cb;
UINT wFlags;
UINT wCountryID;
int iCodePage;
DWORD dwLangID;
DWORD dwSecurity;
SECURITY_QUALITY_OF_SERVICE qos;
} CONVCONTEXT, *PCONVCONTEXT;
typedef struct tagCONVINFO {
DWORD cb;
DWORD_PTR hUser;
HCONV hConvPartner;
HSZ hszSvcPartner;
HSZ hszServiceReq;
HSZ hszTopic;
HSZ hszItem;
UINT wFmt;
UINT wType;
UINT wStatus;
UINT wConvst;
UINT wLastError;
HCONVLIST hConvList;
CONVCONTEXT ConvCtxt;
HWND hwnd;
HWND hwndPartner;
} CONVINFO, *PCONVINFO;
typedef HDDEDATA __attribute__((__stdcall__)) FNCALLBACK(UINT wType,UINT wFmt,HCONV hConv,HSZ hsz1,HSZ hsz2,HDDEDATA hData,ULONG_PTR dwData1,ULONG_PTR dwData2);
typedef HDDEDATA (__attribute__((__stdcall__)) *PFNCALLBACK)(UINT wType,UINT wFmt,HCONV hConv,HSZ hsz1,HSZ hsz2,HDDEDATA hData,ULONG_PTR dwData1,ULONG_PTR dwData2);
UINT __attribute__((__stdcall__)) DdeInitializeA(LPDWORD pidInst,PFNCALLBACK pfnCallback,DWORD afCmd,DWORD ulRes);
UINT __attribute__((__stdcall__)) DdeInitializeW(LPDWORD pidInst,PFNCALLBACK pfnCallback,DWORD afCmd,DWORD ulRes);
WINBOOL __attribute__((__stdcall__)) DdeUninitialize(DWORD idInst);
HCONVLIST __attribute__((__stdcall__)) DdeConnectList(DWORD idInst,HSZ hszService,HSZ hszTopic,HCONVLIST hConvList,PCONVCONTEXT pCC);
HCONV __attribute__((__stdcall__)) DdeQueryNextServer(HCONVLIST hConvList,HCONV hConvPrev);
WINBOOL __attribute__((__stdcall__)) DdeDisconnectList(HCONVLIST hConvList);
HCONV __attribute__((__stdcall__)) DdeConnect(DWORD idInst,HSZ hszService,HSZ hszTopic,PCONVCONTEXT pCC);
WINBOOL __attribute__((__stdcall__)) DdeDisconnect(HCONV hConv);
HCONV __attribute__((__stdcall__)) DdeReconnect(HCONV hConv);
UINT __attribute__((__stdcall__)) DdeQueryConvInfo(HCONV hConv,DWORD idTransaction,PCONVINFO pConvInfo);
WINBOOL __attribute__((__stdcall__)) DdeSetUserHandle(HCONV hConv,DWORD id,DWORD_PTR hUser);
WINBOOL __attribute__((__stdcall__)) DdeAbandonTransaction(DWORD idInst,HCONV hConv,DWORD idTransaction);
WINBOOL __attribute__((__stdcall__)) DdePostAdvise(DWORD idInst,HSZ hszTopic,HSZ hszItem);
WINBOOL __attribute__((__stdcall__)) DdeEnableCallback(DWORD idInst,HCONV hConv,UINT wCmd);
WINBOOL __attribute__((__stdcall__)) DdeImpersonateClient(HCONV hConv);
HDDEDATA __attribute__((__stdcall__)) DdeNameService(DWORD idInst,HSZ hsz1,HSZ hsz2,UINT afCmd);
HDDEDATA __attribute__((__stdcall__)) DdeClientTransaction(LPBYTE pData,DWORD cbData,HCONV hConv,HSZ hszItem,UINT wFmt,UINT wType,DWORD dwTimeout,LPDWORD pdwResult);
HDDEDATA __attribute__((__stdcall__)) DdeCreateDataHandle(DWORD idInst,LPBYTE pSrc,DWORD cb,DWORD cbOff,HSZ hszItem,UINT wFmt,UINT afCmd);
HDDEDATA __attribute__((__stdcall__)) DdeAddData(HDDEDATA hData,LPBYTE pSrc,DWORD cb,DWORD cbOff);
DWORD __attribute__((__stdcall__)) DdeGetData(HDDEDATA hData,LPBYTE pDst,DWORD cbMax,DWORD cbOff);
LPBYTE __attribute__((__stdcall__)) DdeAccessData(HDDEDATA hData,LPDWORD pcbDataSize);
WINBOOL __attribute__((__stdcall__)) DdeUnaccessData(HDDEDATA hData);
WINBOOL __attribute__((__stdcall__)) DdeFreeDataHandle(HDDEDATA hData);
UINT __attribute__((__stdcall__)) DdeGetLastError(DWORD idInst);
HSZ __attribute__((__stdcall__)) DdeCreateStringHandleA(DWORD idInst,LPCSTR psz,int iCodePage);
HSZ __attribute__((__stdcall__)) DdeCreateStringHandleW(DWORD idInst,LPCWSTR psz,int iCodePage);
DWORD __attribute__((__stdcall__)) DdeQueryStringA(DWORD idInst,HSZ hsz,LPSTR psz,DWORD cchMax,int iCodePage);
DWORD __attribute__((__stdcall__)) DdeQueryStringW(DWORD idInst,HSZ hsz,LPWSTR psz,DWORD cchMax,int iCodePage);
WINBOOL __attribute__((__stdcall__)) DdeFreeStringHandle(DWORD idInst,HSZ hsz);
WINBOOL __attribute__((__stdcall__)) DdeKeepStringHandle(DWORD idInst,HSZ hsz);
int __attribute__((__stdcall__)) DdeCmpStringHandles(HSZ hsz1,HSZ hsz2);
typedef struct tagDDEML_MSG_HOOK_DATA {
UINT_PTR uiLo;
UINT_PTR uiHi;
DWORD cbData;
DWORD Data[8];
} DDEML_MSG_HOOK_DATA,*PDDEML_MSG_HOOK_DATA;
typedef struct tagMONMSGSTRUCT {
UINT cb;
HWND hwndTo;
DWORD dwTime;
HANDLE hTask;
UINT wMsg;
WPARAM wParam;
LPARAM lParam;
DDEML_MSG_HOOK_DATA dmhd;
} MONMSGSTRUCT,*PMONMSGSTRUCT;
typedef struct tagMONCBSTRUCT {
UINT cb;
DWORD dwTime;
HANDLE hTask;
DWORD dwRet;
UINT wType;
UINT wFmt;
HCONV hConv;
HSZ hsz1;
HSZ hsz2;
HDDEDATA hData;
ULONG_PTR dwData1;
ULONG_PTR dwData2;
CONVCONTEXT cc;
DWORD cbData;
DWORD Data[8];
} MONCBSTRUCT,*PMONCBSTRUCT;
typedef struct tagMONHSZSTRUCTA {
UINT cb;
WINBOOL fsAction;
DWORD dwTime;
HSZ hsz;
HANDLE hTask;
CHAR str[1];
} MONHSZSTRUCTA,*PMONHSZSTRUCTA;
typedef struct tagMONHSZSTRUCTW {
UINT cb;
WINBOOL fsAction;
DWORD dwTime;
HSZ hsz;
HANDLE hTask;
WCHAR str[1];
} MONHSZSTRUCTW,*PMONHSZSTRUCTW;
typedef MONHSZSTRUCTA MONHSZSTRUCT;
typedef PMONHSZSTRUCTA PMONHSZSTRUCT;
typedef struct tagMONERRSTRUCT {
UINT cb;
UINT wLastError;
DWORD dwTime;
HANDLE hTask;
} MONERRSTRUCT,*PMONERRSTRUCT;
typedef struct tagMONLINKSTRUCT {
UINT cb;
DWORD dwTime;
HANDLE hTask;
WINBOOL fEstablished;
WINBOOL fNoData;
HSZ hszSvc;
HSZ hszTopic;
HSZ hszItem;
UINT wFmt;
WINBOOL fServer;
HCONV hConvServer;
HCONV hConvClient;
} MONLINKSTRUCT,*PMONLINKSTRUCT;
typedef struct tagMONCONVSTRUCT {
UINT cb;
WINBOOL fConnect;
DWORD dwTime;
HANDLE hTask;
HSZ hszSvc;
HSZ hszTopic;
HCONV hConvClient;
HCONV hConvServer;
} MONCONVSTRUCT,*PMONCONVSTRUCT;
typedef struct tagCRGB {
BYTE bRed;
BYTE bGreen;
BYTE bBlue;
BYTE bExtra;
} CRGB;
INT __attribute__((__stdcall__)) LZStart(void);
void __attribute__((__stdcall__)) LZDone(void);
LONG __attribute__((__stdcall__)) CopyLZFile(INT,INT);
LONG __attribute__((__stdcall__)) LZCopy(INT,INT);
INT __attribute__((__stdcall__)) LZInit(INT);
INT __attribute__((__stdcall__)) GetExpandedNameA(LPSTR,LPSTR);
INT __attribute__((__stdcall__)) GetExpandedNameW(LPWSTR,LPWSTR);
INT __attribute__((__stdcall__)) LZOpenFileA(LPSTR,LPOFSTRUCT,WORD);
INT __attribute__((__stdcall__)) LZOpenFileW(LPWSTR,LPOFSTRUCT,WORD);
LONG __attribute__((__stdcall__)) LZSeek(INT,LONG,INT);
INT __attribute__((__stdcall__)) LZRead(INT,LPSTR,INT);
void __attribute__((__stdcall__)) LZClose(INT);
#pragma pack(push,1)
typedef UINT MMVERSION;
typedef UINT MMRESULT;
typedef UINT *LPUINT;
typedef struct mmtime_tag {
UINT wType;
union {
DWORD ms;
DWORD sample;
DWORD cb;
DWORD ticks;
struct {
BYTE hour;
BYTE min;
BYTE sec;
BYTE frame;
BYTE fps;
BYTE dummy;
BYTE pad[2];
} smpte;
struct {
DWORD songptrpos;
} midi;
} u;
} MMTIME,*PMMTIME, *NPMMTIME,*LPMMTIME;
struct HDRVR__ { int unused; }; typedef struct HDRVR__ *HDRVR;
typedef struct DRVCONFIGINFOEX {
DWORD dwDCISize;
LPCWSTR lpszDCISectionName;
LPCWSTR lpszDCIAliasName;
DWORD dnDevNode;
} DRVCONFIGINFOEX,*PDRVCONFIGINFOEX, *NPDRVCONFIGINFOEX,*LPDRVCONFIGINFOEX;
typedef struct tagDRVCONFIGINFO {
DWORD dwDCISize;
LPCWSTR lpszDCISectionName;
LPCWSTR lpszDCIAliasName;
} DRVCONFIGINFO,*PDRVCONFIGINFO, *NPDRVCONFIGINFO,*LPDRVCONFIGINFO;
typedef LRESULT (__attribute__((__stdcall__)) *DRIVERPROC)(DWORD_PTR,HDRVR,UINT,LPARAM,LPARAM);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) CloseDriver(HDRVR hDriver,LPARAM lParam1,LPARAM lParam2);
__attribute__((dllimport)) HDRVR __attribute__((__stdcall__)) OpenDriver(LPCWSTR szDriverName,LPCWSTR szSectionName,LPARAM lParam2);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) SendDriverMessage(HDRVR hDriver,UINT message,LPARAM lParam1,LPARAM lParam2);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) DrvGetModuleHandle(HDRVR hDriver);
__attribute__((dllimport)) HMODULE __attribute__((__stdcall__)) GetDriverModuleHandle(HDRVR hDriver);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) DefDriverProc(DWORD_PTR dwDriverIdentifier,HDRVR hdrvr,UINT uMsg,LPARAM lParam1,LPARAM lParam2);
typedef void (__attribute__((__stdcall__)) DRVCALLBACK)(HDRVR hdrvr,UINT uMsg,DWORD_PTR dwUser,DWORD_PTR dw1,DWORD_PTR dw2);
typedef DRVCALLBACK *LPDRVCALLBACK;
typedef DRVCALLBACK *PDRVCALLBACK;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) sndPlaySoundA(LPCSTR pszSound,UINT fuSound);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) sndPlaySoundW(LPCWSTR pszSound,UINT fuSound);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PlaySoundA(LPCSTR pszSound,HMODULE hmod,DWORD fdwSound);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PlaySoundW(LPCWSTR pszSound,HMODULE hmod,DWORD fdwSound);
struct HWAVE__ { int unused; }; typedef struct HWAVE__ *HWAVE;
struct HWAVEIN__ { int unused; }; typedef struct HWAVEIN__ *HWAVEIN;
struct HWAVEOUT__ { int unused; }; typedef struct HWAVEOUT__ *HWAVEOUT;
typedef HWAVEIN *LPHWAVEIN;
typedef HWAVEOUT *LPHWAVEOUT;
typedef DRVCALLBACK WAVECALLBACK;
typedef WAVECALLBACK *LPWAVECALLBACK;
typedef struct wavehdr_tag {
LPSTR lpData;
DWORD dwBufferLength;
DWORD dwBytesRecorded;
DWORD_PTR dwUser;
DWORD dwFlags;
DWORD dwLoops;
struct wavehdr_tag *lpNext;
DWORD_PTR reserved;
} WAVEHDR,*PWAVEHDR, *NPWAVEHDR,*LPWAVEHDR;
typedef struct tagWAVEOUTCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
DWORD dwSupport;
} WAVEOUTCAPSA,*PWAVEOUTCAPSA,*NPWAVEOUTCAPSA,*LPWAVEOUTCAPSA;
typedef struct tagWAVEOUTCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
DWORD dwSupport;
} WAVEOUTCAPSW,*PWAVEOUTCAPSW,*NPWAVEOUTCAPSW,*LPWAVEOUTCAPSW;
typedef WAVEOUTCAPSA WAVEOUTCAPS;
typedef PWAVEOUTCAPSA PWAVEOUTCAPS;
typedef NPWAVEOUTCAPSA NPWAVEOUTCAPS;
typedef LPWAVEOUTCAPSA LPWAVEOUTCAPS;
typedef struct tagWAVEOUTCAPS2A {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
DWORD dwSupport;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} WAVEOUTCAPS2A,*PWAVEOUTCAPS2A,*NPWAVEOUTCAPS2A,*LPWAVEOUTCAPS2A;
typedef struct tagWAVEOUTCAPS2W {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
DWORD dwSupport;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} WAVEOUTCAPS2W,*PWAVEOUTCAPS2W,*NPWAVEOUTCAPS2W,*LPWAVEOUTCAPS2W;
typedef WAVEOUTCAPS2A WAVEOUTCAPS2;
typedef PWAVEOUTCAPS2A PWAVEOUTCAPS2;
typedef NPWAVEOUTCAPS2A NPWAVEOUTCAPS2;
typedef LPWAVEOUTCAPS2A LPWAVEOUTCAPS2;
typedef struct tagWAVEINCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
} WAVEINCAPSA,*PWAVEINCAPSA,*NPWAVEINCAPSA,*LPWAVEINCAPSA;
typedef struct tagWAVEINCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
} WAVEINCAPSW,*PWAVEINCAPSW,*NPWAVEINCAPSW,*LPWAVEINCAPSW;
typedef WAVEINCAPSA WAVEINCAPS;
typedef PWAVEINCAPSA PWAVEINCAPS;
typedef NPWAVEINCAPSA NPWAVEINCAPS;
typedef LPWAVEINCAPSA LPWAVEINCAPS;
typedef struct tagWAVEINCAPS2A {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} WAVEINCAPS2A,*PWAVEINCAPS2A,*NPWAVEINCAPS2A,*LPWAVEINCAPS2A;
typedef struct tagWAVEINCAPS2W {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} WAVEINCAPS2W,*PWAVEINCAPS2W,*NPWAVEINCAPS2W,*LPWAVEINCAPS2W;
typedef WAVEINCAPS2A WAVEINCAPS2;
typedef PWAVEINCAPS2A PWAVEINCAPS2;
typedef NPWAVEINCAPS2A NPWAVEINCAPS2;
typedef LPWAVEINCAPS2A LPWAVEINCAPS2;
typedef struct waveformat_tag {
WORD wFormatTag;
WORD nChannels;
DWORD nSamplesPerSec;
DWORD nAvgBytesPerSec;
WORD nBlockAlign;
} WAVEFORMAT,*PWAVEFORMAT, *NPWAVEFORMAT,*LPWAVEFORMAT;
typedef struct pcmwaveformat_tag {
WAVEFORMAT wf;
WORD wBitsPerSample;
} PCMWAVEFORMAT,*PPCMWAVEFORMAT, *NPPCMWAVEFORMAT,*LPPCMWAVEFORMAT;
typedef struct tWAVEFORMATEX {
WORD wFormatTag;
WORD nChannels;
DWORD nSamplesPerSec;
DWORD nAvgBytesPerSec;
WORD nBlockAlign;
WORD wBitsPerSample;
WORD cbSize;
} WAVEFORMATEX,*PWAVEFORMATEX, *NPWAVEFORMATEX,*LPWAVEFORMATEX;
typedef const WAVEFORMATEX *LPCWAVEFORMATEX;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) waveOutGetNumDevs(void);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetDevCapsA(UINT_PTR uDeviceID,LPWAVEOUTCAPSA pwoc,UINT cbwoc);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetDevCapsW(UINT_PTR uDeviceID,LPWAVEOUTCAPSW pwoc,UINT cbwoc);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetVolume(HWAVEOUT hwo,LPDWORD pdwVolume);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutSetVolume(HWAVEOUT hwo,DWORD dwVolume);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetErrorTextA(MMRESULT mmrError,LPSTR pszText,UINT cchText);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetErrorTextW(MMRESULT mmrError,LPWSTR pszText,UINT cchText);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutOpen(LPHWAVEOUT phwo,UINT uDeviceID,LPCWAVEFORMATEX pwfx,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutClose(HWAVEOUT hwo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutPrepareHeader(HWAVEOUT hwo,LPWAVEHDR pwh,UINT cbwh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutUnprepareHeader(HWAVEOUT hwo,LPWAVEHDR pwh,UINT cbwh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutWrite(HWAVEOUT hwo,LPWAVEHDR pwh,UINT cbwh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutPause(HWAVEOUT hwo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutRestart(HWAVEOUT hwo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutReset(HWAVEOUT hwo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutBreakLoop(HWAVEOUT hwo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetPosition(HWAVEOUT hwo,LPMMTIME pmmt,UINT cbmmt);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetPitch(HWAVEOUT hwo,LPDWORD pdwPitch);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutSetPitch(HWAVEOUT hwo,DWORD dwPitch);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetPlaybackRate(HWAVEOUT hwo,LPDWORD pdwRate);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutSetPlaybackRate(HWAVEOUT hwo,DWORD dwRate);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutGetID(HWAVEOUT hwo,LPUINT puDeviceID);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveOutMessage(HWAVEOUT hwo,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) waveInGetNumDevs(void);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInGetDevCapsA(UINT_PTR uDeviceID,LPWAVEINCAPSA pwic,UINT cbwic);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInGetDevCapsW(UINT_PTR uDeviceID,LPWAVEINCAPSW pwic,UINT cbwic);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInGetErrorTextA(MMRESULT mmrError,LPSTR pszText,UINT cchText);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInGetErrorTextW(MMRESULT mmrError,LPWSTR pszText,UINT cchText);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInOpen(LPHWAVEIN phwi,UINT uDeviceID,LPCWAVEFORMATEX pwfx,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInClose(HWAVEIN hwi);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInPrepareHeader(HWAVEIN hwi,LPWAVEHDR pwh,UINT cbwh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInUnprepareHeader(HWAVEIN hwi,LPWAVEHDR pwh,UINT cbwh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInAddBuffer(HWAVEIN hwi,LPWAVEHDR pwh,UINT cbwh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInStart(HWAVEIN hwi);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInStop(HWAVEIN hwi);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInReset(HWAVEIN hwi);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInGetPosition(HWAVEIN hwi,LPMMTIME pmmt,UINT cbmmt);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInGetID(HWAVEIN hwi,LPUINT puDeviceID);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) waveInMessage(HWAVEIN hwi,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
struct HMIDI__ { int unused; }; typedef struct HMIDI__ *HMIDI;
struct HMIDIIN__ { int unused; }; typedef struct HMIDIIN__ *HMIDIIN;
struct HMIDIOUT__ { int unused; }; typedef struct HMIDIOUT__ *HMIDIOUT;
struct HMIDISTRM__ { int unused; }; typedef struct HMIDISTRM__ *HMIDISTRM;
typedef HMIDI *LPHMIDI;
typedef HMIDIIN *LPHMIDIIN;
typedef HMIDIOUT *LPHMIDIOUT;
typedef HMIDISTRM *LPHMIDISTRM;
typedef DRVCALLBACK MIDICALLBACK;
typedef MIDICALLBACK *LPMIDICALLBACK;
typedef WORD PATCHARRAY[128];
typedef WORD *LPPATCHARRAY;
typedef WORD KEYARRAY[128];
typedef WORD *LPKEYARRAY;
typedef struct tagMIDIOUTCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
WORD wTechnology;
WORD wVoices;
WORD wNotes;
WORD wChannelMask;
DWORD dwSupport;
} MIDIOUTCAPSA,*PMIDIOUTCAPSA,*NPMIDIOUTCAPSA,*LPMIDIOUTCAPSA;
typedef struct tagMIDIOUTCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
WORD wTechnology;
WORD wVoices;
WORD wNotes;
WORD wChannelMask;
DWORD dwSupport;
} MIDIOUTCAPSW,*PMIDIOUTCAPSW,*NPMIDIOUTCAPSW,*LPMIDIOUTCAPSW;
typedef MIDIOUTCAPSA MIDIOUTCAPS;
typedef PMIDIOUTCAPSA PMIDIOUTCAPS;
typedef NPMIDIOUTCAPSA NPMIDIOUTCAPS;
typedef LPMIDIOUTCAPSA LPMIDIOUTCAPS;
typedef struct tagMIDIOUTCAPS2A {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
WORD wTechnology;
WORD wVoices;
WORD wNotes;
WORD wChannelMask;
DWORD dwSupport;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} MIDIOUTCAPS2A,*PMIDIOUTCAPS2A,*NPMIDIOUTCAPS2A,*LPMIDIOUTCAPS2A;
typedef struct tagMIDIOUTCAPS2W {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
WORD wTechnology;
WORD wVoices;
WORD wNotes;
WORD wChannelMask;
DWORD dwSupport;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} MIDIOUTCAPS2W,*PMIDIOUTCAPS2W,*NPMIDIOUTCAPS2W,*LPMIDIOUTCAPS2W;
typedef MIDIOUTCAPS2A MIDIOUTCAPS2;
typedef PMIDIOUTCAPS2A PMIDIOUTCAPS2;
typedef NPMIDIOUTCAPS2A NPMIDIOUTCAPS2;
typedef LPMIDIOUTCAPS2A LPMIDIOUTCAPS2;
typedef struct tagMIDIINCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
DWORD dwSupport;
} MIDIINCAPSA,*PMIDIINCAPSA,*NPMIDIINCAPSA,*LPMIDIINCAPSA;
typedef struct tagMIDIINCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
DWORD dwSupport;
} MIDIINCAPSW,*PMIDIINCAPSW,*NPMIDIINCAPSW,*LPMIDIINCAPSW;
typedef MIDIINCAPSA MIDIINCAPS;
typedef PMIDIINCAPSA PMIDIINCAPS;
typedef NPMIDIINCAPSA NPMIDIINCAPS;
typedef LPMIDIINCAPSA LPMIDIINCAPS;
typedef struct tagMIDIINCAPS2A {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
DWORD dwSupport;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} MIDIINCAPS2A,*PMIDIINCAPS2A,*NPMIDIINCAPS2A,*LPMIDIINCAPS2A;
typedef struct tagMIDIINCAPS2W {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
DWORD dwSupport;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} MIDIINCAPS2W,*PMIDIINCAPS2W,*NPMIDIINCAPS2W,*LPMIDIINCAPS2W;
typedef MIDIINCAPS2A MIDIINCAPS2;
typedef PMIDIINCAPS2A PMIDIINCAPS2;
typedef NPMIDIINCAPS2A NPMIDIINCAPS2;
typedef LPMIDIINCAPS2A LPMIDIINCAPS2;
typedef struct midihdr_tag {
LPSTR lpData;
DWORD dwBufferLength;
DWORD dwBytesRecorded;
DWORD_PTR dwUser;
DWORD dwFlags;
struct midihdr_tag *lpNext;
DWORD_PTR reserved;
DWORD dwOffset;
DWORD_PTR dwReserved[8];
} MIDIHDR,*PMIDIHDR, *NPMIDIHDR,*LPMIDIHDR;
typedef struct midievent_tag {
DWORD dwDeltaTime;
DWORD dwStreamID;
DWORD dwEvent;
DWORD dwParms[1];
} MIDIEVENT;
typedef struct midistrmbuffver_tag {
DWORD dwVersion;
DWORD dwMid;
DWORD dwOEMVersion;
} MIDISTRMBUFFVER;
typedef struct midiproptimediv_tag {
DWORD cbStruct;
DWORD dwTimeDiv;
} MIDIPROPTIMEDIV,*LPMIDIPROPTIMEDIV;
typedef struct midiproptempo_tag {
DWORD cbStruct;
DWORD dwTempo;
} MIDIPROPTEMPO,*LPMIDIPROPTEMPO;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) midiOutGetNumDevs(void);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiStreamOpen(LPHMIDISTRM phms,LPUINT puDeviceID,DWORD cMidi,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiStreamClose(HMIDISTRM hms);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiStreamProperty(HMIDISTRM hms,LPBYTE lppropdata,DWORD dwProperty);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiStreamPosition(HMIDISTRM hms,LPMMTIME lpmmt,UINT cbmmt);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiStreamOut(HMIDISTRM hms,LPMIDIHDR pmh,UINT cbmh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiStreamPause(HMIDISTRM hms);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiStreamRestart(HMIDISTRM hms);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiStreamStop(HMIDISTRM hms);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiConnect(HMIDI hmi,HMIDIOUT hmo,LPVOID pReserved);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiDisconnect(HMIDI hmi,HMIDIOUT hmo,LPVOID pReserved);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutGetDevCapsA(UINT_PTR uDeviceID,LPMIDIOUTCAPSA pmoc,UINT cbmoc);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutGetDevCapsW(UINT_PTR uDeviceID,LPMIDIOUTCAPSW pmoc,UINT cbmoc);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutGetVolume(HMIDIOUT hmo,LPDWORD pdwVolume);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutSetVolume(HMIDIOUT hmo,DWORD dwVolume);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutGetErrorTextA(MMRESULT mmrError,LPSTR pszText,UINT cchText);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutGetErrorTextW(MMRESULT mmrError,LPWSTR pszText,UINT cchText);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutOpen(LPHMIDIOUT phmo,UINT uDeviceID,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutClose(HMIDIOUT hmo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutPrepareHeader(HMIDIOUT hmo,LPMIDIHDR pmh,UINT cbmh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutUnprepareHeader(HMIDIOUT hmo,LPMIDIHDR pmh,UINT cbmh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutShortMsg(HMIDIOUT hmo,DWORD dwMsg);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutLongMsg(HMIDIOUT hmo,LPMIDIHDR pmh,UINT cbmh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutReset(HMIDIOUT hmo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutCachePatches(HMIDIOUT hmo,UINT uBank,LPWORD pwpa,UINT fuCache);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutCacheDrumPatches(HMIDIOUT hmo,UINT uPatch,LPWORD pwkya,UINT fuCache);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutGetID(HMIDIOUT hmo,LPUINT puDeviceID);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiOutMessage(HMIDIOUT hmo,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) midiInGetNumDevs(void);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInGetDevCapsA(UINT_PTR uDeviceID,LPMIDIINCAPSA pmic,UINT cbmic);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInGetDevCapsW(UINT_PTR uDeviceID,LPMIDIINCAPSW pmic,UINT cbmic);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInGetErrorTextA(MMRESULT mmrError,LPSTR pszText,UINT cchText);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInGetErrorTextW(MMRESULT mmrError,LPWSTR pszText,UINT cchText);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInOpen(LPHMIDIIN phmi,UINT uDeviceID,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInClose(HMIDIIN hmi);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInPrepareHeader(HMIDIIN hmi,LPMIDIHDR pmh,UINT cbmh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInUnprepareHeader(HMIDIIN hmi,LPMIDIHDR pmh,UINT cbmh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInAddBuffer(HMIDIIN hmi,LPMIDIHDR pmh,UINT cbmh);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInStart(HMIDIIN hmi);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInStop(HMIDIIN hmi);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInReset(HMIDIIN hmi);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInGetID(HMIDIIN hmi,LPUINT puDeviceID);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) midiInMessage(HMIDIIN hmi,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
typedef struct tagAUXCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
WORD wTechnology;
WORD wReserved1;
DWORD dwSupport;
} AUXCAPSA,*PAUXCAPSA,*NPAUXCAPSA,*LPAUXCAPSA;
typedef struct tagAUXCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
WORD wTechnology;
WORD wReserved1;
DWORD dwSupport;
} AUXCAPSW,*PAUXCAPSW,*NPAUXCAPSW,*LPAUXCAPSW;
typedef AUXCAPSA AUXCAPS;
typedef PAUXCAPSA PAUXCAPS;
typedef NPAUXCAPSA NPAUXCAPS;
typedef LPAUXCAPSA LPAUXCAPS;
typedef struct tagAUXCAPS2A {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
WORD wTechnology;
WORD wReserved1;
DWORD dwSupport;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} AUXCAPS2A,*PAUXCAPS2A,*NPAUXCAPS2A,*LPAUXCAPS2A;
typedef struct tagAUXCAPS2W {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
WORD wTechnology;
WORD wReserved1;
DWORD dwSupport;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} AUXCAPS2W,*PAUXCAPS2W,*NPAUXCAPS2W,*LPAUXCAPS2W;
typedef AUXCAPS2A AUXCAPS2;
typedef PAUXCAPS2A PAUXCAPS2;
typedef NPAUXCAPS2A NPAUXCAPS2;
typedef LPAUXCAPS2A LPAUXCAPS2;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) auxGetNumDevs(void);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) auxGetDevCapsA(UINT_PTR uDeviceID,LPAUXCAPSA pac,UINT cbac);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) auxGetDevCapsW(UINT_PTR uDeviceID,LPAUXCAPSW pac,UINT cbac);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) auxSetVolume(UINT uDeviceID,DWORD dwVolume);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) auxGetVolume(UINT uDeviceID,LPDWORD pdwVolume);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) auxOutMessage(UINT uDeviceID,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
struct HMIXEROBJ__ { int unused; }; typedef struct HMIXEROBJ__ *HMIXEROBJ;
typedef HMIXEROBJ *LPHMIXEROBJ;
struct HMIXER__ { int unused; }; typedef struct HMIXER__ *HMIXER;
typedef HMIXER *LPHMIXER;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) mixerGetNumDevs(void);
typedef struct tagMIXERCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
DWORD fdwSupport;
DWORD cDestinations;
} MIXERCAPSA,*PMIXERCAPSA,*LPMIXERCAPSA;
typedef struct tagMIXERCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
DWORD fdwSupport;
DWORD cDestinations;
} MIXERCAPSW,*PMIXERCAPSW,*LPMIXERCAPSW;
typedef MIXERCAPSA MIXERCAPS;
typedef PMIXERCAPSA PMIXERCAPS;
typedef LPMIXERCAPSA LPMIXERCAPS;
typedef struct tagMIXERCAPS2A {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
DWORD fdwSupport;
DWORD cDestinations;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} MIXERCAPS2A,*PMIXERCAPS2A,*LPMIXERCAPS2A;
typedef struct tagMIXERCAPS2W {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
DWORD fdwSupport;
DWORD cDestinations;
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} MIXERCAPS2W,*PMIXERCAPS2W,*LPMIXERCAPS2W;
typedef MIXERCAPS2A MIXERCAPS2;
typedef PMIXERCAPS2A PMIXERCAPS2;
typedef LPMIXERCAPS2A LPMIXERCAPS2;
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetDevCapsA(UINT_PTR uMxId,LPMIXERCAPSA pmxcaps,UINT cbmxcaps);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetDevCapsW(UINT_PTR uMxId,LPMIXERCAPSW pmxcaps,UINT cbmxcaps);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerOpen(LPHMIXER phmx,UINT uMxId,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerClose(HMIXER hmx);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) mixerMessage(HMIXER hmx,UINT uMsg,DWORD_PTR dwParam1,DWORD_PTR dwParam2);
typedef struct tagMIXERLINEA {
DWORD cbStruct;
DWORD dwDestination;
DWORD dwSource;
DWORD dwLineID;
DWORD fdwLine;
DWORD_PTR dwUser;
DWORD dwComponentType;
DWORD cChannels;
DWORD cConnections;
DWORD cControls;
CHAR szShortName[16];
CHAR szName[64];
struct {
DWORD dwType;
DWORD dwDeviceID;
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[32];
} Target;
} MIXERLINEA,*PMIXERLINEA,*LPMIXERLINEA;
typedef struct tagMIXERLINEW {
DWORD cbStruct;
DWORD dwDestination;
DWORD dwSource;
DWORD dwLineID;
DWORD fdwLine;
DWORD_PTR dwUser;
DWORD dwComponentType;
DWORD cChannels;
DWORD cConnections;
DWORD cControls;
WCHAR szShortName[16];
WCHAR szName[64];
struct {
DWORD dwType;
DWORD dwDeviceID;
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[32];
} Target;
} MIXERLINEW,*PMIXERLINEW,*LPMIXERLINEW;
typedef MIXERLINEA MIXERLINE;
typedef PMIXERLINEA PMIXERLINE;
typedef LPMIXERLINEA LPMIXERLINE;
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetLineInfoA(HMIXEROBJ hmxobj,LPMIXERLINEA pmxl,DWORD fdwInfo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetLineInfoW(HMIXEROBJ hmxobj,LPMIXERLINEW pmxl,DWORD fdwInfo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetID(HMIXEROBJ hmxobj,UINT *puMxId,DWORD fdwId);
typedef struct tagMIXERCONTROLA {
DWORD cbStruct;
DWORD dwControlID;
DWORD dwControlType;
DWORD fdwControl;
DWORD cMultipleItems;
CHAR szShortName[16];
CHAR szName[64];
union {
__extension__ struct {
LONG lMinimum;
LONG lMaximum;
} ;
__extension__ struct {
DWORD dwMinimum;
DWORD dwMaximum;
} ;
DWORD dwReserved[6];
} Bounds;
union {
DWORD cSteps;
DWORD cbCustomData;
DWORD dwReserved[6];
} Metrics;
} MIXERCONTROLA,*PMIXERCONTROLA,*LPMIXERCONTROLA;
typedef struct tagMIXERCONTROLW {
DWORD cbStruct;
DWORD dwControlID;
DWORD dwControlType;
DWORD fdwControl;
DWORD cMultipleItems;
WCHAR szShortName[16];
WCHAR szName[64];
union {
__extension__ struct {
LONG lMinimum;
LONG lMaximum;
} ;
__extension__ struct {
DWORD dwMinimum;
DWORD dwMaximum;
} ;
DWORD dwReserved[6];
} Bounds;
union {
DWORD cSteps;
DWORD cbCustomData;
DWORD dwReserved[6];
} Metrics;
} MIXERCONTROLW,*PMIXERCONTROLW,*LPMIXERCONTROLW;
typedef MIXERCONTROLA MIXERCONTROL;
typedef PMIXERCONTROLA PMIXERCONTROL;
typedef LPMIXERCONTROLA LPMIXERCONTROL;
typedef struct tagMIXERLINECONTROLSA {
DWORD cbStruct;
DWORD dwLineID;
__extension__ union {
DWORD dwControlID;
DWORD dwControlType;
} ;
DWORD cControls;
DWORD cbmxctrl;
LPMIXERCONTROLA pamxctrl;
} MIXERLINECONTROLSA,*PMIXERLINECONTROLSA,*LPMIXERLINECONTROLSA;
typedef struct tagMIXERLINECONTROLSW {
DWORD cbStruct;
DWORD dwLineID;
__extension__ union {
DWORD dwControlID;
DWORD dwControlType;
} ;
DWORD cControls;
DWORD cbmxctrl;
LPMIXERCONTROLW pamxctrl;
} MIXERLINECONTROLSW,*PMIXERLINECONTROLSW,*LPMIXERLINECONTROLSW;
typedef MIXERLINECONTROLSA MIXERLINECONTROLS;
typedef PMIXERLINECONTROLSA PMIXERLINECONTROLS;
typedef LPMIXERLINECONTROLSA LPMIXERLINECONTROLS;
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetLineControlsA(HMIXEROBJ hmxobj,LPMIXERLINECONTROLSA pmxlc,DWORD fdwControls);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetLineControlsW(HMIXEROBJ hmxobj,LPMIXERLINECONTROLSW pmxlc,DWORD fdwControls);
typedef struct tMIXERCONTROLDETAILS {
DWORD cbStruct;
DWORD dwControlID;
DWORD cChannels;
__extension__ union {
HWND hwndOwner;
DWORD cMultipleItems;
} ;
DWORD cbDetails;
LPVOID paDetails;
} MIXERCONTROLDETAILS,*PMIXERCONTROLDETAILS,*LPMIXERCONTROLDETAILS;
typedef struct tagMIXERCONTROLDETAILS_LISTTEXTA {
DWORD dwParam1;
DWORD dwParam2;
CHAR szName[64];
} MIXERCONTROLDETAILS_LISTTEXTA,*PMIXERCONTROLDETAILS_LISTTEXTA,*LPMIXERCONTROLDETAILS_LISTTEXTA;
typedef struct tagMIXERCONTROLDETAILS_LISTTEXTW {
DWORD dwParam1;
DWORD dwParam2;
WCHAR szName[64];
} MIXERCONTROLDETAILS_LISTTEXTW,*PMIXERCONTROLDETAILS_LISTTEXTW,*LPMIXERCONTROLDETAILS_LISTTEXTW;
typedef MIXERCONTROLDETAILS_LISTTEXTA MIXERCONTROLDETAILS_LISTTEXT;
typedef PMIXERCONTROLDETAILS_LISTTEXTA PMIXERCONTROLDETAILS_LISTTEXT;
typedef LPMIXERCONTROLDETAILS_LISTTEXTA LPMIXERCONTROLDETAILS_LISTTEXT;
typedef struct tMIXERCONTROLDETAILS_BOOLEAN {
LONG fValue;
} MIXERCONTROLDETAILS_BOOLEAN,*PMIXERCONTROLDETAILS_BOOLEAN,*LPMIXERCONTROLDETAILS_BOOLEAN;
typedef struct tMIXERCONTROLDETAILS_SIGNED {
LONG lValue;
} MIXERCONTROLDETAILS_SIGNED,*PMIXERCONTROLDETAILS_SIGNED,*LPMIXERCONTROLDETAILS_SIGNED;
typedef struct tMIXERCONTROLDETAILS_UNSIGNED {
DWORD dwValue;
} MIXERCONTROLDETAILS_UNSIGNED,*PMIXERCONTROLDETAILS_UNSIGNED,*LPMIXERCONTROLDETAILS_UNSIGNED;
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetControlDetailsA(HMIXEROBJ hmxobj,LPMIXERCONTROLDETAILS pmxcd,DWORD fdwDetails);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerGetControlDetailsW(HMIXEROBJ hmxobj,LPMIXERCONTROLDETAILS pmxcd,DWORD fdwDetails);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mixerSetControlDetails(HMIXEROBJ hmxobj,LPMIXERCONTROLDETAILS pmxcd,DWORD fdwDetails);
typedef void (__attribute__((__stdcall__)) TIMECALLBACK)(UINT uTimerID,UINT uMsg,DWORD_PTR dwUser,DWORD_PTR dw1,DWORD_PTR dw2);
typedef TIMECALLBACK *LPTIMECALLBACK;
typedef struct timecaps_tag {
UINT wPeriodMin;
UINT wPeriodMax;
} TIMECAPS,*PTIMECAPS, *NPTIMECAPS,*LPTIMECAPS;
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) timeGetSystemTime(LPMMTIME pmmt,UINT cbmmt);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) timeGetTime(void);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) timeSetEvent(UINT uDelay,UINT uResolution,LPTIMECALLBACK fptc,DWORD_PTR dwUser,UINT fuEvent);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) timeKillEvent(UINT uTimerID);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) timeGetDevCaps(LPTIMECAPS ptc,UINT cbtc);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) timeBeginPeriod(UINT uPeriod);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) timeEndPeriod(UINT uPeriod);
typedef struct tagJOYCAPSA {
WORD wMid;
WORD wPid;
CHAR szPname[32];
UINT wXmin;
UINT wXmax;
UINT wYmin;
UINT wYmax;
UINT wZmin;
UINT wZmax;
UINT wNumButtons;
UINT wPeriodMin;
UINT wPeriodMax;
UINT wRmin;
UINT wRmax;
UINT wUmin;
UINT wUmax;
UINT wVmin;
UINT wVmax;
UINT wCaps;
UINT wMaxAxes;
UINT wNumAxes;
UINT wMaxButtons;
CHAR szRegKey[32];
CHAR szOEMVxD[260];
} JOYCAPSA,*PJOYCAPSA,*NPJOYCAPSA,*LPJOYCAPSA;
typedef struct tagJOYCAPSW {
WORD wMid;
WORD wPid;
WCHAR szPname[32];
UINT wXmin;
UINT wXmax;
UINT wYmin;
UINT wYmax;
UINT wZmin;
UINT wZmax;
UINT wNumButtons;
UINT wPeriodMin;
UINT wPeriodMax;
UINT wRmin;
UINT wRmax;
UINT wUmin;
UINT wUmax;
UINT wVmin;
UINT wVmax;
UINT wCaps;
UINT wMaxAxes;
UINT wNumAxes;
UINT wMaxButtons;
WCHAR szRegKey[32];
WCHAR szOEMVxD[260];
} JOYCAPSW,*PJOYCAPSW,*NPJOYCAPSW,*LPJOYCAPSW;
typedef JOYCAPSA JOYCAPS;
typedef PJOYCAPSA PJOYCAPS;
typedef NPJOYCAPSA NPJOYCAPS;
typedef LPJOYCAPSA LPJOYCAPS;
typedef struct tagJOYCAPS2A {
WORD wMid;
WORD wPid;
CHAR szPname[32];
UINT wXmin;
UINT wXmax;
UINT wYmin;
UINT wYmax;
UINT wZmin;
UINT wZmax;
UINT wNumButtons;
UINT wPeriodMin;
UINT wPeriodMax;
UINT wRmin;
UINT wRmax;
UINT wUmin;
UINT wUmax;
UINT wVmin;
UINT wVmax;
UINT wCaps;
UINT wMaxAxes;
UINT wNumAxes;
UINT wMaxButtons;
CHAR szRegKey[32];
CHAR szOEMVxD[260];
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} JOYCAPS2A,*PJOYCAPS2A,*NPJOYCAPS2A,*LPJOYCAPS2A;
typedef struct tagJOYCAPS2W {
WORD wMid;
WORD wPid;
WCHAR szPname[32];
UINT wXmin;
UINT wXmax;
UINT wYmin;
UINT wYmax;
UINT wZmin;
UINT wZmax;
UINT wNumButtons;
UINT wPeriodMin;
UINT wPeriodMax;
UINT wRmin;
UINT wRmax;
UINT wUmin;
UINT wUmax;
UINT wVmin;
UINT wVmax;
UINT wCaps;
UINT wMaxAxes;
UINT wNumAxes;
UINT wMaxButtons;
WCHAR szRegKey[32];
WCHAR szOEMVxD[260];
GUID ManufacturerGuid;
GUID ProductGuid;
GUID NameGuid;
} JOYCAPS2W,*PJOYCAPS2W,*NPJOYCAPS2W,*LPJOYCAPS2W;
typedef JOYCAPS2A JOYCAPS2;
typedef PJOYCAPS2A PJOYCAPS2;
typedef NPJOYCAPS2A NPJOYCAPS2;
typedef LPJOYCAPS2A LPJOYCAPS2;
typedef struct joyinfo_tag {
UINT wXpos;
UINT wYpos;
UINT wZpos;
UINT wButtons;
} JOYINFO,*PJOYINFO, *NPJOYINFO,*LPJOYINFO;
typedef struct joyinfoex_tag {
DWORD dwSize;
DWORD dwFlags;
DWORD dwXpos;
DWORD dwYpos;
DWORD dwZpos;
DWORD dwRpos;
DWORD dwUpos;
DWORD dwVpos;
DWORD dwButtons;
DWORD dwButtonNumber;
DWORD dwPOV;
DWORD dwReserved1;
DWORD dwReserved2;
} JOYINFOEX,*PJOYINFOEX, *NPJOYINFOEX,*LPJOYINFOEX;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) joyGetNumDevs(void);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) joyGetDevCapsA(UINT_PTR uJoyID,LPJOYCAPSA pjc,UINT cbjc);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) joyGetDevCapsW(UINT_PTR uJoyID,LPJOYCAPSW pjc,UINT cbjc);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) joyGetPos(UINT uJoyID,LPJOYINFO pji);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) joyGetPosEx(UINT uJoyID,LPJOYINFOEX pji);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) joyGetThreshold(UINT uJoyID,LPUINT puThreshold);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) joyReleaseCapture(UINT uJoyID);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) joySetCapture(HWND hwnd,UINT uJoyID,UINT uPeriod,WINBOOL fChanged);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) joySetThreshold(UINT uJoyID,UINT uThreshold);
typedef DWORD FOURCC;
typedef char *HPSTR;
struct HMMIO__ { int unused; }; typedef struct HMMIO__ *HMMIO;
typedef LRESULT (__attribute__((__stdcall__)) MMIOPROC)(LPSTR lpmmioinfo,UINT uMsg,LPARAM lParam1,LPARAM lParam2);
typedef MMIOPROC *LPMMIOPROC;
typedef struct _MMIOINFO {
DWORD dwFlags;
FOURCC fccIOProc;
LPMMIOPROC pIOProc;
UINT wErrorRet;
HTASK htask;
LONG cchBuffer;
HPSTR pchBuffer;
HPSTR pchNext;
HPSTR pchEndRead;
HPSTR pchEndWrite;
LONG lBufOffset;
LONG lDiskOffset;
DWORD adwInfo[3];
DWORD dwReserved1;
DWORD dwReserved2;
HMMIO hmmio;
} MMIOINFO,*PMMIOINFO, *NPMMIOINFO,*LPMMIOINFO;
typedef const MMIOINFO *LPCMMIOINFO;
typedef struct _MMCKINFO {
FOURCC ckid;
DWORD cksize;
FOURCC fccType;
DWORD dwDataOffset;
DWORD dwFlags;
} MMCKINFO,*PMMCKINFO, *NPMMCKINFO,*LPMMCKINFO;
typedef const MMCKINFO *LPCMMCKINFO;
__attribute__((dllimport)) FOURCC __attribute__((__stdcall__)) mmioStringToFOURCCA(LPCSTR sz,UINT uFlags);
__attribute__((dllimport)) FOURCC __attribute__((__stdcall__)) mmioStringToFOURCCW(LPCWSTR sz,UINT uFlags);
__attribute__((dllimport)) LPMMIOPROC __attribute__((__stdcall__)) mmioInstallIOProcA(FOURCC fccIOProc,LPMMIOPROC pIOProc,DWORD dwFlags);
__attribute__((dllimport)) LPMMIOPROC __attribute__((__stdcall__)) mmioInstallIOProcW(FOURCC fccIOProc,LPMMIOPROC pIOProc,DWORD dwFlags);
__attribute__((dllimport)) HMMIO __attribute__((__stdcall__)) mmioOpenA(LPSTR pszFileName,LPMMIOINFO pmmioinfo,DWORD fdwOpen);
__attribute__((dllimport)) HMMIO __attribute__((__stdcall__)) mmioOpenW(LPWSTR pszFileName,LPMMIOINFO pmmioinfo,DWORD fdwOpen);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioRenameA(LPCSTR pszFileName,LPCSTR pszNewFileName,LPCMMIOINFO pmmioinfo,DWORD fdwRename);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioRenameW(LPCWSTR pszFileName,LPCWSTR pszNewFileName,LPCMMIOINFO pmmioinfo,DWORD fdwRename);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioClose(HMMIO hmmio,UINT fuClose);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) mmioRead(HMMIO hmmio,HPSTR pch,LONG cch);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) mmioWrite(HMMIO hmmio,const char *pch,LONG cch);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) mmioSeek(HMMIO hmmio,LONG lOffset,int iOrigin);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioGetInfo(HMMIO hmmio,LPMMIOINFO pmmioinfo,UINT fuInfo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioSetInfo(HMMIO hmmio,LPCMMIOINFO pmmioinfo,UINT fuInfo);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioSetBuffer(HMMIO hmmio,LPSTR pchBuffer,LONG cchBuffer,UINT fuBuffer);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioFlush(HMMIO hmmio,UINT fuFlush);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioAdvance(HMMIO hmmio,LPMMIOINFO pmmioinfo,UINT fuAdvance);
__attribute__((dllimport)) LRESULT __attribute__((__stdcall__)) mmioSendMessage(HMMIO hmmio,UINT uMsg,LPARAM lParam1,LPARAM lParam2);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioDescend(HMMIO hmmio,LPMMCKINFO pmmcki,const MMCKINFO *pmmckiParent,UINT fuDescend);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioAscend(HMMIO hmmio,LPMMCKINFO pmmcki,UINT fuAscend);
__attribute__((dllimport)) MMRESULT __attribute__((__stdcall__)) mmioCreateChunk(HMMIO hmmio,LPMMCKINFO pmmcki,UINT fuCreate);
typedef DWORD MCIERROR;
typedef UINT MCIDEVICEID;
typedef UINT (__attribute__((__stdcall__)) *YIELDPROC)(MCIDEVICEID mciId,DWORD dwYieldData);
__attribute__((dllimport)) MCIERROR __attribute__((__stdcall__)) mciSendCommandA(MCIDEVICEID mciId,UINT uMsg,DWORD_PTR dwParam1,DWORD_PTR dwParam2);
__attribute__((dllimport)) MCIERROR __attribute__((__stdcall__)) mciSendCommandW(MCIDEVICEID mciId,UINT uMsg,DWORD_PTR dwParam1,DWORD_PTR dwParam2);
__attribute__((dllimport)) MCIERROR __attribute__((__stdcall__)) mciSendStringA(LPCSTR lpstrCommand,LPSTR lpstrReturnString,UINT uReturnLength,HWND hwndCallback);
__attribute__((dllimport)) MCIERROR __attribute__((__stdcall__)) mciSendStringW(LPCWSTR lpstrCommand,LPWSTR lpstrReturnString,UINT uReturnLength,HWND hwndCallback);
__attribute__((dllimport)) MCIDEVICEID __attribute__((__stdcall__)) mciGetDeviceIDA(LPCSTR pszDevice);
__attribute__((dllimport)) MCIDEVICEID __attribute__((__stdcall__)) mciGetDeviceIDW(LPCWSTR pszDevice);
__attribute__((dllimport)) MCIDEVICEID __attribute__((__stdcall__)) mciGetDeviceIDFromElementIDA(DWORD dwElementID,LPCSTR lpstrType);
__attribute__((dllimport)) MCIDEVICEID __attribute__((__stdcall__)) mciGetDeviceIDFromElementIDW(DWORD dwElementID,LPCWSTR lpstrType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) mciGetErrorStringA(MCIERROR mcierr,LPSTR pszText,UINT cchText);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) mciGetErrorStringW(MCIERROR mcierr,LPWSTR pszText,UINT cchText);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) mciSetYieldProc(MCIDEVICEID mciId,YIELDPROC fpYieldProc,DWORD dwYieldData);
__attribute__((dllimport)) HTASK __attribute__((__stdcall__)) mciGetCreatorTask(MCIDEVICEID mciId);
__attribute__((dllimport)) YIELDPROC __attribute__((__stdcall__)) mciGetYieldProc(MCIDEVICEID mciId,LPDWORD pdwYieldData);
typedef struct tagMCI_GENERIC_PARMS {
DWORD_PTR dwCallback;
} MCI_GENERIC_PARMS,*PMCI_GENERIC_PARMS,*LPMCI_GENERIC_PARMS;
typedef struct tagMCI_OPEN_PARMSA {
DWORD_PTR dwCallback;
MCIDEVICEID wDeviceID;
LPCSTR lpstrDeviceType;
LPCSTR lpstrElementName;
LPCSTR lpstrAlias;
} MCI_OPEN_PARMSA,*PMCI_OPEN_PARMSA,*LPMCI_OPEN_PARMSA;
typedef struct tagMCI_OPEN_PARMSW {
DWORD_PTR dwCallback;
MCIDEVICEID wDeviceID;
LPCWSTR lpstrDeviceType;
LPCWSTR lpstrElementName;
LPCWSTR lpstrAlias;
} MCI_OPEN_PARMSW,*PMCI_OPEN_PARMSW,*LPMCI_OPEN_PARMSW;
typedef MCI_OPEN_PARMSA MCI_OPEN_PARMS;
typedef PMCI_OPEN_PARMSA PMCI_OPEN_PARMS;
typedef LPMCI_OPEN_PARMSA LPMCI_OPEN_PARMS;
typedef struct tagMCI_PLAY_PARMS {
DWORD_PTR dwCallback;
DWORD dwFrom;
DWORD dwTo;
} MCI_PLAY_PARMS,*PMCI_PLAY_PARMS,*LPMCI_PLAY_PARMS;
typedef struct tagMCI_SEEK_PARMS {
DWORD_PTR dwCallback;
DWORD dwTo;
} MCI_SEEK_PARMS,*PMCI_SEEK_PARMS,*LPMCI_SEEK_PARMS;
typedef struct tagMCI_STATUS_PARMS {
DWORD_PTR dwCallback;
DWORD_PTR dwReturn;
DWORD dwItem;
DWORD dwTrack;
} MCI_STATUS_PARMS,*PMCI_STATUS_PARMS,*LPMCI_STATUS_PARMS;
typedef struct tagMCI_INFO_PARMSA {
DWORD_PTR dwCallback;
LPSTR lpstrReturn;
DWORD dwRetSize;
} MCI_INFO_PARMSA,*LPMCI_INFO_PARMSA;
typedef struct tagMCI_INFO_PARMSW {
DWORD_PTR dwCallback;
LPWSTR lpstrReturn;
DWORD dwRetSize;
} MCI_INFO_PARMSW,*LPMCI_INFO_PARMSW;
typedef MCI_INFO_PARMSA MCI_INFO_PARMS;
typedef LPMCI_INFO_PARMSA LPMCI_INFO_PARMS;
typedef struct tagMCI_GETDEVCAPS_PARMS {
DWORD_PTR dwCallback;
DWORD dwReturn;
DWORD dwItem;
} MCI_GETDEVCAPS_PARMS,*PMCI_GETDEVCAPS_PARMS,*LPMCI_GETDEVCAPS_PARMS;
typedef struct tagMCI_SYSINFO_PARMSA {
DWORD_PTR dwCallback;
LPSTR lpstrReturn;
DWORD dwRetSize;
DWORD dwNumber;
UINT wDeviceType;
} MCI_SYSINFO_PARMSA,*PMCI_SYSINFO_PARMSA,*LPMCI_SYSINFO_PARMSA;
typedef struct tagMCI_SYSINFO_PARMSW {
DWORD_PTR dwCallback;
LPWSTR lpstrReturn;
DWORD dwRetSize;
DWORD dwNumber;
UINT wDeviceType;
} MCI_SYSINFO_PARMSW,*PMCI_SYSINFO_PARMSW,*LPMCI_SYSINFO_PARMSW;
typedef MCI_SYSINFO_PARMSA MCI_SYSINFO_PARMS;
typedef PMCI_SYSINFO_PARMSA PMCI_SYSINFO_PARMS;
typedef LPMCI_SYSINFO_PARMSA LPMCI_SYSINFO_PARMS;
typedef struct tagMCI_SET_PARMS {
DWORD_PTR dwCallback;
DWORD dwTimeFormat;
DWORD dwAudio;
} MCI_SET_PARMS,*PMCI_SET_PARMS,*LPMCI_SET_PARMS;
typedef struct tagMCI_BREAK_PARMS {
DWORD_PTR dwCallback;
int nVirtKey;
HWND hwndBreak;
} MCI_BREAK_PARMS,*PMCI_BREAK_PARMS,*LPMCI_BREAK_PARMS;
typedef struct tagMCI_SAVE_PARMSA {
DWORD_PTR dwCallback;
LPCSTR lpfilename;
} MCI_SAVE_PARMSA,*PMCI_SAVE_PARMSA,*LPMCI_SAVE_PARMSA;
typedef struct tagMCI_SAVE_PARMSW {
DWORD_PTR dwCallback;
LPCWSTR lpfilename;
} MCI_SAVE_PARMSW,*PMCI_SAVE_PARMSW,*LPMCI_SAVE_PARMSW;
typedef MCI_SAVE_PARMSA MCI_SAVE_PARMS;
typedef PMCI_SAVE_PARMSA PMCI_SAVE_PARMS;
typedef LPMCI_SAVE_PARMSA LPMCI_SAVE_PARMS;
typedef struct tagMCI_LOAD_PARMSA {
DWORD_PTR dwCallback;
LPCSTR lpfilename;
} MCI_LOAD_PARMSA,*PMCI_LOAD_PARMSA,*LPMCI_LOAD_PARMSA;
typedef struct tagMCI_LOAD_PARMSW {
DWORD_PTR dwCallback;
LPCWSTR lpfilename;
} MCI_LOAD_PARMSW,*PMCI_LOAD_PARMSW,*LPMCI_LOAD_PARMSW;
typedef MCI_LOAD_PARMSA MCI_LOAD_PARMS;
typedef PMCI_LOAD_PARMSA PMCI_LOAD_PARMS;
typedef LPMCI_LOAD_PARMSA LPMCI_LOAD_PARMS;
typedef struct tagMCI_RECORD_PARMS {
DWORD_PTR dwCallback;
DWORD dwFrom;
DWORD dwTo;
} MCI_RECORD_PARMS,*LPMCI_RECORD_PARMS;
typedef struct tagMCI_VD_PLAY_PARMS {
DWORD_PTR dwCallback;
DWORD dwFrom;
DWORD dwTo;
DWORD dwSpeed;
} MCI_VD_PLAY_PARMS,*PMCI_VD_PLAY_PARMS,*LPMCI_VD_PLAY_PARMS;
typedef struct tagMCI_VD_STEP_PARMS {
DWORD_PTR dwCallback;
DWORD dwFrames;
} MCI_VD_STEP_PARMS,*PMCI_VD_STEP_PARMS,*LPMCI_VD_STEP_PARMS;
typedef struct tagMCI_VD_ESCAPE_PARMSA {
DWORD_PTR dwCallback;
LPCSTR lpstrCommand;
} MCI_VD_ESCAPE_PARMSA,*PMCI_VD_ESCAPE_PARMSA,*LPMCI_VD_ESCAPE_PARMSA;
typedef struct tagMCI_VD_ESCAPE_PARMSW {
DWORD_PTR dwCallback;
LPCWSTR lpstrCommand;
} MCI_VD_ESCAPE_PARMSW,*PMCI_VD_ESCAPE_PARMSW,*LPMCI_VD_ESCAPE_PARMSW;
typedef MCI_VD_ESCAPE_PARMSA MCI_VD_ESCAPE_PARMS;
typedef PMCI_VD_ESCAPE_PARMSA PMCI_VD_ESCAPE_PARMS;
typedef LPMCI_VD_ESCAPE_PARMSA LPMCI_VD_ESCAPE_PARMS;
typedef struct tagMCI_WAVE_OPEN_PARMSA {
DWORD_PTR dwCallback;
MCIDEVICEID wDeviceID;
LPCSTR lpstrDeviceType;
LPCSTR lpstrElementName;
LPCSTR lpstrAlias;
DWORD dwBufferSeconds;
} MCI_WAVE_OPEN_PARMSA,*PMCI_WAVE_OPEN_PARMSA,*LPMCI_WAVE_OPEN_PARMSA;
typedef struct tagMCI_WAVE_OPEN_PARMSW {
DWORD_PTR dwCallback;
MCIDEVICEID wDeviceID;
LPCWSTR lpstrDeviceType;
LPCWSTR lpstrElementName;
LPCWSTR lpstrAlias;
DWORD dwBufferSeconds;
} MCI_WAVE_OPEN_PARMSW,*PMCI_WAVE_OPEN_PARMSW,*LPMCI_WAVE_OPEN_PARMSW;
typedef MCI_WAVE_OPEN_PARMSA MCI_WAVE_OPEN_PARMS;
typedef PMCI_WAVE_OPEN_PARMSA PMCI_WAVE_OPEN_PARMS;
typedef LPMCI_WAVE_OPEN_PARMSA LPMCI_WAVE_OPEN_PARMS;
typedef struct tagMCI_WAVE_DELETE_PARMS {
DWORD_PTR dwCallback;
DWORD dwFrom;
DWORD dwTo;
} MCI_WAVE_DELETE_PARMS,*PMCI_WAVE_DELETE_PARMS,*LPMCI_WAVE_DELETE_PARMS;
typedef struct tagMCI_WAVE_SET_PARMS {
DWORD_PTR dwCallback;
DWORD dwTimeFormat;
DWORD dwAudio;
UINT wInput;
UINT wOutput;
WORD wFormatTag;
WORD wReserved2;
WORD nChannels;
WORD wReserved3;
DWORD nSamplesPerSec;
DWORD nAvgBytesPerSec;
WORD nBlockAlign;
WORD wReserved4;
WORD wBitsPerSample;
WORD wReserved5;
} MCI_WAVE_SET_PARMS,*PMCI_WAVE_SET_PARMS,*LPMCI_WAVE_SET_PARMS;
typedef struct tagMCI_SEQ_SET_PARMS {
DWORD_PTR dwCallback;
DWORD dwTimeFormat;
DWORD dwAudio;
DWORD dwTempo;
DWORD dwPort;
DWORD dwSlave;
DWORD dwMaster;
DWORD dwOffset;
} MCI_SEQ_SET_PARMS,*PMCI_SEQ_SET_PARMS,*LPMCI_SEQ_SET_PARMS;
typedef struct tagMCI_ANIM_OPEN_PARMSA {
DWORD_PTR dwCallback;
MCIDEVICEID wDeviceID;
LPCSTR lpstrDeviceType;
LPCSTR lpstrElementName;
LPCSTR lpstrAlias;
DWORD dwStyle;
HWND hWndParent;
} MCI_ANIM_OPEN_PARMSA,*PMCI_ANIM_OPEN_PARMSA,*LPMCI_ANIM_OPEN_PARMSA;
typedef struct tagMCI_ANIM_OPEN_PARMSW {
DWORD_PTR dwCallback;
MCIDEVICEID wDeviceID;
LPCWSTR lpstrDeviceType;
LPCWSTR lpstrElementName;
LPCWSTR lpstrAlias;
DWORD dwStyle;
HWND hWndParent;
} MCI_ANIM_OPEN_PARMSW,*PMCI_ANIM_OPEN_PARMSW,*LPMCI_ANIM_OPEN_PARMSW;
typedef MCI_ANIM_OPEN_PARMSA MCI_ANIM_OPEN_PARMS;
typedef PMCI_ANIM_OPEN_PARMSA PMCI_ANIM_OPEN_PARMS;
typedef LPMCI_ANIM_OPEN_PARMSA LPMCI_ANIM_OPEN_PARMS;
typedef struct tagMCI_ANIM_PLAY_PARMS {
DWORD_PTR dwCallback;
DWORD dwFrom;
DWORD dwTo;
DWORD dwSpeed;
} MCI_ANIM_PLAY_PARMS,*PMCI_ANIM_PLAY_PARMS,*LPMCI_ANIM_PLAY_PARMS;
typedef struct tagMCI_ANIM_STEP_PARMS {
DWORD_PTR dwCallback;
DWORD dwFrames;
} MCI_ANIM_STEP_PARMS,*PMCI_ANIM_STEP_PARMS,*LPMCI_ANIM_STEP_PARMS;
typedef struct tagMCI_ANIM_WINDOW_PARMSA {
DWORD_PTR dwCallback;
HWND hWnd;
UINT nCmdShow;
LPCSTR lpstrText;
} MCI_ANIM_WINDOW_PARMSA,*PMCI_ANIM_WINDOW_PARMSA,*LPMCI_ANIM_WINDOW_PARMSA;
typedef struct tagMCI_ANIM_WINDOW_PARMSW {
DWORD_PTR dwCallback;
HWND hWnd;
UINT nCmdShow;
LPCWSTR lpstrText;
} MCI_ANIM_WINDOW_PARMSW,*PMCI_ANIM_WINDOW_PARMSW,*LPMCI_ANIM_WINDOW_PARMSW;
typedef MCI_ANIM_WINDOW_PARMSA MCI_ANIM_WINDOW_PARMS;
typedef PMCI_ANIM_WINDOW_PARMSA PMCI_ANIM_WINDOW_PARMS;
typedef LPMCI_ANIM_WINDOW_PARMSA LPMCI_ANIM_WINDOW_PARMS;
typedef struct tagMCI_ANIM_RECT_PARMS {
DWORD_PTR dwCallback;
RECT rc;
} MCI_ANIM_RECT_PARMS;
typedef MCI_ANIM_RECT_PARMS *PMCI_ANIM_RECT_PARMS;
typedef MCI_ANIM_RECT_PARMS *LPMCI_ANIM_RECT_PARMS;
typedef struct tagMCI_ANIM_UPDATE_PARMS {
DWORD_PTR dwCallback;
RECT rc;
HDC hDC;
} MCI_ANIM_UPDATE_PARMS,*PMCI_ANIM_UPDATE_PARMS,*LPMCI_ANIM_UPDATE_PARMS;
typedef struct tagMCI_OVLY_OPEN_PARMSA {
DWORD_PTR dwCallback;
MCIDEVICEID wDeviceID;
LPCSTR lpstrDeviceType;
LPCSTR lpstrElementName;
LPCSTR lpstrAlias;
DWORD dwStyle;
HWND hWndParent;
} MCI_OVLY_OPEN_PARMSA,*PMCI_OVLY_OPEN_PARMSA,*LPMCI_OVLY_OPEN_PARMSA;
typedef struct tagMCI_OVLY_OPEN_PARMSW {
DWORD_PTR dwCallback;
MCIDEVICEID wDeviceID;
LPCWSTR lpstrDeviceType;
LPCWSTR lpstrElementName;
LPCWSTR lpstrAlias;
DWORD dwStyle;
HWND hWndParent;
} MCI_OVLY_OPEN_PARMSW,*PMCI_OVLY_OPEN_PARMSW,*LPMCI_OVLY_OPEN_PARMSW;
typedef MCI_OVLY_OPEN_PARMSA MCI_OVLY_OPEN_PARMS;
typedef PMCI_OVLY_OPEN_PARMSA PMCI_OVLY_OPEN_PARMS;
typedef LPMCI_OVLY_OPEN_PARMSA LPMCI_OVLY_OPEN_PARMS;
typedef struct tagMCI_OVLY_WINDOW_PARMSA {
DWORD_PTR dwCallback;
HWND hWnd;
UINT nCmdShow;
LPCSTR lpstrText;
} MCI_OVLY_WINDOW_PARMSA,*PMCI_OVLY_WINDOW_PARMSA,*LPMCI_OVLY_WINDOW_PARMSA;
typedef struct tagMCI_OVLY_WINDOW_PARMSW {
DWORD_PTR dwCallback;
HWND hWnd;
UINT nCmdShow;
LPCWSTR lpstrText;
} MCI_OVLY_WINDOW_PARMSW,*PMCI_OVLY_WINDOW_PARMSW,*LPMCI_OVLY_WINDOW_PARMSW;
typedef MCI_OVLY_WINDOW_PARMSA MCI_OVLY_WINDOW_PARMS;
typedef PMCI_OVLY_WINDOW_PARMSA PMCI_OVLY_WINDOW_PARMS;
typedef LPMCI_OVLY_WINDOW_PARMSA LPMCI_OVLY_WINDOW_PARMS;
typedef struct tagMCI_OVLY_RECT_PARMS {
DWORD_PTR dwCallback;
RECT rc;
} MCI_OVLY_RECT_PARMS,*PMCI_OVLY_RECT_PARMS,*LPMCI_OVLY_RECT_PARMS;
typedef struct tagMCI_OVLY_SAVE_PARMSA {
DWORD_PTR dwCallback;
LPCSTR lpfilename;
RECT rc;
} MCI_OVLY_SAVE_PARMSA,*PMCI_OVLY_SAVE_PARMSA,*LPMCI_OVLY_SAVE_PARMSA;
typedef struct tagMCI_OVLY_SAVE_PARMSW {
DWORD_PTR dwCallback;
LPCWSTR lpfilename;
RECT rc;
} MCI_OVLY_SAVE_PARMSW,*PMCI_OVLY_SAVE_PARMSW,*LPMCI_OVLY_SAVE_PARMSW;
typedef MCI_OVLY_SAVE_PARMSA MCI_OVLY_SAVE_PARMS;
typedef PMCI_OVLY_SAVE_PARMSA PMCI_OVLY_SAVE_PARMS;
typedef LPMCI_OVLY_SAVE_PARMSA LPMCI_OVLY_SAVE_PARMS;
typedef struct tagMCI_OVLY_LOAD_PARMSA {
DWORD_PTR dwCallback;
LPCSTR lpfilename;
RECT rc;
} MCI_OVLY_LOAD_PARMSA,*PMCI_OVLY_LOAD_PARMSA,*LPMCI_OVLY_LOAD_PARMSA;
typedef struct tagMCI_OVLY_LOAD_PARMSW {
DWORD_PTR dwCallback;
LPCWSTR lpfilename;
RECT rc;
} MCI_OVLY_LOAD_PARMSW,*PMCI_OVLY_LOAD_PARMSW,*LPMCI_OVLY_LOAD_PARMSW;
typedef MCI_OVLY_LOAD_PARMSA MCI_OVLY_LOAD_PARMS;
typedef PMCI_OVLY_LOAD_PARMSA PMCI_OVLY_LOAD_PARMS;
typedef LPMCI_OVLY_LOAD_PARMSA LPMCI_OVLY_LOAD_PARMS;
#pragma pack(pop)
typedef struct _NCB {
UCHAR ncb_command;
UCHAR ncb_retcode;
UCHAR ncb_lsn;
UCHAR ncb_num;
PUCHAR ncb_buffer;
WORD ncb_length;
UCHAR ncb_callname[16];
UCHAR ncb_name[16];
UCHAR ncb_rto;
UCHAR ncb_sto;
void (__attribute__((__stdcall__)) *ncb_post)(struct _NCB *);
UCHAR ncb_lana_num;
UCHAR ncb_cmd_cplt;
UCHAR ncb_reserve[10];
HANDLE ncb_event;
} NCB,*PNCB;
typedef struct _ADAPTER_STATUS {
UCHAR adapter_address[6];
UCHAR rev_major;
UCHAR reserved0;
UCHAR adapter_type;
UCHAR rev_minor;
WORD duration;
WORD frmr_recv;
WORD frmr_xmit;
WORD iframe_recv_err;
WORD xmit_aborts;
DWORD xmit_success;
DWORD recv_success;
WORD iframe_xmit_err;
WORD recv_buff_unavail;
WORD t1_timeouts;
WORD ti_timeouts;
DWORD reserved1;
WORD free_ncbs;
WORD max_cfg_ncbs;
WORD max_ncbs;
WORD xmit_buf_unavail;
WORD max_dgram_size;
WORD pending_sess;
WORD max_cfg_sess;
WORD max_sess;
WORD max_sess_pkt_size;
WORD name_count;
} ADAPTER_STATUS,*PADAPTER_STATUS;
typedef struct _NAME_BUFFER {
UCHAR name[16];
UCHAR name_num;
UCHAR name_flags;
} NAME_BUFFER,*PNAME_BUFFER;
typedef struct _SESSION_HEADER {
UCHAR sess_name;
UCHAR num_sess;
UCHAR rcv_dg_outstanding;
UCHAR rcv_any_outstanding;
} SESSION_HEADER,*PSESSION_HEADER;
typedef struct _SESSION_BUFFER {
UCHAR lsn;
UCHAR state;
UCHAR local_name[16];
UCHAR remote_name[16];
UCHAR rcvs_outstanding;
UCHAR sends_outstanding;
} SESSION_BUFFER,*PSESSION_BUFFER;
typedef struct _LANA_ENUM {
UCHAR length;
UCHAR lana[254 +1];
} LANA_ENUM,*PLANA_ENUM;
typedef struct _FIND_NAME_HEADER {
WORD node_count;
UCHAR reserved;
UCHAR unique_group;
} FIND_NAME_HEADER,*PFIND_NAME_HEADER;
typedef struct _FIND_NAME_BUFFER {
UCHAR length;
UCHAR access_control;
UCHAR frame_control;
UCHAR destination_addr[6];
UCHAR source_addr[6];
UCHAR routing_info[18];
} FIND_NAME_BUFFER,*PFIND_NAME_BUFFER;
typedef struct _ACTION_HEADER {
ULONG transport_id;
USHORT action_code;
USHORT reserved;
} ACTION_HEADER,*PACTION_HEADER;
UCHAR __attribute__((__stdcall__)) Netbios(PNCB pncb);
typedef void *I_RPC_HANDLE;
typedef long RPC_STATUS;
typedef unsigned char *RPC_CSTR;
typedef unsigned short *RPC_WSTR;
typedef I_RPC_HANDLE RPC_BINDING_HANDLE;
typedef RPC_BINDING_HANDLE handle_t;
typedef GUID UUID;
typedef struct _RPC_BINDING_VECTOR {
unsigned long Count;
RPC_BINDING_HANDLE BindingH[1];
} RPC_BINDING_VECTOR;
typedef struct _UUID_VECTOR {
unsigned long Count;
UUID *Uuid[1];
} UUID_VECTOR;
typedef void *RPC_IF_HANDLE;
typedef struct _RPC_IF_ID {
UUID Uuid;
unsigned short VersMajor;
unsigned short VersMinor;
} RPC_IF_ID;
typedef struct _RPC_PROTSEQ_VECTORA {
unsigned int Count;
unsigned char *Protseq[1];
} RPC_PROTSEQ_VECTORA;
typedef struct _RPC_PROTSEQ_VECTORW {
unsigned int Count;
unsigned short *Protseq[1];
} RPC_PROTSEQ_VECTORW;
typedef struct _RPC_POLICY {
unsigned int Length;
unsigned long EndpointFlags;
unsigned long NICFlags;
} RPC_POLICY,*PRPC_POLICY;
typedef void __attribute__((__stdcall__)) RPC_OBJECT_INQ_FN(UUID *ObjectUuid,UUID *TypeUuid,RPC_STATUS *Status);
typedef RPC_STATUS __attribute__((__stdcall__)) RPC_IF_CALLBACK_FN(RPC_IF_HANDLE InterfaceUuid,void *Context);
typedef void __attribute__((__stdcall__)) RPC_SECURITY_CALLBACK_FN(void *Context);
typedef struct {
unsigned int Count;
unsigned long Stats[1];
} RPC_STATS_VECTOR;
typedef struct {
unsigned long Count;
RPC_IF_ID *IfId[1];
} RPC_IF_ID_VECTOR;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingCopy(RPC_BINDING_HANDLE SourceBinding,RPC_BINDING_HANDLE *DestinationBinding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingFree(RPC_BINDING_HANDLE *Binding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingSetOption(RPC_BINDING_HANDLE hBinding,unsigned long option,ULONG_PTR optionValue);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqOption(RPC_BINDING_HANDLE hBinding,unsigned long option,ULONG_PTR *pOptionValue);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingFromStringBindingA(RPC_CSTR StringBinding,RPC_BINDING_HANDLE *Binding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingFromStringBindingW(RPC_WSTR StringBinding,RPC_BINDING_HANDLE *Binding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSsGetContextBinding(void *ContextHandle,RPC_BINDING_HANDLE *Binding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqObject(RPC_BINDING_HANDLE Binding,UUID *ObjectUuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingReset(RPC_BINDING_HANDLE Binding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingSetObject(RPC_BINDING_HANDLE Binding,UUID *ObjectUuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtInqDefaultProtectLevel(unsigned long AuthnSvc,unsigned long *AuthnLevel);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingToStringBindingA(RPC_BINDING_HANDLE Binding,RPC_CSTR *StringBinding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingToStringBindingW(RPC_BINDING_HANDLE Binding,RPC_WSTR *StringBinding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingVectorFree(RPC_BINDING_VECTOR **BindingVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcStringBindingComposeA(RPC_CSTR ObjUuid,RPC_CSTR Protseq,RPC_CSTR NetworkAddr,RPC_CSTR Endpoint,RPC_CSTR Options,RPC_CSTR *StringBinding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcStringBindingComposeW(RPC_WSTR ObjUuid,RPC_WSTR Protseq,RPC_WSTR NetworkAddr,RPC_WSTR Endpoint,RPC_WSTR Options,RPC_WSTR *StringBinding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcStringBindingParseA(RPC_CSTR StringBinding,RPC_CSTR *ObjUuid,RPC_CSTR *Protseq,RPC_CSTR *NetworkAddr,RPC_CSTR *Endpoint,RPC_CSTR *NetworkOptions);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcStringBindingParseW(RPC_WSTR StringBinding,RPC_WSTR *ObjUuid,RPC_WSTR *Protseq,RPC_WSTR *NetworkAddr,RPC_WSTR *Endpoint,RPC_WSTR *NetworkOptions);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcStringFreeA(RPC_CSTR *String);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcStringFreeW(RPC_WSTR *String);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcIfInqId(RPC_IF_HANDLE RpcIfHandle,RPC_IF_ID *RpcIfId);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNetworkIsProtseqValidA(RPC_CSTR Protseq);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNetworkIsProtseqValidW(RPC_WSTR Protseq);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtInqComTimeout(RPC_BINDING_HANDLE Binding,unsigned int *Timeout);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtSetComTimeout(RPC_BINDING_HANDLE Binding,unsigned int Timeout);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtSetCancelTimeout(long Timeout);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNetworkInqProtseqsA (RPC_PROTSEQ_VECTORA **ProtseqVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNetworkInqProtseqsW (RPC_PROTSEQ_VECTORW **ProtseqVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcObjectInqType(UUID *ObjUuid,UUID *TypeUuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcObjectSetInqFn(RPC_OBJECT_INQ_FN *InquiryFn);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcObjectSetType(UUID *ObjUuid,UUID *TypeUuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcProtseqVectorFreeA(RPC_PROTSEQ_VECTORA **ProtseqVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcProtseqVectorFreeW(RPC_PROTSEQ_VECTORW **ProtseqVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerInqBindings (RPC_BINDING_VECTOR **BindingVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerInqIf(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,void **MgrEpv);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerListen(unsigned int MinimumCallThreads,unsigned int MaxCalls,unsigned int DontWait);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerRegisterIf(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,void *MgrEpv);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerRegisterIfEx(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,void *MgrEpv,unsigned int Flags,unsigned int MaxCalls,RPC_IF_CALLBACK_FN *IfCallback);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerRegisterIf2(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,void *MgrEpv,unsigned int Flags,unsigned int MaxCalls,unsigned int MaxRpcSize,RPC_IF_CALLBACK_FN *IfCallbackFn);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUnregisterIf(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,unsigned int WaitForCallsToComplete);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUnregisterIfEx(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,int RundownContextHandles);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseAllProtseqs(unsigned int MaxCalls,void *SecurityDescriptor);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseAllProtseqsEx(unsigned int MaxCalls,void *SecurityDescriptor,PRPC_POLICY Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseAllProtseqsIf(unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseAllProtseqsIfEx(unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor,PRPC_POLICY Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqA(RPC_CSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqExA(RPC_CSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor,PRPC_POLICY Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqW(RPC_WSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqExW(RPC_WSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor,PRPC_POLICY Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqEpA(RPC_CSTR Protseq,unsigned int MaxCalls,RPC_CSTR Endpoint,void *SecurityDescriptor);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqEpExA(RPC_CSTR Protseq,unsigned int MaxCalls,RPC_CSTR Endpoint,void *SecurityDescriptor,PRPC_POLICY Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqEpW(RPC_WSTR Protseq,unsigned int MaxCalls,RPC_WSTR Endpoint,void *SecurityDescriptor);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqEpExW(RPC_WSTR Protseq,unsigned int MaxCalls,RPC_WSTR Endpoint,void *SecurityDescriptor,PRPC_POLICY Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqIfA(RPC_CSTR Protseq,unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqIfExA(RPC_CSTR Protseq,unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor,PRPC_POLICY Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqIfW(RPC_WSTR Protseq,unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerUseProtseqIfExW(RPC_WSTR Protseq,unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor,PRPC_POLICY Policy);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcServerYield (void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtStatsVectorFree(RPC_STATS_VECTOR **StatsVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtInqStats(RPC_BINDING_HANDLE Binding,RPC_STATS_VECTOR **Statistics);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtIsServerListening(RPC_BINDING_HANDLE Binding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtStopServerListening(RPC_BINDING_HANDLE Binding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtWaitServerListen(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtSetServerStackSize(unsigned long ThreadStackSize);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcSsDontSerializeContext(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtEnableIdleCleanup(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtInqIfIds(RPC_BINDING_HANDLE Binding,RPC_IF_ID_VECTOR **IfIdVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcIfIdVectorFree(RPC_IF_ID_VECTOR **IfIdVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtInqServerPrincNameA(RPC_BINDING_HANDLE Binding,unsigned long AuthnSvc,RPC_CSTR *ServerPrincName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtInqServerPrincNameW(RPC_BINDING_HANDLE Binding,unsigned long AuthnSvc,RPC_WSTR *ServerPrincName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerInqDefaultPrincNameA(unsigned long AuthnSvc,RPC_CSTR *PrincName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerInqDefaultPrincNameW(unsigned long AuthnSvc,RPC_WSTR *PrincName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcEpResolveBinding(RPC_BINDING_HANDLE Binding,RPC_IF_HANDLE IfSpec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingInqEntryNameA(RPC_BINDING_HANDLE Binding,unsigned long EntryNameSyntax,RPC_CSTR *EntryName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingInqEntryNameW(RPC_BINDING_HANDLE Binding,unsigned long EntryNameSyntax,RPC_WSTR *EntryName);
typedef void *RPC_AUTH_IDENTITY_HANDLE;
typedef void *RPC_AUTHZ_HANDLE;
typedef struct _RPC_SECURITY_QOS {
unsigned long Version;
unsigned long Capabilities;
unsigned long IdentityTracking;
unsigned long ImpersonationType;
} RPC_SECURITY_QOS,*PRPC_SECURITY_QOS;
typedef struct _SEC_WINNT_AUTH_IDENTITY_W {
unsigned short *User;
unsigned long UserLength;
unsigned short *Domain;
unsigned long DomainLength;
unsigned short *Password;
unsigned long PasswordLength;
unsigned long Flags;
} SEC_WINNT_AUTH_IDENTITY_W,*PSEC_WINNT_AUTH_IDENTITY_W;
typedef struct _SEC_WINNT_AUTH_IDENTITY_A {
unsigned char *User;
unsigned long UserLength;
unsigned char *Domain;
unsigned long DomainLength;
unsigned char *Password;
unsigned long PasswordLength;
unsigned long Flags;
} SEC_WINNT_AUTH_IDENTITY_A,*PSEC_WINNT_AUTH_IDENTITY_A;
typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_W {
SEC_WINNT_AUTH_IDENTITY_W *TransportCredentials;
unsigned long Flags;
unsigned long AuthenticationTarget;
unsigned long NumberOfAuthnSchemes;
unsigned long *AuthnSchemes;
unsigned short *ServerCertificateSubject;
} RPC_HTTP_TRANSPORT_CREDENTIALS_W,*PRPC_HTTP_TRANSPORT_CREDENTIALS_W;
typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_A {
SEC_WINNT_AUTH_IDENTITY_A *TransportCredentials;
unsigned long Flags;
unsigned long AuthenticationTarget;
unsigned long NumberOfAuthnSchemes;
unsigned long *AuthnSchemes;
unsigned char *ServerCertificateSubject;
} RPC_HTTP_TRANSPORT_CREDENTIALS_A,*PRPC_HTTP_TRANSPORT_CREDENTIALS_A;
typedef struct _RPC_SECURITY_QOS_V2_W {
unsigned long Version;
unsigned long Capabilities;
unsigned long IdentityTracking;
unsigned long ImpersonationType;
unsigned long AdditionalSecurityInfoType;
union {
RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials;
} u;
} RPC_SECURITY_QOS_V2_W,*PRPC_SECURITY_QOS_V2_W;
typedef struct _RPC_SECURITY_QOS_V2_A {
unsigned long Version;
unsigned long Capabilities;
unsigned long IdentityTracking;
unsigned long ImpersonationType;
unsigned long AdditionalSecurityInfoType;
union {
RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
} u;
} RPC_SECURITY_QOS_V2_A,*PRPC_SECURITY_QOS_V2_A;
typedef struct _RPC_SECURITY_QOS_V3_W {
unsigned long Version;
unsigned long Capabilities;
unsigned long IdentityTracking;
unsigned long ImpersonationType;
unsigned long AdditionalSecurityInfoType;
union {
RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials;
} u;
void *Sid;
} RPC_SECURITY_QOS_V3_W,*PRPC_SECURITY_QOS_V3_W;
typedef struct _RPC_SECURITY_QOS_V3_A {
unsigned long Version;
unsigned long Capabilities;
unsigned long IdentityTracking;
unsigned long ImpersonationType;
unsigned long AdditionalSecurityInfoType;
union {
RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
} u;
void *Sid;
} RPC_SECURITY_QOS_V3_A,*PRPC_SECURITY_QOS_V3_A;
typedef enum _RPC_HTTP_REDIRECTOR_STAGE {
RPCHTTP_RS_REDIRECT = 1,RPCHTTP_RS_ACCESS_1,RPCHTTP_RS_SESSION,RPCHTTP_RS_ACCESS_2,RPCHTTP_RS_INTERFACE
} RPC_HTTP_REDIRECTOR_STAGE;
typedef RPC_STATUS (__attribute__((__stdcall__)) *RPC_NEW_HTTP_PROXY_CHANNEL)(RPC_HTTP_REDIRECTOR_STAGE RedirectorStage,unsigned short *ServerName,unsigned short *ServerPort,unsigned short *RemoteUser,unsigned short *AuthType,void *ResourceUuid,void *Metadata,void *SessionId,void *Interface,void *Reserved,unsigned long Flags,unsigned short **NewServerName,unsigned short **NewServerPort);
typedef void (__attribute__((__stdcall__)) *RPC_HTTP_PROXY_FREE_STRING)(unsigned short *String);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcImpersonateClient(RPC_BINDING_HANDLE BindingHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcRevertToSelfEx(RPC_BINDING_HANDLE BindingHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcRevertToSelf(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqAuthClientA(RPC_BINDING_HANDLE ClientBinding,RPC_AUTHZ_HANDLE *Privs,RPC_CSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,unsigned long *AuthzSvc);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqAuthClientW(RPC_BINDING_HANDLE ClientBinding,RPC_AUTHZ_HANDLE *Privs,RPC_WSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,unsigned long *AuthzSvc);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqAuthClientExA(RPC_BINDING_HANDLE ClientBinding,RPC_AUTHZ_HANDLE *Privs,RPC_CSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,unsigned long *AuthzSvc,unsigned long Flags);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqAuthClientExW(RPC_BINDING_HANDLE ClientBinding,RPC_AUTHZ_HANDLE *Privs,RPC_WSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,unsigned long *AuthzSvc,unsigned long Flags);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqAuthInfoA(RPC_BINDING_HANDLE Binding,RPC_CSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,unsigned long *AuthzSvc);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqAuthInfoW(RPC_BINDING_HANDLE Binding,RPC_WSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,unsigned long *AuthzSvc);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingSetAuthInfoA(RPC_BINDING_HANDLE Binding,RPC_CSTR ServerPrincName,unsigned long AuthnLevel,unsigned long AuthnSvc,RPC_AUTH_IDENTITY_HANDLE AuthIdentity,unsigned long AuthzSvc);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingSetAuthInfoExA(RPC_BINDING_HANDLE Binding,RPC_CSTR ServerPrincName,unsigned long AuthnLevel,unsigned long AuthnSvc,RPC_AUTH_IDENTITY_HANDLE AuthIdentity,unsigned long AuthzSvc,RPC_SECURITY_QOS *SecurityQos);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingSetAuthInfoW(RPC_BINDING_HANDLE Binding,RPC_WSTR ServerPrincName,unsigned long AuthnLevel,unsigned long AuthnSvc,RPC_AUTH_IDENTITY_HANDLE AuthIdentity,unsigned long AuthzSvc);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingSetAuthInfoExW(RPC_BINDING_HANDLE Binding,RPC_WSTR ServerPrincName,unsigned long AuthnLevel,unsigned long AuthnSvc,RPC_AUTH_IDENTITY_HANDLE AuthIdentity,unsigned long AuthzSvc,RPC_SECURITY_QOS *SecurityQOS);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqAuthInfoExA(RPC_BINDING_HANDLE Binding,RPC_CSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,unsigned long *AuthzSvc,unsigned long RpcQosVersion,RPC_SECURITY_QOS *SecurityQOS);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingInqAuthInfoExW(RPC_BINDING_HANDLE Binding,RPC_WSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,unsigned long *AuthzSvc,unsigned long RpcQosVersion,RPC_SECURITY_QOS *SecurityQOS);
typedef void (__attribute__((__stdcall__)) *RPC_AUTH_KEY_RETRIEVAL_FN)(void *Arg,unsigned short *ServerPrincName,unsigned long KeyVer,void **Key,RPC_STATUS *Status);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerRegisterAuthInfoA(RPC_CSTR ServerPrincName,unsigned long AuthnSvc,RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,void *Arg);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerRegisterAuthInfoW(RPC_WSTR ServerPrincName,unsigned long AuthnSvc,RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,void *Arg);
typedef struct {
unsigned char *UserName;
unsigned char *ComputerName;
unsigned short Privilege;
unsigned long AuthFlags;
} RPC_CLIENT_INFORMATION1,*PRPC_CLIENT_INFORMATION1;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcBindingServerFromClient(RPC_BINDING_HANDLE ClientBinding,RPC_BINDING_HANDLE *ServerBinding);
__attribute__((dllimport)) __attribute__((noreturn)) void __attribute__((__stdcall__)) RpcRaiseException(RPC_STATUS exception);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcTestCancel(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerTestCancel(RPC_BINDING_HANDLE BindingHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcCancelThread(void *Thread);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcCancelThreadEx(void *Thread,long Timeout);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) UuidCreate(UUID *Uuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) UuidCreateSequential(UUID *Uuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) UuidToStringA(UUID *Uuid,RPC_CSTR *StringUuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) UuidFromStringA(RPC_CSTR StringUuid,UUID *Uuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) UuidToStringW(UUID *Uuid,RPC_WSTR *StringUuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) UuidFromStringW(RPC_WSTR StringUuid,UUID *Uuid);
__attribute__((dllimport)) signed int __attribute__((__stdcall__)) UuidCompare(UUID *Uuid1,UUID *Uuid2,RPC_STATUS *Status);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) UuidCreateNil(UUID *NilUuid);
__attribute__((dllimport)) int __attribute__((__stdcall__)) UuidEqual(UUID *Uuid1,UUID *Uuid2,RPC_STATUS *Status);
__attribute__((dllimport)) unsigned short __attribute__((__stdcall__)) UuidHash(UUID *Uuid,RPC_STATUS *Status);
__attribute__((dllimport)) int __attribute__((__stdcall__)) UuidIsNil(UUID *Uuid,RPC_STATUS *Status);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcEpRegisterNoReplaceA(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector,RPC_CSTR Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcEpRegisterNoReplaceW(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector,RPC_WSTR Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcEpRegisterA(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector,RPC_CSTR Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcEpRegisterW(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector,RPC_WSTR Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcEpUnregister(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) DceErrorInqTextA(RPC_STATUS RpcStatus,RPC_CSTR ErrorText);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) DceErrorInqTextW(RPC_STATUS RpcStatus,RPC_WSTR ErrorText);
typedef I_RPC_HANDLE *RPC_EP_INQ_HANDLE;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtEpEltInqBegin(RPC_BINDING_HANDLE EpBinding,unsigned long InquiryType,RPC_IF_ID *IfId,unsigned long VersOption,UUID *ObjectUuid,RPC_EP_INQ_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtEpEltInqDone(RPC_EP_INQ_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtEpEltInqNextA(RPC_EP_INQ_HANDLE InquiryContext,RPC_IF_ID *IfId,RPC_BINDING_HANDLE *Binding,UUID *ObjectUuid,RPC_CSTR *Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtEpEltInqNextW(RPC_EP_INQ_HANDLE InquiryContext,RPC_IF_ID *IfId,RPC_BINDING_HANDLE *Binding,UUID *ObjectUuid,RPC_WSTR *Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtEpUnregister(RPC_BINDING_HANDLE EpBinding,RPC_IF_ID *IfId,RPC_BINDING_HANDLE Binding,UUID *ObjectUuid);
typedef int (__attribute__((__stdcall__)) *RPC_MGMT_AUTHORIZATION_FN)(RPC_BINDING_HANDLE ClientBinding,unsigned long RequestedMgmtOperation,RPC_STATUS *Status);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcMgmtSetAuthorizationFn(RPC_MGMT_AUTHORIZATION_FN AuthorizationFn);
typedef struct _RPC_VERSION {
unsigned short MajorVersion;
unsigned short MinorVersion;
} RPC_VERSION;
typedef struct _RPC_SYNTAX_IDENTIFIER {
GUID SyntaxGUID;
RPC_VERSION SyntaxVersion;
} RPC_SYNTAX_IDENTIFIER,*PRPC_SYNTAX_IDENTIFIER;
typedef struct _RPC_MESSAGE {
RPC_BINDING_HANDLE Handle;
unsigned long DataRepresentation;
void *Buffer;
unsigned int BufferLength;
unsigned int ProcNum;
PRPC_SYNTAX_IDENTIFIER TransferSyntax;
void *RpcInterfaceInformation;
void *ReservedForRuntime;
void *ManagerEpv;
void *ImportContext;
unsigned long RpcFlags;
} RPC_MESSAGE,*PRPC_MESSAGE;
typedef RPC_STATUS __attribute__((__stdcall__)) RPC_FORWARD_FUNCTION(UUID *InterfaceId,RPC_VERSION *InterfaceVersion,UUID *ObjectId,unsigned char *Rpcpro,void **ppDestEndpoint);
enum RPC_ADDRESS_CHANGE_TYPE {
PROTOCOL_NOT_LOADED = 1,PROTOCOL_LOADED,PROTOCOL_ADDRESS_CHANGE
};
typedef void __attribute__((__stdcall__)) RPC_ADDRESS_CHANGE_FN(void *arg);
typedef void (__attribute__((__stdcall__)) *RPC_DISPATCH_FUNCTION)(PRPC_MESSAGE Message);
typedef struct {
unsigned int DispatchTableCount;
RPC_DISPATCH_FUNCTION *DispatchTable;
LONG_PTR Reserved;
} RPC_DISPATCH_TABLE,*PRPC_DISPATCH_TABLE;
typedef struct _RPC_PROTSEQ_ENDPOINT {
unsigned char *RpcProtocolSequence;
unsigned char *Endpoint;
} RPC_PROTSEQ_ENDPOINT,*PRPC_PROTSEQ_ENDPOINT;
typedef struct _RPC_SERVER_INTERFACE {
unsigned int Length;
RPC_SYNTAX_IDENTIFIER InterfaceId;
RPC_SYNTAX_IDENTIFIER TransferSyntax;
PRPC_DISPATCH_TABLE DispatchTable;
unsigned int RpcProtseqEndpointCount;
PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
void *DefaultManagerEpv;
void const *InterpreterInfo;
unsigned int Flags;
} RPC_SERVER_INTERFACE,*PRPC_SERVER_INTERFACE;
typedef struct _RPC_CLIENT_INTERFACE {
unsigned int Length;
RPC_SYNTAX_IDENTIFIER InterfaceId;
RPC_SYNTAX_IDENTIFIER TransferSyntax;
PRPC_DISPATCH_TABLE DispatchTable;
unsigned int RpcProtseqEndpointCount;
PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
ULONG_PTR Reserved;
void const *InterpreterInfo;
unsigned int Flags;
} RPC_CLIENT_INTERFACE,*PRPC_CLIENT_INTERFACE;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcNegotiateTransferSyntax(RPC_MESSAGE *Message);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcGetBuffer(RPC_MESSAGE *Message);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcGetBufferWithObject(RPC_MESSAGE *Message,UUID *ObjectUuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcSendReceive(RPC_MESSAGE *Message);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcFreeBuffer(RPC_MESSAGE *Message);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcSend(PRPC_MESSAGE Message);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcReceive(PRPC_MESSAGE Message,unsigned int Size);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcFreePipeBuffer(RPC_MESSAGE *Message);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcReallocPipeBuffer(PRPC_MESSAGE Message,unsigned int NewSize);
typedef void *I_RPC_MUTEX;
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcRequestMutex(I_RPC_MUTEX *Mutex);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcClearMutex(I_RPC_MUTEX Mutex);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcDeleteMutex(I_RPC_MUTEX Mutex);
__attribute__((dllimport)) void *__attribute__((__stdcall__)) I_RpcAllocate(unsigned int Size);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcFree(void *Object);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcPauseExecution(unsigned long Milliseconds);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcGetExtendedError(void);
typedef void (__attribute__((__stdcall__)) *PRPC_RUNDOWN)(void *AssociationContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcMonitorAssociation(RPC_BINDING_HANDLE Handle,PRPC_RUNDOWN RundownRoutine,void *Context);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcStopMonitorAssociation(RPC_BINDING_HANDLE Handle);
__attribute__((dllimport)) RPC_BINDING_HANDLE __attribute__((__stdcall__)) I_RpcGetCurrentCallHandle(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcGetAssociationContext(RPC_BINDING_HANDLE BindingHandle,void **AssociationContext);
__attribute__((dllimport)) void *__attribute__((__stdcall__)) I_RpcGetServerContextList(RPC_BINDING_HANDLE BindingHandle);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcSetServerContextList(RPC_BINDING_HANDLE BindingHandle,void *ServerContextList);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcNsInterfaceExported(unsigned long EntryNameSyntax,unsigned short *EntryName,RPC_SERVER_INTERFACE *RpcInterfaceInformation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcNsInterfaceUnexported(unsigned long EntryNameSyntax,unsigned short *EntryName,RPC_SERVER_INTERFACE *RpcInterfaceInformation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingToStaticStringBindingW(RPC_BINDING_HANDLE Binding,unsigned short **StringBinding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingInqSecurityContext(RPC_BINDING_HANDLE Binding,void **SecurityContextHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingInqWireIdForSnego(RPC_BINDING_HANDLE Binding,RPC_CSTR WireId);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingInqMarshalledTargetInfo (RPC_BINDING_HANDLE Binding,unsigned long *MarshalledTargetInfoLength,RPC_CSTR *MarshalledTargetInfo);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingInqLocalClientPID(RPC_BINDING_HANDLE Binding,unsigned long *Pid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingHandleToAsyncHandle(RPC_BINDING_HANDLE Binding,void **AsyncHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcNsBindingSetEntryNameW(RPC_BINDING_HANDLE Binding,unsigned long EntryNameSyntax,RPC_WSTR EntryName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcNsBindingSetEntryNameA(RPC_BINDING_HANDLE Binding,unsigned long EntryNameSyntax,RPC_CSTR EntryName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerUseProtseqEp2A(RPC_CSTR NetworkAddress,RPC_CSTR Protseq,unsigned int MaxCalls,RPC_CSTR Endpoint,void *SecurityDescriptor,void *Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerUseProtseqEp2W(RPC_WSTR NetworkAddress,RPC_WSTR Protseq,unsigned int MaxCalls,RPC_WSTR Endpoint,void *SecurityDescriptor,void *Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerUseProtseq2W(RPC_WSTR NetworkAddress,RPC_WSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor,void *Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerUseProtseq2A(RPC_CSTR NetworkAddress,RPC_CSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor,void *Policy);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingInqDynamicEndpointW(RPC_BINDING_HANDLE Binding,RPC_WSTR *DynamicEndpoint);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingInqDynamicEndpointA(RPC_BINDING_HANDLE Binding,RPC_CSTR *DynamicEndpoint);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerCheckClientRestriction(RPC_BINDING_HANDLE Context);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingInqTransportType(RPC_BINDING_HANDLE Binding,unsigned int *Type);
typedef struct _RPC_TRANSFER_SYNTAX {
UUID Uuid;
unsigned short VersMajor;
unsigned short VersMinor;
} RPC_TRANSFER_SYNTAX;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcIfInqTransferSyntaxes(RPC_IF_HANDLE RpcIfHandle,RPC_TRANSFER_SYNTAX *TransferSyntaxes,unsigned int TransferSyntaxSize,unsigned int *TransferSyntaxCount);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_UuidCreate(UUID *Uuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingCopy(RPC_BINDING_HANDLE SourceBinding,RPC_BINDING_HANDLE *DestinationBinding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingIsClientLocal(RPC_BINDING_HANDLE BindingHandle,unsigned int *ClientLocalFlag);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingInqConnId(RPC_BINDING_HANDLE Binding,void **ConnId,int *pfFirstCall);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcSsDontSerializeContext(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcLaunchDatagramReceiveThread(void *pAddress);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerRegisterForwardFunction(RPC_FORWARD_FUNCTION *pForwardFunction);
RPC_ADDRESS_CHANGE_FN *__attribute__((__stdcall__)) I_RpcServerInqAddressChangeFn();
RPC_STATUS __attribute__((__stdcall__)) I_RpcServerSetAddressChangeFn(RPC_ADDRESS_CHANGE_FN *pAddressChangeFn);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerInqLocalConnAddress(RPC_BINDING_HANDLE Binding,void *Buffer,unsigned long *BufferSize,unsigned long *AddressFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcSessionStrictContextHandle(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcTurnOnEEInfoPropagation(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcConnectionInqSockBuffSize(unsigned long *RecvBuffSize,unsigned long *SendBuffSize);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcConnectionSetSockBuffSize(unsigned long RecvBuffSize,unsigned long SendBuffSize);
typedef void (*RPCLT_PDU_FILTER_FUNC)(void *Buffer,unsigned int BufferLength,int fDatagram);
typedef void (__attribute__((__cdecl__)) *RPC_SETFILTER_FUNC)(RPCLT_PDU_FILTER_FUNC pfnFilter);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerStartListening(void *hWnd);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerStopListening();
typedef RPC_STATUS (*RPC_BLOCKING_FN)(void *hWnd,void *Context,void *hSyncEvent);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcBindingSetAsync(RPC_BINDING_HANDLE Binding,RPC_BLOCKING_FN BlockingFn,unsigned long ServerTid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcSetThreadParams(int fClientFree,void *Context,void *hWndClient);
__attribute__((dllimport)) unsigned int __attribute__((__stdcall__)) I_RpcWindowProc(void *hWnd,unsigned int Message,unsigned int wParam,unsigned long lParam);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerUnregisterEndpointA(RPC_CSTR Protseq,RPC_CSTR Endpoint);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerUnregisterEndpointW(RPC_WSTR Protseq,RPC_WSTR Endpoint);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcServerInqTransportType(unsigned int *Type);
__attribute__((dllimport)) long __attribute__((__stdcall__)) I_RpcMapWin32Status(RPC_STATUS Status);
typedef struct _RPC_C_OPT_METADATA_DESCRIPTOR {
unsigned long BufferSize;
char *Buffer;
} RPC_C_OPT_METADATA_DESCRIPTOR;
typedef struct _RDR_CALLOUT_STATE {
RPC_STATUS LastError;
void *LastEEInfo;
RPC_HTTP_REDIRECTOR_STAGE LastCalledStage;
unsigned short *ServerName;
unsigned short *ServerPort;
unsigned short *RemoteUser;
unsigned short *AuthType;
unsigned char ResourceTypePresent;
unsigned char MetadataPresent;
unsigned char SessionIdPresent;
unsigned char InterfacePresent;
UUID ResourceType;
RPC_C_OPT_METADATA_DESCRIPTOR Metadata;
UUID SessionId;
RPC_SYNTAX_IDENTIFIER Interface;
void *CertContext;
} RDR_CALLOUT_STATE;
typedef RPC_STATUS (__attribute__((__stdcall__)) *I_RpcProxyIsValidMachineFn)(char *pszMachine,char *pszDotMachine,unsigned long dwPortNumber);
typedef RPC_STATUS (__attribute__((__stdcall__)) *I_RpcProxyGetClientAddressFn)(void *Context,char *Buffer,unsigned long *BufferLength);
typedef RPC_STATUS (__attribute__((__stdcall__)) *I_RpcProxyGetConnectionTimeoutFn)(unsigned long *ConnectionTimeout);
typedef RPC_STATUS (__attribute__((__stdcall__)) *I_RpcPerformCalloutFn)(void *Context,RDR_CALLOUT_STATE *CallOutState,RPC_HTTP_REDIRECTOR_STAGE Stage);
typedef void (__attribute__((__stdcall__)) *I_RpcFreeCalloutStateFn)(RDR_CALLOUT_STATE *CallOutState);
typedef struct tagI_RpcProxyCallbackInterface {
I_RpcProxyIsValidMachineFn IsValidMachineFn;
I_RpcProxyGetClientAddressFn GetClientAddressFn;
I_RpcProxyGetConnectionTimeoutFn GetConnectionTimeoutFn;
I_RpcPerformCalloutFn PerformCalloutFn;
I_RpcFreeCalloutStateFn FreeCalloutStateFn;
} I_RpcProxyCallbackInterface;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcProxyNewConnection(unsigned long ConnectionType,unsigned short *ServerAddress,unsigned short *ServerPort,unsigned short *MinConnTimeout,void *ConnectionParameter,RDR_CALLOUT_STATE *CallOutState,I_RpcProxyCallbackInterface *ProxyCallbackInterface);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcReplyToClientWithStatus(void *ConnectionParameter,RPC_STATUS RpcStatus);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcRecordCalloutFailure(RPC_STATUS RpcStatus,RDR_CALLOUT_STATE *CallOutState,unsigned short *DllName);
typedef void *RPC_NS_HANDLE;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingExportA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVec,UUID_VECTOR *ObjectUuidVec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingUnexportA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectUuidVec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingExportW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVec,UUID_VECTOR *ObjectUuidVec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingUnexportW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectUuidVec);
RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingExportPnPA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectVector);
RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingUnexportPnPA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectVector);
RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingExportPnPW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectVector);
RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingUnexportPnPW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectVector);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingLookupBeginA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID *ObjUuid,unsigned long BindingMaxCount,RPC_NS_HANDLE *LookupContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingLookupBeginW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID *ObjUuid,unsigned long BindingMaxCount,RPC_NS_HANDLE *LookupContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingLookupNext(RPC_NS_HANDLE LookupContext,RPC_BINDING_VECTOR **BindingVec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingLookupDone(RPC_NS_HANDLE *LookupContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupDeleteA(unsigned long GroupNameSyntax,RPC_CSTR GroupName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrAddA(unsigned long GroupNameSyntax,RPC_CSTR GroupName,unsigned long MemberNameSyntax,RPC_CSTR MemberName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrRemoveA(unsigned long GroupNameSyntax,RPC_CSTR GroupName,unsigned long MemberNameSyntax,RPC_CSTR MemberName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrInqBeginA(unsigned long GroupNameSyntax,RPC_CSTR GroupName,unsigned long MemberNameSyntax,RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrInqNextA(RPC_NS_HANDLE InquiryContext,RPC_CSTR *MemberName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupDeleteW(unsigned long GroupNameSyntax,RPC_WSTR GroupName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrAddW(unsigned long GroupNameSyntax,RPC_WSTR GroupName,unsigned long MemberNameSyntax,RPC_WSTR MemberName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrRemoveW(unsigned long GroupNameSyntax,RPC_WSTR GroupName,unsigned long MemberNameSyntax,RPC_WSTR MemberName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrInqBeginW(unsigned long GroupNameSyntax,RPC_WSTR GroupName,unsigned long MemberNameSyntax,RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrInqNextW(RPC_NS_HANDLE InquiryContext,RPC_WSTR *MemberName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsGroupMbrInqDone(RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileDeleteA(unsigned long ProfileNameSyntax,RPC_CSTR ProfileName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltAddA(unsigned long ProfileNameSyntax,RPC_CSTR ProfileName,RPC_IF_ID *IfId,unsigned long MemberNameSyntax,RPC_CSTR MemberName,unsigned long Priority,RPC_CSTR Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltRemoveA(unsigned long ProfileNameSyntax,RPC_CSTR ProfileName,RPC_IF_ID *IfId,unsigned long MemberNameSyntax,RPC_CSTR MemberName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltInqBeginA(unsigned long ProfileNameSyntax,RPC_CSTR ProfileName,unsigned long InquiryType,RPC_IF_ID *IfId,unsigned long VersOption,unsigned long MemberNameSyntax,RPC_CSTR MemberName,RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltInqNextA(RPC_NS_HANDLE InquiryContext,RPC_IF_ID *IfId,RPC_CSTR *MemberName,unsigned long *Priority,RPC_CSTR *Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileDeleteW(unsigned long ProfileNameSyntax,RPC_WSTR ProfileName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltAddW(unsigned long ProfileNameSyntax,RPC_WSTR ProfileName,RPC_IF_ID *IfId,unsigned long MemberNameSyntax,RPC_WSTR MemberName,unsigned long Priority,RPC_WSTR Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltRemoveW(unsigned long ProfileNameSyntax,RPC_WSTR ProfileName,RPC_IF_ID *IfId,unsigned long MemberNameSyntax,RPC_WSTR MemberName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltInqBeginW(unsigned long ProfileNameSyntax,RPC_WSTR ProfileName,unsigned long InquiryType,RPC_IF_ID *IfId,unsigned long VersOption,unsigned long MemberNameSyntax,RPC_WSTR MemberName,RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltInqNextW(RPC_NS_HANDLE InquiryContext,RPC_IF_ID *IfId,RPC_WSTR *MemberName,unsigned long *Priority,RPC_WSTR *Annotation);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsProfileEltInqDone(RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsEntryObjectInqBeginA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsEntryObjectInqBeginW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsEntryObjectInqNext(RPC_NS_HANDLE InquiryContext,UUID *ObjUuid);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsEntryObjectInqDone(RPC_NS_HANDLE *InquiryContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsEntryExpandNameA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_CSTR *ExpandedName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtBindingUnexportA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_ID *IfId,unsigned long VersOption,UUID_VECTOR *ObjectUuidVec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtEntryCreateA(unsigned long EntryNameSyntax,RPC_CSTR EntryName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtEntryDeleteA(unsigned long EntryNameSyntax,RPC_CSTR EntryName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtEntryInqIfIdsA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_ID_VECTOR **IfIdVec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtHandleSetExpAge(RPC_NS_HANDLE NsHandle,unsigned long ExpirationAge);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtInqExpAge(unsigned long *ExpirationAge);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtSetExpAge(unsigned long ExpirationAge);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsEntryExpandNameW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_WSTR *ExpandedName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtBindingUnexportW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_ID *IfId,unsigned long VersOption,UUID_VECTOR *ObjectUuidVec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtEntryCreateW(unsigned long EntryNameSyntax,RPC_WSTR EntryName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtEntryDeleteW(unsigned long EntryNameSyntax,RPC_WSTR EntryName);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsMgmtEntryInqIfIdsW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_ID_VECTOR **IfIdVec);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingImportBeginA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID *ObjUuid,RPC_NS_HANDLE *ImportContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingImportBeginW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID *ObjUuid,RPC_NS_HANDLE *ImportContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingImportNext(RPC_NS_HANDLE ImportContext,RPC_BINDING_HANDLE *Binding);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingImportDone(RPC_NS_HANDLE *ImportContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcNsBindingSelect(RPC_BINDING_VECTOR *BindingVec,RPC_BINDING_HANDLE *Binding);
typedef enum _RPC_NOTIFICATION_TYPES {
RpcNotificationTypeNone,RpcNotificationTypeEvent,RpcNotificationTypeApc,RpcNotificationTypeIoc,RpcNotificationTypeHwnd,
RpcNotificationTypeCallback
} RPC_NOTIFICATION_TYPES;
typedef enum _RPC_ASYNC_EVENT {
RpcCallComplete,RpcSendComplete,RpcReceiveComplete
} RPC_ASYNC_EVENT;
struct _RPC_ASYNC_STATE;
typedef void __attribute__((__stdcall__)) RPCNOTIFICATION_ROUTINE(struct _RPC_ASYNC_STATE *pAsync,void *Context,RPC_ASYNC_EVENT Event);
typedef RPCNOTIFICATION_ROUTINE *PFN_RPCNOTIFICATION_ROUTINE;
typedef struct _RPC_ASYNC_STATE {
unsigned int Size;
unsigned long Signature;
long Lock;
unsigned long Flags;
void *StubInfo;
void *UserInfo;
void *RuntimeInfo;
RPC_ASYNC_EVENT Event;
RPC_NOTIFICATION_TYPES NotificationType;
union {
struct {
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
HANDLE hThread;
} APC;
struct {
HANDLE hIOPort;
DWORD dwNumberOfBytesTransferred;
DWORD_PTR dwCompletionKey;
LPOVERLAPPED lpOverlapped;
} IOC;
struct {
HWND hWnd;
UINT Msg;
} HWND;
HANDLE hEvent;
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
} u;
LONG_PTR Reserved[4];
} RPC_ASYNC_STATE,*PRPC_ASYNC_STATE;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcAsyncInitializeHandle(PRPC_ASYNC_STATE pAsync,unsigned int Size);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcAsyncRegisterInfo(PRPC_ASYNC_STATE pAsync);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcAsyncGetCallStatus(PRPC_ASYNC_STATE pAsync);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcAsyncCompleteCall(PRPC_ASYNC_STATE pAsync,void *Reply);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcAsyncAbortCall(PRPC_ASYNC_STATE pAsync,unsigned long ExceptionCode);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcAsyncCancelCall(PRPC_ASYNC_STATE pAsync,WINBOOL fAbort);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcAsyncCleanupThread(DWORD dwTimeout);
typedef enum tagExtendedErrorParamTypes {
eeptAnsiString = 1,eeptUnicodeString,eeptLongVal,eeptShortVal,eeptPointerVal,eeptNone,eeptBinary
} ExtendedErrorParamTypes;
typedef struct tagBinaryParam {
void *Buffer;
short Size;
} BinaryParam;
typedef struct tagRPC_EE_INFO_PARAM {
ExtendedErrorParamTypes ParameterType;
union {
LPSTR AnsiString;
LPWSTR UnicodeString;
long LVal;
short SVal;
ULONGLONG PVal;
BinaryParam BVal;
} u;
} RPC_EE_INFO_PARAM;
typedef struct tagRPC_EXTENDED_ERROR_INFO {
ULONG Version;
LPWSTR ComputerName;
ULONG ProcessID;
union {
SYSTEMTIME SystemTime;
FILETIME FileTime;
} u;
ULONG GeneratingComponent;
ULONG Status;
USHORT DetectionLocation;
USHORT Flags;
int NumberOfParameters;
RPC_EE_INFO_PARAM Parameters[4];
} RPC_EXTENDED_ERROR_INFO;
typedef struct tagRPC_ERROR_ENUM_HANDLE {
ULONG Signature;
void *CurrentPos;
void *Head;
} RPC_ERROR_ENUM_HANDLE;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcErrorStartEnumeration(RPC_ERROR_ENUM_HANDLE *EnumHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcErrorGetNextRecord(RPC_ERROR_ENUM_HANDLE *EnumHandle,WINBOOL CopyStrings,RPC_EXTENDED_ERROR_INFO *ErrorInfo);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcErrorEndEnumeration(RPC_ERROR_ENUM_HANDLE *EnumHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcErrorResetEnumeration(RPC_ERROR_ENUM_HANDLE *EnumHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcErrorGetNumberOfRecords(RPC_ERROR_ENUM_HANDLE *EnumHandle,int *Records);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcErrorSaveErrorInfo(RPC_ERROR_ENUM_HANDLE *EnumHandle,PVOID *ErrorBlob,size_t *BlobSize);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcErrorLoadErrorInfo(PVOID ErrorBlob,size_t BlobSize,RPC_ERROR_ENUM_HANDLE *EnumHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcErrorAddRecord(RPC_EXTENDED_ERROR_INFO *ErrorInfo);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcErrorClearInformation(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcGetAuthorizationContextForClient(RPC_BINDING_HANDLE ClientBinding,WINBOOL ImpersonateOnReturn,PVOID Reserved1,PLARGE_INTEGER pExpirationTime,LUID Reserved2,DWORD Reserved3,PVOID Reserved4,PVOID *pAuthzClientContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcFreeAuthorizationContext(PVOID *pAuthzClientContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSsContextLockExclusive(RPC_BINDING_HANDLE ServerBindingHandle,PVOID UserContext);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSsContextLockShared(RPC_BINDING_HANDLE ServerBindingHandle,PVOID UserContext);
typedef struct tagRPC_CALL_ATTRIBUTES_V1_W {
unsigned int Version;
unsigned long Flags;
unsigned long ServerPrincipalNameBufferLength;
unsigned short *ServerPrincipalName;
unsigned long ClientPrincipalNameBufferLength;
unsigned short *ClientPrincipalName;
unsigned long AuthenticationLevel;
unsigned long AuthenticationService;
WINBOOL NullSession;
} RPC_CALL_ATTRIBUTES_V1_W;
typedef struct tagRPC_CALL_ATTRIBUTES_V1_A {
unsigned int Version;
unsigned long Flags;
unsigned long ServerPrincipalNameBufferLength;
unsigned char *ServerPrincipalName;
unsigned long ClientPrincipalNameBufferLength;
unsigned char *ClientPrincipalName;
unsigned long AuthenticationLevel;
unsigned long AuthenticationService;
WINBOOL NullSession;
} RPC_CALL_ATTRIBUTES_V1_A;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerInqCallAttributesW(RPC_BINDING_HANDLE ClientBinding,void *RpcCallAttributes);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcServerInqCallAttributesA(RPC_BINDING_HANDLE ClientBinding,void *RpcCallAttributes);
typedef RPC_CALL_ATTRIBUTES_V1_A RPC_CALL_ATTRIBUTES;
RPC_STATUS __attribute__((__stdcall__)) I_RpcAsyncSetHandle(PRPC_MESSAGE Message,PRPC_ASYNC_STATE pAsync);
RPC_STATUS __attribute__((__stdcall__)) I_RpcAsyncAbortCall(PRPC_ASYNC_STATE pAsync,unsigned long ExceptionCode);
int __attribute__((__stdcall__)) I_RpcExceptionFilter(unsigned long ExceptionCode);
typedef union _RPC_ASYNC_NOTIFICATION_INFO {
struct {
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
HANDLE hThread;
} APC;
struct {
HANDLE hIOPort;
DWORD dwNumberOfBytesTransferred;
DWORD_PTR dwCompletionKey;
LPOVERLAPPED lpOverlapped;
} IOC;
struct {
HWND hWnd;
UINT Msg;
} HWND;
HANDLE hEvent;
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
} RPC_ASYNC_NOTIFICATION_INFO, *PRPC_ASYNC_NOTIFICATION_INFO;
RPC_STATUS __attribute__((__stdcall__)) RpcBindingBind(
PRPC_ASYNC_STATE pAsync,
RPC_BINDING_HANDLE Binding,
RPC_IF_HANDLE IfSpec
);
RPC_STATUS __attribute__((__stdcall__)) RpcBindingUnbind(
RPC_BINDING_HANDLE Binding
);
typedef enum _RpcCallType {
rctInvalid,
rctNormal,
rctTraining,
rctGuaranteed
} RpcCallType;
typedef enum _RpcLocalAddressFormat {
rlafInvalid,
rlafIPv4,
rlafIPv6
} RpcLocalAddressFormat;
typedef enum _RPC_NOTIFICATIONS {
RpcNotificationCallNone = 0,
RpcNotificationClientDisconnect = 1,
RpcNotificationCallCancel = 2
} RPC_NOTIFICATIONS;
typedef enum _RpcCallClientLocality {
rcclInvalid,
rcclLocal,
rcclRemote,
rcclClientUnknownLocality
} RpcCallClientLocality;
RPC_STATUS __attribute__((__stdcall__)) RpcServerSubscribeForNotification(
RPC_BINDING_HANDLE Binding,
DWORD Notification,
RPC_NOTIFICATION_TYPES NotificationType,
RPC_ASYNC_NOTIFICATION_INFO *NotificationInfo
);
RPC_STATUS __attribute__((__stdcall__)) RpcServerUnsubscribeForNotification(
RPC_BINDING_HANDLE Binding,
RPC_NOTIFICATIONS Notification,
unsigned long *NotificationsQueued
);
#pragma pack(push,1)
struct HDROP__ { int unused; }; typedef struct HDROP__ *HDROP;
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) DragQueryFileA (HDROP hDrop, UINT iFile, LPSTR lpszFile, UINT cch);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) DragQueryFileW (HDROP hDrop, UINT iFile, LPWSTR lpszFile, UINT cch);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DragQueryPoint (HDROP hDrop, POINT *ppt);
__attribute__((dllimport)) void __attribute__((__stdcall__)) DragFinish (HDROP hDrop);
__attribute__((dllimport)) void __attribute__((__stdcall__)) DragAcceptFiles (HWND hWnd, WINBOOL fAccept);
__attribute__((dllimport)) HINSTANCE __attribute__((__stdcall__)) ShellExecuteA (HWND hwnd, LPCSTR lpOperation, LPCSTR lpFile, LPCSTR lpParameters, LPCSTR lpDirectory, INT nShowCmd);
__attribute__((dllimport)) HINSTANCE __attribute__((__stdcall__)) ShellExecuteW (HWND hwnd, LPCWSTR lpOperation, LPCWSTR lpFile, LPCWSTR lpParameters, LPCWSTR lpDirectory, INT nShowCmd);
__attribute__((dllimport)) HINSTANCE __attribute__((__stdcall__)) FindExecutableA (LPCSTR lpFile, LPCSTR lpDirectory, LPSTR lpResult);
__attribute__((dllimport)) HINSTANCE __attribute__((__stdcall__)) FindExecutableW (LPCWSTR lpFile, LPCWSTR lpDirectory, LPWSTR lpResult);
__attribute__((dllimport)) LPWSTR * __attribute__((__stdcall__)) CommandLineToArgvW (LPCWSTR lpCmdLine, int *pNumArgs);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) ShellAboutA (HWND hWnd, LPCSTR szApp, LPCSTR szOtherStuff, HICON hIcon);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) ShellAboutW (HWND hWnd, LPCWSTR szApp, LPCWSTR szOtherStuff, HICON hIcon);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) DuplicateIcon (HINSTANCE hInst, HICON hIcon);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) ExtractAssociatedIconA (HINSTANCE hInst, LPSTR pszIconPath, WORD *piIcon);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) ExtractAssociatedIconW (HINSTANCE hInst, LPWSTR pszIconPath, WORD *piIcon);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) ExtractAssociatedIconExA (HINSTANCE hInst, LPSTR pszIconPath, WORD *piIconIndex, WORD *piIconId);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) ExtractAssociatedIconExW (HINSTANCE hInst, LPWSTR pszIconPath, WORD *piIconIndex, WORD *piIconId);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) ExtractIconA (HINSTANCE hInst, LPCSTR pszExeFileName, UINT nIconIndex);
__attribute__((dllimport)) HICON __attribute__((__stdcall__)) ExtractIconW (HINSTANCE hInst, LPCWSTR pszExeFileName, UINT nIconIndex);
typedef struct _DRAGINFOA {
UINT uSize;
POINT pt;
WINBOOL fNC;
LPSTR lpFileList;
DWORD grfKeyState;
} DRAGINFOA,*LPDRAGINFOA;
typedef struct _DRAGINFOW {
UINT uSize;
POINT pt;
WINBOOL fNC;
LPWSTR lpFileList;
DWORD grfKeyState;
} DRAGINFOW,*LPDRAGINFOW;
typedef DRAGINFOA DRAGINFO;
typedef LPDRAGINFOA LPDRAGINFO;
typedef struct _AppBarData {
DWORD cbSize;
HWND hWnd;
UINT uCallbackMessage;
UINT uEdge;
RECT rc;
LPARAM lParam;
} APPBARDATA,*PAPPBARDATA;
__attribute__((dllimport)) UINT_PTR __attribute__((__stdcall__)) SHAppBarMessage (DWORD dwMessage, PAPPBARDATA pData);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) DoEnvironmentSubstA (LPSTR pszSrc, UINT cchSrc);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) DoEnvironmentSubstW (LPWSTR pszSrc, UINT cchSrc);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) ExtractIconExA (LPCSTR lpszFile, int nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIcons);
__attribute__((dllimport)) UINT __attribute__((__stdcall__)) ExtractIconExW (LPCWSTR lpszFile, int nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIcons);
typedef WORD FILEOP_FLAGS;
typedef WORD PRINTEROP_FLAGS;
typedef struct _SHFILEOPSTRUCTA {
HWND hwnd;
UINT wFunc;
LPCSTR pFrom;
LPCSTR pTo;
FILEOP_FLAGS fFlags;
WINBOOL fAnyOperationsAborted;
LPVOID hNameMappings;
PCSTR lpszProgressTitle;
} SHFILEOPSTRUCTA,*LPSHFILEOPSTRUCTA;
typedef struct _SHFILEOPSTRUCTW {
HWND hwnd;
UINT wFunc;
LPCWSTR pFrom;
LPCWSTR pTo;
FILEOP_FLAGS fFlags;
WINBOOL fAnyOperationsAborted;
LPVOID hNameMappings;
PCWSTR lpszProgressTitle;
} SHFILEOPSTRUCTW,*LPSHFILEOPSTRUCTW;
typedef SHFILEOPSTRUCTA SHFILEOPSTRUCT;
typedef LPSHFILEOPSTRUCTA LPSHFILEOPSTRUCT;
__attribute__((dllimport)) int __attribute__((__stdcall__)) SHFileOperationA (LPSHFILEOPSTRUCTA lpFileOp);
__attribute__((dllimport)) int __attribute__((__stdcall__)) SHFileOperationW (LPSHFILEOPSTRUCTW lpFileOp);
__attribute__((dllimport)) void __attribute__((__stdcall__)) SHFreeNameMappings (HANDLE hNameMappings);
typedef struct _SHNAMEMAPPINGA {
LPSTR pszOldPath;
LPSTR pszNewPath;
int cchOldPath;
int cchNewPath;
} SHNAMEMAPPINGA,*LPSHNAMEMAPPINGA;
typedef struct _SHNAMEMAPPINGW {
LPWSTR pszOldPath;
LPWSTR pszNewPath;
int cchOldPath;
int cchNewPath;
} SHNAMEMAPPINGW,*LPSHNAMEMAPPINGW;
typedef SHNAMEMAPPINGA SHNAMEMAPPING;
typedef LPSHNAMEMAPPINGA LPSHNAMEMAPPING;
typedef struct _SHELLEXECUTEINFOA {
DWORD cbSize;
ULONG fMask;
HWND hwnd;
LPCSTR lpVerb;
LPCSTR lpFile;
LPCSTR lpParameters;
LPCSTR lpDirectory;
int nShow;
HINSTANCE hInstApp;
void *lpIDList;
LPCSTR lpClass;
HKEY hkeyClass;
DWORD dwHotKey;
__extension__ union {
HANDLE hIcon;
HANDLE hMonitor;
} ;
HANDLE hProcess;
} SHELLEXECUTEINFOA,*LPSHELLEXECUTEINFOA;
typedef struct _SHELLEXECUTEINFOW {
DWORD cbSize;
ULONG fMask;
HWND hwnd;
LPCWSTR lpVerb;
LPCWSTR lpFile;
LPCWSTR lpParameters;
LPCWSTR lpDirectory;
int nShow;
HINSTANCE hInstApp;
void *lpIDList;
LPCWSTR lpClass;
HKEY hkeyClass;
DWORD dwHotKey;
__extension__ union {
HANDLE hIcon;
HANDLE hMonitor;
} ;
HANDLE hProcess;
} SHELLEXECUTEINFOW,*LPSHELLEXECUTEINFOW;
typedef SHELLEXECUTEINFOA SHELLEXECUTEINFO;
typedef LPSHELLEXECUTEINFOA LPSHELLEXECUTEINFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShellExecuteExA (SHELLEXECUTEINFOA *pExecInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ShellExecuteExW (SHELLEXECUTEINFOW *pExecInfo);
typedef struct _SHCREATEPROCESSINFOW {
DWORD cbSize;
ULONG fMask;
HWND hwnd;
LPCWSTR pszFile;
LPCWSTR pszParameters;
LPCWSTR pszCurrentDirectory;
HANDLE hUserToken;
LPSECURITY_ATTRIBUTES lpProcessAttributes;
LPSECURITY_ATTRIBUTES lpThreadAttributes;
WINBOOL bInheritHandles;
DWORD dwCreationFlags;
LPSTARTUPINFOW lpStartupInfo;
LPPROCESS_INFORMATION lpProcessInformation;
} SHCREATEPROCESSINFOW,*PSHCREATEPROCESSINFOW;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SHCreateProcessAsUserW (PSHCREATEPROCESSINFOW pscpi);
typedef struct _SHQUERYRBINFO {
DWORD cbSize;
__extension__ long long i64Size;
__extension__ long long i64NumItems;
} SHQUERYRBINFO,*LPSHQUERYRBINFO;
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SHQueryRecycleBinA (LPCSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo);
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SHQueryRecycleBinW (LPCWSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo);
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SHEmptyRecycleBinA (HWND hwnd, LPCSTR pszRootPath, DWORD dwFlags);
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SHEmptyRecycleBinW (HWND hwnd, LPCWSTR pszRootPath, DWORD dwFlags);
typedef struct _NOTIFYICONDATAA {
DWORD cbSize;
HWND hWnd;
UINT uID;
UINT uFlags;
UINT uCallbackMessage;
HICON hIcon;
CHAR szTip[128];
DWORD dwState;
DWORD dwStateMask;
CHAR szInfo[256];
__extension__ union {
UINT uTimeout;
UINT uVersion;
} ;
CHAR szInfoTitle[64];
DWORD dwInfoFlags;
GUID guidItem;
} NOTIFYICONDATAA,*PNOTIFYICONDATAA;
typedef struct _NOTIFYICONDATAW {
DWORD cbSize;
HWND hWnd;
UINT uID;
UINT uFlags;
UINT uCallbackMessage;
HICON hIcon;
WCHAR szTip[128];
DWORD dwState;
DWORD dwStateMask;
WCHAR szInfo[256];
__extension__ union {
UINT uTimeout;
UINT uVersion;
} ;
WCHAR szInfoTitle[64];
DWORD dwInfoFlags;
GUID guidItem;
} NOTIFYICONDATAW,*PNOTIFYICONDATAW;
typedef NOTIFYICONDATAA NOTIFYICONDATA;
typedef PNOTIFYICONDATAA PNOTIFYICONDATA;
typedef struct _NOTIFYICONIDENTIFIER {
DWORD cbSize;
HWND hWnd;
UINT uID;
GUID guidItem;
} NOTIFYICONIDENTIFIER,*PNOTIFYICONIDENTIFIER;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Shell_NotifyIconA (DWORD dwMessage, PNOTIFYICONDATAA lpData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) Shell_NotifyIconW (DWORD dwMessage, PNOTIFYICONDATAW lpData);
typedef struct _SHFILEINFOA {
HICON hIcon;
int iIcon;
DWORD dwAttributes;
CHAR szDisplayName[260];
CHAR szTypeName[80];
} SHFILEINFOA;
typedef struct _SHFILEINFOW {
HICON hIcon;
int iIcon;
DWORD dwAttributes;
WCHAR szDisplayName[260];
WCHAR szTypeName[80];
} SHFILEINFOW;
typedef SHFILEINFOA SHFILEINFO;
__attribute__((dllimport)) DWORD_PTR __attribute__((__stdcall__)) SHGetFileInfoA (LPCSTR pszPath, DWORD dwFileAttributes, SHFILEINFOA *psfi, UINT cbFileInfo, UINT uFlags);
__attribute__((dllimport)) DWORD_PTR __attribute__((__stdcall__)) SHGetFileInfoW (LPCWSTR pszPath, DWORD dwFileAttributes, SHFILEINFOW *psfi, UINT cbFileInfo, UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SHGetDiskFreeSpaceExA (LPCSTR pszDirectoryName, ULARGE_INTEGER *pulFreeBytesAvailableToCaller, ULARGE_INTEGER *pulTotalNumberOfBytes, ULARGE_INTEGER *pulTotalNumberOfFreeBytes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SHGetDiskFreeSpaceExW (LPCWSTR pszDirectoryName, ULARGE_INTEGER *pulFreeBytesAvailableToCaller, ULARGE_INTEGER *pulTotalNumberOfBytes, ULARGE_INTEGER *pulTotalNumberOfFreeBytes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SHGetNewLinkInfoA (LPCSTR pszLinkTo, LPCSTR pszDir, LPSTR pszName, WINBOOL *pfMustCopy, UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SHGetNewLinkInfoW (LPCWSTR pszLinkTo, LPCWSTR pszDir, LPWSTR pszName, WINBOOL *pfMustCopy, UINT uFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SHInvokePrinterCommandA (HWND hwnd, UINT uAction, LPCSTR lpBuf1, LPCSTR lpBuf2, WINBOOL fModal);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SHInvokePrinterCommandW (HWND hwnd, UINT uAction, LPCWSTR lpBuf1, LPCWSTR lpBuf2, WINBOOL fModal);
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SHLoadNonloadedIconOverlayIdentifiers (void);
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SHIsFileAvailableOffline (PCWSTR pwszPath, DWORD *pdwStatus);
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SHSetLocalizedName (PCWSTR pszPath, PCWSTR pszResModule, int idsRes);
extern __attribute__((dllimport)) int __attribute__((__cdecl__)) ShellMessageBoxA (HINSTANCE hAppInst, HWND hWnd, LPCSTR lpcText, LPCSTR lpcTitle, UINT fuStyle,...);
extern __attribute__((dllimport)) int __attribute__((__cdecl__)) ShellMessageBoxW (HINSTANCE hAppInst, HWND hWnd, LPCWSTR lpcText, LPCWSTR lpcTitle, UINT fuStyle,...);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsLFNDriveA (LPCSTR pszPath);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsLFNDriveW (LPCWSTR pszPath);
extern HRESULT __attribute__((__stdcall__)) SHEnumerateUnreadMailAccountsA (HKEY hKeyUser, DWORD dwIndex, LPSTR pszMailAddress, int cchMailAddress);
extern HRESULT __attribute__((__stdcall__)) SHEnumerateUnreadMailAccountsW (HKEY hKeyUser, DWORD dwIndex, LPWSTR pszMailAddress, int cchMailAddress);
extern HRESULT __attribute__((__stdcall__)) SHGetUnreadMailCountA (HKEY hKeyUser, LPCSTR pszMailAddress, DWORD *pdwCount, FILETIME *pFileTime, LPSTR pszShellExecuteCommand, int cchShellExecuteCommand);
extern HRESULT __attribute__((__stdcall__)) SHGetUnreadMailCountW (HKEY hKeyUser, LPCWSTR pszMailAddress, DWORD *pdwCount, FILETIME *pFileTime, LPWSTR pszShellExecuteCommand, int cchShellExecuteCommand);
extern HRESULT __attribute__((__stdcall__)) SHSetUnreadMailCountA (LPCSTR pszMailAddress, DWORD dwCount, LPCSTR pszShellExecuteCommand);
extern HRESULT __attribute__((__stdcall__)) SHSetUnreadMailCountW (LPCWSTR pszMailAddress, DWORD dwCount, LPCWSTR pszShellExecuteCommand);
extern WINBOOL __attribute__((__stdcall__)) SHTestTokenMembership (HANDLE hToken, ULONG ulRID);
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SHGetImageList (int iImageList, const IID *const riid, void **ppvObj);
typedef HRESULT (__attribute__((__stdcall__)) *PFNCANSHAREFOLDERW) (PCWSTR pszPath);
typedef HRESULT (__attribute__((__stdcall__)) *PFNSHOWSHAREFOLDERUIW) (HWND hwndParent, PCWSTR pszPath);
#pragma pack(pop)
#pragma pack(push,8)
typedef struct _PERF_DATA_BLOCK {
WCHAR Signature[4];
DWORD LittleEndian;
DWORD Version;
DWORD Revision;
DWORD TotalByteLength;
DWORD HeaderLength;
DWORD NumObjectTypes;
LONG DefaultObject;
SYSTEMTIME SystemTime;
LARGE_INTEGER PerfTime;
LARGE_INTEGER PerfFreq;
LARGE_INTEGER PerfTime100nSec;
DWORD SystemNameLength;
DWORD SystemNameOffset;
} PERF_DATA_BLOCK,*PPERF_DATA_BLOCK;
typedef struct _PERF_OBJECT_TYPE {
DWORD TotalByteLength;
DWORD DefinitionLength;
DWORD HeaderLength;
DWORD ObjectNameTitleIndex;
LPWSTR ObjectNameTitle;
DWORD ObjectHelpTitleIndex;
LPWSTR ObjectHelpTitle;
DWORD DetailLevel;
DWORD NumCounters;
LONG DefaultCounter;
LONG NumInstances;
DWORD CodePage;
LARGE_INTEGER PerfTime;
LARGE_INTEGER PerfFreq;
} PERF_OBJECT_TYPE,*PPERF_OBJECT_TYPE;
typedef struct _PERF_COUNTER_DEFINITION {
DWORD ByteLength;
DWORD CounterNameTitleIndex;
LPWSTR CounterNameTitle;
DWORD CounterHelpTitleIndex;
LPWSTR CounterHelpTitle;
LONG DefaultScale;
DWORD DetailLevel;
DWORD CounterType;
DWORD CounterSize;
DWORD CounterOffset;
} PERF_COUNTER_DEFINITION,*PPERF_COUNTER_DEFINITION;
typedef struct _PERF_INSTANCE_DEFINITION {
DWORD ByteLength;
DWORD ParentObjectTitleIndex;
DWORD ParentObjectInstance;
LONG UniqueID;
DWORD NameOffset;
DWORD NameLength;
} PERF_INSTANCE_DEFINITION,*PPERF_INSTANCE_DEFINITION;
typedef struct _PERF_COUNTER_BLOCK {
DWORD ByteLength;
} PERF_COUNTER_BLOCK,*PPERF_COUNTER_BLOCK;
typedef DWORD (__attribute__((__stdcall__)) PM_OPEN_PROC)(LPWSTR);
typedef DWORD (__attribute__((__stdcall__)) PM_COLLECT_PROC)(LPWSTR,LPVOID *,LPDWORD,LPDWORD);
typedef DWORD (__attribute__((__stdcall__)) PM_CLOSE_PROC)(void);
typedef DWORD (__attribute__((__stdcall__)) PM_QUERY_PROC)(LPDWORD,LPVOID *,LPDWORD,LPDWORD);
#pragma pack(pop)
typedef unsigned int ALG_ID;
typedef ULONG_PTR HCRYPTHASH;
typedef ULONG_PTR HCRYPTKEY;
typedef ULONG_PTR HCRYPTPROV;
typedef struct _CMS_KEY_INFO {
DWORD dwVersion;
ALG_ID Algid;
BYTE *pbOID;
DWORD cbOID;
} CMS_KEY_INFO,*PCMS_KEY_INFO;
typedef struct _HMAC_Info {
ALG_ID HashAlgid;
BYTE *pbInnerString;
DWORD cbInnerString;
BYTE *pbOuterString;
DWORD cbOuterString;
} HMAC_INFO,*PHMAC_INFO;
typedef struct _SCHANNEL_ALG {
DWORD dwUse;
ALG_ID Algid;
DWORD cBits;
DWORD dwFlags;
DWORD dwReserved;
} SCHANNEL_ALG,*PSCHANNEL_ALG;
typedef struct _PROV_ENUMALGS {
ALG_ID aiAlgid;
DWORD dwBitLen;
DWORD dwNameLen;
CHAR szName[20];
} PROV_ENUMALGS;
typedef struct _PROV_ENUMALGS_EX {
ALG_ID aiAlgid;
DWORD dwDefaultLen;
DWORD dwMinLen;
DWORD dwMaxLen;
DWORD dwProtocols;
DWORD dwNameLen;
CHAR szName[20];
DWORD dwLongNameLen;
CHAR szLongName[40];
} PROV_ENUMALGS_EX;
typedef struct _PUBLICKEYSTRUC {
BYTE bType;
BYTE bVersion;
WORD reserved;
ALG_ID aiKeyAlg;
} BLOBHEADER,PUBLICKEYSTRUC;
typedef struct _RSAPUBKEY {
DWORD magic;
DWORD bitlen;
DWORD pubexp;
} RSAPUBKEY;
typedef struct _PUBKEY {
DWORD magic;
DWORD bitlen;
} DHPUBKEY,DSSPUBKEY,KEAPUBKEY,TEKPUBKEY;
typedef struct _DSSSEED {
DWORD counter;
BYTE seed[20];
} DSSSEED;
typedef struct _PUBKEYVER3 {
DWORD magic;
DWORD bitlenP;
DWORD bitlenQ;
DWORD bitlenJ;
DSSSEED DSSSeed;
} DHPUBKEY_VER3, DSSPUBKEY_VER3;
typedef struct _PRIVKEYVER3 {
DWORD magic;
DWORD bitlenP;
DWORD bitlenQ;
DWORD bitlenJ;
DWORD bitlenX;
DSSSEED DSSSeed;
} DHPRIVKEY_VER3,DSSPRIVKEY_VER3;
typedef struct _KEY_TYPE_SUBTYPE {
DWORD dwKeySpec;
GUID Type;
GUID Subtype;
} KEY_TYPE_SUBTYPE,*PKEY_TYPE_SUBTYPE;
typedef struct _CERT_FORTEZZA_DATA_PROP {
unsigned char SerialNumber[8];
int CertIndex;
unsigned char CertLabel[36];
} CERT_FORTEZZA_DATA_PROP;
typedef struct _CRYPT_RC4_KEY_STATE {
unsigned char Key[16];
unsigned char SBox[256];
unsigned char i;
unsigned char j;
} CRYPT_RC4_KEY_STATE,*PCRYPT_RC4_KEY_STATE;
typedef struct _CRYPT_DES_KEY_STATE {
unsigned char Key[8];
unsigned char IV[8];
unsigned char Feedback[8];
} CRYPT_DES_KEY_STATE,*PCRYPT_DES_KEY_STATE;
typedef struct _CRYPT_3DES_KEY_STATE {
unsigned char Key[24];
unsigned char IV[8];
unsigned char Feedback[8];
} CRYPT_3DES_KEY_STATE,*PCRYPT_3DES_KEY_STATE;
typedef struct _CRYPTOAPI_BLOB {
DWORD cbData;
BYTE *pbData;
} CRYPT_INTEGER_BLOB,*PCRYPT_INTEGER_BLOB,CRYPT_UINT_BLOB,*PCRYPT_UINT_BLOB,CRYPT_OBJID_BLOB,*PCRYPT_OBJID_BLOB,CERT_NAME_BLOB,*PCERT_NAME_BLOB,CERT_RDN_VALUE_BLOB,*PCERT_RDN_VALUE_BLOB,CERT_BLOB,*PCERT_BLOB,CRL_BLOB,*PCRL_BLOB,DATA_BLOB,*PDATA_BLOB,CRYPT_DATA_BLOB,*PCRYPT_DATA_BLOB,CRYPT_HASH_BLOB,*PCRYPT_HASH_BLOB,CRYPT_DIGEST_BLOB,*PCRYPT_DIGEST_BLOB,CRYPT_DER_BLOB,*PCRYPT_DER_BLOB,CRYPT_ATTR_BLOB,*PCRYPT_ATTR_BLOB;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptAcquireContextA (HCRYPTPROV *phProv, LPCSTR szContainer, LPCSTR szProvider, DWORD dwProvType, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptAcquireContextW (HCRYPTPROV *phProv, LPCWSTR szContainer, LPCWSTR szProvider, DWORD dwProvType, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptReleaseContext (HCRYPTPROV hProv, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGenRandom (HCRYPTPROV hProv, DWORD dwLen, BYTE *pbBuffer);
typedef struct _CMS_DH_KEY_INFO {
DWORD dwVersion;
ALG_ID Algid;
LPSTR pszContentEncObjId;
CRYPT_DATA_BLOB PubInfo;
void *pReserved;
} CMS_DH_KEY_INFO,*PCMS_DH_KEY_INFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGenKey (HCRYPTPROV hProv, ALG_ID Algid, DWORD dwFlags, HCRYPTKEY *phKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDeriveKey (HCRYPTPROV hProv, ALG_ID Algid, HCRYPTHASH hBaseData, DWORD dwFlags, HCRYPTKEY *phKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDestroyKey (HCRYPTKEY hKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetKeyParam (HCRYPTKEY hKey, DWORD dwParam, const BYTE *pbData, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetKeyParam (HCRYPTKEY hKey, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetHashParam (HCRYPTHASH hHash, DWORD dwParam, const BYTE *pbData, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetHashParam (HCRYPTHASH hHash, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetProvParam (HCRYPTPROV hProv, DWORD dwParam, const BYTE *pbData, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetProvParam (HCRYPTPROV hProv, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetUserKey (HCRYPTPROV hProv, DWORD dwKeySpec, HCRYPTKEY *phUserKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptExportKey (HCRYPTKEY hKey, HCRYPTKEY hExpKey, DWORD dwBlobType, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptImportKey (HCRYPTPROV hProv, const BYTE *pbData, DWORD dwDataLen, HCRYPTKEY hPubKey, DWORD dwFlags, HCRYPTKEY *phKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEncrypt (HCRYPTKEY hKey, HCRYPTHASH hHash, WINBOOL Final, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen, DWORD dwBufLen);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDecrypt (HCRYPTKEY hKey, HCRYPTHASH hHash, WINBOOL Final, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptCreateHash (HCRYPTPROV hProv, ALG_ID Algid, HCRYPTKEY hKey, DWORD dwFlags, HCRYPTHASH *phHash);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptHashData (HCRYPTHASH hHash, const BYTE *pbData, DWORD dwDataLen, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptHashSessionKey (HCRYPTHASH hHash, HCRYPTKEY hKey, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDestroyHash (HCRYPTHASH hHash);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSignHashA (HCRYPTHASH hHash, DWORD dwKeySpec, LPCSTR szDescription, DWORD dwFlags, BYTE *pbSignature, DWORD *pdwSigLen);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSignHashW (HCRYPTHASH hHash, DWORD dwKeySpec, LPCWSTR szDescription, DWORD dwFlags, BYTE *pbSignature, DWORD *pdwSigLen);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifySignatureA (HCRYPTHASH hHash, const BYTE *pbSignature, DWORD dwSigLen, HCRYPTKEY hPubKey, LPCSTR szDescription, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifySignatureW (HCRYPTHASH hHash, const BYTE *pbSignature, DWORD dwSigLen, HCRYPTKEY hPubKey, LPCWSTR szDescription, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetProviderA (LPCSTR pszProvName, DWORD dwProvType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetProviderW (LPCWSTR pszProvName, DWORD dwProvType);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetProviderExA (LPCSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetProviderExW (LPCWSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetDefaultProviderA (DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags, LPSTR pszProvName, DWORD *pcbProvName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetDefaultProviderW (DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags, LPWSTR pszProvName, DWORD *pcbProvName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEnumProviderTypesA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szTypeName, DWORD *pcbTypeName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEnumProviderTypesW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szTypeName, DWORD *pcbTypeName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEnumProvidersA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szProvName, DWORD *pcbProvName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEnumProvidersW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szProvName, DWORD *pcbProvName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptContextAddRef (HCRYPTPROV hProv, DWORD *pdwReserved, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDuplicateKey (HCRYPTKEY hKey, DWORD *pdwReserved, DWORD dwFlags, HCRYPTKEY *phKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDuplicateHash (HCRYPTHASH hHash, DWORD *pdwReserved, DWORD dwFlags, HCRYPTHASH *phHash);
WINBOOL __attribute__((__cdecl__)) GetEncSChannel (BYTE **pData, DWORD *dwDecSize);
typedef ULONG_PTR HCRYPTPROV_OR_NCRYPT_KEY_HANDLE;
typedef ULONG_PTR HCRYPTPROV_LEGACY;
typedef LONG NTSTATUS,*PNTSTATUS;
typedef struct __BCRYPT_KEY_LENGTHS_STRUCT {
ULONG dwMinLength;
ULONG dwMaxLength;
ULONG dwIncrement;
} BCRYPT_KEY_LENGTHS_STRUCT;
typedef BCRYPT_KEY_LENGTHS_STRUCT BCRYPT_AUTH_TAG_LENGTHS_STRUCT;
typedef struct _BCRYPT_OID {
ULONG cbOID;
PUCHAR pbOID;
} BCRYPT_OID;
typedef struct _BCRYPT_OID_LIST {
ULONG dwOIDCount;
BCRYPT_OID *pOIDs;
} BCRYPT_OID_LIST;
typedef struct _BCRYPT_PKCS1_PADDING_INFO {
LPCWSTR pszAlgId;
} BCRYPT_PKCS1_PADDING_INFO;
typedef struct _BCRYPT_PSS_PADDING_INFO {
LPCWSTR pszAlgId;
ULONG cbSalt;
} BCRYPT_PSS_PADDING_INFO;
typedef struct _BCRYPT_OAEP_PADDING_INFO {
LPCWSTR pszAlgId;
PUCHAR pbLabel;
ULONG cbLabel;
} BCRYPT_OAEP_PADDING_INFO;
typedef struct _BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO {
ULONG cbSize;
ULONG dwInfoVersion;
PUCHAR pbNonce;
ULONG cbNonce;
PUCHAR pbAuthData;
ULONG cbAuthData;
PUCHAR pbTag;
ULONG cbTag;
PUCHAR pbMacContext;
ULONG cbMacContext;
ULONG cbAAD;
ULONGLONG cbData;
ULONG dwFlags;
} BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO,*PBCRYPT_AUTHENTICATED_CIPHER_MODE_INFO;
typedef struct _BCryptBuffer {
ULONG cbBuffer;
ULONG BufferType;
PVOID pvBuffer;
} BCryptBuffer,*PBCryptBuffer;
typedef struct _BCryptBufferDesc {
ULONG ulVersion;
ULONG cBuffers;
PBCryptBuffer pBuffers;
} BCryptBufferDesc,*PBCryptBufferDesc;
typedef PVOID BCRYPT_HANDLE;
typedef PVOID BCRYPT_ALG_HANDLE;
typedef PVOID BCRYPT_KEY_HANDLE;
typedef PVOID BCRYPT_HASH_HANDLE;
typedef PVOID BCRYPT_SECRET_HANDLE;
typedef struct _BCRYPT_KEY_BLOB {
ULONG Magic;
} BCRYPT_KEY_BLOB;
typedef struct _BCRYPT_RSAKEY_BLOB {
ULONG Magic;
ULONG BitLength;
ULONG cbPublicExp;
ULONG cbModulus;
ULONG cbPrime1;
ULONG cbPrime2;
} BCRYPT_RSAKEY_BLOB;
typedef struct _BCRYPT_ECCKEY_BLOB {
ULONG dwMagic;
ULONG cbKey;
} BCRYPT_ECCKEY_BLOB,*PBCRYPT_ECCKEY_BLOB;
typedef struct _BCRYPT_DH_KEY_BLOB {
ULONG dwMagic;
ULONG cbKey;
} BCRYPT_DH_KEY_BLOB,*PBCRYPT_DH_KEY_BLOB;
typedef struct _BCRYPT_DH_PARAMETER_HEADER {
ULONG cbLength;
ULONG dwMagic;
ULONG cbKeyLength;
} BCRYPT_DH_PARAMETER_HEADER;
typedef struct _BCRYPT_DSA_KEY_BLOB {
ULONG dwMagic;
ULONG cbKey;
UCHAR Count[4];
UCHAR Seed[20];
UCHAR q[20];
} BCRYPT_DSA_KEY_BLOB,*PBCRYPT_DSA_KEY_BLOB;
typedef enum {
DSA_HASH_ALGORITHM_SHA1,
DSA_HASH_ALGORITHM_SHA256,
DSA_HASH_ALGORITHM_SHA512
} HASHALGORITHM_ENUM;
typedef enum {
DSA_FIPS186_2,
DSA_FIPS186_3
} DSAFIPSVERSION_ENUM;
typedef struct _BCRYPT_DSA_KEY_BLOB_V2 {
ULONG dwMagic;
ULONG cbKey;
HASHALGORITHM_ENUM hashAlgorithm;
DSAFIPSVERSION_ENUM standardVersion;
ULONG cbSeedLength;
ULONG cbGroupSize;
UCHAR Count[4];
} BCRYPT_DSA_KEY_BLOB_V2,*PBCRYPT_DSA_KEY_BLOB_V2;
typedef struct _BCRYPT_KEY_DATA_BLOB_HEADER {
ULONG dwMagic;
ULONG dwVersion;
ULONG cbKeyData;
} BCRYPT_KEY_DATA_BLOB_HEADER,*PBCRYPT_KEY_DATA_BLOB_HEADER;
typedef struct _BCRYPT_DSA_PARAMETER_HEADER {
ULONG cbLength;
ULONG dwMagic;
ULONG cbKeyLength;
UCHAR Count[4];
UCHAR Seed[20];
UCHAR q[20];
} BCRYPT_DSA_PARAMETER_HEADER;
typedef struct _BCRYPT_DSA_PARAMETER_HEADER_V2 {
ULONG cbLength;
ULONG dwMagic;
ULONG cbKeyLength;
HASHALGORITHM_ENUM hashAlgorithm;
DSAFIPSVERSION_ENUM standardVersion;
ULONG cbSeedLength;
ULONG cbGroupSize;
UCHAR Count[4];
} BCRYPT_DSA_PARAMETER_HEADER_V2;
typedef struct _BCRYPT_ALGORITHM_IDENTIFIER {
LPWSTR pszName;
ULONG dwClass;
ULONG dwFlags;
} BCRYPT_ALGORITHM_IDENTIFIER;
typedef struct _BCRYPT_PROVIDER_NAME {
LPWSTR pszProviderName;
} BCRYPT_PROVIDER_NAME;
typedef struct _BCRYPT_INTERFACE_VERSION {
USHORT MajorVersion;
USHORT MinorVersion;
} BCRYPT_INTERFACE_VERSION,*PBCRYPT_INTERFACE_VERSION;
typedef struct _CRYPT_INTERFACE_REG {
ULONG dwInterface;
ULONG dwFlags;
ULONG cFunctions;
PWSTR *rgpszFunctions;
} CRYPT_INTERFACE_REG,*PCRYPT_INTERFACE_REG;
typedef struct _CRYPT_IMAGE_REG {
PWSTR pszImage;
ULONG cInterfaces;
PCRYPT_INTERFACE_REG *rgpInterfaces;
} CRYPT_IMAGE_REG,*PCRYPT_IMAGE_REG;
typedef struct _CRYPT_PROVIDER_REG {
ULONG cAliases;
PWSTR *rgpszAliases;
PCRYPT_IMAGE_REG pUM;
PCRYPT_IMAGE_REG pKM;
} CRYPT_PROVIDER_REG,*PCRYPT_PROVIDER_REG;
typedef struct _CRYPT_PROVIDERS {
ULONG cProviders;
PWSTR *rgpszProviders;
} CRYPT_PROVIDERS,*PCRYPT_PROVIDERS;
typedef struct _CRYPT_CONTEXT_CONFIG {
ULONG dwFlags;
ULONG dwReserved;
} CRYPT_CONTEXT_CONFIG,*PCRYPT_CONTEXT_CONFIG;
typedef struct _CRYPT_CONTEXT_FUNCTION_CONFIG {
ULONG dwFlags;
ULONG dwReserved;
} CRYPT_CONTEXT_FUNCTION_CONFIG,*PCRYPT_CONTEXT_FUNCTION_CONFIG;
typedef struct _CRYPT_CONTEXTS {
ULONG cContexts;
PWSTR *rgpszContexts;
} CRYPT_CONTEXTS,*PCRYPT_CONTEXTS;
typedef struct _CRYPT_CONTEXT_FUNCTIONS {
ULONG cFunctions;
PWSTR *rgpszFunctions;
} CRYPT_CONTEXT_FUNCTIONS,*PCRYPT_CONTEXT_FUNCTIONS;
typedef struct _CRYPT_CONTEXT_FUNCTION_PROVIDERS {
ULONG cProviders;
PWSTR *rgpszProviders;
} CRYPT_CONTEXT_FUNCTION_PROVIDERS,*PCRYPT_CONTEXT_FUNCTION_PROVIDERS;
typedef struct _CRYPT_PROPERTY_REF {
PWSTR pszProperty;
ULONG cbValue;
PUCHAR pbValue;
} CRYPT_PROPERTY_REF,*PCRYPT_PROPERTY_REF;
typedef struct _CRYPT_IMAGE_REF {
PWSTR pszImage;
ULONG dwFlags;
} CRYPT_IMAGE_REF,*PCRYPT_IMAGE_REF;
typedef struct _CRYPT_PROVIDER_REF {
ULONG dwInterface;
PWSTR pszFunction;
PWSTR pszProvider;
ULONG cProperties;
PCRYPT_PROPERTY_REF *rgpProperties;
PCRYPT_IMAGE_REF pUM;
PCRYPT_IMAGE_REF pKM;
} CRYPT_PROVIDER_REF,*PCRYPT_PROVIDER_REF;
typedef struct _CRYPT_PROVIDER_REFS {
ULONG cProviders;
PCRYPT_PROVIDER_REF *rgpProviders;
} CRYPT_PROVIDER_REFS,*PCRYPT_PROVIDER_REFS;
NTSTATUS __attribute__((__stdcall__)) BCryptOpenAlgorithmProvider (BCRYPT_ALG_HANDLE *phAlgorithm, LPCWSTR pszAlgId, LPCWSTR pszImplementation, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptEnumAlgorithms (ULONG dwAlgOperations, ULONG *pAlgCount, BCRYPT_ALGORITHM_IDENTIFIER **ppAlgList, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptEnumProviders (LPCWSTR pszAlgId, ULONG *pImplCount, BCRYPT_PROVIDER_NAME **ppImplList, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptGetProperty (BCRYPT_HANDLE hObject, LPCWSTR pszProperty, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptSetProperty (BCRYPT_HANDLE hObject, LPCWSTR pszProperty, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptCloseAlgorithmProvider (BCRYPT_ALG_HANDLE hAlgorithm, ULONG dwFlags);
void __attribute__((__stdcall__)) BCryptFreeBuffer (PVOID pvBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptGenerateSymmetricKey (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE *phKey, PUCHAR pbKeyObject, ULONG cbKeyObject, PUCHAR pbSecret, ULONG cbSecret, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptGenerateKeyPair (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE *phKey, ULONG dwLength, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptEncrypt (BCRYPT_KEY_HANDLE hKey, PUCHAR pbInput, ULONG cbInput, void *pPaddingInfo, PUCHAR pbIV, ULONG cbIV, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptDecrypt (BCRYPT_KEY_HANDLE hKey, PUCHAR pbInput, ULONG cbInput, void *pPaddingInfo, PUCHAR pbIV, ULONG cbIV, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptExportKey (BCRYPT_KEY_HANDLE hKey, BCRYPT_KEY_HANDLE hExportKey, LPCWSTR pszBlobType, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptImportKey (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE hImportKey, LPCWSTR pszBlobType, BCRYPT_KEY_HANDLE *phKey, PUCHAR pbKeyObject, ULONG cbKeyObject, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptImportKeyPair (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE hImportKey, LPCWSTR pszBlobType, BCRYPT_KEY_HANDLE *phKey, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptDuplicateKey (BCRYPT_KEY_HANDLE hKey, BCRYPT_KEY_HANDLE *phNewKey, PUCHAR pbKeyObject, ULONG cbKeyObject, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptFinalizeKeyPair (BCRYPT_KEY_HANDLE hKey, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptDestroyKey (BCRYPT_KEY_HANDLE hKey);
NTSTATUS __attribute__((__stdcall__)) BCryptDestroySecret (BCRYPT_SECRET_HANDLE hSecret);
NTSTATUS __attribute__((__stdcall__)) BCryptSignHash (BCRYPT_KEY_HANDLE hKey, void *pPaddingInfo, PUCHAR pbInput, ULONG cbInput, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptVerifySignature (BCRYPT_KEY_HANDLE hKey, void *pPaddingInfo, PUCHAR pbHash, ULONG cbHash, PUCHAR pbSignature, ULONG cbSignature, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptSecretAgreement (BCRYPT_KEY_HANDLE hPrivKey, BCRYPT_KEY_HANDLE hPubKey, BCRYPT_SECRET_HANDLE *phAgreedSecret, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptDeriveKey (BCRYPT_SECRET_HANDLE hSharedSecret, LPCWSTR pwszKDF, BCryptBufferDesc *pParameterList, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptKeyDerivation (BCRYPT_KEY_HANDLE hKey, BCryptBufferDesc *pParameterList, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptCreateHash (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_HASH_HANDLE *phHash, PUCHAR pbHashObject, ULONG cbHashObject, PUCHAR pbSecret, ULONG cbSecret, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptHashData (BCRYPT_HASH_HANDLE hHash, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptFinishHash (BCRYPT_HASH_HANDLE hHash, PUCHAR pbOutput, ULONG cbOutput, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptDuplicateHash (BCRYPT_HASH_HANDLE hHash, BCRYPT_HASH_HANDLE *phNewHash, PUCHAR pbHashObject, ULONG cbHashObject, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptDestroyHash (BCRYPT_HASH_HANDLE hHash);
NTSTATUS __attribute__((__stdcall__)) BCryptGenRandom (BCRYPT_ALG_HANDLE hAlgorithm, PUCHAR pbBuffer, ULONG cbBuffer, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptDeriveKeyCapi (BCRYPT_HASH_HANDLE hHash, BCRYPT_ALG_HANDLE hTargetAlg, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptDeriveKeyPBKDF2 (BCRYPT_ALG_HANDLE hPrf, PUCHAR pbPassword, ULONG cbPassword, PUCHAR pbSalt, ULONG cbSalt, ULONGLONG cIterations, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG dwFlags);
NTSTATUS __attribute__((__stdcall__)) BCryptResolveProviders (LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProvider, ULONG dwMode, ULONG dwFlags, ULONG *pcbBuffer, PCRYPT_PROVIDER_REFS *ppBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptGetFipsAlgorithmMode (BOOLEAN *pfEnabled);
NTSTATUS __attribute__((__stdcall__)) BCryptQueryProviderRegistration (LPCWSTR pszProvider, ULONG dwMode, ULONG dwInterface, ULONG *pcbBuffer, PCRYPT_PROVIDER_REG *ppBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptEnumRegisteredProviders (ULONG *pcbBuffer, PCRYPT_PROVIDERS *ppBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptCreateContext (ULONG dwTable, LPCWSTR pszContext, PCRYPT_CONTEXT_CONFIG pConfig);
NTSTATUS __attribute__((__stdcall__)) BCryptDeleteContext (ULONG dwTable, LPCWSTR pszContext);
NTSTATUS __attribute__((__stdcall__)) BCryptEnumContexts (ULONG dwTable, ULONG *pcbBuffer, PCRYPT_CONTEXTS *ppBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptConfigureContext (ULONG dwTable, LPCWSTR pszContext, PCRYPT_CONTEXT_CONFIG pConfig);
NTSTATUS __attribute__((__stdcall__)) BCryptQueryContextConfiguration (ULONG dwTable, LPCWSTR pszContext, ULONG *pcbBuffer, PCRYPT_CONTEXT_CONFIG *ppBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptAddContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG dwPosition);
NTSTATUS __attribute__((__stdcall__)) BCryptRemoveContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction);
NTSTATUS __attribute__((__stdcall__)) BCryptEnumContextFunctions (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTIONS *ppBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptConfigureContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, PCRYPT_CONTEXT_FUNCTION_CONFIG pConfig);
NTSTATUS __attribute__((__stdcall__)) BCryptQueryContextFunctionConfiguration (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTION_CONFIG *ppBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptEnumContextFunctionProviders (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTION_PROVIDERS *ppBuffer);
NTSTATUS __attribute__((__stdcall__)) BCryptSetContextFunctionProperty (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProperty, ULONG cbValue, PUCHAR pbValue);
NTSTATUS __attribute__((__stdcall__)) BCryptQueryContextFunctionProperty (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProperty, ULONG *pcbValue, PUCHAR *ppbValue);
NTSTATUS __attribute__((__stdcall__)) BCryptRegisterConfigChangeNotify (HANDLE *phEvent);
typedef LONG SECURITY_STATUS;
typedef LPVOID (__attribute__((__stdcall__)) *PFN_NCRYPT_ALLOC) (SIZE_T cbSize);
typedef void (__attribute__((__stdcall__)) *PFN_NCRYPT_FREE) (LPVOID pv);
typedef struct NCRYPT_ALLOC_PARA {
DWORD cbSize;
PFN_NCRYPT_ALLOC pfnAlloc;
PFN_NCRYPT_FREE pfnFree;
} NCRYPT_ALLOC_PARA;
typedef BCryptBuffer NCryptBuffer;
typedef BCryptBuffer *PNCryptBuffer;
typedef BCryptBufferDesc NCryptBufferDesc;
typedef BCryptBufferDesc *PNCryptBufferDesc;
typedef ULONG_PTR NCRYPT_HANDLE;
typedef ULONG_PTR NCRYPT_PROV_HANDLE;
typedef ULONG_PTR NCRYPT_KEY_HANDLE;
typedef ULONG_PTR NCRYPT_HASH_HANDLE;
typedef ULONG_PTR NCRYPT_SECRET_HANDLE;
typedef struct _NCryptAlgorithmName {
LPWSTR pszName;
DWORD dwClass;
DWORD dwAlgOperations;
DWORD dwFlags;
} NCryptAlgorithmName;
typedef struct NCryptKeyName {
LPWSTR pszName;
LPWSTR pszAlgid;
DWORD dwLegacyKeySpec;
DWORD dwFlags;
} NCryptKeyName;
typedef struct NCryptProviderName {
LPWSTR pszName;
LPWSTR pszComment;
} NCryptProviderName;
SECURITY_STATUS __attribute__((__stdcall__)) NCryptOpenStorageProvider (NCRYPT_PROV_HANDLE *phProvider, LPCWSTR pszProviderName, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptEnumAlgorithms (NCRYPT_PROV_HANDLE hProvider, DWORD dwAlgOperations, DWORD *pdwAlgCount, NCryptAlgorithmName **ppAlgList, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptIsAlgSupported (NCRYPT_PROV_HANDLE hProvider, LPCWSTR pszAlgId, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptEnumKeys (NCRYPT_PROV_HANDLE hProvider, LPCWSTR pszScope, NCryptKeyName **ppKeyName, PVOID *ppEnumState, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptEnumStorageProviders (DWORD *pdwProviderCount, NCryptProviderName **ppProviderList, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptFreeBuffer (PVOID pvInput);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptOpenKey (NCRYPT_PROV_HANDLE hProvider, NCRYPT_KEY_HANDLE *phKey, LPCWSTR pszKeyName, DWORD dwLegacyKeySpec, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptCreatePersistedKey (NCRYPT_PROV_HANDLE hProvider, NCRYPT_KEY_HANDLE *phKey, LPCWSTR pszAlgId, LPCWSTR pszKeyName, DWORD dwLegacyKeySpec, DWORD dwFlags);
typedef struct __NCRYPT_UI_POLICY {
DWORD dwVersion;
DWORD dwFlags;
LPCWSTR pszCreationTitle;
LPCWSTR pszFriendlyName;
LPCWSTR pszDescription;
} NCRYPT_UI_POLICY;
typedef struct __NCRYPT_SUPPORTED_LENGTHS {
DWORD dwMinLength;
DWORD dwMaxLength;
DWORD dwIncrement;
DWORD dwDefaultLength;
} NCRYPT_SUPPORTED_LENGTHS;
SECURITY_STATUS __attribute__((__stdcall__)) NCryptGetProperty (NCRYPT_HANDLE hObject, LPCWSTR pszProperty, PBYTE pbOutput, DWORD cbOutput, DWORD *pcbResult, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptSetProperty (NCRYPT_HANDLE hObject, LPCWSTR pszProperty, PBYTE pbInput, DWORD cbInput, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptFinalizeKey (NCRYPT_KEY_HANDLE hKey, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptEncrypt (NCRYPT_KEY_HANDLE hKey, PBYTE pbInput, DWORD cbInput, void *pPaddingInfo, PBYTE pbOutput, DWORD cbOutput, DWORD *pcbResult, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptDecrypt (NCRYPT_KEY_HANDLE hKey, PBYTE pbInput, DWORD cbInput, void *pPaddingInfo, PBYTE pbOutput, DWORD cbOutput, DWORD *pcbResult, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptImportKey (NCRYPT_PROV_HANDLE hProvider, NCRYPT_KEY_HANDLE hImportKey, LPCWSTR pszBlobType, NCryptBufferDesc *pParameterList, NCRYPT_KEY_HANDLE *phKey, PBYTE pbData, DWORD cbData, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptExportKey (NCRYPT_KEY_HANDLE hKey, NCRYPT_KEY_HANDLE hExportKey, LPCWSTR pszBlobType, NCryptBufferDesc *pParameterList, PBYTE pbOutput, DWORD cbOutput, DWORD *pcbResult, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptSignHash (NCRYPT_KEY_HANDLE hKey, void *pPaddingInfo, PBYTE pbHashValue, DWORD cbHashValue, PBYTE pbSignature, DWORD cbSignature, DWORD *pcbResult, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptVerifySignature (NCRYPT_KEY_HANDLE hKey, void *pPaddingInfo, PBYTE pbHashValue, DWORD cbHashValue, PBYTE pbSignature, DWORD cbSignature, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptDeleteKey (NCRYPT_KEY_HANDLE hKey, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptFreeObject (NCRYPT_HANDLE hObject);
WINBOOL __attribute__((__stdcall__)) NCryptIsKeyHandle (NCRYPT_KEY_HANDLE hKey);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptTranslateHandle (NCRYPT_PROV_HANDLE *phProvider, NCRYPT_KEY_HANDLE *phKey, HCRYPTPROV hLegacyProv, HCRYPTKEY hLegacyKey, DWORD dwLegacyKeySpec, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptNotifyChangeKey (NCRYPT_PROV_HANDLE hProvider, HANDLE *phEvent, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptSecretAgreement (NCRYPT_KEY_HANDLE hPrivKey, NCRYPT_KEY_HANDLE hPubKey, NCRYPT_SECRET_HANDLE *phAgreedSecret, DWORD dwFlags);
SECURITY_STATUS __attribute__((__stdcall__)) NCryptDeriveKey (NCRYPT_SECRET_HANDLE hSharedSecret, LPCWSTR pwszKDF, NCryptBufferDesc *pParameterList, PBYTE pbDerivedKey, DWORD cbDerivedKey, DWORD *pcbResult, ULONG dwFlags);
typedef struct _CRYPT_BIT_BLOB {
DWORD cbData;
BYTE *pbData;
DWORD cUnusedBits;
} CRYPT_BIT_BLOB,*PCRYPT_BIT_BLOB;
typedef struct _CRYPT_ALGORITHM_IDENTIFIER {
LPSTR pszObjId;
CRYPT_OBJID_BLOB Parameters;
} CRYPT_ALGORITHM_IDENTIFIER,*PCRYPT_ALGORITHM_IDENTIFIER;
typedef struct _CRYPT_OBJID_TABLE {
DWORD dwAlgId;
LPCSTR pszObjId;
} CRYPT_OBJID_TABLE,*PCRYPT_OBJID_TABLE;
typedef struct _CRYPT_HASH_INFO {
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
CRYPT_HASH_BLOB Hash;
} CRYPT_HASH_INFO,*PCRYPT_HASH_INFO;
typedef struct _CERT_EXTENSION {
LPSTR pszObjId;
WINBOOL fCritical;
CRYPT_OBJID_BLOB Value;
} CERT_EXTENSION,*PCERT_EXTENSION;
typedef const CERT_EXTENSION *PCCERT_EXTENSION;
typedef struct _CRYPT_ATTRIBUTE_TYPE_VALUE {
LPSTR pszObjId;
CRYPT_OBJID_BLOB Value;
} CRYPT_ATTRIBUTE_TYPE_VALUE,*PCRYPT_ATTRIBUTE_TYPE_VALUE;
typedef struct _CRYPT_ATTRIBUTE {
LPSTR pszObjId;
DWORD cValue;
PCRYPT_ATTR_BLOB rgValue;
} CRYPT_ATTRIBUTE,*PCRYPT_ATTRIBUTE;
typedef struct _CRYPT_ATTRIBUTES {
DWORD cAttr;
PCRYPT_ATTRIBUTE rgAttr;
} CRYPT_ATTRIBUTES,*PCRYPT_ATTRIBUTES;
typedef struct _CERT_RDN_ATTR {
LPSTR pszObjId;
DWORD dwValueType;
CERT_RDN_VALUE_BLOB Value;
} CERT_RDN_ATTR,*PCERT_RDN_ATTR;
typedef struct _CERT_RDN {
DWORD cRDNAttr;
PCERT_RDN_ATTR rgRDNAttr;
} CERT_RDN,*PCERT_RDN;
typedef struct _CERT_NAME_INFO {
DWORD cRDN;
PCERT_RDN rgRDN;
} CERT_NAME_INFO,*PCERT_NAME_INFO;
typedef struct _CERT_NAME_VALUE {
DWORD dwValueType;
CERT_RDN_VALUE_BLOB Value;
} CERT_NAME_VALUE,*PCERT_NAME_VALUE;
typedef struct _CERT_PUBLIC_KEY_INFO {
CRYPT_ALGORITHM_IDENTIFIER Algorithm;
CRYPT_BIT_BLOB PublicKey;
} CERT_PUBLIC_KEY_INFO,*PCERT_PUBLIC_KEY_INFO;
typedef struct _CRYPT_ECC_PRIVATE_KEY_INFO {
DWORD dwVersion;
CRYPT_DER_BLOB PrivateKey;
LPSTR szCurveOid;
CRYPT_BIT_BLOB PublicKey;
} CRYPT_ECC_PRIVATE_KEY_INFO,*PCRYPT_ECC_PRIVATE_KEY_INFO;
typedef struct _CRYPT_PRIVATE_KEY_INFO {
DWORD Version;
CRYPT_ALGORITHM_IDENTIFIER Algorithm;
CRYPT_DER_BLOB PrivateKey;
PCRYPT_ATTRIBUTES pAttributes;
} CRYPT_PRIVATE_KEY_INFO,*PCRYPT_PRIVATE_KEY_INFO;
typedef struct _CRYPT_ENCRYPTED_PRIVATE_KEY_INFO {
CRYPT_ALGORITHM_IDENTIFIER EncryptionAlgorithm;
CRYPT_DATA_BLOB EncryptedPrivateKey;
} CRYPT_ENCRYPTED_PRIVATE_KEY_INFO,*PCRYPT_ENCRYPTED_PRIVATE_KEY_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PCRYPT_DECRYPT_PRIVATE_KEY_FUNC) (CRYPT_ALGORITHM_IDENTIFIER Algorithm, CRYPT_DATA_BLOB EncryptedPrivateKey, BYTE *pbClearTextKey, DWORD *pcbClearTextKey, LPVOID pVoidDecryptFunc);
typedef WINBOOL (__attribute__((__stdcall__)) *PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC) (CRYPT_ALGORITHM_IDENTIFIER *pAlgorithm, CRYPT_DATA_BLOB *pClearTextPrivateKey, BYTE *pbEncryptedKey, DWORD *pcbEncryptedKey, LPVOID pVoidEncryptFunc);
typedef WINBOOL (__attribute__((__stdcall__)) *PCRYPT_RESOLVE_HCRYPTPROV_FUNC) (CRYPT_PRIVATE_KEY_INFO *pPrivateKeyInfo, HCRYPTPROV *phCryptProv, LPVOID pVoidResolveFunc);
typedef struct _CRYPT_PKCS8_IMPORT_PARAMS {
CRYPT_DIGEST_BLOB PrivateKey;
PCRYPT_RESOLVE_HCRYPTPROV_FUNC pResolvehCryptProvFunc;
LPVOID pVoidResolveFunc;
PCRYPT_DECRYPT_PRIVATE_KEY_FUNC pDecryptPrivateKeyFunc;
LPVOID pVoidDecryptFunc;
} CRYPT_PKCS8_IMPORT_PARAMS,*PCRYPT_PKCS8_IMPORT_PARAMS, CRYPT_PRIVATE_KEY_BLOB_AND_PARAMS,*PCRYPT_PRIVATE_KEY_BLOB_AND_PARAMS;
typedef struct _CRYPT_PKCS8_EXPORT_PARAMS {
HCRYPTPROV hCryptProv;
DWORD dwKeySpec;
LPSTR pszPrivateKeyObjId;
PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC pEncryptPrivateKeyFunc;
LPVOID pVoidEncryptFunc;
} CRYPT_PKCS8_EXPORT_PARAMS,*PCRYPT_PKCS8_EXPORT_PARAMS;
typedef struct _CERT_INFO {
DWORD dwVersion;
CRYPT_INTEGER_BLOB SerialNumber;
CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
CERT_NAME_BLOB Issuer;
FILETIME NotBefore;
FILETIME NotAfter;
CERT_NAME_BLOB Subject;
CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
CRYPT_BIT_BLOB IssuerUniqueId;
CRYPT_BIT_BLOB SubjectUniqueId;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} CERT_INFO,*PCERT_INFO;
typedef struct _CRL_ENTRY {
CRYPT_INTEGER_BLOB SerialNumber;
FILETIME RevocationDate;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} CRL_ENTRY,*PCRL_ENTRY;
typedef struct _CRL_INFO {
DWORD dwVersion;
CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
CERT_NAME_BLOB Issuer;
FILETIME ThisUpdate;
FILETIME NextUpdate;
DWORD cCRLEntry;
PCRL_ENTRY rgCRLEntry;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} CRL_INFO,*PCRL_INFO;
typedef struct _CERT_OR_CRL_BLOB {
DWORD dwChoice;
DWORD cbEncoded;
BYTE *pbEncoded;
} CERT_OR_CRL_BLOB,*PCERT_OR_CRL_BLOB;
typedef struct _CERT_OR_CRL_BUNDLE {
DWORD cItem;
PCERT_OR_CRL_BLOB rgItem;
} CERT_OR_CRL_BUNDLE,*PCERT_OR_CRL_BUNDLE;
typedef struct _CERT_REQUEST_INFO {
DWORD dwVersion;
CERT_NAME_BLOB Subject;
CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
DWORD cAttribute;
PCRYPT_ATTRIBUTE rgAttribute;
} CERT_REQUEST_INFO,*PCERT_REQUEST_INFO;
typedef struct _CERT_KEYGEN_REQUEST_INFO {
DWORD dwVersion;
CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
LPWSTR pwszChallengeString;
} CERT_KEYGEN_REQUEST_INFO,*PCERT_KEYGEN_REQUEST_INFO;
typedef struct _CERT_SIGNED_CONTENT_INFO {
CRYPT_DER_BLOB ToBeSigned;
CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
CRYPT_BIT_BLOB Signature;
} CERT_SIGNED_CONTENT_INFO,*PCERT_SIGNED_CONTENT_INFO;
typedef struct _CTL_USAGE {
DWORD cUsageIdentifier;
LPSTR *rgpszUsageIdentifier;
} CTL_USAGE,*PCTL_USAGE,CERT_ENHKEY_USAGE,*PCERT_ENHKEY_USAGE;
typedef const CTL_USAGE *PCCTL_USAGE;
typedef const CERT_ENHKEY_USAGE *PCCERT_ENHKEY_USAGE;
typedef struct _CTL_ENTRY {
CRYPT_DATA_BLOB SubjectIdentifier;
DWORD cAttribute;
PCRYPT_ATTRIBUTE rgAttribute;
} CTL_ENTRY,*PCTL_ENTRY;
typedef struct _CTL_INFO {
DWORD dwVersion;
CTL_USAGE SubjectUsage;
CRYPT_DATA_BLOB ListIdentifier;
CRYPT_INTEGER_BLOB SequenceNumber;
FILETIME ThisUpdate;
FILETIME NextUpdate;
CRYPT_ALGORITHM_IDENTIFIER SubjectAlgorithm;
DWORD cCTLEntry;
PCTL_ENTRY rgCTLEntry;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} CTL_INFO,*PCTL_INFO;
typedef struct _CRYPT_TIME_STAMP_REQUEST_INFO {
LPSTR pszTimeStampAlgorithm;
LPSTR pszContentType;
CRYPT_OBJID_BLOB Content;
DWORD cAttribute;
PCRYPT_ATTRIBUTE rgAttribute;
} CRYPT_TIME_STAMP_REQUEST_INFO,*PCRYPT_TIME_STAMP_REQUEST_INFO;
typedef struct _CRYPT_ENROLLMENT_NAME_VALUE_PAIR {
LPWSTR pwszName;
LPWSTR pwszValue;
} CRYPT_ENROLLMENT_NAME_VALUE_PAIR,*PCRYPT_ENROLLMENT_NAME_VALUE_PAIR;
typedef struct _CRYPT_CSP_PROVIDER {
DWORD dwKeySpec;
LPWSTR pwszProviderName;
CRYPT_BIT_BLOB Signature;
} CRYPT_CSP_PROVIDER,*PCRYPT_CSP_PROVIDER;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptFormatObject (DWORD dwCertEncodingType, DWORD dwFormatType, DWORD dwFormatStrType, void *pFormatStruct, LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, void *pbFormat, DWORD *pcbFormat);
typedef LPVOID (__attribute__((__stdcall__)) *PFN_CRYPT_ALLOC)(size_t cbSize);
typedef void (__attribute__((__stdcall__)) *PFN_CRYPT_FREE)(LPVOID pv);
typedef struct _CRYPT_ENCODE_PARA {
DWORD cbSize;
PFN_CRYPT_ALLOC pfnAlloc;
PFN_CRYPT_FREE pfnFree;
} CRYPT_ENCODE_PARA,*PCRYPT_ENCODE_PARA;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEncodeObjectEx (DWORD dwCertEncodingType, LPCSTR lpszStructType, const void *pvStructInfo, DWORD dwFlags, PCRYPT_ENCODE_PARA pEncodePara, void *pvEncoded, DWORD *pcbEncoded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEncodeObject (DWORD dwCertEncodingType, LPCSTR lpszStructType, const void *pvStructInfo, BYTE *pbEncoded, DWORD *pcbEncoded);
typedef struct _CRYPT_DECODE_PARA {
DWORD cbSize;
PFN_CRYPT_ALLOC pfnAlloc;
PFN_CRYPT_FREE pfnFree;
} CRYPT_DECODE_PARA,*PCRYPT_DECODE_PARA;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDecodeObjectEx (DWORD dwCertEncodingType, LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwFlags, PCRYPT_DECODE_PARA pDecodePara, void *pvStructInfo, DWORD *pcbStructInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDecodeObject (DWORD dwCertEncodingType, LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwFlags, void *pvStructInfo, DWORD *pcbStructInfo);
typedef struct _CERT_EXTENSIONS {
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} CERT_EXTENSIONS,*PCERT_EXTENSIONS;
typedef struct _CERT_AUTHORITY_KEY_ID_INFO {
CRYPT_DATA_BLOB KeyId;
CERT_NAME_BLOB CertIssuer;
CRYPT_INTEGER_BLOB CertSerialNumber;
} CERT_AUTHORITY_KEY_ID_INFO,*PCERT_AUTHORITY_KEY_ID_INFO;
typedef struct _CERT_PRIVATE_KEY_VALIDITY {
FILETIME NotBefore;
FILETIME NotAfter;
} CERT_PRIVATE_KEY_VALIDITY,*PCERT_PRIVATE_KEY_VALIDITY;
typedef struct _CERT_KEY_ATTRIBUTES_INFO {
CRYPT_DATA_BLOB KeyId;
CRYPT_BIT_BLOB IntendedKeyUsage;
PCERT_PRIVATE_KEY_VALIDITY pPrivateKeyUsagePeriod;
} CERT_KEY_ATTRIBUTES_INFO,*PCERT_KEY_ATTRIBUTES_INFO;
typedef struct _CERT_POLICY_ID {
DWORD cCertPolicyElementId;
LPSTR *rgpszCertPolicyElementId;
} CERT_POLICY_ID,*PCERT_POLICY_ID;
typedef struct _CERT_KEY_USAGE_RESTRICTION_INFO {
DWORD cCertPolicyId;
PCERT_POLICY_ID rgCertPolicyId;
CRYPT_BIT_BLOB RestrictedKeyUsage;
} CERT_KEY_USAGE_RESTRICTION_INFO,*PCERT_KEY_USAGE_RESTRICTION_INFO;
typedef struct _CERT_OTHER_NAME {
LPSTR pszObjId;
CRYPT_OBJID_BLOB Value;
} CERT_OTHER_NAME,*PCERT_OTHER_NAME;
typedef struct _CERT_ALT_NAME_ENTRY {
DWORD dwAltNameChoice;
__extension__ union {
PCERT_OTHER_NAME pOtherName;
LPWSTR pwszRfc822Name;
LPWSTR pwszDNSName;
CERT_NAME_BLOB DirectoryName;
LPWSTR pwszURL;
CRYPT_DATA_BLOB IPAddress;
LPSTR pszRegisteredID;
};
} CERT_ALT_NAME_ENTRY,*PCERT_ALT_NAME_ENTRY;
typedef struct _CERT_ALT_NAME_INFO {
DWORD cAltEntry;
PCERT_ALT_NAME_ENTRY rgAltEntry;
} CERT_ALT_NAME_INFO,*PCERT_ALT_NAME_INFO;
typedef struct _CERT_BASIC_CONSTRAINTS_INFO {
CRYPT_BIT_BLOB SubjectType;
WINBOOL fPathLenConstraint;
DWORD dwPathLenConstraint;
DWORD cSubtreesConstraint;
CERT_NAME_BLOB *rgSubtreesConstraint;
} CERT_BASIC_CONSTRAINTS_INFO, *PCERT_BASIC_CONSTRAINTS_INFO;
typedef struct _CERT_BASIC_CONSTRAINTS2_INFO {
WINBOOL fCA;
WINBOOL fPathLenConstraint;
DWORD dwPathLenConstraint;
} CERT_BASIC_CONSTRAINTS2_INFO,*PCERT_BASIC_CONSTRAINTS2_INFO;
typedef struct _CERT_POLICY_QUALIFIER_INFO {
LPSTR pszPolicyQualifierId;
CRYPT_OBJID_BLOB Qualifier;
} CERT_POLICY_QUALIFIER_INFO,*PCERT_POLICY_QUALIFIER_INFO;
typedef struct _CERT_POLICY_INFO {
LPSTR pszPolicyIdentifier;
DWORD cPolicyQualifier;
CERT_POLICY_QUALIFIER_INFO *rgPolicyQualifier;
} CERT_POLICY_INFO,*PCERT_POLICY_INFO;
typedef struct _CERT_POLICIES_INFO {
DWORD cPolicyInfo;
CERT_POLICY_INFO *rgPolicyInfo;
} CERT_POLICIES_INFO,*PCERT_POLICIES_INFO;
typedef struct _CERT_POLICY_QUALIFIER_NOTICE_REFERENCE {
LPSTR pszOrganization;
DWORD cNoticeNumbers;
int *rgNoticeNumbers;
} CERT_POLICY_QUALIFIER_NOTICE_REFERENCE,*PCERT_POLICY_QUALIFIER_NOTICE_REFERENCE;
typedef struct _CERT_POLICY_QUALIFIER_USER_NOTICE {
CERT_POLICY_QUALIFIER_NOTICE_REFERENCE *pNoticeReference;
LPWSTR pszDisplayText;
} CERT_POLICY_QUALIFIER_USER_NOTICE,*PCERT_POLICY_QUALIFIER_USER_NOTICE;
typedef struct _CPS_URLS {
LPWSTR pszURL;
CRYPT_ALGORITHM_IDENTIFIER *pAlgorithm;
CRYPT_DATA_BLOB *pDigest;
} CPS_URLS,*PCPS_URLS;
typedef struct _CERT_POLICY95_QUALIFIER1 {
LPWSTR pszPracticesReference;
LPSTR pszNoticeIdentifier;
LPSTR pszNSINoticeIdentifier;
DWORD cCPSURLs;
CPS_URLS *rgCPSURLs;
} CERT_POLICY95_QUALIFIER1,*PCERT_POLICY95_QUALIFIER1;
typedef struct _CERT_POLICY_MAPPING {
LPSTR pszIssuerDomainPolicy;
LPSTR pszSubjectDomainPolicy;
} CERT_POLICY_MAPPING,*PCERT_POLICY_MAPPING;
typedef struct _CERT_POLICY_MAPPINGS_INFO {
DWORD cPolicyMapping;
PCERT_POLICY_MAPPING rgPolicyMapping;
} CERT_POLICY_MAPPINGS_INFO,*PCERT_POLICY_MAPPINGS_INFO;
typedef struct _CERT_POLICY_CONSTRAINTS_INFO {
WINBOOL fRequireExplicitPolicy;
DWORD dwRequireExplicitPolicySkipCerts;
WINBOOL fInhibitPolicyMapping;
DWORD dwInhibitPolicyMappingSkipCerts;
} CERT_POLICY_CONSTRAINTS_INFO,*PCERT_POLICY_CONSTRAINTS_INFO;
typedef struct _CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY {
LPSTR pszObjId;
DWORD cValue;
PCRYPT_DER_BLOB rgValue;
} CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY,*PCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY;
typedef struct _CRYPT_CONTENT_INFO {
LPSTR pszObjId;
CRYPT_DER_BLOB Content;
} CRYPT_CONTENT_INFO,*PCRYPT_CONTENT_INFO;
typedef struct _CRYPT_SEQUENCE_OF_ANY {
DWORD cValue;
PCRYPT_DER_BLOB rgValue;
} CRYPT_SEQUENCE_OF_ANY,*PCRYPT_SEQUENCE_OF_ANY;
typedef struct _CERT_AUTHORITY_KEY_ID2_INFO {
CRYPT_DATA_BLOB KeyId;
CERT_ALT_NAME_INFO AuthorityCertIssuer;
CRYPT_INTEGER_BLOB AuthorityCertSerialNumber;
} CERT_AUTHORITY_KEY_ID2_INFO,*PCERT_AUTHORITY_KEY_ID2_INFO;
typedef struct _CERT_ACCESS_DESCRIPTION {
LPSTR pszAccessMethod;
CERT_ALT_NAME_ENTRY AccessLocation;
} CERT_ACCESS_DESCRIPTION,*PCERT_ACCESS_DESCRIPTION;
typedef struct _CERT_AUTHORITY_INFO_ACCESS {
DWORD cAccDescr;
PCERT_ACCESS_DESCRIPTION rgAccDescr;
} CERT_AUTHORITY_INFO_ACCESS,*PCERT_AUTHORITY_INFO_ACCESS;
typedef CERT_AUTHORITY_INFO_ACCESS CERT_SUBJECT_INFO_ACCESS,*PCERT_SUBJECT_INFO_ACCESS;
typedef struct _CRL_DIST_POINT_NAME {
DWORD dwDistPointNameChoice;
__extension__ union {
CERT_ALT_NAME_INFO FullName;
};
} CRL_DIST_POINT_NAME,*PCRL_DIST_POINT_NAME;
typedef struct _CRL_DIST_POINT {
CRL_DIST_POINT_NAME DistPointName;
CRYPT_BIT_BLOB ReasonFlags;
CERT_ALT_NAME_INFO CRLIssuer;
} CRL_DIST_POINT,*PCRL_DIST_POINT;
typedef struct _CRL_DIST_POINTS_INFO {
DWORD cDistPoint;
PCRL_DIST_POINT rgDistPoint;
} CRL_DIST_POINTS_INFO,*PCRL_DIST_POINTS_INFO;
typedef struct _CROSS_CERT_DIST_POINTS_INFO {
DWORD dwSyncDeltaTime;
DWORD cDistPoint;
PCERT_ALT_NAME_INFO rgDistPoint;
} CROSS_CERT_DIST_POINTS_INFO,*PCROSS_CERT_DIST_POINTS_INFO;
typedef struct _CERT_PAIR {
CERT_BLOB Forward;
CERT_BLOB Reverse;
} CERT_PAIR,*PCERT_PAIR;
typedef struct _CRL_ISSUING_DIST_POINT {
CRL_DIST_POINT_NAME DistPointName;
WINBOOL fOnlyContainsUserCerts;
WINBOOL fOnlyContainsCACerts;
CRYPT_BIT_BLOB OnlySomeReasonFlags;
WINBOOL fIndirectCRL;
} CRL_ISSUING_DIST_POINT,*PCRL_ISSUING_DIST_POINT;
typedef struct _CERT_GENERAL_SUBTREE {
CERT_ALT_NAME_ENTRY Base;
DWORD dwMinimum;
WINBOOL fMaximum;
DWORD dwMaximum;
} CERT_GENERAL_SUBTREE,*PCERT_GENERAL_SUBTREE;
typedef struct _CERT_NAME_CONSTRAINTS_INFO {
DWORD cPermittedSubtree;
PCERT_GENERAL_SUBTREE rgPermittedSubtree;
DWORD cExcludedSubtree;
PCERT_GENERAL_SUBTREE rgExcludedSubtree;
} CERT_NAME_CONSTRAINTS_INFO,*PCERT_NAME_CONSTRAINTS_INFO;
typedef struct _CERT_DSS_PARAMETERS {
CRYPT_UINT_BLOB p;
CRYPT_UINT_BLOB q;
CRYPT_UINT_BLOB g;
} CERT_DSS_PARAMETERS,*PCERT_DSS_PARAMETERS;
typedef struct _CERT_DH_PARAMETERS {
CRYPT_UINT_BLOB p;
CRYPT_UINT_BLOB g;
} CERT_DH_PARAMETERS,*PCERT_DH_PARAMETERS;
typedef struct _CERT_ECC_SIGNATURE {
CRYPT_UINT_BLOB r;
CRYPT_UINT_BLOB s;
} CERT_ECC_SIGNATURE,*PCERT_ECC_SIGNATURE;
typedef struct _CERT_X942_DH_VALIDATION_PARAMS {
CRYPT_BIT_BLOB seed;
DWORD pgenCounter;
} CERT_X942_DH_VALIDATION_PARAMS,*PCERT_X942_DH_VALIDATION_PARAMS;
typedef struct _CERT_X942_DH_PARAMETERS {
CRYPT_UINT_BLOB p;
CRYPT_UINT_BLOB g;
CRYPT_UINT_BLOB q;
CRYPT_UINT_BLOB j;
PCERT_X942_DH_VALIDATION_PARAMS pValidationParams;
} CERT_X942_DH_PARAMETERS,*PCERT_X942_DH_PARAMETERS;
typedef struct _CRYPT_X942_OTHER_INFO {
LPSTR pszContentEncryptionObjId;
BYTE rgbCounter[4];
BYTE rgbKeyLength[4];
CRYPT_DATA_BLOB PubInfo;
} CRYPT_X942_OTHER_INFO,*PCRYPT_X942_OTHER_INFO;
typedef struct _CRYPT_ECC_CMS_SHARED_INFO {
CRYPT_ALGORITHM_IDENTIFIER Algorithm;
CRYPT_DATA_BLOB EntityUInfo;
BYTE rgbSuppPubInfo[4];
} CRYPT_ECC_CMS_SHARED_INFO,*PCRYPT_ECC_CMS_SHARED_INFO;
typedef struct _CRYPT_RC2_CBC_PARAMETERS {
DWORD dwVersion;
WINBOOL fIV;
BYTE rgbIV[8];
} CRYPT_RC2_CBC_PARAMETERS,*PCRYPT_RC2_CBC_PARAMETERS;
typedef struct _CRYPT_SMIME_CAPABILITY {
LPSTR pszObjId;
CRYPT_OBJID_BLOB Parameters;
} CRYPT_SMIME_CAPABILITY,*PCRYPT_SMIME_CAPABILITY;
typedef struct _CRYPT_SMIME_CAPABILITIES {
DWORD cCapability;
PCRYPT_SMIME_CAPABILITY rgCapability;
} CRYPT_SMIME_CAPABILITIES,*PCRYPT_SMIME_CAPABILITIES;
typedef struct _CERT_QC_STATEMENT {
LPSTR pszStatementId;
CRYPT_OBJID_BLOB StatementInfo;
} CERT_QC_STATEMENT,*PCERT_QC_STATEMENT;
typedef struct _CERT_QC_STATEMENTS_EXT_INFO {
DWORD cStatement;
PCERT_QC_STATEMENT rgStatement;
} CERT_QC_STATEMENTS_EXT_INFO,*PCERT_QC_STATEMENTS_EXT_INFO;
typedef struct _CRYPT_MASK_GEN_ALGORITHM {
LPSTR pszObjId;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
} CRYPT_MASK_GEN_ALGORITHM,*PCRYPT_MASK_GEN_ALGORITHM;
typedef struct _CRYPT_RSA_SSA_PSS_PARAMETERS {
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
CRYPT_MASK_GEN_ALGORITHM MaskGenAlgorithm;
DWORD dwSaltLength;
DWORD dwTrailerField;
} CRYPT_RSA_SSA_PSS_PARAMETERS,*PCRYPT_RSA_SSA_PSS_PARAMETERS;
typedef struct _CRYPT_PSOURCE_ALGORITHM {
LPSTR pszObjId;
CRYPT_DATA_BLOB EncodingParameters;
} CRYPT_PSOURCE_ALGORITHM,*PCRYPT_PSOURCE_ALGORITHM;
typedef struct _CRYPT_RSAES_OAEP_PARAMETERS {
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
CRYPT_MASK_GEN_ALGORITHM MaskGenAlgorithm;
CRYPT_PSOURCE_ALGORITHM PSourceAlgorithm;
} CRYPT_RSAES_OAEP_PARAMETERS,*PCRYPT_RSAES_OAEP_PARAMETERS;
typedef struct _CMC_TAGGED_ATTRIBUTE {
DWORD dwBodyPartID;
CRYPT_ATTRIBUTE Attribute;
} CMC_TAGGED_ATTRIBUTE,*PCMC_TAGGED_ATTRIBUTE;
typedef struct _CMC_TAGGED_CERT_REQUEST {
DWORD dwBodyPartID;
CRYPT_DER_BLOB SignedCertRequest;
} CMC_TAGGED_CERT_REQUEST,*PCMC_TAGGED_CERT_REQUEST;
typedef struct _CMC_TAGGED_REQUEST {
DWORD dwTaggedRequestChoice;
__extension__ union {
PCMC_TAGGED_CERT_REQUEST pTaggedCertRequest;
};
} CMC_TAGGED_REQUEST,*PCMC_TAGGED_REQUEST;
typedef struct _CMC_TAGGED_CONTENT_INFO {
DWORD dwBodyPartID;
CRYPT_DER_BLOB EncodedContentInfo;
} CMC_TAGGED_CONTENT_INFO,*PCMC_TAGGED_CONTENT_INFO;
typedef struct _CMC_TAGGED_OTHER_MSG {
DWORD dwBodyPartID;
LPSTR pszObjId;
CRYPT_OBJID_BLOB Value;
} CMC_TAGGED_OTHER_MSG,*PCMC_TAGGED_OTHER_MSG;
typedef struct _CMC_DATA_INFO {
DWORD cTaggedAttribute;
PCMC_TAGGED_ATTRIBUTE rgTaggedAttribute;
DWORD cTaggedRequest;
PCMC_TAGGED_REQUEST rgTaggedRequest;
DWORD cTaggedContentInfo;
PCMC_TAGGED_CONTENT_INFO rgTaggedContentInfo;
DWORD cTaggedOtherMsg;
PCMC_TAGGED_OTHER_MSG rgTaggedOtherMsg;
} CMC_DATA_INFO,*PCMC_DATA_INFO;
typedef struct _CMC_RESPONSE_INFO {
DWORD cTaggedAttribute;
PCMC_TAGGED_ATTRIBUTE rgTaggedAttribute;
DWORD cTaggedContentInfo;
PCMC_TAGGED_CONTENT_INFO rgTaggedContentInfo;
DWORD cTaggedOtherMsg;
PCMC_TAGGED_OTHER_MSG rgTaggedOtherMsg;
} CMC_RESPONSE_INFO,*PCMC_RESPONSE_INFO;
typedef struct _CMC_PEND_INFO {
CRYPT_DATA_BLOB PendToken;
FILETIME PendTime;
} CMC_PEND_INFO,*PCMC_PEND_INFO;
typedef struct _CMC_STATUS_INFO {
DWORD dwStatus;
DWORD cBodyList;
DWORD *rgdwBodyList;
LPWSTR pwszStatusString;
DWORD dwOtherInfoChoice;
__extension__ union {
DWORD dwFailInfo;
PCMC_PEND_INFO pPendInfo;
};
} CMC_STATUS_INFO,*PCMC_STATUS_INFO;
typedef struct _CMC_ADD_EXTENSIONS_INFO {
DWORD dwCmcDataReference;
DWORD cCertReference;
DWORD *rgdwCertReference;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} CMC_ADD_EXTENSIONS_INFO,*PCMC_ADD_EXTENSIONS_INFO;
typedef struct _CMC_ADD_ATTRIBUTES_INFO {
DWORD dwCmcDataReference;
DWORD cCertReference;
DWORD *rgdwCertReference;
DWORD cAttribute;
PCRYPT_ATTRIBUTE rgAttribute;
} CMC_ADD_ATTRIBUTES_INFO,*PCMC_ADD_ATTRIBUTES_INFO;
typedef struct _CERT_TEMPLATE_EXT {
LPSTR pszObjId;
DWORD dwMajorVersion;
WINBOOL fMinorVersion;
DWORD dwMinorVersion;
} CERT_TEMPLATE_EXT,*PCERT_TEMPLATE_EXT;
typedef struct _CERT_HASHED_URL {
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
CRYPT_HASH_BLOB Hash;
LPWSTR pwszUrl;
} CERT_HASHED_URL,*PCERT_HASHED_URL;
typedef struct _CERT_LOGOTYPE_DETAILS {
LPWSTR pwszMimeType;
DWORD cHashedUrl;
PCERT_HASHED_URL rgHashedUrl;
} CERT_LOGOTYPE_DETAILS,*PCERT_LOGOTYPE_DETAILS;
typedef struct _CERT_LOGOTYPE_REFERENCE {
DWORD cHashedUrl;
PCERT_HASHED_URL rgHashedUrl;
} CERT_LOGOTYPE_REFERENCE,*PCERT_LOGOTYPE_REFERENCE;
typedef struct _CERT_LOGOTYPE_IMAGE_INFO {
DWORD dwLogotypeImageInfoChoice;
DWORD dwFileSize;
DWORD dwXSize;
DWORD dwYSize;
DWORD dwLogotypeImageResolutionChoice;
__extension__ union {
DWORD dwNumBits;
DWORD dwTableSize;
};
LPWSTR pwszLanguage;
} CERT_LOGOTYPE_IMAGE_INFO,*PCERT_LOGOTYPE_IMAGE_INFO;
typedef struct _CERT_LOGOTYPE_IMAGE {
CERT_LOGOTYPE_DETAILS LogotypeDetails;
PCERT_LOGOTYPE_IMAGE_INFO pLogotypeImageInfo;
} CERT_LOGOTYPE_IMAGE,*PCERT_LOGOTYPE_IMAGE;
typedef struct _CERT_LOGOTYPE_AUDIO_INFO {
DWORD dwFileSize;
DWORD dwPlayTime;
DWORD dwChannels;
DWORD dwSampleRate;
LPWSTR pwszLanguage;
} CERT_LOGOTYPE_AUDIO_INFO,*PCERT_LOGOTYPE_AUDIO_INFO;
typedef struct _CERT_LOGOTYPE_AUDIO {
CERT_LOGOTYPE_DETAILS LogotypeDetails;
PCERT_LOGOTYPE_AUDIO_INFO pLogotypeAudioInfo;
} CERT_LOGOTYPE_AUDIO,*PCERT_LOGOTYPE_AUDIO;
typedef struct _CERT_LOGOTYPE_DATA {
DWORD cLogotypeImage;
PCERT_LOGOTYPE_IMAGE rgLogotypeImage;
DWORD cLogotypeAudio;
PCERT_LOGOTYPE_AUDIO rgLogotypeAudio;
} CERT_LOGOTYPE_DATA,*PCERT_LOGOTYPE_DATA;
typedef struct _CERT_LOGOTYPE_INFO {
DWORD dwLogotypeInfoChoice;
__extension__ union {
PCERT_LOGOTYPE_DATA pLogotypeDirectInfo;
PCERT_LOGOTYPE_REFERENCE pLogotypeIndirectInfo;
};
} CERT_LOGOTYPE_INFO,*PCERT_LOGOTYPE_INFO;
typedef struct _CERT_OTHER_LOGOTYPE_INFO {
LPSTR pszObjId;
CERT_LOGOTYPE_INFO LogotypeInfo;
} CERT_OTHER_LOGOTYPE_INFO,*PCERT_OTHER_LOGOTYPE_INFO;
typedef struct _CERT_LOGOTYPE_EXT_INFO {
DWORD cCommunityLogo;
PCERT_LOGOTYPE_INFO rgCommunityLogo;
PCERT_LOGOTYPE_INFO pIssuerLogo;
PCERT_LOGOTYPE_INFO pSubjectLogo;
DWORD cOtherLogo;
PCERT_OTHER_LOGOTYPE_INFO rgOtherLogo;
} CERT_LOGOTYPE_EXT_INFO,*PCERT_LOGOTYPE_EXT_INFO;
typedef struct _CERT_BIOMETRIC_DATA {
DWORD dwTypeOfBiometricDataChoice;
__extension__ union {
DWORD dwPredefined;
LPSTR pszObjId;
};
CERT_HASHED_URL HashedUrl;
} CERT_BIOMETRIC_DATA,*PCERT_BIOMETRIC_DATA;
typedef struct _CERT_BIOMETRIC_EXT_INFO {
DWORD cBiometricData;
PCERT_BIOMETRIC_DATA rgBiometricData;
} CERT_BIOMETRIC_EXT_INFO,*PCERT_BIOMETRIC_EXT_INFO;
typedef struct _OCSP_SIGNATURE_INFO {
CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
CRYPT_BIT_BLOB Signature;
DWORD cCertEncoded;
PCERT_BLOB rgCertEncoded;
} OCSP_SIGNATURE_INFO,*POCSP_SIGNATURE_INFO;
typedef struct _OCSP_SIGNED_REQUEST_INFO {
CRYPT_DER_BLOB ToBeSigned;
POCSP_SIGNATURE_INFO pOptionalSignatureInfo;
} OCSP_SIGNED_REQUEST_INFO,*POCSP_SIGNED_REQUEST_INFO;
typedef struct _OCSP_CERT_ID {
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
CRYPT_HASH_BLOB IssuerNameHash;
CRYPT_HASH_BLOB IssuerKeyHash;
CRYPT_INTEGER_BLOB SerialNumber;
} OCSP_CERT_ID,*POCSP_CERT_ID;
typedef struct _OCSP_REQUEST_ENTRY {
OCSP_CERT_ID CertId;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} OCSP_REQUEST_ENTRY,*POCSP_REQUEST_ENTRY;
typedef struct _OCSP_REQUEST_INFO {
DWORD dwVersion;
PCERT_ALT_NAME_ENTRY pRequestorName;
DWORD cRequestEntry;
POCSP_REQUEST_ENTRY rgRequestEntry;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} OCSP_REQUEST_INFO,*POCSP_REQUEST_INFO;
typedef struct _OCSP_RESPONSE_INFO {
DWORD dwStatus;
LPSTR pszObjId;
CRYPT_OBJID_BLOB Value;
} OCSP_RESPONSE_INFO,*POCSP_RESPONSE_INFO;
typedef struct _OCSP_BASIC_SIGNED_RESPONSE_INFO {
CRYPT_DER_BLOB ToBeSigned;
OCSP_SIGNATURE_INFO SignatureInfo;
} OCSP_BASIC_SIGNED_RESPONSE_INFO,*POCSP_BASIC_SIGNED_RESPONSE_INFO;
typedef struct _OCSP_BASIC_REVOKED_INFO {
FILETIME RevocationDate;
DWORD dwCrlReasonCode;
} OCSP_BASIC_REVOKED_INFO,*POCSP_BASIC_REVOKED_INFO;
typedef struct _OCSP_BASIC_RESPONSE_ENTRY {
OCSP_CERT_ID CertId;
DWORD dwCertStatus;
__extension__ union {
POCSP_BASIC_REVOKED_INFO pRevokedInfo;
};
FILETIME ThisUpdate;
FILETIME NextUpdate;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} OCSP_BASIC_RESPONSE_ENTRY,*POCSP_BASIC_RESPONSE_ENTRY;
typedef struct _OCSP_BASIC_RESPONSE_INFO {
DWORD dwVersion;
DWORD dwResponderIdChoice;
__extension__ union {
CERT_NAME_BLOB ByNameResponderId;
CRYPT_HASH_BLOB ByKeyResponderId;
};
FILETIME ProducedAt;
DWORD cResponseEntry;
POCSP_BASIC_RESPONSE_ENTRY rgResponseEntry;
DWORD cExtension;
PCERT_EXTENSION rgExtension;
} OCSP_BASIC_RESPONSE_INFO,*POCSP_BASIC_RESPONSE_INFO;
typedef struct _CERT_SUPPORTED_ALGORITHM_INFO {
CRYPT_ALGORITHM_IDENTIFIER Algorithm;
CRYPT_BIT_BLOB IntendedKeyUsage;
CERT_POLICIES_INFO IntendedCertPolicies;
} CERT_SUPPORTED_ALGORITHM_INFO, *PCERT_SUPPORTED_ALGORITHM_INFO;
typedef struct _CERT_TPM_SPECIFICATION_INFO {
LPWSTR pwszFamily;
DWORD dwLevel;
DWORD dwRevision;
} CERT_TPM_SPECIFICATION_INFO, *PCERT_TPM_SPECIFICATION_INFO;
typedef void *HCRYPTOIDFUNCSET;
typedef void *HCRYPTOIDFUNCADDR;
typedef struct _CRYPT_OID_FUNC_ENTRY {
LPCSTR pszOID;
void *pvFuncAddr;
} CRYPT_OID_FUNC_ENTRY,*PCRYPT_OID_FUNC_ENTRY;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptInstallOIDFunctionAddress (HMODULE hModule, DWORD dwEncodingType, LPCSTR pszFuncName, DWORD cFuncEntry, const CRYPT_OID_FUNC_ENTRY rgFuncEntry[], DWORD dwFlags);
__attribute__((dllimport)) HCRYPTOIDFUNCSET __attribute__((__stdcall__)) CryptInitOIDFunctionSet (LPCSTR pszFuncName, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetOIDFunctionAddress (HCRYPTOIDFUNCSET hFuncSet, DWORD dwEncodingType, LPCSTR pszOID, DWORD dwFlags, void **ppvFuncAddr, HCRYPTOIDFUNCADDR *phFuncAddr);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetDefaultOIDDllList (HCRYPTOIDFUNCSET hFuncSet, DWORD dwEncodingType, WCHAR *pwszDllList, DWORD *pcchDllList);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetDefaultOIDFunctionAddress (HCRYPTOIDFUNCSET hFuncSet, DWORD dwEncodingType, LPCWSTR pwszDll, DWORD dwFlags, void **ppvFuncAddr, HCRYPTOIDFUNCADDR *phFuncAddr);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptFreeOIDFunctionAddress (HCRYPTOIDFUNCADDR hFuncAddr, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptRegisterOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, LPCWSTR pwszDll, LPCSTR pszOverrideFuncName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptUnregisterOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptRegisterDefaultOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, DWORD dwIndex, LPCWSTR pwszDll);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptUnregisterDefaultOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, LPCWSTR pwszDll);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetOIDFunctionValue (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, LPCWSTR pwszValueName, DWORD dwValueType, const BYTE *pbValueData, DWORD cbValueData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetOIDFunctionValue (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, LPCWSTR pwszValueName, DWORD *pdwValueType, BYTE *pbValueData, DWORD *pcbValueData);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CRYPT_ENUM_OID_FUNC) (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, DWORD cValue, const DWORD rgdwValueType[], LPCWSTR const rgpwszValueName[], const BYTE *const rgpbValueData[], const DWORD rgcbValueData[], void *pvArg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEnumOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, DWORD dwFlags, void *pvArg, PFN_CRYPT_ENUM_OID_FUNC pfnEnumOIDFunc);
typedef struct _CRYPT_OID_INFO {
DWORD cbSize;
LPCSTR pszOID;
LPCWSTR pwszName;
DWORD dwGroupId;
__extension__ union {
DWORD dwValue;
ALG_ID Algid;
DWORD dwLength;
};
CRYPT_DATA_BLOB ExtraInfo;
} CRYPT_OID_INFO,*PCRYPT_OID_INFO;
typedef const CRYPT_OID_INFO CCRYPT_OID_INFO,*PCCRYPT_OID_INFO;
__attribute__((dllimport)) PCCRYPT_OID_INFO __attribute__((__stdcall__)) CryptFindOIDInfo (DWORD dwKeyType, void *pvKey, DWORD dwGroupId);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CRYPT_ENUM_OID_INFO) (PCCRYPT_OID_INFO pInfo, void *pvArg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptRegisterOIDInfo (PCCRYPT_OID_INFO pInfo, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptUnregisterOIDInfo (PCCRYPT_OID_INFO pInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEnumOIDInfo (DWORD dwGroupId, DWORD dwFlags, void *pvArg, PFN_CRYPT_ENUM_OID_INFO pfnEnumOIDInfo);
__attribute__((dllimport)) LPCWSTR __attribute__((__stdcall__)) CryptFindLocalizedName (LPCWSTR pwszCryptName);
typedef struct _CERT_STRONG_SIGN_SERIALIZED_INFO {
DWORD dwFlags;
LPWSTR pwszCNGSignHashAlgids;
LPWSTR pwszCNGPubKeyMinBitLengths;
} CERT_STRONG_SIGN_SERIALIZED_INFO,*PCERT_STRONG_SIGN_SERIALIZED_INFO;
typedef struct _CERT_STRONG_SIGN_PARA {
DWORD cbSize;
DWORD dwInfoChoice;
__extension__ union {
void *pvInfo;
PCERT_STRONG_SIGN_SERIALIZED_INFO pSerializedInfo;
LPSTR pszOID;
};
} CERT_STRONG_SIGN_PARA,*PCERT_STRONG_SIGN_PARA;
typedef const CERT_STRONG_SIGN_PARA *PCCERT_STRONG_SIGN_PARA;
typedef void *HCRYPTMSG;
typedef struct _CERT_ISSUER_SERIAL_NUMBER {
CERT_NAME_BLOB Issuer;
CRYPT_INTEGER_BLOB SerialNumber;
} CERT_ISSUER_SERIAL_NUMBER,*PCERT_ISSUER_SERIAL_NUMBER;
typedef struct _CERT_ID {
DWORD dwIdChoice;
__extension__ union {
CERT_ISSUER_SERIAL_NUMBER IssuerSerialNumber;
CRYPT_HASH_BLOB KeyId;
CRYPT_HASH_BLOB HashId;
};
} CERT_ID,*PCERT_ID;
typedef struct _CMSG_SIGNER_ENCODE_INFO {
DWORD cbSize;
PCERT_INFO pCertInfo;
__extension__ union {
HCRYPTPROV hCryptProv;
NCRYPT_KEY_HANDLE hNCryptKey;
};
DWORD dwKeySpec;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
void *pvHashAuxInfo;
DWORD cAuthAttr;
PCRYPT_ATTRIBUTE rgAuthAttr;
DWORD cUnauthAttr;
PCRYPT_ATTRIBUTE rgUnauthAttr;
} CMSG_SIGNER_ENCODE_INFO,*PCMSG_SIGNER_ENCODE_INFO;
typedef struct _CMSG_SIGNED_ENCODE_INFO {
DWORD cbSize;
DWORD cSigners;
PCMSG_SIGNER_ENCODE_INFO rgSigners;
DWORD cCertEncoded;
PCERT_BLOB rgCertEncoded;
DWORD cCrlEncoded;
PCRL_BLOB rgCrlEncoded;
} CMSG_SIGNED_ENCODE_INFO,*PCMSG_SIGNED_ENCODE_INFO;
typedef struct _CMSG_RECIPIENT_ENCODE_INFO CMSG_RECIPIENT_ENCODE_INFO,*PCMSG_RECIPIENT_ENCODE_INFO;
typedef struct _CMSG_ENVELOPED_ENCODE_INFO {
DWORD cbSize;
HCRYPTPROV_LEGACY hCryptProv;
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
void *pvEncryptionAuxInfo;
DWORD cRecipients;
PCERT_INFO *rgpRecipients;
} CMSG_ENVELOPED_ENCODE_INFO,*PCMSG_ENVELOPED_ENCODE_INFO;
typedef struct _CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO {
DWORD cbSize;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
void *pvKeyEncryptionAuxInfo;
HCRYPTPROV_LEGACY hCryptProv;
CRYPT_BIT_BLOB RecipientPublicKey;
CERT_ID RecipientId;
} CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO,*PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO;
typedef struct _CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO {
DWORD cbSize;
CRYPT_BIT_BLOB RecipientPublicKey;
CERT_ID RecipientId;
FILETIME Date;
PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
} CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO,*PCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO;
typedef struct _CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO {
DWORD cbSize;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
void *pvKeyEncryptionAuxInfo;
CRYPT_ALGORITHM_IDENTIFIER KeyWrapAlgorithm;
void *pvKeyWrapAuxInfo;
HCRYPTPROV_LEGACY hCryptProv;
DWORD dwKeySpec;
DWORD dwKeyChoice;
__extension__ union {
PCRYPT_ALGORITHM_IDENTIFIER pEphemeralAlgorithm;
PCERT_ID pSenderId;
};
CRYPT_DATA_BLOB UserKeyingMaterial;
DWORD cRecipientEncryptedKeys;
PCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO *rgpRecipientEncryptedKeys;
} CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO,*PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO;
typedef struct _CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO {
DWORD cbSize;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
void *pvKeyEncryptionAuxInfo;
HCRYPTPROV hCryptProv;
DWORD dwKeyChoice;
__extension__ union {
HCRYPTKEY hKeyEncryptionKey;
void *pvKeyEncryptionKey;
};
CRYPT_DATA_BLOB KeyId;
FILETIME Date;
PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
} CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO,*PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO;
struct _CMSG_RECIPIENT_ENCODE_INFO {
DWORD dwRecipientChoice;
__extension__ union {
PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTrans;
PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO pKeyAgree;
PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO pMailList;
};
};
typedef struct _CMSG_RC2_AUX_INFO {
DWORD cbSize;
DWORD dwBitLen;
} CMSG_RC2_AUX_INFO,*PCMSG_RC2_AUX_INFO;
typedef struct _CMSG_SP3_COMPATIBLE_AUX_INFO {
DWORD cbSize;
DWORD dwFlags;
} CMSG_SP3_COMPATIBLE_AUX_INFO,*PCMSG_SP3_COMPATIBLE_AUX_INFO;
typedef struct _CMSG_RC4_AUX_INFO {
DWORD cbSize;
DWORD dwBitLen;
} CMSG_RC4_AUX_INFO,*PCMSG_RC4_AUX_INFO;
typedef struct _CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO {
DWORD cbSize;
CMSG_SIGNED_ENCODE_INFO SignedInfo;
CMSG_ENVELOPED_ENCODE_INFO EnvelopedInfo;
} CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO,*PCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO;
typedef struct _CMSG_HASHED_ENCODE_INFO {
DWORD cbSize;
HCRYPTPROV_LEGACY hCryptProv;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
void *pvHashAuxInfo;
} CMSG_HASHED_ENCODE_INFO,*PCMSG_HASHED_ENCODE_INFO;
typedef struct _CMSG_ENCRYPTED_ENCODE_INFO {
DWORD cbSize;
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
void *pvEncryptionAuxInfo;
} CMSG_ENCRYPTED_ENCODE_INFO,*PCMSG_ENCRYPTED_ENCODE_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_STREAM_OUTPUT) (const void *pvArg, BYTE *pbData, DWORD cbData, WINBOOL fFinal);
typedef struct _CMSG_STREAM_INFO {
DWORD cbContent;
PFN_CMSG_STREAM_OUTPUT pfnStreamOutput;
void *pvArg;
} CMSG_STREAM_INFO,*PCMSG_STREAM_INFO;
__attribute__((dllimport)) HCRYPTMSG __attribute__((__stdcall__)) CryptMsgOpenToEncode (DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, void const *pvMsgEncodeInfo, LPSTR pszInnerContentObjID, PCMSG_STREAM_INFO pStreamInfo);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CryptMsgCalculateEncodedLength (DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, void const *pvMsgEncodeInfo, LPSTR pszInnerContentObjID, DWORD cbData);
__attribute__((dllimport)) HCRYPTMSG __attribute__((__stdcall__)) CryptMsgOpenToDecode (DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, HCRYPTPROV_LEGACY hCryptProv, PCERT_INFO pRecipientInfo, PCMSG_STREAM_INFO pStreamInfo);
__attribute__((dllimport)) HCRYPTMSG __attribute__((__stdcall__)) CryptMsgDuplicate (HCRYPTMSG hCryptMsg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptMsgClose (HCRYPTMSG hCryptMsg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptMsgUpdate (HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, WINBOOL fFinal);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptMsgGetParam (HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData);
typedef struct _CMSG_SIGNER_INFO {
DWORD dwVersion;
CERT_NAME_BLOB Issuer;
CRYPT_INTEGER_BLOB SerialNumber;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
CRYPT_ALGORITHM_IDENTIFIER HashEncryptionAlgorithm;
CRYPT_DATA_BLOB EncryptedHash;
CRYPT_ATTRIBUTES AuthAttrs;
CRYPT_ATTRIBUTES UnauthAttrs;
} CMSG_SIGNER_INFO,*PCMSG_SIGNER_INFO;
typedef struct _CMSG_CMS_SIGNER_INFO {
DWORD dwVersion;
CERT_ID SignerId;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
CRYPT_ALGORITHM_IDENTIFIER HashEncryptionAlgorithm;
CRYPT_DATA_BLOB EncryptedHash;
CRYPT_ATTRIBUTES AuthAttrs;
CRYPT_ATTRIBUTES UnauthAttrs;
} CMSG_CMS_SIGNER_INFO,*PCMSG_CMS_SIGNER_INFO;
typedef CRYPT_ATTRIBUTES CMSG_ATTR;
typedef CRYPT_ATTRIBUTES *PCMSG_ATTR;
typedef struct _CMSG_KEY_TRANS_RECIPIENT_INFO {
DWORD dwVersion;
CERT_ID RecipientId;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
CRYPT_DATA_BLOB EncryptedKey;
} CMSG_KEY_TRANS_RECIPIENT_INFO,*PCMSG_KEY_TRANS_RECIPIENT_INFO;
typedef struct _CMSG_RECIPIENT_ENCRYPTED_KEY_INFO {
CERT_ID RecipientId;
CRYPT_DATA_BLOB EncryptedKey;
FILETIME Date;
PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
} CMSG_RECIPIENT_ENCRYPTED_KEY_INFO,*PCMSG_RECIPIENT_ENCRYPTED_KEY_INFO;
typedef struct _CMSG_KEY_AGREE_RECIPIENT_INFO {
DWORD dwVersion;
DWORD dwOriginatorChoice;
__extension__ union {
CERT_ID OriginatorCertId;
CERT_PUBLIC_KEY_INFO OriginatorPublicKeyInfo;
};
CRYPT_DATA_BLOB UserKeyingMaterial;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
DWORD cRecipientEncryptedKeys;
PCMSG_RECIPIENT_ENCRYPTED_KEY_INFO *rgpRecipientEncryptedKeys;
} CMSG_KEY_AGREE_RECIPIENT_INFO,*PCMSG_KEY_AGREE_RECIPIENT_INFO;
typedef struct _CMSG_MAIL_LIST_RECIPIENT_INFO {
DWORD dwVersion;
CRYPT_DATA_BLOB KeyId;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
CRYPT_DATA_BLOB EncryptedKey;
FILETIME Date;
PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
} CMSG_MAIL_LIST_RECIPIENT_INFO,*PCMSG_MAIL_LIST_RECIPIENT_INFO;
typedef struct _CMSG_CMS_RECIPIENT_INFO {
DWORD dwRecipientChoice;
__extension__ union {
PCMSG_KEY_TRANS_RECIPIENT_INFO pKeyTrans;
PCMSG_KEY_AGREE_RECIPIENT_INFO pKeyAgree;
PCMSG_MAIL_LIST_RECIPIENT_INFO pMailList;
};
} CMSG_CMS_RECIPIENT_INFO,*PCMSG_CMS_RECIPIENT_INFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptMsgControl (HCRYPTMSG hCryptMsg, DWORD dwFlags, DWORD dwCtrlType, void const *pvCtrlPara);
typedef struct _CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA {
DWORD cbSize;
HCRYPTPROV_LEGACY hCryptProv;
DWORD dwSignerIndex;
DWORD dwSignerType;
void *pvSigner;
} CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA,*PCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA;
typedef struct _CMSG_CTRL_DECRYPT_PARA {
DWORD cbSize;
__extension__ union {
HCRYPTPROV hCryptProv;
NCRYPT_KEY_HANDLE hNCryptKey;
};
DWORD dwKeySpec;
DWORD dwRecipientIndex;
} CMSG_CTRL_DECRYPT_PARA,*PCMSG_CTRL_DECRYPT_PARA;
typedef struct _CMSG_CTRL_KEY_TRANS_DECRYPT_PARA {
DWORD cbSize;
__extension__ union {
HCRYPTPROV hCryptProv;
NCRYPT_KEY_HANDLE hNCryptKey;
};
DWORD dwKeySpec;
PCMSG_KEY_TRANS_RECIPIENT_INFO pKeyTrans;
DWORD dwRecipientIndex;
} CMSG_CTRL_KEY_TRANS_DECRYPT_PARA,*PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA;
typedef struct _CMSG_CTRL_KEY_AGREE_DECRYPT_PARA {
DWORD cbSize;
__extension__ union {
HCRYPTPROV hCryptProv;
NCRYPT_KEY_HANDLE hNCryptKey;
};
DWORD dwKeySpec;
PCMSG_KEY_AGREE_RECIPIENT_INFO pKeyAgree;
DWORD dwRecipientIndex;
DWORD dwRecipientEncryptedKeyIndex;
CRYPT_BIT_BLOB OriginatorPublicKey;
} CMSG_CTRL_KEY_AGREE_DECRYPT_PARA,*PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA;
typedef struct _CMSG_CTRL_MAIL_LIST_DECRYPT_PARA {
DWORD cbSize;
HCRYPTPROV hCryptProv;
PCMSG_MAIL_LIST_RECIPIENT_INFO pMailList;
DWORD dwRecipientIndex;
DWORD dwKeyChoice;
__extension__ union {
HCRYPTKEY hKeyEncryptionKey;
void *pvKeyEncryptionKey;
};
} CMSG_CTRL_MAIL_LIST_DECRYPT_PARA,*PCMSG_CTRL_MAIL_LIST_DECRYPT_PARA;
typedef struct _CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA {
DWORD cbSize;
DWORD dwSignerIndex;
CRYPT_DATA_BLOB blob;
} CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA,*PCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA;
typedef struct _CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA {
DWORD cbSize;
DWORD dwSignerIndex;
DWORD dwUnauthAttrIndex;
} CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA,*PCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA;
WINBOOL __attribute__((__stdcall__)) CryptMsgVerifyCountersignatureEncoded (HCRYPTPROV_LEGACY hCryptProv, DWORD dwEncodingType, PBYTE pbSignerInfo, DWORD cbSignerInfo, PBYTE pbSignerInfoCountersignature, DWORD cbSignerInfoCountersignature, PCERT_INFO pciCountersigner);
WINBOOL __attribute__((__stdcall__)) CryptMsgVerifyCountersignatureEncodedEx (HCRYPTPROV_LEGACY hCryptProv, DWORD dwEncodingType, PBYTE pbSignerInfo, DWORD cbSignerInfo, PBYTE pbSignerInfoCountersignature, DWORD cbSignerInfoCountersignature, DWORD dwSignerType, void *pvSigner, DWORD dwFlags, void *pvExtra);
WINBOOL __attribute__((__stdcall__)) CryptMsgCountersign (HCRYPTMSG hCryptMsg, DWORD dwIndex, DWORD cCountersigners, PCMSG_SIGNER_ENCODE_INFO rgCountersigners);
WINBOOL __attribute__((__stdcall__)) CryptMsgCountersignEncoded (DWORD dwEncodingType, PBYTE pbSignerInfo, DWORD cbSignerInfo, DWORD cCountersigners, PCMSG_SIGNER_ENCODE_INFO rgCountersigners, PBYTE pbCountersignature, PDWORD pcbCountersignature);
typedef void *(__attribute__((__stdcall__)) *PFN_CMSG_ALLOC) (size_t cb);
typedef void (__attribute__((__stdcall__)) *PFN_CMSG_FREE) (void *pv);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_GEN_ENCRYPT_KEY) (HCRYPTPROV *phCryptProv, PCRYPT_ALGORITHM_IDENTIFIER paiEncrypt, PVOID pvEncryptAuxInfo, PCERT_PUBLIC_KEY_INFO pPublicKeyInfo, PFN_CMSG_ALLOC pfnAlloc, HCRYPTKEY *phEncryptKey, PBYTE *ppbEncryptParameters, PDWORD pcbEncryptParameters);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_EXPORT_ENCRYPT_KEY) (HCRYPTPROV hCryptProv, HCRYPTKEY hEncryptKey, PCERT_PUBLIC_KEY_INFO pPublicKeyInfo, PBYTE pbData, PDWORD pcbData);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_IMPORT_ENCRYPT_KEY) (HCRYPTPROV hCryptProv, DWORD dwKeySpec, PCRYPT_ALGORITHM_IDENTIFIER paiEncrypt, PCRYPT_ALGORITHM_IDENTIFIER paiPubKey, PBYTE pbEncodedKey, DWORD cbEncodedKey, HCRYPTKEY *phEncryptKey);
typedef struct _CMSG_CONTENT_ENCRYPT_INFO {
DWORD cbSize;
HCRYPTPROV_LEGACY hCryptProv;
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
void *pvEncryptionAuxInfo;
DWORD cRecipients;
PCMSG_RECIPIENT_ENCODE_INFO rgCmsRecipients;
PFN_CMSG_ALLOC pfnAlloc;
PFN_CMSG_FREE pfnFree;
DWORD dwEncryptFlags;
__extension__ union {
HCRYPTKEY hContentEncryptKey;
BCRYPT_KEY_HANDLE hCNGContentEncryptKey;
};
DWORD dwFlags;
WINBOOL fCNG;
BYTE *pbCNGContentEncryptKeyObject;
BYTE *pbContentEncryptKey;
DWORD cbContentEncryptKey;
} CMSG_CONTENT_ENCRYPT_INFO,*PCMSG_CONTENT_ENCRYPT_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY) (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, DWORD dwFlags, void *pvReserved);
typedef struct _CMSG_KEY_TRANS_ENCRYPT_INFO {
DWORD cbSize;
DWORD dwRecipientIndex;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
CRYPT_DATA_BLOB EncryptedKey;
DWORD dwFlags;
} CMSG_KEY_TRANS_ENCRYPT_INFO,*PCMSG_KEY_TRANS_ENCRYPT_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_EXPORT_KEY_TRANS) (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTransEncodeInfo, PCMSG_KEY_TRANS_ENCRYPT_INFO pKeyTransEncryptInfo, DWORD dwFlags, void *pvReserved);
typedef struct _CMSG_KEY_AGREE_KEY_ENCRYPT_INFO {
DWORD cbSize;
CRYPT_DATA_BLOB EncryptedKey;
} CMSG_KEY_AGREE_KEY_ENCRYPT_INFO,*PCMSG_KEY_AGREE_KEY_ENCRYPT_INFO;
typedef struct _CMSG_KEY_AGREE_ENCRYPT_INFO {
DWORD cbSize;
DWORD dwRecipientIndex;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
CRYPT_DATA_BLOB UserKeyingMaterial;
DWORD dwOriginatorChoice;
__extension__ union {
CERT_ID OriginatorCertId;
CERT_PUBLIC_KEY_INFO OriginatorPublicKeyInfo;
};
DWORD cKeyAgreeKeyEncryptInfo;
PCMSG_KEY_AGREE_KEY_ENCRYPT_INFO *rgpKeyAgreeKeyEncryptInfo;
DWORD dwFlags;
} CMSG_KEY_AGREE_ENCRYPT_INFO,*PCMSG_KEY_AGREE_ENCRYPT_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_EXPORT_KEY_AGREE) (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO pKeyAgreeEncodeInfo, PCMSG_KEY_AGREE_ENCRYPT_INFO pKeyAgreeEncryptInfo, DWORD dwFlags, void *pvReserved);
typedef struct _CMSG_MAIL_LIST_ENCRYPT_INFO {
DWORD cbSize;
DWORD dwRecipientIndex;
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
CRYPT_DATA_BLOB EncryptedKey;
DWORD dwFlags;
} CMSG_MAIL_LIST_ENCRYPT_INFO,*PCMSG_MAIL_LIST_ENCRYPT_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_EXPORT_MAIL_LIST) (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO pMailListEncodeInfo, PCMSG_MAIL_LIST_ENCRYPT_INFO pMailListEncryptInfo, DWORD dwFlags, void *pvReserved);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_IMPORT_KEY_TRANS) (PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm, PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara, DWORD dwFlags, void *pvReserved, HCRYPTKEY *phContentEncryptKey);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_IMPORT_KEY_AGREE) (PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm, PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA pKeyAgreeDecryptPara, DWORD dwFlags, void *pvReserved, HCRYPTKEY *phContentEncryptKey);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_IMPORT_MAIL_LIST) (PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm, PCMSG_CTRL_MAIL_LIST_DECRYPT_PARA pMailListDecryptPara, DWORD dwFlags, void *pvReserved, HCRYPTKEY *phContentEncryptKey);
typedef struct _CMSG_CNG_CONTENT_DECRYPT_INFO {
DWORD cbSize;
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
PFN_CMSG_ALLOC pfnAlloc;
PFN_CMSG_FREE pfnFree;
NCRYPT_KEY_HANDLE hNCryptKey;
BYTE *pbContentEncryptKey;
DWORD cbContentEncryptKey;
BCRYPT_KEY_HANDLE hCNGContentEncryptKey;
BYTE *pbCNGContentEncryptKeyObject;
} CMSG_CNG_CONTENT_DECRYPT_INFO,*PCMSG_CNG_CONTENT_DECRYPT_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_CNG_IMPORT_KEY_TRANS) (PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo, PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara, DWORD dwFlags, void *pvReserved);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_CNG_IMPORT_KEY_AGREE) (PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo, PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA pKeyAgreeDecryptPara, DWORD dwFlags, void *pvReserved);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY) (PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo, DWORD dwFlags, void *pvReserved);
typedef void *HCERTSTORE;
typedef struct _CERT_CONTEXT {
DWORD dwCertEncodingType;
BYTE *pbCertEncoded;
DWORD cbCertEncoded;
PCERT_INFO pCertInfo;
HCERTSTORE hCertStore;
} CERT_CONTEXT,*PCERT_CONTEXT;
typedef const CERT_CONTEXT *PCCERT_CONTEXT;
typedef struct _CRL_CONTEXT {
DWORD dwCertEncodingType;
BYTE *pbCrlEncoded;
DWORD cbCrlEncoded;
PCRL_INFO pCrlInfo;
HCERTSTORE hCertStore;
} CRL_CONTEXT,*PCRL_CONTEXT;
typedef const CRL_CONTEXT *PCCRL_CONTEXT;
typedef struct _CTL_CONTEXT {
DWORD dwMsgAndCertEncodingType;
BYTE *pbCtlEncoded;
DWORD cbCtlEncoded;
PCTL_INFO pCtlInfo;
HCERTSTORE hCertStore;
HCRYPTMSG hCryptMsg;
BYTE *pbCtlContent;
DWORD cbCtlContent;
} CTL_CONTEXT,*PCTL_CONTEXT;
typedef const CTL_CONTEXT *PCCTL_CONTEXT;
typedef enum CertKeyType {
KeyTypeOther = 0,
KeyTypeVirtualSmartCard = 1,
KeyTypePhysicalSmartCard = 2,
KeyTypePassport = 3,
KeyTypePassportRemote = 4,
KeyTypePassportSmartCard = 5,
KeyTypeHardware = 6,
KeyTypeSoftware = 7,
KeyTypeSelfSigned = 8
} CertKeyType;
typedef struct _CRYPT_KEY_PROV_PARAM {
DWORD dwParam;
BYTE *pbData;
DWORD cbData;
DWORD dwFlags;
} CRYPT_KEY_PROV_PARAM,*PCRYPT_KEY_PROV_PARAM;
typedef struct _CRYPT_KEY_PROV_INFO {
LPWSTR pwszContainerName;
LPWSTR pwszProvName;
DWORD dwProvType;
DWORD dwFlags;
DWORD cProvParam;
PCRYPT_KEY_PROV_PARAM rgProvParam;
DWORD dwKeySpec;
} CRYPT_KEY_PROV_INFO,*PCRYPT_KEY_PROV_INFO;
typedef struct _CERT_KEY_CONTEXT {
DWORD cbSize;
__extension__ union {
HCRYPTPROV hCryptProv;
NCRYPT_KEY_HANDLE hNCryptKey;
};
DWORD dwKeySpec;
} CERT_KEY_CONTEXT,*PCERT_KEY_CONTEXT;
typedef struct _ROOT_INFO_LUID {
DWORD LowPart;
LONG HighPart;
} ROOT_INFO_LUID,*PROOT_INFO_LUID;
typedef struct _CRYPT_SMART_CARD_ROOT_INFO {
BYTE rgbCardID [16];
ROOT_INFO_LUID luid;
} CRYPT_SMART_CARD_ROOT_INFO,*PCRYPT_SMART_CARD_ROOT_INFO;
typedef struct _CERT_SYSTEM_STORE_RELOCATE_PARA {
__extension__ union {
HKEY hKeyBase;
void *pvBase;
};
__extension__ union {
void *pvSystemStore;
LPCSTR pszSystemStore;
LPCWSTR pwszSystemStore;
};
} CERT_SYSTEM_STORE_RELOCATE_PARA,*PCERT_SYSTEM_STORE_RELOCATE_PARA;
typedef struct _CERT_REGISTRY_STORE_CLIENT_GPT_PARA {
HKEY hKeyBase;
LPWSTR pwszRegPath;
} CERT_REGISTRY_STORE_CLIENT_GPT_PARA,*PCERT_REGISTRY_STORE_CLIENT_GPT_PARA;
typedef struct _CERT_REGISTRY_STORE_ROAMING_PARA {
HKEY hKey;
LPWSTR pwszStoreDirectory;
} CERT_REGISTRY_STORE_ROAMING_PARA,*PCERT_REGISTRY_STORE_ROAMING_PARA;
typedef struct _CERT_LDAP_STORE_OPENED_PARA {
void *pvLdapSessionHandle;
LPCWSTR pwszLdapUrl;
} CERT_LDAP_STORE_OPENED_PARA,*PCERT_LDAP_STORE_OPENED_PARA;
__attribute__((dllimport)) HCERTSTORE __attribute__((__stdcall__)) CertOpenStore (LPCSTR lpszStoreProvider, DWORD dwEncodingType, HCRYPTPROV_LEGACY hCryptProv, DWORD dwFlags, const void *pvPara);
typedef void *HCERTSTOREPROV;
typedef struct _CERT_STORE_PROV_INFO {
DWORD cbSize;
DWORD cStoreProvFunc;
void **rgpvStoreProvFunc;
HCERTSTOREPROV hStoreProv;
DWORD dwStoreProvFlags;
HCRYPTOIDFUNCADDR hStoreProvFuncAddr2;
} CERT_STORE_PROV_INFO,*PCERT_STORE_PROV_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_DLL_OPEN_STORE_PROV_FUNC) (LPCSTR lpszStoreProvider, DWORD dwEncodingType, HCRYPTPROV_LEGACY hCryptProv, DWORD dwFlags, const void *pvPara, HCERTSTORE hCertStore, PCERT_STORE_PROV_INFO pStoreProvInfo);
typedef void (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_CLOSE) (HCERTSTOREPROV hStoreProv, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_READ_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pStoreCertContext, DWORD dwFlags, PCCERT_CONTEXT *ppProvCertContext);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_WRITE_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_DELETE_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_SET_CERT_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_READ_CRL) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pStoreCrlContext, DWORD dwFlags, PCCRL_CONTEXT *ppProvCrlContext);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_WRITE_CRL) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_DELETE_CRL) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_SET_CRL_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_READ_CTL) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pStoreCtlContext, DWORD dwFlags, PCCTL_CONTEXT *ppProvCtlContext);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_WRITE_CTL) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_DELETE_CTL) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_SET_CTL_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_CONTROL) (HCERTSTOREPROV hStoreProv, DWORD dwFlags, DWORD dwCtrlType, void const *pvCtrlPara);
typedef struct _CERT_STORE_PROV_FIND_INFO {
DWORD cbSize;
DWORD dwMsgAndCertEncodingType;
DWORD dwFindFlags;
DWORD dwFindType;
const void *pvFindPara;
} CERT_STORE_PROV_FIND_INFO,*PCERT_STORE_PROV_FIND_INFO;
typedef const CERT_STORE_PROV_FIND_INFO CCERT_STORE_PROV_FIND_INFO,*PCCERT_STORE_PROV_FIND_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_FIND_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_STORE_PROV_FIND_INFO pFindInfo, PCCERT_CONTEXT pPrevCertContext, DWORD dwFlags, void **ppvStoreProvFindInfo, PCCERT_CONTEXT *ppProvCertContext);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_FREE_FIND_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, void *pvStoreProvFindInfo, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_GET_CERT_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, DWORD dwPropId, DWORD dwFlags, void *pvData, DWORD *pcbData);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_FIND_CRL) (HCERTSTOREPROV hStoreProv, PCCERT_STORE_PROV_FIND_INFO pFindInfo, PCCRL_CONTEXT pPrevCrlContext, DWORD dwFlags, void **ppvStoreProvFindInfo, PCCRL_CONTEXT *ppProvCrlContext);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_FREE_FIND_CRL) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, void *pvStoreProvFindInfo, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_GET_CRL_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, DWORD dwPropId, DWORD dwFlags, void *pvData, DWORD *pcbData);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_FIND_CTL) (HCERTSTOREPROV hStoreProv, PCCERT_STORE_PROV_FIND_INFO pFindInfo, PCCTL_CONTEXT pPrevCtlContext, DWORD dwFlags, void **ppvStoreProvFindInfo, PCCTL_CONTEXT *ppProvCtlContext);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_FREE_FIND_CTL) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, void *pvStoreProvFindInfo, DWORD dwFlags);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_STORE_PROV_GET_CTL_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, DWORD dwPropId, DWORD dwFlags, void *pvData, DWORD *pcbData);
__attribute__((dllimport)) HCERTSTORE __attribute__((__stdcall__)) CertDuplicateStore (HCERTSTORE hCertStore);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSaveStore (HCERTSTORE hCertStore, DWORD dwEncodingType, DWORD dwSaveAs, DWORD dwSaveTo, void *pvSaveToPara, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertCloseStore (HCERTSTORE hCertStore, DWORD dwFlags);
__attribute__((dllimport)) PCCERT_CONTEXT __attribute__((__stdcall__)) CertGetSubjectCertificateFromStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, PCERT_INFO pCertId);
__attribute__((dllimport)) PCCERT_CONTEXT __attribute__((__stdcall__)) CertEnumCertificatesInStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pPrevCertContext);
__attribute__((dllimport)) PCCERT_CONTEXT __attribute__((__stdcall__)) CertFindCertificateInStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCERT_CONTEXT pPrevCertContext);
__attribute__((dllimport)) PCCERT_CONTEXT __attribute__((__stdcall__)) CertGetIssuerCertificateFromStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pSubjectContext, PCCERT_CONTEXT pPrevIssuerContext, DWORD *pdwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertVerifySubjectCertificateContext (PCCERT_CONTEXT pSubject, PCCERT_CONTEXT pIssuer, DWORD *pdwFlags);
__attribute__((dllimport)) PCCERT_CONTEXT __attribute__((__stdcall__)) CertDuplicateCertificateContext (PCCERT_CONTEXT pCertContext);
__attribute__((dllimport)) PCCERT_CONTEXT __attribute__((__stdcall__)) CertCreateCertificateContext (DWORD dwCertEncodingType, const BYTE *pbCertEncoded, DWORD cbCertEncoded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertFreeCertificateContext (PCCERT_CONTEXT pCertContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSetCertificateContextProperty (PCCERT_CONTEXT pCertContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
typedef struct _CRL_FIND_ISSUED_FOR_PARA {
PCCERT_CONTEXT pSubjectCert;
PCCERT_CONTEXT pIssuerCert;
} CRL_FIND_ISSUED_FOR_PARA,*PCRL_FIND_ISSUED_FOR_PARA;
typedef struct _CTL_ANY_SUBJECT_INFO {
CRYPT_ALGORITHM_IDENTIFIER SubjectAlgorithm;
CRYPT_DATA_BLOB SubjectIdentifier;
} CTL_ANY_SUBJECT_INFO,*PCTL_ANY_SUBJECT_INFO;
__attribute__((dllimport)) PCCRL_CONTEXT __attribute__((__stdcall__)) CertEnumCRLsInStore (HCERTSTORE hCertStore, PCCRL_CONTEXT pPrevCrlContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertDeleteCRLFromStore (PCCRL_CONTEXT pCrlContext);
__attribute__((dllimport)) PCCRL_CONTEXT __attribute__((__stdcall__)) CertDuplicateCRLContext (PCCRL_CONTEXT pCrlContext);
__attribute__((dllimport)) PCCRL_CONTEXT __attribute__((__stdcall__)) CertFindCRLInStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCRL_CONTEXT pPrevCrlContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertFreeCRLContext (PCCRL_CONTEXT pCrlContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertGetCertificateContextProperty (PCCERT_CONTEXT pCertContext, DWORD dwPropId, void *pvData, DWORD *pcbData);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertEnumCertificateContextProperties (PCCERT_CONTEXT pCertContext, DWORD dwPropId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertDeleteCertificateFromStore (PCCERT_CONTEXT pCertContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertCreateCTLEntryFromCertificateContextProperties (PCCERT_CONTEXT pCertContext, DWORD cOptAttr, PCRYPT_ATTRIBUTE rgOptAttr, DWORD dwFlags, void *pvReserved, PCTL_ENTRY pCtlEntry, DWORD *pcbCtlEntry);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSetCertificateContextPropertiesFromCTLEntry (PCCERT_CONTEXT pCertContext, PCTL_ENTRY pCtlEntry, DWORD dwFlags);
__attribute__((dllimport)) PCCRL_CONTEXT __attribute__((__stdcall__)) CertGetCRLFromStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pIssuerContext, PCCRL_CONTEXT pPrevCrlContext, DWORD *pdwFlags);
__attribute__((dllimport)) PCCRL_CONTEXT __attribute__((__stdcall__)) CertCreateCRLContext (DWORD dwCertEncodingType, const BYTE *pbCrlEncoded, DWORD cbCrlEncoded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSetCRLContextProperty (PCCRL_CONTEXT pCrlContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertGetCRLContextProperty (PCCRL_CONTEXT pCrlContext, DWORD dwPropId, void *pvData, DWORD *pcbData);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertEnumCRLContextProperties (PCCRL_CONTEXT pCrlContext, DWORD dwPropId);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertFindCertificateInCRL (PCCERT_CONTEXT pCert, PCCRL_CONTEXT pCrlContext, DWORD dwFlags, void *pvReserved, PCRL_ENTRY *ppCrlEntry);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertIsValidCRLForCertificate (PCCERT_CONTEXT pCert, PCCRL_CONTEXT pCrl, DWORD dwFlags, void *pvReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddEncodedCertificateToStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, const BYTE *pbCertEncoded, DWORD cbCertEncoded, DWORD dwAddDisposition, PCCERT_CONTEXT *ppCertContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddCertificateContextToStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pCertContext, DWORD dwAddDisposition, PCCERT_CONTEXT *ppStoreContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddSerializedElementToStore (HCERTSTORE hCertStore, const BYTE *pbElement, DWORD cbElement, DWORD dwAddDisposition, DWORD dwFlags, DWORD dwContextTypeFlags, DWORD *pdwContextType, const void **ppvContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddEncodedCRLToStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, const BYTE *pbCrlEncoded, DWORD cbCrlEncoded, DWORD dwAddDisposition, PCCRL_CONTEXT *ppCrlContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddCRLContextToStore (HCERTSTORE hCertStore, PCCRL_CONTEXT pCrlContext, DWORD dwAddDisposition, PCCRL_CONTEXT *ppStoreContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSerializeCertificateStoreElement (PCCERT_CONTEXT pCertContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSerializeCRLStoreElement (PCCRL_CONTEXT pCrlContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement);
__attribute__((dllimport)) PCCTL_CONTEXT __attribute__((__stdcall__)) CertDuplicateCTLContext (PCCTL_CONTEXT pCtlContext);
__attribute__((dllimport)) PCCTL_CONTEXT __attribute__((__stdcall__)) CertCreateCTLContext (DWORD dwMsgAndCertEncodingType, const BYTE *pbCtlEncoded, DWORD cbCtlEncoded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertFreeCTLContext (PCCTL_CONTEXT pCtlContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSetCTLContextProperty (PCCTL_CONTEXT pCtlContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertGetCTLContextProperty (PCCTL_CONTEXT pCtlContext, DWORD dwPropId, void *pvData, DWORD *pcbData);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertEnumCTLContextProperties (PCCTL_CONTEXT pCtlContext, DWORD dwPropId);
__attribute__((dllimport)) PCCTL_CONTEXT __attribute__((__stdcall__)) CertEnumCTLsInStore (HCERTSTORE hCertStore, PCCTL_CONTEXT pPrevCtlContext);
__attribute__((dllimport)) PCTL_ENTRY __attribute__((__stdcall__)) CertFindSubjectInCTL (DWORD dwEncodingType, DWORD dwSubjectType, void *pvSubject, PCCTL_CONTEXT pCtlContext, DWORD dwFlags);
__attribute__((dllimport)) PCCTL_CONTEXT __attribute__((__stdcall__)) CertFindCTLInStore (HCERTSTORE hCertStore, DWORD dwMsgAndCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCTL_CONTEXT pPrevCtlContext);
typedef struct _CTL_FIND_USAGE_PARA {
DWORD cbSize;
CTL_USAGE SubjectUsage;
CRYPT_DATA_BLOB ListIdentifier;
PCERT_INFO pSigner;
} CTL_FIND_USAGE_PARA,*PCTL_FIND_USAGE_PARA;
typedef struct _CTL_FIND_SUBJECT_PARA {
DWORD cbSize;
PCTL_FIND_USAGE_PARA pUsagePara;
DWORD dwSubjectType;
void *pvSubject;
} CTL_FIND_SUBJECT_PARA,*PCTL_FIND_SUBJECT_PARA;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_CREATE_CONTEXT_SORT_FUNC) (DWORD cbTotalEncoded, DWORD cbRemainEncoded, DWORD cEntry, void *pvSort);
typedef struct _CERT_CREATE_CONTEXT_PARA {
DWORD cbSize;
PFN_CRYPT_FREE pfnFree;
void *pvFree;
PFN_CERT_CREATE_CONTEXT_SORT_FUNC pfnSort;
void *pvSort;
} CERT_CREATE_CONTEXT_PARA,*PCERT_CREATE_CONTEXT_PARA;
typedef struct _CERT_SYSTEM_STORE_INFO {
DWORD cbSize;
} CERT_SYSTEM_STORE_INFO,*PCERT_SYSTEM_STORE_INFO;
typedef struct _CERT_PHYSICAL_STORE_INFO {
DWORD cbSize;
LPSTR pszOpenStoreProvider;
DWORD dwOpenEncodingType;
DWORD dwOpenFlags;
CRYPT_DATA_BLOB OpenParameters;
DWORD dwFlags;
DWORD dwPriority;
} CERT_PHYSICAL_STORE_INFO,*PCERT_PHYSICAL_STORE_INFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddEncodedCTLToStore (HCERTSTORE hCertStore, DWORD dwMsgAndCertEncodingType, const BYTE *pbCtlEncoded, DWORD cbCtlEncoded, DWORD dwAddDisposition, PCCTL_CONTEXT *ppCtlContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddCTLContextToStore (HCERTSTORE hCertStore, PCCTL_CONTEXT pCtlContext, DWORD dwAddDisposition, PCCTL_CONTEXT *ppStoreContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSerializeCTLStoreElement (PCCTL_CONTEXT pCtlContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertDeleteCTLFromStore (PCCTL_CONTEXT pCtlContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddCertificateLinkToStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pCertContext, DWORD dwAddDisposition, PCCERT_CONTEXT *ppStoreContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddCRLLinkToStore (HCERTSTORE hCertStore, PCCRL_CONTEXT pCrlContext, DWORD dwAddDisposition, PCCRL_CONTEXT *ppStoreContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddCTLLinkToStore (HCERTSTORE hCertStore, PCCTL_CONTEXT pCtlContext, DWORD dwAddDisposition, PCCTL_CONTEXT *ppStoreContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddStoreToCollection (HCERTSTORE hCollectionStore, HCERTSTORE hSiblingStore, DWORD dwUpdateFlags, DWORD dwPriority);
__attribute__((dllimport)) void __attribute__((__stdcall__)) CertRemoveStoreFromCollection (HCERTSTORE hCollectionStore, HCERTSTORE hSiblingStore);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertControlStore (HCERTSTORE hCertStore, DWORD dwFlags, DWORD dwCtrlType, void const *pvCtrlPara);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSetStoreProperty (HCERTSTORE hCertStore, DWORD dwPropId, DWORD dwFlags, const void *pvData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertGetStoreProperty (HCERTSTORE hCertStore, DWORD dwPropId, void *pvData, DWORD *pcbData);
__attribute__((dllimport)) const void *__attribute__((__stdcall__)) CertCreateContext (DWORD dwContextType, DWORD dwEncodingType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwFlags, PCERT_CREATE_CONTEXT_PARA pCreatePara);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertRegisterSystemStore (const void *pvSystemStore, DWORD dwFlags, PCERT_SYSTEM_STORE_INFO pStoreInfo, void *pvReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertRegisterPhysicalStore (const void *pvSystemStore, DWORD dwFlags, LPCWSTR pwszStoreName, PCERT_PHYSICAL_STORE_INFO pStoreInfo, void *pvReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertUnregisterSystemStore (const void *pvSystemStore, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertUnregisterPhysicalStore (const void *pvSystemStore, DWORD dwFlags, LPCWSTR pwszStoreName);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_ENUM_SYSTEM_STORE_LOCATION) (LPCWSTR pwszStoreLocation, DWORD dwFlags, void *pvReserved, void *pvArg);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_ENUM_SYSTEM_STORE) (const void *pvSystemStore, DWORD dwFlags, PCERT_SYSTEM_STORE_INFO pStoreInfo, void *pvReserved, void *pvArg);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_ENUM_PHYSICAL_STORE) (const void *pvSystemStore, DWORD dwFlags, LPCWSTR pwszStoreName, PCERT_PHYSICAL_STORE_INFO pStoreInfo, void *pvReserved, void *pvArg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertEnumSystemStoreLocation (DWORD dwFlags, void *pvArg, PFN_CERT_ENUM_SYSTEM_STORE_LOCATION pfnEnum);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertEnumSystemStore (DWORD dwFlags, void *pvSystemStoreLocationPara, void *pvArg, PFN_CERT_ENUM_SYSTEM_STORE pfnEnum);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertEnumPhysicalStore (const void *pvSystemStore, DWORD dwFlags, void *pvArg, PFN_CERT_ENUM_PHYSICAL_STORE pfnEnum);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertGetEnhancedKeyUsage (PCCERT_CONTEXT pCertContext, DWORD dwFlags, PCERT_ENHKEY_USAGE pUsage, DWORD *pcbUsage);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertSetEnhancedKeyUsage (PCCERT_CONTEXT pCertContext, PCERT_ENHKEY_USAGE pUsage);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddEnhancedKeyUsageIdentifier (PCCERT_CONTEXT pCertContext, LPCSTR pszUsageIdentifier);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertRemoveEnhancedKeyUsageIdentifier (PCCERT_CONTEXT pCertContext, LPCSTR pszUsageIdentifier);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertGetValidUsages (DWORD cCerts, PCCERT_CONTEXT *rghCerts, int *cNumOIDs, LPSTR *rghOIDs, DWORD *pcbOIDs);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptMsgGetAndVerifySigner (HCRYPTMSG hCryptMsg, DWORD cSignerStore, HCERTSTORE *rghSignerStore, DWORD dwFlags, PCCERT_CONTEXT *ppSigner, DWORD *pdwSignerIndex);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptMsgSignCTL (DWORD dwMsgEncodingType, BYTE *pbCtlContent, DWORD cbCtlContent, PCMSG_SIGNED_ENCODE_INFO pSignInfo, DWORD dwFlags, BYTE *pbEncoded, DWORD *pcbEncoded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptMsgEncodeAndSignCTL (DWORD dwMsgEncodingType, PCTL_INFO pCtlInfo, PCMSG_SIGNED_ENCODE_INFO pSignInfo, DWORD dwFlags, BYTE *pbEncoded, DWORD *pcbEncoded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertFindSubjectInSortedCTL (PCRYPT_DATA_BLOB pSubjectIdentifier, PCCTL_CONTEXT pCtlContext, DWORD dwFlags, void *pvReserved, PCRYPT_DER_BLOB pEncodedAttributes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertEnumSubjectInSortedCTL (PCCTL_CONTEXT pCtlContext, void **ppvNextSubject, PCRYPT_DER_BLOB pSubjectIdentifier, PCRYPT_DER_BLOB pEncodedAttributes);
typedef struct _CTL_VERIFY_USAGE_PARA {
DWORD cbSize;
CRYPT_DATA_BLOB ListIdentifier;
DWORD cCtlStore;
HCERTSTORE *rghCtlStore;
DWORD cSignerStore;
HCERTSTORE *rghSignerStore;
} CTL_VERIFY_USAGE_PARA,*PCTL_VERIFY_USAGE_PARA;
typedef struct _CTL_VERIFY_USAGE_STATUS {
DWORD cbSize;
DWORD dwError;
DWORD dwFlags;
PCCTL_CONTEXT *ppCtl;
DWORD dwCtlEntryIndex;
PCCERT_CONTEXT *ppSigner;
DWORD dwSignerIndex;
} CTL_VERIFY_USAGE_STATUS,*PCTL_VERIFY_USAGE_STATUS;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertVerifyCTLUsage (DWORD dwEncodingType, DWORD dwSubjectType, void *pvSubject, PCTL_USAGE pSubjectUsage, DWORD dwFlags, PCTL_VERIFY_USAGE_PARA pVerifyUsagePara, PCTL_VERIFY_USAGE_STATUS pVerifyUsageStatus);
typedef struct _CERT_REVOCATION_CRL_INFO {
DWORD cbSize;
PCCRL_CONTEXT pBaseCrlContext;
PCCRL_CONTEXT pDeltaCrlContext;
PCRL_ENTRY pCrlEntry;
WINBOOL fDeltaCrlEntry;
} CERT_REVOCATION_CRL_INFO,*PCERT_REVOCATION_CRL_INFO;
typedef struct _CERT_REVOCATION_CHAIN_PARA CERT_REVOCATION_CHAIN_PARA,*PCERT_REVOCATION_CHAIN_PARA;
typedef struct _CERT_REVOCATION_PARA {
DWORD cbSize;
PCCERT_CONTEXT pIssuerCert;
DWORD cCertStore;
HCERTSTORE *rgCertStore;
HCERTSTORE hCrlStore;
LPFILETIME pftTimeToUse;
} CERT_REVOCATION_PARA,*PCERT_REVOCATION_PARA;
typedef struct _CERT_REVOCATION_STATUS {
DWORD cbSize;
DWORD dwIndex;
DWORD dwError;
DWORD dwReason;
WINBOOL fHasFreshnessTime;
DWORD dwFreshnessTime;
} CERT_REVOCATION_STATUS,*PCERT_REVOCATION_STATUS;
typedef struct _CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO {
CRYPT_DATA_BLOB CertSignHashCNGAlgPropData;
CRYPT_DATA_BLOB CertIssuerPubKeyBitLengthPropData;
} CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO, *PCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC) (DWORD dwCertEncodingType, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, void **ppvDecodedSignPara, LPWSTR *ppwszCNGHashAlgid);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC) (NCRYPT_KEY_HANDLE hKey, DWORD dwCertEncodingType, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, void *pvDecodedSignPara, LPCWSTR pwszCNGPubKeyAlgid, LPCWSTR pwszCNGHashAlgid, BYTE *pbComputedHash, DWORD cbComputedHash, BYTE *pbSignature, DWORD *pcbSignature);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC) (DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pPubKeyInfo, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, void *pvDecodedSignPara, LPCWSTR pwszCNGPubKeyAlgid, LPCWSTR pwszCNGHashAlgid, BYTE *pbComputedHash, DWORD cbComputedHash, BYTE *pbSignature, DWORD cbSignature);
typedef void *HCRYPTDEFAULTCONTEXT;
typedef struct _CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA {
DWORD cOID;
LPSTR *rgpszOID;
} CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA,*PCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertVerifyRevocation (DWORD dwEncodingType, DWORD dwRevType, DWORD cContext, PVOID rgpvContext[], DWORD dwFlags, PCERT_REVOCATION_PARA pRevPara, PCERT_REVOCATION_STATUS pRevStatus);
WINBOOL __attribute__((__stdcall__)) CertCompareIntegerBlob (PCRYPT_INTEGER_BLOB pInt1, PCRYPT_INTEGER_BLOB pInt2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertCompareCertificate (DWORD dwCertEncodingType, PCERT_INFO pCertId1, PCERT_INFO pCertId2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertCompareCertificateName (DWORD dwCertEncodingType, PCERT_NAME_BLOB pCertName1, PCERT_NAME_BLOB pCertName2);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertIsRDNAttrsInCertificateName (DWORD dwCertEncodingType, DWORD dwFlags, PCERT_NAME_BLOB pCertName, PCERT_RDN pRDN);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertComparePublicKeyInfo (DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pPublicKey1, PCERT_PUBLIC_KEY_INFO pPublicKey2);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertGetPublicKeyLength (DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pPublicKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifyCertificateSignature (HCRYPTPROV_LEGACY hCryptProv, DWORD dwCertEncodingType, const BYTE *pbEncoded, DWORD cbEncoded, PCERT_PUBLIC_KEY_INFO pPublicKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifyCertificateSignatureEx (HCRYPTPROV_LEGACY hCryptProv, DWORD dwCertEncodingType, DWORD dwSubjectType, void *pvSubject, DWORD dwIssuerType, void *pvIssuer, DWORD dwFlags, void *pvExtra);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertIsStrongHashToSign (PCCERT_STRONG_SIGN_PARA pStrongSignPara, LPCWSTR pwszCNGHashAlgid, PCCERT_CONTEXT pSigningCert);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptHashToBeSigned (HCRYPTPROV_LEGACY hCryptProv, DWORD dwCertEncodingType, const BYTE *pbEncoded, DWORD cbEncoded, BYTE *pbComputedHash, DWORD *pcbComputedHash);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptHashCertificate (HCRYPTPROV_LEGACY hCryptProv, ALG_ID Algid, DWORD dwFlags, const BYTE *pbEncoded, DWORD cbEncoded, BYTE *pbComputedHash, DWORD *pcbComputedHash);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSignCertificate (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, DWORD dwKeySpec, DWORD dwCertEncodingType, const BYTE *pbEncodedToBeSigned, DWORD cbEncodedToBeSigned, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, const void *pvHashAuxInfo, BYTE *pbSignature, DWORD *pcbSignature);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSignAndEncodeCertificate (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, DWORD dwKeySpec, DWORD dwCertEncodingType, LPCSTR lpszStructType, const void *pvStructInfo, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, const void *pvHashAuxInfo, BYTE *pbEncoded, DWORD *pcbEncoded);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) CertVerifyTimeValidity (LPFILETIME pTimeToVerify, PCERT_INFO pCertInfo);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) CertVerifyCRLTimeValidity (LPFILETIME pTimeToVerify, PCRL_INFO pCrlInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertVerifyValidityNesting (PCERT_INFO pSubjectInfo, PCERT_INFO pIssuerInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertVerifyCRLRevocation (DWORD dwCertEncodingType, PCERT_INFO pCertId, DWORD cCrlInfo, PCRL_INFO rgpCrlInfo[]);
__attribute__((dllimport)) LPCSTR __attribute__((__stdcall__)) CertAlgIdToOID (DWORD dwAlgId);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertOIDToAlgId (LPCSTR pszObjId);
__attribute__((dllimport)) PCERT_EXTENSION __attribute__((__stdcall__)) CertFindExtension (LPCSTR pszObjId, DWORD cExtensions, CERT_EXTENSION rgExtensions[]);
__attribute__((dllimport)) PCRYPT_ATTRIBUTE __attribute__((__stdcall__)) CertFindAttribute (LPCSTR pszObjId, DWORD cAttr, CRYPT_ATTRIBUTE rgAttr[]);
__attribute__((dllimport)) PCERT_RDN_ATTR __attribute__((__stdcall__)) CertFindRDNAttr (LPCSTR pszObjId, PCERT_NAME_INFO pName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertGetIntendedKeyUsage (DWORD dwCertEncodingType, PCERT_INFO pCertInfo, BYTE *pbKeyUsage, DWORD cbKeyUsage);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptInstallDefaultContext (HCRYPTPROV hCryptProv, DWORD dwDefaultType, const void *pvDefaultPara, DWORD dwFlags, void *pvReserved, HCRYPTDEFAULTCONTEXT *phDefaultContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptUninstallDefaultContext (HCRYPTDEFAULTCONTEXT hDefaultContext, DWORD dwFlags, void *pvReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptExportPublicKeyInfo (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, DWORD dwKeySpec, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, DWORD *pcbInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptExportPublicKeyInfoEx (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, DWORD dwKeySpec, DWORD dwCertEncodingType, LPSTR pszPublicKeyObjId, DWORD dwFlags, void *pvAuxInfo, PCERT_PUBLIC_KEY_INFO pInfo, DWORD *pcbInfo);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC) (NCRYPT_KEY_HANDLE hNCryptKey, DWORD dwCertEncodingType, LPSTR pszPublicKeyObjId, DWORD dwFlags, void *pvAuxInfo, PCERT_PUBLIC_KEY_INFO pInfo, DWORD *pcbInfo);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_IMPORT_PRIV_KEY_FUNC) (HCRYPTPROV hCryptProv, CRYPT_PRIVATE_KEY_INFO *pPrivateKeyInfo, DWORD dwFlags, void *pvAuxInfo);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_EXPORT_PRIV_KEY_FUNC) (HCRYPTPROV hCryptProv, DWORD dwKeySpec, LPSTR pszPrivateKeyObjId, DWORD dwFlags, void *pvAuxInfo, CRYPT_PRIVATE_KEY_INFO *pPrivateKeyInfo, DWORD *pcbPrivateKeyInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptImportPublicKeyInfo (HCRYPTPROV hCryptProv, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, HCRYPTKEY *phKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptImportPublicKeyInfoEx (HCRYPTPROV hCryptProv, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, ALG_ID aiKeyAlg, DWORD dwFlags, void *pvAuxInfo, HCRYPTKEY *phKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptAcquireCertificatePrivateKey (PCCERT_CONTEXT pCert, DWORD dwFlags, void *pvParameters, HCRYPTPROV_OR_NCRYPT_KEY_HANDLE *phCryptProvOrNCryptKey, DWORD *pdwKeySpec, WINBOOL *pfCallerFreeProvOrNCryptKey);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptFindCertificateKeyProvInfo (PCCERT_CONTEXT pCert, DWORD dwFlags, void *pvReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptImportPKCS8 (CRYPT_PKCS8_IMPORT_PARAMS sPrivateKeyAndParams, DWORD dwFlags, HCRYPTPROV *phCryptProv, void *pvAuxInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptExportPKCS8 (HCRYPTPROV hCryptProv, DWORD dwKeySpec, LPSTR pszPrivateKeyObjId, DWORD dwFlags, void *pvAuxInfo, BYTE *pbPrivateKeyBlob, DWORD *pcbPrivateKeyBlob);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptExportPKCS8Ex (CRYPT_PKCS8_EXPORT_PARAMS *psExportParams, DWORD dwFlags, void *pvAuxInfo, BYTE *pbPrivateKeyBlob, DWORD *pcbPrivateKeyBlob);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptHashPublicKeyInfo (HCRYPTPROV_LEGACY hCryptProv, ALG_ID Algid, DWORD dwFlags, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, BYTE *pbComputedHash, DWORD *pcbComputedHash);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertRDNValueToStrA (DWORD dwValueType, PCERT_RDN_VALUE_BLOB pValue, LPSTR psz, DWORD csz);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertRDNValueToStrW (DWORD dwValueType, PCERT_RDN_VALUE_BLOB pValue, LPWSTR psz, DWORD csz);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertNameToStrA (DWORD dwCertEncodingType, PCERT_NAME_BLOB pName, DWORD dwStrType, LPSTR psz, DWORD csz);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertNameToStrW (DWORD dwCertEncodingType, PCERT_NAME_BLOB pName, DWORD dwStrType, LPWSTR psz, DWORD csz);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertStrToNameA (DWORD dwCertEncodingType, LPCSTR pszX500, DWORD dwStrType, void *pvReserved, BYTE *pbEncoded, DWORD *pcbEncoded, LPCSTR *ppszError);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertStrToNameW (DWORD dwCertEncodingType, LPCWSTR pszX500, DWORD dwStrType, void *pvReserved, BYTE *pbEncoded, DWORD *pcbEncoded, LPCWSTR *ppszError);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertGetNameStringA (PCCERT_CONTEXT pCertContext, DWORD dwType, DWORD dwFlags, void *pvTypePara, LPSTR pszNameString, DWORD cchNameString);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CertGetNameStringW (PCCERT_CONTEXT pCertContext, DWORD dwType, DWORD dwFlags, void *pvTypePara, LPWSTR pszNameString, DWORD cchNameString);
typedef PCCERT_CONTEXT (__attribute__((__stdcall__)) *PFN_CRYPT_GET_SIGNER_CERTIFICATE) (void *pvGetArg, DWORD dwCertEncodingType, PCERT_INFO pSignerId, HCERTSTORE hMsgCertStore);
typedef struct _CRYPT_SIGN_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgEncodingType;
PCCERT_CONTEXT pSigningCert;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
void *pvHashAuxInfo;
DWORD cMsgCert;
PCCERT_CONTEXT *rgpMsgCert;
DWORD cMsgCrl;
PCCRL_CONTEXT *rgpMsgCrl;
DWORD cAuthAttr;
PCRYPT_ATTRIBUTE rgAuthAttr;
DWORD cUnauthAttr;
PCRYPT_ATTRIBUTE rgUnauthAttr;
DWORD dwFlags;
DWORD dwInnerContentType;
} CRYPT_SIGN_MESSAGE_PARA,*PCRYPT_SIGN_MESSAGE_PARA;
typedef struct _CRYPT_VERIFY_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgAndCertEncodingType;
HCRYPTPROV_LEGACY hCryptProv;
PFN_CRYPT_GET_SIGNER_CERTIFICATE pfnGetSignerCertificate;
void *pvGetArg;
} CRYPT_VERIFY_MESSAGE_PARA,*PCRYPT_VERIFY_MESSAGE_PARA;
typedef struct _CRYPT_ENCRYPT_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgEncodingType;
HCRYPTPROV_LEGACY hCryptProv;
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
void *pvEncryptionAuxInfo;
DWORD dwFlags;
DWORD dwInnerContentType;
} CRYPT_ENCRYPT_MESSAGE_PARA,*PCRYPT_ENCRYPT_MESSAGE_PARA;
typedef struct _CRYPT_DECRYPT_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgAndCertEncodingType;
DWORD cCertStore;
HCERTSTORE *rghCertStore;
} CRYPT_DECRYPT_MESSAGE_PARA,*PCRYPT_DECRYPT_MESSAGE_PARA;
typedef struct _CRYPT_HASH_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgEncodingType;
HCRYPTPROV_LEGACY hCryptProv;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
void *pvHashAuxInfo;
} CRYPT_HASH_MESSAGE_PARA,*PCRYPT_HASH_MESSAGE_PARA;
typedef struct _CRYPT_KEY_SIGN_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgAndCertEncodingType;
__extension__ union {
HCRYPTPROV hCryptProv;
NCRYPT_KEY_HANDLE hNCryptKey;
};
DWORD dwKeySpec;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
void *pvHashAuxInfo;
CRYPT_ALGORITHM_IDENTIFIER PubKeyAlgorithm;
} CRYPT_KEY_SIGN_MESSAGE_PARA,*PCRYPT_KEY_SIGN_MESSAGE_PARA;
typedef struct _CRYPT_KEY_VERIFY_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgEncodingType;
HCRYPTPROV_LEGACY hCryptProv;
} CRYPT_KEY_VERIFY_MESSAGE_PARA,*PCRYPT_KEY_VERIFY_MESSAGE_PARA;
typedef struct _CERT_CHAIN {
DWORD cCerts;
PCERT_BLOB certs;
CRYPT_KEY_PROV_INFO keyLocatorInfo;
} CERT_CHAIN,*PCERT_CHAIN;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSignMessage (PCRYPT_SIGN_MESSAGE_PARA pSignPara, WINBOOL fDetachedSignature, DWORD cToBeSigned, const BYTE *rgpbToBeSigned[], DWORD rgcbToBeSigned[], BYTE *pbSignedBlob, DWORD *pcbSignedBlob);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifyMessageSignature (PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara, DWORD dwSignerIndex, const BYTE *pbSignedBlob, DWORD cbSignedBlob, BYTE *pbDecoded, DWORD *pcbDecoded, PCCERT_CONTEXT *ppSignerCert);
__attribute__((dllimport)) LONG __attribute__((__stdcall__)) CryptGetMessageSignerCount (DWORD dwMsgEncodingType, const BYTE *pbSignedBlob, DWORD cbSignedBlob);
__attribute__((dllimport)) HCERTSTORE __attribute__((__stdcall__)) CryptGetMessageCertificates (DWORD dwMsgAndCertEncodingType, HCRYPTPROV_LEGACY hCryptProv, DWORD dwFlags, const BYTE *pbSignedBlob, DWORD cbSignedBlob);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifyDetachedMessageSignature (PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara, DWORD dwSignerIndex, const BYTE *pbDetachedSignBlob, DWORD cbDetachedSignBlob, DWORD cToBeSigned, const BYTE *rgpbToBeSigned[], DWORD rgcbToBeSigned[], PCCERT_CONTEXT *ppSignerCert);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEncryptMessage (PCRYPT_ENCRYPT_MESSAGE_PARA pEncryptPara, DWORD cRecipientCert, PCCERT_CONTEXT rgpRecipientCert[], const BYTE *pbToBeEncrypted, DWORD cbToBeEncrypted, BYTE *pbEncryptedBlob, DWORD *pcbEncryptedBlob);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDecryptMessage (PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara, const BYTE *pbEncryptedBlob, DWORD cbEncryptedBlob, BYTE *pbDecrypted, DWORD *pcbDecrypted, PCCERT_CONTEXT *ppXchgCert);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSignAndEncryptMessage (PCRYPT_SIGN_MESSAGE_PARA pSignPara, PCRYPT_ENCRYPT_MESSAGE_PARA pEncryptPara, DWORD cRecipientCert, PCCERT_CONTEXT rgpRecipientCert[], const BYTE *pbToBeSignedAndEncrypted, DWORD cbToBeSignedAndEncrypted, BYTE *pbSignedAndEncryptedBlob, DWORD *pcbSignedAndEncryptedBlob);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDecryptAndVerifyMessageSignature (PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara, PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara, DWORD dwSignerIndex, const BYTE *pbEncryptedBlob, DWORD cbEncryptedBlob, BYTE *pbDecrypted, DWORD *pcbDecrypted, PCCERT_CONTEXT *ppXchgCert, PCCERT_CONTEXT *ppSignerCert);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptDecodeMessage (DWORD dwMsgTypeFlags, PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara, PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara, DWORD dwSignerIndex, const BYTE *pbEncodedBlob, DWORD cbEncodedBlob, DWORD dwPrevInnerContentType, DWORD *pdwMsgType, DWORD *pdwInnerContentType, BYTE *pbDecoded, DWORD *pcbDecoded, PCCERT_CONTEXT *ppXchgCert, PCCERT_CONTEXT *ppSignerCert);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptHashMessage (PCRYPT_HASH_MESSAGE_PARA pHashPara, WINBOOL fDetachedHash, DWORD cToBeHashed, const BYTE *rgpbToBeHashed[], DWORD rgcbToBeHashed[], BYTE *pbHashedBlob, DWORD *pcbHashedBlob, BYTE *pbComputedHash, DWORD *pcbComputedHash);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifyMessageHash (PCRYPT_HASH_MESSAGE_PARA pHashPara, BYTE *pbHashedBlob, DWORD cbHashedBlob, BYTE *pbToBeHashed, DWORD *pcbToBeHashed, BYTE *pbComputedHash, DWORD *pcbComputedHash);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifyDetachedMessageHash (PCRYPT_HASH_MESSAGE_PARA pHashPara, BYTE *pbDetachedHashBlob, DWORD cbDetachedHashBlob, DWORD cToBeHashed, const BYTE *rgpbToBeHashed[], DWORD rgcbToBeHashed[], BYTE *pbComputedHash, DWORD *pcbComputedHash);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSignMessageWithKey (PCRYPT_KEY_SIGN_MESSAGE_PARA pSignPara, const BYTE *pbToBeSigned, DWORD cbToBeSigned, BYTE *pbSignedBlob, DWORD *pcbSignedBlob);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptVerifyMessageSignatureWithKey (PCRYPT_KEY_VERIFY_MESSAGE_PARA pVerifyPara, PCERT_PUBLIC_KEY_INFO pPublicKeyInfo, const BYTE *pbSignedBlob, DWORD cbSignedBlob, BYTE *pbDecoded, DWORD *pcbDecoded);
__attribute__((dllimport)) HCERTSTORE __attribute__((__stdcall__)) CertOpenSystemStoreA (HCRYPTPROV_LEGACY hProv, LPCSTR szSubsystemProtocol);
__attribute__((dllimport)) HCERTSTORE __attribute__((__stdcall__)) CertOpenSystemStoreW (HCRYPTPROV_LEGACY hProv, LPCWSTR szSubsystemProtocol);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddEncodedCertificateToSystemStoreA (LPCSTR szCertStoreName, const BYTE *pbCertEncoded, DWORD cbCertEncoded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertAddEncodedCertificateToSystemStoreW (LPCWSTR szCertStoreName, const BYTE *pbCertEncoded, DWORD cbCertEncoded);
HRESULT __attribute__((__stdcall__)) FindCertsByIssuer (PCERT_CHAIN pCertChains, DWORD *pcbCertChains, DWORD *pcCertChains, BYTE *pbEncodedIssuerName, DWORD cbEncodedIssuerName, LPCWSTR pwszPurpose, DWORD dwKeySpec);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptQueryObject (DWORD dwObjectType, const void *pvObject, DWORD dwExpectedContentTypeFlags, DWORD dwExpectedFormatTypeFlags, DWORD dwFlags, DWORD *pdwMsgAndCertEncodingType, DWORD *pdwContentType, DWORD *pdwFormatType, HCERTSTORE *phCertStore, HCRYPTMSG *phMsg, const void **ppvContext);
typedef HANDLE HCRYPTASYNC,*PHCRYPTASYNC;
typedef void (__attribute__((__stdcall__)) *PFN_CRYPT_ASYNC_PARAM_FREE_FUNC) (LPSTR pszParamOid, LPVOID pvParam);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) CryptMemAlloc (ULONG cbSize);
__attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) CryptMemRealloc (LPVOID pv, ULONG cbSize);
__attribute__((dllimport)) void __attribute__((__stdcall__)) CryptMemFree (LPVOID pv);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptCreateAsyncHandle (DWORD dwFlags, PHCRYPTASYNC phAsync);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetAsyncParam (HCRYPTASYNC hAsync, LPSTR pszParamOid, LPVOID pvParam, PFN_CRYPT_ASYNC_PARAM_FREE_FUNC pfnFree);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetAsyncParam (HCRYPTASYNC hAsync, LPSTR pszParamOid, LPVOID *ppvParam, PFN_CRYPT_ASYNC_PARAM_FREE_FUNC *ppfnFree);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptCloseAsyncHandle (HCRYPTASYNC hAsync);
typedef struct _CRYPT_BLOB_ARRAY {
DWORD cBlob;
PCRYPT_DATA_BLOB rgBlob;
} CRYPT_BLOB_ARRAY,*PCRYPT_BLOB_ARRAY;
typedef struct _CRYPT_CREDENTIALS {
DWORD cbSize;
LPCSTR pszCredentialsOid;
LPVOID pvCredentials;
} CRYPT_CREDENTIALS,*PCRYPT_CREDENTIALS;
typedef struct _CRYPT_PASSWORD_CREDENTIALSA {
DWORD cbSize;
LPSTR pszUsername;
LPSTR pszPassword;
} CRYPT_PASSWORD_CREDENTIALSA,*PCRYPT_PASSWORD_CREDENTIALSA;
typedef struct _CRYPT_PASSWORD_CREDENTIALSW {
DWORD cbSize;
LPWSTR pszUsername;
LPWSTR pszPassword;
} CRYPT_PASSWORD_CREDENTIALSW,*PCRYPT_PASSWORD_CREDENTIALSW;
typedef CRYPT_PASSWORD_CREDENTIALSA CRYPT_PASSWORD_CREDENTIALS;
typedef PCRYPT_PASSWORD_CREDENTIALSA PCRYPT_PASSWORD_CREDENTIALS;
typedef void (__attribute__((__stdcall__)) *PFN_FREE_ENCODED_OBJECT_FUNC) (LPCSTR pszObjectOid, PCRYPT_BLOB_ARRAY pObject, LPVOID pvFreeContext);
typedef struct _CRYPTNET_URL_CACHE_PRE_FETCH_INFO {
DWORD cbSize;
DWORD dwObjectType;
DWORD dwError;
DWORD dwReserved;
FILETIME ThisUpdateTime;
FILETIME NextUpdateTime;
FILETIME PublishTime;
} CRYPTNET_URL_CACHE_PRE_FETCH_INFO,*PCRYPTNET_URL_CACHE_PRE_FETCH_INFO;
typedef struct _CRYPTNET_URL_CACHE_FLUSH_INFO {
DWORD cbSize;
DWORD dwExemptSeconds;
FILETIME ExpireTime;
} CRYPTNET_URL_CACHE_FLUSH_INFO,*PCRYPTNET_URL_CACHE_FLUSH_INFO;
typedef struct _CRYPTNET_URL_CACHE_RESPONSE_INFO {
DWORD cbSize;
WORD wResponseType;
WORD wResponseFlags;
FILETIME LastModifiedTime;
DWORD dwMaxAge;
LPCWSTR pwszETag;
DWORD dwProxyId;
} CRYPTNET_URL_CACHE_RESPONSE_INFO,*PCRYPTNET_URL_CACHE_RESPONSE_INFO;
typedef struct _CRYPT_RETRIEVE_AUX_INFO {
DWORD cbSize;
FILETIME *pLastSyncTime;
DWORD dwMaxUrlRetrievalByteCount;
PCRYPTNET_URL_CACHE_PRE_FETCH_INFO pPreFetchInfo;
PCRYPTNET_URL_CACHE_FLUSH_INFO pFlushInfo;
PCRYPTNET_URL_CACHE_RESPONSE_INFO *ppResponseInfo;
LPWSTR pwszCacheFileNamePrefix;
LPFILETIME pftCacheResync;
WINBOOL fProxyCacheRetrieval;
DWORD dwHttpStatusCode;
} CRYPT_RETRIEVE_AUX_INFO,*PCRYPT_RETRIEVE_AUX_INFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptRetrieveObjectByUrlA (LPCSTR pszUrl, LPCSTR pszObjectOid, DWORD dwRetrievalFlags, DWORD dwTimeout, LPVOID *ppvObject, HCRYPTASYNC hAsyncRetrieve, PCRYPT_CREDENTIALS pCredentials, LPVOID pvVerify, PCRYPT_RETRIEVE_AUX_INFO pAuxInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptRetrieveObjectByUrlW (LPCWSTR pszUrl, LPCSTR pszObjectOid, DWORD dwRetrievalFlags, DWORD dwTimeout, LPVOID *ppvObject, HCRYPTASYNC hAsyncRetrieve, PCRYPT_CREDENTIALS pCredentials, LPVOID pvVerify, PCRYPT_RETRIEVE_AUX_INFO pAuxInfo);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CRYPT_CANCEL_RETRIEVAL) (DWORD dwFlags, void *pvArg);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptInstallCancelRetrieval (PFN_CRYPT_CANCEL_RETRIEVAL pfnCancel, const void *pvArg, DWORD dwFlags, void *pvReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptUninstallCancelRetrieval (DWORD dwFlags, void *pvReserved);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptCancelAsyncRetrieval (HCRYPTASYNC hAsyncRetrieval);
typedef void (__attribute__((__stdcall__)) *PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC) (LPVOID pvCompletion, DWORD dwCompletionCode, LPCSTR pszUrl, LPSTR pszObjectOid, LPVOID pvObject);
typedef struct _CRYPT_ASYNC_RETRIEVAL_COMPLETION {
PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC pfnCompletion;
LPVOID pvCompletion;
} CRYPT_ASYNC_RETRIEVAL_COMPLETION,*PCRYPT_ASYNC_RETRIEVAL_COMPLETION;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CANCEL_ASYNC_RETRIEVAL_FUNC) (HCRYPTASYNC hAsyncRetrieve);
typedef struct _CRYPT_URL_ARRAY {
DWORD cUrl;
LPWSTR *rgwszUrl;
} CRYPT_URL_ARRAY,*PCRYPT_URL_ARRAY;
typedef struct _CRYPT_URL_INFO {
DWORD cbSize;
DWORD dwSyncDeltaTime;
DWORD cGroup;
DWORD *rgcGroupEntry;
} CRYPT_URL_INFO,*PCRYPT_URL_INFO;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetObjectUrl (LPCSTR pszUrlOid, LPVOID pvPara, DWORD dwFlags, PCRYPT_URL_ARRAY pUrlArray, DWORD *pcbUrlArray, PCRYPT_URL_INFO pUrlInfo, DWORD *pcbUrlInfo, LPVOID pvReserved);
typedef struct _CERT_CRL_CONTEXT_PAIR {
PCCERT_CONTEXT pCertContext;
PCCRL_CONTEXT pCrlContext;
} CERT_CRL_CONTEXT_PAIR,*PCERT_CRL_CONTEXT_PAIR;
typedef const CERT_CRL_CONTEXT_PAIR *PCCERT_CRL_CONTEXT_PAIR;
typedef struct _CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO {
DWORD cbSize;
int iDeltaCrlIndicator;
LPFILETIME pftCacheResync;
LPFILETIME pLastSyncTime;
LPFILETIME pMaxAgeTime;
PCERT_REVOCATION_CHAIN_PARA pChainPara;
PCRYPT_INTEGER_BLOB pDeltaCrlIndicator;
} CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO, *PCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO;
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CRYPT_ENUM_KEYID_PROP) (const CRYPT_HASH_BLOB *pKeyIdentifier, DWORD dwFlags, void *pvReserved, void *pvArg, DWORD cProp, DWORD *rgdwPropId, void **rgpvData, DWORD *rgcbData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetTimeValidObject (LPCSTR pszTimeValidOid, LPVOID pvPara, PCCERT_CONTEXT pIssuer, LPFILETIME pftValidFor, DWORD dwFlags, DWORD dwTimeout, LPVOID *ppvObject, PCRYPT_CREDENTIALS pCredentials, PCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO pExtraInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptFlushTimeValidObject (LPCSTR pszFlushTimeValidOid, LPVOID pvPara, PCCERT_CONTEXT pIssuer, DWORD dwFlags, LPVOID pvReserved);
__attribute__((dllimport)) PCCERT_CONTEXT __attribute__((__stdcall__)) CertCreateSelfSignCertificate (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, PCERT_NAME_BLOB pSubjectIssuerBlob, DWORD dwFlags, PCRYPT_KEY_PROV_INFO pKeyProvInfo, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, PSYSTEMTIME pStartTime, PSYSTEMTIME pEndTime, PCERT_EXTENSIONS pExtensions);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptGetKeyIdentifierProperty (const CRYPT_HASH_BLOB *pKeyIdentifier, DWORD dwPropId, DWORD dwFlags, LPCWSTR pwszComputerName, void *pvReserved, void *pvData, DWORD *pcbData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptSetKeyIdentifierProperty (const CRYPT_HASH_BLOB *pKeyIdentifier, DWORD dwPropId, DWORD dwFlags, LPCWSTR pwszComputerName, void *pvReserved, const void *pvData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptEnumKeyIdentifierProperties (const CRYPT_HASH_BLOB *pKeyIdentifier, DWORD dwPropId, DWORD dwFlags, LPCWSTR pwszComputerName, void *pvReserved, void *pvArg, PFN_CRYPT_ENUM_KEYID_PROP pfnEnum);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptCreateKeyIdentifierFromCSP (DWORD dwCertEncodingType, LPCSTR pszPubKeyOID, const PUBLICKEYSTRUC *pPubKeyStruc, DWORD cbPubKeyStruc, DWORD dwFlags, void *pvReserved, BYTE *pbHash, DWORD *pcbHash);
typedef HANDLE HCERTCHAINENGINE;
typedef struct _CERT_CHAIN_ENGINE_CONFIG {
DWORD cbSize;
HCERTSTORE hRestrictedRoot;
HCERTSTORE hRestrictedTrust;
HCERTSTORE hRestrictedOther;
DWORD cAdditionalStore;
HCERTSTORE *rghAdditionalStore;
DWORD dwFlags;
DWORD dwUrlRetrievalTimeout;
DWORD MaximumCachedCertificates;
DWORD CycleDetectionModulus;
} CERT_CHAIN_ENGINE_CONFIG,*PCERT_CHAIN_ENGINE_CONFIG;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertCreateCertificateChainEngine (PCERT_CHAIN_ENGINE_CONFIG pConfig, HCERTCHAINENGINE *phChainEngine);
__attribute__((dllimport)) void __attribute__((__stdcall__)) CertFreeCertificateChainEngine (HCERTCHAINENGINE hChainEngine);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertResyncCertificateChainEngine (HCERTCHAINENGINE hChainEngine);
typedef struct _CERT_TRUST_STATUS {
DWORD dwErrorStatus;
DWORD dwInfoStatus;
} CERT_TRUST_STATUS,*PCERT_TRUST_STATUS;
typedef struct _CERT_REVOCATION_INFO {
DWORD cbSize;
DWORD dwRevocationResult;
LPCSTR pszRevocationOid;
LPVOID pvOidSpecificInfo;
WINBOOL fHasFreshnessTime;
DWORD dwFreshnessTime;
PCERT_REVOCATION_CRL_INFO pCrlInfo;
} CERT_REVOCATION_INFO,*PCERT_REVOCATION_INFO;
typedef struct _CERT_TRUST_LIST_INFO {
DWORD cbSize;
PCTL_ENTRY pCtlEntry;
PCCTL_CONTEXT pCtlContext;
} CERT_TRUST_LIST_INFO,*PCERT_TRUST_LIST_INFO;
typedef struct _CERT_CHAIN_ELEMENT {
DWORD cbSize;
PCCERT_CONTEXT pCertContext;
CERT_TRUST_STATUS TrustStatus;
PCERT_REVOCATION_INFO pRevocationInfo;
PCERT_ENHKEY_USAGE pIssuanceUsage;
PCERT_ENHKEY_USAGE pApplicationUsage;
LPCWSTR pwszExtendedErrorInfo;
} CERT_CHAIN_ELEMENT,*PCERT_CHAIN_ELEMENT;
typedef const CERT_CHAIN_ELEMENT *PCCERT_CHAIN_ELEMENT;
typedef struct _CERT_SIMPLE_CHAIN {
DWORD cbSize;
CERT_TRUST_STATUS TrustStatus;
DWORD cElement;
PCERT_CHAIN_ELEMENT *rgpElement;
PCERT_TRUST_LIST_INFO pTrustListInfo;
WINBOOL fHasRevocationFreshnessTime;
DWORD dwRevocationFreshnessTime;
} CERT_SIMPLE_CHAIN,*PCERT_SIMPLE_CHAIN;
typedef const CERT_SIMPLE_CHAIN *PCCERT_SIMPLE_CHAIN;
typedef struct _CERT_CHAIN_CONTEXT CERT_CHAIN_CONTEXT,*PCERT_CHAIN_CONTEXT;
typedef const CERT_CHAIN_CONTEXT *PCCERT_CHAIN_CONTEXT;
struct _CERT_CHAIN_CONTEXT {
DWORD cbSize;
CERT_TRUST_STATUS TrustStatus;
DWORD cChain;
PCERT_SIMPLE_CHAIN *rgpChain;
DWORD cLowerQualityChainContext;
PCCERT_CHAIN_CONTEXT *rgpLowerQualityChainContext;
WINBOOL fHasRevocationFreshnessTime;
DWORD dwRevocationFreshnessTime;
DWORD dwCreateFlags;
GUID ChainId;
};
typedef struct _CERT_USAGE_MATCH {
DWORD dwType;
CERT_ENHKEY_USAGE Usage;
} CERT_USAGE_MATCH,*PCERT_USAGE_MATCH;
typedef struct _CTL_USAGE_MATCH {
DWORD dwType;
CTL_USAGE Usage;
} CTL_USAGE_MATCH,*PCTL_USAGE_MATCH;
typedef struct _CERT_CHAIN_PARA {
DWORD cbSize;
CERT_USAGE_MATCH RequestedUsage;
} CERT_CHAIN_PARA,*PCERT_CHAIN_PARA;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertGetCertificateChain (HCERTCHAINENGINE hChainEngine, PCCERT_CONTEXT pCertContext, LPFILETIME pTime, HCERTSTORE hAdditionalStore, PCERT_CHAIN_PARA pChainPara, DWORD dwFlags, LPVOID pvReserved, PCCERT_CHAIN_CONTEXT *ppChainContext);
__attribute__((dllimport)) void __attribute__((__stdcall__)) CertFreeCertificateChain (PCCERT_CHAIN_CONTEXT pChainContext);
__attribute__((dllimport)) PCCERT_CHAIN_CONTEXT __attribute__((__stdcall__)) CertDuplicateCertificateChain (PCCERT_CHAIN_CONTEXT pChainContext);
struct _CERT_REVOCATION_CHAIN_PARA {
DWORD cbSize;
HCERTCHAINENGINE hChainEngine;
HCERTSTORE hAdditionalStore;
DWORD dwChainFlags;
DWORD dwUrlRetrievalTimeout;
LPFILETIME pftCurrentTime;
LPFILETIME pftCacheResync;
DWORD cbMaxUrlRetrievalByteCount;
};
typedef struct _CRL_REVOCATION_INFO {
PCRL_ENTRY pCrlEntry;
PCCRL_CONTEXT pCrlContext;
PCCERT_CHAIN_CONTEXT pCrlIssuerChain;
} CRL_REVOCATION_INFO,*PCRL_REVOCATION_INFO;
__attribute__((dllimport)) PCCERT_CHAIN_CONTEXT __attribute__((__stdcall__)) CertFindChainInStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCERT_CHAIN_CONTEXT pPrevChainContext);
typedef WINBOOL (__attribute__((__stdcall__)) *PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK) (PCCERT_CONTEXT pCert, void *pvFindArg);
typedef struct _CERT_CHAIN_FIND_BY_ISSUER_PARA {
DWORD cbSize;
LPCSTR pszUsageIdentifier;
DWORD dwKeySpec;
DWORD dwAcquirePrivateKeyFlags;
DWORD cIssuer;
CERT_NAME_BLOB *rgIssuer;
PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK pfnFindCallback;
void *pvFindArg;
} CERT_CHAIN_FIND_ISSUER_PARA,*PCERT_CHAIN_FIND_ISSUER_PARA,CERT_CHAIN_FIND_BY_ISSUER_PARA,*PCERT_CHAIN_FIND_BY_ISSUER_PARA;
typedef struct _CERT_CHAIN_POLICY_PARA {
DWORD cbSize;
DWORD dwFlags;
void *pvExtraPolicyPara;
} CERT_CHAIN_POLICY_PARA,*PCERT_CHAIN_POLICY_PARA;
typedef struct _CERT_CHAIN_POLICY_STATUS {
DWORD cbSize;
DWORD dwError;
LONG lChainIndex;
LONG lElementIndex;
void *pvExtraPolicyStatus;
} CERT_CHAIN_POLICY_STATUS,*PCERT_CHAIN_POLICY_STATUS;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertVerifyCertificateChainPolicy (LPCSTR pszPolicyOID, PCCERT_CHAIN_CONTEXT pChainContext, PCERT_CHAIN_POLICY_PARA pPolicyPara, PCERT_CHAIN_POLICY_STATUS pPolicyStatus);
typedef struct _AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA {
DWORD cbSize;
DWORD dwRegPolicySettings;
PCMSG_SIGNER_INFO pSignerInfo;
} AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA, *PAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA;
typedef struct _AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS {
DWORD cbSize;
WINBOOL fCommercial;
} AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS, *PAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS;
typedef struct _AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA {
DWORD cbSize;
DWORD dwRegPolicySettings;
WINBOOL fCommercial;
} AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA,*PAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA;
typedef struct _HTTPSPolicyCallbackData {
__extension__ union {
DWORD cbStruct;
DWORD cbSize;
};
DWORD dwAuthType;
DWORD fdwChecks;
WCHAR *pwszServerName;
} HTTPSPolicyCallbackData,*PHTTPSPolicyCallbackData,SSL_EXTRA_CERT_CHAIN_POLICY_PARA,*PSSL_EXTRA_CERT_CHAIN_POLICY_PARA;
typedef struct _EV_EXTRA_CERT_CHAIN_POLICY_PARA {
DWORD cbSize;
DWORD dwRootProgramQualifierFlags;
} EV_EXTRA_CERT_CHAIN_POLICY_PARA,*PEV_EXTRA_CERT_CHAIN_POLICY_PARA;
typedef struct _EV_EXTRA_CERT_CHAIN_POLICY_STATUS {
DWORD cbSize;
DWORD dwQualifiers;
DWORD dwIssuanceUsageIndex;
} EV_EXTRA_CERT_CHAIN_POLICY_STATUS,*PEV_EXTRA_CERT_CHAIN_POLICY_STATUS;
typedef struct _SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS {
DWORD cbSize;
DWORD dwErrorLevel;
DWORD dwErrorCategory;
DWORD dwReserved;
WCHAR wszErrorText[256];
} SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS, *PSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS;
typedef struct _SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA {
DWORD cbSize;
DWORD dwReserved;
LPWSTR pwszServerName;
LPSTR rgpszHpkpValue[2];
} SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA, *PSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA;
typedef struct _SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA {
DWORD cbSize;
DWORD dwReserved;
PCWSTR pwszServerName;
} SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA, *PSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA;
typedef struct _SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS {
DWORD cbSize;
LONG lError;
WCHAR wszErrorText[512];
} SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS, *PSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptStringToBinaryA (LPCSTR pszString, DWORD cchString, DWORD dwFlags, BYTE *pbBinary, DWORD *pcbBinary, DWORD *pdwSkip, DWORD *pdwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptStringToBinaryW (LPCWSTR pszString, DWORD cchString, DWORD dwFlags, BYTE *pbBinary, DWORD *pcbBinary, DWORD *pdwSkip, DWORD *pdwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptBinaryToStringA (const BYTE *pbBinary, DWORD cbBinary, DWORD dwFlags, LPSTR pszString, DWORD *pcchString);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptBinaryToStringW (const BYTE *pbBinary, DWORD cbBinary, DWORD dwFlags, LPWSTR pszString, DWORD *pcchString);
typedef struct _CRYPT_PKCS12_PBE_PARAMS {
int iIterations;
ULONG cbSalt;
} CRYPT_PKCS12_PBE_PARAMS;
__attribute__((dllimport)) HCERTSTORE __attribute__((__stdcall__)) PFXImportCertStore (CRYPT_DATA_BLOB *pPFX, LPCWSTR szPassword, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PFXIsPFXBlob (CRYPT_DATA_BLOB *pPFX);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PFXVerifyPassword (CRYPT_DATA_BLOB *pPFX, LPCWSTR szPassword, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PFXExportCertStoreEx (HCERTSTORE hStore, CRYPT_DATA_BLOB *pPFX, LPCWSTR szPassword, void *pvPara, DWORD dwFlags);
typedef struct _PKCS12_PBES2_EXPORT_PARAMS {
DWORD dwSize;
PVOID hNcryptDescriptor;
LPWSTR pwszPbes2Alg;
} PKCS12_PBES2_EXPORT_PARAMS, *PPKCS12_PBES2_EXPORT_PARAMS;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PFXExportCertStore (HCERTSTORE hStore, CRYPT_DATA_BLOB *pPFX, LPCWSTR szPassword, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CertRetrieveLogoOrBiometricInfo (PCCERT_CONTEXT pCertContext, LPCSTR lpszLogoOrBiometricType, DWORD dwRetrievalFlags, DWORD dwTimeout, DWORD dwFlags, void *pvReserved, BYTE **ppbData, DWORD *pcbData, LPWSTR *ppwszMimeType);
typedef struct _CRYPTPROTECT_PROMPTSTRUCT {
DWORD cbSize;
DWORD dwPromptFlags;
HWND hwndApp;
LPCWSTR szPrompt;
} CRYPTPROTECT_PROMPTSTRUCT,*PCRYPTPROTECT_PROMPTSTRUCT;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptProtectData (DATA_BLOB *pDataIn, LPCWSTR szDataDescr, DATA_BLOB *pOptionalEntropy, PVOID pvReserved, CRYPTPROTECT_PROMPTSTRUCT *pPromptStruct, DWORD dwFlags, DATA_BLOB *pDataOut);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptUnprotectData (DATA_BLOB *pDataIn, LPWSTR *ppszDataDescr, DATA_BLOB *pOptionalEntropy, PVOID pvReserved, CRYPTPROTECT_PROMPTSTRUCT *pPromptStruct, DWORD dwFlags, DATA_BLOB *pDataOut);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptProtectMemory (LPVOID pDataIn, DWORD cbDataIn, DWORD dwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CryptUnprotectMemory (LPVOID pDataIn, DWORD cbDataIn, DWORD dwFlags);
typedef struct _CERTIFICATE_BLOB {
DWORD dwCertEncodingType;
DWORD cbData;
PBYTE pbData;
} EFS_CERTIFICATE_BLOB,*PEFS_CERTIFICATE_BLOB;
typedef struct _EFS_HASH_BLOB {
DWORD cbData;
PBYTE pbData;
} EFS_HASH_BLOB,*PEFS_HASH_BLOB;
typedef struct _EFS_RPC_BLOB {
DWORD cbData;
PBYTE pbData;
} EFS_RPC_BLOB,*PEFS_RPC_BLOB;
typedef struct _EFS_KEY_INFO {
DWORD dwVersion;
ULONG Entropy;
ALG_ID Algorithm;
ULONG KeyLength;
} EFS_KEY_INFO,*PEFS_KEY_INFO;
typedef struct _ENCRYPTION_CERTIFICATE {
DWORD cbTotalLength;
SID *pUserSid;
PEFS_CERTIFICATE_BLOB pCertBlob;
} ENCRYPTION_CERTIFICATE,*PENCRYPTION_CERTIFICATE;
typedef struct _ENCRYPTION_CERTIFICATE_HASH {
DWORD cbTotalLength;
SID *pUserSid;
PEFS_HASH_BLOB pHash;
LPWSTR lpDisplayInformation;
} ENCRYPTION_CERTIFICATE_HASH,*PENCRYPTION_CERTIFICATE_HASH;
typedef struct _ENCRYPTION_CERTIFICATE_HASH_LIST {
DWORD nCert_Hash;
PENCRYPTION_CERTIFICATE_HASH *pUsers;
} ENCRYPTION_CERTIFICATE_HASH_LIST,*PENCRYPTION_CERTIFICATE_HASH_LIST;
typedef struct _ENCRYPTION_CERTIFICATE_LIST {
DWORD nUsers;
PENCRYPTION_CERTIFICATE *pUsers;
} ENCRYPTION_CERTIFICATE_LIST,*PENCRYPTION_CERTIFICATE_LIST;
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) QueryUsersOnEncryptedFile(LPCWSTR lpFileName,PENCRYPTION_CERTIFICATE_HASH_LIST *pUsers);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) QueryRecoveryAgentsOnEncryptedFile(LPCWSTR lpFileName,PENCRYPTION_CERTIFICATE_HASH_LIST *pRecoveryAgents);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) RemoveUsersFromEncryptedFile(LPCWSTR lpFileName,PENCRYPTION_CERTIFICATE_HASH_LIST pHashes);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) AddUsersToEncryptedFile(LPCWSTR lpFileName,PENCRYPTION_CERTIFICATE_LIST pUsers);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) SetUserFileEncryptionKey(PENCRYPTION_CERTIFICATE pEncryptionCertificate);
__attribute__((dllimport)) void __attribute__((__stdcall__)) FreeEncryptionCertificateHashList(PENCRYPTION_CERTIFICATE_HASH_LIST pHashes);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EncryptionDisable(LPCWSTR DirPath,WINBOOL Disable);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) DuplicateEncryptionInfoFile(LPCWSTR SrcFileName,LPCWSTR DstFileName,DWORD dwCreationDistribution,DWORD dwAttributes,const LPSECURITY_ATTRIBUTES lpSecurityAttributes);
#pragma pack(push,8)
typedef struct {
RPC_NS_HANDLE LookupContext;
RPC_BINDING_HANDLE ProposedHandle;
RPC_BINDING_VECTOR *Bindings;
} RPC_IMPORT_CONTEXT_P,*PRPC_IMPORT_CONTEXT_P;
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcNsGetBuffer(PRPC_MESSAGE Message);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcNsSendReceive(PRPC_MESSAGE Message,RPC_BINDING_HANDLE *Handle);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_RpcNsRaiseException(PRPC_MESSAGE Message,RPC_STATUS Status);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_RpcReBindBuffer(PRPC_MESSAGE Message);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_NsServerBindSearch(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) I_NsClientBindSearch(void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) I_NsClientBindDone(void);
typedef unsigned char byte;
typedef byte cs_byte;
typedef unsigned char boolean;
void *__attribute__((__stdcall__)) MIDL_user_allocate(size_t);
void __attribute__((__stdcall__)) MIDL_user_free(void *);
typedef void *NDR_CCONTEXT;
typedef struct _NDR_SCONTEXT {
void *pad[2];
void *userContext;
} *NDR_SCONTEXT;
typedef void (__attribute__((__stdcall__)) *NDR_RUNDOWN)(void *context);
typedef void (__attribute__((__stdcall__)) *NDR_NOTIFY_ROUTINE)(void);
typedef void (__attribute__((__stdcall__)) *NDR_NOTIFY2_ROUTINE)(boolean flag);
typedef struct _SCONTEXT_QUEUE {
unsigned long NumberOfObjects;
NDR_SCONTEXT *ArrayOfObjects;
} SCONTEXT_QUEUE,*PSCONTEXT_QUEUE;
__attribute__((dllimport)) RPC_BINDING_HANDLE __attribute__((__stdcall__)) NDRCContextBinding(NDR_CCONTEXT CContext);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NDRCContextMarshall(NDR_CCONTEXT CContext,void *pBuff);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NDRCContextUnmarshall(NDR_CCONTEXT *pCContext,RPC_BINDING_HANDLE hBinding,void *pBuff,unsigned long DataRepresentation);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NDRSContextMarshall(NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn);
__attribute__((dllimport)) NDR_SCONTEXT __attribute__((__stdcall__)) NDRSContextUnmarshall(void *pBuff,unsigned long DataRepresentation);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NDRSContextMarshallEx(RPC_BINDING_HANDLE BindingHandle,NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NDRSContextMarshall2(RPC_BINDING_HANDLE BindingHandle,NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn,void *CtxGuard,unsigned long Flags);
__attribute__((dllimport)) NDR_SCONTEXT __attribute__((__stdcall__)) NDRSContextUnmarshallEx(RPC_BINDING_HANDLE BindingHandle,void *pBuff,unsigned long DataRepresentation);
__attribute__((dllimport)) NDR_SCONTEXT __attribute__((__stdcall__)) NDRSContextUnmarshall2(RPC_BINDING_HANDLE BindingHandle,void *pBuff,unsigned long DataRepresentation,void *CtxGuard,unsigned long Flags);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcSsDestroyClientContext(void **ContextHandle);
typedef unsigned long error_status_t;
struct _MIDL_STUB_MESSAGE;
struct _MIDL_STUB_DESC;
struct _FULL_PTR_XLAT_TABLES;
typedef unsigned char *RPC_BUFPTR;
typedef unsigned long RPC_LENGTH;
typedef void (__attribute__((__stdcall__)) *EXPR_EVAL)(struct _MIDL_STUB_MESSAGE *);
typedef const unsigned char *PFORMAT_STRING;
typedef struct {
long Dimension;
unsigned long *BufferConformanceMark;
unsigned long *BufferVarianceMark;
unsigned long *MaxCountArray;
unsigned long *OffsetArray;
unsigned long *ActualCountArray;
} ARRAY_INFO,*PARRAY_INFO;
typedef struct _NDR_ASYNC_MESSAGE *PNDR_ASYNC_MESSAGE;
typedef struct _NDR_CORRELATION_INFO *PNDR_CORRELATION_INFO;
typedef struct {
unsigned long WireCodeset;
unsigned long DesiredReceivingCodeset;
void *CSArrayInfo;
} CS_STUB_INFO;
struct _MIDL_SYNTAX_INFO;
typedef struct _MIDL_SYNTAX_INFO MIDL_SYNTAX_INFO,*PMIDL_SYNTAX_INFO;
struct NDR_ALLOC_ALL_NODES_CONTEXT;
struct NDR_POINTER_QUEUE_STATE;
struct _NDR_PROC_CONTEXT;
typedef struct _MIDL_STUB_MESSAGE {
PRPC_MESSAGE RpcMsg;
unsigned char *Buffer;
unsigned char *BufferStart;
unsigned char *BufferEnd;
unsigned char *BufferMark;
unsigned long BufferLength;
unsigned long MemorySize;
unsigned char *Memory;
unsigned char IsClient;
unsigned char Pad;
unsigned short uFlags2;
int ReuseBuffer;
struct NDR_ALLOC_ALL_NODES_CONTEXT *pAllocAllNodesContext;
struct NDR_POINTER_QUEUE_STATE *pPointerQueueState;
int IgnoreEmbeddedPointers;
unsigned char *PointerBufferMark;
unsigned char fBufferValid;
unsigned char uFlags;
unsigned short UniquePtrCount;
ULONG_PTR MaxCount;
unsigned long Offset;
unsigned long ActualCount;
void *(__attribute__((__stdcall__)) *pfnAllocate)(size_t);
void (__attribute__((__stdcall__)) *pfnFree)(void *);
unsigned char *StackTop;
unsigned char *pPresentedType;
unsigned char *pTransmitType;
handle_t SavedHandle;
const struct _MIDL_STUB_DESC *StubDesc;
struct _FULL_PTR_XLAT_TABLES *FullPtrXlatTables;
unsigned long FullPtrRefId;
unsigned long PointerLength;
int fInDontFree : 1;
int fDontCallFreeInst : 1;
int fInOnlyParam : 1;
int fHasReturn : 1;
int fHasExtensions : 1;
int fHasNewCorrDesc : 1;
int fIsOicfServer : 1;
int fHasMemoryValidateCallback : 1;
int fUnused : 8;
int fUnused2 : 16;
unsigned long dwDestContext;
void *pvDestContext;
NDR_SCONTEXT *SavedContextHandles;
long ParamNumber;
struct IRpcChannelBuffer *pRpcChannelBuffer;
PARRAY_INFO pArrayInfo;
unsigned long *SizePtrCountArray;
unsigned long *SizePtrOffsetArray;
unsigned long *SizePtrLengthArray;
void *pArgQueue;
unsigned long dwStubPhase;
void *LowStackMark;
PNDR_ASYNC_MESSAGE pAsyncMsg;
PNDR_CORRELATION_INFO pCorrInfo;
unsigned char *pCorrMemory;
void *pMemoryList;
CS_STUB_INFO *pCSInfo;
unsigned char *ConformanceMark;
unsigned char *VarianceMark;
INT_PTR Unused;
struct _NDR_PROC_CONTEXT *pContext;
void *pUserMarshalList;
INT_PTR Reserved51_2;
INT_PTR Reserved51_3;
INT_PTR Reserved51_4;
INT_PTR Reserved51_5;
} MIDL_STUB_MESSAGE,*PMIDL_STUB_MESSAGE;
typedef void *(__attribute__((__stdcall__)) *GENERIC_BINDING_ROUTINE)(void *);
typedef void (__attribute__((__stdcall__)) *GENERIC_UNBIND_ROUTINE)(void *,unsigned char *);
typedef struct _GENERIC_BINDING_ROUTINE_PAIR {
GENERIC_BINDING_ROUTINE pfnBind;
GENERIC_UNBIND_ROUTINE pfnUnbind;
} GENERIC_BINDING_ROUTINE_PAIR,*PGENERIC_BINDING_ROUTINE_PAIR;
typedef struct __GENERIC_BINDING_INFO {
void *pObj;
unsigned int Size;
GENERIC_BINDING_ROUTINE pfnBind;
GENERIC_UNBIND_ROUTINE pfnUnbind;
} GENERIC_BINDING_INFO,*PGENERIC_BINDING_INFO;
typedef void (__attribute__((__stdcall__)) *XMIT_HELPER_ROUTINE)(PMIDL_STUB_MESSAGE);
typedef struct _XMIT_ROUTINE_QUINTUPLE {
XMIT_HELPER_ROUTINE pfnTranslateToXmit;
XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
XMIT_HELPER_ROUTINE pfnFreeXmit;
XMIT_HELPER_ROUTINE pfnFreeInst;
} XMIT_ROUTINE_QUINTUPLE,*PXMIT_ROUTINE_QUINTUPLE;
typedef ULONG (__attribute__((__stdcall__)) *USER_MARSHAL_SIZING_ROUTINE)(ULONG *,ULONG,void *);
typedef unsigned char *(__attribute__((__stdcall__)) *USER_MARSHAL_MARSHALLING_ROUTINE)(ULONG *,unsigned char *,void *);
typedef unsigned char *(__attribute__((__stdcall__)) *USER_MARSHAL_UNMARSHALLING_ROUTINE)(ULONG *,unsigned char *,void *);
typedef void (__attribute__((__stdcall__)) *USER_MARSHAL_FREEING_ROUTINE)(ULONG *,void *);
typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE {
USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshall;
USER_MARSHAL_FREEING_ROUTINE pfnFree;
} USER_MARSHAL_ROUTINE_QUADRUPLE;
typedef enum _USER_MARSHAL_CB_TYPE {
USER_MARSHAL_CB_BUFFER_SIZE,USER_MARSHAL_CB_MARSHALL,USER_MARSHAL_CB_UNMARSHALL,USER_MARSHAL_CB_FREE
} USER_MARSHAL_CB_TYPE;
typedef struct _USER_MARSHAL_CB {
unsigned long Flags;
PMIDL_STUB_MESSAGE pStubMsg;
PFORMAT_STRING pReserve;
unsigned long Signature;
USER_MARSHAL_CB_TYPE CBType;
PFORMAT_STRING pFormat;
PFORMAT_STRING pTypeFormat;
} USER_MARSHAL_CB;
typedef struct _MALLOC_FREE_STRUCT {
void *(__attribute__((__stdcall__)) *pfnAllocate)(size_t);
void (__attribute__((__stdcall__)) *pfnFree)(void *);
} MALLOC_FREE_STRUCT;
typedef struct _COMM_FAULT_OFFSETS {
short CommOffset;
short FaultOffset;
} COMM_FAULT_OFFSETS;
typedef enum _IDL_CS_CONVERT {
IDL_CS_NO_CONVERT,IDL_CS_IN_PLACE_CONVERT,IDL_CS_NEW_BUFFER_CONVERT
} IDL_CS_CONVERT;
typedef void (__attribute__((__stdcall__)) *CS_TYPE_NET_SIZE_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,unsigned long ulLocalBufferSize,IDL_CS_CONVERT *conversionType,unsigned long *pulNetworkBufferSize,error_status_t *pStatus);
typedef void (__attribute__((__stdcall__)) *CS_TYPE_LOCAL_SIZE_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,unsigned long ulNetworkBufferSize,IDL_CS_CONVERT *conversionType,unsigned long *pulLocalBufferSize,error_status_t *pStatus);
typedef void (__attribute__((__stdcall__)) *CS_TYPE_TO_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,void *pLocalData,unsigned long ulLocalDataLength,byte *pNetworkData,unsigned long *pulNetworkDataLength,error_status_t *pStatus);
typedef void (__attribute__((__stdcall__)) *CS_TYPE_FROM_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,byte *pNetworkData,unsigned long ulNetworkDataLength,unsigned long ulLocalBufferSize,void *pLocalData,unsigned long *pulLocalDataLength,error_status_t *pStatus);
typedef void (__attribute__((__stdcall__)) *CS_TAG_GETTING_ROUTINE)(RPC_BINDING_HANDLE hBinding,int fServerSide,unsigned long *pulSendingTag,unsigned long *pulDesiredReceivingTag,unsigned long *pulReceivingTag,error_status_t *pStatus);
void __attribute__((__stdcall__)) RpcCsGetTags(RPC_BINDING_HANDLE hBinding,int fServerSide,unsigned long *pulSendingTag,unsigned long *pulDesiredReceivingTag,unsigned long *pulReceivingTag,error_status_t *pStatus);
typedef struct _NDR_CS_SIZE_CONVERT_ROUTINES {
CS_TYPE_NET_SIZE_ROUTINE pfnNetSize;
CS_TYPE_TO_NETCS_ROUTINE pfnToNetCs;
CS_TYPE_LOCAL_SIZE_ROUTINE pfnLocalSize;
CS_TYPE_FROM_NETCS_ROUTINE pfnFromNetCs;
} NDR_CS_SIZE_CONVERT_ROUTINES;
typedef struct _NDR_CS_ROUTINES {
NDR_CS_SIZE_CONVERT_ROUTINES *pSizeConvertRoutines;
CS_TAG_GETTING_ROUTINE *pTagGettingRoutines;
} NDR_CS_ROUTINES;
typedef struct _MIDL_STUB_DESC {
void *RpcInterfaceInformation;
void *(__attribute__((__stdcall__)) *pfnAllocate)(size_t);
void (__attribute__((__stdcall__)) *pfnFree)(void *);
union {
handle_t *pAutoHandle;
handle_t *pPrimitiveHandle;
PGENERIC_BINDING_INFO pGenericBindingInfo;
} IMPLICIT_HANDLE_INFO;
const NDR_RUNDOWN *apfnNdrRundownRoutines;
const GENERIC_BINDING_ROUTINE_PAIR *aGenericBindingRoutinePairs;
const EXPR_EVAL *apfnExprEval;
const XMIT_ROUTINE_QUINTUPLE *aXmitQuintuple;
const unsigned char *pFormatTypes;
int fCheckBounds;
unsigned long Version;
MALLOC_FREE_STRUCT *pMallocFreeStruct;
long MIDLVersion;
const COMM_FAULT_OFFSETS *CommFaultOffsets;
const USER_MARSHAL_ROUTINE_QUADRUPLE *aUserMarshalQuadruple;
const NDR_NOTIFY_ROUTINE *NotifyRoutineTable;
ULONG_PTR mFlags;
const NDR_CS_ROUTINES *CsRoutineTables;
void *Reserved4;
ULONG_PTR Reserved5;
} MIDL_STUB_DESC;
typedef const MIDL_STUB_DESC *PMIDL_STUB_DESC;
typedef void *PMIDL_XMIT_TYPE;
typedef struct _MIDL_FORMAT_STRING {
short Pad;
unsigned char Format[];
} MIDL_FORMAT_STRING;
typedef void (__attribute__((__stdcall__)) *STUB_THUNK)(PMIDL_STUB_MESSAGE);
typedef long (__attribute__((__stdcall__)) *SERVER_ROUTINE)();
typedef struct _MIDL_SERVER_INFO_ {
PMIDL_STUB_DESC pStubDesc;
const SERVER_ROUTINE *DispatchTable;
PFORMAT_STRING ProcString;
const unsigned short *FmtStringOffset;
const STUB_THUNK *ThunkTable;
PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
ULONG_PTR nCount;
PMIDL_SYNTAX_INFO pSyntaxInfo;
} MIDL_SERVER_INFO,*PMIDL_SERVER_INFO;
typedef struct _MIDL_STUBLESS_PROXY_INFO {
PMIDL_STUB_DESC pStubDesc;
PFORMAT_STRING ProcFormatString;
const unsigned short *FormatStringOffset;
PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
ULONG_PTR nCount;
PMIDL_SYNTAX_INFO pSyntaxInfo;
} MIDL_STUBLESS_PROXY_INFO;
typedef MIDL_STUBLESS_PROXY_INFO *PMIDL_STUBLESS_PROXY_INFO;
struct _MIDL_SYNTAX_INFO {
RPC_SYNTAX_IDENTIFIER TransferSyntax;
RPC_DISPATCH_TABLE *DispatchTable;
PFORMAT_STRING ProcString;
const unsigned short *FmtStringOffset;
PFORMAT_STRING TypeString;
const void *aUserMarshalQuadruple;
ULONG_PTR pReserved1;
ULONG_PTR pReserved2;
};
typedef unsigned short *PARAM_OFFSETTABLE,*PPARAM_OFFSETTABLE;
typedef union _CLIENT_CALL_RETURN {
void *Pointer;
LONG_PTR Simple;
} CLIENT_CALL_RETURN;
typedef enum {
XLAT_SERVER = 1,XLAT_CLIENT
} XLAT_SIDE;
typedef struct _FULL_PTR_TO_REFID_ELEMENT {
struct _FULL_PTR_TO_REFID_ELEMENT *Next;
void *Pointer;
unsigned long RefId;
unsigned char State;
} FULL_PTR_TO_REFID_ELEMENT,*PFULL_PTR_TO_REFID_ELEMENT;
typedef struct _FULL_PTR_XLAT_TABLES {
struct {
void **XlatTable;
unsigned char *StateTable;
unsigned long NumberOfEntries;
} RefIdToPointer;
struct {
PFULL_PTR_TO_REFID_ELEMENT *XlatTable;
unsigned long NumberOfBuckets;
unsigned long HashMask;
} PointerToRefId;
unsigned long NextRefId;
XLAT_SIDE XlatSide;
} FULL_PTR_XLAT_TABLES,*PFULL_PTR_XLAT_TABLES;
RPC_STATUS __attribute__((__stdcall__)) NdrClientGetSupportedSyntaxes(RPC_CLIENT_INTERFACE *pInf,unsigned long *pCount,MIDL_SYNTAX_INFO **pArr);
RPC_STATUS __attribute__((__stdcall__)) NdrServerGetSupportedSyntaxes(RPC_SERVER_INTERFACE *pInf,unsigned long *pCount,MIDL_SYNTAX_INFO **pArr,unsigned long *pPreferSyntaxIndex);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrSimpleTypeMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,unsigned char FormatChar);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrPointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrCsArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrCsTagMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrSimpleStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantVaryingStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrComplexStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrFixedArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantVaryingArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrVaryingArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrComplexArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrNonConformantStringMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantStringMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrEncapsulatedUnionMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrNonEncapsulatedUnionMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrByteCountPointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrXmitOrRepAsMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrUserMarshalMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrInterfacePointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrClientContextMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_CCONTEXT ContextHandle,int fCheck);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerContextMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_SCONTEXT ContextHandle,NDR_RUNDOWN RundownRoutine);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerContextNewMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_SCONTEXT ContextHandle,NDR_RUNDOWN RundownRoutine,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrSimpleTypeUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,unsigned char FormatChar);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrCsArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrCsTagUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrRangeUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrCorrelationInitialize(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory,unsigned long CacheSize,unsigned long flags);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrCorrelationPass(PMIDL_STUB_MESSAGE pStubMsg);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrCorrelationFree(PMIDL_STUB_MESSAGE pStubMsg);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrPointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrSimpleStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantVaryingStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrComplexStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrFixedArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantVaryingArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrVaryingArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrComplexArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrNonConformantStringUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrConformantStringUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrEncapsulatedUnionUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrNonEncapsulatedUnionUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrByteCountPointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrXmitOrRepAsUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrUserMarshalUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrInterfacePointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrClientContextUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_CCONTEXT *pContextHandle,RPC_BINDING_HANDLE BindHandle);
__attribute__((dllimport)) NDR_SCONTEXT __attribute__((__stdcall__)) NdrServerContextUnmarshall(PMIDL_STUB_MESSAGE pStubMsg);
__attribute__((dllimport)) NDR_SCONTEXT __attribute__((__stdcall__)) NdrContextHandleInitialize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) NDR_SCONTEXT __attribute__((__stdcall__)) NdrServerContextNewUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrPointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrCsArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrCsTagBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrSimpleStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantVaryingStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrComplexStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrFixedArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantVaryingArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrVaryingArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrComplexArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantStringBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrNonConformantStringBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrEncapsulatedUnionBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrNonEncapsulatedUnionBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrByteCountPointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrXmitOrRepAsBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrUserMarshalBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrInterfacePointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrContextHandleSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrPointerMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrCsArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrCsTagMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrSimpleStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrConformantStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrConformantVaryingStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrComplexStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrFixedArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrConformantArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrConformantVaryingArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrVaryingArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrComplexArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrConformantStringMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrNonConformantStringMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrEncapsulatedUnionMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrNonEncapsulatedUnionMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrXmitOrRepAsMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrUserMarshalMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrInterfacePointerMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrPointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrCsArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrSimpleStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantVaryingStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrComplexStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrFixedArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConformantVaryingArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrVaryingArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrComplexArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrEncapsulatedUnionFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrNonEncapsulatedUnionFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrByteCountPointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrXmitOrRepAsFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrUserMarshalFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrInterfacePointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConvert2(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat,long NumberParams);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrConvert(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrUserMarshalSimpleTypeConvert(unsigned long *pFlags,unsigned char *pBuffer,unsigned char FormatChar);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrClientInitializeNew(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned int ProcNum);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrServerInitializeNew(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerInitializePartial(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned long RequestedBufferSize);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrClientInitialize(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned int ProcNum);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrServerInitialize(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrServerInitializeUnmarshall (PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerInitializeMarshall (PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrGetBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned long BufferLength,RPC_BINDING_HANDLE Handle);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrNsGetBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned long BufferLength,RPC_BINDING_HANDLE Handle);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrSendReceive(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pBufferEnd);
__attribute__((dllimport)) unsigned char *__attribute__((__stdcall__)) NdrNsSendReceive(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pBufferEnd,RPC_BINDING_HANDLE *pAutoHandle);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrFreeBuffer(PMIDL_STUB_MESSAGE pStubMsg);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) NdrGetDcomProtocolVersion(PMIDL_STUB_MESSAGE pStubMsg,RPC_VERSION *pVersion);
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrClientCall2(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrAsyncClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrDcomAsyncClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
typedef enum {
STUB_UNMARSHAL,STUB_CALL_SERVER,STUB_MARSHAL,STUB_CALL_SERVER_NO_HRESULT
} STUB_PHASE;
typedef enum {
PROXY_CALCSIZE,PROXY_GETBUFFER,PROXY_MARSHAL,PROXY_SENDRECEIVE,PROXY_UNMARSHAL
} PROXY_PHASE;
struct IRpcStubBuffer;
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrAsyncServerCall(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) long __attribute__((__stdcall__)) NdrAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
__attribute__((dllimport)) long __attribute__((__stdcall__)) NdrDcomAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
__attribute__((dllimport)) long __attribute__((__stdcall__)) NdrStubCall2(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerCall2(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) long __attribute__((__stdcall__)) NdrStubCall (struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerCall(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrServerUnmarshall(struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,void *pParamList);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerMarshall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) NdrMapCommAndFaultStatus(PMIDL_STUB_MESSAGE pStubMsg,unsigned long *pCommStatus,unsigned long *pFaultStatus,RPC_STATUS Status);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrSH_UPDecision(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,RPC_BUFPTR pBuffer);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrSH_TLUPDecision(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrSH_TLUPDecisionBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrSH_IfAlloc(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrSH_IfAllocRef(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrSH_IfAllocSet(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
__attribute__((dllimport)) RPC_BUFPTR __attribute__((__stdcall__)) NdrSH_IfCopy(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
__attribute__((dllimport)) RPC_BUFPTR __attribute__((__stdcall__)) NdrSH_IfAllocCopy(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) NdrSH_Copy(unsigned char *pStubMsg,unsigned char *pPtrInMem,unsigned long Count);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrSH_IfFree(PMIDL_STUB_MESSAGE pMessage,unsigned char *pPtr);
__attribute__((dllimport)) RPC_BUFPTR __attribute__((__stdcall__)) NdrSH_StringMarshall(PMIDL_STUB_MESSAGE pMessage,unsigned char *pMemory,unsigned long Count,int Size);
__attribute__((dllimport)) RPC_BUFPTR __attribute__((__stdcall__)) NdrSH_StringUnMarshall(PMIDL_STUB_MESSAGE pMessage,unsigned char **pMemory,int Size);
typedef void *RPC_SS_THREAD_HANDLE;
typedef void *__attribute__((__stdcall__)) RPC_CLIENT_ALLOC(size_t Size);
typedef void __attribute__((__stdcall__)) RPC_CLIENT_FREE(void *Ptr);
__attribute__((dllimport)) void *__attribute__((__stdcall__)) RpcSsAllocate(size_t Size);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcSsDisableAllocate(void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcSsEnableAllocate(void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcSsFree(void *NodeToFree);
__attribute__((dllimport)) RPC_SS_THREAD_HANDLE __attribute__((__stdcall__)) RpcSsGetThreadHandle(void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcSsSetClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcSsSetThreadHandle(RPC_SS_THREAD_HANDLE Id);
__attribute__((dllimport)) void __attribute__((__stdcall__)) RpcSsSwapClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree,RPC_CLIENT_ALLOC **OldClientAlloc,RPC_CLIENT_FREE **OldClientFree);
__attribute__((dllimport)) void *__attribute__((__stdcall__)) RpcSmAllocate(size_t Size,RPC_STATUS *pStatus);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSmClientFree(void *pNodeToFree);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSmDestroyClientContext(void **ContextHandle);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSmDisableAllocate(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSmEnableAllocate(void);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSmFree(void *NodeToFree);
__attribute__((dllimport)) RPC_SS_THREAD_HANDLE __attribute__((__stdcall__)) RpcSmGetThreadHandle (RPC_STATUS *pStatus);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSmSetClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSmSetThreadHandle(RPC_SS_THREAD_HANDLE Id);
__attribute__((dllimport)) RPC_STATUS __attribute__((__stdcall__)) RpcSmSwapClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree,RPC_CLIENT_ALLOC **OldClientAlloc,RPC_CLIENT_FREE **OldClientFree);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrRpcSsEnableAllocate(PMIDL_STUB_MESSAGE pMessage);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrRpcSsDisableAllocate(PMIDL_STUB_MESSAGE pMessage);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrRpcSmSetClientToOsf(PMIDL_STUB_MESSAGE pMessage);
__attribute__((dllimport)) void *__attribute__((__stdcall__)) NdrRpcSmClientAllocate(size_t Size);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrRpcSmClientFree(void *NodeToFree);
__attribute__((dllimport)) void *__attribute__((__stdcall__)) NdrRpcSsDefaultAllocate(size_t Size);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrRpcSsDefaultFree(void *NodeToFree);
__attribute__((dllimport)) PFULL_PTR_XLAT_TABLES __attribute__((__stdcall__)) NdrFullPointerXlatInit(unsigned long NumberOfPointers,XLAT_SIDE XlatSide);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrFullPointerXlatFree(PFULL_PTR_XLAT_TABLES pXlatTables);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrFullPointerQueryPointer(PFULL_PTR_XLAT_TABLES pXlatTables,void *pPointer,unsigned char QueryType,unsigned long *pRefId);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrFullPointerQueryRefId(PFULL_PTR_XLAT_TABLES pXlatTables,unsigned long RefId,unsigned char QueryType,void **ppPointer);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrFullPointerInsertRefId(PFULL_PTR_XLAT_TABLES pXlatTables,unsigned long RefId,void *pPointer);
__attribute__((dllimport)) int __attribute__((__stdcall__)) NdrFullPointerFree(PFULL_PTR_XLAT_TABLES pXlatTables,void *Pointer);
__attribute__((dllimport)) void *__attribute__((__stdcall__)) NdrAllocate(PMIDL_STUB_MESSAGE pStubMsg,size_t Len);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrClearOutParameters(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat,void *ArgAddr);
__attribute__((dllimport)) void *__attribute__((__stdcall__)) NdrOleAllocate(size_t Size);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrOleFree(void *NodeToFree);
typedef struct _NDR_USER_MARSHAL_INFO_LEVEL1 {
void *Buffer;
unsigned long BufferSize;
void *(__attribute__((__stdcall__)) *pfnAllocate)(size_t);
void (__attribute__((__stdcall__)) *pfnFree)(void *);
struct IRpcChannelBuffer *pRpcChannelBuffer;
ULONG_PTR Reserved[5];
} NDR_USER_MARSHAL_INFO_LEVEL1;
typedef struct _NDR_USER_MARSHAL_INFO {
unsigned long InformationLevel;
__extension__ union {
NDR_USER_MARSHAL_INFO_LEVEL1 Level1;
};
} NDR_USER_MARSHAL_INFO;
RPC_STATUS __attribute__((__stdcall__)) NdrGetUserMarshalInfo(unsigned long *pFlags,unsigned long InformationLevel,NDR_USER_MARSHAL_INFO *pMarshalInfo);
RPC_STATUS __attribute__((__stdcall__)) NdrCreateServerInterfaceFromStub(struct IRpcStubBuffer *pStub,RPC_SERVER_INTERFACE *pServerIf);
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrClientCall3(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
CLIENT_CALL_RETURN __attribute__((__cdecl__)) Ndr64AsyncClientCall(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
CLIENT_CALL_RETURN __attribute__((__cdecl__)) Ndr64DcomAsyncClientCall(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
struct IRpcStubBuffer;
__attribute__((dllimport)) void __attribute__((__stdcall__)) Ndr64AsyncServerCall(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) void __attribute__((__stdcall__)) Ndr64AsyncServerCall64(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) void __attribute__((__stdcall__)) Ndr64AsyncServerCallAll(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) long __attribute__((__stdcall__)) Ndr64AsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
__attribute__((dllimport)) long __attribute__((__stdcall__)) Ndr64DcomAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
__attribute__((dllimport)) long __attribute__((__stdcall__)) NdrStubCall3 (struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerCallAll(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerCallNdr64(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrServerCall3(PRPC_MESSAGE pRpcMsg);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrPartialIgnoreClientMarshall(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrPartialIgnoreServerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,void **ppMemory);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrPartialIgnoreClientBufferSize(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory);
__attribute__((dllimport)) void __attribute__((__stdcall__)) NdrPartialIgnoreServerInitialize(PMIDL_STUB_MESSAGE pStubMsg,void **ppMemory,PFORMAT_STRING pFormat);
void __attribute__((__stdcall__)) RpcUserFree(handle_t AsyncHandle,void *pBuffer);
#pragma pack(pop)
#pragma pack(push,8)
#pragma pack(push,8)
#pragma pack(push,8)
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _itow_s (int _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ltow_s (long _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ultow_s (unsigned long _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wgetenv_s(size_t *_ReturnSize,wchar_t *_DstBuf,size_t _DstSizeInWords,const wchar_t *_VarName);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wdupenv_s(wchar_t **_Buffer,size_t *_BufferSizeInWords,const wchar_t *_VarName);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _i64tow_s(long long _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ui64tow_s(unsigned long long _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wmakepath_s(wchar_t *_PathResult,size_t _SizeInWords,const wchar_t *_Drive,const wchar_t *_Dir,const wchar_t *_Filename,const wchar_t *_Ext);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wputenv_s(const wchar_t *_Name,const wchar_t *_Value);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wsearchenv_s(const wchar_t *_Filename,const wchar_t *_EnvVar,wchar_t *_ResultPath,size_t _SizeInWords);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wsplitpath_s(const wchar_t *_FullPath,wchar_t *_Drive,size_t _DriveSizeInWords,wchar_t *_Dir,size_t _DirSizeInWords,wchar_t *_Filename,size_t _FilenameSizeInWords,wchar_t *_Ext,size_t _ExtSizeInWords);
#pragma pack(push,_CRT_PACKING)
typedef int (__attribute__((__cdecl__)) *_onexit_t)(void);
typedef struct _div_t {
int quot;
int rem;
} div_t;
typedef struct _ldiv_t {
long quot;
long rem;
} ldiv_t;
#pragma pack(4)
typedef struct {
unsigned char ld[10];
} _LDOUBLE;
#pragma pack()
typedef struct {
double x;
} _CRT_DOUBLE;
typedef struct {
float f;
} _CRT_FLOAT;
typedef struct {
long double x;
} _LONGDOUBLE;
#pragma pack(4)
typedef struct {
unsigned char ld12[12];
} _LDBL12;
#pragma pack()
typedef void (__attribute__((__cdecl__)) *_purecall_handler)(void);
__attribute__ ((__dllimport__)) _purecall_handler __attribute__((__cdecl__)) _set_purecall_handler(_purecall_handler _Handler);
__attribute__ ((__dllimport__)) _purecall_handler __attribute__((__cdecl__)) _get_purecall_handler(void);
typedef void (__attribute__((__cdecl__)) *_invalid_parameter_handler)(const wchar_t *,const wchar_t *,const wchar_t *,unsigned int,uintptr_t);
__attribute__ ((__dllimport__)) _invalid_parameter_handler __attribute__((__cdecl__)) _set_invalid_parameter_handler(_invalid_parameter_handler _Handler);
__attribute__ ((__dllimport__)) _invalid_parameter_handler __attribute__((__cdecl__)) _get_invalid_parameter_handler(void);
__attribute__ ((__dllimport__)) extern int *__attribute__((__cdecl__)) _errno(void);
errno_t __attribute__((__cdecl__)) _set_errno(int _Value);
errno_t __attribute__((__cdecl__)) _get_errno(int *_Value);
__attribute__ ((__dllimport__)) unsigned long *__attribute__((__cdecl__)) __doserrno(void);
errno_t __attribute__((__cdecl__)) _set_doserrno(unsigned long _Value);
errno_t __attribute__((__cdecl__)) _get_doserrno(unsigned long *_Value);
extern __attribute__((dllimport)) char *_sys_errlist[1];
extern __attribute__((dllimport)) int _sys_nerr;
__attribute__ ((__dllimport__)) char ***__attribute__((__cdecl__)) __p___argv(void);
__attribute__ ((__dllimport__)) int *__attribute__((__cdecl__)) __p__fmode(void);
__attribute__ ((__dllimport__)) int *__attribute__((__cdecl__)) __p___argc(void);
__attribute__ ((__dllimport__)) wchar_t ***__attribute__((__cdecl__)) __p___wargv(void);
__attribute__ ((__dllimport__)) char ***__attribute__((__cdecl__)) __p__environ(void);
__attribute__ ((__dllimport__)) wchar_t ***__attribute__((__cdecl__)) __p__wenviron(void);
__attribute__ ((__dllimport__)) char **__attribute__((__cdecl__)) __p__pgmptr(void);
__attribute__ ((__dllimport__)) wchar_t **__attribute__((__cdecl__)) __p__wpgmptr(void);
errno_t __attribute__((__cdecl__)) _get_pgmptr(char **_Value);
errno_t __attribute__((__cdecl__)) _get_wpgmptr(wchar_t **_Value);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _set_fmode(int _Mode);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_fmode(int *_PMode);
extern int * _imp____argc;
extern char *** _imp____argv;
extern wchar_t *** _imp____wargv;
extern char *** _imp___environ;
extern wchar_t *** _imp___wenviron;
extern char ** _imp___pgmptr;
extern wchar_t ** _imp___wpgmptr;
extern unsigned int * _imp___osplatform;
extern unsigned int * _imp___osver;
extern unsigned int * _imp___winver;
extern unsigned int * _imp___winmajor;
extern unsigned int * _imp___winminor;
errno_t __attribute__((__cdecl__)) _get_osplatform(unsigned int *_Value);
errno_t __attribute__((__cdecl__)) _get_osver(unsigned int *_Value);
errno_t __attribute__((__cdecl__)) _get_winver(unsigned int *_Value);
errno_t __attribute__((__cdecl__)) _get_winmajor(unsigned int *_Value);
errno_t __attribute__((__cdecl__)) _get_winminor(unsigned int *_Value);
void __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) exit(int _Code) __attribute__ ((__noreturn__));
void __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) _exit(int _Code) __attribute__ ((__noreturn__));
void __attribute__((__cdecl__)) _Exit(int) __attribute__ ((__noreturn__));
void __attribute__((__cdecl__)) __attribute__ ((__noreturn__)) abort(void);
__attribute__ ((__dllimport__)) unsigned int __attribute__((__cdecl__)) _set_abort_behavior(unsigned int _Flags,unsigned int _Mask);
int __attribute__((__cdecl__)) abs(int _X);
long __attribute__((__cdecl__)) labs(long _X);
__extension__ long long __attribute__((__cdecl__)) _abs64(long long);
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) long long __attribute__((__cdecl__)) _abs64(long long x) {
return __builtin_llabs(x);
}
int __attribute__((__cdecl__)) atexit(void (__attribute__((__cdecl__)) *)(void));
double __attribute__((__cdecl__)) atof(const char *_String);
double __attribute__((__cdecl__)) _atof_l(const char *_String,_locale_t _Locale);
int __attribute__((__cdecl__)) atoi(const char *_Str);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoi_l(const char *_Str,_locale_t _Locale);
long __attribute__((__cdecl__)) atol(const char *_Str);
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _atol_l(const char *_Str,_locale_t _Locale);
void *__attribute__((__cdecl__)) bsearch(const void *_Key,const void *_Base,size_t _NumOfElements,size_t _SizeOfElements,int (__attribute__((__cdecl__)) *_PtFuncCompare)(const void *,const void *));
void __attribute__((__cdecl__)) qsort(void *_Base,size_t _NumOfElements,size_t _SizeOfElements,int (__attribute__((__cdecl__)) *_PtFuncCompare)(const void *,const void *));
unsigned short __attribute__((__cdecl__)) _byteswap_ushort(unsigned short _Short);
unsigned long __attribute__((__cdecl__)) _byteswap_ulong (unsigned long _Long);
__extension__ unsigned long long __attribute__((__cdecl__)) _byteswap_uint64(unsigned long long _Int64);
div_t __attribute__((__cdecl__)) div(int _Numerator,int _Denominator);
char *__attribute__((__cdecl__)) getenv(const char *_VarName) ;
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _itoa(int _Value,char *_Dest,int _Radix);
__extension__ __attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _i64toa(long long _Val,char *_DstBuf,int _Radix) ;
__extension__ __attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ui64toa(unsigned long long _Val,char *_DstBuf,int _Radix) ;
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _atoi64(const char *_String);
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _atoi64_l(const char *_String,_locale_t _Locale);
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _strtoi64(const char *_String,char **_EndPtr,int _Radix);
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _strtoi64_l(const char *_String,char **_EndPtr,int _Radix,_locale_t _Locale);
__extension__ __attribute__ ((__dllimport__)) unsigned long long __attribute__((__cdecl__)) _strtoui64(const char *_String,char **_EndPtr,int _Radix);
__extension__ __attribute__ ((__dllimport__)) unsigned long long __attribute__((__cdecl__)) _strtoui64_l(const char *_String,char **_EndPtr,int _Radix,_locale_t _Locale);
ldiv_t __attribute__((__cdecl__)) ldiv(long _Numerator,long _Denominator);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ltoa(long _Value,char *_Dest,int _Radix) ;
int __attribute__((__cdecl__)) mblen(const char *_Ch,size_t _MaxCount);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _mblen_l(const char *_Ch,size_t _MaxCount,_locale_t _Locale);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstrlen(const char *_Str);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstrlen_l(const char *_Str,_locale_t _Locale);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstrnlen(const char *_Str,size_t _MaxCount);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstrnlen_l(const char *_Str,size_t _MaxCount,_locale_t _Locale);
int __attribute__((__cdecl__)) mbtowc(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SrcSizeInBytes);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _mbtowc_l(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SrcSizeInBytes,_locale_t _Locale);
size_t __attribute__((__cdecl__)) mbstowcs(wchar_t * __restrict__ _Dest,const char * __restrict__ _Source,size_t _MaxCount);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstowcs_l(wchar_t * __restrict__ _Dest,const char * __restrict__ _Source,size_t _MaxCount,_locale_t _Locale);
int __attribute__((__cdecl__)) mkstemp(char *template_name);
int __attribute__((__cdecl__)) rand(void);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _set_error_mode(int _Mode);
void __attribute__((__cdecl__)) srand(unsigned int _Seed);
double __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) strtod(const char * __restrict__ _Str,char ** __restrict__ _EndPtr);
float __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) strtof(const char * __restrict__ nptr, char ** __restrict__ endptr);
long double __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) strtold(const char * __restrict__ , char ** __restrict__ );
extern double __attribute__((__cdecl__)) __attribute__ ((__nothrow__))
__strtod (const char * __restrict__ , char ** __restrict__);
float __attribute__((__cdecl__)) __mingw_strtof (const char * __restrict__, char ** __restrict__);
double __attribute__((__cdecl__)) __mingw_strtod (const char * __restrict__, char ** __restrict__);
long double __attribute__((__cdecl__)) __mingw_strtold(const char * __restrict__, char ** __restrict__);
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _strtod_l(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,_locale_t _Locale);
long __attribute__((__cdecl__)) strtol(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,int _Radix);
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _strtol_l(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,int _Radix,_locale_t _Locale);
unsigned long __attribute__((__cdecl__)) strtoul(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,int _Radix);
__attribute__ ((__dllimport__)) unsigned long __attribute__((__cdecl__)) _strtoul_l(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,int _Radix,_locale_t _Locale);
int __attribute__((__cdecl__)) system(const char *_Command);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ultoa(unsigned long _Value,char *_Dest,int _Radix) ;
int __attribute__((__cdecl__)) wctomb(char *_MbCh,wchar_t _WCh) ;
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wctomb_l(char *_MbCh,wchar_t _WCh,_locale_t _Locale) ;
size_t __attribute__((__cdecl__)) wcstombs(char * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _MaxCount) ;
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _wcstombs_l(char * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _MaxCount,_locale_t _Locale) ;
void *__attribute__((__cdecl__)) calloc(size_t _NumOfElements,size_t _SizeOfElements);
void __attribute__((__cdecl__)) free(void *_Memory);
void *__attribute__((__cdecl__)) malloc(size_t _Size);
void *__attribute__((__cdecl__)) realloc(void *_Memory,size_t _NewSize);
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _recalloc(void *_Memory,size_t _Count,size_t _Size);
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _aligned_free(void *_Memory);
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_malloc(size_t _Size,size_t _Alignment);
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_offset_malloc(size_t _Size,size_t _Alignment,size_t _Offset);
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_realloc(void *_Memory,size_t _Size,size_t _Alignment);
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_recalloc(void *_Memory,size_t _Count,size_t _Size,size_t _Alignment);
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_offset_realloc(void *_Memory,size_t _Size,size_t _Alignment,size_t _Offset);
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_offset_recalloc(void *_Memory,size_t _Count,size_t _Size,size_t _Alignment,size_t _Offset);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _itow(int _Value,wchar_t *_Dest,int _Radix) ;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _ltow(long _Value,wchar_t *_Dest,int _Radix) ;
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _ultow(unsigned long _Value,wchar_t *_Dest,int _Radix) ;
double __attribute__((__cdecl__)) __mingw_wcstod(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr);
float __attribute__((__cdecl__)) __mingw_wcstof(const wchar_t * __restrict__ nptr, wchar_t ** __restrict__ endptr);
long double __attribute__((__cdecl__)) __mingw_wcstold(const wchar_t * __restrict__, wchar_t ** __restrict__);
double __attribute__((__cdecl__)) wcstod(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr);
float __attribute__((__cdecl__)) wcstof(const wchar_t * __restrict__ nptr, wchar_t ** __restrict__ endptr);
long double __attribute__((__cdecl__)) wcstold(const wchar_t * __restrict__, wchar_t ** __restrict__);
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _wcstod_l(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,_locale_t _Locale);
long __attribute__((__cdecl__)) wcstol(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,int _Radix);
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _wcstol_l(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,int _Radix,_locale_t _Locale);
unsigned long __attribute__((__cdecl__)) wcstoul(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,int _Radix);
__attribute__ ((__dllimport__)) unsigned long __attribute__((__cdecl__)) _wcstoul_l(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,int _Radix,_locale_t _Locale);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wgetenv(const wchar_t *_VarName) ;
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wsystem(const wchar_t *_Command);
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _wtof(const wchar_t *_Str);
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _wtof_l(const wchar_t *_Str,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wtoi(const wchar_t *_Str);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wtoi_l(const wchar_t *_Str,_locale_t _Locale);
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _wtol(const wchar_t *_Str);
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _wtol_l(const wchar_t *_Str,_locale_t _Locale);
__extension__ __attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _i64tow(long long _Val,wchar_t *_DstBuf,int _Radix) ;
__extension__ __attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _ui64tow(unsigned long long _Val,wchar_t *_DstBuf,int _Radix) ;
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _wtoi64(const wchar_t *_Str);
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _wtoi64_l(const wchar_t *_Str,_locale_t _Locale);
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _wcstoi64(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix);
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _wcstoi64_l(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix,_locale_t _Locale);
__extension__ __attribute__ ((__dllimport__)) unsigned long long __attribute__((__cdecl__)) _wcstoui64(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix);
__extension__ __attribute__ ((__dllimport__)) unsigned long long __attribute__((__cdecl__)) _wcstoui64_l(const wchar_t *_Str ,wchar_t **_EndPtr,int _Radix,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _putenv(const char *_EnvString);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wputenv(const wchar_t *_EnvString);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _fullpath(char *_FullPath,const char *_Path,size_t _SizeInBytes);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ecvt(double _Val,int _NumOfDigits,int *_PtDec,int *_PtSign) ;
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _fcvt(double _Val,int _NumOfDec,int *_PtDec,int *_PtSign) ;
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _gcvt(double _Val,int _NumOfDigits,char *_DstBuf) ;
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atodbl(_CRT_DOUBLE *_Result,char *_Str);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoldbl(_LDOUBLE *_Result,char *_Str);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoflt(_CRT_FLOAT *_Result,char *_Str);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atodbl_l(_CRT_DOUBLE *_Result,char *_Str,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoldbl_l(_LDOUBLE *_Result,char *_Str,_locale_t _Locale);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoflt_l(_CRT_FLOAT *_Result,char *_Str,_locale_t _Locale);
unsigned long __attribute__((__cdecl__)) _lrotl(unsigned long,int);
unsigned long __attribute__((__cdecl__)) _lrotr(unsigned long,int);
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _makepath(char *_Path,const char *_Drive,const char *_Dir,const char *_Filename,const char *_Ext);
_onexit_t __attribute__((__cdecl__)) _onexit(_onexit_t _Func);
void __attribute__((__cdecl__)) perror(const char *_ErrMsg);
__extension__ unsigned long long __attribute__((__cdecl__)) _rotl64(unsigned long long _Val,int _Shift);
__extension__ unsigned long long __attribute__((__cdecl__)) _rotr64(unsigned long long Value,int Shift);
unsigned int __attribute__((__cdecl__)) _rotr(unsigned int _Val,int _Shift);
unsigned int __attribute__((__cdecl__)) _rotl(unsigned int _Val,int _Shift);
__extension__ unsigned long long __attribute__((__cdecl__)) _rotr64(unsigned long long _Val,int _Shift);
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _searchenv(const char *_Filename,const char *_EnvVar,char *_ResultPath) ;
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _splitpath(const char *_FullPath,char *_Drive,char *_Dir,char *_Filename,char *_Ext) ;
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _swab(char *_Buf1,char *_Buf2,int _SizeInBytes);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wfullpath(wchar_t *_FullPath,const wchar_t *_Path,size_t _SizeInWords);
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _wmakepath(wchar_t *_ResultPath,const wchar_t *_Drive,const wchar_t *_Dir,const wchar_t *_Filename,const wchar_t *_Ext);
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _wperror(const wchar_t *_ErrMsg);
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _wsearchenv(const wchar_t *_Filename,const wchar_t *_EnvVar,wchar_t *_ResultPath) ;
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _wsplitpath(const wchar_t *_FullPath,wchar_t *_Drive,wchar_t *_Dir,wchar_t *_Filename,wchar_t *_Ext) ;
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _beep(unsigned _Frequency,unsigned _Duration) __attribute__ ((__deprecated__));
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _seterrormode(int _Mode) __attribute__ ((__deprecated__));
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _sleep(unsigned long _Duration) __attribute__ ((__deprecated__));
char *__attribute__((__cdecl__)) ecvt(double _Val,int _NumOfDigits,int *_PtDec,int *_PtSign) ;
char *__attribute__((__cdecl__)) fcvt(double _Val,int _NumOfDec,int *_PtDec,int *_PtSign) ;
char *__attribute__((__cdecl__)) gcvt(double _Val,int _NumOfDigits,char *_DstBuf) ;
char *__attribute__((__cdecl__)) itoa(int _Val,char *_DstBuf,int _Radix) ;
char *__attribute__((__cdecl__)) ltoa(long _Val,char *_DstBuf,int _Radix) ;
int __attribute__((__cdecl__)) putenv(const char *_EnvString) ;
void __attribute__((__cdecl__)) swab(char *_Buf1,char *_Buf2,int _SizeInBytes) ;
char *__attribute__((__cdecl__)) ultoa(unsigned long _Val,char *_Dstbuf,int _Radix) ;
_onexit_t __attribute__((__cdecl__)) onexit(_onexit_t _Func);
typedef struct { __extension__ long long quot, rem; } lldiv_t;
__extension__ lldiv_t __attribute__((__cdecl__)) lldiv(long long, long long);
__extension__ long long __attribute__((__cdecl__)) llabs(long long);
__extension__ long long __attribute__((__cdecl__)) strtoll(const char * __restrict__, char ** __restrict, int);
__extension__ unsigned long long __attribute__((__cdecl__)) strtoull(const char * __restrict__, char ** __restrict__, int);
__extension__ long long __attribute__((__cdecl__)) atoll (const char *);
#pragma pack(pop)
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _dupenv_s(char **_PBuffer,size_t *_PBufferSizeInBytes,const char *_VarName);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _itoa_s(int _Value,char *_DstBuf,size_t _Size,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _i64toa_s(long long _Val,char *_DstBuf,size_t _Size,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ui64toa_s(unsigned long long _Val,char *_DstBuf,size_t _Size,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ltoa_s(long _Val,char *_DstBuf,size_t _Size,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) mbstowcs_s(size_t *_PtNumOfCharConverted,wchar_t *_DstBuf,size_t _SizeInWords,const char *_SrcBuf,size_t _MaxCount);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _mbstowcs_s_l(size_t *_PtNumOfCharConverted,wchar_t *_DstBuf,size_t _SizeInWords,const char *_SrcBuf,size_t _MaxCount,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ultoa_s(unsigned long _Val,char *_DstBuf,size_t _Size,int _Radix);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wctomb_s_l(int *_SizeConverted,char *_MbCh,size_t _SizeInBytes,wchar_t _WCh,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcstombs_s(size_t *_PtNumOfCharConverted,char *_Dst,size_t _DstSizeInBytes,const wchar_t *_Src,size_t _MaxCountInBytes);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcstombs_s_l(size_t *_PtNumOfCharConverted,char *_Dst,size_t _DstSizeInBytes,const wchar_t *_Src,size_t _MaxCountInBytes,_locale_t _Locale);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ecvt_s(char *_DstBuf,size_t _Size,double _Val,int _NumOfDights,int *_PtDec,int *_PtSign);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _fcvt_s(char *_DstBuf,size_t _Size,double _Val,int _NumOfDec,int *_PtDec,int *_PtSign);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _gcvt_s(char *_DstBuf,size_t _Size,double _Val,int _NumOfDigits);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _makepath_s(char *_PathResult,size_t _Size,const char *_Drive,const char *_Dir,const char *_Filename,const char *_Ext);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _putenv_s(const char *_Name,const char *_Value);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _searchenv_s(const char *_Filename,const char *_EnvVar,char *_ResultPath,size_t _SizeInBytes);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _splitpath_s(const char *_FullPath,char *_Drive,size_t _DriveSize,char *_Dir,size_t _DirSize,char *_Filename,size_t _FilenameSize,char *_Ext,size_t _ExtSize);
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) qsort_s(void *_Base,size_t _NumOfElements,size_t _SizeOfElements,int (__attribute__((__cdecl__)) *_PtFuncCompare)(void *,const void *,const void *),void *_Context);
#pragma pack(push,_CRT_PACKING)
typedef struct _heapinfo {
int *_pentry;
size_t _size;
int _useflag;
} _HEAPINFO;
extern unsigned int _amblksiz;
void * __mingw_aligned_malloc (size_t _Size, size_t _Alignment);
void __mingw_aligned_free (void *_Memory);
void * __mingw_aligned_offset_realloc (void *_Memory, size_t _Size, size_t _Alignment, size_t _Offset);
void * __mingw_aligned_realloc (void *_Memory, size_t _Size, size_t _Offset);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _resetstkoflw (void);
__attribute__ ((__dllimport__)) unsigned long __attribute__((__cdecl__)) _set_malloc_crt_max_wait(unsigned long _NewValue);
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _expand(void *_Memory,size_t _NewSize);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _msize(void *_Memory);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _get_sbh_threshold(void);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _set_sbh_threshold(size_t _NewValue);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _set_amblksiz(size_t _Value);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_amblksiz(size_t *_Value);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapadd(void *_Memory,size_t _Size);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapchk(void);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapmin(void);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapset(unsigned int _Fill);
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapwalk(_HEAPINFO *_EntryInfo);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _heapused(size_t *_Used,size_t *_Commit);
__attribute__ ((__dllimport__)) intptr_t __attribute__((__cdecl__)) _get_heap_handle(void);
static __inline void *_MarkAllocaS(void *_Ptr,unsigned int _Marker) {
if(_Ptr) {
*((unsigned int*)_Ptr) = _Marker;
_Ptr = (char*)_Ptr + 8;
}
return _Ptr;
}
static __inline void __attribute__((__cdecl__)) _freea(void *_Memory) {
unsigned int _Marker;
if(_Memory) {
_Memory = (char*)_Memory - 8;
_Marker = *(unsigned int *)_Memory;
if(_Marker==0xDDDD) {
free(_Memory);
}
}
}
#pragma pack(pop)
typedef enum tagREGCLS {
REGCLS_SINGLEUSE = 0,
REGCLS_MULTIPLEUSE = 1,
REGCLS_MULTI_SEPARATE = 2,
REGCLS_SUSPENDED = 4,
REGCLS_SURROGATE = 8
} REGCLS;
typedef struct IRpcStubBuffer IRpcStubBuffer;
typedef struct IRpcChannelBuffer IRpcChannelBuffer;
typedef enum tagCOINITBASE {
COINITBASE_MULTITHREADED = 0x0,
} COINITBASE;
extern RPC_IF_HANDLE IWinTypesBase_v0_1_c_ifspec;
extern RPC_IF_HANDLE IWinTypesBase_v0_1_s_ifspec;
typedef WCHAR OLECHAR;
typedef OLECHAR *LPOLESTR;
typedef const OLECHAR *LPCOLESTR;
typedef unsigned char UCHAR;
typedef short SHORT;
typedef unsigned short USHORT;
typedef DWORD ULONG;
typedef double DOUBLE;
typedef struct _COAUTHIDENTITY {
USHORT *User;
ULONG UserLength;
USHORT *Domain;
ULONG DomainLength;
USHORT *Password;
ULONG PasswordLength;
ULONG Flags;
} COAUTHIDENTITY;
typedef struct _COAUTHINFO {
DWORD dwAuthnSvc;
DWORD dwAuthzSvc;
LPWSTR pwszServerPrincName;
DWORD dwAuthnLevel;
DWORD dwImpersonationLevel;
COAUTHIDENTITY *pAuthIdentityData;
DWORD dwCapabilities;
} COAUTHINFO;
typedef LONG SCODE;
typedef SCODE *PSCODE;
typedef enum tagMEMCTX {
MEMCTX_TASK = 1,
MEMCTX_SHARED = 2,
MEMCTX_MACSYSTEM = 3,
MEMCTX_UNKNOWN = -1,
MEMCTX_SAME = -2
} MEMCTX;
typedef enum tagCLSCTX {
CLSCTX_INPROC_SERVER = 0x1,
CLSCTX_INPROC_HANDLER = 0x2,
CLSCTX_LOCAL_SERVER = 0x4,
CLSCTX_INPROC_SERVER16 = 0x8,
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;
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;
typedef enum tagMSHCTX {
MSHCTX_LOCAL = 0,
MSHCTX_NOSHAREDMEM = 1,
MSHCTX_DIFFERENTMACHINE = 2,
MSHCTX_INPROC = 3,
MSHCTX_CROSSCTX = 4
} MSHCTX;
typedef struct _BYTE_BLOB {
ULONG clSize;
byte abData[1];
} BYTE_BLOB;
typedef BYTE_BLOB *UP_BYTE_BLOB;
typedef struct _WORD_BLOB {
ULONG clSize;
unsigned short asData[1];
} WORD_BLOB;
typedef WORD_BLOB *UP_WORD_BLOB;
typedef struct _DWORD_BLOB {
ULONG clSize;
ULONG alData[1];
} DWORD_BLOB;
typedef DWORD_BLOB *UP_DWORD_BLOB;
typedef struct _FLAGGED_BYTE_BLOB {
ULONG fFlags;
ULONG clSize;
byte abData[1];
} FLAGGED_BYTE_BLOB;
typedef FLAGGED_BYTE_BLOB *UP_FLAGGED_BYTE_BLOB;
typedef struct _FLAGGED_WORD_BLOB {
ULONG fFlags;
ULONG clSize;
unsigned short asData[1];
} FLAGGED_WORD_BLOB;
typedef FLAGGED_WORD_BLOB *UP_FLAGGED_WORD_BLOB;
typedef struct _BYTE_SIZEDARR {
ULONG clSize;
byte *pData;
} BYTE_SIZEDARR;
typedef struct _SHORT_SIZEDARR {
ULONG clSize;
unsigned short *pData;
} WORD_SIZEDARR;
typedef struct _LONG_SIZEDARR {
ULONG clSize;
ULONG *pData;
} DWORD_SIZEDARR;
typedef struct _HYPER_SIZEDARR {
ULONG clSize;
long long *pData;
} HYPER_SIZEDARR;
typedef boolean BOOLEAN;
typedef struct tagBLOB {
ULONG cbSize;
BYTE *pBlobData;
} BLOB;
typedef struct tagBLOB *LPBLOB;
typedef struct IUnknown IUnknown;
typedef struct AsyncIUnknown AsyncIUnknown;
typedef struct IClassFactory IClassFactory;
typedef IUnknown *LPUNKNOWN;
extern const GUID IID_IUnknown;
typedef struct IUnknownVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IUnknown *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IUnknown *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IUnknown *This);
} IUnknownVtbl;
struct IUnknown {
IUnknownVtbl* lpVtbl;
};
extern const GUID IID_AsyncIUnknown;
typedef struct AsyncIUnknownVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
AsyncIUnknown *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
AsyncIUnknown *This);
ULONG (__attribute__((__stdcall__)) *Release)(
AsyncIUnknown *This);
HRESULT (__attribute__((__stdcall__)) *Begin_QueryInterface)(
AsyncIUnknown *This,
const IID *const riid);
HRESULT (__attribute__((__stdcall__)) *Finish_QueryInterface)(
AsyncIUnknown *This,
void **ppvObject);
HRESULT (__attribute__((__stdcall__)) *Begin_AddRef)(
AsyncIUnknown *This);
ULONG (__attribute__((__stdcall__)) *Finish_AddRef)(
AsyncIUnknown *This);
HRESULT (__attribute__((__stdcall__)) *Begin_Release)(
AsyncIUnknown *This);
ULONG (__attribute__((__stdcall__)) *Finish_Release)(
AsyncIUnknown *This);
} AsyncIUnknownVtbl;
struct AsyncIUnknown {
AsyncIUnknownVtbl* lpVtbl;
};
typedef IClassFactory *LPCLASSFACTORY;
extern const GUID IID_IClassFactory;
typedef struct IClassFactoryVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IClassFactory *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IClassFactory *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IClassFactory *This);
HRESULT (__attribute__((__stdcall__)) *CreateInstance)(
IClassFactory *This,
IUnknown *pUnkOuter,
const IID *const riid,
void **ppvObject);
HRESULT (__attribute__((__stdcall__)) *LockServer)(
IClassFactory *This,
WINBOOL fLock);
} IClassFactoryVtbl;
struct IClassFactory {
IClassFactoryVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IClassFactory_RemoteCreateInstance_Proxy(
IClassFactory* This,
const IID *const riid,
IUnknown **ppvObject);
void __attribute__((__stdcall__)) IClassFactory_RemoteCreateInstance_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IClassFactory_RemoteLockServer_Proxy(
IClassFactory* This,
WINBOOL fLock);
void __attribute__((__stdcall__)) IClassFactory_RemoteLockServer_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IClassFactory_CreateInstance_Proxy(
IClassFactory* This,
IUnknown *pUnkOuter,
const IID *const riid,
void **ppvObject);
HRESULT __attribute__((__stdcall__)) IClassFactory_CreateInstance_Stub(
IClassFactory* This,
const IID *const riid,
IUnknown **ppvObject);
HRESULT __attribute__((__stdcall__)) IClassFactory_LockServer_Proxy(
IClassFactory* This,
WINBOOL fLock);
HRESULT __attribute__((__stdcall__)) IClassFactory_LockServer_Stub(
IClassFactory* This,
WINBOOL fLock);
typedef struct IMarshal IMarshal;
typedef struct INoMarshal INoMarshal;
typedef struct IAgileObject IAgileObject;
typedef struct IAgileReference IAgileReference;
typedef struct IMarshal2 IMarshal2;
typedef struct IMalloc IMalloc;
typedef struct IStdMarshalInfo IStdMarshalInfo;
typedef struct IExternalConnection IExternalConnection;
typedef struct IMultiQI IMultiQI;
typedef struct AsyncIMultiQI AsyncIMultiQI;
typedef struct IInternalUnknown IInternalUnknown;
typedef struct IEnumUnknown IEnumUnknown;
typedef struct IEnumString IEnumString;
typedef struct ISequentialStream ISequentialStream;
typedef struct IStream IStream;
typedef struct IRpcChannelBuffer IRpcChannelBuffer;
typedef struct IRpcChannelBuffer2 IRpcChannelBuffer2;
typedef struct IAsyncRpcChannelBuffer IAsyncRpcChannelBuffer;
typedef struct IRpcChannelBuffer3 IRpcChannelBuffer3;
typedef struct IRpcSyntaxNegotiate IRpcSyntaxNegotiate;
typedef struct IRpcProxyBuffer IRpcProxyBuffer;
typedef struct IRpcStubBuffer IRpcStubBuffer;
typedef struct IPSFactoryBuffer IPSFactoryBuffer;
typedef struct IChannelHook IChannelHook;
typedef struct IClientSecurity IClientSecurity;
typedef struct IServerSecurity IServerSecurity;
typedef struct IRpcOptions IRpcOptions;
typedef struct IGlobalOptions IGlobalOptions;
typedef struct ISurrogate ISurrogate;
typedef struct IGlobalInterfaceTable IGlobalInterfaceTable;
typedef struct ISynchronize ISynchronize;
typedef struct ISynchronizeHandle ISynchronizeHandle;
typedef struct ISynchronizeEvent ISynchronizeEvent;
typedef struct ISynchronizeContainer ISynchronizeContainer;
typedef struct ISynchronizeMutex ISynchronizeMutex;
typedef struct ICancelMethodCalls ICancelMethodCalls;
typedef struct IAsyncManager IAsyncManager;
typedef struct ICallFactory ICallFactory;
typedef struct IRpcHelper IRpcHelper;
typedef struct IReleaseMarshalBuffers IReleaseMarshalBuffers;
typedef struct IWaitMultiple IWaitMultiple;
typedef struct IAddrTrackingControl IAddrTrackingControl;
typedef struct IAddrExclusionControl IAddrExclusionControl;
typedef struct IPipeByte IPipeByte;
typedef struct IPipeLong IPipeLong;
typedef struct IPipeDouble IPipeDouble;
typedef struct IEnumContextProps IEnumContextProps;
typedef struct IContext IContext;
typedef struct IComThreadingInfo IComThreadingInfo;
typedef struct IProcessInitControl IProcessInitControl;
typedef struct IFastRundown IFastRundown;
typedef struct IMarshalingStream IMarshalingStream;
typedef struct _COSERVERINFO {
DWORD dwReserved1;
LPWSTR pwszName;
COAUTHINFO *pAuthInfo;
DWORD dwReserved2;
} COSERVERINFO;
typedef IMarshal *LPMARSHAL;
extern const GUID IID_IMarshal;
typedef struct IMarshalVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMarshal *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMarshal *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMarshal *This);
HRESULT (__attribute__((__stdcall__)) *GetUnmarshalClass)(
IMarshal *This,
const IID *const riid,
void *pv,
DWORD dwDestContext,
void *pvDestContext,
DWORD mshlflags,
CLSID *pCid);
HRESULT (__attribute__((__stdcall__)) *GetMarshalSizeMax)(
IMarshal *This,
const IID *const riid,
void *pv,
DWORD dwDestContext,
void *pvDestContext,
DWORD mshlflags,
DWORD *pSize);
HRESULT (__attribute__((__stdcall__)) *MarshalInterface)(
IMarshal *This,
IStream *pStm,
const IID *const riid,
void *pv,
DWORD dwDestContext,
void *pvDestContext,
DWORD mshlflags);
HRESULT (__attribute__((__stdcall__)) *UnmarshalInterface)(
IMarshal *This,
IStream *pStm,
const IID *const riid,
void **ppv);
HRESULT (__attribute__((__stdcall__)) *ReleaseMarshalData)(
IMarshal *This,
IStream *pStm);
HRESULT (__attribute__((__stdcall__)) *DisconnectObject)(
IMarshal *This,
DWORD dwReserved);
} IMarshalVtbl;
struct IMarshal {
IMarshalVtbl* lpVtbl;
};
extern const GUID IID_INoMarshal;
typedef struct INoMarshalVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
INoMarshal *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
INoMarshal *This);
ULONG (__attribute__((__stdcall__)) *Release)(
INoMarshal *This);
} INoMarshalVtbl;
struct INoMarshal {
INoMarshalVtbl* lpVtbl;
};
extern const GUID IID_IAgileObject;
typedef struct IAgileObjectVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAgileObject *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAgileObject *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAgileObject *This);
} IAgileObjectVtbl;
struct IAgileObject {
IAgileObjectVtbl* lpVtbl;
};
extern const GUID IID_IAgileReference;
typedef struct IAgileReferenceVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAgileReference *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAgileReference *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAgileReference *This);
HRESULT (__attribute__((__stdcall__)) *Resolve)(
IAgileReference *This,
const IID *const riid,
void **ppv);
} IAgileReferenceVtbl;
struct IAgileReference {
IAgileReferenceVtbl* lpVtbl;
};
typedef IMarshal2 *LPMARSHAL2;
extern const GUID IID_IMarshal2;
typedef struct IMarshal2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMarshal2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMarshal2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMarshal2 *This);
HRESULT (__attribute__((__stdcall__)) *GetUnmarshalClass)(
IMarshal2 *This,
const IID *const riid,
void *pv,
DWORD dwDestContext,
void *pvDestContext,
DWORD mshlflags,
CLSID *pCid);
HRESULT (__attribute__((__stdcall__)) *GetMarshalSizeMax)(
IMarshal2 *This,
const IID *const riid,
void *pv,
DWORD dwDestContext,
void *pvDestContext,
DWORD mshlflags,
DWORD *pSize);
HRESULT (__attribute__((__stdcall__)) *MarshalInterface)(
IMarshal2 *This,
IStream *pStm,
const IID *const riid,
void *pv,
DWORD dwDestContext,
void *pvDestContext,
DWORD mshlflags);
HRESULT (__attribute__((__stdcall__)) *UnmarshalInterface)(
IMarshal2 *This,
IStream *pStm,
const IID *const riid,
void **ppv);
HRESULT (__attribute__((__stdcall__)) *ReleaseMarshalData)(
IMarshal2 *This,
IStream *pStm);
HRESULT (__attribute__((__stdcall__)) *DisconnectObject)(
IMarshal2 *This,
DWORD dwReserved);
} IMarshal2Vtbl;
struct IMarshal2 {
IMarshal2Vtbl* lpVtbl;
};
typedef IMalloc *LPMALLOC;
extern const GUID IID_IMalloc;
typedef struct IMallocVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMalloc *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMalloc *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMalloc *This);
void * (__attribute__((__stdcall__)) *Alloc)(
IMalloc *This,
SIZE_T cb);
void * (__attribute__((__stdcall__)) *Realloc)(
IMalloc *This,
void *pv,
SIZE_T cb);
void (__attribute__((__stdcall__)) *Free)(
IMalloc *This,
void *pv);
SIZE_T (__attribute__((__stdcall__)) *GetSize)(
IMalloc *This,
void *pv);
int (__attribute__((__stdcall__)) *DidAlloc)(
IMalloc *This,
void *pv);
void (__attribute__((__stdcall__)) *HeapMinimize)(
IMalloc *This);
} IMallocVtbl;
struct IMalloc {
IMallocVtbl* lpVtbl;
};
typedef IStdMarshalInfo *LPSTDMARSHALINFO;
extern const GUID IID_IStdMarshalInfo;
typedef struct IStdMarshalInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IStdMarshalInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IStdMarshalInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IStdMarshalInfo *This);
HRESULT (__attribute__((__stdcall__)) *GetClassForHandler)(
IStdMarshalInfo *This,
DWORD dwDestContext,
void *pvDestContext,
CLSID *pClsid);
} IStdMarshalInfoVtbl;
struct IStdMarshalInfo {
IStdMarshalInfoVtbl* lpVtbl;
};
typedef IExternalConnection *LPEXTERNALCONNECTION;
typedef enum tagEXTCONN {
EXTCONN_STRONG = 0x1,
EXTCONN_WEAK = 0x2,
EXTCONN_CALLABLE = 0x4
} EXTCONN;
extern const GUID IID_IExternalConnection;
typedef struct IExternalConnectionVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IExternalConnection *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IExternalConnection *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IExternalConnection *This);
DWORD (__attribute__((__stdcall__)) *AddConnection)(
IExternalConnection *This,
DWORD extconn,
DWORD reserved);
DWORD (__attribute__((__stdcall__)) *ReleaseConnection)(
IExternalConnection *This,
DWORD extconn,
DWORD reserved,
WINBOOL fLastReleaseCloses);
} IExternalConnectionVtbl;
struct IExternalConnection {
IExternalConnectionVtbl* lpVtbl;
};
typedef IMultiQI *LPMULTIQI;
typedef struct tagMULTI_QI {
const IID *pIID;
IUnknown *pItf;
HRESULT hr;
} MULTI_QI;
extern const GUID IID_IMultiQI;
typedef struct IMultiQIVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMultiQI *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMultiQI *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMultiQI *This);
HRESULT (__attribute__((__stdcall__)) *QueryMultipleInterfaces)(
IMultiQI *This,
ULONG cMQIs,
MULTI_QI *pMQIs);
} IMultiQIVtbl;
struct IMultiQI {
IMultiQIVtbl* lpVtbl;
};
extern const GUID IID_AsyncIMultiQI;
typedef struct AsyncIMultiQIVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
AsyncIMultiQI *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
AsyncIMultiQI *This);
ULONG (__attribute__((__stdcall__)) *Release)(
AsyncIMultiQI *This);
HRESULT (__attribute__((__stdcall__)) *Begin_QueryMultipleInterfaces)(
AsyncIMultiQI *This,
ULONG cMQIs,
MULTI_QI *pMQIs);
HRESULT (__attribute__((__stdcall__)) *Finish_QueryMultipleInterfaces)(
AsyncIMultiQI *This,
MULTI_QI *pMQIs);
} AsyncIMultiQIVtbl;
struct AsyncIMultiQI {
AsyncIMultiQIVtbl* lpVtbl;
};
extern const GUID IID_IInternalUnknown;
typedef struct IInternalUnknownVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternalUnknown *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternalUnknown *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternalUnknown *This);
HRESULT (__attribute__((__stdcall__)) *QueryInternalInterface)(
IInternalUnknown *This,
const IID *const riid,
void **ppv);
} IInternalUnknownVtbl;
struct IInternalUnknown {
IInternalUnknownVtbl* lpVtbl;
};
typedef IEnumUnknown *LPENUMUNKNOWN;
extern const GUID IID_IEnumUnknown;
typedef struct IEnumUnknownVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumUnknown *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumUnknown *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumUnknown *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumUnknown *This,
ULONG celt,
IUnknown **rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumUnknown *This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumUnknown *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumUnknown *This,
IEnumUnknown **ppenum);
} IEnumUnknownVtbl;
struct IEnumUnknown {
IEnumUnknownVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumUnknown_RemoteNext_Proxy(
IEnumUnknown* This,
ULONG celt,
IUnknown **rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumUnknown_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumUnknown_Next_Proxy(
IEnumUnknown* This,
ULONG celt,
IUnknown **rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumUnknown_Next_Stub(
IEnumUnknown* This,
ULONG celt,
IUnknown **rgelt,
ULONG *pceltFetched);
typedef IEnumString *LPENUMSTRING;
extern const GUID IID_IEnumString;
typedef struct IEnumStringVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumString *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumString *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumString *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumString *This,
ULONG celt,
LPOLESTR *rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumString *This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumString *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumString *This,
IEnumString **ppenum);
} IEnumStringVtbl;
struct IEnumString {
IEnumStringVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumString_RemoteNext_Proxy(
IEnumString* This,
ULONG celt,
LPOLESTR *rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumString_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumString_Next_Proxy(
IEnumString* This,
ULONG celt,
LPOLESTR *rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumString_Next_Stub(
IEnumString* This,
ULONG celt,
LPOLESTR *rgelt,
ULONG *pceltFetched);
extern const GUID IID_ISequentialStream;
typedef struct ISequentialStreamVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISequentialStream *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISequentialStream *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISequentialStream *This);
HRESULT (__attribute__((__stdcall__)) *Read)(
ISequentialStream *This,
void *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT (__attribute__((__stdcall__)) *Write)(
ISequentialStream *This,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
} ISequentialStreamVtbl;
struct ISequentialStream {
ISequentialStreamVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ISequentialStream_RemoteRead_Proxy(
ISequentialStream* This,
byte *pv,
ULONG cb,
ULONG *pcbRead);
void __attribute__((__stdcall__)) ISequentialStream_RemoteRead_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ISequentialStream_RemoteWrite_Proxy(
ISequentialStream* This,
const byte *pv,
ULONG cb,
ULONG *pcbWritten);
void __attribute__((__stdcall__)) ISequentialStream_RemoteWrite_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ISequentialStream_Read_Proxy(
ISequentialStream* This,
void *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT __attribute__((__stdcall__)) ISequentialStream_Read_Stub(
ISequentialStream* This,
byte *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT __attribute__((__stdcall__)) ISequentialStream_Write_Proxy(
ISequentialStream* This,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT __attribute__((__stdcall__)) ISequentialStream_Write_Stub(
ISequentialStream* This,
const byte *pv,
ULONG cb,
ULONG *pcbWritten);
typedef IStream *LPSTREAM;
typedef struct tagSTATSTG {
LPOLESTR pwcsName;
DWORD type;
ULARGE_INTEGER cbSize;
FILETIME mtime;
FILETIME ctime;
FILETIME atime;
DWORD grfMode;
DWORD grfLocksSupported;
CLSID clsid;
DWORD grfStateBits;
DWORD reserved;
} STATSTG;
typedef enum tagSTGTY {
STGTY_STORAGE = 1,
STGTY_STREAM = 2,
STGTY_LOCKBYTES = 3,
STGTY_PROPERTY = 4
} STGTY;
typedef enum tagSTREAM_SEEK {
STREAM_SEEK_SET = 0,
STREAM_SEEK_CUR = 1,
STREAM_SEEK_END = 2
} STREAM_SEEK;
typedef enum tagLOCKTYPE {
LOCK_WRITE = 1,
LOCK_EXCLUSIVE = 2,
LOCK_ONLYONCE = 4
} LOCKTYPE;
extern const GUID IID_IStream;
typedef struct IStreamVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IStream *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IStream *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IStream *This);
HRESULT (__attribute__((__stdcall__)) *Read)(
IStream *This,
void *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT (__attribute__((__stdcall__)) *Write)(
IStream *This,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT (__attribute__((__stdcall__)) *Seek)(
IStream *This,
LARGE_INTEGER dlibMove,
DWORD dwOrigin,
ULARGE_INTEGER *plibNewPosition);
HRESULT (__attribute__((__stdcall__)) *SetSize)(
IStream *This,
ULARGE_INTEGER libNewSize);
HRESULT (__attribute__((__stdcall__)) *CopyTo)(
IStream *This,
IStream *pstm,
ULARGE_INTEGER cb,
ULARGE_INTEGER *pcbRead,
ULARGE_INTEGER *pcbWritten);
HRESULT (__attribute__((__stdcall__)) *Commit)(
IStream *This,
DWORD grfCommitFlags);
HRESULT (__attribute__((__stdcall__)) *Revert)(
IStream *This);
HRESULT (__attribute__((__stdcall__)) *LockRegion)(
IStream *This,
ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType);
HRESULT (__attribute__((__stdcall__)) *UnlockRegion)(
IStream *This,
ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType);
HRESULT (__attribute__((__stdcall__)) *Stat)(
IStream *This,
STATSTG *pstatstg,
DWORD grfStatFlag);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IStream *This,
IStream **ppstm);
} IStreamVtbl;
struct IStream {
IStreamVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IStream_RemoteSeek_Proxy(
IStream* This,
LARGE_INTEGER dlibMove,
DWORD dwOrigin,
ULARGE_INTEGER *plibNewPosition);
void __attribute__((__stdcall__)) IStream_RemoteSeek_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStream_RemoteCopyTo_Proxy(
IStream* This,
IStream *pstm,
ULARGE_INTEGER cb,
ULARGE_INTEGER *pcbRead,
ULARGE_INTEGER *pcbWritten);
void __attribute__((__stdcall__)) IStream_RemoteCopyTo_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStream_Seek_Proxy(
IStream* This,
LARGE_INTEGER dlibMove,
DWORD dwOrigin,
ULARGE_INTEGER *plibNewPosition);
HRESULT __attribute__((__stdcall__)) IStream_Seek_Stub(
IStream* This,
LARGE_INTEGER dlibMove,
DWORD dwOrigin,
ULARGE_INTEGER *plibNewPosition);
HRESULT __attribute__((__stdcall__)) IStream_CopyTo_Proxy(
IStream* This,
IStream *pstm,
ULARGE_INTEGER cb,
ULARGE_INTEGER *pcbRead,
ULARGE_INTEGER *pcbWritten);
HRESULT __attribute__((__stdcall__)) IStream_CopyTo_Stub(
IStream* This,
IStream *pstm,
ULARGE_INTEGER cb,
ULARGE_INTEGER *pcbRead,
ULARGE_INTEGER *pcbWritten);
typedef ULONG RPCOLEDATAREP;
typedef struct tagRPCOLEMESSAGE {
void *reserved1;
RPCOLEDATAREP dataRepresentation;
void *Buffer;
ULONG cbBuffer;
ULONG iMethod;
void * reserved2[5];
ULONG rpcFlags;
} RPCOLEMESSAGE;
typedef RPCOLEMESSAGE *PRPCOLEMESSAGE;
extern const GUID IID_IRpcChannelBuffer;
typedef struct IRpcChannelBufferVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRpcChannelBuffer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRpcChannelBuffer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRpcChannelBuffer *This);
HRESULT (__attribute__((__stdcall__)) *GetBuffer)(
IRpcChannelBuffer *This,
RPCOLEMESSAGE *pMessage,
const IID *const riid);
HRESULT (__attribute__((__stdcall__)) *SendReceive)(
IRpcChannelBuffer *This,
RPCOLEMESSAGE *pMessage,
ULONG *pStatus);
HRESULT (__attribute__((__stdcall__)) *FreeBuffer)(
IRpcChannelBuffer *This,
RPCOLEMESSAGE *pMessage);
HRESULT (__attribute__((__stdcall__)) *GetDestCtx)(
IRpcChannelBuffer *This,
DWORD *pdwDestContext,
void **ppvDestContext);
HRESULT (__attribute__((__stdcall__)) *IsConnected)(
IRpcChannelBuffer *This);
} IRpcChannelBufferVtbl;
struct IRpcChannelBuffer {
IRpcChannelBufferVtbl* lpVtbl;
};
extern const GUID IID_IRpcChannelBuffer2;
typedef struct IRpcChannelBuffer2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRpcChannelBuffer2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRpcChannelBuffer2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRpcChannelBuffer2 *This);
HRESULT (__attribute__((__stdcall__)) *GetBuffer)(
IRpcChannelBuffer2 *This,
RPCOLEMESSAGE *pMessage,
const IID *const riid);
HRESULT (__attribute__((__stdcall__)) *SendReceive)(
IRpcChannelBuffer2 *This,
RPCOLEMESSAGE *pMessage,
ULONG *pStatus);
HRESULT (__attribute__((__stdcall__)) *FreeBuffer)(
IRpcChannelBuffer2 *This,
RPCOLEMESSAGE *pMessage);
HRESULT (__attribute__((__stdcall__)) *GetDestCtx)(
IRpcChannelBuffer2 *This,
DWORD *pdwDestContext,
void **ppvDestContext);
HRESULT (__attribute__((__stdcall__)) *IsConnected)(
IRpcChannelBuffer2 *This);
HRESULT (__attribute__((__stdcall__)) *GetProtocolVersion)(
IRpcChannelBuffer2 *This,
DWORD *pdwVersion);
} IRpcChannelBuffer2Vtbl;
struct IRpcChannelBuffer2 {
IRpcChannelBuffer2Vtbl* lpVtbl;
};
extern const GUID IID_IAsyncRpcChannelBuffer;
typedef struct IAsyncRpcChannelBufferVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAsyncRpcChannelBuffer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAsyncRpcChannelBuffer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAsyncRpcChannelBuffer *This);
HRESULT (__attribute__((__stdcall__)) *GetBuffer)(
IAsyncRpcChannelBuffer *This,
RPCOLEMESSAGE *pMessage,
const IID *const riid);
HRESULT (__attribute__((__stdcall__)) *SendReceive)(
IAsyncRpcChannelBuffer *This,
RPCOLEMESSAGE *pMessage,
ULONG *pStatus);
HRESULT (__attribute__((__stdcall__)) *FreeBuffer)(
IAsyncRpcChannelBuffer *This,
RPCOLEMESSAGE *pMessage);
HRESULT (__attribute__((__stdcall__)) *GetDestCtx)(
IAsyncRpcChannelBuffer *This,
DWORD *pdwDestContext,
void **ppvDestContext);
HRESULT (__attribute__((__stdcall__)) *IsConnected)(
IAsyncRpcChannelBuffer *This);
HRESULT (__attribute__((__stdcall__)) *GetProtocolVersion)(
IAsyncRpcChannelBuffer *This,
DWORD *pdwVersion);
HRESULT (__attribute__((__stdcall__)) *Send)(
IAsyncRpcChannelBuffer *This,
RPCOLEMESSAGE *pMsg,
ISynchronize *pSync,
ULONG *pulStatus);
HRESULT (__attribute__((__stdcall__)) *Receive)(
IAsyncRpcChannelBuffer *This,
RPCOLEMESSAGE *pMsg,
ULONG *pulStatus);
HRESULT (__attribute__((__stdcall__)) *GetDestCtxEx)(
IAsyncRpcChannelBuffer *This,
RPCOLEMESSAGE *pMsg,
DWORD *pdwDestContext,
void **ppvDestContext);
} IAsyncRpcChannelBufferVtbl;
struct IAsyncRpcChannelBuffer {
IAsyncRpcChannelBufferVtbl* lpVtbl;
};
extern const GUID IID_IRpcChannelBuffer3;
typedef struct IRpcChannelBuffer3Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRpcChannelBuffer3 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRpcChannelBuffer3 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRpcChannelBuffer3 *This);
HRESULT (__attribute__((__stdcall__)) *GetBuffer)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMessage,
const IID *const riid);
HRESULT (__attribute__((__stdcall__)) *SendReceive)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMessage,
ULONG *pStatus);
HRESULT (__attribute__((__stdcall__)) *FreeBuffer)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMessage);
HRESULT (__attribute__((__stdcall__)) *GetDestCtx)(
IRpcChannelBuffer3 *This,
DWORD *pdwDestContext,
void **ppvDestContext);
HRESULT (__attribute__((__stdcall__)) *IsConnected)(
IRpcChannelBuffer3 *This);
HRESULT (__attribute__((__stdcall__)) *GetProtocolVersion)(
IRpcChannelBuffer3 *This,
DWORD *pdwVersion);
HRESULT (__attribute__((__stdcall__)) *Send)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMsg,
ULONG *pulStatus);
HRESULT (__attribute__((__stdcall__)) *Receive)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMsg,
ULONG ulSize,
ULONG *pulStatus);
HRESULT (__attribute__((__stdcall__)) *Cancel)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMsg);
HRESULT (__attribute__((__stdcall__)) *GetCallContext)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMsg,
const IID *const riid,
void **pInterface);
HRESULT (__attribute__((__stdcall__)) *GetDestCtxEx)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMsg,
DWORD *pdwDestContext,
void **ppvDestContext);
HRESULT (__attribute__((__stdcall__)) *GetState)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMsg,
DWORD *pState);
HRESULT (__attribute__((__stdcall__)) *RegisterAsync)(
IRpcChannelBuffer3 *This,
RPCOLEMESSAGE *pMsg,
IAsyncManager *pAsyncMgr);
} IRpcChannelBuffer3Vtbl;
struct IRpcChannelBuffer3 {
IRpcChannelBuffer3Vtbl* lpVtbl;
};
extern const GUID IID_IRpcSyntaxNegotiate;
typedef struct IRpcSyntaxNegotiateVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRpcSyntaxNegotiate *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRpcSyntaxNegotiate *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRpcSyntaxNegotiate *This);
HRESULT (__attribute__((__stdcall__)) *NegotiateSyntax)(
IRpcSyntaxNegotiate *This,
RPCOLEMESSAGE *pMsg);
} IRpcSyntaxNegotiateVtbl;
struct IRpcSyntaxNegotiate {
IRpcSyntaxNegotiateVtbl* lpVtbl;
};
extern const GUID IID_IRpcProxyBuffer;
typedef struct IRpcProxyBufferVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRpcProxyBuffer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRpcProxyBuffer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRpcProxyBuffer *This);
HRESULT (__attribute__((__stdcall__)) *Connect)(
IRpcProxyBuffer *This,
IRpcChannelBuffer *pRpcChannelBuffer);
void (__attribute__((__stdcall__)) *Disconnect)(
IRpcProxyBuffer *This);
} IRpcProxyBufferVtbl;
struct IRpcProxyBuffer {
IRpcProxyBufferVtbl* lpVtbl;
};
extern const GUID IID_IRpcStubBuffer;
typedef struct IRpcStubBufferVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRpcStubBuffer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRpcStubBuffer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRpcStubBuffer *This);
HRESULT (__attribute__((__stdcall__)) *Connect)(
IRpcStubBuffer *This,
IUnknown *pUnkServer);
void (__attribute__((__stdcall__)) *Disconnect)(
IRpcStubBuffer *This);
HRESULT (__attribute__((__stdcall__)) *Invoke)(
IRpcStubBuffer *This,
RPCOLEMESSAGE *_prpcmsg,
IRpcChannelBuffer *_pRpcChannelBuffer);
IRpcStubBuffer * (__attribute__((__stdcall__)) *IsIIDSupported)(
IRpcStubBuffer *This,
const IID *const riid);
ULONG (__attribute__((__stdcall__)) *CountRefs)(
IRpcStubBuffer *This);
HRESULT (__attribute__((__stdcall__)) *DebugServerQueryInterface)(
IRpcStubBuffer *This,
void **ppv);
void (__attribute__((__stdcall__)) *DebugServerRelease)(
IRpcStubBuffer *This,
void *pv);
} IRpcStubBufferVtbl;
struct IRpcStubBuffer {
IRpcStubBufferVtbl* lpVtbl;
};
extern const GUID IID_IPSFactoryBuffer;
typedef struct IPSFactoryBufferVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPSFactoryBuffer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPSFactoryBuffer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPSFactoryBuffer *This);
HRESULT (__attribute__((__stdcall__)) *CreateProxy)(
IPSFactoryBuffer *This,
IUnknown *pUnkOuter,
const IID *const riid,
IRpcProxyBuffer **ppProxy,
void **ppv);
HRESULT (__attribute__((__stdcall__)) *CreateStub)(
IPSFactoryBuffer *This,
const IID *const riid,
IUnknown *pUnkServer,
IRpcStubBuffer **ppStub);
} IPSFactoryBufferVtbl;
struct IPSFactoryBuffer {
IPSFactoryBufferVtbl* lpVtbl;
};
typedef struct SChannelHookCallInfo {
IID iid;
DWORD cbSize;
GUID uCausality;
DWORD dwServerPid;
DWORD iMethod;
void *pObject;
} SChannelHookCallInfo;
extern const GUID IID_IChannelHook;
typedef struct IChannelHookVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IChannelHook *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IChannelHook *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IChannelHook *This);
void (__attribute__((__stdcall__)) *ClientGetSize)(
IChannelHook *This,
const GUID *const uExtent,
const IID *const riid,
ULONG *pDataSize);
void (__attribute__((__stdcall__)) *ClientFillBuffer)(
IChannelHook *This,
const GUID *const uExtent,
const IID *const riid,
ULONG *pDataSize,
void *pDataBuffer);
void (__attribute__((__stdcall__)) *ClientNotify)(
IChannelHook *This,
const GUID *const uExtent,
const IID *const riid,
ULONG cbDataSize,
void *pDataBuffer,
DWORD lDataRep,
HRESULT hrFault);
void (__attribute__((__stdcall__)) *ServerNotify)(
IChannelHook *This,
const GUID *const uExtent,
const IID *const riid,
ULONG cbDataSize,
void *pDataBuffer,
DWORD lDataRep);
void (__attribute__((__stdcall__)) *ServerGetSize)(
IChannelHook *This,
const GUID *const uExtent,
const IID *const riid,
HRESULT hrFault,
ULONG *pDataSize);
void (__attribute__((__stdcall__)) *ServerFillBuffer)(
IChannelHook *This,
const GUID *const uExtent,
const IID *const riid,
ULONG *pDataSize,
void *pDataBuffer,
HRESULT hrFault);
} IChannelHookVtbl;
struct IChannelHook {
IChannelHookVtbl* lpVtbl;
};
typedef struct tagSOLE_AUTHENTICATION_SERVICE {
DWORD dwAuthnSvc;
DWORD dwAuthzSvc;
OLECHAR *pPrincipalName;
HRESULT hr;
} SOLE_AUTHENTICATION_SERVICE;
typedef SOLE_AUTHENTICATION_SERVICE *PSOLE_AUTHENTICATION_SERVICE;
typedef enum tagEOLE_AUTHENTICATION_CAPABILITIES {
EOAC_NONE = 0x0,
EOAC_MUTUAL_AUTH = 0x1,
EOAC_STATIC_CLOAKING = 0x20,
EOAC_DYNAMIC_CLOAKING = 0x40,
EOAC_ANY_AUTHORITY = 0x80,
EOAC_MAKE_FULLSIC = 0x100,
EOAC_DEFAULT = 0x800,
EOAC_SECURE_REFS = 0x2,
EOAC_ACCESS_CONTROL = 0x4,
EOAC_APPID = 0x8,
EOAC_DYNAMIC = 0x10,
EOAC_REQUIRE_FULLSIC = 0x200,
EOAC_AUTO_IMPERSONATE = 0x400,
EOAC_NO_CUSTOM_MARSHAL = 0x2000,
EOAC_DISABLE_AAA = 0x1000
} EOLE_AUTHENTICATION_CAPABILITIES;
typedef struct tagSOLE_AUTHENTICATION_INFO {
DWORD dwAuthnSvc;
DWORD dwAuthzSvc;
void *pAuthInfo;
} SOLE_AUTHENTICATION_INFO;
typedef struct tagSOLE_AUTHENTICATION_INFO *PSOLE_AUTHENTICATION_INFO;
typedef struct tagSOLE_AUTHENTICATION_LIST {
DWORD cAuthInfo;
SOLE_AUTHENTICATION_INFO *aAuthInfo;
} SOLE_AUTHENTICATION_LIST;
typedef struct tagSOLE_AUTHENTICATION_LIST *PSOLE_AUTHENTICATION_LIST;
extern const GUID IID_IClientSecurity;
typedef struct IClientSecurityVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IClientSecurity *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IClientSecurity *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IClientSecurity *This);
HRESULT (__attribute__((__stdcall__)) *QueryBlanket)(
IClientSecurity *This,
IUnknown *pProxy,
DWORD *pAuthnSvc,
DWORD *pAuthzSvc,
OLECHAR **pServerPrincName,
DWORD *pAuthnLevel,
DWORD *pImpLevel,
void **pAuthInfo,
DWORD *pCapabilites);
HRESULT (__attribute__((__stdcall__)) *SetBlanket)(
IClientSecurity *This,
IUnknown *pProxy,
DWORD dwAuthnSvc,
DWORD dwAuthzSvc,
OLECHAR *pServerPrincName,
DWORD dwAuthnLevel,
DWORD dwImpLevel,
void *pAuthInfo,
DWORD dwCapabilities);
HRESULT (__attribute__((__stdcall__)) *CopyProxy)(
IClientSecurity *This,
IUnknown *pProxy,
IUnknown **ppCopy);
} IClientSecurityVtbl;
struct IClientSecurity {
IClientSecurityVtbl* lpVtbl;
};
extern const GUID IID_IServerSecurity;
typedef struct IServerSecurityVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IServerSecurity *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IServerSecurity *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IServerSecurity *This);
HRESULT (__attribute__((__stdcall__)) *QueryBlanket)(
IServerSecurity *This,
DWORD *pAuthnSvc,
DWORD *pAuthzSvc,
OLECHAR **pServerPrincName,
DWORD *pAuthnLevel,
DWORD *pImpLevel,
void **pPrivs,
DWORD *pCapabilities);
HRESULT (__attribute__((__stdcall__)) *ImpersonateClient)(
IServerSecurity *This);
HRESULT (__attribute__((__stdcall__)) *RevertToSelf)(
IServerSecurity *This);
WINBOOL (__attribute__((__stdcall__)) *IsImpersonating)(
IServerSecurity *This);
} IServerSecurityVtbl;
struct IServerSecurity {
IServerSecurityVtbl* lpVtbl;
};
typedef enum tagRPCOPT_PROPERTIES {
COMBND_RPCTIMEOUT = 0x1,
COMBND_SERVER_LOCALITY = 0x2,
COMBND_RESERVED1 = 0x4
} RPCOPT_PROPERTIES;
typedef enum tagRPCOPT_SERVER_LOCALITY_VALUES {
SERVER_LOCALITY_PROCESS_LOCAL = 0,
SERVER_LOCALITY_MACHINE_LOCAL = 1,
SERVER_LOCALITY_REMOTE = 2
} RPCOPT_SERVER_LOCALITY_VALUES;
extern const GUID IID_IRpcOptions;
typedef struct IRpcOptionsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRpcOptions *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRpcOptions *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRpcOptions *This);
HRESULT (__attribute__((__stdcall__)) *Set)(
IRpcOptions *This,
IUnknown *pPrx,
RPCOPT_PROPERTIES dwProperty,
ULONG_PTR dwValue);
HRESULT (__attribute__((__stdcall__)) *Query)(
IRpcOptions *This,
IUnknown *pPrx,
RPCOPT_PROPERTIES dwProperty,
ULONG_PTR *pdwValue);
} IRpcOptionsVtbl;
struct IRpcOptions {
IRpcOptionsVtbl* lpVtbl;
};
typedef enum tagGLOBALOPT_PROPERTIES {
COMGLB_EXCEPTION_HANDLING = 1,
COMGLB_APPID = 2,
COMGLB_RPC_THREADPOOL_SETTING = 3,
COMGLB_RO_SETTINGS = 4,
COMGLB_UNMARSHALING_POLICY = 5
} GLOBALOPT_PROPERTIES;
typedef enum tagGLOBALOPT_EH_VALUES {
COMGLB_EXCEPTION_HANDLE = 0,
COMGLB_EXCEPTION_DONOT_HANDLE_FATAL = 1,
COMGLB_EXCEPTION_DONOT_HANDLE = COMGLB_EXCEPTION_DONOT_HANDLE_FATAL,
COMGLB_EXCEPTION_DONOT_HANDLE_ANY = 2
} GLOBALOPT_EH_VALUES;
typedef enum tagGLOBALOPT_RPCTP_VALUES {
COMGLB_RPC_THREADPOOL_SETTING_DEFAULT_POOL = 0,
COMGLB_RPC_THREADPOOL_SETTING_PRIVATE_POOL = 1
} GLOBALOPT_RPCTP_VALUES;
typedef enum tagGLOBALOPT_RO_FLAGS {
COMGLB_STA_MODALLOOP_REMOVE_TOUCH_MESSAGES = 0x1,
COMGLB_STA_MODALLOOP_SHARED_QUEUE_REMOVE_INPUT_MESSAGES = 0x2,
COMGLB_STA_MODALLOOP_SHARED_QUEUE_DONOT_REMOVE_INPUT_MESSAGES = 0x4,
COMGLB_FAST_RUNDOWN = 0x8,
COMGLB_RESERVED1 = 0x10,
COMGLB_RESERVED2 = 0x20,
COMGLB_RESERVED3 = 0x40,
COMGLB_STA_MODALLOOP_SHARED_QUEUE_REORDER_POINTER_MESSAGES = 0x80
} GLOBALOPT_RO_FLAGS;
typedef enum tagGLOBALOPT_UNMARSHALING_POLICY_VALUES {
COMGLB_UNMARSHALING_POLICY_NORMAL = 0,
COMGLB_UNMARSHALING_POLICY_STRONG = 1,
COMGLB_UNMARSHALING_POLICY_HYBRID = 2
} GLOBALOPT_UNMARSHALING_POLICY_VALUES;
extern const GUID IID_IGlobalOptions;
typedef struct IGlobalOptionsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IGlobalOptions *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IGlobalOptions *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IGlobalOptions *This);
HRESULT (__attribute__((__stdcall__)) *Set)(
IGlobalOptions *This,
GLOBALOPT_PROPERTIES dwProperty,
ULONG_PTR dwValue);
HRESULT (__attribute__((__stdcall__)) *Query)(
IGlobalOptions *This,
GLOBALOPT_PROPERTIES dwProperty,
ULONG_PTR *pdwValue);
} IGlobalOptionsVtbl;
struct IGlobalOptions {
IGlobalOptionsVtbl* lpVtbl;
};
typedef ISurrogate *LPSURROGATE;
extern const GUID IID_ISurrogate;
typedef struct ISurrogateVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISurrogate *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISurrogate *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISurrogate *This);
HRESULT (__attribute__((__stdcall__)) *LoadDllServer)(
ISurrogate *This,
const IID *const Clsid);
HRESULT (__attribute__((__stdcall__)) *FreeSurrogate)(
ISurrogate *This);
} ISurrogateVtbl;
struct ISurrogate {
ISurrogateVtbl* lpVtbl;
};
typedef IGlobalInterfaceTable *LPGLOBALINTERFACETABLE;
extern const GUID IID_IGlobalInterfaceTable;
typedef struct IGlobalInterfaceTableVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IGlobalInterfaceTable *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IGlobalInterfaceTable *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IGlobalInterfaceTable *This);
HRESULT (__attribute__((__stdcall__)) *RegisterInterfaceInGlobal)(
IGlobalInterfaceTable *This,
IUnknown *pUnk,
const IID *const riid,
DWORD *pdwCookie);
HRESULT (__attribute__((__stdcall__)) *RevokeInterfaceFromGlobal)(
IGlobalInterfaceTable *This,
DWORD dwCookie);
HRESULT (__attribute__((__stdcall__)) *GetInterfaceFromGlobal)(
IGlobalInterfaceTable *This,
DWORD dwCookie,
const IID *const riid,
void **ppv);
} IGlobalInterfaceTableVtbl;
struct IGlobalInterfaceTable {
IGlobalInterfaceTableVtbl* lpVtbl;
};
extern const GUID IID_ISynchronize;
typedef struct ISynchronizeVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISynchronize *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISynchronize *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISynchronize *This);
HRESULT (__attribute__((__stdcall__)) *Wait)(
ISynchronize *This,
DWORD dwFlags,
DWORD dwMilliseconds);
HRESULT (__attribute__((__stdcall__)) *Signal)(
ISynchronize *This);
HRESULT (__attribute__((__stdcall__)) *Reset)(
ISynchronize *This);
} ISynchronizeVtbl;
struct ISynchronize {
ISynchronizeVtbl* lpVtbl;
};
extern const GUID IID_ISynchronizeHandle;
typedef struct ISynchronizeHandleVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISynchronizeHandle *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISynchronizeHandle *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISynchronizeHandle *This);
HRESULT (__attribute__((__stdcall__)) *GetHandle)(
ISynchronizeHandle *This,
HANDLE *ph);
} ISynchronizeHandleVtbl;
struct ISynchronizeHandle {
ISynchronizeHandleVtbl* lpVtbl;
};
extern const GUID IID_ISynchronizeEvent;
typedef struct ISynchronizeEventVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISynchronizeEvent *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISynchronizeEvent *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISynchronizeEvent *This);
HRESULT (__attribute__((__stdcall__)) *GetHandle)(
ISynchronizeEvent *This,
HANDLE *ph);
HRESULT (__attribute__((__stdcall__)) *SetEventHandle)(
ISynchronizeEvent *This,
HANDLE *ph);
} ISynchronizeEventVtbl;
struct ISynchronizeEvent {
ISynchronizeEventVtbl* lpVtbl;
};
extern const GUID IID_ISynchronizeContainer;
typedef struct ISynchronizeContainerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISynchronizeContainer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISynchronizeContainer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISynchronizeContainer *This);
HRESULT (__attribute__((__stdcall__)) *AddSynchronize)(
ISynchronizeContainer *This,
ISynchronize *pSync);
HRESULT (__attribute__((__stdcall__)) *WaitMultiple)(
ISynchronizeContainer *This,
DWORD dwFlags,
DWORD dwTimeOut,
ISynchronize **ppSync);
} ISynchronizeContainerVtbl;
struct ISynchronizeContainer {
ISynchronizeContainerVtbl* lpVtbl;
};
extern const GUID IID_ISynchronizeMutex;
typedef struct ISynchronizeMutexVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISynchronizeMutex *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISynchronizeMutex *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISynchronizeMutex *This);
HRESULT (__attribute__((__stdcall__)) *Wait)(
ISynchronizeMutex *This,
DWORD dwFlags,
DWORD dwMilliseconds);
HRESULT (__attribute__((__stdcall__)) *Signal)(
ISynchronizeMutex *This);
HRESULT (__attribute__((__stdcall__)) *Reset)(
ISynchronizeMutex *This);
HRESULT (__attribute__((__stdcall__)) *ReleaseMutex)(
ISynchronizeMutex *This);
} ISynchronizeMutexVtbl;
struct ISynchronizeMutex {
ISynchronizeMutexVtbl* lpVtbl;
};
typedef ICancelMethodCalls *LPCANCELMETHODCALLS;
extern const GUID IID_ICancelMethodCalls;
typedef struct ICancelMethodCallsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICancelMethodCalls *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICancelMethodCalls *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICancelMethodCalls *This);
HRESULT (__attribute__((__stdcall__)) *Cancel)(
ICancelMethodCalls *This,
ULONG ulSeconds);
HRESULT (__attribute__((__stdcall__)) *TestCancel)(
ICancelMethodCalls *This);
} ICancelMethodCallsVtbl;
struct ICancelMethodCalls {
ICancelMethodCallsVtbl* lpVtbl;
};
typedef enum tagDCOM_CALL_STATE {
DCOM_NONE = 0x0,
DCOM_CALL_COMPLETE = 0x1,
DCOM_CALL_CANCELED = 0x2
} DCOM_CALL_STATE;
extern const GUID IID_IAsyncManager;
typedef struct IAsyncManagerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAsyncManager *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAsyncManager *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAsyncManager *This);
HRESULT (__attribute__((__stdcall__)) *CompleteCall)(
IAsyncManager *This,
HRESULT Result);
HRESULT (__attribute__((__stdcall__)) *GetCallContext)(
IAsyncManager *This,
const IID *const riid,
void **pInterface);
HRESULT (__attribute__((__stdcall__)) *GetState)(
IAsyncManager *This,
ULONG *pulStateFlags);
} IAsyncManagerVtbl;
struct IAsyncManager {
IAsyncManagerVtbl* lpVtbl;
};
extern const GUID IID_ICallFactory;
typedef struct ICallFactoryVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICallFactory *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICallFactory *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICallFactory *This);
HRESULT (__attribute__((__stdcall__)) *CreateCall)(
ICallFactory *This,
const IID *const riid,
IUnknown *pCtrlUnk,
const IID *const riid2,
IUnknown **ppv);
} ICallFactoryVtbl;
struct ICallFactory {
ICallFactoryVtbl* lpVtbl;
};
extern const GUID IID_IRpcHelper;
typedef struct IRpcHelperVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRpcHelper *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRpcHelper *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRpcHelper *This);
HRESULT (__attribute__((__stdcall__)) *GetDCOMProtocolVersion)(
IRpcHelper *This,
DWORD *pComVersion);
HRESULT (__attribute__((__stdcall__)) *GetIIDFromOBJREF)(
IRpcHelper *This,
void *pObjRef,
IID **piid);
} IRpcHelperVtbl;
struct IRpcHelper {
IRpcHelperVtbl* lpVtbl;
};
extern const GUID IID_IReleaseMarshalBuffers;
typedef struct IReleaseMarshalBuffersVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IReleaseMarshalBuffers *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IReleaseMarshalBuffers *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IReleaseMarshalBuffers *This);
HRESULT (__attribute__((__stdcall__)) *ReleaseMarshalBuffer)(
IReleaseMarshalBuffers *This,
RPCOLEMESSAGE *pMsg,
DWORD dwFlags,
IUnknown *pChnl);
} IReleaseMarshalBuffersVtbl;
struct IReleaseMarshalBuffers {
IReleaseMarshalBuffersVtbl* lpVtbl;
};
extern const GUID IID_IWaitMultiple;
typedef struct IWaitMultipleVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IWaitMultiple *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IWaitMultiple *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IWaitMultiple *This);
HRESULT (__attribute__((__stdcall__)) *WaitMultiple)(
IWaitMultiple *This,
DWORD timeout,
ISynchronize **pSync);
HRESULT (__attribute__((__stdcall__)) *AddSynchronize)(
IWaitMultiple *This,
ISynchronize *pSync);
} IWaitMultipleVtbl;
struct IWaitMultiple {
IWaitMultipleVtbl* lpVtbl;
};
typedef IAddrTrackingControl *LPADDRTRACKINGCONTROL;
extern const GUID IID_IAddrTrackingControl;
typedef struct IAddrTrackingControlVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAddrTrackingControl *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAddrTrackingControl *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAddrTrackingControl *This);
HRESULT (__attribute__((__stdcall__)) *EnableCOMDynamicAddrTracking)(
IAddrTrackingControl *This);
HRESULT (__attribute__((__stdcall__)) *DisableCOMDynamicAddrTracking)(
IAddrTrackingControl *This);
} IAddrTrackingControlVtbl;
struct IAddrTrackingControl {
IAddrTrackingControlVtbl* lpVtbl;
};
typedef IAddrExclusionControl *LPADDREXCLUSIONCONTROL;
extern const GUID IID_IAddrExclusionControl;
typedef struct IAddrExclusionControlVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAddrExclusionControl *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAddrExclusionControl *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAddrExclusionControl *This);
HRESULT (__attribute__((__stdcall__)) *GetCurrentAddrExclusionList)(
IAddrExclusionControl *This,
const IID *const riid,
void **ppEnumerator);
HRESULT (__attribute__((__stdcall__)) *UpdateAddrExclusionList)(
IAddrExclusionControl *This,
IUnknown *pEnumerator);
} IAddrExclusionControlVtbl;
struct IAddrExclusionControl {
IAddrExclusionControlVtbl* lpVtbl;
};
extern const GUID IID_IPipeByte;
typedef struct IPipeByteVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPipeByte *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPipeByte *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPipeByte *This);
HRESULT (__attribute__((__stdcall__)) *Pull)(
IPipeByte *This,
BYTE *buf,
ULONG cRequest,
ULONG *pcReturned);
HRESULT (__attribute__((__stdcall__)) *Push)(
IPipeByte *This,
BYTE *buf,
ULONG cSent);
} IPipeByteVtbl;
struct IPipeByte {
IPipeByteVtbl* lpVtbl;
};
extern const GUID IID_IPipeLong;
typedef struct IPipeLongVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPipeLong *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPipeLong *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPipeLong *This);
HRESULT (__attribute__((__stdcall__)) *Pull)(
IPipeLong *This,
LONG *buf,
ULONG cRequest,
ULONG *pcReturned);
HRESULT (__attribute__((__stdcall__)) *Push)(
IPipeLong *This,
LONG *buf,
ULONG cSent);
} IPipeLongVtbl;
struct IPipeLong {
IPipeLongVtbl* lpVtbl;
};
extern const GUID IID_IPipeDouble;
typedef struct IPipeDoubleVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPipeDouble *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPipeDouble *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPipeDouble *This);
HRESULT (__attribute__((__stdcall__)) *Pull)(
IPipeDouble *This,
DOUBLE *buf,
ULONG cRequest,
ULONG *pcReturned);
HRESULT (__attribute__((__stdcall__)) *Push)(
IPipeDouble *This,
DOUBLE *buf,
ULONG cSent);
} IPipeDoubleVtbl;
struct IPipeDouble {
IPipeDoubleVtbl* lpVtbl;
};
typedef enum _APTTYPEQUALIFIER {
APTTYPEQUALIFIER_NONE = 0,
APTTYPEQUALIFIER_IMPLICIT_MTA = 1,
APTTYPEQUALIFIER_NA_ON_MTA = 2,
APTTYPEQUALIFIER_NA_ON_STA = 3,
APTTYPEQUALIFIER_NA_ON_IMPLICIT_MTA = 4,
APTTYPEQUALIFIER_NA_ON_MAINSTA = 5,
APTTYPEQUALIFIER_APPLICATION_STA = 6
} APTTYPEQUALIFIER;
typedef enum _APTTYPE {
APTTYPE_CURRENT = -1,
APTTYPE_STA = 0,
APTTYPE_MTA = 1,
APTTYPE_NA = 2,
APTTYPE_MAINSTA = 3
} APTTYPE;
typedef enum _THDTYPE {
THDTYPE_BLOCKMESSAGES = 0,
THDTYPE_PROCESSMESSAGES = 1
} THDTYPE;
typedef DWORD APARTMENTID;
extern const GUID IID_IComThreadingInfo;
typedef struct IComThreadingInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IComThreadingInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IComThreadingInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IComThreadingInfo *This);
HRESULT (__attribute__((__stdcall__)) *GetCurrentApartmentType)(
IComThreadingInfo *This,
APTTYPE *pAptType);
HRESULT (__attribute__((__stdcall__)) *GetCurrentThreadType)(
IComThreadingInfo *This,
THDTYPE *pThreadType);
HRESULT (__attribute__((__stdcall__)) *GetCurrentLogicalThreadId)(
IComThreadingInfo *This,
GUID *pguidLogicalThreadId);
HRESULT (__attribute__((__stdcall__)) *SetCurrentLogicalThreadId)(
IComThreadingInfo *This,
const GUID *const rguid);
} IComThreadingInfoVtbl;
struct IComThreadingInfo {
IComThreadingInfoVtbl* lpVtbl;
};
extern const GUID IID_IProcessInitControl;
typedef struct IProcessInitControlVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IProcessInitControl *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IProcessInitControl *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IProcessInitControl *This);
HRESULT (__attribute__((__stdcall__)) *ResetInitializerTimeout)(
IProcessInitControl *This,
DWORD dwSecondsRemaining);
} IProcessInitControlVtbl;
struct IProcessInitControl {
IProcessInitControlVtbl* lpVtbl;
};
extern const GUID IID_IFastRundown;
typedef struct IFastRundownVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IFastRundown *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IFastRundown *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IFastRundown *This);
} IFastRundownVtbl;
struct IFastRundown {
IFastRundownVtbl* lpVtbl;
};
typedef enum CO_MARSHALING_CONTEXT_ATTRIBUTES {
CO_MARSHALING_SOURCE_IS_APP_CONTAINER = 0
} CO_MARSHALING_CONTEXT_ATTRIBUTES;
extern const GUID IID_IMarshalingStream;
typedef struct IMarshalingStreamVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMarshalingStream *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMarshalingStream *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMarshalingStream *This);
HRESULT (__attribute__((__stdcall__)) *Read)(
IMarshalingStream *This,
void *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT (__attribute__((__stdcall__)) *Write)(
IMarshalingStream *This,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT (__attribute__((__stdcall__)) *Seek)(
IMarshalingStream *This,
LARGE_INTEGER dlibMove,
DWORD dwOrigin,
ULARGE_INTEGER *plibNewPosition);
HRESULT (__attribute__((__stdcall__)) *SetSize)(
IMarshalingStream *This,
ULARGE_INTEGER libNewSize);
HRESULT (__attribute__((__stdcall__)) *CopyTo)(
IMarshalingStream *This,
IStream *pstm,
ULARGE_INTEGER cb,
ULARGE_INTEGER *pcbRead,
ULARGE_INTEGER *pcbWritten);
HRESULT (__attribute__((__stdcall__)) *Commit)(
IMarshalingStream *This,
DWORD grfCommitFlags);
HRESULT (__attribute__((__stdcall__)) *Revert)(
IMarshalingStream *This);
HRESULT (__attribute__((__stdcall__)) *LockRegion)(
IMarshalingStream *This,
ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType);
HRESULT (__attribute__((__stdcall__)) *UnlockRegion)(
IMarshalingStream *This,
ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType);
HRESULT (__attribute__((__stdcall__)) *Stat)(
IMarshalingStream *This,
STATSTG *pstatstg,
DWORD grfStatFlag);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IMarshalingStream *This,
IStream **ppstm);
HRESULT (__attribute__((__stdcall__)) *GetMarshalingContextAttribute)(
IMarshalingStream *This,
CO_MARSHALING_CONTEXT_ATTRIBUTES attribute,
ULONG_PTR *pAttributeValue);
} IMarshalingStreamVtbl;
struct IMarshalingStream {
IMarshalingStreamVtbl* lpVtbl;
};
extern const GUID IID_ICallbackWithNoReentrancyToApplicationSTA;
extern const IID GUID_NULL;
extern const IID CATID_MARSHALER;
extern const IID IID_IRpcChannel;
extern const IID IID_IRpcStub;
extern const IID IID_IStubManager;
extern const IID IID_IRpcProxy;
extern const IID IID_IProxyManager;
extern const IID IID_IPSFactory;
extern const IID IID_IInternalMoniker;
extern const IID IID_IDfReserved1;
extern const IID IID_IDfReserved2;
extern const IID IID_IDfReserved3;
extern const CLSID CLSID_StdMarshal;
extern const CLSID CLSID_AggStdMarshal;
extern const CLSID CLSID_StdAsyncActManager;
extern const IID IID_IStub;
extern const IID IID_IProxy;
extern const IID IID_IEnumGeneric;
extern const IID IID_IEnumHolder;
extern const IID IID_IEnumCallback;
extern const IID IID_IOleManager;
extern const IID IID_IOlePresObj;
extern const IID IID_IDebug;
extern const IID IID_IDebugStream;
extern const CLSID CLSID_PSGenObject;
extern const CLSID CLSID_PSClientSite;
extern const CLSID CLSID_PSClassObject;
extern const CLSID CLSID_PSInPlaceActive;
extern const CLSID CLSID_PSInPlaceFrame;
extern const CLSID CLSID_PSDragDrop;
extern const CLSID CLSID_PSBindCtx;
extern const CLSID CLSID_PSEnumerators;
extern const CLSID CLSID_StaticMetafile;
extern const CLSID CLSID_StaticDib;
extern const CLSID CID_CDfsVolume;
extern const CLSID CLSID_DCOMAccessControl;
extern const CLSID CLSID_GlobalOptions;
extern const CLSID CLSID_StdGlobalInterfaceTable;
extern const CLSID CLSID_ComBinding;
extern const CLSID CLSID_StdEvent;
extern const CLSID CLSID_ManualResetEvent;
extern const CLSID CLSID_SynchronizeContainer;
extern const CLSID CLSID_AddrControl;
extern const CLSID CLSID_CCDFormKrnl;
extern const CLSID CLSID_CCDPropertyPage;
extern const CLSID CLSID_CCDFormDialog;
extern const CLSID CLSID_CCDCommandButton;
extern const CLSID CLSID_CCDComboBox;
extern const CLSID CLSID_CCDTextBox;
extern const CLSID CLSID_CCDCheckBox;
extern const CLSID CLSID_CCDLabel;
extern const CLSID CLSID_CCDOptionButton;
extern const CLSID CLSID_CCDListBox;
extern const CLSID CLSID_CCDScrollBar;
extern const CLSID CLSID_CCDGroupBox;
extern const CLSID CLSID_CCDGeneralPropertyPage;
extern const CLSID CLSID_CCDGenericPropertyPage;
extern const CLSID CLSID_CCDFontPropertyPage;
extern const CLSID CLSID_CCDColorPropertyPage;
extern const CLSID CLSID_CCDLabelPropertyPage;
extern const CLSID CLSID_CCDCheckBoxPropertyPage;
extern const CLSID CLSID_CCDTextBoxPropertyPage;
extern const CLSID CLSID_CCDOptionButtonPropertyPage;
extern const CLSID CLSID_CCDListBoxPropertyPage;
extern const CLSID CLSID_CCDCommandButtonPropertyPage;
extern const CLSID CLSID_CCDComboBoxPropertyPage;
extern const CLSID CLSID_CCDScrollBarPropertyPage;
extern const CLSID CLSID_CCDGroupBoxPropertyPage;
extern const CLSID CLSID_CCDXObjectPropertyPage;
extern const CLSID CLSID_CStdPropertyFrame;
extern const CLSID CLSID_CFormPropertyPage;
extern const CLSID CLSID_CGridPropertyPage;
extern const CLSID CLSID_CWSJArticlePage;
extern const CLSID CLSID_CSystemPage;
extern const CLSID CLSID_IdentityUnmarshal;
extern const CLSID CLSID_InProcFreeMarshaler;
extern const CLSID CLSID_Picture_Metafile;
extern const CLSID CLSID_Picture_EnhMetafile;
extern const CLSID CLSID_Picture_Dib;
extern const GUID GUID_TRISTATE;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateStreamOnHGlobal (HGLOBAL hGlobal, WINBOOL fDeleteOnRelease, LPSTREAM *ppstm);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetHGlobalFromStream (LPSTREAM pstm, HGLOBAL *phglobal);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) CoUninitialize (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoInitializeEx (LPVOID pvReserved, DWORD dwCoInit);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetCurrentLogicalThreadId (GUID *pguid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetContextToken (ULONG_PTR *pToken);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetObjectContext (const IID *const riid, LPVOID *ppv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRegisterClassObject (const IID *const rclsid, LPUNKNOWN pUnk, DWORD dwClsContext, DWORD flags, LPDWORD lpdwRegister);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRevokeClassObject (DWORD dwRegister);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoResumeClassObjects (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoSuspendClassObjects (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetMalloc (DWORD dwMemContext, LPMALLOC *ppMalloc);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CoGetCurrentProcess (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetCallerTID (LPDWORD lpdwTID);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetDefaultContext (APTTYPE aptType, const IID *const riid, void **ppv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetClassObject (const IID *const rclsid, DWORD dwClsContext, LPVOID pvReserved, const IID *const riid, LPVOID *ppv);
extern __attribute__((dllimport)) ULONG __attribute__((__stdcall__)) CoAddRefServerProcess (void);
extern __attribute__((dllimport)) ULONG __attribute__((__stdcall__)) CoReleaseServerProcess (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetPSClsid (const IID *const riid, CLSID *pClsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRegisterPSClsid (const IID *const riid, const IID *const rclsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRegisterSurrogate (LPSURROGATE pSurrogate);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoMarshalHresult (LPSTREAM pstm, HRESULT hresult);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoUnmarshalHresult (LPSTREAM pstm, HRESULT *phresult);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoLockObjectExternal (LPUNKNOWN pUnk, WINBOOL fLock, WINBOOL fLastUnlockReleases);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetStdMarshalEx (LPUNKNOWN pUnkOuter, DWORD smexflags, LPUNKNOWN *ppUnkInner);
typedef enum tagSTDMSHLFLAGS {
SMEXF_SERVER = 0x01,
SMEXF_HANDLER = 0x02
} STDMSHLFLAGS;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetMarshalSizeMax (ULONG *pulSize, const IID *const riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoMarshalInterface (LPSTREAM pStm, const IID *const riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoUnmarshalInterface (LPSTREAM pStm, const IID *const riid, LPVOID *ppv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoReleaseMarshalData (LPSTREAM pStm);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoDisconnectObject (LPUNKNOWN pUnk, DWORD dwReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetStandardMarshal (const IID *const riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags, LPMARSHAL *ppMarshal);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoMarshalInterThreadInterfaceInStream (const IID *const riid, LPUNKNOWN pUnk, LPSTREAM *ppStm);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetInterfaceAndReleaseStream (LPSTREAM pStm, const IID *const iid, LPVOID *ppv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoCreateFreeThreadedMarshaler (LPUNKNOWN punkOuter, LPUNKNOWN *ppunkMarshal);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) CoFreeUnusedLibraries (void);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) CoFreeUnusedLibrariesEx (DWORD dwUnloadDelay, DWORD dwReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoInitializeSecurity (PSECURITY_DESCRIPTOR pSecDesc, LONG cAuthSvc, SOLE_AUTHENTICATION_SERVICE *asAuthSvc, void *pReserved1, DWORD dwAuthnLevel, DWORD dwImpLevel, void *pAuthList, DWORD dwCapabilities, void *pReserved3);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoSwitchCallContext (IUnknown *pNewObject, IUnknown **ppOldObject);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoCreateInstanceFromApp (const IID *const Clsid, IUnknown *punkOuter, DWORD dwClsCtx, PVOID reserved, DWORD dwCount, MULTI_QI *pResults);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CoIsHandlerConnected (LPUNKNOWN pUnk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetCallContext (const IID *const riid, void **ppInterface);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoQueryProxyBlanket (IUnknown *pProxy, DWORD *pwAuthnSvc, DWORD *pAuthzSvc, LPOLESTR *pServerPrincName, DWORD *pAuthnLevel, DWORD *pImpLevel, RPC_AUTH_IDENTITY_HANDLE *pAuthInfo, DWORD *pCapabilites);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoSetProxyBlanket (IUnknown *pProxy, DWORD dwAuthnSvc, DWORD dwAuthzSvc, OLECHAR *pServerPrincName, DWORD dwAuthnLevel, DWORD dwImpLevel, RPC_AUTH_IDENTITY_HANDLE pAuthInfo, DWORD dwCapabilities);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoCopyProxy (IUnknown *pProxy, IUnknown **ppCopy);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoQueryClientBlanket (DWORD *pAuthnSvc, DWORD *pAuthzSvc, LPOLESTR *pServerPrincName, DWORD *pAuthnLevel, DWORD *pImpLevel, RPC_AUTHZ_HANDLE *pPrivs, DWORD *pCapabilities);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoImpersonateClient (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRevertToSelf (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoQueryAuthenticationServices (DWORD *pcAuthSvc, SOLE_AUTHENTICATION_SERVICE **asAuthSvc);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoCreateInstance (const IID *const rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, const IID *const riid, LPVOID *ppv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoCreateInstanceEx (const IID *const Clsid, IUnknown *punkOuter, DWORD dwClsCtx, COSERVERINFO *pServerInfo, DWORD dwCount, MULTI_QI *pResults);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetCancelObject (DWORD dwThreadId, const IID *const iid, void **ppUnk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoSetCancelObject (IUnknown *pUnk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoCancelCall (DWORD dwThreadId, ULONG ulTimeout);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoTestCancel (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoEnableCallCancellation (LPVOID pReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoDisableCallCancellation (LPVOID pReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StringFromCLSID (const IID *const rclsid, LPOLESTR *lplpsz);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CLSIDFromString (LPCOLESTR lpsz, LPCLSID pclsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StringFromIID (const IID *const rclsid, LPOLESTR *lplpsz);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) IIDFromString (LPCOLESTR lpsz, LPIID lpiid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) ProgIDFromCLSID (const IID *const clsid, LPOLESTR *lplpszProgID);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CLSIDFromProgID (LPCOLESTR lpszProgID, LPCLSID lpclsid);
extern __attribute__((dllimport)) int __attribute__((__stdcall__)) StringFromGUID2 (const GUID *const rguid, LPOLESTR lpsz, int cchMax);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoCreateGuid (GUID *pguid);
typedef struct tagPROPVARIANT PROPVARIANT;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) PropVariantCopy (PROPVARIANT *pvarDest, const PROPVARIANT *pvarSrc);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) PropVariantClear (PROPVARIANT *pvar);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) FreePropVariantArray (ULONG cVariants, PROPVARIANT *rgvars);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoWaitForMultipleHandles (DWORD dwFlags, DWORD dwTimeout, ULONG cHandles, LPHANDLE pHandles, LPDWORD lpdwindex);
typedef enum tagCOWAIT_FLAGS {
COWAIT_DEFAULT = 0,
COWAIT_WAITALL = 1,
COWAIT_ALERTABLE = 2,
COWAIT_INPUTAVAILABLE = 4
, COWAIT_DISPATCH_CALLS = 8,
COWAIT_DISPATCH_WINDOW_MESSAGES = 0x10
} COWAIT_FLAGS;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetTreatAsClass (const IID *const clsidOld, LPCLSID pClsidNew);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoInvalidateRemoteMachineBindings (LPOLESTR pszMachineName);
typedef HRESULT (__attribute__((__stdcall__)) *LPFNGETCLASSOBJECT) (const IID *const, const IID *const, LPVOID *);
typedef HRESULT (__attribute__((__stdcall__)) *LPFNCANUNLOADNOW) (void);
extern HRESULT __attribute__((__stdcall__)) DllGetClassObject (const IID *const rclsid, const IID *const riid, LPVOID *ppv);
extern HRESULT __attribute__((__stdcall__)) DllCanUnloadNow (void);
extern __attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) CoTaskMemAlloc (SIZE_T cb);
extern __attribute__((dllimport)) LPVOID __attribute__((__stdcall__)) CoTaskMemRealloc (LPVOID pv, SIZE_T cb);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) CoTaskMemFree (LPVOID pv);
#pragma pack(pop)
typedef enum tagCOINIT {
COINIT_APARTMENTTHREADED = 0x2,
COINIT_MULTITHREADED = COINITBASE_MULTITHREADED,
COINIT_DISABLE_OLE1DDE = 0x4,
COINIT_SPEED_OVER_MEMORY = 0x8
} COINIT;
typedef DWORD STGFMT;
typedef struct IMallocSpy IMallocSpy;
typedef struct IBindCtx IBindCtx;
typedef struct IEnumMoniker IEnumMoniker;
typedef struct IRunnableObject IRunnableObject;
typedef struct IRunningObjectTable IRunningObjectTable;
typedef struct IPersist IPersist;
typedef struct IPersistStream IPersistStream;
typedef struct IMoniker IMoniker;
typedef struct IROTData IROTData;
typedef struct IEnumSTATSTG IEnumSTATSTG;
typedef struct IStorage IStorage;
typedef struct IPersistFile IPersistFile;
typedef struct IPersistStorage IPersistStorage;
typedef struct ILockBytes ILockBytes;
typedef struct IEnumFORMATETC IEnumFORMATETC;
typedef struct IEnumSTATDATA IEnumSTATDATA;
typedef struct IRootStorage IRootStorage;
typedef struct IAdviseSink IAdviseSink;
typedef struct AsyncIAdviseSink AsyncIAdviseSink;
typedef struct IAdviseSink2 IAdviseSink2;
typedef struct AsyncIAdviseSink2 AsyncIAdviseSink2;
typedef struct IDataObject IDataObject;
typedef struct IDataAdviseHolder IDataAdviseHolder;
typedef struct IMessageFilter IMessageFilter;
typedef struct IClassActivator IClassActivator;
typedef struct IFillLockBytes IFillLockBytes;
typedef struct IProgressNotify IProgressNotify;
typedef struct ILayoutStorage ILayoutStorage;
typedef struct IBlockingLock IBlockingLock;
typedef struct ITimeAndNoticeControl ITimeAndNoticeControl;
typedef struct IOplockStorage IOplockStorage;
typedef struct IDirectWriterLock IDirectWriterLock;
typedef struct IUrlMon IUrlMon;
typedef struct IForegroundTransfer IForegroundTransfer;
typedef struct IThumbnailExtractor IThumbnailExtractor;
typedef struct IDummyHICONIncluder IDummyHICONIncluder;
typedef struct IProcessLock IProcessLock;
typedef struct ISurrogateService ISurrogateService;
typedef struct IInitializeSpy IInitializeSpy;
typedef struct IApartmentShutdown IApartmentShutdown;
extern RPC_IF_HANDLE IWinTypes_v0_1_c_ifspec;
extern RPC_IF_HANDLE IWinTypes_v0_1_s_ifspec;
typedef struct tagRemHGLOBAL {
LONG fNullHGlobal;
ULONG cbData;
byte data[1];
} RemHGLOBAL;
typedef struct tagRemHMETAFILEPICT {
LONG mm;
LONG xExt;
LONG yExt;
ULONG cbData;
byte data[1];
} RemHMETAFILEPICT;
typedef struct tagRemHENHMETAFILE {
ULONG cbData;
byte data[1];
} RemHENHMETAFILE;
typedef struct tagRemHBITMAP {
ULONG cbData;
byte data[1];
} RemHBITMAP;
typedef struct tagRemHPALETTE {
ULONG cbData;
byte data[1];
} RemHPALETTE;
typedef struct tagRemBRUSH {
ULONG cbData;
byte data[1];
} RemHBRUSH;
typedef enum tagDVASPECT {
DVASPECT_CONTENT = 1,
DVASPECT_THUMBNAIL = 2,
DVASPECT_ICON = 4,
DVASPECT_DOCPRINT = 8
} DVASPECT;
typedef enum tagSTGC {
STGC_DEFAULT = 0,
STGC_OVERWRITE = 1,
STGC_ONLYIFCURRENT = 2,
STGC_DANGEROUSLYCOMMITMERELYTODISKCACHE = 4,
STGC_CONSOLIDATE = 8
} STGC;
typedef enum tagSTGMOVE {
STGMOVE_MOVE = 0,
STGMOVE_COPY = 1,
STGMOVE_SHALLOWCOPY = 2
} STGMOVE;
typedef enum tagSTATFLAG {
STATFLAG_DEFAULT = 0,
STATFLAG_NONAME = 1,
STATFLAG_NOOPEN = 2
} STATFLAG;
typedef void *HCONTEXT;
typedef struct _userCLIPFORMAT {
LONG fContext;
union {
DWORD dwValue;
wchar_t *pwszName;
} u;
} userCLIPFORMAT;
typedef userCLIPFORMAT *wireCLIPFORMAT;
typedef WORD CLIPFORMAT;
typedef struct _GDI_NONREMOTE {
LONG fContext;
union {
LONG hInproc;
DWORD_BLOB *hRemote;
} u;
} GDI_NONREMOTE;
typedef struct _userHGLOBAL {
LONG fContext;
union {
LONG hInproc;
FLAGGED_BYTE_BLOB *hRemote;
INT64 hInproc64;
} u;
} userHGLOBAL;
typedef userHGLOBAL *wireHGLOBAL;
typedef struct _userHMETAFILE {
LONG fContext;
union {
LONG hInproc;
BYTE_BLOB *hRemote;
INT64 hInproc64;
} u;
} userHMETAFILE;
typedef struct _remoteMETAFILEPICT {
LONG mm;
LONG xExt;
LONG yExt;
userHMETAFILE *hMF;
} remoteMETAFILEPICT;
typedef struct _userHMETAFILEPICT {
LONG fContext;
union {
LONG hInproc;
remoteMETAFILEPICT *hRemote;
INT64 hInproc64;
} u;
} userHMETAFILEPICT;
typedef struct _userHENHMETAFILE {
LONG fContext;
union {
LONG hInproc;
BYTE_BLOB *hRemote;
INT64 hInproc64;
} u;
} userHENHMETAFILE;
typedef struct _userBITMAP {
LONG bmType;
LONG bmWidth;
LONG bmHeight;
LONG bmWidthBytes;
WORD bmPlanes;
WORD bmBitsPixel;
ULONG cbSize;
byte pBuffer[1];
} userBITMAP;
typedef struct _userHBITMAP {
LONG fContext;
union {
LONG hInproc;
userBITMAP *hRemote;
INT64 hInproc64;
} u;
} userHBITMAP;
typedef struct _userHPALETTE {
LONG fContext;
union {
LONG hInproc;
LOGPALETTE *hRemote;
INT64 hInproc64;
} u;
} userHPALETTE;
typedef struct _RemotableHandle {
LONG fContext;
union {
LONG hInproc;
LONG hRemote;
} u;
} RemotableHandle;
typedef RemotableHandle *wireHWND;
typedef RemotableHandle *wireHMENU;
typedef RemotableHandle *wireHACCEL;
typedef RemotableHandle *wireHBRUSH;
typedef RemotableHandle *wireHFONT;
typedef RemotableHandle *wireHDC;
typedef RemotableHandle *wireHICON;
typedef RemotableHandle *wireHRGN;
typedef RemotableHandle *wireHMONITOR;
typedef userHBITMAP *wireHBITMAP;
typedef userHPALETTE *wireHPALETTE;
typedef userHENHMETAFILE *wireHENHMETAFILE;
typedef userHMETAFILE *wireHMETAFILE;
typedef userHMETAFILEPICT *wireHMETAFILEPICT;
typedef void *HMETAFILEPICT;
typedef double DATE;
typedef union tagCY {
__extension__ struct {
unsigned long Lo;
long Hi;
} ;
LONGLONG int64;
} CY;
typedef CY *LPCY;
typedef struct tagDEC {
USHORT wReserved;
__extension__ union {
__extension__ struct {
BYTE scale;
BYTE sign;
} ;
USHORT signscale;
} ;
ULONG Hi32;
__extension__ union {
__extension__ struct {
ULONG Lo32;
ULONG Mid32;
} ;
ULONGLONG Lo64;
} ;
} DECIMAL;
typedef DECIMAL *LPDECIMAL;
typedef FLAGGED_WORD_BLOB *wireBSTR;
typedef OLECHAR *BSTR;
typedef BSTR *LPBSTR;
typedef short VARIANT_BOOL;
typedef struct tagBSTRBLOB {
ULONG cbSize;
BYTE *pData;
} BSTRBLOB;
typedef struct tagBSTRBLOB *LPBSTRBLOB;
typedef struct tagCLIPDATA {
ULONG cbSize;
LONG ulClipFmt;
BYTE *pClipData;
} CLIPDATA;
typedef unsigned short VARTYPE;
enum VARENUM {
VT_EMPTY = 0,
VT_NULL = 1,
VT_I2 = 2,
VT_I4 = 3,
VT_R4 = 4,
VT_R8 = 5,
VT_CY = 6,
VT_DATE = 7,
VT_BSTR = 8,
VT_DISPATCH = 9,
VT_ERROR = 10,
VT_BOOL = 11,
VT_VARIANT = 12,
VT_UNKNOWN = 13,
VT_DECIMAL = 14,
VT_I1 = 16,
VT_UI1 = 17,
VT_UI2 = 18,
VT_UI4 = 19,
VT_I8 = 20,
VT_UI8 = 21,
VT_INT = 22,
VT_UINT = 23,
VT_VOID = 24,
VT_HRESULT = 25,
VT_PTR = 26,
VT_SAFEARRAY = 27,
VT_CARRAY = 28,
VT_USERDEFINED = 29,
VT_LPSTR = 30,
VT_LPWSTR = 31,
VT_RECORD = 36,
VT_INT_PTR = 37,
VT_UINT_PTR = 38,
VT_FILETIME = 64,
VT_BLOB = 65,
VT_STREAM = 66,
VT_STORAGE = 67,
VT_STREAMED_OBJECT = 68,
VT_STORED_OBJECT = 69,
VT_BLOB_OBJECT = 70,
VT_CF = 71,
VT_CLSID = 72,
VT_VERSIONED_STREAM = 73,
VT_BSTR_BLOB = 0xfff,
VT_VECTOR = 0x1000,
VT_ARRAY = 0x2000,
VT_BYREF = 0x4000,
VT_RESERVED = 0x8000,
VT_ILLEGAL = 0xffff,
VT_ILLEGALMASKED = 0xfff,
VT_TYPEMASK = 0xfff
};
typedef ULONG PROPID;
typedef struct _tagpropertykey {
GUID fmtid;
DWORD pid;
} PROPERTYKEY;
typedef struct tagCSPLATFORM {
DWORD dwPlatformId;
DWORD dwVersionHi;
DWORD dwVersionLo;
DWORD dwProcessorArch;
} CSPLATFORM;
typedef struct tagQUERYCONTEXT {
DWORD dwContext;
CSPLATFORM Platform;
LCID Locale;
DWORD dwVersionHi;
DWORD dwVersionLo;
} QUERYCONTEXT;
typedef enum tagTYSPEC {
TYSPEC_CLSID = 0,
TYSPEC_FILEEXT = 1,
TYSPEC_MIMETYPE = 2,
TYSPEC_FILENAME = 3,
TYSPEC_PROGID = 4,
TYSPEC_PACKAGENAME = 5,
TYSPEC_OBJECTID = 6
} TYSPEC;
typedef struct __WIDL_wtypes_generated_name_00000001 {
DWORD tyspec;
union {
CLSID clsid;
LPOLESTR pFileExt;
LPOLESTR pMimeType;
LPOLESTR pProgId;
LPOLESTR pFileName;
struct {
LPOLESTR pPackageName;
GUID PolicyId;
} ByName;
struct {
GUID ObjectId;
GUID PolicyId;
} ByObjectId;
} tagged_union;
} uCLSSPEC;
typedef IMallocSpy *LPMALLOCSPY;
extern const GUID IID_IMallocSpy;
typedef struct IMallocSpyVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMallocSpy* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMallocSpy* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMallocSpy* This);
SIZE_T (__attribute__((__stdcall__)) *PreAlloc)(
IMallocSpy* This,
SIZE_T cbRequest);
void * (__attribute__((__stdcall__)) *PostAlloc)(
IMallocSpy* This,
void *pActual);
void * (__attribute__((__stdcall__)) *PreFree)(
IMallocSpy* This,
void *pRequest,
WINBOOL fSpyed);
void (__attribute__((__stdcall__)) *PostFree)(
IMallocSpy* This,
WINBOOL fSpyed);
SIZE_T (__attribute__((__stdcall__)) *PreRealloc)(
IMallocSpy* This,
void *pRequest,
SIZE_T cbRequest,
void **ppNewRequest,
WINBOOL fSpyed);
void * (__attribute__((__stdcall__)) *PostRealloc)(
IMallocSpy* This,
void *pActual,
WINBOOL fSpyed);
void * (__attribute__((__stdcall__)) *PreGetSize)(
IMallocSpy* This,
void *pRequest,
WINBOOL fSpyed);
SIZE_T (__attribute__((__stdcall__)) *PostGetSize)(
IMallocSpy* This,
SIZE_T cbActual,
WINBOOL fSpyed);
void * (__attribute__((__stdcall__)) *PreDidAlloc)(
IMallocSpy* This,
void *pRequest,
WINBOOL fSpyed);
int (__attribute__((__stdcall__)) *PostDidAlloc)(
IMallocSpy* This,
void *pRequest,
WINBOOL fSpyed,
int fActual);
void (__attribute__((__stdcall__)) *PreHeapMinimize)(
IMallocSpy* This);
void (__attribute__((__stdcall__)) *PostHeapMinimize)(
IMallocSpy* This);
} IMallocSpyVtbl;
struct IMallocSpy {
IMallocSpyVtbl* lpVtbl;
};
SIZE_T __attribute__((__stdcall__)) IMallocSpy_PreAlloc_Proxy(
IMallocSpy* This,
SIZE_T cbRequest);
void __attribute__((__stdcall__)) IMallocSpy_PreAlloc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void * __attribute__((__stdcall__)) IMallocSpy_PostAlloc_Proxy(
IMallocSpy* This,
void *pActual);
void __attribute__((__stdcall__)) IMallocSpy_PostAlloc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void * __attribute__((__stdcall__)) IMallocSpy_PreFree_Proxy(
IMallocSpy* This,
void *pRequest,
WINBOOL fSpyed);
void __attribute__((__stdcall__)) IMallocSpy_PreFree_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void __attribute__((__stdcall__)) IMallocSpy_PostFree_Proxy(
IMallocSpy* This,
WINBOOL fSpyed);
void __attribute__((__stdcall__)) IMallocSpy_PostFree_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
SIZE_T __attribute__((__stdcall__)) IMallocSpy_PreRealloc_Proxy(
IMallocSpy* This,
void *pRequest,
SIZE_T cbRequest,
void **ppNewRequest,
WINBOOL fSpyed);
void __attribute__((__stdcall__)) IMallocSpy_PreRealloc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void * __attribute__((__stdcall__)) IMallocSpy_PostRealloc_Proxy(
IMallocSpy* This,
void *pActual,
WINBOOL fSpyed);
void __attribute__((__stdcall__)) IMallocSpy_PostRealloc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void * __attribute__((__stdcall__)) IMallocSpy_PreGetSize_Proxy(
IMallocSpy* This,
void *pRequest,
WINBOOL fSpyed);
void __attribute__((__stdcall__)) IMallocSpy_PreGetSize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
SIZE_T __attribute__((__stdcall__)) IMallocSpy_PostGetSize_Proxy(
IMallocSpy* This,
SIZE_T cbActual,
WINBOOL fSpyed);
void __attribute__((__stdcall__)) IMallocSpy_PostGetSize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void * __attribute__((__stdcall__)) IMallocSpy_PreDidAlloc_Proxy(
IMallocSpy* This,
void *pRequest,
WINBOOL fSpyed);
void __attribute__((__stdcall__)) IMallocSpy_PreDidAlloc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
int __attribute__((__stdcall__)) IMallocSpy_PostDidAlloc_Proxy(
IMallocSpy* This,
void *pRequest,
WINBOOL fSpyed,
int fActual);
void __attribute__((__stdcall__)) IMallocSpy_PostDidAlloc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void __attribute__((__stdcall__)) IMallocSpy_PreHeapMinimize_Proxy(
IMallocSpy* This);
void __attribute__((__stdcall__)) IMallocSpy_PreHeapMinimize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void __attribute__((__stdcall__)) IMallocSpy_PostHeapMinimize_Proxy(
IMallocSpy* This);
void __attribute__((__stdcall__)) IMallocSpy_PostHeapMinimize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IBindCtx *LPBC;
typedef IBindCtx *LPBINDCTX;
typedef struct tagBIND_OPTS {
DWORD cbStruct;
DWORD grfFlags;
DWORD grfMode;
DWORD dwTickCountDeadline;
} BIND_OPTS;
typedef struct tagBIND_OPTS *LPBIND_OPTS;
typedef struct tagBIND_OPTS2 {
DWORD cbStruct;
DWORD grfFlags;
DWORD grfMode;
DWORD dwTickCountDeadline;
DWORD dwTrackFlags;
DWORD dwClassContext;
LCID locale;
COSERVERINFO *pServerInfo;
} BIND_OPTS2;
typedef struct tagBIND_OPTS2 *LPBIND_OPTS2;
typedef struct tagBIND_OPTS3 {
DWORD cbStruct;
DWORD grfFlags;
DWORD grfMode;
DWORD dwTickCountDeadline;
DWORD dwTrackFlags;
DWORD dwClassContext;
LCID locale;
COSERVERINFO *pServerInfo;
HWND hwnd;
} BIND_OPTS3;
typedef struct tagBIND_OPTS3 *LPBIND_OPTS3;
typedef enum tagBIND_FLAGS {
BIND_MAYBOTHERUSER = 1,
BIND_JUSTTESTEXISTENCE = 2
} BIND_FLAGS;
extern const GUID IID_IBindCtx;
typedef struct IBindCtxVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IBindCtx* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IBindCtx* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IBindCtx* This);
HRESULT (__attribute__((__stdcall__)) *RegisterObjectBound)(
IBindCtx* This,
IUnknown *punk);
HRESULT (__attribute__((__stdcall__)) *RevokeObjectBound)(
IBindCtx* This,
IUnknown *punk);
HRESULT (__attribute__((__stdcall__)) *ReleaseBoundObjects)(
IBindCtx* This);
HRESULT (__attribute__((__stdcall__)) *SetBindOptions)(
IBindCtx* This,
BIND_OPTS *pbindopts);
HRESULT (__attribute__((__stdcall__)) *GetBindOptions)(
IBindCtx* This,
BIND_OPTS *pbindopts);
HRESULT (__attribute__((__stdcall__)) *GetRunningObjectTable)(
IBindCtx* This,
IRunningObjectTable **pprot);
HRESULT (__attribute__((__stdcall__)) *RegisterObjectParam)(
IBindCtx* This,
LPOLESTR pszKey,
IUnknown *punk);
HRESULT (__attribute__((__stdcall__)) *GetObjectParam)(
IBindCtx* This,
LPOLESTR pszKey,
IUnknown **ppunk);
HRESULT (__attribute__((__stdcall__)) *EnumObjectParam)(
IBindCtx* This,
IEnumString **ppenum);
HRESULT (__attribute__((__stdcall__)) *RevokeObjectParam)(
IBindCtx* This,
LPOLESTR pszKey);
} IBindCtxVtbl;
struct IBindCtx {
IBindCtxVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IBindCtx_RegisterObjectBound_Proxy(
IBindCtx* This,
IUnknown *punk);
void __attribute__((__stdcall__)) IBindCtx_RegisterObjectBound_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_RevokeObjectBound_Proxy(
IBindCtx* This,
IUnknown *punk);
void __attribute__((__stdcall__)) IBindCtx_RevokeObjectBound_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_ReleaseBoundObjects_Proxy(
IBindCtx* This);
void __attribute__((__stdcall__)) IBindCtx_ReleaseBoundObjects_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_RemoteSetBindOptions_Proxy(
IBindCtx* This,
BIND_OPTS2 *pbindopts);
void __attribute__((__stdcall__)) IBindCtx_RemoteSetBindOptions_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_RemoteGetBindOptions_Proxy(
IBindCtx* This,
BIND_OPTS2 *pbindopts);
void __attribute__((__stdcall__)) IBindCtx_RemoteGetBindOptions_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_GetRunningObjectTable_Proxy(
IBindCtx* This,
IRunningObjectTable **pprot);
void __attribute__((__stdcall__)) IBindCtx_GetRunningObjectTable_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_RegisterObjectParam_Proxy(
IBindCtx* This,
LPOLESTR pszKey,
IUnknown *punk);
void __attribute__((__stdcall__)) IBindCtx_RegisterObjectParam_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_GetObjectParam_Proxy(
IBindCtx* This,
LPOLESTR pszKey,
IUnknown **ppunk);
void __attribute__((__stdcall__)) IBindCtx_GetObjectParam_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_EnumObjectParam_Proxy(
IBindCtx* This,
IEnumString **ppenum);
void __attribute__((__stdcall__)) IBindCtx_EnumObjectParam_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_RevokeObjectParam_Proxy(
IBindCtx* This,
LPOLESTR pszKey);
void __attribute__((__stdcall__)) IBindCtx_RevokeObjectParam_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindCtx_SetBindOptions_Proxy(
IBindCtx* This,
BIND_OPTS *pbindopts);
HRESULT __attribute__((__stdcall__)) IBindCtx_SetBindOptions_Stub(
IBindCtx* This,
BIND_OPTS2 *pbindopts);
HRESULT __attribute__((__stdcall__)) IBindCtx_GetBindOptions_Proxy(
IBindCtx* This,
BIND_OPTS *pbindopts);
HRESULT __attribute__((__stdcall__)) IBindCtx_GetBindOptions_Stub(
IBindCtx* This,
BIND_OPTS2 *pbindopts);
typedef IEnumMoniker *LPENUMMONIKER;
extern const GUID IID_IEnumMoniker;
typedef struct IEnumMonikerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumMoniker* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumMoniker* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumMoniker* This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumMoniker* This,
ULONG celt,
IMoniker **rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumMoniker* This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumMoniker* This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumMoniker* This,
IEnumMoniker **ppenum);
} IEnumMonikerVtbl;
struct IEnumMoniker {
IEnumMonikerVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumMoniker_RemoteNext_Proxy(
IEnumMoniker* This,
ULONG celt,
IMoniker **rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumMoniker_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumMoniker_Skip_Proxy(
IEnumMoniker* This,
ULONG celt);
void __attribute__((__stdcall__)) IEnumMoniker_Skip_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumMoniker_Reset_Proxy(
IEnumMoniker* This);
void __attribute__((__stdcall__)) IEnumMoniker_Reset_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumMoniker_Clone_Proxy(
IEnumMoniker* This,
IEnumMoniker **ppenum);
void __attribute__((__stdcall__)) IEnumMoniker_Clone_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumMoniker_Next_Proxy(
IEnumMoniker* This,
ULONG celt,
IMoniker **rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumMoniker_Next_Stub(
IEnumMoniker* This,
ULONG celt,
IMoniker **rgelt,
ULONG *pceltFetched);
typedef IRunnableObject *LPRUNNABLEOBJECT;
extern const GUID IID_IRunnableObject;
typedef struct IRunnableObjectVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRunnableObject* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRunnableObject* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRunnableObject* This);
HRESULT (__attribute__((__stdcall__)) *GetRunningClass)(
IRunnableObject* This,
LPCLSID lpClsid);
HRESULT (__attribute__((__stdcall__)) *Run)(
IRunnableObject* This,
LPBINDCTX pbc);
WINBOOL (__attribute__((__stdcall__)) *IsRunning)(
IRunnableObject* This);
HRESULT (__attribute__((__stdcall__)) *LockRunning)(
IRunnableObject* This,
WINBOOL fLock,
WINBOOL fLastUnlockCloses);
HRESULT (__attribute__((__stdcall__)) *SetContainedObject)(
IRunnableObject* This,
WINBOOL fContained);
} IRunnableObjectVtbl;
struct IRunnableObject {
IRunnableObjectVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IRunnableObject_GetRunningClass_Proxy(
IRunnableObject* This,
LPCLSID lpClsid);
void __attribute__((__stdcall__)) IRunnableObject_GetRunningClass_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunnableObject_Run_Proxy(
IRunnableObject* This,
LPBINDCTX pbc);
void __attribute__((__stdcall__)) IRunnableObject_Run_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunnableObject_RemoteIsRunning_Proxy(
IRunnableObject* This);
void __attribute__((__stdcall__)) IRunnableObject_RemoteIsRunning_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunnableObject_LockRunning_Proxy(
IRunnableObject* This,
WINBOOL fLock,
WINBOOL fLastUnlockCloses);
void __attribute__((__stdcall__)) IRunnableObject_LockRunning_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunnableObject_SetContainedObject_Proxy(
IRunnableObject* This,
WINBOOL fContained);
void __attribute__((__stdcall__)) IRunnableObject_SetContainedObject_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
WINBOOL __attribute__((__stdcall__)) IRunnableObject_IsRunning_Proxy(
IRunnableObject* This);
HRESULT __attribute__((__stdcall__)) IRunnableObject_IsRunning_Stub(
IRunnableObject* This);
typedef IRunningObjectTable *LPRUNNINGOBJECTTABLE;
extern const GUID IID_IRunningObjectTable;
typedef struct IRunningObjectTableVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRunningObjectTable* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRunningObjectTable* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRunningObjectTable* This);
HRESULT (__attribute__((__stdcall__)) *Register)(
IRunningObjectTable* This,
DWORD grfFlags,
IUnknown *punkObject,
IMoniker *pmkObjectName,
DWORD *pdwRegister);
HRESULT (__attribute__((__stdcall__)) *Revoke)(
IRunningObjectTable* This,
DWORD dwRegister);
HRESULT (__attribute__((__stdcall__)) *IsRunning)(
IRunningObjectTable* This,
IMoniker *pmkObjectName);
HRESULT (__attribute__((__stdcall__)) *GetObjectA)(
IRunningObjectTable* This,
IMoniker *pmkObjectName,
IUnknown **ppunkObject);
HRESULT (__attribute__((__stdcall__)) *NoteChangeTime)(
IRunningObjectTable* This,
DWORD dwRegister,
FILETIME *pfiletime);
HRESULT (__attribute__((__stdcall__)) *GetTimeOfLastChange)(
IRunningObjectTable* This,
IMoniker *pmkObjectName,
FILETIME *pfiletime);
HRESULT (__attribute__((__stdcall__)) *EnumRunning)(
IRunningObjectTable* This,
IEnumMoniker **ppenumMoniker);
} IRunningObjectTableVtbl;
struct IRunningObjectTable {
IRunningObjectTableVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IRunningObjectTable_Register_Proxy(
IRunningObjectTable* This,
DWORD grfFlags,
IUnknown *punkObject,
IMoniker *pmkObjectName,
DWORD *pdwRegister);
void __attribute__((__stdcall__)) IRunningObjectTable_Register_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunningObjectTable_Revoke_Proxy(
IRunningObjectTable* This,
DWORD dwRegister);
void __attribute__((__stdcall__)) IRunningObjectTable_Revoke_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunningObjectTable_IsRunning_Proxy(
IRunningObjectTable* This,
IMoniker *pmkObjectName);
void __attribute__((__stdcall__)) IRunningObjectTable_IsRunning_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunningObjectTable_GetObject_Proxy(
IRunningObjectTable* This,
IMoniker *pmkObjectName,
IUnknown **ppunkObject);
void __attribute__((__stdcall__)) IRunningObjectTable_GetObject_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunningObjectTable_NoteChangeTime_Proxy(
IRunningObjectTable* This,
DWORD dwRegister,
FILETIME *pfiletime);
void __attribute__((__stdcall__)) IRunningObjectTable_NoteChangeTime_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunningObjectTable_GetTimeOfLastChange_Proxy(
IRunningObjectTable* This,
IMoniker *pmkObjectName,
FILETIME *pfiletime);
void __attribute__((__stdcall__)) IRunningObjectTable_GetTimeOfLastChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IRunningObjectTable_EnumRunning_Proxy(
IRunningObjectTable* This,
IEnumMoniker **ppenumMoniker);
void __attribute__((__stdcall__)) IRunningObjectTable_EnumRunning_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IPersist *LPPERSIST;
extern const GUID IID_IPersist;
typedef struct IPersistVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersist* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersist* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersist* This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersist* This,
CLSID *pClassID);
} IPersistVtbl;
struct IPersist {
IPersistVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IPersist_GetClassID_Proxy(
IPersist* This,
CLSID *pClassID);
void __attribute__((__stdcall__)) IPersist_GetClassID_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IPersistStream *LPPERSISTSTREAM;
extern const GUID IID_IPersistStream;
typedef struct IPersistStreamVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersistStream* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersistStream* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersistStream* This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersistStream* This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *IsDirty)(
IPersistStream* This);
HRESULT (__attribute__((__stdcall__)) *Load)(
IPersistStream* This,
IStream *pStm);
HRESULT (__attribute__((__stdcall__)) *Save)(
IPersistStream* This,
IStream *pStm,
WINBOOL fClearDirty);
HRESULT (__attribute__((__stdcall__)) *GetSizeMax)(
IPersistStream* This,
ULARGE_INTEGER *pcbSize);
} IPersistStreamVtbl;
struct IPersistStream {
IPersistStreamVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IPersistStream_IsDirty_Proxy(
IPersistStream* This);
void __attribute__((__stdcall__)) IPersistStream_IsDirty_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistStream_Load_Proxy(
IPersistStream* This,
IStream *pStm);
void __attribute__((__stdcall__)) IPersistStream_Load_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistStream_Save_Proxy(
IPersistStream* This,
IStream *pStm,
WINBOOL fClearDirty);
void __attribute__((__stdcall__)) IPersistStream_Save_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistStream_GetSizeMax_Proxy(
IPersistStream* This,
ULARGE_INTEGER *pcbSize);
void __attribute__((__stdcall__)) IPersistStream_GetSizeMax_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IMoniker *LPMONIKER;
typedef enum tagMKSYS {
MKSYS_NONE = 0,
MKSYS_GENERICCOMPOSITE = 1,
MKSYS_FILEMONIKER = 2,
MKSYS_ANTIMONIKER = 3,
MKSYS_ITEMMONIKER = 4,
MKSYS_POINTERMONIKER = 5,
MKSYS_CLASSMONIKER = 7,
MKSYS_OBJREFMONIKER = 8,
MKSYS_SESSIONMONIKER = 9,
MKSYS_LUAMONIKER = 10
} MKSYS;
typedef enum tagMKREDUCE {
MKRREDUCE_ONE = 3 << 16,
MKRREDUCE_TOUSER = 2 << 16,
MKRREDUCE_THROUGHUSER = 1 << 16,
MKRREDUCE_ALL = 0
} MKRREDUCE;
extern const GUID IID_IMoniker;
typedef struct IMonikerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMoniker* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMoniker* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMoniker* This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IMoniker* This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *IsDirty)(
IMoniker* This);
HRESULT (__attribute__((__stdcall__)) *Load)(
IMoniker* This,
IStream *pStm);
HRESULT (__attribute__((__stdcall__)) *Save)(
IMoniker* This,
IStream *pStm,
WINBOOL fClearDirty);
HRESULT (__attribute__((__stdcall__)) *GetSizeMax)(
IMoniker* This,
ULARGE_INTEGER *pcbSize);
HRESULT (__attribute__((__stdcall__)) *BindToObject)(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
const IID *const riidResult,
void **ppvResult);
HRESULT (__attribute__((__stdcall__)) *BindToStorage)(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
const IID *const riid,
void **ppvObj);
HRESULT (__attribute__((__stdcall__)) *Reduce)(
IMoniker* This,
IBindCtx *pbc,
DWORD dwReduceHowFar,
IMoniker **ppmkToLeft,
IMoniker **ppmkReduced);
HRESULT (__attribute__((__stdcall__)) *ComposeWith)(
IMoniker* This,
IMoniker *pmkRight,
WINBOOL fOnlyIfNotGeneric,
IMoniker **ppmkComposite);
HRESULT (__attribute__((__stdcall__)) *Enum)(
IMoniker* This,
WINBOOL fForward,
IEnumMoniker **ppenumMoniker);
HRESULT (__attribute__((__stdcall__)) *IsEqual)(
IMoniker* This,
IMoniker *pmkOtherMoniker);
HRESULT (__attribute__((__stdcall__)) *Hash)(
IMoniker* This,
DWORD *pdwHash);
HRESULT (__attribute__((__stdcall__)) *IsRunning)(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
IMoniker *pmkNewlyRunning);
HRESULT (__attribute__((__stdcall__)) *GetTimeOfLastChange)(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
FILETIME *pFileTime);
HRESULT (__attribute__((__stdcall__)) *Inverse)(
IMoniker* This,
IMoniker **ppmk);
HRESULT (__attribute__((__stdcall__)) *CommonPrefixWith)(
IMoniker* This,
IMoniker *pmkOther,
IMoniker **ppmkPrefix);
HRESULT (__attribute__((__stdcall__)) *RelativePathTo)(
IMoniker* This,
IMoniker *pmkOther,
IMoniker **ppmkRelPath);
HRESULT (__attribute__((__stdcall__)) *GetDisplayName)(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
LPOLESTR *ppszDisplayName);
HRESULT (__attribute__((__stdcall__)) *ParseDisplayName)(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
LPOLESTR pszDisplayName,
ULONG *pchEaten,
IMoniker **ppmkOut);
HRESULT (__attribute__((__stdcall__)) *IsSystemMoniker)(
IMoniker* This,
DWORD *pdwMksys);
} IMonikerVtbl;
struct IMoniker {
IMonikerVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IMoniker_RemoteBindToObject_Proxy(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
const IID *const riidResult,
IUnknown **ppvResult);
void __attribute__((__stdcall__)) IMoniker_RemoteBindToObject_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_RemoteBindToStorage_Proxy(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
const IID *const riid,
IUnknown **ppvObj);
void __attribute__((__stdcall__)) IMoniker_RemoteBindToStorage_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_Reduce_Proxy(
IMoniker* This,
IBindCtx *pbc,
DWORD dwReduceHowFar,
IMoniker **ppmkToLeft,
IMoniker **ppmkReduced);
void __attribute__((__stdcall__)) IMoniker_Reduce_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_ComposeWith_Proxy(
IMoniker* This,
IMoniker *pmkRight,
WINBOOL fOnlyIfNotGeneric,
IMoniker **ppmkComposite);
void __attribute__((__stdcall__)) IMoniker_ComposeWith_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_Enum_Proxy(
IMoniker* This,
WINBOOL fForward,
IEnumMoniker **ppenumMoniker);
void __attribute__((__stdcall__)) IMoniker_Enum_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_IsEqual_Proxy(
IMoniker* This,
IMoniker *pmkOtherMoniker);
void __attribute__((__stdcall__)) IMoniker_IsEqual_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_Hash_Proxy(
IMoniker* This,
DWORD *pdwHash);
void __attribute__((__stdcall__)) IMoniker_Hash_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_IsRunning_Proxy(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
IMoniker *pmkNewlyRunning);
void __attribute__((__stdcall__)) IMoniker_IsRunning_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_GetTimeOfLastChange_Proxy(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
FILETIME *pFileTime);
void __attribute__((__stdcall__)) IMoniker_GetTimeOfLastChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_Inverse_Proxy(
IMoniker* This,
IMoniker **ppmk);
void __attribute__((__stdcall__)) IMoniker_Inverse_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_CommonPrefixWith_Proxy(
IMoniker* This,
IMoniker *pmkOther,
IMoniker **ppmkPrefix);
void __attribute__((__stdcall__)) IMoniker_CommonPrefixWith_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_RelativePathTo_Proxy(
IMoniker* This,
IMoniker *pmkOther,
IMoniker **ppmkRelPath);
void __attribute__((__stdcall__)) IMoniker_RelativePathTo_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_GetDisplayName_Proxy(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
LPOLESTR *ppszDisplayName);
void __attribute__((__stdcall__)) IMoniker_GetDisplayName_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_ParseDisplayName_Proxy(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
LPOLESTR pszDisplayName,
ULONG *pchEaten,
IMoniker **ppmkOut);
void __attribute__((__stdcall__)) IMoniker_ParseDisplayName_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_IsSystemMoniker_Proxy(
IMoniker* This,
DWORD *pdwMksys);
void __attribute__((__stdcall__)) IMoniker_IsSystemMoniker_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IMoniker_BindToObject_Proxy(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
const IID *const riidResult,
void **ppvResult);
HRESULT __attribute__((__stdcall__)) IMoniker_BindToObject_Stub(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
const IID *const riidResult,
IUnknown **ppvResult);
HRESULT __attribute__((__stdcall__)) IMoniker_BindToStorage_Proxy(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
const IID *const riid,
void **ppvObj);
HRESULT __attribute__((__stdcall__)) IMoniker_BindToStorage_Stub(
IMoniker* This,
IBindCtx *pbc,
IMoniker *pmkToLeft,
const IID *const riid,
IUnknown **ppvObj);
extern const GUID IID_IROTData;
typedef struct IROTDataVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IROTData* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IROTData* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IROTData* This);
HRESULT (__attribute__((__stdcall__)) *GetComparisonData)(
IROTData* This,
byte *pbData,
ULONG cbMax,
ULONG *pcbData);
} IROTDataVtbl;
struct IROTData {
IROTDataVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IROTData_GetComparisonData_Proxy(
IROTData* This,
byte *pbData,
ULONG cbMax,
ULONG *pcbData);
void __attribute__((__stdcall__)) IROTData_GetComparisonData_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IEnumSTATSTG *LPENUMSTATSTG;
extern const GUID IID_IEnumSTATSTG;
typedef struct IEnumSTATSTGVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumSTATSTG* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumSTATSTG* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumSTATSTG* This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumSTATSTG* This,
ULONG celt,
STATSTG *rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumSTATSTG* This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumSTATSTG* This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumSTATSTG* This,
IEnumSTATSTG **ppenum);
} IEnumSTATSTGVtbl;
struct IEnumSTATSTG {
IEnumSTATSTGVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumSTATSTG_RemoteNext_Proxy(
IEnumSTATSTG* This,
ULONG celt,
STATSTG *rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumSTATSTG_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATSTG_Skip_Proxy(
IEnumSTATSTG* This,
ULONG celt);
void __attribute__((__stdcall__)) IEnumSTATSTG_Skip_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATSTG_Reset_Proxy(
IEnumSTATSTG* This);
void __attribute__((__stdcall__)) IEnumSTATSTG_Reset_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATSTG_Clone_Proxy(
IEnumSTATSTG* This,
IEnumSTATSTG **ppenum);
void __attribute__((__stdcall__)) IEnumSTATSTG_Clone_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATSTG_Next_Proxy(
IEnumSTATSTG* This,
ULONG celt,
STATSTG *rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumSTATSTG_Next_Stub(
IEnumSTATSTG* This,
ULONG celt,
STATSTG *rgelt,
ULONG *pceltFetched);
typedef IStorage *LPSTORAGE;
typedef struct tagRemSNB {
ULONG ulCntStr;
ULONG ulCntChar;
OLECHAR rgString[1];
} RemSNB;
typedef RemSNB *wireSNB;
typedef LPOLESTR *SNB;
extern const GUID IID_IStorage;
typedef struct IStorageVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IStorage* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IStorage* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IStorage* This);
HRESULT (__attribute__((__stdcall__)) *CreateStream)(
IStorage* This,
const OLECHAR *pwcsName,
DWORD grfMode,
DWORD reserved1,
DWORD reserved2,
IStream **ppstm);
HRESULT (__attribute__((__stdcall__)) *OpenStream)(
IStorage* This,
const OLECHAR *pwcsName,
void *reserved1,
DWORD grfMode,
DWORD reserved2,
IStream **ppstm);
HRESULT (__attribute__((__stdcall__)) *CreateStorage)(
IStorage* This,
const OLECHAR *pwcsName,
DWORD grfMode,
DWORD reserved1,
DWORD reserved2,
IStorage **ppstg);
HRESULT (__attribute__((__stdcall__)) *OpenStorage)(
IStorage* This,
const OLECHAR *pwcsName,
IStorage *pstgPriority,
DWORD grfMode,
SNB snbExclude,
DWORD reserved,
IStorage **ppstg);
HRESULT (__attribute__((__stdcall__)) *CopyTo)(
IStorage* This,
DWORD ciidExclude,
const IID *rgiidExclude,
SNB snbExclude,
IStorage *pstgDest);
HRESULT (__attribute__((__stdcall__)) *MoveElementTo)(
IStorage* This,
const OLECHAR *pwcsName,
IStorage *pstgDest,
const OLECHAR *pwcsNewName,
DWORD grfFlags);
HRESULT (__attribute__((__stdcall__)) *Commit)(
IStorage* This,
DWORD grfCommitFlags);
HRESULT (__attribute__((__stdcall__)) *Revert)(
IStorage* This);
HRESULT (__attribute__((__stdcall__)) *EnumElements)(
IStorage* This,
DWORD reserved1,
void *reserved2,
DWORD reserved3,
IEnumSTATSTG **ppenum);
HRESULT (__attribute__((__stdcall__)) *DestroyElement)(
IStorage* This,
const OLECHAR *pwcsName);
HRESULT (__attribute__((__stdcall__)) *RenameElement)(
IStorage* This,
const OLECHAR *pwcsOldName,
const OLECHAR *pwcsNewName);
HRESULT (__attribute__((__stdcall__)) *SetElementTimes)(
IStorage* This,
const OLECHAR *pwcsName,
const FILETIME *pctime,
const FILETIME *patime,
const FILETIME *pmtime);
HRESULT (__attribute__((__stdcall__)) *SetClass)(
IStorage* This,
const IID *const clsid);
HRESULT (__attribute__((__stdcall__)) *SetStateBits)(
IStorage* This,
DWORD grfStateBits,
DWORD grfMask);
HRESULT (__attribute__((__stdcall__)) *Stat)(
IStorage* This,
STATSTG *pstatstg,
DWORD grfStatFlag);
} IStorageVtbl;
struct IStorage {
IStorageVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IStorage_CreateStream_Proxy(
IStorage* This,
const OLECHAR *pwcsName,
DWORD grfMode,
DWORD reserved1,
DWORD reserved2,
IStream **ppstm);
void __attribute__((__stdcall__)) IStorage_CreateStream_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_RemoteOpenStream_Proxy(
IStorage* This,
const OLECHAR *pwcsName,
ULONG cbReserved1,
byte *reserved1,
DWORD grfMode,
DWORD reserved2,
IStream **ppstm);
void __attribute__((__stdcall__)) IStorage_RemoteOpenStream_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_CreateStorage_Proxy(
IStorage* This,
const OLECHAR *pwcsName,
DWORD grfMode,
DWORD reserved1,
DWORD reserved2,
IStorage **ppstg);
void __attribute__((__stdcall__)) IStorage_CreateStorage_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_OpenStorage_Proxy(
IStorage* This,
const OLECHAR *pwcsName,
IStorage *pstgPriority,
DWORD grfMode,
SNB snbExclude,
DWORD reserved,
IStorage **ppstg);
void __attribute__((__stdcall__)) IStorage_OpenStorage_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_RemoteCopyTo_Proxy(
IStorage* This,
DWORD ciidExclude,
const IID *rgiidExclude,
SNB snbExclude,
IStorage *pstgDest);
void __attribute__((__stdcall__)) IStorage_RemoteCopyTo_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_MoveElementTo_Proxy(
IStorage* This,
const OLECHAR *pwcsName,
IStorage *pstgDest,
const OLECHAR *pwcsNewName,
DWORD grfFlags);
void __attribute__((__stdcall__)) IStorage_MoveElementTo_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_Commit_Proxy(
IStorage* This,
DWORD grfCommitFlags);
void __attribute__((__stdcall__)) IStorage_Commit_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_Revert_Proxy(
IStorage* This);
void __attribute__((__stdcall__)) IStorage_Revert_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_RemoteEnumElements_Proxy(
IStorage* This,
DWORD reserved1,
ULONG cbReserved2,
byte *reserved2,
DWORD reserved3,
IEnumSTATSTG **ppenum);
void __attribute__((__stdcall__)) IStorage_RemoteEnumElements_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_DestroyElement_Proxy(
IStorage* This,
const OLECHAR *pwcsName);
void __attribute__((__stdcall__)) IStorage_DestroyElement_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_RenameElement_Proxy(
IStorage* This,
const OLECHAR *pwcsOldName,
const OLECHAR *pwcsNewName);
void __attribute__((__stdcall__)) IStorage_RenameElement_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_SetElementTimes_Proxy(
IStorage* This,
const OLECHAR *pwcsName,
const FILETIME *pctime,
const FILETIME *patime,
const FILETIME *pmtime);
void __attribute__((__stdcall__)) IStorage_SetElementTimes_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_SetClass_Proxy(
IStorage* This,
const IID *const clsid);
void __attribute__((__stdcall__)) IStorage_SetClass_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_SetStateBits_Proxy(
IStorage* This,
DWORD grfStateBits,
DWORD grfMask);
void __attribute__((__stdcall__)) IStorage_SetStateBits_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_Stat_Proxy(
IStorage* This,
STATSTG *pstatstg,
DWORD grfStatFlag);
void __attribute__((__stdcall__)) IStorage_Stat_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IStorage_OpenStream_Proxy(
IStorage* This,
const OLECHAR *pwcsName,
void *reserved1,
DWORD grfMode,
DWORD reserved2,
IStream **ppstm);
HRESULT __attribute__((__stdcall__)) IStorage_OpenStream_Stub(
IStorage* This,
const OLECHAR *pwcsName,
ULONG cbReserved1,
byte *reserved1,
DWORD grfMode,
DWORD reserved2,
IStream **ppstm);
HRESULT __attribute__((__stdcall__)) IStorage_CopyTo_Proxy(
IStorage* This,
DWORD ciidExclude,
const IID *rgiidExclude,
SNB snbExclude,
IStorage *pstgDest);
HRESULT __attribute__((__stdcall__)) IStorage_CopyTo_Stub(
IStorage* This,
DWORD ciidExclude,
const IID *rgiidExclude,
SNB snbExclude,
IStorage *pstgDest);
HRESULT __attribute__((__stdcall__)) IStorage_EnumElements_Proxy(
IStorage* This,
DWORD reserved1,
void *reserved2,
DWORD reserved3,
IEnumSTATSTG **ppenum);
HRESULT __attribute__((__stdcall__)) IStorage_EnumElements_Stub(
IStorage* This,
DWORD reserved1,
ULONG cbReserved2,
byte *reserved2,
DWORD reserved3,
IEnumSTATSTG **ppenum);
typedef IPersistFile *LPPERSISTFILE;
extern const GUID IID_IPersistFile;
typedef struct IPersistFileVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersistFile* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersistFile* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersistFile* This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersistFile* This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *IsDirty)(
IPersistFile* This);
HRESULT (__attribute__((__stdcall__)) *Load)(
IPersistFile* This,
LPCOLESTR pszFileName,
DWORD dwMode);
HRESULT (__attribute__((__stdcall__)) *Save)(
IPersistFile* This,
LPCOLESTR pszFileName,
WINBOOL fRemember);
HRESULT (__attribute__((__stdcall__)) *SaveCompleted)(
IPersistFile* This,
LPCOLESTR pszFileName);
HRESULT (__attribute__((__stdcall__)) *GetCurFile)(
IPersistFile* This,
LPOLESTR *ppszFileName);
} IPersistFileVtbl;
struct IPersistFile {
IPersistFileVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IPersistFile_IsDirty_Proxy(
IPersistFile* This);
void __attribute__((__stdcall__)) IPersistFile_IsDirty_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistFile_Load_Proxy(
IPersistFile* This,
LPCOLESTR pszFileName,
DWORD dwMode);
void __attribute__((__stdcall__)) IPersistFile_Load_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistFile_Save_Proxy(
IPersistFile* This,
LPCOLESTR pszFileName,
WINBOOL fRemember);
void __attribute__((__stdcall__)) IPersistFile_Save_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistFile_SaveCompleted_Proxy(
IPersistFile* This,
LPCOLESTR pszFileName);
void __attribute__((__stdcall__)) IPersistFile_SaveCompleted_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistFile_GetCurFile_Proxy(
IPersistFile* This,
LPOLESTR *ppszFileName);
void __attribute__((__stdcall__)) IPersistFile_GetCurFile_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IPersistStorage *LPPERSISTSTORAGE;
extern const GUID IID_IPersistStorage;
typedef struct IPersistStorageVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersistStorage* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersistStorage* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersistStorage* This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersistStorage* This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *IsDirty)(
IPersistStorage* This);
HRESULT (__attribute__((__stdcall__)) *InitNew)(
IPersistStorage* This,
IStorage *pStg);
HRESULT (__attribute__((__stdcall__)) *Load)(
IPersistStorage* This,
IStorage *pStg);
HRESULT (__attribute__((__stdcall__)) *Save)(
IPersistStorage* This,
IStorage *pStgSave,
WINBOOL fSameAsLoad);
HRESULT (__attribute__((__stdcall__)) *SaveCompleted)(
IPersistStorage* This,
IStorage *pStgNew);
HRESULT (__attribute__((__stdcall__)) *HandsOffStorage)(
IPersistStorage* This);
} IPersistStorageVtbl;
struct IPersistStorage {
IPersistStorageVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IPersistStorage_IsDirty_Proxy(
IPersistStorage* This);
void __attribute__((__stdcall__)) IPersistStorage_IsDirty_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistStorage_InitNew_Proxy(
IPersistStorage* This,
IStorage *pStg);
void __attribute__((__stdcall__)) IPersistStorage_InitNew_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistStorage_Load_Proxy(
IPersistStorage* This,
IStorage *pStg);
void __attribute__((__stdcall__)) IPersistStorage_Load_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistStorage_Save_Proxy(
IPersistStorage* This,
IStorage *pStgSave,
WINBOOL fSameAsLoad);
void __attribute__((__stdcall__)) IPersistStorage_Save_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistStorage_SaveCompleted_Proxy(
IPersistStorage* This,
IStorage *pStgNew);
void __attribute__((__stdcall__)) IPersistStorage_SaveCompleted_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistStorage_HandsOffStorage_Proxy(
IPersistStorage* This);
void __attribute__((__stdcall__)) IPersistStorage_HandsOffStorage_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef ILockBytes *LPLOCKBYTES;
extern const GUID IID_ILockBytes;
typedef struct ILockBytesVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ILockBytes* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ILockBytes* This);
ULONG (__attribute__((__stdcall__)) *Release)(
ILockBytes* This);
HRESULT (__attribute__((__stdcall__)) *ReadAt)(
ILockBytes* This,
ULARGE_INTEGER ulOffset,
void *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT (__attribute__((__stdcall__)) *WriteAt)(
ILockBytes* This,
ULARGE_INTEGER ulOffset,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT (__attribute__((__stdcall__)) *Flush)(
ILockBytes* This);
HRESULT (__attribute__((__stdcall__)) *SetSize)(
ILockBytes* This,
ULARGE_INTEGER cb);
HRESULT (__attribute__((__stdcall__)) *LockRegion)(
ILockBytes* This,
ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType);
HRESULT (__attribute__((__stdcall__)) *UnlockRegion)(
ILockBytes* This,
ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType);
HRESULT (__attribute__((__stdcall__)) *Stat)(
ILockBytes* This,
STATSTG *pstatstg,
DWORD grfStatFlag);
} ILockBytesVtbl;
struct ILockBytes {
ILockBytesVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ILockBytes_RemoteReadAt_Proxy(
ILockBytes* This,
ULARGE_INTEGER ulOffset,
byte *pv,
ULONG cb,
ULONG *pcbRead);
void __attribute__((__stdcall__)) ILockBytes_RemoteReadAt_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILockBytes_RemoteWriteAt_Proxy(
ILockBytes* This,
ULARGE_INTEGER ulOffset,
const byte *pv,
ULONG cb,
ULONG *pcbWritten);
void __attribute__((__stdcall__)) ILockBytes_RemoteWriteAt_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILockBytes_Flush_Proxy(
ILockBytes* This);
void __attribute__((__stdcall__)) ILockBytes_Flush_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILockBytes_SetSize_Proxy(
ILockBytes* This,
ULARGE_INTEGER cb);
void __attribute__((__stdcall__)) ILockBytes_SetSize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILockBytes_LockRegion_Proxy(
ILockBytes* This,
ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType);
void __attribute__((__stdcall__)) ILockBytes_LockRegion_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILockBytes_UnlockRegion_Proxy(
ILockBytes* This,
ULARGE_INTEGER libOffset,
ULARGE_INTEGER cb,
DWORD dwLockType);
void __attribute__((__stdcall__)) ILockBytes_UnlockRegion_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILockBytes_Stat_Proxy(
ILockBytes* This,
STATSTG *pstatstg,
DWORD grfStatFlag);
void __attribute__((__stdcall__)) ILockBytes_Stat_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILockBytes_ReadAt_Proxy(
ILockBytes* This,
ULARGE_INTEGER ulOffset,
void *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT __attribute__((__stdcall__)) ILockBytes_ReadAt_Stub(
ILockBytes* This,
ULARGE_INTEGER ulOffset,
byte *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT __attribute__((__stdcall__)) ILockBytes_WriteAt_Proxy(
ILockBytes* This,
ULARGE_INTEGER ulOffset,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT __attribute__((__stdcall__)) ILockBytes_WriteAt_Stub(
ILockBytes* This,
ULARGE_INTEGER ulOffset,
const byte *pv,
ULONG cb,
ULONG *pcbWritten);
typedef IEnumFORMATETC *LPENUMFORMATETC;
typedef struct tagDVTARGETDEVICE {
DWORD tdSize;
WORD tdDriverNameOffset;
WORD tdDeviceNameOffset;
WORD tdPortNameOffset;
WORD tdExtDevmodeOffset;
BYTE tdData[1];
} DVTARGETDEVICE;
typedef CLIPFORMAT *LPCLIPFORMAT;
typedef struct tagFORMATETC {
CLIPFORMAT cfFormat;
DVTARGETDEVICE *ptd;
DWORD dwAspect;
LONG lindex;
DWORD tymed;
} FORMATETC;
typedef struct tagFORMATETC *LPFORMATETC;
extern const GUID IID_IEnumFORMATETC;
typedef struct IEnumFORMATETCVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumFORMATETC* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumFORMATETC* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumFORMATETC* This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumFORMATETC* This,
ULONG celt,
FORMATETC *rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumFORMATETC* This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumFORMATETC* This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumFORMATETC* This,
IEnumFORMATETC **ppenum);
} IEnumFORMATETCVtbl;
struct IEnumFORMATETC {
IEnumFORMATETCVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumFORMATETC_RemoteNext_Proxy(
IEnumFORMATETC* This,
ULONG celt,
FORMATETC *rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumFORMATETC_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumFORMATETC_Skip_Proxy(
IEnumFORMATETC* This,
ULONG celt);
void __attribute__((__stdcall__)) IEnumFORMATETC_Skip_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumFORMATETC_Reset_Proxy(
IEnumFORMATETC* This);
void __attribute__((__stdcall__)) IEnumFORMATETC_Reset_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumFORMATETC_Clone_Proxy(
IEnumFORMATETC* This,
IEnumFORMATETC **ppenum);
void __attribute__((__stdcall__)) IEnumFORMATETC_Clone_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumFORMATETC_Next_Proxy(
IEnumFORMATETC* This,
ULONG celt,
FORMATETC *rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumFORMATETC_Next_Stub(
IEnumFORMATETC* This,
ULONG celt,
FORMATETC *rgelt,
ULONG *pceltFetched);
typedef IEnumSTATDATA *LPENUMSTATDATA;
typedef enum tagADVF {
ADVF_NODATA = 1,
ADVF_PRIMEFIRST = 2,
ADVF_ONLYONCE = 4,
ADVF_DATAONSTOP = 64,
ADVFCACHE_NOHANDLER = 8,
ADVFCACHE_FORCEBUILTIN = 16,
ADVFCACHE_ONSAVE = 32
} ADVF;
typedef struct tagSTATDATA {
FORMATETC formatetc;
DWORD advf;
IAdviseSink *pAdvSink;
DWORD dwConnection;
} STATDATA;
typedef STATDATA *LPSTATDATA;
extern const GUID IID_IEnumSTATDATA;
typedef struct IEnumSTATDATAVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumSTATDATA* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumSTATDATA* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumSTATDATA* This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumSTATDATA* This,
ULONG celt,
STATDATA *rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumSTATDATA* This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumSTATDATA* This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumSTATDATA* This,
IEnumSTATDATA **ppenum);
} IEnumSTATDATAVtbl;
struct IEnumSTATDATA {
IEnumSTATDATAVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumSTATDATA_RemoteNext_Proxy(
IEnumSTATDATA* This,
ULONG celt,
STATDATA *rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumSTATDATA_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATDATA_Skip_Proxy(
IEnumSTATDATA* This,
ULONG celt);
void __attribute__((__stdcall__)) IEnumSTATDATA_Skip_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATDATA_Reset_Proxy(
IEnumSTATDATA* This);
void __attribute__((__stdcall__)) IEnumSTATDATA_Reset_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATDATA_Clone_Proxy(
IEnumSTATDATA* This,
IEnumSTATDATA **ppenum);
void __attribute__((__stdcall__)) IEnumSTATDATA_Clone_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATDATA_Next_Proxy(
IEnumSTATDATA* This,
ULONG celt,
STATDATA *rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumSTATDATA_Next_Stub(
IEnumSTATDATA* This,
ULONG celt,
STATDATA *rgelt,
ULONG *pceltFetched);
typedef IRootStorage *LPROOTSTORAGE;
extern const GUID IID_IRootStorage;
typedef struct IRootStorageVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRootStorage* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRootStorage* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRootStorage* This);
HRESULT (__attribute__((__stdcall__)) *SwitchToFile)(
IRootStorage* This,
LPOLESTR pszFile);
} IRootStorageVtbl;
struct IRootStorage {
IRootStorageVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IRootStorage_SwitchToFile_Proxy(
IRootStorage* This,
LPOLESTR pszFile);
void __attribute__((__stdcall__)) IRootStorage_SwitchToFile_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IAdviseSink *LPADVISESINK;
typedef enum tagTYMED {
TYMED_HGLOBAL = 1,
TYMED_FILE = 2,
TYMED_ISTREAM = 4,
TYMED_ISTORAGE = 8,
TYMED_GDI = 16,
TYMED_MFPICT = 32,
TYMED_ENHMF = 64,
TYMED_NULL = 0
} TYMED;
typedef struct tagRemSTGMEDIUM {
DWORD tymed;
DWORD dwHandleType;
ULONG pData;
ULONG pUnkForRelease;
ULONG cbData;
byte data[1];
} RemSTGMEDIUM;
typedef struct tagSTGMEDIUM {
DWORD tymed;
__extension__ union {
HBITMAP hBitmap;
HMETAFILEPICT hMetaFilePict;
HENHMETAFILE hEnhMetaFile;
HGLOBAL hGlobal;
LPOLESTR lpszFileName;
IStream *pstm;
IStorage *pstg;
} ;
IUnknown *pUnkForRelease;
} uSTGMEDIUM;
typedef struct _GDI_OBJECT {
DWORD ObjectType;
union {
wireHBITMAP hBitmap;
wireHPALETTE hPalette;
wireHGLOBAL hGeneric;
} u;
} GDI_OBJECT;
typedef struct _userSTGMEDIUM {
__extension__ struct _STGMEDIUM_UNION {
DWORD tymed;
union {
wireHMETAFILEPICT hMetaFilePict;
wireHENHMETAFILE hHEnhMetaFile;
GDI_OBJECT *hGdiHandle;
wireHGLOBAL hGlobal;
LPOLESTR lpszFileName;
BYTE_BLOB *pstm;
BYTE_BLOB *pstg;
} u;
} ;
IUnknown *pUnkForRelease;
} userSTGMEDIUM;
typedef userSTGMEDIUM *wireSTGMEDIUM;
typedef uSTGMEDIUM STGMEDIUM;
typedef userSTGMEDIUM *wireASYNC_STGMEDIUM;
typedef STGMEDIUM ASYNC_STGMEDIUM;
typedef STGMEDIUM *LPSTGMEDIUM;
typedef struct _userFLAG_STGMEDIUM {
LONG ContextFlags;
LONG fPassOwnership;
userSTGMEDIUM Stgmed;
} userFLAG_STGMEDIUM;
typedef userFLAG_STGMEDIUM *wireFLAG_STGMEDIUM;
typedef struct _FLAG_STGMEDIUM {
LONG ContextFlags;
LONG fPassOwnership;
STGMEDIUM Stgmed;
} FLAG_STGMEDIUM;
extern const GUID IID_IAdviseSink;
typedef struct IAdviseSinkVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAdviseSink* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAdviseSink* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAdviseSink* This);
void (__attribute__((__stdcall__)) *OnDataChange)(
IAdviseSink* This,
FORMATETC *pFormatetc,
STGMEDIUM *pStgmed);
void (__attribute__((__stdcall__)) *OnViewChange)(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
void (__attribute__((__stdcall__)) *OnRename)(
IAdviseSink* This,
IMoniker *pmk);
void (__attribute__((__stdcall__)) *OnSave)(
IAdviseSink* This);
void (__attribute__((__stdcall__)) *OnClose)(
IAdviseSink* This);
} IAdviseSinkVtbl;
struct IAdviseSink {
IAdviseSinkVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IAdviseSink_RemoteOnDataChange_Proxy(
IAdviseSink* This,
FORMATETC *pFormatetc,
ASYNC_STGMEDIUM *pStgmed);
void __attribute__((__stdcall__)) IAdviseSink_RemoteOnDataChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IAdviseSink_RemoteOnViewChange_Proxy(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
void __attribute__((__stdcall__)) IAdviseSink_RemoteOnViewChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IAdviseSink_RemoteOnRename_Proxy(
IAdviseSink* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) IAdviseSink_RemoteOnRename_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IAdviseSink_RemoteOnSave_Proxy(
IAdviseSink* This);
void __attribute__((__stdcall__)) IAdviseSink_RemoteOnSave_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IAdviseSink_RemoteOnClose_Proxy(
IAdviseSink* This);
void __attribute__((__stdcall__)) IAdviseSink_RemoteOnClose_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void __attribute__((__stdcall__)) IAdviseSink_OnDataChange_Proxy(
IAdviseSink* This,
FORMATETC *pFormatetc,
STGMEDIUM *pStgmed);
HRESULT __attribute__((__stdcall__)) IAdviseSink_OnDataChange_Stub(
IAdviseSink* This,
FORMATETC *pFormatetc,
ASYNC_STGMEDIUM *pStgmed);
void __attribute__((__stdcall__)) IAdviseSink_OnViewChange_Proxy(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
HRESULT __attribute__((__stdcall__)) IAdviseSink_OnViewChange_Stub(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
void __attribute__((__stdcall__)) IAdviseSink_OnRename_Proxy(
IAdviseSink* This,
IMoniker *pmk);
HRESULT __attribute__((__stdcall__)) IAdviseSink_OnRename_Stub(
IAdviseSink* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) IAdviseSink_OnSave_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) IAdviseSink_OnSave_Stub(
IAdviseSink* This);
void __attribute__((__stdcall__)) IAdviseSink_OnClose_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) IAdviseSink_OnClose_Stub(
IAdviseSink* This);
extern const GUID IID_AsyncIAdviseSink;
typedef struct AsyncIAdviseSinkVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
AsyncIAdviseSink* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
AsyncIAdviseSink* This);
ULONG (__attribute__((__stdcall__)) *Release)(
AsyncIAdviseSink* This);
void (__attribute__((__stdcall__)) *Begin_OnDataChange)(
AsyncIAdviseSink* This,
FORMATETC *pFormatetc,
STGMEDIUM *pStgmed);
void (__attribute__((__stdcall__)) *Finish_OnDataChange)(
AsyncIAdviseSink* This);
void (__attribute__((__stdcall__)) *Begin_OnViewChange)(
AsyncIAdviseSink* This,
DWORD dwAspect,
LONG lindex);
void (__attribute__((__stdcall__)) *Finish_OnViewChange)(
AsyncIAdviseSink* This);
void (__attribute__((__stdcall__)) *Begin_OnRename)(
AsyncIAdviseSink* This,
IMoniker *pmk);
void (__attribute__((__stdcall__)) *Finish_OnRename)(
AsyncIAdviseSink* This);
void (__attribute__((__stdcall__)) *Begin_OnSave)(
AsyncIAdviseSink* This);
void (__attribute__((__stdcall__)) *Finish_OnSave)(
AsyncIAdviseSink* This);
void (__attribute__((__stdcall__)) *Begin_OnClose)(
AsyncIAdviseSink* This);
void (__attribute__((__stdcall__)) *Finish_OnClose)(
AsyncIAdviseSink* This);
} AsyncIAdviseSinkVtbl;
struct AsyncIAdviseSink {
AsyncIAdviseSinkVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnDataChange_Proxy(
IAdviseSink* This,
FORMATETC *pFormatetc,
ASYNC_STGMEDIUM *pStgmed);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnDataChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnDataChange_Proxy(
IAdviseSink* This,
FORMATETC *pFormatetc,
ASYNC_STGMEDIUM *pStgmed);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnDataChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnViewChange_Proxy(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnViewChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnViewChange_Proxy(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnViewChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnRename_Proxy(
IAdviseSink* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnRename_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnRename_Proxy(
IAdviseSink* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnRename_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnSave_Proxy(
IAdviseSink* This);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnSave_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnSave_Proxy(
IAdviseSink* This);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnSave_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnClose_Proxy(
IAdviseSink* This);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_RemoteOnClose_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnClose_Proxy(
IAdviseSink* This);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_RemoteOnClose_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnDataChange_Proxy(
IAdviseSink* This,
FORMATETC *pFormatetc,
STGMEDIUM *pStgmed);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnDataChange_Stub(
IAdviseSink* This,
FORMATETC *pFormatetc,
ASYNC_STGMEDIUM *pStgmed);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnDataChange_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnDataChange_Stub(
IAdviseSink* This,
FORMATETC *pFormatetc,
ASYNC_STGMEDIUM *pStgmed);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnViewChange_Proxy(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnViewChange_Stub(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnViewChange_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnViewChange_Stub(
IAdviseSink* This,
DWORD dwAspect,
LONG lindex);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnRename_Proxy(
IAdviseSink* This,
IMoniker *pmk);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnRename_Stub(
IAdviseSink* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnRename_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnRename_Stub(
IAdviseSink* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnSave_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnSave_Stub(
IAdviseSink* This);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnSave_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnSave_Stub(
IAdviseSink* This);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnClose_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Begin_OnClose_Stub(
IAdviseSink* This);
void __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnClose_Proxy(
IAdviseSink* This);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink_Finish_OnClose_Stub(
IAdviseSink* This);
typedef IAdviseSink2 *LPADVISESINK2;
extern const GUID IID_IAdviseSink2;
typedef struct IAdviseSink2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAdviseSink2* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAdviseSink2* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAdviseSink2* This);
void (__attribute__((__stdcall__)) *OnDataChange)(
IAdviseSink2* This,
FORMATETC *pFormatetc,
STGMEDIUM *pStgmed);
void (__attribute__((__stdcall__)) *OnViewChange)(
IAdviseSink2* This,
DWORD dwAspect,
LONG lindex);
void (__attribute__((__stdcall__)) *OnRename)(
IAdviseSink2* This,
IMoniker *pmk);
void (__attribute__((__stdcall__)) *OnSave)(
IAdviseSink2* This);
void (__attribute__((__stdcall__)) *OnClose)(
IAdviseSink2* This);
void (__attribute__((__stdcall__)) *OnLinkSrcChange)(
IAdviseSink2* This,
IMoniker *pmk);
} IAdviseSink2Vtbl;
struct IAdviseSink2 {
IAdviseSink2Vtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IAdviseSink2_RemoteOnLinkSrcChange_Proxy(
IAdviseSink2* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) IAdviseSink2_RemoteOnLinkSrcChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void __attribute__((__stdcall__)) IAdviseSink2_OnLinkSrcChange_Proxy(
IAdviseSink2* This,
IMoniker *pmk);
HRESULT __attribute__((__stdcall__)) IAdviseSink2_OnLinkSrcChange_Stub(
IAdviseSink2* This,
IMoniker *pmk);
extern const GUID IID_AsyncIAdviseSink2;
typedef struct AsyncIAdviseSink2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
AsyncIAdviseSink2* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
AsyncIAdviseSink2* This);
ULONG (__attribute__((__stdcall__)) *Release)(
AsyncIAdviseSink2* This);
void (__attribute__((__stdcall__)) *Begin_OnDataChange)(
AsyncIAdviseSink2* This,
FORMATETC *pFormatetc,
STGMEDIUM *pStgmed);
void (__attribute__((__stdcall__)) *Finish_OnDataChange)(
AsyncIAdviseSink2* This);
void (__attribute__((__stdcall__)) *Begin_OnViewChange)(
AsyncIAdviseSink2* This,
DWORD dwAspect,
LONG lindex);
void (__attribute__((__stdcall__)) *Finish_OnViewChange)(
AsyncIAdviseSink2* This);
void (__attribute__((__stdcall__)) *Begin_OnRename)(
AsyncIAdviseSink2* This,
IMoniker *pmk);
void (__attribute__((__stdcall__)) *Finish_OnRename)(
AsyncIAdviseSink2* This);
void (__attribute__((__stdcall__)) *Begin_OnSave)(
AsyncIAdviseSink2* This);
void (__attribute__((__stdcall__)) *Finish_OnSave)(
AsyncIAdviseSink2* This);
void (__attribute__((__stdcall__)) *Begin_OnClose)(
AsyncIAdviseSink2* This);
void (__attribute__((__stdcall__)) *Finish_OnClose)(
AsyncIAdviseSink2* This);
void (__attribute__((__stdcall__)) *Begin_OnLinkSrcChange)(
AsyncIAdviseSink2* This,
IMoniker *pmk);
void (__attribute__((__stdcall__)) *Finish_OnLinkSrcChange)(
AsyncIAdviseSink2* This);
} AsyncIAdviseSink2Vtbl;
struct AsyncIAdviseSink2 {
AsyncIAdviseSink2Vtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink2_Begin_RemoteOnLinkSrcChange_Proxy(
IAdviseSink2* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) AsyncIAdviseSink2_Begin_RemoteOnLinkSrcChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink2_Finish_RemoteOnLinkSrcChange_Proxy(
IAdviseSink2* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) AsyncIAdviseSink2_Finish_RemoteOnLinkSrcChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void __attribute__((__stdcall__)) AsyncIAdviseSink2_Begin_OnLinkSrcChange_Proxy(
IAdviseSink2* This,
IMoniker *pmk);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink2_Begin_OnLinkSrcChange_Stub(
IAdviseSink2* This,
IMoniker *pmk);
void __attribute__((__stdcall__)) AsyncIAdviseSink2_Finish_OnLinkSrcChange_Proxy(
IAdviseSink2* This);
HRESULT __attribute__((__stdcall__)) AsyncIAdviseSink2_Finish_OnLinkSrcChange_Stub(
IAdviseSink2* This,
IMoniker *pmk);
typedef IDataObject *LPDATAOBJECT;
typedef enum tagDATADIR {
DATADIR_GET = 1,
DATADIR_SET = 2
} DATADIR;
extern const GUID IID_IDataObject;
typedef struct IDataObjectVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDataObject* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDataObject* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDataObject* This);
HRESULT (__attribute__((__stdcall__)) *GetData)(
IDataObject* This,
FORMATETC *pformatetcIn,
STGMEDIUM *pmedium);
HRESULT (__attribute__((__stdcall__)) *GetDataHere)(
IDataObject* This,
FORMATETC *pformatetc,
STGMEDIUM *pmedium);
HRESULT (__attribute__((__stdcall__)) *QueryGetData)(
IDataObject* This,
FORMATETC *pformatetc);
HRESULT (__attribute__((__stdcall__)) *GetCanonicalFormatEtc)(
IDataObject* This,
FORMATETC *pformatectIn,
FORMATETC *pformatetcOut);
HRESULT (__attribute__((__stdcall__)) *SetData)(
IDataObject* This,
FORMATETC *pformatetc,
STGMEDIUM *pmedium,
WINBOOL fRelease);
HRESULT (__attribute__((__stdcall__)) *EnumFormatEtc)(
IDataObject* This,
DWORD dwDirection,
IEnumFORMATETC **ppenumFormatEtc);
HRESULT (__attribute__((__stdcall__)) *DAdvise)(
IDataObject* This,
FORMATETC *pformatetc,
DWORD advf,
IAdviseSink *pAdvSink,
DWORD *pdwConnection);
HRESULT (__attribute__((__stdcall__)) *DUnadvise)(
IDataObject* This,
DWORD dwConnection);
HRESULT (__attribute__((__stdcall__)) *EnumDAdvise)(
IDataObject* This,
IEnumSTATDATA **ppenumAdvise);
} IDataObjectVtbl;
struct IDataObject {
IDataObjectVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IDataObject_RemoteGetData_Proxy(
IDataObject* This,
FORMATETC *pformatetcIn,
STGMEDIUM *pRemoteMedium);
void __attribute__((__stdcall__)) IDataObject_RemoteGetData_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_RemoteGetDataHere_Proxy(
IDataObject* This,
FORMATETC *pformatetc,
STGMEDIUM *pRemoteMedium);
void __attribute__((__stdcall__)) IDataObject_RemoteGetDataHere_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_QueryGetData_Proxy(
IDataObject* This,
FORMATETC *pformatetc);
void __attribute__((__stdcall__)) IDataObject_QueryGetData_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_GetCanonicalFormatEtc_Proxy(
IDataObject* This,
FORMATETC *pformatectIn,
FORMATETC *pformatetcOut);
void __attribute__((__stdcall__)) IDataObject_GetCanonicalFormatEtc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_RemoteSetData_Proxy(
IDataObject* This,
FORMATETC *pformatetc,
FLAG_STGMEDIUM *pmedium,
WINBOOL fRelease);
void __attribute__((__stdcall__)) IDataObject_RemoteSetData_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_EnumFormatEtc_Proxy(
IDataObject* This,
DWORD dwDirection,
IEnumFORMATETC **ppenumFormatEtc);
void __attribute__((__stdcall__)) IDataObject_EnumFormatEtc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_DAdvise_Proxy(
IDataObject* This,
FORMATETC *pformatetc,
DWORD advf,
IAdviseSink *pAdvSink,
DWORD *pdwConnection);
void __attribute__((__stdcall__)) IDataObject_DAdvise_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_DUnadvise_Proxy(
IDataObject* This,
DWORD dwConnection);
void __attribute__((__stdcall__)) IDataObject_DUnadvise_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_EnumDAdvise_Proxy(
IDataObject* This,
IEnumSTATDATA **ppenumAdvise);
void __attribute__((__stdcall__)) IDataObject_EnumDAdvise_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataObject_GetData_Proxy(
IDataObject* This,
FORMATETC *pformatetcIn,
STGMEDIUM *pmedium);
HRESULT __attribute__((__stdcall__)) IDataObject_GetData_Stub(
IDataObject* This,
FORMATETC *pformatetcIn,
STGMEDIUM *pRemoteMedium);
HRESULT __attribute__((__stdcall__)) IDataObject_GetDataHere_Proxy(
IDataObject* This,
FORMATETC *pformatetc,
STGMEDIUM *pmedium);
HRESULT __attribute__((__stdcall__)) IDataObject_GetDataHere_Stub(
IDataObject* This,
FORMATETC *pformatetc,
STGMEDIUM *pRemoteMedium);
HRESULT __attribute__((__stdcall__)) IDataObject_SetData_Proxy(
IDataObject* This,
FORMATETC *pformatetc,
STGMEDIUM *pmedium,
WINBOOL fRelease);
HRESULT __attribute__((__stdcall__)) IDataObject_SetData_Stub(
IDataObject* This,
FORMATETC *pformatetc,
FLAG_STGMEDIUM *pmedium,
WINBOOL fRelease);
typedef IDataAdviseHolder *LPDATAADVISEHOLDER;
extern const GUID IID_IDataAdviseHolder;
typedef struct IDataAdviseHolderVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDataAdviseHolder* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDataAdviseHolder* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDataAdviseHolder* This);
HRESULT (__attribute__((__stdcall__)) *Advise)(
IDataAdviseHolder* This,
IDataObject *pDataObject,
FORMATETC *pFetc,
DWORD advf,
IAdviseSink *pAdvise,
DWORD *pdwConnection);
HRESULT (__attribute__((__stdcall__)) *Unadvise)(
IDataAdviseHolder* This,
DWORD dwConnection);
HRESULT (__attribute__((__stdcall__)) *EnumAdvise)(
IDataAdviseHolder* This,
IEnumSTATDATA **ppenumAdvise);
HRESULT (__attribute__((__stdcall__)) *SendOnDataChange)(
IDataAdviseHolder* This,
IDataObject *pDataObject,
DWORD dwReserved,
DWORD advf);
} IDataAdviseHolderVtbl;
struct IDataAdviseHolder {
IDataAdviseHolderVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IDataAdviseHolder_Advise_Proxy(
IDataAdviseHolder* This,
IDataObject *pDataObject,
FORMATETC *pFetc,
DWORD advf,
IAdviseSink *pAdvise,
DWORD *pdwConnection);
void __attribute__((__stdcall__)) IDataAdviseHolder_Advise_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataAdviseHolder_Unadvise_Proxy(
IDataAdviseHolder* This,
DWORD dwConnection);
void __attribute__((__stdcall__)) IDataAdviseHolder_Unadvise_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataAdviseHolder_EnumAdvise_Proxy(
IDataAdviseHolder* This,
IEnumSTATDATA **ppenumAdvise);
void __attribute__((__stdcall__)) IDataAdviseHolder_EnumAdvise_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDataAdviseHolder_SendOnDataChange_Proxy(
IDataAdviseHolder* This,
IDataObject *pDataObject,
DWORD dwReserved,
DWORD advf);
void __attribute__((__stdcall__)) IDataAdviseHolder_SendOnDataChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IMessageFilter *LPMESSAGEFILTER;
typedef enum tagCALLTYPE {
CALLTYPE_TOPLEVEL = 1,
CALLTYPE_NESTED = 2,
CALLTYPE_ASYNC = 3,
CALLTYPE_TOPLEVEL_CALLPENDING = 4,
CALLTYPE_ASYNC_CALLPENDING = 5
} CALLTYPE;
typedef enum tagSERVERCALL {
SERVERCALL_ISHANDLED = 0,
SERVERCALL_REJECTED = 1,
SERVERCALL_RETRYLATER = 2
} SERVERCALL;
typedef enum tagPENDINGTYPE {
PENDINGTYPE_TOPLEVEL = 1,
PENDINGTYPE_NESTED = 2
} PENDINGTYPE;
typedef enum tagPENDINGMSG {
PENDINGMSG_CANCELCALL = 0,
PENDINGMSG_WAITNOPROCESS = 1,
PENDINGMSG_WAITDEFPROCESS = 2
} PENDINGMSG;
typedef struct tagINTERFACEINFO {
IUnknown *pUnk;
IID iid;
WORD wMethod;
} INTERFACEINFO;
typedef struct tagINTERFACEINFO *LPINTERFACEINFO;
extern const GUID IID_IMessageFilter;
typedef struct IMessageFilterVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMessageFilter* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMessageFilter* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMessageFilter* This);
DWORD (__attribute__((__stdcall__)) *HandleInComingCall)(
IMessageFilter* This,
DWORD dwCallType,
HTASK htaskCaller,
DWORD dwTickCount,
LPINTERFACEINFO lpInterfaceInfo);
DWORD (__attribute__((__stdcall__)) *RetryRejectedCall)(
IMessageFilter* This,
HTASK htaskCallee,
DWORD dwTickCount,
DWORD dwRejectType);
DWORD (__attribute__((__stdcall__)) *MessagePending)(
IMessageFilter* This,
HTASK htaskCallee,
DWORD dwTickCount,
DWORD dwPendingType);
} IMessageFilterVtbl;
struct IMessageFilter {
IMessageFilterVtbl* lpVtbl;
};
DWORD __attribute__((__stdcall__)) IMessageFilter_HandleInComingCall_Proxy(
IMessageFilter* This,
DWORD dwCallType,
HTASK htaskCaller,
DWORD dwTickCount,
LPINTERFACEINFO lpInterfaceInfo);
void __attribute__((__stdcall__)) IMessageFilter_HandleInComingCall_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
DWORD __attribute__((__stdcall__)) IMessageFilter_RetryRejectedCall_Proxy(
IMessageFilter* This,
HTASK htaskCallee,
DWORD dwTickCount,
DWORD dwRejectType);
void __attribute__((__stdcall__)) IMessageFilter_RetryRejectedCall_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
DWORD __attribute__((__stdcall__)) IMessageFilter_MessagePending_Proxy(
IMessageFilter* This,
HTASK htaskCallee,
DWORD dwTickCount,
DWORD dwPendingType);
void __attribute__((__stdcall__)) IMessageFilter_MessagePending_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const FMTID FMTID_SummaryInformation;
extern const FMTID FMTID_DocSummaryInformation;
extern const FMTID FMTID_UserDefinedProperties;
extern const FMTID FMTID_DiscardableInformation;
extern const FMTID FMTID_ImageSummaryInformation;
extern const FMTID FMTID_AudioSummaryInformation;
extern const FMTID FMTID_VideoSummaryInformation;
extern const FMTID FMTID_MediaFileSummaryInformation;
extern const GUID IID_IClassActivator;
typedef struct IClassActivatorVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IClassActivator* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IClassActivator* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IClassActivator* This);
HRESULT (__attribute__((__stdcall__)) *GetClassObject)(
IClassActivator* This,
const IID *const rclsid,
DWORD dwClassContext,
LCID locale,
const IID *const riid,
void **ppv);
} IClassActivatorVtbl;
struct IClassActivator {
IClassActivatorVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IClassActivator_GetClassObject_Proxy(
IClassActivator* This,
const IID *const rclsid,
DWORD dwClassContext,
LCID locale,
const IID *const riid,
void **ppv);
void __attribute__((__stdcall__)) IClassActivator_GetClassObject_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IFillLockBytes;
typedef struct IFillLockBytesVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IFillLockBytes* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IFillLockBytes* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IFillLockBytes* This);
HRESULT (__attribute__((__stdcall__)) *FillAppend)(
IFillLockBytes* This,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT (__attribute__((__stdcall__)) *FillAt)(
IFillLockBytes* This,
ULARGE_INTEGER ulOffset,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT (__attribute__((__stdcall__)) *SetFillSize)(
IFillLockBytes* This,
ULARGE_INTEGER ulSize);
HRESULT (__attribute__((__stdcall__)) *Terminate)(
IFillLockBytes* This,
WINBOOL bCanceled);
} IFillLockBytesVtbl;
struct IFillLockBytes {
IFillLockBytesVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IFillLockBytes_RemoteFillAppend_Proxy(
IFillLockBytes* This,
const byte *pv,
ULONG cb,
ULONG *pcbWritten);
void __attribute__((__stdcall__)) IFillLockBytes_RemoteFillAppend_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IFillLockBytes_RemoteFillAt_Proxy(
IFillLockBytes* This,
ULARGE_INTEGER ulOffset,
const byte *pv,
ULONG cb,
ULONG *pcbWritten);
void __attribute__((__stdcall__)) IFillLockBytes_RemoteFillAt_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IFillLockBytes_SetFillSize_Proxy(
IFillLockBytes* This,
ULARGE_INTEGER ulSize);
void __attribute__((__stdcall__)) IFillLockBytes_SetFillSize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IFillLockBytes_Terminate_Proxy(
IFillLockBytes* This,
WINBOOL bCanceled);
void __attribute__((__stdcall__)) IFillLockBytes_Terminate_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IFillLockBytes_FillAppend_Proxy(
IFillLockBytes* This,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT __attribute__((__stdcall__)) IFillLockBytes_FillAppend_Stub(
IFillLockBytes* This,
const byte *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT __attribute__((__stdcall__)) IFillLockBytes_FillAt_Proxy(
IFillLockBytes* This,
ULARGE_INTEGER ulOffset,
const void *pv,
ULONG cb,
ULONG *pcbWritten);
HRESULT __attribute__((__stdcall__)) IFillLockBytes_FillAt_Stub(
IFillLockBytes* This,
ULARGE_INTEGER ulOffset,
const byte *pv,
ULONG cb,
ULONG *pcbWritten);
extern const GUID IID_IProgressNotify;
typedef struct IProgressNotifyVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IProgressNotify* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IProgressNotify* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IProgressNotify* This);
HRESULT (__attribute__((__stdcall__)) *OnProgress)(
IProgressNotify* This,
DWORD dwProgressCurrent,
DWORD dwProgressMaximum,
WINBOOL fAccurate,
WINBOOL fOwner);
} IProgressNotifyVtbl;
struct IProgressNotify {
IProgressNotifyVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IProgressNotify_OnProgress_Proxy(
IProgressNotify* This,
DWORD dwProgressCurrent,
DWORD dwProgressMaximum,
WINBOOL fAccurate,
WINBOOL fOwner);
void __attribute__((__stdcall__)) IProgressNotify_OnProgress_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef struct tagStorageLayout {
DWORD LayoutType;
OLECHAR *pwcsElementName;
LARGE_INTEGER cOffset;
LARGE_INTEGER cBytes;
} StorageLayout;
extern const GUID IID_ILayoutStorage;
typedef struct ILayoutStorageVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ILayoutStorage* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ILayoutStorage* This);
ULONG (__attribute__((__stdcall__)) *Release)(
ILayoutStorage* This);
HRESULT (__attribute__((__stdcall__)) *LayoutScript)(
ILayoutStorage* This,
StorageLayout *pStorageLayout,
DWORD nEntries,
DWORD glfInterleavedFlag);
HRESULT (__attribute__((__stdcall__)) *BeginMonitor)(
ILayoutStorage* This);
HRESULT (__attribute__((__stdcall__)) *EndMonitor)(
ILayoutStorage* This);
HRESULT (__attribute__((__stdcall__)) *ReLayoutDocfile)(
ILayoutStorage* This,
OLECHAR *pwcsNewDfName);
HRESULT (__attribute__((__stdcall__)) *ReLayoutDocfileOnILockBytes)(
ILayoutStorage* This,
ILockBytes *pILockBytes);
} ILayoutStorageVtbl;
struct ILayoutStorage {
ILayoutStorageVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ILayoutStorage_LayoutScript_Proxy(
ILayoutStorage* This,
StorageLayout *pStorageLayout,
DWORD nEntries,
DWORD glfInterleavedFlag);
void __attribute__((__stdcall__)) ILayoutStorage_LayoutScript_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILayoutStorage_BeginMonitor_Proxy(
ILayoutStorage* This);
void __attribute__((__stdcall__)) ILayoutStorage_BeginMonitor_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILayoutStorage_EndMonitor_Proxy(
ILayoutStorage* This);
void __attribute__((__stdcall__)) ILayoutStorage_EndMonitor_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILayoutStorage_ReLayoutDocfile_Proxy(
ILayoutStorage* This,
OLECHAR *pwcsNewDfName);
void __attribute__((__stdcall__)) ILayoutStorage_ReLayoutDocfile_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ILayoutStorage_ReLayoutDocfileOnILockBytes_Proxy(
ILayoutStorage* This,
ILockBytes *pILockBytes);
void __attribute__((__stdcall__)) ILayoutStorage_ReLayoutDocfileOnILockBytes_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IBlockingLock;
typedef struct IBlockingLockVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IBlockingLock* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IBlockingLock* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IBlockingLock* This);
HRESULT (__attribute__((__stdcall__)) *Lock)(
IBlockingLock* This,
DWORD dwTimeout);
HRESULT (__attribute__((__stdcall__)) *Unlock)(
IBlockingLock* This);
} IBlockingLockVtbl;
struct IBlockingLock {
IBlockingLockVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IBlockingLock_Lock_Proxy(
IBlockingLock* This,
DWORD dwTimeout);
void __attribute__((__stdcall__)) IBlockingLock_Lock_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBlockingLock_Unlock_Proxy(
IBlockingLock* This);
void __attribute__((__stdcall__)) IBlockingLock_Unlock_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_ITimeAndNoticeControl;
typedef struct ITimeAndNoticeControlVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITimeAndNoticeControl* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITimeAndNoticeControl* This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITimeAndNoticeControl* This);
HRESULT (__attribute__((__stdcall__)) *SuppressChanges)(
ITimeAndNoticeControl* This,
DWORD res1,
DWORD res2);
} ITimeAndNoticeControlVtbl;
struct ITimeAndNoticeControl {
ITimeAndNoticeControlVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ITimeAndNoticeControl_SuppressChanges_Proxy(
ITimeAndNoticeControl* This,
DWORD res1,
DWORD res2);
void __attribute__((__stdcall__)) ITimeAndNoticeControl_SuppressChanges_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IOplockStorage;
typedef struct IOplockStorageVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOplockStorage* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOplockStorage* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOplockStorage* This);
HRESULT (__attribute__((__stdcall__)) *CreateStorageEx)(
IOplockStorage* This,
LPCWSTR pwcsName,
DWORD grfMode,
DWORD stgfmt,
DWORD grfAttrs,
const IID *const riid,
void **ppstgOpen);
HRESULT (__attribute__((__stdcall__)) *OpenStorageEx)(
IOplockStorage* This,
LPCWSTR pwcsName,
DWORD grfMode,
DWORD stgfmt,
DWORD grfAttrs,
const IID *const riid,
void **ppstgOpen);
} IOplockStorageVtbl;
struct IOplockStorage {
IOplockStorageVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IOplockStorage_CreateStorageEx_Proxy(
IOplockStorage* This,
LPCWSTR pwcsName,
DWORD grfMode,
DWORD stgfmt,
DWORD grfAttrs,
const IID *const riid,
void **ppstgOpen);
void __attribute__((__stdcall__)) IOplockStorage_CreateStorageEx_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IOplockStorage_OpenStorageEx_Proxy(
IOplockStorage* This,
LPCWSTR pwcsName,
DWORD grfMode,
DWORD stgfmt,
DWORD grfAttrs,
const IID *const riid,
void **ppstgOpen);
void __attribute__((__stdcall__)) IOplockStorage_OpenStorageEx_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IDirectWriterLock;
typedef struct IDirectWriterLockVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDirectWriterLock* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDirectWriterLock* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDirectWriterLock* This);
HRESULT (__attribute__((__stdcall__)) *WaitForWriteAccess)(
IDirectWriterLock* This,
DWORD dwTimeout);
HRESULT (__attribute__((__stdcall__)) *ReleaseWriteAccess)(
IDirectWriterLock* This);
HRESULT (__attribute__((__stdcall__)) *HaveWriteAccess)(
IDirectWriterLock* This);
} IDirectWriterLockVtbl;
struct IDirectWriterLock {
IDirectWriterLockVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IDirectWriterLock_WaitForWriteAccess_Proxy(
IDirectWriterLock* This,
DWORD dwTimeout);
void __attribute__((__stdcall__)) IDirectWriterLock_WaitForWriteAccess_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDirectWriterLock_ReleaseWriteAccess_Proxy(
IDirectWriterLock* This);
void __attribute__((__stdcall__)) IDirectWriterLock_ReleaseWriteAccess_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDirectWriterLock_HaveWriteAccess_Proxy(
IDirectWriterLock* This);
void __attribute__((__stdcall__)) IDirectWriterLock_HaveWriteAccess_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IUrlMon;
typedef struct IUrlMonVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IUrlMon* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IUrlMon* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IUrlMon* This);
HRESULT (__attribute__((__stdcall__)) *AsyncGetClassBits)(
IUrlMon* This,
const IID *const rclsid,
LPCWSTR pszTYPE,
LPCWSTR pszExt,
DWORD dwFileVersionMS,
DWORD dwFileVersionLS,
LPCWSTR pszCodeBase,
IBindCtx *pbc,
DWORD dwClassContext,
const IID *const riid,
DWORD flags);
} IUrlMonVtbl;
struct IUrlMon {
IUrlMonVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IUrlMon_AsyncGetClassBits_Proxy(
IUrlMon* This,
const IID *const rclsid,
LPCWSTR pszTYPE,
LPCWSTR pszExt,
DWORD dwFileVersionMS,
DWORD dwFileVersionLS,
LPCWSTR pszCodeBase,
IBindCtx *pbc,
DWORD dwClassContext,
const IID *const riid,
DWORD flags);
void __attribute__((__stdcall__)) IUrlMon_AsyncGetClassBits_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IForegroundTransfer;
typedef struct IForegroundTransferVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IForegroundTransfer* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IForegroundTransfer* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IForegroundTransfer* This);
HRESULT (__attribute__((__stdcall__)) *AllowForegroundTransfer)(
IForegroundTransfer* This,
void *lpvReserved);
} IForegroundTransferVtbl;
struct IForegroundTransfer {
IForegroundTransferVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IForegroundTransfer_AllowForegroundTransfer_Proxy(
IForegroundTransfer* This,
void *lpvReserved);
void __attribute__((__stdcall__)) IForegroundTransfer_AllowForegroundTransfer_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IThumbnailExtractor;
typedef struct IThumbnailExtractorVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IThumbnailExtractor* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IThumbnailExtractor* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IThumbnailExtractor* This);
HRESULT (__attribute__((__stdcall__)) *ExtractThumbnail)(
IThumbnailExtractor* This,
IStorage *pStg,
ULONG ulLength,
ULONG ulHeight,
ULONG *pulOutputLength,
ULONG *pulOutputHeight,
HBITMAP *phOutputBitmap);
HRESULT (__attribute__((__stdcall__)) *OnFileUpdated)(
IThumbnailExtractor* This,
IStorage *pStg);
} IThumbnailExtractorVtbl;
struct IThumbnailExtractor {
IThumbnailExtractorVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IThumbnailExtractor_ExtractThumbnail_Proxy(
IThumbnailExtractor* This,
IStorage *pStg,
ULONG ulLength,
ULONG ulHeight,
ULONG *pulOutputLength,
ULONG *pulOutputHeight,
HBITMAP *phOutputBitmap);
void __attribute__((__stdcall__)) IThumbnailExtractor_ExtractThumbnail_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IThumbnailExtractor_OnFileUpdated_Proxy(
IThumbnailExtractor* This,
IStorage *pStg);
void __attribute__((__stdcall__)) IThumbnailExtractor_OnFileUpdated_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IDummyHICONIncluder;
typedef struct IDummyHICONIncluderVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDummyHICONIncluder* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDummyHICONIncluder* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDummyHICONIncluder* This);
HRESULT (__attribute__((__stdcall__)) *Dummy)(
IDummyHICONIncluder* This,
HICON h1,
HDC h2);
} IDummyHICONIncluderVtbl;
struct IDummyHICONIncluder {
IDummyHICONIncluderVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IDummyHICONIncluder_Dummy_Proxy(
IDummyHICONIncluder* This,
HICON h1,
HDC h2);
void __attribute__((__stdcall__)) IDummyHICONIncluder_Dummy_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef enum tagApplicationType {
ServerApplication = 0,
LibraryApplication = 1
} ApplicationType;
typedef enum tagShutdownType {
IdleShutdown = 0,
ForcedShutdown = 1
} ShutdownType;
extern const GUID IID_IProcessLock;
typedef struct IProcessLockVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IProcessLock* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IProcessLock* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IProcessLock* This);
ULONG (__attribute__((__stdcall__)) *AddRefOnProcess)(
IProcessLock* This);
ULONG (__attribute__((__stdcall__)) *ReleaseRefOnProcess)(
IProcessLock* This);
} IProcessLockVtbl;
struct IProcessLock {
IProcessLockVtbl* lpVtbl;
};
ULONG __attribute__((__stdcall__)) IProcessLock_AddRefOnProcess_Proxy(
IProcessLock* This);
void __attribute__((__stdcall__)) IProcessLock_AddRefOnProcess_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
ULONG __attribute__((__stdcall__)) IProcessLock_ReleaseRefOnProcess_Proxy(
IProcessLock* This);
void __attribute__((__stdcall__)) IProcessLock_ReleaseRefOnProcess_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_ISurrogateService;
typedef struct ISurrogateServiceVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISurrogateService* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISurrogateService* This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISurrogateService* This);
HRESULT (__attribute__((__stdcall__)) *Init)(
ISurrogateService* This,
const GUID *const rguidProcessID,
IProcessLock *pProcessLock,
WINBOOL *pfApplicationAware);
HRESULT (__attribute__((__stdcall__)) *ApplicationLaunch)(
ISurrogateService* This,
const GUID *const rguidApplID,
ApplicationType appType);
HRESULT (__attribute__((__stdcall__)) *ApplicationFree)(
ISurrogateService* This,
const GUID *const rguidApplID);
HRESULT (__attribute__((__stdcall__)) *CatalogRefresh)(
ISurrogateService* This,
ULONG ulReserved);
HRESULT (__attribute__((__stdcall__)) *ProcessShutdown)(
ISurrogateService* This,
ShutdownType shutdownType);
} ISurrogateServiceVtbl;
struct ISurrogateService {
ISurrogateServiceVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ISurrogateService_Init_Proxy(
ISurrogateService* This,
const GUID *const rguidProcessID,
IProcessLock *pProcessLock,
WINBOOL *pfApplicationAware);
void __attribute__((__stdcall__)) ISurrogateService_Init_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ISurrogateService_ApplicationLaunch_Proxy(
ISurrogateService* This,
const GUID *const rguidApplID,
ApplicationType appType);
void __attribute__((__stdcall__)) ISurrogateService_ApplicationLaunch_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ISurrogateService_ApplicationFree_Proxy(
ISurrogateService* This,
const GUID *const rguidApplID);
void __attribute__((__stdcall__)) ISurrogateService_ApplicationFree_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ISurrogateService_CatalogRefresh_Proxy(
ISurrogateService* This,
ULONG ulReserved);
void __attribute__((__stdcall__)) ISurrogateService_CatalogRefresh_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ISurrogateService_ProcessShutdown_Proxy(
ISurrogateService* This,
ShutdownType shutdownType);
void __attribute__((__stdcall__)) ISurrogateService_ProcessShutdown_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
typedef IInitializeSpy *LPINITIALIZESPY;
extern const GUID IID_IInitializeSpy;
typedef struct IInitializeSpyVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInitializeSpy* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInitializeSpy* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInitializeSpy* This);
HRESULT (__attribute__((__stdcall__)) *PreInitialize)(
IInitializeSpy* This,
DWORD dwCoInit,
DWORD dwCurThreadAptRefs);
HRESULT (__attribute__((__stdcall__)) *PostInitialize)(
IInitializeSpy* This,
HRESULT hrCoInit,
DWORD dwCoInit,
DWORD dwNewThreadAptRefs);
HRESULT (__attribute__((__stdcall__)) *PreUninitialize)(
IInitializeSpy* This,
DWORD dwCurThreadAptRefs);
HRESULT (__attribute__((__stdcall__)) *PostUninitialize)(
IInitializeSpy* This,
DWORD dwNewThreadAptRefs);
} IInitializeSpyVtbl;
struct IInitializeSpy {
IInitializeSpyVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IInitializeSpy_PreInitialize_Proxy(
IInitializeSpy* This,
DWORD dwCoInit,
DWORD dwCurThreadAptRefs);
void __attribute__((__stdcall__)) IInitializeSpy_PreInitialize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IInitializeSpy_PostInitialize_Proxy(
IInitializeSpy* This,
HRESULT hrCoInit,
DWORD dwCoInit,
DWORD dwNewThreadAptRefs);
void __attribute__((__stdcall__)) IInitializeSpy_PostInitialize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IInitializeSpy_PreUninitialize_Proxy(
IInitializeSpy* This,
DWORD dwCurThreadAptRefs);
void __attribute__((__stdcall__)) IInitializeSpy_PreUninitialize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IInitializeSpy_PostUninitialize_Proxy(
IInitializeSpy* This,
DWORD dwNewThreadAptRefs);
void __attribute__((__stdcall__)) IInitializeSpy_PostUninitialize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
extern const GUID IID_IApartmentShutdown;
typedef struct IApartmentShutdownVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IApartmentShutdown* This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IApartmentShutdown* This);
ULONG (__attribute__((__stdcall__)) *Release)(
IApartmentShutdown* This);
void (__attribute__((__stdcall__)) *OnUninitialize)(
IApartmentShutdown* This,
UINT64 ui64ApartmentIdentifier);
} IApartmentShutdownVtbl;
struct IApartmentShutdown {
IApartmentShutdownVtbl* lpVtbl;
};
void __attribute__((__stdcall__)) IApartmentShutdown_OnUninitialize_Proxy(
IApartmentShutdown* This,
UINT64 ui64ApartmentIdentifier);
void __attribute__((__stdcall__)) IApartmentShutdown_OnUninitialize_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
ULONG __attribute__((__stdcall__)) SNB_UserSize (ULONG *, ULONG, SNB *);
unsigned char * __attribute__((__stdcall__)) SNB_UserMarshal (ULONG *, unsigned char *, SNB *);
unsigned char * __attribute__((__stdcall__)) SNB_UserUnmarshal(ULONG *, unsigned char *, SNB *);
void __attribute__((__stdcall__)) SNB_UserFree (ULONG *, SNB *);
ULONG __attribute__((__stdcall__)) CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
unsigned char * __attribute__((__stdcall__)) CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
unsigned char * __attribute__((__stdcall__)) CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
void __attribute__((__stdcall__)) CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
ULONG __attribute__((__stdcall__)) STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
void __attribute__((__stdcall__)) STGMEDIUM_UserFree (ULONG *, STGMEDIUM *);
ULONG __attribute__((__stdcall__)) ASYNC_STGMEDIUM_UserSize (ULONG *, ULONG, ASYNC_STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) ASYNC_STGMEDIUM_UserMarshal (ULONG *, unsigned char *, ASYNC_STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) ASYNC_STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, ASYNC_STGMEDIUM *);
void __attribute__((__stdcall__)) ASYNC_STGMEDIUM_UserFree (ULONG *, ASYNC_STGMEDIUM *);
ULONG __attribute__((__stdcall__)) FLAG_STGMEDIUM_UserSize (ULONG *, ULONG, FLAG_STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) FLAG_STGMEDIUM_UserMarshal (ULONG *, unsigned char *, FLAG_STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) FLAG_STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, FLAG_STGMEDIUM *);
void __attribute__((__stdcall__)) FLAG_STGMEDIUM_UserFree (ULONG *, FLAG_STGMEDIUM *);
ULONG __attribute__((__stdcall__)) HBITMAP_UserSize (ULONG *, ULONG, HBITMAP *);
unsigned char * __attribute__((__stdcall__)) HBITMAP_UserMarshal (ULONG *, unsigned char *, HBITMAP *);
unsigned char * __attribute__((__stdcall__)) HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *);
void __attribute__((__stdcall__)) HBITMAP_UserFree (ULONG *, HBITMAP *);
ULONG __attribute__((__stdcall__)) HICON_UserSize (ULONG *, ULONG, HICON *);
unsigned char * __attribute__((__stdcall__)) HICON_UserMarshal (ULONG *, unsigned char *, HICON *);
unsigned char * __attribute__((__stdcall__)) HICON_UserUnmarshal(ULONG *, unsigned char *, HICON *);
void __attribute__((__stdcall__)) HICON_UserFree (ULONG *, HICON *);
ULONG __attribute__((__stdcall__)) HDC_UserSize (ULONG *, ULONG, HDC *);
unsigned char * __attribute__((__stdcall__)) HDC_UserMarshal (ULONG *, unsigned char *, HDC *);
unsigned char * __attribute__((__stdcall__)) HDC_UserUnmarshal(ULONG *, unsigned char *, HDC *);
void __attribute__((__stdcall__)) HDC_UserFree (ULONG *, HDC *);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CoBuildVersion (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoInitialize (LPVOID pvReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRegisterMallocSpy (LPMALLOCSPY pMallocSpy);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRevokeMallocSpy (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoCreateStandardMalloc (DWORD memctx, IMalloc **ppMalloc);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRegisterInitializeSpy (LPINITIALIZESPY pSpy, ULARGE_INTEGER *puliCookie);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRevokeInitializeSpy (ULARGE_INTEGER uliCookie);
typedef enum tagCOMSD {
SD_LAUNCHPERMISSIONS = 0,
SD_ACCESSPERMISSIONS = 1,
SD_LAUNCHRESTRICTIONS = 2,
SD_ACCESSRESTRICTIONS = 3
} COMSD;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetSystemSecurityPermissions (COMSD comSDType, PSECURITY_DESCRIPTOR *ppSD);
extern __attribute__((dllimport)) HINSTANCE __attribute__((__stdcall__)) CoLoadLibrary (LPOLESTR lpszLibName, WINBOOL bAutoFree);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) CoFreeLibrary (HINSTANCE hInst);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) CoFreeAllLibraries (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetInstanceFromFile (COSERVERINFO *pServerInfo, CLSID *pClsid, IUnknown *punkOuter, DWORD dwClsCtx, DWORD grfMode, OLECHAR *pwszName, DWORD dwCount, MULTI_QI *pResults);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetInstanceFromIStorage (COSERVERINFO *pServerInfo, CLSID *pClsid, IUnknown *punkOuter, DWORD dwClsCtx, struct IStorage *pstg, DWORD dwCount, MULTI_QI *pResults);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoAllowSetForegroundWindow (IUnknown *pUnk, LPVOID lpvReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) DcomChannelSetHResult (LPVOID pvReserved, ULONG *pulReserved, HRESULT appsHR);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CoIsOle1Class (const IID *const rclsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CLSIDFromProgIDEx (LPCOLESTR lpszProgID, LPCLSID lpclsid);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CoFileTimeToDosDateTime (FILETIME *lpFileTime, LPWORD lpDosDate, LPWORD lpDosTime);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CoDosDateTimeToFileTime (WORD nDosDate, WORD nDosTime, FILETIME *lpFileTime);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoFileTimeNow (FILETIME *lpFileTime);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRegisterMessageFilter (LPMESSAGEFILTER lpMessageFilter, LPMESSAGEFILTER *lplpMessageFilter);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoRegisterChannelHook (const GUID *const ExtensionUuid, IChannelHook *pChannelHook);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoTreatAsClass (const IID *const clsidOld, const IID *const clsidNew);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateDataAdviseHolder (LPDATAADVISEHOLDER *ppDAHolder);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateDataCache (LPUNKNOWN pUnkOuter, const IID *const rclsid, const IID *const iid, LPVOID *ppv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgOpenLayoutDocfile (OLECHAR const *pwcsDfName, DWORD grfMode, DWORD reserved, IStorage **ppstgOpen);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgCreateDocfile (const WCHAR *pwcsName, DWORD grfMode, DWORD reserved, IStorage **ppstgOpen);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgCreateDocfileOnILockBytes (ILockBytes *plkbyt, DWORD grfMode, DWORD reserved, IStorage **ppstgOpen);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgOpenStorage (const WCHAR *pwcsName, IStorage *pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved, IStorage **ppstgOpen);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgOpenStorageOnILockBytes (ILockBytes *plkbyt, IStorage *pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved, IStorage **ppstgOpen);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgIsStorageFile (const WCHAR *pwcsName);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgIsStorageILockBytes (ILockBytes *plkbyt);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgSetTimes (const WCHAR *lpszName, const FILETIME *pctime, const FILETIME *patime, const FILETIME *pmtime);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgOpenAsyncDocfileOnIFillLockBytes (IFillLockBytes *pflb, DWORD grfMode, DWORD asyncFlags, IStorage **ppstgOpen);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgGetIFillLockBytesOnILockBytes (ILockBytes *pilb, IFillLockBytes **ppflb);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgGetIFillLockBytesOnFile (OLECHAR const *pwcsName, IFillLockBytes **ppflb);
typedef struct tagSTGOPTIONS {
USHORT usVersion;
USHORT reserved;
ULONG ulSectorSize;
const WCHAR *pwcsTemplateFile;
} STGOPTIONS;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgCreateStorageEx (const WCHAR *pwcsName, DWORD grfMode, DWORD stgfmt, DWORD grfAttrs, STGOPTIONS *pStgOptions, PSECURITY_DESCRIPTOR pSecurityDescriptor, const IID *const riid, void **ppObjectOpen);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgOpenStorageEx (const WCHAR *pwcsName, DWORD grfMode, DWORD stgfmt, DWORD grfAttrs, STGOPTIONS *pStgOptions, PSECURITY_DESCRIPTOR pSecurityDescriptor, const IID *const riid, void **ppObjectOpen);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) BindMoniker (LPMONIKER pmk, DWORD grfOpt, const IID *const iidResult, LPVOID *ppvResult);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoGetObject (LPCWSTR pszName, BIND_OPTS *pBindOptions, const IID *const riid, void **ppv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) MkParseDisplayName (LPBC pbc, LPCOLESTR szUserName, ULONG *pchEaten, LPMONIKER *ppmk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) MonikerRelativePathTo (LPMONIKER pmkSrc, LPMONIKER pmkDest, LPMONIKER *ppmkRelPath, WINBOOL dwReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) MonikerCommonPrefixWith (LPMONIKER pmkThis, LPMONIKER pmkOther, LPMONIKER *ppmkCommon);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateBindCtx (DWORD reserved, LPBC *ppbc);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateGenericComposite (LPMONIKER pmkFirst, LPMONIKER pmkRest, LPMONIKER *ppmkComposite);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetClassFile (LPCOLESTR szFilename, CLSID *pclsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateClassMoniker (const IID *const rclsid, LPMONIKER *ppmk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateFileMoniker (LPCOLESTR lpszPathName, LPMONIKER *ppmk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateItemMoniker (LPCOLESTR lpszDelim, LPCOLESTR lpszItem, LPMONIKER *ppmk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateAntiMoniker (LPMONIKER *ppmk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreatePointerMoniker (LPUNKNOWN punk, LPMONIKER *ppmk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateObjrefMoniker (LPUNKNOWN punk, LPMONIKER *ppmk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CoInstall (IBindCtx *pbc, DWORD dwFlags, uCLSSPEC *pClassSpec, QUERYCONTEXT *pQuery, LPWSTR pszCodeBase);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetRunningObjectTable (DWORD reserved, LPRUNNINGOBJECTTABLE *pprot);
typedef struct IPersistMoniker IPersistMoniker;
typedef struct IMonikerProp IMonikerProp;
typedef struct IBindProtocol IBindProtocol;
typedef struct IBinding IBinding;
typedef struct IBindStatusCallback IBindStatusCallback;
typedef struct IBindStatusCallbackEx IBindStatusCallbackEx;
typedef struct IAuthenticate IAuthenticate;
typedef struct IAuthenticateEx IAuthenticateEx;
typedef struct IHttpNegotiate IHttpNegotiate;
typedef struct IHttpNegotiate2 IHttpNegotiate2;
typedef struct IHttpNegotiate3 IHttpNegotiate3;
typedef struct IWinInetFileStream IWinInetFileStream;
typedef struct IWindowForBindingUI IWindowForBindingUI;
typedef struct ICodeInstall ICodeInstall;
typedef struct IUri IUri;
typedef struct IUriContainer IUriContainer;
typedef struct IUriBuilder IUriBuilder;
typedef struct IUriBuilderFactory IUriBuilderFactory;
typedef struct IWinInetInfo IWinInetInfo;
typedef struct IHttpSecurity IHttpSecurity;
typedef struct IWinInetHttpInfo IWinInetHttpInfo;
typedef struct IWinInetHttpTimeouts IWinInetHttpTimeouts;
typedef struct IWinInetCacheHints IWinInetCacheHints;
typedef struct IWinInetCacheHints2 IWinInetCacheHints2;
typedef struct IBindHost IBindHost;
typedef struct IInternet IInternet;
typedef struct IInternetBindInfo IInternetBindInfo;
typedef struct IInternetBindInfoEx IInternetBindInfoEx;
typedef struct IInternetProtocolRoot IInternetProtocolRoot;
typedef struct IInternetProtocol IInternetProtocol;
typedef struct IInternetProtocolEx IInternetProtocolEx;
typedef struct IInternetProtocolSink IInternetProtocolSink;
typedef struct IInternetProtocolSinkStackable IInternetProtocolSinkStackable;
typedef struct IInternetSession IInternetSession;
typedef struct IInternetThreadSwitch IInternetThreadSwitch;
typedef struct IInternetPriority IInternetPriority;
typedef struct IInternetProtocolInfo IInternetProtocolInfo;
typedef struct IInternetSecurityMgrSite IInternetSecurityMgrSite;
typedef struct IInternetSecurityManager IInternetSecurityManager;
typedef struct IInternetSecurityManagerEx IInternetSecurityManagerEx;
typedef struct IInternetSecurityManagerEx2 IInternetSecurityManagerEx2;
typedef struct IZoneIdentifier IZoneIdentifier;
typedef struct IInternetHostSecurityManager IInternetHostSecurityManager;
typedef struct IInternetZoneManager IInternetZoneManager;
typedef struct IInternetZoneManagerEx IInternetZoneManagerEx;
typedef struct IInternetZoneManagerEx2 IInternetZoneManagerEx2;
typedef struct ISoftDistExt ISoftDistExt;
typedef struct ICatalogFileInfo ICatalogFileInfo;
typedef struct IDataFilter IDataFilter;
typedef struct IEncodingFilterFactory IEncodingFilterFactory;
typedef struct IWrappedProtocol IWrappedProtocol;
typedef struct IGetBindHandle IGetBindHandle;
typedef struct IBindCallbackRedirect IBindCallbackRedirect;
typedef struct IOleAdviseHolder IOleAdviseHolder;
typedef struct IOleCache IOleCache;
typedef struct IOleCache2 IOleCache2;
typedef struct IOleCacheControl IOleCacheControl;
typedef struct IParseDisplayName IParseDisplayName;
typedef struct IOleContainer IOleContainer;
typedef struct IOleClientSite IOleClientSite;
typedef struct IOleObject IOleObject;
typedef struct IOleWindow IOleWindow;
typedef struct IOleLink IOleLink;
typedef struct IOleItemContainer IOleItemContainer;
typedef struct IOleInPlaceUIWindow IOleInPlaceUIWindow;
typedef struct IOleInPlaceActiveObject IOleInPlaceActiveObject;
typedef struct IOleInPlaceFrame IOleInPlaceFrame;
typedef struct IOleInPlaceObject IOleInPlaceObject;
typedef struct IOleInPlaceSite IOleInPlaceSite;
typedef struct IContinue IContinue;
typedef struct IViewObject IViewObject;
typedef struct IViewObject2 IViewObject2;
typedef struct IDropSource IDropSource;
typedef struct IDropTarget IDropTarget;
typedef struct IDropSourceNotify IDropSourceNotify;
typedef struct IEnumOLEVERB IEnumOLEVERB;
typedef IOleAdviseHolder *LPOLEADVISEHOLDER;
extern const GUID IID_IOleAdviseHolder;
typedef struct IOleAdviseHolderVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleAdviseHolder *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleAdviseHolder *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleAdviseHolder *This);
HRESULT (__attribute__((__stdcall__)) *Advise)(
IOleAdviseHolder *This,
IAdviseSink *pAdvise,
DWORD *pdwConnection);
HRESULT (__attribute__((__stdcall__)) *Unadvise)(
IOleAdviseHolder *This,
DWORD dwConnection);
HRESULT (__attribute__((__stdcall__)) *EnumAdvise)(
IOleAdviseHolder *This,
IEnumSTATDATA **ppenumAdvise);
HRESULT (__attribute__((__stdcall__)) *SendOnRename)(
IOleAdviseHolder *This,
IMoniker *pmk);
HRESULT (__attribute__((__stdcall__)) *SendOnSave)(
IOleAdviseHolder *This);
HRESULT (__attribute__((__stdcall__)) *SendOnClose)(
IOleAdviseHolder *This);
} IOleAdviseHolderVtbl;
struct IOleAdviseHolder {
IOleAdviseHolderVtbl* lpVtbl;
};
typedef IOleCache *LPOLECACHE;
extern const GUID IID_IOleCache;
typedef struct IOleCacheVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleCache *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleCache *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleCache *This);
HRESULT (__attribute__((__stdcall__)) *Cache)(
IOleCache *This,
FORMATETC *pformatetc,
DWORD advf,
DWORD *pdwConnection);
HRESULT (__attribute__((__stdcall__)) *Uncache)(
IOleCache *This,
DWORD dwConnection);
HRESULT (__attribute__((__stdcall__)) *EnumCache)(
IOleCache *This,
IEnumSTATDATA **ppenumSTATDATA);
HRESULT (__attribute__((__stdcall__)) *InitCache)(
IOleCache *This,
IDataObject *pDataObject);
HRESULT (__attribute__((__stdcall__)) *SetData)(
IOleCache *This,
FORMATETC *pformatetc,
STGMEDIUM *pmedium,
WINBOOL fRelease);
} IOleCacheVtbl;
struct IOleCache {
IOleCacheVtbl* lpVtbl;
};
typedef IOleCache2 *LPOLECACHE2;
typedef enum tagDISCARDCACHE {
DISCARDCACHE_SAVEIFDIRTY = 0,
DISCARDCACHE_NOSAVE = 1
} DISCARDCACHE;
extern const GUID IID_IOleCache2;
typedef struct IOleCache2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleCache2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleCache2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleCache2 *This);
HRESULT (__attribute__((__stdcall__)) *Cache)(
IOleCache2 *This,
FORMATETC *pformatetc,
DWORD advf,
DWORD *pdwConnection);
HRESULT (__attribute__((__stdcall__)) *Uncache)(
IOleCache2 *This,
DWORD dwConnection);
HRESULT (__attribute__((__stdcall__)) *EnumCache)(
IOleCache2 *This,
IEnumSTATDATA **ppenumSTATDATA);
HRESULT (__attribute__((__stdcall__)) *InitCache)(
IOleCache2 *This,
IDataObject *pDataObject);
HRESULT (__attribute__((__stdcall__)) *SetData)(
IOleCache2 *This,
FORMATETC *pformatetc,
STGMEDIUM *pmedium,
WINBOOL fRelease);
HRESULT (__attribute__((__stdcall__)) *UpdateCache)(
IOleCache2 *This,
LPDATAOBJECT pDataObject,
DWORD grfUpdf,
LPVOID pReserved);
HRESULT (__attribute__((__stdcall__)) *DiscardCache)(
IOleCache2 *This,
DWORD dwDiscardOptions);
} IOleCache2Vtbl;
struct IOleCache2 {
IOleCache2Vtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IOleCache2_RemoteUpdateCache_Proxy(
IOleCache2* This,
LPDATAOBJECT pDataObject,
DWORD grfUpdf,
LONG_PTR pReserved);
void __attribute__((__stdcall__)) IOleCache2_RemoteUpdateCache_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IOleCache2_UpdateCache_Proxy(
IOleCache2* This,
LPDATAOBJECT pDataObject,
DWORD grfUpdf,
LPVOID pReserved);
HRESULT __attribute__((__stdcall__)) IOleCache2_UpdateCache_Stub(
IOleCache2* This,
LPDATAOBJECT pDataObject,
DWORD grfUpdf,
LONG_PTR pReserved);
typedef IOleCacheControl *LPOLECACHECONTROL;
extern const GUID IID_IOleCacheControl;
typedef struct IOleCacheControlVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleCacheControl *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleCacheControl *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleCacheControl *This);
HRESULT (__attribute__((__stdcall__)) *OnRun)(
IOleCacheControl *This,
LPDATAOBJECT pDataObject);
HRESULT (__attribute__((__stdcall__)) *OnStop)(
IOleCacheControl *This);
} IOleCacheControlVtbl;
struct IOleCacheControl {
IOleCacheControlVtbl* lpVtbl;
};
typedef IParseDisplayName *LPPARSEDISPLAYNAME;
extern const GUID IID_IParseDisplayName;
typedef struct IParseDisplayNameVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IParseDisplayName *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IParseDisplayName *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IParseDisplayName *This);
HRESULT (__attribute__((__stdcall__)) *ParseDisplayName)(
IParseDisplayName *This,
IBindCtx *pbc,
LPOLESTR pszDisplayName,
ULONG *pchEaten,
IMoniker **ppmkOut);
} IParseDisplayNameVtbl;
struct IParseDisplayName {
IParseDisplayNameVtbl* lpVtbl;
};
typedef IOleContainer *LPOLECONTAINER;
extern const GUID IID_IOleContainer;
typedef struct IOleContainerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleContainer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleContainer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleContainer *This);
HRESULT (__attribute__((__stdcall__)) *ParseDisplayName)(
IOleContainer *This,
IBindCtx *pbc,
LPOLESTR pszDisplayName,
ULONG *pchEaten,
IMoniker **ppmkOut);
HRESULT (__attribute__((__stdcall__)) *EnumObjects)(
IOleContainer *This,
DWORD grfFlags,
IEnumUnknown **ppenum);
HRESULT (__attribute__((__stdcall__)) *LockContainer)(
IOleContainer *This,
WINBOOL fLock);
} IOleContainerVtbl;
struct IOleContainer {
IOleContainerVtbl* lpVtbl;
};
typedef IOleClientSite *LPOLECLIENTSITE;
extern const GUID IID_IOleClientSite;
typedef struct IOleClientSiteVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleClientSite *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleClientSite *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleClientSite *This);
HRESULT (__attribute__((__stdcall__)) *SaveObject)(
IOleClientSite *This);
HRESULT (__attribute__((__stdcall__)) *GetMoniker)(
IOleClientSite *This,
DWORD dwAssign,
DWORD dwWhichMoniker,
IMoniker **ppmk);
HRESULT (__attribute__((__stdcall__)) *GetContainer)(
IOleClientSite *This,
IOleContainer **ppContainer);
HRESULT (__attribute__((__stdcall__)) *ShowObject)(
IOleClientSite *This);
HRESULT (__attribute__((__stdcall__)) *OnShowWindow)(
IOleClientSite *This,
WINBOOL fShow);
HRESULT (__attribute__((__stdcall__)) *RequestNewObjectLayout)(
IOleClientSite *This);
} IOleClientSiteVtbl;
struct IOleClientSite {
IOleClientSiteVtbl* lpVtbl;
};
typedef IOleObject *LPOLEOBJECT;
typedef enum tagOLEGETMONIKER {
OLEGETMONIKER_ONLYIFTHERE = 1,
OLEGETMONIKER_FORCEASSIGN = 2,
OLEGETMONIKER_UNASSIGN = 3,
OLEGETMONIKER_TEMPFORUSER = 4
} OLEGETMONIKER;
typedef enum tagOLEWHICHMK {
OLEWHICHMK_CONTAINER = 1,
OLEWHICHMK_OBJREL = 2,
OLEWHICHMK_OBJFULL = 3
} OLEWHICHMK;
typedef enum tagUSERCLASSTYPE {
USERCLASSTYPE_FULL = 1,
USERCLASSTYPE_SHORT = 2,
USERCLASSTYPE_APPNAME = 3
} USERCLASSTYPE;
typedef enum tagOLEMISC {
OLEMISC_RECOMPOSEONRESIZE = 0x1,
OLEMISC_ONLYICONIC = 0x2,
OLEMISC_INSERTNOTREPLACE = 0x4,
OLEMISC_STATIC = 0x8,
OLEMISC_CANTLINKINSIDE = 0x10,
OLEMISC_CANLINKBYOLE1 = 0x20,
OLEMISC_ISLINKOBJECT = 0x40,
OLEMISC_INSIDEOUT = 0x80,
OLEMISC_ACTIVATEWHENVISIBLE = 0x100,
OLEMISC_RENDERINGISDEVICEINDEPENDENT = 0x200,
OLEMISC_INVISIBLEATRUNTIME = 0x400,
OLEMISC_ALWAYSRUN = 0x800,
OLEMISC_ACTSLIKEBUTTON = 0x1000,
OLEMISC_ACTSLIKELABEL = 0x2000,
OLEMISC_NOUIACTIVATE = 0x4000,
OLEMISC_ALIGNABLE = 0x8000,
OLEMISC_SIMPLEFRAME = 0x10000,
OLEMISC_SETCLIENTSITEFIRST = 0x20000,
OLEMISC_IMEMODE = 0x40000,
OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x80000,
OLEMISC_WANTSTOMENUMERGE = 0x100000,
OLEMISC_SUPPORTSMULTILEVELUNDO = 0x200000
} OLEMISC;
typedef enum tagOLECLOSE {
OLECLOSE_SAVEIFDIRTY = 0,
OLECLOSE_NOSAVE = 1,
OLECLOSE_PROMPTSAVE = 2
} OLECLOSE;
extern const GUID IID_IOleObject;
typedef struct IOleObjectVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleObject *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleObject *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleObject *This);
HRESULT (__attribute__((__stdcall__)) *SetClientSite)(
IOleObject *This,
IOleClientSite *pClientSite);
HRESULT (__attribute__((__stdcall__)) *GetClientSite)(
IOleObject *This,
IOleClientSite **ppClientSite);
HRESULT (__attribute__((__stdcall__)) *SetHostNames)(
IOleObject *This,
LPCOLESTR szContainerApp,
LPCOLESTR szContainerObj);
HRESULT (__attribute__((__stdcall__)) *Close)(
IOleObject *This,
DWORD dwSaveOption);
HRESULT (__attribute__((__stdcall__)) *SetMoniker)(
IOleObject *This,
DWORD dwWhichMoniker,
IMoniker *pmk);
HRESULT (__attribute__((__stdcall__)) *GetMoniker)(
IOleObject *This,
DWORD dwAssign,
DWORD dwWhichMoniker,
IMoniker **ppmk);
HRESULT (__attribute__((__stdcall__)) *InitFromData)(
IOleObject *This,
IDataObject *pDataObject,
WINBOOL fCreation,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *GetClipboardData)(
IOleObject *This,
DWORD dwReserved,
IDataObject **ppDataObject);
HRESULT (__attribute__((__stdcall__)) *DoVerb)(
IOleObject *This,
LONG iVerb,
LPMSG lpmsg,
IOleClientSite *pActiveSite,
LONG lindex,
HWND hwndParent,
LPCRECT lprcPosRect);
HRESULT (__attribute__((__stdcall__)) *EnumVerbs)(
IOleObject *This,
IEnumOLEVERB **ppEnumOleVerb);
HRESULT (__attribute__((__stdcall__)) *Update)(
IOleObject *This);
HRESULT (__attribute__((__stdcall__)) *IsUpToDate)(
IOleObject *This);
HRESULT (__attribute__((__stdcall__)) *GetUserClassID)(
IOleObject *This,
CLSID *pClsid);
HRESULT (__attribute__((__stdcall__)) *GetUserType)(
IOleObject *This,
DWORD dwFormOfType,
LPOLESTR *pszUserType);
HRESULT (__attribute__((__stdcall__)) *SetExtent)(
IOleObject *This,
DWORD dwDrawAspect,
SIZEL *psizel);
HRESULT (__attribute__((__stdcall__)) *GetExtent)(
IOleObject *This,
DWORD dwDrawAspect,
SIZEL *psizel);
HRESULT (__attribute__((__stdcall__)) *Advise)(
IOleObject *This,
IAdviseSink *pAdvSink,
DWORD *pdwConnection);
HRESULT (__attribute__((__stdcall__)) *Unadvise)(
IOleObject *This,
DWORD dwConnection);
HRESULT (__attribute__((__stdcall__)) *EnumAdvise)(
IOleObject *This,
IEnumSTATDATA **ppenumAdvise);
HRESULT (__attribute__((__stdcall__)) *GetMiscStatus)(
IOleObject *This,
DWORD dwAspect,
DWORD *pdwStatus);
HRESULT (__attribute__((__stdcall__)) *SetColorScheme)(
IOleObject *This,
LOGPALETTE *pLogpal);
} IOleObjectVtbl;
struct IOleObject {
IOleObjectVtbl* lpVtbl;
};
extern RPC_IF_HANDLE IOLETypes_v0_0_c_ifspec;
extern RPC_IF_HANDLE IOLETypes_v0_0_s_ifspec;
typedef enum tagOLERENDER {
OLERENDER_NONE = 0,
OLERENDER_DRAW = 1,
OLERENDER_FORMAT = 2,
OLERENDER_ASIS = 3
} OLERENDER;
typedef OLERENDER *LPOLERENDER;
typedef struct tagOBJECTDESCRIPTOR {
ULONG cbSize;
CLSID clsid;
DWORD dwDrawAspect;
SIZEL sizel;
POINTL pointl;
DWORD dwStatus;
DWORD dwFullUserTypeName;
DWORD dwSrcOfCopy;
} OBJECTDESCRIPTOR;
typedef struct tagOBJECTDESCRIPTOR *POBJECTDESCRIPTOR;
typedef struct tagOBJECTDESCRIPTOR *LPOBJECTDESCRIPTOR;
typedef struct tagOBJECTDESCRIPTOR LINKSRCDESCRIPTOR;
typedef struct tagOBJECTDESCRIPTOR *PLINKSRCDESCRIPTOR;
typedef struct tagOBJECTDESCRIPTOR *LPLINKSRCDESCRIPTOR;
typedef IOleWindow *LPOLEWINDOW;
extern const GUID IID_IOleWindow;
typedef struct IOleWindowVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleWindow *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleWindow *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleWindow *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleWindow *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleWindow *This,
WINBOOL fEnterMode);
} IOleWindowVtbl;
struct IOleWindow {
IOleWindowVtbl* lpVtbl;
};
typedef IOleLink *LPOLELINK;
typedef enum tagOLEUPDATE {
OLEUPDATE_ALWAYS = 1,
OLEUPDATE_ONCALL = 3
} OLEUPDATE;
typedef OLEUPDATE *LPOLEUPDATE;
typedef OLEUPDATE *POLEUPDATE;
typedef enum tagOLELINKBIND {
OLELINKBIND_EVENIFCLASSDIFF = 1
} OLELINKBIND;
extern const GUID IID_IOleLink;
typedef struct IOleLinkVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleLink *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleLink *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleLink *This);
HRESULT (__attribute__((__stdcall__)) *SetUpdateOptions)(
IOleLink *This,
DWORD dwUpdateOpt);
HRESULT (__attribute__((__stdcall__)) *GetUpdateOptions)(
IOleLink *This,
DWORD *pdwUpdateOpt);
HRESULT (__attribute__((__stdcall__)) *SetSourceMoniker)(
IOleLink *This,
IMoniker *pmk,
const IID *const rclsid);
HRESULT (__attribute__((__stdcall__)) *GetSourceMoniker)(
IOleLink *This,
IMoniker **ppmk);
HRESULT (__attribute__((__stdcall__)) *SetSourceDisplayName)(
IOleLink *This,
LPCOLESTR pszStatusText);
HRESULT (__attribute__((__stdcall__)) *GetSourceDisplayName)(
IOleLink *This,
LPOLESTR *ppszDisplayName);
HRESULT (__attribute__((__stdcall__)) *BindToSource)(
IOleLink *This,
DWORD bindflags,
IBindCtx *pbc);
HRESULT (__attribute__((__stdcall__)) *BindIfRunning)(
IOleLink *This);
HRESULT (__attribute__((__stdcall__)) *GetBoundSource)(
IOleLink *This,
IUnknown **ppunk);
HRESULT (__attribute__((__stdcall__)) *UnbindSource)(
IOleLink *This);
HRESULT (__attribute__((__stdcall__)) *Update)(
IOleLink *This,
IBindCtx *pbc);
} IOleLinkVtbl;
struct IOleLink {
IOleLinkVtbl* lpVtbl;
};
typedef IOleItemContainer *LPOLEITEMCONTAINER;
typedef enum tagBINDSPEED {
BINDSPEED_INDEFINITE = 1,
BINDSPEED_MODERATE = 2,
BINDSPEED_IMMEDIATE = 3
} BINDSPEED;
typedef enum tagOLECONTF {
OLECONTF_EMBEDDINGS = 1,
OLECONTF_LINKS = 2,
OLECONTF_OTHERS = 4,
OLECONTF_ONLYUSER = 8,
OLECONTF_ONLYIFRUNNING = 16
} OLECONTF;
extern const GUID IID_IOleItemContainer;
typedef struct IOleItemContainerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleItemContainer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleItemContainer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleItemContainer *This);
HRESULT (__attribute__((__stdcall__)) *ParseDisplayName)(
IOleItemContainer *This,
IBindCtx *pbc,
LPOLESTR pszDisplayName,
ULONG *pchEaten,
IMoniker **ppmkOut);
HRESULT (__attribute__((__stdcall__)) *EnumObjects)(
IOleItemContainer *This,
DWORD grfFlags,
IEnumUnknown **ppenum);
HRESULT (__attribute__((__stdcall__)) *LockContainer)(
IOleItemContainer *This,
WINBOOL fLock);
HRESULT (__attribute__((__stdcall__)) *GetObjectA)(
IOleItemContainer *This,
LPOLESTR pszItem,
DWORD dwSpeedNeeded,
IBindCtx *pbc,
const IID *const riid,
void **ppvObject);
HRESULT (__attribute__((__stdcall__)) *GetObjectStorage)(
IOleItemContainer *This,
LPOLESTR pszItem,
IBindCtx *pbc,
const IID *const riid,
void **ppvStorage);
HRESULT (__attribute__((__stdcall__)) *IsRunning)(
IOleItemContainer *This,
LPOLESTR pszItem);
} IOleItemContainerVtbl;
struct IOleItemContainer {
IOleItemContainerVtbl* lpVtbl;
};
typedef IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
typedef RECT BORDERWIDTHS;
typedef LPRECT LPBORDERWIDTHS;
typedef LPCRECT LPCBORDERWIDTHS;
extern const GUID IID_IOleInPlaceUIWindow;
typedef struct IOleInPlaceUIWindowVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleInPlaceUIWindow *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleInPlaceUIWindow *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleInPlaceUIWindow *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleInPlaceUIWindow *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleInPlaceUIWindow *This,
WINBOOL fEnterMode);
HRESULT (__attribute__((__stdcall__)) *GetBorder)(
IOleInPlaceUIWindow *This,
LPRECT lprectBorder);
HRESULT (__attribute__((__stdcall__)) *RequestBorderSpace)(
IOleInPlaceUIWindow *This,
LPCBORDERWIDTHS pborderwidths);
HRESULT (__attribute__((__stdcall__)) *SetBorderSpace)(
IOleInPlaceUIWindow *This,
LPCBORDERWIDTHS pborderwidths);
HRESULT (__attribute__((__stdcall__)) *SetActiveObject)(
IOleInPlaceUIWindow *This,
IOleInPlaceActiveObject *pActiveObject,
LPCOLESTR pszObjName);
} IOleInPlaceUIWindowVtbl;
struct IOleInPlaceUIWindow {
IOleInPlaceUIWindowVtbl* lpVtbl;
};
typedef IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
extern const GUID IID_IOleInPlaceActiveObject;
typedef struct IOleInPlaceActiveObjectVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleInPlaceActiveObject *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleInPlaceActiveObject *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleInPlaceActiveObject *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleInPlaceActiveObject *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleInPlaceActiveObject *This,
WINBOOL fEnterMode);
HRESULT (__attribute__((__stdcall__)) *TranslateAcceleratorA)(
IOleInPlaceActiveObject *This,
LPMSG lpmsg);
HRESULT (__attribute__((__stdcall__)) *OnFrameWindowActivate)(
IOleInPlaceActiveObject *This,
WINBOOL fActivate);
HRESULT (__attribute__((__stdcall__)) *OnDocWindowActivate)(
IOleInPlaceActiveObject *This,
WINBOOL fActivate);
HRESULT (__attribute__((__stdcall__)) *ResizeBorder)(
IOleInPlaceActiveObject *This,
LPCRECT prcBorder,
IOleInPlaceUIWindow *pUIWindow,
WINBOOL fFrameWindow);
HRESULT (__attribute__((__stdcall__)) *EnableModeless)(
IOleInPlaceActiveObject *This,
WINBOOL fEnable);
} IOleInPlaceActiveObjectVtbl;
struct IOleInPlaceActiveObject {
IOleInPlaceActiveObjectVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IOleInPlaceActiveObject_RemoteTranslateAccelerator_Proxy(
IOleInPlaceActiveObject* This);
void __attribute__((__stdcall__)) IOleInPlaceActiveObject_RemoteTranslateAccelerator_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IOleInPlaceActiveObject_RemoteResizeBorder_Proxy(
IOleInPlaceActiveObject* This,
LPCRECT prcBorder,
const IID *const riid,
IOleInPlaceUIWindow *pUIWindow,
WINBOOL fFrameWindow);
void __attribute__((__stdcall__)) IOleInPlaceActiveObject_RemoteResizeBorder_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IOleInPlaceActiveObject_TranslateAccelerator_Proxy(
IOleInPlaceActiveObject* This,
LPMSG lpmsg);
HRESULT __attribute__((__stdcall__)) IOleInPlaceActiveObject_TranslateAccelerator_Stub(
IOleInPlaceActiveObject* This);
HRESULT __attribute__((__stdcall__)) IOleInPlaceActiveObject_ResizeBorder_Proxy(
IOleInPlaceActiveObject* This,
LPCRECT prcBorder,
IOleInPlaceUIWindow *pUIWindow,
WINBOOL fFrameWindow);
HRESULT __attribute__((__stdcall__)) IOleInPlaceActiveObject_ResizeBorder_Stub(
IOleInPlaceActiveObject* This,
LPCRECT prcBorder,
const IID *const riid,
IOleInPlaceUIWindow *pUIWindow,
WINBOOL fFrameWindow);
typedef IOleInPlaceFrame *LPOLEINPLACEFRAME;
typedef struct tagOIFI {
UINT cb;
WINBOOL fMDIApp;
HWND hwndFrame;
HACCEL haccel;
UINT cAccelEntries;
} OLEINPLACEFRAMEINFO;
typedef struct tagOIFI *LPOLEINPLACEFRAMEINFO;
typedef struct tagOleMenuGroupWidths {
LONG width[6];
} OLEMENUGROUPWIDTHS;
typedef struct tagOleMenuGroupWidths *LPOLEMENUGROUPWIDTHS;
typedef HGLOBAL HOLEMENU;
extern const GUID IID_IOleInPlaceFrame;
typedef struct IOleInPlaceFrameVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleInPlaceFrame *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleInPlaceFrame *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleInPlaceFrame *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleInPlaceFrame *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleInPlaceFrame *This,
WINBOOL fEnterMode);
HRESULT (__attribute__((__stdcall__)) *GetBorder)(
IOleInPlaceFrame *This,
LPRECT lprectBorder);
HRESULT (__attribute__((__stdcall__)) *RequestBorderSpace)(
IOleInPlaceFrame *This,
LPCBORDERWIDTHS pborderwidths);
HRESULT (__attribute__((__stdcall__)) *SetBorderSpace)(
IOleInPlaceFrame *This,
LPCBORDERWIDTHS pborderwidths);
HRESULT (__attribute__((__stdcall__)) *SetActiveObject)(
IOleInPlaceFrame *This,
IOleInPlaceActiveObject *pActiveObject,
LPCOLESTR pszObjName);
HRESULT (__attribute__((__stdcall__)) *InsertMenus)(
IOleInPlaceFrame *This,
HMENU hmenuShared,
LPOLEMENUGROUPWIDTHS lpMenuWidths);
HRESULT (__attribute__((__stdcall__)) *SetMenu)(
IOleInPlaceFrame *This,
HMENU hmenuShared,
HOLEMENU holemenu,
HWND hwndActiveObject);
HRESULT (__attribute__((__stdcall__)) *RemoveMenus)(
IOleInPlaceFrame *This,
HMENU hmenuShared);
HRESULT (__attribute__((__stdcall__)) *SetStatusText)(
IOleInPlaceFrame *This,
LPCOLESTR pszStatusText);
HRESULT (__attribute__((__stdcall__)) *EnableModeless)(
IOleInPlaceFrame *This,
WINBOOL fEnable);
HRESULT (__attribute__((__stdcall__)) *TranslateAcceleratorA)(
IOleInPlaceFrame *This,
LPMSG lpmsg,
WORD wID);
} IOleInPlaceFrameVtbl;
struct IOleInPlaceFrame {
IOleInPlaceFrameVtbl* lpVtbl;
};
typedef IOleInPlaceObject *LPOLEINPLACEOBJECT;
extern const GUID IID_IOleInPlaceObject;
typedef struct IOleInPlaceObjectVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleInPlaceObject *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleInPlaceObject *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleInPlaceObject *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleInPlaceObject *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleInPlaceObject *This,
WINBOOL fEnterMode);
HRESULT (__attribute__((__stdcall__)) *InPlaceDeactivate)(
IOleInPlaceObject *This);
HRESULT (__attribute__((__stdcall__)) *UIDeactivate)(
IOleInPlaceObject *This);
HRESULT (__attribute__((__stdcall__)) *SetObjectRects)(
IOleInPlaceObject *This,
LPCRECT lprcPosRect,
LPCRECT lprcClipRect);
HRESULT (__attribute__((__stdcall__)) *ReactivateAndUndo)(
IOleInPlaceObject *This);
} IOleInPlaceObjectVtbl;
struct IOleInPlaceObject {
IOleInPlaceObjectVtbl* lpVtbl;
};
typedef IOleInPlaceSite *LPOLEINPLACESITE;
extern const GUID IID_IOleInPlaceSite;
typedef struct IOleInPlaceSiteVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleInPlaceSite *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleInPlaceSite *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleInPlaceSite *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleInPlaceSite *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleInPlaceSite *This,
WINBOOL fEnterMode);
HRESULT (__attribute__((__stdcall__)) *CanInPlaceActivate)(
IOleInPlaceSite *This);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceActivate)(
IOleInPlaceSite *This);
HRESULT (__attribute__((__stdcall__)) *OnUIActivate)(
IOleInPlaceSite *This);
HRESULT (__attribute__((__stdcall__)) *GetWindowContext)(
IOleInPlaceSite *This,
IOleInPlaceFrame **ppFrame,
IOleInPlaceUIWindow **ppDoc,
LPRECT lprcPosRect,
LPRECT lprcClipRect,
LPOLEINPLACEFRAMEINFO lpFrameInfo);
HRESULT (__attribute__((__stdcall__)) *Scroll)(
IOleInPlaceSite *This,
SIZE scrollExtant);
HRESULT (__attribute__((__stdcall__)) *OnUIDeactivate)(
IOleInPlaceSite *This,
WINBOOL fUndoable);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceDeactivate)(
IOleInPlaceSite *This);
HRESULT (__attribute__((__stdcall__)) *DiscardUndoState)(
IOleInPlaceSite *This);
HRESULT (__attribute__((__stdcall__)) *DeactivateAndUndo)(
IOleInPlaceSite *This);
HRESULT (__attribute__((__stdcall__)) *OnPosRectChange)(
IOleInPlaceSite *This,
LPCRECT lprcPosRect);
} IOleInPlaceSiteVtbl;
struct IOleInPlaceSite {
IOleInPlaceSiteVtbl* lpVtbl;
};
extern const GUID IID_IContinue;
typedef struct IContinueVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IContinue *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IContinue *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IContinue *This);
HRESULT (__attribute__((__stdcall__)) *FContinue)(
IContinue *This);
} IContinueVtbl;
struct IContinue {
IContinueVtbl* lpVtbl;
};
typedef IViewObject *LPVIEWOBJECT;
extern const GUID IID_IViewObject;
typedef struct IViewObjectVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IViewObject *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IViewObject *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IViewObject *This);
HRESULT (__attribute__((__stdcall__)) *Draw)(
IViewObject *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DVTARGETDEVICE *ptd,
HDC hdcTargetDev,
HDC hdcDraw,
LPCRECTL lprcBounds,
LPCRECTL lprcWBounds,
WINBOOL (__attribute__((__stdcall__)) *pfnContinue)(ULONG_PTR dwContinue),
ULONG_PTR dwContinue);
HRESULT (__attribute__((__stdcall__)) *GetColorSet)(
IViewObject *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DVTARGETDEVICE *ptd,
HDC hicTargetDev,
LOGPALETTE **ppColorSet);
HRESULT (__attribute__((__stdcall__)) *Freeze)(
IViewObject *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DWORD *pdwFreeze);
HRESULT (__attribute__((__stdcall__)) *Unfreeze)(
IViewObject *This,
DWORD dwFreeze);
HRESULT (__attribute__((__stdcall__)) *SetAdvise)(
IViewObject *This,
DWORD aspects,
DWORD advf,
IAdviseSink *pAdvSink);
HRESULT (__attribute__((__stdcall__)) *GetAdvise)(
IViewObject *This,
DWORD *pAspects,
DWORD *pAdvf,
IAdviseSink **ppAdvSink);
} IViewObjectVtbl;
struct IViewObject {
IViewObjectVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IViewObject_RemoteDraw_Proxy(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
ULONG_PTR pvAspect,
DVTARGETDEVICE *ptd,
HDC hdcTargetDev,
HDC hdcDraw,
LPCRECTL lprcBounds,
LPCRECTL lprcWBounds,
IContinue *pContinue);
void __attribute__((__stdcall__)) IViewObject_RemoteDraw_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IViewObject_RemoteGetColorSet_Proxy(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
ULONG_PTR pvAspect,
DVTARGETDEVICE *ptd,
ULONG_PTR hicTargetDev,
LOGPALETTE **ppColorSet);
void __attribute__((__stdcall__)) IViewObject_RemoteGetColorSet_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IViewObject_RemoteFreeze_Proxy(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
ULONG_PTR pvAspect,
DWORD *pdwFreeze);
void __attribute__((__stdcall__)) IViewObject_RemoteFreeze_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IViewObject_RemoteGetAdvise_Proxy(
IViewObject* This,
DWORD *pAspects,
DWORD *pAdvf,
IAdviseSink **ppAdvSink);
void __attribute__((__stdcall__)) IViewObject_RemoteGetAdvise_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IViewObject_Draw_Proxy(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DVTARGETDEVICE *ptd,
HDC hdcTargetDev,
HDC hdcDraw,
LPCRECTL lprcBounds,
LPCRECTL lprcWBounds,
WINBOOL (__attribute__((__stdcall__)) *pfnContinue)(ULONG_PTR dwContinue),
ULONG_PTR dwContinue);
HRESULT __attribute__((__stdcall__)) IViewObject_Draw_Stub(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
ULONG_PTR pvAspect,
DVTARGETDEVICE *ptd,
HDC hdcTargetDev,
HDC hdcDraw,
LPCRECTL lprcBounds,
LPCRECTL lprcWBounds,
IContinue *pContinue);
HRESULT __attribute__((__stdcall__)) IViewObject_GetColorSet_Proxy(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DVTARGETDEVICE *ptd,
HDC hicTargetDev,
LOGPALETTE **ppColorSet);
HRESULT __attribute__((__stdcall__)) IViewObject_GetColorSet_Stub(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
ULONG_PTR pvAspect,
DVTARGETDEVICE *ptd,
ULONG_PTR hicTargetDev,
LOGPALETTE **ppColorSet);
HRESULT __attribute__((__stdcall__)) IViewObject_Freeze_Proxy(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DWORD *pdwFreeze);
HRESULT __attribute__((__stdcall__)) IViewObject_Freeze_Stub(
IViewObject* This,
DWORD dwDrawAspect,
LONG lindex,
ULONG_PTR pvAspect,
DWORD *pdwFreeze);
HRESULT __attribute__((__stdcall__)) IViewObject_GetAdvise_Proxy(
IViewObject* This,
DWORD *pAspects,
DWORD *pAdvf,
IAdviseSink **ppAdvSink);
HRESULT __attribute__((__stdcall__)) IViewObject_GetAdvise_Stub(
IViewObject* This,
DWORD *pAspects,
DWORD *pAdvf,
IAdviseSink **ppAdvSink);
typedef IViewObject2 *LPVIEWOBJECT2;
extern const GUID IID_IViewObject2;
typedef struct IViewObject2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IViewObject2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IViewObject2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IViewObject2 *This);
HRESULT (__attribute__((__stdcall__)) *Draw)(
IViewObject2 *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DVTARGETDEVICE *ptd,
HDC hdcTargetDev,
HDC hdcDraw,
LPCRECTL lprcBounds,
LPCRECTL lprcWBounds,
WINBOOL (__attribute__((__stdcall__)) *pfnContinue)(ULONG_PTR dwContinue),
ULONG_PTR dwContinue);
HRESULT (__attribute__((__stdcall__)) *GetColorSet)(
IViewObject2 *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DVTARGETDEVICE *ptd,
HDC hicTargetDev,
LOGPALETTE **ppColorSet);
HRESULT (__attribute__((__stdcall__)) *Freeze)(
IViewObject2 *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DWORD *pdwFreeze);
HRESULT (__attribute__((__stdcall__)) *Unfreeze)(
IViewObject2 *This,
DWORD dwFreeze);
HRESULT (__attribute__((__stdcall__)) *SetAdvise)(
IViewObject2 *This,
DWORD aspects,
DWORD advf,
IAdviseSink *pAdvSink);
HRESULT (__attribute__((__stdcall__)) *GetAdvise)(
IViewObject2 *This,
DWORD *pAspects,
DWORD *pAdvf,
IAdviseSink **ppAdvSink);
HRESULT (__attribute__((__stdcall__)) *GetExtent)(
IViewObject2 *This,
DWORD dwDrawAspect,
LONG lindex,
DVTARGETDEVICE *ptd,
LPSIZEL lpsizel);
} IViewObject2Vtbl;
struct IViewObject2 {
IViewObject2Vtbl* lpVtbl;
};
typedef IDropSource *LPDROPSOURCE;
extern const GUID IID_IDropSource;
typedef struct IDropSourceVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDropSource *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDropSource *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDropSource *This);
HRESULT (__attribute__((__stdcall__)) *QueryContinueDrag)(
IDropSource *This,
WINBOOL fEscapePressed,
DWORD grfKeyState);
HRESULT (__attribute__((__stdcall__)) *GiveFeedback)(
IDropSource *This,
DWORD dwEffect);
} IDropSourceVtbl;
struct IDropSource {
IDropSourceVtbl* lpVtbl;
};
typedef IDropTarget *LPDROPTARGET;
extern const GUID IID_IDropTarget;
typedef struct IDropTargetVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDropTarget *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDropTarget *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDropTarget *This);
HRESULT (__attribute__((__stdcall__)) *DragEnter)(
IDropTarget *This,
IDataObject *pDataObj,
DWORD grfKeyState,
POINTL pt,
DWORD *pdwEffect);
HRESULT (__attribute__((__stdcall__)) *DragOver)(
IDropTarget *This,
DWORD grfKeyState,
POINTL pt,
DWORD *pdwEffect);
HRESULT (__attribute__((__stdcall__)) *DragLeave)(
IDropTarget *This);
HRESULT (__attribute__((__stdcall__)) *Drop)(
IDropTarget *This,
IDataObject *pDataObj,
DWORD grfKeyState,
POINTL pt,
DWORD *pdwEffect);
} IDropTargetVtbl;
struct IDropTarget {
IDropTargetVtbl* lpVtbl;
};
extern const GUID IID_IDropSourceNotify;
typedef struct IDropSourceNotifyVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDropSourceNotify *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDropSourceNotify *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDropSourceNotify *This);
HRESULT (__attribute__((__stdcall__)) *DragEnterTarget)(
IDropSourceNotify *This,
HWND hwndTarget);
HRESULT (__attribute__((__stdcall__)) *DragLeaveTarget)(
IDropSourceNotify *This);
} IDropSourceNotifyVtbl;
struct IDropSourceNotify {
IDropSourceNotifyVtbl* lpVtbl;
};
typedef IEnumOLEVERB *LPENUMOLEVERB;
typedef struct tagOLEVERB {
LONG lVerb;
LPOLESTR lpszVerbName;
DWORD fuFlags;
DWORD grfAttribs;
} OLEVERB;
typedef struct tagOLEVERB *LPOLEVERB;
typedef enum tagOLEVERBATTRIB {
OLEVERBATTRIB_NEVERDIRTIES = 1,
OLEVERBATTRIB_ONCONTAINERMENU = 2
} OLEVERBATTRIB;
extern const GUID IID_IEnumOLEVERB;
typedef struct IEnumOLEVERBVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumOLEVERB *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumOLEVERB *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumOLEVERB *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumOLEVERB *This,
ULONG celt,
LPOLEVERB rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumOLEVERB *This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumOLEVERB *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumOLEVERB *This,
IEnumOLEVERB **ppenum);
} IEnumOLEVERBVtbl;
struct IEnumOLEVERB {
IEnumOLEVERBVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumOLEVERB_RemoteNext_Proxy(
IEnumOLEVERB* This,
ULONG celt,
LPOLEVERB rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumOLEVERB_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumOLEVERB_Next_Proxy(
IEnumOLEVERB* This,
ULONG celt,
LPOLEVERB rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumOLEVERB_Next_Stub(
IEnumOLEVERB* This,
ULONG celt,
LPOLEVERB rgelt,
ULONG *pceltFetched);
ULONG __attribute__((__stdcall__)) CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
unsigned char * __attribute__((__stdcall__)) CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
unsigned char * __attribute__((__stdcall__)) CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
void __attribute__((__stdcall__)) CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
ULONG __attribute__((__stdcall__)) STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
void __attribute__((__stdcall__)) STGMEDIUM_UserFree (ULONG *, STGMEDIUM *);
ULONG __attribute__((__stdcall__)) HWND_UserSize (ULONG *, ULONG, HWND *);
unsigned char * __attribute__((__stdcall__)) HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
unsigned char * __attribute__((__stdcall__)) HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
void __attribute__((__stdcall__)) HWND_UserFree (ULONG *, HWND *);
ULONG __attribute__((__stdcall__)) HMENU_UserSize (ULONG *, ULONG, HMENU *);
unsigned char * __attribute__((__stdcall__)) HMENU_UserMarshal (ULONG *, unsigned char *, HMENU *);
unsigned char * __attribute__((__stdcall__)) HMENU_UserUnmarshal(ULONG *, unsigned char *, HMENU *);
void __attribute__((__stdcall__)) HMENU_UserFree (ULONG *, HMENU *);
ULONG __attribute__((__stdcall__)) HGLOBAL_UserSize (ULONG *, ULONG, HGLOBAL *);
unsigned char * __attribute__((__stdcall__)) HGLOBAL_UserMarshal (ULONG *, unsigned char *, HGLOBAL *);
unsigned char * __attribute__((__stdcall__)) HGLOBAL_UserUnmarshal(ULONG *, unsigned char *, HGLOBAL *);
void __attribute__((__stdcall__)) HGLOBAL_UserFree (ULONG *, HGLOBAL *);
ULONG __attribute__((__stdcall__)) HACCEL_UserSize (ULONG *, ULONG, HACCEL *);
unsigned char * __attribute__((__stdcall__)) HACCEL_UserMarshal (ULONG *, unsigned char *, HACCEL *);
unsigned char * __attribute__((__stdcall__)) HACCEL_UserUnmarshal(ULONG *, unsigned char *, HACCEL *);
void __attribute__((__stdcall__)) HACCEL_UserFree (ULONG *, HACCEL *);
ULONG __attribute__((__stdcall__)) HDC_UserSize (ULONG *, ULONG, HDC *);
unsigned char * __attribute__((__stdcall__)) HDC_UserMarshal (ULONG *, unsigned char *, HDC *);
unsigned char * __attribute__((__stdcall__)) HDC_UserUnmarshal(ULONG *, unsigned char *, HDC *);
void __attribute__((__stdcall__)) HDC_UserFree (ULONG *, HDC *);
typedef struct IServiceProvider IServiceProvider;
typedef IServiceProvider *LPSERVICEPROVIDER;
extern const GUID IID_IServiceProvider;
typedef struct IServiceProviderVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IServiceProvider *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IServiceProvider *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IServiceProvider *This);
HRESULT (__attribute__((__stdcall__)) *QueryService)(
IServiceProvider *This,
const GUID *const guidService,
const IID *const riid,
void **ppvObject);
} IServiceProviderVtbl;
struct IServiceProvider {
IServiceProviderVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IServiceProvider_RemoteQueryService_Proxy(
IServiceProvider* This,
const GUID *const guidService,
const IID *const riid,
IUnknown **ppvObject);
void __attribute__((__stdcall__)) IServiceProvider_RemoteQueryService_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IServiceProvider_QueryService_Proxy(
IServiceProvider* This,
const GUID *const guidService,
const IID *const riid,
void **ppvObject);
HRESULT __attribute__((__stdcall__)) IServiceProvider_QueryService_Stub(
IServiceProvider* This,
const GUID *const guidService,
const IID *const riid,
IUnknown **ppvObject);
typedef struct ICreateTypeInfo ICreateTypeInfo;
typedef struct ICreateTypeInfo2 ICreateTypeInfo2;
typedef struct ICreateTypeLib ICreateTypeLib;
typedef struct ICreateTypeLib2 ICreateTypeLib2;
typedef struct IDispatch IDispatch;
typedef struct IEnumVARIANT IEnumVARIANT;
typedef struct ITypeComp ITypeComp;
typedef struct ITypeInfo ITypeInfo;
typedef struct ITypeInfo2 ITypeInfo2;
typedef struct ITypeLib ITypeLib;
typedef struct ITypeLib2 ITypeLib2;
typedef struct ITypeChangeEvents ITypeChangeEvents;
typedef struct IErrorInfo IErrorInfo;
typedef struct ICreateErrorInfo ICreateErrorInfo;
typedef struct ISupportErrorInfo ISupportErrorInfo;
typedef struct ITypeFactory ITypeFactory;
typedef struct ITypeMarshal ITypeMarshal;
typedef struct IRecordInfo IRecordInfo;
typedef struct IErrorLog IErrorLog;
typedef struct IPropertyBag IPropertyBag;
extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_c_ifspec;
extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_s_ifspec;
typedef CY CURRENCY;
typedef struct tagSAFEARRAYBOUND {
ULONG cElements;
LONG lLbound;
} SAFEARRAYBOUND;
typedef struct tagSAFEARRAYBOUND *LPSAFEARRAYBOUND;
typedef struct _wireVARIANT *wireVARIANT;
typedef struct _wireBRECORD *wireBRECORD;
typedef struct _wireSAFEARR_BSTR {
ULONG Size;
wireBSTR *aBstr;
} SAFEARR_BSTR;
typedef struct _wireSAFEARR_UNKNOWN {
ULONG Size;
IUnknown **apUnknown;
} SAFEARR_UNKNOWN;
typedef struct _wireSAFEARR_DISPATCH {
ULONG Size;
IDispatch **apDispatch;
} SAFEARR_DISPATCH;
typedef struct _wireSAFEARR_VARIANT {
ULONG Size;
wireVARIANT *aVariant;
} SAFEARR_VARIANT;
typedef struct _wireSAFEARR_BRECORD {
ULONG Size;
wireBRECORD *aRecord;
} SAFEARR_BRECORD;
typedef struct _wireSAFEARR_HAVEIID {
ULONG Size;
IUnknown **apUnknown;
IID iid;
} SAFEARR_HAVEIID;
typedef enum tagSF_TYPE {
SF_ERROR = VT_ERROR,
SF_I1 = VT_I1,
SF_I2 = VT_I2,
SF_I4 = VT_I4,
SF_I8 = VT_I8,
SF_BSTR = VT_BSTR,
SF_UNKNOWN = VT_UNKNOWN,
SF_DISPATCH = VT_DISPATCH,
SF_VARIANT = VT_VARIANT,
SF_RECORD = VT_RECORD,
SF_HAVEIID = VT_UNKNOWN | VT_RESERVED
} SF_TYPE;
typedef struct _wireSAFEARRAY_UNION {
ULONG sfType;
union {
SAFEARR_BSTR BstrStr;
SAFEARR_UNKNOWN UnknownStr;
SAFEARR_DISPATCH DispatchStr;
SAFEARR_VARIANT VariantStr;
SAFEARR_BRECORD RecordStr;
SAFEARR_HAVEIID HaveIidStr;
BYTE_SIZEDARR ByteStr;
WORD_SIZEDARR WordStr;
DWORD_SIZEDARR LongStr;
HYPER_SIZEDARR HyperStr;
} u;
} SAFEARRAYUNION;
typedef struct _wireSAFEARRAY {
USHORT cDims;
USHORT fFeatures;
ULONG cbElements;
ULONG cLocks;
SAFEARRAYUNION uArrayStructs;
SAFEARRAYBOUND rgsabound[1];
} *wireSAFEARRAY;
typedef wireSAFEARRAY *wirePSAFEARRAY;
typedef struct tagSAFEARRAY {
USHORT cDims;
USHORT fFeatures;
ULONG cbElements;
ULONG cLocks;
PVOID pvData;
SAFEARRAYBOUND rgsabound[1];
} SAFEARRAY;
typedef SAFEARRAY *LPSAFEARRAY;
typedef struct tagVARIANT VARIANT;
struct tagVARIANT {
union {
struct {
VARTYPE vt;
WORD wReserved1;
WORD wReserved2;
WORD wReserved3;
union {
LONGLONG llVal;
LONG lVal;
BYTE bVal;
SHORT iVal;
FLOAT fltVal;
DOUBLE dblVal;
VARIANT_BOOL boolVal;
SCODE scode;
CY cyVal;
DATE date;
BSTR bstrVal;
IUnknown *punkVal;
IDispatch *pdispVal;
SAFEARRAY *parray;
BYTE *pbVal;
SHORT *piVal;
LONG *plVal;
LONGLONG *pllVal;
FLOAT *pfltVal;
DOUBLE *pdblVal;
VARIANT_BOOL *pboolVal;
SCODE *pscode;
CY *pcyVal;
DATE *pdate;
BSTR *pbstrVal;
IUnknown **ppunkVal;
IDispatch **ppdispVal;
SAFEARRAY **pparray;
VARIANT *pvarVal;
PVOID byref;
CHAR cVal;
USHORT uiVal;
ULONG ulVal;
ULONGLONG ullVal;
INT intVal;
UINT uintVal;
DECIMAL *pdecVal;
CHAR *pcVal;
USHORT *puiVal;
ULONG *pulVal;
ULONGLONG *pullVal;
INT *pintVal;
UINT *puintVal;
struct {
PVOID pvRecord;
IRecordInfo *pRecInfo;
} ;
} ;
} ;
DECIMAL decVal;
} ;
};
typedef VARIANT *LPVARIANT;
typedef VARIANT VARIANTARG;
typedef VARIANT *LPVARIANTARG;
struct _wireBRECORD {
ULONG fFlags;
ULONG clSize;
IRecordInfo *pRecInfo;
byte *pRecord;
};
struct _wireVARIANT {
DWORD clSize;
DWORD rpcReserved;
USHORT vt;
USHORT wReserved1;
USHORT wReserved2;
USHORT wReserved3;
__extension__ union {
LONGLONG llVal;
LONG lVal;
BYTE bVal;
SHORT iVal;
FLOAT fltVal;
DOUBLE dblVal;
VARIANT_BOOL boolVal;
SCODE scode;
CY cyVal;
DATE date;
wireBSTR bstrVal;
IUnknown *punkVal;
IDispatch *pdispVal;
wirePSAFEARRAY parray;
wireBRECORD brecVal;
BYTE *pbVal;
SHORT *piVal;
LONG *plVal;
LONGLONG *pllVal;
FLOAT *pfltVal;
DOUBLE *pdblVal;
VARIANT_BOOL *pboolVal;
SCODE *pscode;
CY *pcyVal;
DATE *pdate;
wireBSTR *pbstrVal;
IUnknown **ppunkVal;
IDispatch **ppdispVal;
wirePSAFEARRAY *pparray;
wireVARIANT *pvarVal;
CHAR cVal;
USHORT uiVal;
ULONG ulVal;
ULONGLONG ullVal;
INT intVal;
UINT uintVal;
DECIMAL decVal;
DECIMAL *pdecVal;
CHAR *pcVal;
USHORT *puiVal;
ULONG *pulVal;
ULONGLONG *pullVal;
INT *pintVal;
UINT *puintVal;
} ;
};
typedef LONG DISPID;
typedef DISPID MEMBERID;
typedef DWORD HREFTYPE;
typedef enum tagTYPEKIND {
TKIND_ENUM = 0,
TKIND_RECORD = 1,
TKIND_MODULE = 2,
TKIND_INTERFACE = 3,
TKIND_DISPATCH = 4,
TKIND_COCLASS = 5,
TKIND_ALIAS = 6,
TKIND_UNION = 7,
TKIND_MAX = 8
} TYPEKIND;
typedef struct tagTYPEDESC {
__extension__ union {
struct tagTYPEDESC *lptdesc;
struct tagARRAYDESC *lpadesc;
HREFTYPE hreftype;
} ;
VARTYPE vt;
} TYPEDESC;
typedef struct tagARRAYDESC {
TYPEDESC tdescElem;
USHORT cDims;
SAFEARRAYBOUND rgbounds[1];
} ARRAYDESC;
typedef struct tagPARAMDESCEX {
ULONG cBytes;
VARIANTARG varDefaultValue;
} PARAMDESCEX;
typedef struct tagPARAMDESCEX *LPPARAMDESCEX;
typedef struct tagPARAMDESC {
LPPARAMDESCEX pparamdescex;
USHORT wParamFlags;
} PARAMDESC;
typedef struct tagPARAMDESC *LPPARAMDESC;
typedef struct tagIDLDESC {
ULONG_PTR dwReserved;
USHORT wIDLFlags;
} IDLDESC;
typedef struct tagIDLDESC *LPIDLDESC;
typedef struct tagELEMDESC {
TYPEDESC tdesc;
__extension__ union {
IDLDESC idldesc;
PARAMDESC paramdesc;
} ;
} ELEMDESC,*LPELEMDESC;
typedef struct tagTYPEATTR {
GUID guid;
LCID lcid;
DWORD dwReserved;
MEMBERID memidConstructor;
MEMBERID memidDestructor;
LPOLESTR lpstrSchema;
ULONG cbSizeInstance;
TYPEKIND typekind;
WORD cFuncs;
WORD cVars;
WORD cImplTypes;
WORD cbSizeVft;
WORD cbAlignment;
WORD wTypeFlags;
WORD wMajorVerNum;
WORD wMinorVerNum;
TYPEDESC tdescAlias;
IDLDESC idldescType;
} TYPEATTR;
typedef struct tagTYPEATTR *LPTYPEATTR;
typedef struct tagDISPPARAMS {
VARIANTARG *rgvarg;
DISPID *rgdispidNamedArgs;
UINT cArgs;
UINT cNamedArgs;
} DISPPARAMS;
typedef struct tagEXCEPINFO {
WORD wCode;
WORD wReserved;
BSTR bstrSource;
BSTR bstrDescription;
BSTR bstrHelpFile;
DWORD dwHelpContext;
PVOID pvReserved;
HRESULT (__attribute__((__stdcall__)) *pfnDeferredFillIn)(struct tagEXCEPINFO *);
SCODE scode;
} EXCEPINFO, *LPEXCEPINFO;
typedef enum tagCALLCONV {
CC_FASTCALL = 0,
CC_CDECL = 1,
CC_MSCPASCAL = 2,
CC_PASCAL = CC_MSCPASCAL,
CC_MACPASCAL = 3,
CC_STDCALL = 4,
CC_FPFASTCALL = 5,
CC_SYSCALL = 6,
CC_MPWCDECL = 7,
CC_MPWPASCAL = 8,
CC_MAX = 9
} CALLCONV;
typedef enum tagFUNCKIND {
FUNC_VIRTUAL = 0,
FUNC_PUREVIRTUAL = 1,
FUNC_NONVIRTUAL = 2,
FUNC_STATIC = 3,
FUNC_DISPATCH = 4
} FUNCKIND;
typedef enum tagINVOKEKIND {
INVOKE_FUNC = 1,
INVOKE_PROPERTYGET = 2,
INVOKE_PROPERTYPUT = 4,
INVOKE_PROPERTYPUTREF = 8
} INVOKEKIND;
typedef struct tagFUNCDESC {
MEMBERID memid;
SCODE *lprgscode;
ELEMDESC *lprgelemdescParam;
FUNCKIND funckind;
INVOKEKIND invkind;
CALLCONV callconv;
SHORT cParams;
SHORT cParamsOpt;
SHORT oVft;
SHORT cScodes;
ELEMDESC elemdescFunc;
WORD wFuncFlags;
} FUNCDESC;
typedef struct tagFUNCDESC *LPFUNCDESC;
typedef enum tagVARKIND {
VAR_PERINSTANCE = 0,
VAR_STATIC = 1,
VAR_CONST = 2,
VAR_DISPATCH = 3
} VARKIND;
typedef struct tagVARDESC {
MEMBERID memid;
LPOLESTR lpstrSchema;
__extension__ union {
ULONG oInst;
VARIANT *lpvarValue;
} ;
ELEMDESC elemdescVar;
WORD wVarFlags;
VARKIND varkind;
} VARDESC;
typedef struct tagVARDESC *LPVARDESC;
typedef enum tagTYPEFLAGS {
TYPEFLAG_FAPPOBJECT = 0x1,
TYPEFLAG_FCANCREATE = 0x2,
TYPEFLAG_FLICENSED = 0x4,
TYPEFLAG_FPREDECLID = 0x8,
TYPEFLAG_FHIDDEN = 0x10,
TYPEFLAG_FCONTROL = 0x20,
TYPEFLAG_FDUAL = 0x40,
TYPEFLAG_FNONEXTENSIBLE = 0x80,
TYPEFLAG_FOLEAUTOMATION = 0x100,
TYPEFLAG_FRESTRICTED = 0x200,
TYPEFLAG_FAGGREGATABLE = 0x400,
TYPEFLAG_FREPLACEABLE = 0x800,
TYPEFLAG_FDISPATCHABLE = 0x1000,
TYPEFLAG_FREVERSEBIND = 0x2000,
TYPEFLAG_FPROXY = 0x4000
} TYPEFLAGS;
typedef enum tagFUNCFLAGS {
FUNCFLAG_FRESTRICTED = 0x1,
FUNCFLAG_FSOURCE = 0x2,
FUNCFLAG_FBINDABLE = 0x4,
FUNCFLAG_FREQUESTEDIT = 0x8,
FUNCFLAG_FDISPLAYBIND = 0x10,
FUNCFLAG_FDEFAULTBIND = 0x20,
FUNCFLAG_FHIDDEN = 0x40,
FUNCFLAG_FUSESGETLASTERROR = 0x80,
FUNCFLAG_FDEFAULTCOLLELEM = 0x100,
FUNCFLAG_FUIDEFAULT = 0x200,
FUNCFLAG_FNONBROWSABLE = 0x400,
FUNCFLAG_FREPLACEABLE = 0x800,
FUNCFLAG_FIMMEDIATEBIND = 0x1000
} FUNCFLAGS;
typedef enum tagVARFLAGS {
VARFLAG_FREADONLY = 0x1,
VARFLAG_FSOURCE = 0x2,
VARFLAG_FBINDABLE = 0x4,
VARFLAG_FREQUESTEDIT = 0x8,
VARFLAG_FDISPLAYBIND = 0x10,
VARFLAG_FDEFAULTBIND = 0x20,
VARFLAG_FHIDDEN = 0x40,
VARFLAG_FRESTRICTED = 0x80,
VARFLAG_FDEFAULTCOLLELEM = 0x100,
VARFLAG_FUIDEFAULT = 0x200,
VARFLAG_FNONBROWSABLE = 0x400,
VARFLAG_FREPLACEABLE = 0x800,
VARFLAG_FIMMEDIATEBIND = 0x1000
} VARFLAGS;
typedef struct tagCLEANLOCALSTORAGE {
IUnknown *pInterface;
PVOID pStorage;
DWORD flags;
} CLEANLOCALSTORAGE;
typedef struct tagCUSTDATAITEM {
GUID guid;
VARIANTARG varValue;
} CUSTDATAITEM;
typedef struct tagCUSTDATAITEM *LPCUSTDATAITEM;
typedef struct tagCUSTDATA {
DWORD cCustData;
LPCUSTDATAITEM prgCustData;
} CUSTDATA;
typedef struct tagCUSTDATA *LPCUSTDATA;
typedef ICreateTypeInfo *LPCREATETYPEINFO;
extern const GUID IID_ICreateTypeInfo;
typedef struct ICreateTypeInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICreateTypeInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICreateTypeInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICreateTypeInfo *This);
HRESULT (__attribute__((__stdcall__)) *SetGuid)(
ICreateTypeInfo *This,
const GUID *const guid);
HRESULT (__attribute__((__stdcall__)) *SetTypeFlags)(
ICreateTypeInfo *This,
UINT uTypeFlags);
HRESULT (__attribute__((__stdcall__)) *SetDocString)(
ICreateTypeInfo *This,
LPOLESTR pStrDoc);
HRESULT (__attribute__((__stdcall__)) *SetHelpContext)(
ICreateTypeInfo *This,
DWORD dwHelpContext);
HRESULT (__attribute__((__stdcall__)) *SetVersion)(
ICreateTypeInfo *This,
WORD wMajorVerNum,
WORD wMinorVerNum);
HRESULT (__attribute__((__stdcall__)) *AddRefTypeInfo)(
ICreateTypeInfo *This,
ITypeInfo *pTInfo,
HREFTYPE *phRefType);
HRESULT (__attribute__((__stdcall__)) *AddFuncDesc)(
ICreateTypeInfo *This,
UINT index,
FUNCDESC *pFuncDesc);
HRESULT (__attribute__((__stdcall__)) *AddImplType)(
ICreateTypeInfo *This,
UINT index,
HREFTYPE hRefType);
HRESULT (__attribute__((__stdcall__)) *SetImplTypeFlags)(
ICreateTypeInfo *This,
UINT index,
INT implTypeFlags);
HRESULT (__attribute__((__stdcall__)) *SetAlignment)(
ICreateTypeInfo *This,
WORD cbAlignment);
HRESULT (__attribute__((__stdcall__)) *SetSchema)(
ICreateTypeInfo *This,
LPOLESTR pStrSchema);
HRESULT (__attribute__((__stdcall__)) *AddVarDesc)(
ICreateTypeInfo *This,
UINT index,
VARDESC *pVarDesc);
HRESULT (__attribute__((__stdcall__)) *SetFuncAndParamNames)(
ICreateTypeInfo *This,
UINT index,
LPOLESTR *rgszNames,
UINT cNames);
HRESULT (__attribute__((__stdcall__)) *SetVarName)(
ICreateTypeInfo *This,
UINT index,
LPOLESTR szName);
HRESULT (__attribute__((__stdcall__)) *SetTypeDescAlias)(
ICreateTypeInfo *This,
TYPEDESC *pTDescAlias);
HRESULT (__attribute__((__stdcall__)) *DefineFuncAsDllEntry)(
ICreateTypeInfo *This,
UINT index,
LPOLESTR szDllName,
LPOLESTR szProcName);
HRESULT (__attribute__((__stdcall__)) *SetFuncDocString)(
ICreateTypeInfo *This,
UINT index,
LPOLESTR szDocString);
HRESULT (__attribute__((__stdcall__)) *SetVarDocString)(
ICreateTypeInfo *This,
UINT index,
LPOLESTR szDocString);
HRESULT (__attribute__((__stdcall__)) *SetFuncHelpContext)(
ICreateTypeInfo *This,
UINT index,
DWORD dwHelpContext);
HRESULT (__attribute__((__stdcall__)) *SetVarHelpContext)(
ICreateTypeInfo *This,
UINT index,
DWORD dwHelpContext);
HRESULT (__attribute__((__stdcall__)) *SetMops)(
ICreateTypeInfo *This,
UINT index,
BSTR bstrMops);
HRESULT (__attribute__((__stdcall__)) *SetTypeIdldesc)(
ICreateTypeInfo *This,
IDLDESC *pIdlDesc);
HRESULT (__attribute__((__stdcall__)) *LayOut)(
ICreateTypeInfo *This);
} ICreateTypeInfoVtbl;
struct ICreateTypeInfo {
ICreateTypeInfoVtbl* lpVtbl;
};
typedef ICreateTypeInfo2 *LPCREATETYPEINFO2;
extern const GUID IID_ICreateTypeInfo2;
typedef struct ICreateTypeInfo2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICreateTypeInfo2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICreateTypeInfo2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICreateTypeInfo2 *This);
HRESULT (__attribute__((__stdcall__)) *SetGuid)(
ICreateTypeInfo2 *This,
const GUID *const guid);
HRESULT (__attribute__((__stdcall__)) *SetTypeFlags)(
ICreateTypeInfo2 *This,
UINT uTypeFlags);
HRESULT (__attribute__((__stdcall__)) *SetDocString)(
ICreateTypeInfo2 *This,
LPOLESTR pStrDoc);
HRESULT (__attribute__((__stdcall__)) *SetHelpContext)(
ICreateTypeInfo2 *This,
DWORD dwHelpContext);
HRESULT (__attribute__((__stdcall__)) *SetVersion)(
ICreateTypeInfo2 *This,
WORD wMajorVerNum,
WORD wMinorVerNum);
HRESULT (__attribute__((__stdcall__)) *AddRefTypeInfo)(
ICreateTypeInfo2 *This,
ITypeInfo *pTInfo,
HREFTYPE *phRefType);
HRESULT (__attribute__((__stdcall__)) *AddFuncDesc)(
ICreateTypeInfo2 *This,
UINT index,
FUNCDESC *pFuncDesc);
HRESULT (__attribute__((__stdcall__)) *AddImplType)(
ICreateTypeInfo2 *This,
UINT index,
HREFTYPE hRefType);
HRESULT (__attribute__((__stdcall__)) *SetImplTypeFlags)(
ICreateTypeInfo2 *This,
UINT index,
INT implTypeFlags);
HRESULT (__attribute__((__stdcall__)) *SetAlignment)(
ICreateTypeInfo2 *This,
WORD cbAlignment);
HRESULT (__attribute__((__stdcall__)) *SetSchema)(
ICreateTypeInfo2 *This,
LPOLESTR pStrSchema);
HRESULT (__attribute__((__stdcall__)) *AddVarDesc)(
ICreateTypeInfo2 *This,
UINT index,
VARDESC *pVarDesc);
HRESULT (__attribute__((__stdcall__)) *SetFuncAndParamNames)(
ICreateTypeInfo2 *This,
UINT index,
LPOLESTR *rgszNames,
UINT cNames);
HRESULT (__attribute__((__stdcall__)) *SetVarName)(
ICreateTypeInfo2 *This,
UINT index,
LPOLESTR szName);
HRESULT (__attribute__((__stdcall__)) *SetTypeDescAlias)(
ICreateTypeInfo2 *This,
TYPEDESC *pTDescAlias);
HRESULT (__attribute__((__stdcall__)) *DefineFuncAsDllEntry)(
ICreateTypeInfo2 *This,
UINT index,
LPOLESTR szDllName,
LPOLESTR szProcName);
HRESULT (__attribute__((__stdcall__)) *SetFuncDocString)(
ICreateTypeInfo2 *This,
UINT index,
LPOLESTR szDocString);
HRESULT (__attribute__((__stdcall__)) *SetVarDocString)(
ICreateTypeInfo2 *This,
UINT index,
LPOLESTR szDocString);
HRESULT (__attribute__((__stdcall__)) *SetFuncHelpContext)(
ICreateTypeInfo2 *This,
UINT index,
DWORD dwHelpContext);
HRESULT (__attribute__((__stdcall__)) *SetVarHelpContext)(
ICreateTypeInfo2 *This,
UINT index,
DWORD dwHelpContext);
HRESULT (__attribute__((__stdcall__)) *SetMops)(
ICreateTypeInfo2 *This,
UINT index,
BSTR bstrMops);
HRESULT (__attribute__((__stdcall__)) *SetTypeIdldesc)(
ICreateTypeInfo2 *This,
IDLDESC *pIdlDesc);
HRESULT (__attribute__((__stdcall__)) *LayOut)(
ICreateTypeInfo2 *This);
HRESULT (__attribute__((__stdcall__)) *DeleteFuncDesc)(
ICreateTypeInfo2 *This,
UINT index);
HRESULT (__attribute__((__stdcall__)) *DeleteFuncDescByMemId)(
ICreateTypeInfo2 *This,
MEMBERID memid,
INVOKEKIND invKind);
HRESULT (__attribute__((__stdcall__)) *DeleteVarDesc)(
ICreateTypeInfo2 *This,
UINT index);
HRESULT (__attribute__((__stdcall__)) *DeleteVarDescByMemId)(
ICreateTypeInfo2 *This,
MEMBERID memid);
HRESULT (__attribute__((__stdcall__)) *DeleteImplType)(
ICreateTypeInfo2 *This,
UINT index);
HRESULT (__attribute__((__stdcall__)) *SetCustData)(
ICreateTypeInfo2 *This,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *SetFuncCustData)(
ICreateTypeInfo2 *This,
UINT index,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *SetParamCustData)(
ICreateTypeInfo2 *This,
UINT indexFunc,
UINT indexParam,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *SetVarCustData)(
ICreateTypeInfo2 *This,
UINT index,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *SetImplTypeCustData)(
ICreateTypeInfo2 *This,
UINT index,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *SetHelpStringContext)(
ICreateTypeInfo2 *This,
ULONG dwHelpStringContext);
HRESULT (__attribute__((__stdcall__)) *SetFuncHelpStringContext)(
ICreateTypeInfo2 *This,
UINT index,
ULONG dwHelpStringContext);
HRESULT (__attribute__((__stdcall__)) *SetVarHelpStringContext)(
ICreateTypeInfo2 *This,
UINT index,
ULONG dwHelpStringContext);
HRESULT (__attribute__((__stdcall__)) *Invalidate)(
ICreateTypeInfo2 *This);
HRESULT (__attribute__((__stdcall__)) *SetName)(
ICreateTypeInfo2 *This,
LPOLESTR szName);
} ICreateTypeInfo2Vtbl;
struct ICreateTypeInfo2 {
ICreateTypeInfo2Vtbl* lpVtbl;
};
typedef ICreateTypeLib *LPCREATETYPELIB;
extern const GUID IID_ICreateTypeLib;
typedef struct ICreateTypeLibVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICreateTypeLib *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICreateTypeLib *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICreateTypeLib *This);
HRESULT (__attribute__((__stdcall__)) *CreateTypeInfo)(
ICreateTypeLib *This,
LPOLESTR szName,
TYPEKIND tkind,
ICreateTypeInfo **ppCTInfo);
HRESULT (__attribute__((__stdcall__)) *SetName)(
ICreateTypeLib *This,
LPOLESTR szName);
HRESULT (__attribute__((__stdcall__)) *SetVersion)(
ICreateTypeLib *This,
WORD wMajorVerNum,
WORD wMinorVerNum);
HRESULT (__attribute__((__stdcall__)) *SetGuid)(
ICreateTypeLib *This,
const GUID *const guid);
HRESULT (__attribute__((__stdcall__)) *SetDocString)(
ICreateTypeLib *This,
LPOLESTR szDoc);
HRESULT (__attribute__((__stdcall__)) *SetHelpFileName)(
ICreateTypeLib *This,
LPOLESTR szHelpFileName);
HRESULT (__attribute__((__stdcall__)) *SetHelpContext)(
ICreateTypeLib *This,
DWORD dwHelpContext);
HRESULT (__attribute__((__stdcall__)) *SetLcid)(
ICreateTypeLib *This,
LCID lcid);
HRESULT (__attribute__((__stdcall__)) *SetLibFlags)(
ICreateTypeLib *This,
UINT uLibFlags);
HRESULT (__attribute__((__stdcall__)) *SaveAllChanges)(
ICreateTypeLib *This);
} ICreateTypeLibVtbl;
struct ICreateTypeLib {
ICreateTypeLibVtbl* lpVtbl;
};
typedef ICreateTypeLib2 *LPCREATETYPELIB2;
extern const GUID IID_ICreateTypeLib2;
typedef struct ICreateTypeLib2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICreateTypeLib2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICreateTypeLib2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICreateTypeLib2 *This);
HRESULT (__attribute__((__stdcall__)) *CreateTypeInfo)(
ICreateTypeLib2 *This,
LPOLESTR szName,
TYPEKIND tkind,
ICreateTypeInfo **ppCTInfo);
HRESULT (__attribute__((__stdcall__)) *SetName)(
ICreateTypeLib2 *This,
LPOLESTR szName);
HRESULT (__attribute__((__stdcall__)) *SetVersion)(
ICreateTypeLib2 *This,
WORD wMajorVerNum,
WORD wMinorVerNum);
HRESULT (__attribute__((__stdcall__)) *SetGuid)(
ICreateTypeLib2 *This,
const GUID *const guid);
HRESULT (__attribute__((__stdcall__)) *SetDocString)(
ICreateTypeLib2 *This,
LPOLESTR szDoc);
HRESULT (__attribute__((__stdcall__)) *SetHelpFileName)(
ICreateTypeLib2 *This,
LPOLESTR szHelpFileName);
HRESULT (__attribute__((__stdcall__)) *SetHelpContext)(
ICreateTypeLib2 *This,
DWORD dwHelpContext);
HRESULT (__attribute__((__stdcall__)) *SetLcid)(
ICreateTypeLib2 *This,
LCID lcid);
HRESULT (__attribute__((__stdcall__)) *SetLibFlags)(
ICreateTypeLib2 *This,
UINT uLibFlags);
HRESULT (__attribute__((__stdcall__)) *SaveAllChanges)(
ICreateTypeLib2 *This);
HRESULT (__attribute__((__stdcall__)) *DeleteTypeInfo)(
ICreateTypeLib2 *This,
LPOLESTR szName);
HRESULT (__attribute__((__stdcall__)) *SetCustData)(
ICreateTypeLib2 *This,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *SetHelpStringContext)(
ICreateTypeLib2 *This,
ULONG dwHelpStringContext);
HRESULT (__attribute__((__stdcall__)) *SetHelpStringDll)(
ICreateTypeLib2 *This,
LPOLESTR szFileName);
} ICreateTypeLib2Vtbl;
struct ICreateTypeLib2 {
ICreateTypeLib2Vtbl* lpVtbl;
};
typedef IDispatch *LPDISPATCH;
extern const GUID IID_IDispatch;
typedef struct IDispatchVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDispatch *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDispatch *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDispatch *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(
IDispatch *This,
UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(
IDispatch *This,
UINT iTInfo,
LCID lcid,
ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(
IDispatch *This,
const IID *const riid,
LPOLESTR *rgszNames,
UINT cNames,
LCID lcid,
DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(
IDispatch *This,
DISPID dispIdMember,
const IID *const riid,
LCID lcid,
WORD wFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *puArgErr);
} IDispatchVtbl;
struct IDispatch {
IDispatchVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IDispatch_RemoteInvoke_Proxy(
IDispatch* This,
DISPID dispIdMember,
const IID *const riid,
LCID lcid,
DWORD dwFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *pArgErr,
UINT cVarRef,
UINT *rgVarRefIdx,
VARIANTARG *rgVarRef);
void __attribute__((__stdcall__)) IDispatch_RemoteInvoke_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IDispatch_Invoke_Proxy(
IDispatch* This,
DISPID dispIdMember,
const IID *const riid,
LCID lcid,
WORD wFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *puArgErr);
HRESULT __attribute__((__stdcall__)) IDispatch_Invoke_Stub(
IDispatch* This,
DISPID dispIdMember,
const IID *const riid,
LCID lcid,
DWORD dwFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *pArgErr,
UINT cVarRef,
UINT *rgVarRefIdx,
VARIANTARG *rgVarRef);
typedef IEnumVARIANT *LPENUMVARIANT;
extern const GUID IID_IEnumVARIANT;
typedef struct IEnumVARIANTVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumVARIANT *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumVARIANT *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumVARIANT *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumVARIANT *This,
ULONG celt,
VARIANT *rgVar,
ULONG *pCeltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumVARIANT *This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumVARIANT *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumVARIANT *This,
IEnumVARIANT **ppEnum);
} IEnumVARIANTVtbl;
struct IEnumVARIANT {
IEnumVARIANTVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumVARIANT_RemoteNext_Proxy(
IEnumVARIANT* This,
ULONG celt,
VARIANT *rgVar,
ULONG *pCeltFetched);
void __attribute__((__stdcall__)) IEnumVARIANT_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumVARIANT_Next_Proxy(
IEnumVARIANT* This,
ULONG celt,
VARIANT *rgVar,
ULONG *pCeltFetched);
HRESULT __attribute__((__stdcall__)) IEnumVARIANT_Next_Stub(
IEnumVARIANT* This,
ULONG celt,
VARIANT *rgVar,
ULONG *pCeltFetched);
typedef ITypeComp *LPTYPECOMP;
typedef enum tagDESCKIND {
DESCKIND_NONE = 0,
DESCKIND_FUNCDESC = 1,
DESCKIND_VARDESC = 2,
DESCKIND_TYPECOMP = 3,
DESCKIND_IMPLICITAPPOBJ = 4,
DESCKIND_MAX = 5
} DESCKIND;
typedef union tagBINDPTR {
FUNCDESC *lpfuncdesc;
VARDESC *lpvardesc;
ITypeComp *lptcomp;
} BINDPTR;
typedef union tagBINDPTR *LPBINDPTR;
extern const GUID IID_ITypeComp;
typedef struct ITypeCompVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITypeComp *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITypeComp *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITypeComp *This);
HRESULT (__attribute__((__stdcall__)) *Bind)(
ITypeComp *This,
LPOLESTR szName,
ULONG lHashVal,
WORD wFlags,
ITypeInfo **ppTInfo,
DESCKIND *pDescKind,
BINDPTR *pBindPtr);
HRESULT (__attribute__((__stdcall__)) *BindType)(
ITypeComp *This,
LPOLESTR szName,
ULONG lHashVal,
ITypeInfo **ppTInfo,
ITypeComp **ppTComp);
} ITypeCompVtbl;
struct ITypeComp {
ITypeCompVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ITypeComp_RemoteBind_Proxy(
ITypeComp* This,
LPOLESTR szName,
ULONG lHashVal,
WORD wFlags,
ITypeInfo **ppTInfo,
DESCKIND *pDescKind,
LPFUNCDESC *ppFuncDesc,
LPVARDESC *ppVarDesc,
ITypeComp **ppTypeComp,
CLEANLOCALSTORAGE *pDummy);
void __attribute__((__stdcall__)) ITypeComp_RemoteBind_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeComp_RemoteBindType_Proxy(
ITypeComp* This,
LPOLESTR szName,
ULONG lHashVal,
ITypeInfo **ppTInfo);
void __attribute__((__stdcall__)) ITypeComp_RemoteBindType_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeComp_Bind_Proxy(
ITypeComp* This,
LPOLESTR szName,
ULONG lHashVal,
WORD wFlags,
ITypeInfo **ppTInfo,
DESCKIND *pDescKind,
BINDPTR *pBindPtr);
HRESULT __attribute__((__stdcall__)) ITypeComp_Bind_Stub(
ITypeComp* This,
LPOLESTR szName,
ULONG lHashVal,
WORD wFlags,
ITypeInfo **ppTInfo,
DESCKIND *pDescKind,
LPFUNCDESC *ppFuncDesc,
LPVARDESC *ppVarDesc,
ITypeComp **ppTypeComp,
CLEANLOCALSTORAGE *pDummy);
HRESULT __attribute__((__stdcall__)) ITypeComp_BindType_Proxy(
ITypeComp* This,
LPOLESTR szName,
ULONG lHashVal,
ITypeInfo **ppTInfo,
ITypeComp **ppTComp);
HRESULT __attribute__((__stdcall__)) ITypeComp_BindType_Stub(
ITypeComp* This,
LPOLESTR szName,
ULONG lHashVal,
ITypeInfo **ppTInfo);
typedef ITypeInfo *LPTYPEINFO;
extern const GUID IID_ITypeInfo;
typedef struct ITypeInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITypeInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITypeInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITypeInfo *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeAttr)(
ITypeInfo *This,
TYPEATTR **ppTypeAttr);
HRESULT (__attribute__((__stdcall__)) *GetTypeComp)(
ITypeInfo *This,
ITypeComp **ppTComp);
HRESULT (__attribute__((__stdcall__)) *GetFuncDesc)(
ITypeInfo *This,
UINT index,
FUNCDESC **ppFuncDesc);
HRESULT (__attribute__((__stdcall__)) *GetVarDesc)(
ITypeInfo *This,
UINT index,
VARDESC **ppVarDesc);
HRESULT (__attribute__((__stdcall__)) *GetNames)(
ITypeInfo *This,
MEMBERID memid,
BSTR *rgBstrNames,
UINT cMaxNames,
UINT *pcNames);
HRESULT (__attribute__((__stdcall__)) *GetRefTypeOfImplType)(
ITypeInfo *This,
UINT index,
HREFTYPE *pRefType);
HRESULT (__attribute__((__stdcall__)) *GetImplTypeFlags)(
ITypeInfo *This,
UINT index,
INT *pImplTypeFlags);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(
ITypeInfo *This,
LPOLESTR *rgszNames,
UINT cNames,
MEMBERID *pMemId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(
ITypeInfo *This,
PVOID pvInstance,
MEMBERID memid,
WORD wFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *GetDocumentation)(
ITypeInfo *This,
MEMBERID memid,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
HRESULT (__attribute__((__stdcall__)) *GetDllEntry)(
ITypeInfo *This,
MEMBERID memid,
INVOKEKIND invKind,
BSTR *pBstrDllName,
BSTR *pBstrName,
WORD *pwOrdinal);
HRESULT (__attribute__((__stdcall__)) *GetRefTypeInfo)(
ITypeInfo *This,
HREFTYPE hRefType,
ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *AddressOfMember)(
ITypeInfo *This,
MEMBERID memid,
INVOKEKIND invKind,
PVOID *ppv);
HRESULT (__attribute__((__stdcall__)) *CreateInstance)(
ITypeInfo *This,
IUnknown *pUnkOuter,
const IID *const riid,
PVOID *ppvObj);
HRESULT (__attribute__((__stdcall__)) *GetMops)(
ITypeInfo *This,
MEMBERID memid,
BSTR *pBstrMops);
HRESULT (__attribute__((__stdcall__)) *GetContainingTypeLib)(
ITypeInfo *This,
ITypeLib **ppTLib,
UINT *pIndex);
void (__attribute__((__stdcall__)) *ReleaseTypeAttr)(
ITypeInfo *This,
TYPEATTR *pTypeAttr);
void (__attribute__((__stdcall__)) *ReleaseFuncDesc)(
ITypeInfo *This,
FUNCDESC *pFuncDesc);
void (__attribute__((__stdcall__)) *ReleaseVarDesc)(
ITypeInfo *This,
VARDESC *pVarDesc);
} ITypeInfoVtbl;
struct ITypeInfo {
ITypeInfoVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ITypeInfo_RemoteGetTypeAttr_Proxy(
ITypeInfo* This,
LPTYPEATTR *ppTypeAttr,
CLEANLOCALSTORAGE *pDummy);
void __attribute__((__stdcall__)) ITypeInfo_RemoteGetTypeAttr_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_RemoteGetFuncDesc_Proxy(
ITypeInfo* This,
UINT index,
LPFUNCDESC *ppFuncDesc,
CLEANLOCALSTORAGE *pDummy);
void __attribute__((__stdcall__)) ITypeInfo_RemoteGetFuncDesc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_RemoteGetVarDesc_Proxy(
ITypeInfo* This,
UINT index,
LPVARDESC *ppVarDesc,
CLEANLOCALSTORAGE *pDummy);
void __attribute__((__stdcall__)) ITypeInfo_RemoteGetVarDesc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_RemoteGetNames_Proxy(
ITypeInfo* This,
MEMBERID memid,
BSTR *rgBstrNames,
UINT cMaxNames,
UINT *pcNames);
void __attribute__((__stdcall__)) ITypeInfo_RemoteGetNames_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_LocalGetIDsOfNames_Proxy(
ITypeInfo* This);
void __attribute__((__stdcall__)) ITypeInfo_LocalGetIDsOfNames_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_LocalInvoke_Proxy(
ITypeInfo* This);
void __attribute__((__stdcall__)) ITypeInfo_LocalInvoke_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_RemoteGetDocumentation_Proxy(
ITypeInfo* This,
MEMBERID memid,
DWORD refPtrFlags,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
void __attribute__((__stdcall__)) ITypeInfo_RemoteGetDocumentation_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_RemoteGetDllEntry_Proxy(
ITypeInfo* This,
MEMBERID memid,
INVOKEKIND invKind,
DWORD refPtrFlags,
BSTR *pBstrDllName,
BSTR *pBstrName,
WORD *pwOrdinal);
void __attribute__((__stdcall__)) ITypeInfo_RemoteGetDllEntry_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_LocalAddressOfMember_Proxy(
ITypeInfo* This);
void __attribute__((__stdcall__)) ITypeInfo_LocalAddressOfMember_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_RemoteCreateInstance_Proxy(
ITypeInfo* This,
const IID *const riid,
IUnknown **ppvObj);
void __attribute__((__stdcall__)) ITypeInfo_RemoteCreateInstance_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_RemoteGetContainingTypeLib_Proxy(
ITypeInfo* This,
ITypeLib **ppTLib,
UINT *pIndex);
void __attribute__((__stdcall__)) ITypeInfo_RemoteGetContainingTypeLib_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_LocalReleaseTypeAttr_Proxy(
ITypeInfo* This);
void __attribute__((__stdcall__)) ITypeInfo_LocalReleaseTypeAttr_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_LocalReleaseFuncDesc_Proxy(
ITypeInfo* This);
void __attribute__((__stdcall__)) ITypeInfo_LocalReleaseFuncDesc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_LocalReleaseVarDesc_Proxy(
ITypeInfo* This);
void __attribute__((__stdcall__)) ITypeInfo_LocalReleaseVarDesc_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetTypeAttr_Proxy(
ITypeInfo* This,
TYPEATTR **ppTypeAttr);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetTypeAttr_Stub(
ITypeInfo* This,
LPTYPEATTR *ppTypeAttr,
CLEANLOCALSTORAGE *pDummy);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetFuncDesc_Proxy(
ITypeInfo* This,
UINT index,
FUNCDESC **ppFuncDesc);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetFuncDesc_Stub(
ITypeInfo* This,
UINT index,
LPFUNCDESC *ppFuncDesc,
CLEANLOCALSTORAGE *pDummy);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetVarDesc_Proxy(
ITypeInfo* This,
UINT index,
VARDESC **ppVarDesc);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetVarDesc_Stub(
ITypeInfo* This,
UINT index,
LPVARDESC *ppVarDesc,
CLEANLOCALSTORAGE *pDummy);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetNames_Proxy(
ITypeInfo* This,
MEMBERID memid,
BSTR *rgBstrNames,
UINT cMaxNames,
UINT *pcNames);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetNames_Stub(
ITypeInfo* This,
MEMBERID memid,
BSTR *rgBstrNames,
UINT cMaxNames,
UINT *pcNames);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetIDsOfNames_Proxy(
ITypeInfo* This,
LPOLESTR *rgszNames,
UINT cNames,
MEMBERID *pMemId);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetIDsOfNames_Stub(
ITypeInfo* This);
HRESULT __attribute__((__stdcall__)) ITypeInfo_Invoke_Proxy(
ITypeInfo* This,
PVOID pvInstance,
MEMBERID memid,
WORD wFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *puArgErr);
HRESULT __attribute__((__stdcall__)) ITypeInfo_Invoke_Stub(
ITypeInfo* This);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetDocumentation_Proxy(
ITypeInfo* This,
MEMBERID memid,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetDocumentation_Stub(
ITypeInfo* This,
MEMBERID memid,
DWORD refPtrFlags,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetDllEntry_Proxy(
ITypeInfo* This,
MEMBERID memid,
INVOKEKIND invKind,
BSTR *pBstrDllName,
BSTR *pBstrName,
WORD *pwOrdinal);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetDllEntry_Stub(
ITypeInfo* This,
MEMBERID memid,
INVOKEKIND invKind,
DWORD refPtrFlags,
BSTR *pBstrDllName,
BSTR *pBstrName,
WORD *pwOrdinal);
HRESULT __attribute__((__stdcall__)) ITypeInfo_AddressOfMember_Proxy(
ITypeInfo* This,
MEMBERID memid,
INVOKEKIND invKind,
PVOID *ppv);
HRESULT __attribute__((__stdcall__)) ITypeInfo_AddressOfMember_Stub(
ITypeInfo* This);
HRESULT __attribute__((__stdcall__)) ITypeInfo_CreateInstance_Proxy(
ITypeInfo* This,
IUnknown *pUnkOuter,
const IID *const riid,
PVOID *ppvObj);
HRESULT __attribute__((__stdcall__)) ITypeInfo_CreateInstance_Stub(
ITypeInfo* This,
const IID *const riid,
IUnknown **ppvObj);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetContainingTypeLib_Proxy(
ITypeInfo* This,
ITypeLib **ppTLib,
UINT *pIndex);
HRESULT __attribute__((__stdcall__)) ITypeInfo_GetContainingTypeLib_Stub(
ITypeInfo* This,
ITypeLib **ppTLib,
UINT *pIndex);
void __attribute__((__stdcall__)) ITypeInfo_ReleaseTypeAttr_Proxy(
ITypeInfo* This,
TYPEATTR *pTypeAttr);
HRESULT __attribute__((__stdcall__)) ITypeInfo_ReleaseTypeAttr_Stub(
ITypeInfo* This);
void __attribute__((__stdcall__)) ITypeInfo_ReleaseFuncDesc_Proxy(
ITypeInfo* This,
FUNCDESC *pFuncDesc);
HRESULT __attribute__((__stdcall__)) ITypeInfo_ReleaseFuncDesc_Stub(
ITypeInfo* This);
void __attribute__((__stdcall__)) ITypeInfo_ReleaseVarDesc_Proxy(
ITypeInfo* This,
VARDESC *pVarDesc);
HRESULT __attribute__((__stdcall__)) ITypeInfo_ReleaseVarDesc_Stub(
ITypeInfo* This);
typedef ITypeInfo2 *LPTYPEINFO2;
extern const GUID IID_ITypeInfo2;
typedef struct ITypeInfo2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITypeInfo2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITypeInfo2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITypeInfo2 *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeAttr)(
ITypeInfo2 *This,
TYPEATTR **ppTypeAttr);
HRESULT (__attribute__((__stdcall__)) *GetTypeComp)(
ITypeInfo2 *This,
ITypeComp **ppTComp);
HRESULT (__attribute__((__stdcall__)) *GetFuncDesc)(
ITypeInfo2 *This,
UINT index,
FUNCDESC **ppFuncDesc);
HRESULT (__attribute__((__stdcall__)) *GetVarDesc)(
ITypeInfo2 *This,
UINT index,
VARDESC **ppVarDesc);
HRESULT (__attribute__((__stdcall__)) *GetNames)(
ITypeInfo2 *This,
MEMBERID memid,
BSTR *rgBstrNames,
UINT cMaxNames,
UINT *pcNames);
HRESULT (__attribute__((__stdcall__)) *GetRefTypeOfImplType)(
ITypeInfo2 *This,
UINT index,
HREFTYPE *pRefType);
HRESULT (__attribute__((__stdcall__)) *GetImplTypeFlags)(
ITypeInfo2 *This,
UINT index,
INT *pImplTypeFlags);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(
ITypeInfo2 *This,
LPOLESTR *rgszNames,
UINT cNames,
MEMBERID *pMemId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(
ITypeInfo2 *This,
PVOID pvInstance,
MEMBERID memid,
WORD wFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *GetDocumentation)(
ITypeInfo2 *This,
MEMBERID memid,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
HRESULT (__attribute__((__stdcall__)) *GetDllEntry)(
ITypeInfo2 *This,
MEMBERID memid,
INVOKEKIND invKind,
BSTR *pBstrDllName,
BSTR *pBstrName,
WORD *pwOrdinal);
HRESULT (__attribute__((__stdcall__)) *GetRefTypeInfo)(
ITypeInfo2 *This,
HREFTYPE hRefType,
ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *AddressOfMember)(
ITypeInfo2 *This,
MEMBERID memid,
INVOKEKIND invKind,
PVOID *ppv);
HRESULT (__attribute__((__stdcall__)) *CreateInstance)(
ITypeInfo2 *This,
IUnknown *pUnkOuter,
const IID *const riid,
PVOID *ppvObj);
HRESULT (__attribute__((__stdcall__)) *GetMops)(
ITypeInfo2 *This,
MEMBERID memid,
BSTR *pBstrMops);
HRESULT (__attribute__((__stdcall__)) *GetContainingTypeLib)(
ITypeInfo2 *This,
ITypeLib **ppTLib,
UINT *pIndex);
void (__attribute__((__stdcall__)) *ReleaseTypeAttr)(
ITypeInfo2 *This,
TYPEATTR *pTypeAttr);
void (__attribute__((__stdcall__)) *ReleaseFuncDesc)(
ITypeInfo2 *This,
FUNCDESC *pFuncDesc);
void (__attribute__((__stdcall__)) *ReleaseVarDesc)(
ITypeInfo2 *This,
VARDESC *pVarDesc);
HRESULT (__attribute__((__stdcall__)) *GetTypeKind)(
ITypeInfo2 *This,
TYPEKIND *pTypeKind);
HRESULT (__attribute__((__stdcall__)) *GetTypeFlags)(
ITypeInfo2 *This,
ULONG *pTypeFlags);
HRESULT (__attribute__((__stdcall__)) *GetFuncIndexOfMemId)(
ITypeInfo2 *This,
MEMBERID memid,
INVOKEKIND invKind,
UINT *pFuncIndex);
HRESULT (__attribute__((__stdcall__)) *GetVarIndexOfMemId)(
ITypeInfo2 *This,
MEMBERID memid,
UINT *pVarIndex);
HRESULT (__attribute__((__stdcall__)) *GetCustData)(
ITypeInfo2 *This,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *GetFuncCustData)(
ITypeInfo2 *This,
UINT index,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *GetParamCustData)(
ITypeInfo2 *This,
UINT indexFunc,
UINT indexParam,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *GetVarCustData)(
ITypeInfo2 *This,
UINT index,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *GetImplTypeCustData)(
ITypeInfo2 *This,
UINT index,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *GetDocumentation2)(
ITypeInfo2 *This,
MEMBERID memid,
LCID lcid,
BSTR *pbstrHelpString,
DWORD *pdwHelpStringContext,
BSTR *pbstrHelpStringDll);
HRESULT (__attribute__((__stdcall__)) *GetAllCustData)(
ITypeInfo2 *This,
CUSTDATA *pCustData);
HRESULT (__attribute__((__stdcall__)) *GetAllFuncCustData)(
ITypeInfo2 *This,
UINT index,
CUSTDATA *pCustData);
HRESULT (__attribute__((__stdcall__)) *GetAllParamCustData)(
ITypeInfo2 *This,
UINT indexFunc,
UINT indexParam,
CUSTDATA *pCustData);
HRESULT (__attribute__((__stdcall__)) *GetAllVarCustData)(
ITypeInfo2 *This,
UINT index,
CUSTDATA *pCustData);
HRESULT (__attribute__((__stdcall__)) *GetAllImplTypeCustData)(
ITypeInfo2 *This,
UINT index,
CUSTDATA *pCustData);
} ITypeInfo2Vtbl;
struct ITypeInfo2 {
ITypeInfo2Vtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ITypeInfo2_RemoteGetDocumentation2_Proxy(
ITypeInfo2* This,
MEMBERID memid,
LCID lcid,
DWORD refPtrFlags,
BSTR *pbstrHelpString,
DWORD *pdwHelpStringContext,
BSTR *pbstrHelpStringDll);
void __attribute__((__stdcall__)) ITypeInfo2_RemoteGetDocumentation2_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeInfo2_GetDocumentation2_Proxy(
ITypeInfo2* This,
MEMBERID memid,
LCID lcid,
BSTR *pbstrHelpString,
DWORD *pdwHelpStringContext,
BSTR *pbstrHelpStringDll);
HRESULT __attribute__((__stdcall__)) ITypeInfo2_GetDocumentation2_Stub(
ITypeInfo2* This,
MEMBERID memid,
LCID lcid,
DWORD refPtrFlags,
BSTR *pbstrHelpString,
DWORD *pdwHelpStringContext,
BSTR *pbstrHelpStringDll);
typedef enum tagSYSKIND {
SYS_WIN16 = 0,
SYS_WIN32 = 1,
SYS_MAC = 2,
SYS_WIN64 = 3
} SYSKIND;
typedef enum tagLIBFLAGS {
LIBFLAG_FRESTRICTED = 0x1,
LIBFLAG_FCONTROL = 0x2,
LIBFLAG_FHIDDEN = 0x4,
LIBFLAG_FHASDISKIMAGE = 0x8
} LIBFLAGS;
typedef ITypeLib *LPTYPELIB;
typedef struct tagTLIBATTR {
GUID guid;
LCID lcid;
SYSKIND syskind;
WORD wMajorVerNum;
WORD wMinorVerNum;
WORD wLibFlags;
} TLIBATTR;
typedef struct tagTLIBATTR *LPTLIBATTR;
extern const GUID IID_ITypeLib;
typedef struct ITypeLibVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITypeLib *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITypeLib *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITypeLib *This);
UINT (__attribute__((__stdcall__)) *GetTypeInfoCount)(
ITypeLib *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(
ITypeLib *This,
UINT index,
ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoType)(
ITypeLib *This,
UINT index,
TYPEKIND *pTKind);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoOfGuid)(
ITypeLib *This,
const GUID *const guid,
ITypeInfo **ppTinfo);
HRESULT (__attribute__((__stdcall__)) *GetLibAttr)(
ITypeLib *This,
TLIBATTR **ppTLibAttr);
HRESULT (__attribute__((__stdcall__)) *GetTypeComp)(
ITypeLib *This,
ITypeComp **ppTComp);
HRESULT (__attribute__((__stdcall__)) *GetDocumentation)(
ITypeLib *This,
INT index,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
HRESULT (__attribute__((__stdcall__)) *IsName)(
ITypeLib *This,
LPOLESTR szNameBuf,
ULONG lHashVal,
WINBOOL *pfName);
HRESULT (__attribute__((__stdcall__)) *FindName)(
ITypeLib *This,
LPOLESTR szNameBuf,
ULONG lHashVal,
ITypeInfo **ppTInfo,
MEMBERID *rgMemId,
USHORT *pcFound);
void (__attribute__((__stdcall__)) *ReleaseTLibAttr)(
ITypeLib *This,
TLIBATTR *pTLibAttr);
} ITypeLibVtbl;
struct ITypeLib {
ITypeLibVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ITypeLib_RemoteGetTypeInfoCount_Proxy(
ITypeLib* This,
UINT *pcTInfo);
void __attribute__((__stdcall__)) ITypeLib_RemoteGetTypeInfoCount_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeLib_RemoteGetLibAttr_Proxy(
ITypeLib* This,
LPTLIBATTR *ppTLibAttr,
CLEANLOCALSTORAGE *pDummy);
void __attribute__((__stdcall__)) ITypeLib_RemoteGetLibAttr_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeLib_RemoteGetDocumentation_Proxy(
ITypeLib* This,
INT index,
DWORD refPtrFlags,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
void __attribute__((__stdcall__)) ITypeLib_RemoteGetDocumentation_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeLib_RemoteIsName_Proxy(
ITypeLib* This,
LPOLESTR szNameBuf,
ULONG lHashVal,
WINBOOL *pfName,
BSTR *pBstrLibName);
void __attribute__((__stdcall__)) ITypeLib_RemoteIsName_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeLib_RemoteFindName_Proxy(
ITypeLib* This,
LPOLESTR szNameBuf,
ULONG lHashVal,
ITypeInfo **ppTInfo,
MEMBERID *rgMemId,
USHORT *pcFound,
BSTR *pBstrLibName);
void __attribute__((__stdcall__)) ITypeLib_RemoteFindName_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeLib_LocalReleaseTLibAttr_Proxy(
ITypeLib* This);
void __attribute__((__stdcall__)) ITypeLib_LocalReleaseTLibAttr_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
UINT __attribute__((__stdcall__)) ITypeLib_GetTypeInfoCount_Proxy(
ITypeLib* This);
HRESULT __attribute__((__stdcall__)) ITypeLib_GetTypeInfoCount_Stub(
ITypeLib* This,
UINT *pcTInfo);
HRESULT __attribute__((__stdcall__)) ITypeLib_GetLibAttr_Proxy(
ITypeLib* This,
TLIBATTR **ppTLibAttr);
HRESULT __attribute__((__stdcall__)) ITypeLib_GetLibAttr_Stub(
ITypeLib* This,
LPTLIBATTR *ppTLibAttr,
CLEANLOCALSTORAGE *pDummy);
HRESULT __attribute__((__stdcall__)) ITypeLib_GetDocumentation_Proxy(
ITypeLib* This,
INT index,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
HRESULT __attribute__((__stdcall__)) ITypeLib_GetDocumentation_Stub(
ITypeLib* This,
INT index,
DWORD refPtrFlags,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
HRESULT __attribute__((__stdcall__)) ITypeLib_IsName_Proxy(
ITypeLib* This,
LPOLESTR szNameBuf,
ULONG lHashVal,
WINBOOL *pfName);
HRESULT __attribute__((__stdcall__)) ITypeLib_IsName_Stub(
ITypeLib* This,
LPOLESTR szNameBuf,
ULONG lHashVal,
WINBOOL *pfName,
BSTR *pBstrLibName);
HRESULT __attribute__((__stdcall__)) ITypeLib_FindName_Proxy(
ITypeLib* This,
LPOLESTR szNameBuf,
ULONG lHashVal,
ITypeInfo **ppTInfo,
MEMBERID *rgMemId,
USHORT *pcFound);
HRESULT __attribute__((__stdcall__)) ITypeLib_FindName_Stub(
ITypeLib* This,
LPOLESTR szNameBuf,
ULONG lHashVal,
ITypeInfo **ppTInfo,
MEMBERID *rgMemId,
USHORT *pcFound,
BSTR *pBstrLibName);
void __attribute__((__stdcall__)) ITypeLib_ReleaseTLibAttr_Proxy(
ITypeLib* This,
TLIBATTR *pTLibAttr);
HRESULT __attribute__((__stdcall__)) ITypeLib_ReleaseTLibAttr_Stub(
ITypeLib* This);
typedef ITypeLib2 *LPTYPELIB2;
extern const GUID IID_ITypeLib2;
typedef struct ITypeLib2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITypeLib2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITypeLib2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITypeLib2 *This);
UINT (__attribute__((__stdcall__)) *GetTypeInfoCount)(
ITypeLib2 *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(
ITypeLib2 *This,
UINT index,
ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoType)(
ITypeLib2 *This,
UINT index,
TYPEKIND *pTKind);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoOfGuid)(
ITypeLib2 *This,
const GUID *const guid,
ITypeInfo **ppTinfo);
HRESULT (__attribute__((__stdcall__)) *GetLibAttr)(
ITypeLib2 *This,
TLIBATTR **ppTLibAttr);
HRESULT (__attribute__((__stdcall__)) *GetTypeComp)(
ITypeLib2 *This,
ITypeComp **ppTComp);
HRESULT (__attribute__((__stdcall__)) *GetDocumentation)(
ITypeLib2 *This,
INT index,
BSTR *pBstrName,
BSTR *pBstrDocString,
DWORD *pdwHelpContext,
BSTR *pBstrHelpFile);
HRESULT (__attribute__((__stdcall__)) *IsName)(
ITypeLib2 *This,
LPOLESTR szNameBuf,
ULONG lHashVal,
WINBOOL *pfName);
HRESULT (__attribute__((__stdcall__)) *FindName)(
ITypeLib2 *This,
LPOLESTR szNameBuf,
ULONG lHashVal,
ITypeInfo **ppTInfo,
MEMBERID *rgMemId,
USHORT *pcFound);
void (__attribute__((__stdcall__)) *ReleaseTLibAttr)(
ITypeLib2 *This,
TLIBATTR *pTLibAttr);
HRESULT (__attribute__((__stdcall__)) *GetCustData)(
ITypeLib2 *This,
const GUID *const guid,
VARIANT *pVarVal);
HRESULT (__attribute__((__stdcall__)) *GetLibStatistics)(
ITypeLib2 *This,
ULONG *pcUniqueNames,
ULONG *pcchUniqueNames);
HRESULT (__attribute__((__stdcall__)) *GetDocumentation2)(
ITypeLib2 *This,
INT index,
LCID lcid,
BSTR *pbstrHelpString,
DWORD *pdwHelpStringContext,
BSTR *pbstrHelpStringDll);
HRESULT (__attribute__((__stdcall__)) *GetAllCustData)(
ITypeLib2 *This,
CUSTDATA *pCustData);
} ITypeLib2Vtbl;
struct ITypeLib2 {
ITypeLib2Vtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) ITypeLib2_RemoteGetLibStatistics_Proxy(
ITypeLib2* This,
ULONG *pcUniqueNames,
ULONG *pcchUniqueNames);
void __attribute__((__stdcall__)) ITypeLib2_RemoteGetLibStatistics_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeLib2_RemoteGetDocumentation2_Proxy(
ITypeLib2* This,
INT index,
LCID lcid,
DWORD refPtrFlags,
BSTR *pbstrHelpString,
DWORD *pdwHelpStringContext,
BSTR *pbstrHelpStringDll);
void __attribute__((__stdcall__)) ITypeLib2_RemoteGetDocumentation2_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) ITypeLib2_GetLibStatistics_Proxy(
ITypeLib2* This,
ULONG *pcUniqueNames,
ULONG *pcchUniqueNames);
HRESULT __attribute__((__stdcall__)) ITypeLib2_GetLibStatistics_Stub(
ITypeLib2* This,
ULONG *pcUniqueNames,
ULONG *pcchUniqueNames);
HRESULT __attribute__((__stdcall__)) ITypeLib2_GetDocumentation2_Proxy(
ITypeLib2* This,
INT index,
LCID lcid,
BSTR *pbstrHelpString,
DWORD *pdwHelpStringContext,
BSTR *pbstrHelpStringDll);
HRESULT __attribute__((__stdcall__)) ITypeLib2_GetDocumentation2_Stub(
ITypeLib2* This,
INT index,
LCID lcid,
DWORD refPtrFlags,
BSTR *pbstrHelpString,
DWORD *pdwHelpStringContext,
BSTR *pbstrHelpStringDll);
typedef ITypeChangeEvents *LPTYPECHANGEEVENTS;
typedef enum tagCHANGEKIND {
CHANGEKIND_ADDMEMBER = 0,
CHANGEKIND_DELETEMEMBER = 1,
CHANGEKIND_SETNAMES = 2,
CHANGEKIND_SETDOCUMENTATION = 3,
CHANGEKIND_GENERAL = 4,
CHANGEKIND_INVALIDATE = 5,
CHANGEKIND_CHANGEFAILED = 6,
CHANGEKIND_MAX = 7
} CHANGEKIND;
extern const GUID IID_ITypeChangeEvents;
typedef struct ITypeChangeEventsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITypeChangeEvents *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITypeChangeEvents *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITypeChangeEvents *This);
HRESULT (__attribute__((__stdcall__)) *RequestTypeChange)(
ITypeChangeEvents *This,
CHANGEKIND changeKind,
ITypeInfo *pTInfoBefore,
LPOLESTR pStrName,
INT *pfCancel);
HRESULT (__attribute__((__stdcall__)) *AfterTypeChange)(
ITypeChangeEvents *This,
CHANGEKIND changeKind,
ITypeInfo *pTInfoAfter,
LPOLESTR pStrName);
} ITypeChangeEventsVtbl;
struct ITypeChangeEvents {
ITypeChangeEventsVtbl* lpVtbl;
};
typedef IErrorInfo *LPERRORINFO;
extern const GUID IID_IErrorInfo;
typedef struct IErrorInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IErrorInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IErrorInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IErrorInfo *This);
HRESULT (__attribute__((__stdcall__)) *GetGUID)(
IErrorInfo *This,
GUID *pGUID);
HRESULT (__attribute__((__stdcall__)) *GetSource)(
IErrorInfo *This,
BSTR *pBstrSource);
HRESULT (__attribute__((__stdcall__)) *GetDescription)(
IErrorInfo *This,
BSTR *pBstrDescription);
HRESULT (__attribute__((__stdcall__)) *GetHelpFile)(
IErrorInfo *This,
BSTR *pBstrHelpFile);
HRESULT (__attribute__((__stdcall__)) *GetHelpContext)(
IErrorInfo *This,
DWORD *pdwHelpContext);
} IErrorInfoVtbl;
struct IErrorInfo {
IErrorInfoVtbl* lpVtbl;
};
typedef ICreateErrorInfo *LPCREATEERRORINFO;
extern const GUID IID_ICreateErrorInfo;
typedef struct ICreateErrorInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICreateErrorInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICreateErrorInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICreateErrorInfo *This);
HRESULT (__attribute__((__stdcall__)) *SetGUID)(
ICreateErrorInfo *This,
const GUID *const rguid);
HRESULT (__attribute__((__stdcall__)) *SetSource)(
ICreateErrorInfo *This,
LPOLESTR szSource);
HRESULT (__attribute__((__stdcall__)) *SetDescription)(
ICreateErrorInfo *This,
LPOLESTR szDescription);
HRESULT (__attribute__((__stdcall__)) *SetHelpFile)(
ICreateErrorInfo *This,
LPOLESTR szHelpFile);
HRESULT (__attribute__((__stdcall__)) *SetHelpContext)(
ICreateErrorInfo *This,
DWORD dwHelpContext);
} ICreateErrorInfoVtbl;
struct ICreateErrorInfo {
ICreateErrorInfoVtbl* lpVtbl;
};
typedef ISupportErrorInfo *LPSUPPORTERRORINFO;
extern const GUID IID_ISupportErrorInfo;
typedef struct ISupportErrorInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISupportErrorInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISupportErrorInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISupportErrorInfo *This);
HRESULT (__attribute__((__stdcall__)) *InterfaceSupportsErrorInfo)(
ISupportErrorInfo *This,
const IID *const riid);
} ISupportErrorInfoVtbl;
struct ISupportErrorInfo {
ISupportErrorInfoVtbl* lpVtbl;
};
extern const GUID IID_ITypeFactory;
typedef struct ITypeFactoryVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITypeFactory *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITypeFactory *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITypeFactory *This);
HRESULT (__attribute__((__stdcall__)) *CreateFromTypeInfo)(
ITypeFactory *This,
ITypeInfo *pTypeInfo,
const IID *const riid,
IUnknown **ppv);
} ITypeFactoryVtbl;
struct ITypeFactory {
ITypeFactoryVtbl* lpVtbl;
};
extern const GUID IID_ITypeMarshal;
typedef struct ITypeMarshalVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ITypeMarshal *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ITypeMarshal *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ITypeMarshal *This);
HRESULT (__attribute__((__stdcall__)) *Size)(
ITypeMarshal *This,
PVOID pvType,
DWORD dwDestContext,
PVOID pvDestContext,
ULONG *pSize);
HRESULT (__attribute__((__stdcall__)) *Marshal)(
ITypeMarshal *This,
PVOID pvType,
DWORD dwDestContext,
PVOID pvDestContext,
ULONG cbBufferLength,
BYTE *pBuffer,
ULONG *pcbWritten);
HRESULT (__attribute__((__stdcall__)) *Unmarshal)(
ITypeMarshal *This,
PVOID pvType,
DWORD dwFlags,
ULONG cbBufferLength,
BYTE *pBuffer,
ULONG *pcbRead);
HRESULT (__attribute__((__stdcall__)) *Free)(
ITypeMarshal *This,
PVOID pvType);
} ITypeMarshalVtbl;
struct ITypeMarshal {
ITypeMarshalVtbl* lpVtbl;
};
typedef IRecordInfo *LPRECORDINFO;
extern const GUID IID_IRecordInfo;
typedef struct IRecordInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IRecordInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IRecordInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IRecordInfo *This);
HRESULT (__attribute__((__stdcall__)) *RecordInit)(
IRecordInfo *This,
PVOID pvNew);
HRESULT (__attribute__((__stdcall__)) *RecordClear)(
IRecordInfo *This,
PVOID pvExisting);
HRESULT (__attribute__((__stdcall__)) *RecordCopy)(
IRecordInfo *This,
PVOID pvExisting,
PVOID pvNew);
HRESULT (__attribute__((__stdcall__)) *GetGuid)(
IRecordInfo *This,
GUID *pguid);
HRESULT (__attribute__((__stdcall__)) *GetName)(
IRecordInfo *This,
BSTR *pbstrName);
HRESULT (__attribute__((__stdcall__)) *GetSize)(
IRecordInfo *This,
ULONG *pcbSize);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(
IRecordInfo *This,
ITypeInfo **ppTypeInfo);
HRESULT (__attribute__((__stdcall__)) *GetField)(
IRecordInfo *This,
PVOID pvData,
LPCOLESTR szFieldName,
VARIANT *pvarField);
HRESULT (__attribute__((__stdcall__)) *GetFieldNoCopy)(
IRecordInfo *This,
PVOID pvData,
LPCOLESTR szFieldName,
VARIANT *pvarField,
PVOID *ppvDataCArray);
HRESULT (__attribute__((__stdcall__)) *PutField)(
IRecordInfo *This,
ULONG wFlags,
PVOID pvData,
LPCOLESTR szFieldName,
VARIANT *pvarField);
HRESULT (__attribute__((__stdcall__)) *PutFieldNoCopy)(
IRecordInfo *This,
ULONG wFlags,
PVOID pvData,
LPCOLESTR szFieldName,
VARIANT *pvarField);
HRESULT (__attribute__((__stdcall__)) *GetFieldNames)(
IRecordInfo *This,
ULONG *pcNames,
BSTR *rgBstrNames);
WINBOOL (__attribute__((__stdcall__)) *IsMatchingType)(
IRecordInfo *This,
IRecordInfo *pRecordInfo);
PVOID (__attribute__((__stdcall__)) *RecordCreate)(
IRecordInfo *This);
HRESULT (__attribute__((__stdcall__)) *RecordCreateCopy)(
IRecordInfo *This,
PVOID pvSource,
PVOID *ppvDest);
HRESULT (__attribute__((__stdcall__)) *RecordDestroy)(
IRecordInfo *This,
PVOID pvRecord);
} IRecordInfoVtbl;
struct IRecordInfo {
IRecordInfoVtbl* lpVtbl;
};
typedef IErrorLog *LPERRORLOG;
extern const GUID IID_IErrorLog;
typedef struct IErrorLogVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IErrorLog *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IErrorLog *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IErrorLog *This);
HRESULT (__attribute__((__stdcall__)) *AddError)(
IErrorLog *This,
LPCOLESTR pszPropName,
EXCEPINFO *pExcepInfo);
} IErrorLogVtbl;
struct IErrorLog {
IErrorLogVtbl* lpVtbl;
};
typedef IPropertyBag *LPPROPERTYBAG;
extern const GUID IID_IPropertyBag;
typedef struct IPropertyBagVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPropertyBag *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPropertyBag *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPropertyBag *This);
HRESULT (__attribute__((__stdcall__)) *Read)(
IPropertyBag *This,
LPCOLESTR pszPropName,
VARIANT *pVar,
IErrorLog *pErrorLog);
HRESULT (__attribute__((__stdcall__)) *Write)(
IPropertyBag *This,
LPCOLESTR pszPropName,
VARIANT *pVar);
} IPropertyBagVtbl;
struct IPropertyBag {
IPropertyBagVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IPropertyBag_RemoteRead_Proxy(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT *pVar,
IErrorLog *pErrorLog,
DWORD varType,
IUnknown *pUnkObj);
void __attribute__((__stdcall__)) IPropertyBag_RemoteRead_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPropertyBag_Read_Proxy(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT *pVar,
IErrorLog *pErrorLog);
HRESULT __attribute__((__stdcall__)) IPropertyBag_Read_Stub(
IPropertyBag* This,
LPCOLESTR pszPropName,
VARIANT *pVar,
IErrorLog *pErrorLog,
DWORD varType,
IUnknown *pUnkObj);
ULONG __attribute__((__stdcall__)) VARIANT_UserSize (ULONG *, ULONG, VARIANT *);
unsigned char * __attribute__((__stdcall__)) VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *);
unsigned char * __attribute__((__stdcall__)) VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
void __attribute__((__stdcall__)) VARIANT_UserFree (ULONG *, VARIANT *);
ULONG __attribute__((__stdcall__)) BSTR_UserSize (ULONG *, ULONG, BSTR *);
unsigned char * __attribute__((__stdcall__)) BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
unsigned char * __attribute__((__stdcall__)) BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
void __attribute__((__stdcall__)) BSTR_UserFree (ULONG *, BSTR *);
ULONG __attribute__((__stdcall__)) CLEANLOCALSTORAGE_UserSize (ULONG *, ULONG, CLEANLOCALSTORAGE *);
unsigned char * __attribute__((__stdcall__)) CLEANLOCALSTORAGE_UserMarshal (ULONG *, unsigned char *, CLEANLOCALSTORAGE *);
unsigned char * __attribute__((__stdcall__)) CLEANLOCALSTORAGE_UserUnmarshal(ULONG *, unsigned char *, CLEANLOCALSTORAGE *);
void __attribute__((__stdcall__)) CLEANLOCALSTORAGE_UserFree (ULONG *, CLEANLOCALSTORAGE *);
typedef struct IXMLDOMImplementation IXMLDOMImplementation;
typedef struct IXMLDOMNode IXMLDOMNode;
typedef struct IXMLDOMDocumentFragment IXMLDOMDocumentFragment;
typedef struct IXMLDOMDocument IXMLDOMDocument;
typedef struct IXMLDOMNodeList IXMLDOMNodeList;
typedef struct IXMLDOMNamedNodeMap IXMLDOMNamedNodeMap;
typedef struct IXMLDOMCharacterData IXMLDOMCharacterData;
typedef struct IXMLDOMAttribute IXMLDOMAttribute;
typedef struct IXMLDOMElement IXMLDOMElement;
typedef struct IXMLDOMText IXMLDOMText;
typedef struct IXMLDOMComment IXMLDOMComment;
typedef struct IXMLDOMProcessingInstruction IXMLDOMProcessingInstruction;
typedef struct IXMLDOMCDATASection IXMLDOMCDATASection;
typedef struct IXMLDOMDocumentType IXMLDOMDocumentType;
typedef struct IXMLDOMNotation IXMLDOMNotation;
typedef struct IXMLDOMEntity IXMLDOMEntity;
typedef struct IXMLDOMEntityReference IXMLDOMEntityReference;
typedef struct IXMLDOMParseError IXMLDOMParseError;
typedef struct IXTLRuntime IXTLRuntime;
typedef struct XMLDOMDocumentEvents XMLDOMDocumentEvents;
typedef struct DOMDocument DOMDocument;
typedef struct DOMFreeThreadedDocument DOMFreeThreadedDocument;
typedef struct IXMLHttpRequest IXMLHttpRequest;
typedef struct XMLHTTPRequest XMLHTTPRequest;
typedef struct IXMLDSOControl IXMLDSOControl;
typedef struct XMLDSOControl XMLDSOControl;
typedef struct IXMLElementCollection IXMLElementCollection;
typedef struct IXMLDocument IXMLDocument;
typedef struct IXMLDocument2 IXMLDocument2;
typedef struct IXMLElement IXMLElement;
typedef struct IXMLElement2 IXMLElement2;
typedef struct IXMLAttribute IXMLAttribute;
typedef struct IXMLError IXMLError;
typedef struct XMLDocument XMLDocument;
typedef struct _xml_error {
unsigned int _nLine;
BSTR _pchBuf;
unsigned int _cchBuf;
unsigned int _ich;
BSTR _pszFound;
BSTR _pszExpected;
DWORD _reserved1;
DWORD _reserved2;
} XML_ERROR;
extern RPC_IF_HANDLE __MIDL_itf_msxml_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_msxml_0000_v0_0_s_ifspec;
typedef enum tagDOMNodeType {
NODE_INVALID = 0,NODE_ELEMENT,NODE_ATTRIBUTE,NODE_TEXT,NODE_CDATA_SECTION,
NODE_ENTITY_REFERENCE,NODE_ENTITY,NODE_PROCESSING_INSTRUCTION,NODE_COMMENT,
NODE_DOCUMENT,NODE_DOCUMENT_TYPE,NODE_DOCUMENT_FRAGMENT,NODE_NOTATION
} DOMNodeType;
typedef enum tagXMLEMEM_TYPE {
XMLELEMTYPE_ELEMENT = 0,XMLELEMTYPE_TEXT,XMLELEMTYPE_COMMENT,XMLELEMTYPE_DOCUMENT,
XMLELEMTYPE_DTD,XMLELEMTYPE_PI,XMLELEMTYPE_OTHER
} XMLELEM_TYPE;
extern const IID LIBID_MSXML;
extern const IID IID_IXMLDOMImplementation;
typedef struct IXMLDOMImplementationVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMImplementation *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMImplementation *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMImplementation *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMImplementation *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMImplementation *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMImplementation *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMImplementation *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *hasFeature)(IXMLDOMImplementation *This,BSTR feature,BSTR version,VARIANT_BOOL *hasFeature);
} IXMLDOMImplementationVtbl;
struct IXMLDOMImplementation {
struct IXMLDOMImplementationVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMImplementation_hasFeature_Proxy(IXMLDOMImplementation *This,BSTR feature,BSTR version,VARIANT_BOOL *hasFeature);
void __attribute__((__stdcall__)) IXMLDOMImplementation_hasFeature_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMNode;
typedef struct IXMLDOMNodeVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMNode *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMNode *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMNode *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMNode *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMNode *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMNode *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMNode *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMNode *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMNode *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMNode *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMNode *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMNode *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMNode *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMNode *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMNode *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMNode *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMNode *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMNode *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMNode *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMNode *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMNode *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMNode *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMNode *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMNode *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMNode *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMNode *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMNode *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMNode *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMNode *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMNode *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMNode *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMNode *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMNode *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMNode *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMNode *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMNode *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMNode *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMNode *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMNode *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMNode *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMNode *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMNode *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMNode *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
} IXMLDOMNodeVtbl;
struct IXMLDOMNode {
struct IXMLDOMNodeVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_nodeName_Proxy(IXMLDOMNode *This,BSTR *name);
void __attribute__((__stdcall__)) IXMLDOMNode_get_nodeName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_nodeValue_Proxy(IXMLDOMNode *This,VARIANT *value);
void __attribute__((__stdcall__)) IXMLDOMNode_get_nodeValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_put_nodeValue_Proxy(IXMLDOMNode *This,VARIANT value);
void __attribute__((__stdcall__)) IXMLDOMNode_put_nodeValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_nodeType_Proxy(IXMLDOMNode *This,DOMNodeType *type);
void __attribute__((__stdcall__)) IXMLDOMNode_get_nodeType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_parentNode_Proxy(IXMLDOMNode *This,IXMLDOMNode **parent);
void __attribute__((__stdcall__)) IXMLDOMNode_get_parentNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_childNodes_Proxy(IXMLDOMNode *This,IXMLDOMNodeList **childList);
void __attribute__((__stdcall__)) IXMLDOMNode_get_childNodes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_firstChild_Proxy(IXMLDOMNode *This,IXMLDOMNode **firstChild);
void __attribute__((__stdcall__)) IXMLDOMNode_get_firstChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_lastChild_Proxy(IXMLDOMNode *This,IXMLDOMNode **lastChild);
void __attribute__((__stdcall__)) IXMLDOMNode_get_lastChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_previousSibling_Proxy(IXMLDOMNode *This,IXMLDOMNode **previousSibling);
void __attribute__((__stdcall__)) IXMLDOMNode_get_previousSibling_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_nextSibling_Proxy(IXMLDOMNode *This,IXMLDOMNode **nextSibling);
void __attribute__((__stdcall__)) IXMLDOMNode_get_nextSibling_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_attributes_Proxy(IXMLDOMNode *This,IXMLDOMNamedNodeMap **attributeMap);
void __attribute__((__stdcall__)) IXMLDOMNode_get_attributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_insertBefore_Proxy(IXMLDOMNode *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
void __attribute__((__stdcall__)) IXMLDOMNode_insertBefore_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_replaceChild_Proxy(IXMLDOMNode *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
void __attribute__((__stdcall__)) IXMLDOMNode_replaceChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_removeChild_Proxy(IXMLDOMNode *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
void __attribute__((__stdcall__)) IXMLDOMNode_removeChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_appendChild_Proxy(IXMLDOMNode *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
void __attribute__((__stdcall__)) IXMLDOMNode_appendChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_hasChildNodes_Proxy(IXMLDOMNode *This,VARIANT_BOOL *hasChild);
void __attribute__((__stdcall__)) IXMLDOMNode_hasChildNodes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_ownerDocument_Proxy(IXMLDOMNode *This,IXMLDOMDocument **DOMDocument);
void __attribute__((__stdcall__)) IXMLDOMNode_get_ownerDocument_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_cloneNode_Proxy(IXMLDOMNode *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
void __attribute__((__stdcall__)) IXMLDOMNode_cloneNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_nodeTypeString_Proxy(IXMLDOMNode *This,BSTR *nodeType);
void __attribute__((__stdcall__)) IXMLDOMNode_get_nodeTypeString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_text_Proxy(IXMLDOMNode *This,BSTR *text);
void __attribute__((__stdcall__)) IXMLDOMNode_get_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_put_text_Proxy(IXMLDOMNode *This,BSTR text);
void __attribute__((__stdcall__)) IXMLDOMNode_put_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_specified_Proxy(IXMLDOMNode *This,VARIANT_BOOL *isSpecified);
void __attribute__((__stdcall__)) IXMLDOMNode_get_specified_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_definition_Proxy(IXMLDOMNode *This,IXMLDOMNode **definitionNode);
void __attribute__((__stdcall__)) IXMLDOMNode_get_definition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_nodeTypedValue_Proxy(IXMLDOMNode *This,VARIANT *typedValue);
void __attribute__((__stdcall__)) IXMLDOMNode_get_nodeTypedValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_put_nodeTypedValue_Proxy(IXMLDOMNode *This,VARIANT typedValue);
void __attribute__((__stdcall__)) IXMLDOMNode_put_nodeTypedValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_dataType_Proxy(IXMLDOMNode *This,VARIANT *dataTypeName);
void __attribute__((__stdcall__)) IXMLDOMNode_get_dataType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_put_dataType_Proxy(IXMLDOMNode *This,BSTR dataTypeName);
void __attribute__((__stdcall__)) IXMLDOMNode_put_dataType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_xml_Proxy(IXMLDOMNode *This,BSTR *xmlString);
void __attribute__((__stdcall__)) IXMLDOMNode_get_xml_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_transformNode_Proxy(IXMLDOMNode *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
void __attribute__((__stdcall__)) IXMLDOMNode_transformNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_selectNodes_Proxy(IXMLDOMNode *This,BSTR queryString,IXMLDOMNodeList **resultList);
void __attribute__((__stdcall__)) IXMLDOMNode_selectNodes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_selectSingleNode_Proxy(IXMLDOMNode *This,BSTR queryString,IXMLDOMNode **resultNode);
void __attribute__((__stdcall__)) IXMLDOMNode_selectSingleNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_parsed_Proxy(IXMLDOMNode *This,VARIANT_BOOL *isParsed);
void __attribute__((__stdcall__)) IXMLDOMNode_get_parsed_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_namespaceURI_Proxy(IXMLDOMNode *This,BSTR *namespaceURI);
void __attribute__((__stdcall__)) IXMLDOMNode_get_namespaceURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_prefix_Proxy(IXMLDOMNode *This,BSTR *prefixString);
void __attribute__((__stdcall__)) IXMLDOMNode_get_prefix_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_get_baseName_Proxy(IXMLDOMNode *This,BSTR *nameString);
void __attribute__((__stdcall__)) IXMLDOMNode_get_baseName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNode_transformNodeToObject_Proxy(IXMLDOMNode *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
void __attribute__((__stdcall__)) IXMLDOMNode_transformNodeToObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMDocumentFragment;
typedef struct IXMLDOMDocumentFragmentVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMDocumentFragment *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMDocumentFragment *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMDocumentFragment *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMDocumentFragment *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMDocumentFragment *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMDocumentFragment *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMDocumentFragment *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMDocumentFragment *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMDocumentFragment *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMDocumentFragment *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMDocumentFragment *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMDocumentFragment *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMDocumentFragment *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMDocumentFragment *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMDocumentFragment *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMDocumentFragment *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMDocumentFragment *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMDocumentFragment *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMDocumentFragment *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMDocumentFragment *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMDocumentFragment *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMDocumentFragment *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMDocumentFragment *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMDocumentFragment *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMDocumentFragment *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMDocumentFragment *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMDocumentFragment *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMDocumentFragment *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMDocumentFragment *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMDocumentFragment *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMDocumentFragment *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMDocumentFragment *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMDocumentFragment *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMDocumentFragment *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMDocumentFragment *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMDocumentFragment *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMDocumentFragment *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMDocumentFragment *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
} IXMLDOMDocumentFragmentVtbl;
struct IXMLDOMDocumentFragment {
struct IXMLDOMDocumentFragmentVtbl *lpVtbl;
};
extern const IID IID_IXMLDOMDocument;
typedef struct IXMLDOMDocumentVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMDocument *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMDocument *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMDocument *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMDocument *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMDocument *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMDocument *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMDocument *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMDocument *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMDocument *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMDocument *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMDocument *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMDocument *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMDocument *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMDocument *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMDocument *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMDocument *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMDocument *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMDocument *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMDocument *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMDocument *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMDocument *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMDocument *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMDocument *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMDocument *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMDocument *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMDocument *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMDocument *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMDocument *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMDocument *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMDocument *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMDocument *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMDocument *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMDocument *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMDocument *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMDocument *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMDocument *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMDocument *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMDocument *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMDocument *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMDocument *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMDocument *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMDocument *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMDocument *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_doctype)(IXMLDOMDocument *This,IXMLDOMDocumentType **documentType);
HRESULT (__attribute__((__stdcall__)) *get_implementation)(IXMLDOMDocument *This,IXMLDOMImplementation **impl);
HRESULT (__attribute__((__stdcall__)) *get_documentElement)(IXMLDOMDocument *This,IXMLDOMElement **DOMElement);
HRESULT (__attribute__((__stdcall__)) *putref_documentElement)(IXMLDOMDocument *This,IXMLDOMElement *DOMElement);
HRESULT (__attribute__((__stdcall__)) *createElement)(IXMLDOMDocument *This,BSTR tagName,IXMLDOMElement **element);
HRESULT (__attribute__((__stdcall__)) *createDocumentFragment)(IXMLDOMDocument *This,IXMLDOMDocumentFragment **docFrag);
HRESULT (__attribute__((__stdcall__)) *createTextNode)(IXMLDOMDocument *This,BSTR data,IXMLDOMText **text);
HRESULT (__attribute__((__stdcall__)) *createComment)(IXMLDOMDocument *This,BSTR data,IXMLDOMComment **comment);
HRESULT (__attribute__((__stdcall__)) *createCDATASection)(IXMLDOMDocument *This,BSTR data,IXMLDOMCDATASection **cdata);
HRESULT (__attribute__((__stdcall__)) *createProcessingInstruction)(IXMLDOMDocument *This,BSTR target,BSTR data,IXMLDOMProcessingInstruction **pi);
HRESULT (__attribute__((__stdcall__)) *createAttribute)(IXMLDOMDocument *This,BSTR name,IXMLDOMAttribute **attribute);
HRESULT (__attribute__((__stdcall__)) *createEntityReference)(IXMLDOMDocument *This,BSTR name,IXMLDOMEntityReference **entityRef);
HRESULT (__attribute__((__stdcall__)) *getElementsByTagName)(IXMLDOMDocument *This,BSTR tagName,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *createNode)(IXMLDOMDocument *This,VARIANT Type,BSTR name,BSTR namespaceURI,IXMLDOMNode **node);
HRESULT (__attribute__((__stdcall__)) *nodeFromID)(IXMLDOMDocument *This,BSTR idString,IXMLDOMNode **node);
HRESULT (__attribute__((__stdcall__)) *load)(IXMLDOMDocument *This,VARIANT xmlSource,VARIANT_BOOL *isSuccessful);
HRESULT (__attribute__((__stdcall__)) *get_readyState)(IXMLDOMDocument *This,LONG *value);
HRESULT (__attribute__((__stdcall__)) *get_parseError)(IXMLDOMDocument *This,IXMLDOMParseError **errorObj);
HRESULT (__attribute__((__stdcall__)) *get_url)(IXMLDOMDocument *This,BSTR *urlString);
HRESULT (__attribute__((__stdcall__)) *get_async)(IXMLDOMDocument *This,VARIANT_BOOL *isAsync);
HRESULT (__attribute__((__stdcall__)) *put_async)(IXMLDOMDocument *This,VARIANT_BOOL isAsync);
HRESULT (__attribute__((__stdcall__)) *abort)(IXMLDOMDocument *This);
HRESULT (__attribute__((__stdcall__)) *loadXML)(IXMLDOMDocument *This,BSTR bstrXML,VARIANT_BOOL *isSuccessful);
HRESULT (__attribute__((__stdcall__)) *save)(IXMLDOMDocument *This,VARIANT destination);
HRESULT (__attribute__((__stdcall__)) *get_validateOnParse)(IXMLDOMDocument *This,VARIANT_BOOL *isValidating);
HRESULT (__attribute__((__stdcall__)) *put_validateOnParse)(IXMLDOMDocument *This,VARIANT_BOOL isValidating);
HRESULT (__attribute__((__stdcall__)) *get_resolveExternals)(IXMLDOMDocument *This,VARIANT_BOOL *isResolving);
HRESULT (__attribute__((__stdcall__)) *put_resolveExternals)(IXMLDOMDocument *This,VARIANT_BOOL isResolving);
HRESULT (__attribute__((__stdcall__)) *get_preserveWhiteSpace)(IXMLDOMDocument *This,VARIANT_BOOL *isPreserving);
HRESULT (__attribute__((__stdcall__)) *put_preserveWhiteSpace)(IXMLDOMDocument *This,VARIANT_BOOL isPreserving);
HRESULT (__attribute__((__stdcall__)) *put_onreadystatechange)(IXMLDOMDocument *This,VARIANT readystatechangeSink);
HRESULT (__attribute__((__stdcall__)) *put_ondataavailable)(IXMLDOMDocument *This,VARIANT ondataavailableSink);
HRESULT (__attribute__((__stdcall__)) *put_ontransformnode)(IXMLDOMDocument *This,VARIANT ontransformnodeSink);
} IXMLDOMDocumentVtbl;
struct IXMLDOMDocument {
struct IXMLDOMDocumentVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_doctype_Proxy(IXMLDOMDocument *This,IXMLDOMDocumentType **documentType);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_doctype_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_implementation_Proxy(IXMLDOMDocument *This,IXMLDOMImplementation **impl);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_implementation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_documentElement_Proxy(IXMLDOMDocument *This,IXMLDOMElement **DOMElement);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_documentElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_putref_documentElement_Proxy(IXMLDOMDocument *This,IXMLDOMElement *DOMElement);
void __attribute__((__stdcall__)) IXMLDOMDocument_putref_documentElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createElement_Proxy(IXMLDOMDocument *This,BSTR tagName,IXMLDOMElement **element);
void __attribute__((__stdcall__)) IXMLDOMDocument_createElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createDocumentFragment_Proxy(IXMLDOMDocument *This,IXMLDOMDocumentFragment **docFrag);
void __attribute__((__stdcall__)) IXMLDOMDocument_createDocumentFragment_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createTextNode_Proxy(IXMLDOMDocument *This,BSTR data,IXMLDOMText **text);
void __attribute__((__stdcall__)) IXMLDOMDocument_createTextNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createComment_Proxy(IXMLDOMDocument *This,BSTR data,IXMLDOMComment **comment);
void __attribute__((__stdcall__)) IXMLDOMDocument_createComment_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createCDATASection_Proxy(IXMLDOMDocument *This,BSTR data,IXMLDOMCDATASection **cdata);
void __attribute__((__stdcall__)) IXMLDOMDocument_createCDATASection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createProcessingInstruction_Proxy(IXMLDOMDocument *This,BSTR target,BSTR data,IXMLDOMProcessingInstruction **pi);
void __attribute__((__stdcall__)) IXMLDOMDocument_createProcessingInstruction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createAttribute_Proxy(IXMLDOMDocument *This,BSTR name,IXMLDOMAttribute **attribute);
void __attribute__((__stdcall__)) IXMLDOMDocument_createAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createEntityReference_Proxy(IXMLDOMDocument *This,BSTR name,IXMLDOMEntityReference **entityRef);
void __attribute__((__stdcall__)) IXMLDOMDocument_createEntityReference_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_getElementsByTagName_Proxy(IXMLDOMDocument *This,BSTR tagName,IXMLDOMNodeList **resultList);
void __attribute__((__stdcall__)) IXMLDOMDocument_getElementsByTagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_createNode_Proxy(IXMLDOMDocument *This,VARIANT Type,BSTR name,BSTR namespaceURI,IXMLDOMNode **node);
void __attribute__((__stdcall__)) IXMLDOMDocument_createNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_nodeFromID_Proxy(IXMLDOMDocument *This,BSTR idString,IXMLDOMNode **node);
void __attribute__((__stdcall__)) IXMLDOMDocument_nodeFromID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_load_Proxy(IXMLDOMDocument *This,VARIANT xmlSource,VARIANT_BOOL *isSuccessful);
void __attribute__((__stdcall__)) IXMLDOMDocument_load_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_readyState_Proxy(IXMLDOMDocument *This,LONG *value);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_parseError_Proxy(IXMLDOMDocument *This,IXMLDOMParseError **errorObj);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_parseError_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_url_Proxy(IXMLDOMDocument *This,BSTR *urlString);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_url_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_async_Proxy(IXMLDOMDocument *This,VARIANT_BOOL *isAsync);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_async_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_put_async_Proxy(IXMLDOMDocument *This,VARIANT_BOOL isAsync);
void __attribute__((__stdcall__)) IXMLDOMDocument_put_async_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_abort_Proxy(IXMLDOMDocument *This);
void __attribute__((__stdcall__)) IXMLDOMDocument_abort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_loadXML_Proxy(IXMLDOMDocument *This,BSTR bstrXML,VARIANT_BOOL *isSuccessful);
void __attribute__((__stdcall__)) IXMLDOMDocument_loadXML_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_save_Proxy(IXMLDOMDocument *This,VARIANT destination);
void __attribute__((__stdcall__)) IXMLDOMDocument_save_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_validateOnParse_Proxy(IXMLDOMDocument *This,VARIANT_BOOL *isValidating);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_validateOnParse_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_put_validateOnParse_Proxy(IXMLDOMDocument *This,VARIANT_BOOL isValidating);
void __attribute__((__stdcall__)) IXMLDOMDocument_put_validateOnParse_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_resolveExternals_Proxy(IXMLDOMDocument *This,VARIANT_BOOL *isResolving);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_resolveExternals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_put_resolveExternals_Proxy(IXMLDOMDocument *This,VARIANT_BOOL isResolving);
void __attribute__((__stdcall__)) IXMLDOMDocument_put_resolveExternals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_get_preserveWhiteSpace_Proxy(IXMLDOMDocument *This,VARIANT_BOOL *isPreserving);
void __attribute__((__stdcall__)) IXMLDOMDocument_get_preserveWhiteSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_put_preserveWhiteSpace_Proxy(IXMLDOMDocument *This,VARIANT_BOOL isPreserving);
void __attribute__((__stdcall__)) IXMLDOMDocument_put_preserveWhiteSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_put_onreadystatechange_Proxy(IXMLDOMDocument *This,VARIANT readystatechangeSink);
void __attribute__((__stdcall__)) IXMLDOMDocument_put_onreadystatechange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_put_ondataavailable_Proxy(IXMLDOMDocument *This,VARIANT ondataavailableSink);
void __attribute__((__stdcall__)) IXMLDOMDocument_put_ondataavailable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocument_put_ontransformnode_Proxy(IXMLDOMDocument *This,VARIANT ontransformnodeSink);
void __attribute__((__stdcall__)) IXMLDOMDocument_put_ontransformnode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMNodeList;
typedef struct IXMLDOMNodeListVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMNodeList *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMNodeList *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMNodeList *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMNodeList *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMNodeList *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMNodeList *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMNodeList *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_item)(IXMLDOMNodeList *This,LONG index,IXMLDOMNode **listItem);
HRESULT (__attribute__((__stdcall__)) *get_length)(IXMLDOMNodeList *This,LONG *listLength);
HRESULT (__attribute__((__stdcall__)) *nextNode)(IXMLDOMNodeList *This,IXMLDOMNode **nextItem);
HRESULT (__attribute__((__stdcall__)) *reset)(IXMLDOMNodeList *This);
HRESULT (__attribute__((__stdcall__)) *get__newEnum)(IXMLDOMNodeList *This,IUnknown **ppUnk);
} IXMLDOMNodeListVtbl;
struct IXMLDOMNodeList {
struct IXMLDOMNodeListVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMNodeList_get_item_Proxy(IXMLDOMNodeList *This,LONG index,IXMLDOMNode **listItem);
void __attribute__((__stdcall__)) IXMLDOMNodeList_get_item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNodeList_get_length_Proxy(IXMLDOMNodeList *This,LONG *listLength);
void __attribute__((__stdcall__)) IXMLDOMNodeList_get_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNodeList_nextNode_Proxy(IXMLDOMNodeList *This,IXMLDOMNode **nextItem);
void __attribute__((__stdcall__)) IXMLDOMNodeList_nextNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNodeList_reset_Proxy(IXMLDOMNodeList *This);
void __attribute__((__stdcall__)) IXMLDOMNodeList_reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNodeList_get__newEnum_Proxy(IXMLDOMNodeList *This,IUnknown **ppUnk);
void __attribute__((__stdcall__)) IXMLDOMNodeList_get__newEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMNamedNodeMap;
typedef struct IXMLDOMNamedNodeMapVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMNamedNodeMap *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMNamedNodeMap *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMNamedNodeMap *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMNamedNodeMap *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMNamedNodeMap *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMNamedNodeMap *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMNamedNodeMap *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *getNamedItem)(IXMLDOMNamedNodeMap *This,BSTR name,IXMLDOMNode **namedItem);
HRESULT (__attribute__((__stdcall__)) *setNamedItem)(IXMLDOMNamedNodeMap *This,IXMLDOMNode *newItem,IXMLDOMNode **nameItem);
HRESULT (__attribute__((__stdcall__)) *removeNamedItem)(IXMLDOMNamedNodeMap *This,BSTR name,IXMLDOMNode **namedItem);
HRESULT (__attribute__((__stdcall__)) *get_item)(IXMLDOMNamedNodeMap *This,LONG index,IXMLDOMNode **listItem);
HRESULT (__attribute__((__stdcall__)) *get_length)(IXMLDOMNamedNodeMap *This,LONG *listLength);
HRESULT (__attribute__((__stdcall__)) *getQualifiedItem)(IXMLDOMNamedNodeMap *This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem);
HRESULT (__attribute__((__stdcall__)) *removeQualifiedItem)(IXMLDOMNamedNodeMap *This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem);
HRESULT (__attribute__((__stdcall__)) *nextNode)(IXMLDOMNamedNodeMap *This,IXMLDOMNode **nextItem);
HRESULT (__attribute__((__stdcall__)) *reset)(IXMLDOMNamedNodeMap *This);
HRESULT (__attribute__((__stdcall__)) *get__newEnum)(IXMLDOMNamedNodeMap *This,IUnknown **ppUnk);
} IXMLDOMNamedNodeMapVtbl;
struct IXMLDOMNamedNodeMap {
struct IXMLDOMNamedNodeMapVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_getNamedItem_Proxy(IXMLDOMNamedNodeMap *This,BSTR name,IXMLDOMNode **namedItem);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_getNamedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_setNamedItem_Proxy(IXMLDOMNamedNodeMap *This,IXMLDOMNode *newItem,IXMLDOMNode **nameItem);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_setNamedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_removeNamedItem_Proxy(IXMLDOMNamedNodeMap *This,BSTR name,IXMLDOMNode **namedItem);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_removeNamedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_get_item_Proxy(IXMLDOMNamedNodeMap *This,LONG index,IXMLDOMNode **listItem);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_get_item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_get_length_Proxy(IXMLDOMNamedNodeMap *This,LONG *listLength);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_get_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_getQualifiedItem_Proxy(IXMLDOMNamedNodeMap *This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_getQualifiedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_removeQualifiedItem_Proxy(IXMLDOMNamedNodeMap *This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_removeQualifiedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_nextNode_Proxy(IXMLDOMNamedNodeMap *This,IXMLDOMNode **nextItem);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_nextNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_reset_Proxy(IXMLDOMNamedNodeMap *This);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_get__newEnum_Proxy(IXMLDOMNamedNodeMap *This,IUnknown **ppUnk);
void __attribute__((__stdcall__)) IXMLDOMNamedNodeMap_get__newEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMCharacterData;
typedef struct IXMLDOMCharacterDataVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMCharacterData *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMCharacterData *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMCharacterData *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMCharacterData *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMCharacterData *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMCharacterData *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMCharacterData *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMCharacterData *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMCharacterData *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMCharacterData *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMCharacterData *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMCharacterData *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMCharacterData *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMCharacterData *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMCharacterData *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMCharacterData *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMCharacterData *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMCharacterData *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMCharacterData *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMCharacterData *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMCharacterData *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMCharacterData *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMCharacterData *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMCharacterData *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMCharacterData *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMCharacterData *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMCharacterData *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMCharacterData *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMCharacterData *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMCharacterData *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMCharacterData *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMCharacterData *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMCharacterData *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMCharacterData *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMCharacterData *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMCharacterData *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMCharacterData *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMCharacterData *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMCharacterData *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMCharacterData *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMCharacterData *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMCharacterData *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMCharacterData *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_data)(IXMLDOMCharacterData *This,BSTR *data);
HRESULT (__attribute__((__stdcall__)) *put_data)(IXMLDOMCharacterData *This,BSTR data);
HRESULT (__attribute__((__stdcall__)) *get_length)(IXMLDOMCharacterData *This,LONG *dataLength);
HRESULT (__attribute__((__stdcall__)) *substringData)(IXMLDOMCharacterData *This,LONG offset,LONG count,BSTR *data);
HRESULT (__attribute__((__stdcall__)) *appendData)(IXMLDOMCharacterData *This,BSTR data);
HRESULT (__attribute__((__stdcall__)) *insertData)(IXMLDOMCharacterData *This,LONG offset,BSTR data);
HRESULT (__attribute__((__stdcall__)) *deleteData)(IXMLDOMCharacterData *This,LONG offset,LONG count);
HRESULT (__attribute__((__stdcall__)) *replaceData)(IXMLDOMCharacterData *This,LONG offset,LONG count,BSTR data);
} IXMLDOMCharacterDataVtbl;
struct IXMLDOMCharacterData {
struct IXMLDOMCharacterDataVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMCharacterData_get_data_Proxy(IXMLDOMCharacterData *This,BSTR *data);
void __attribute__((__stdcall__)) IXMLDOMCharacterData_get_data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMCharacterData_put_data_Proxy(IXMLDOMCharacterData *This,BSTR data);
void __attribute__((__stdcall__)) IXMLDOMCharacterData_put_data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMCharacterData_get_length_Proxy(IXMLDOMCharacterData *This,LONG *dataLength);
void __attribute__((__stdcall__)) IXMLDOMCharacterData_get_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMCharacterData_substringData_Proxy(IXMLDOMCharacterData *This,LONG offset,LONG count,BSTR *data);
void __attribute__((__stdcall__)) IXMLDOMCharacterData_substringData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMCharacterData_appendData_Proxy(IXMLDOMCharacterData *This,BSTR data);
void __attribute__((__stdcall__)) IXMLDOMCharacterData_appendData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMCharacterData_insertData_Proxy(IXMLDOMCharacterData *This,LONG offset,BSTR data);
void __attribute__((__stdcall__)) IXMLDOMCharacterData_insertData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMCharacterData_deleteData_Proxy(IXMLDOMCharacterData *This,LONG offset,LONG count);
void __attribute__((__stdcall__)) IXMLDOMCharacterData_deleteData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMCharacterData_replaceData_Proxy(IXMLDOMCharacterData *This,LONG offset,LONG count,BSTR data);
void __attribute__((__stdcall__)) IXMLDOMCharacterData_replaceData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMAttribute;
typedef struct IXMLDOMAttributeVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMAttribute *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMAttribute *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMAttribute *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMAttribute *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMAttribute *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMAttribute *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMAttribute *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMAttribute *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMAttribute *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMAttribute *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMAttribute *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMAttribute *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMAttribute *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMAttribute *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMAttribute *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMAttribute *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMAttribute *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMAttribute *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMAttribute *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMAttribute *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMAttribute *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMAttribute *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMAttribute *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMAttribute *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMAttribute *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMAttribute *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMAttribute *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMAttribute *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMAttribute *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMAttribute *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMAttribute *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMAttribute *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMAttribute *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMAttribute *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMAttribute *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMAttribute *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMAttribute *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMAttribute *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMAttribute *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMAttribute *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMAttribute *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMAttribute *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMAttribute *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_name)(IXMLDOMAttribute *This,BSTR *attributeName);
HRESULT (__attribute__((__stdcall__)) *get_value)(IXMLDOMAttribute *This,VARIANT *attributeValue);
HRESULT (__attribute__((__stdcall__)) *put_value)(IXMLDOMAttribute *This,VARIANT attributeValue);
} IXMLDOMAttributeVtbl;
struct IXMLDOMAttribute {
struct IXMLDOMAttributeVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMAttribute_get_name_Proxy(IXMLDOMAttribute *This,BSTR *attributeName);
void __attribute__((__stdcall__)) IXMLDOMAttribute_get_name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMAttribute_get_value_Proxy(IXMLDOMAttribute *This,VARIANT *attributeValue);
void __attribute__((__stdcall__)) IXMLDOMAttribute_get_value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMAttribute_put_value_Proxy(IXMLDOMAttribute *This,VARIANT attributeValue);
void __attribute__((__stdcall__)) IXMLDOMAttribute_put_value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMElement;
typedef struct IXMLDOMElementVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMElement *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMElement *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMElement *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMElement *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMElement *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMElement *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMElement *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMElement *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMElement *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMElement *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMElement *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMElement *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMElement *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMElement *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMElement *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMElement *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMElement *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMElement *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMElement *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMElement *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMElement *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMElement *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMElement *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMElement *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMElement *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMElement *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMElement *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMElement *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMElement *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMElement *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMElement *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMElement *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMElement *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMElement *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMElement *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMElement *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMElement *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMElement *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMElement *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMElement *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMElement *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMElement *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMElement *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_tagName)(IXMLDOMElement *This,BSTR *tagName);
HRESULT (__attribute__((__stdcall__)) *getAttribute)(IXMLDOMElement *This,BSTR name,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *setAttribute)(IXMLDOMElement *This,BSTR name,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *removeAttribute)(IXMLDOMElement *This,BSTR name);
HRESULT (__attribute__((__stdcall__)) *getAttributeNode)(IXMLDOMElement *This,BSTR name,IXMLDOMAttribute **attributeNode);
HRESULT (__attribute__((__stdcall__)) *setAttributeNode)(IXMLDOMElement *This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode);
HRESULT (__attribute__((__stdcall__)) *removeAttributeNode)(IXMLDOMElement *This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode);
HRESULT (__attribute__((__stdcall__)) *getElementsByTagName)(IXMLDOMElement *This,BSTR tagName,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *normalize)(IXMLDOMElement *This);
} IXMLDOMElementVtbl;
struct IXMLDOMElement {
struct IXMLDOMElementVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_get_tagName_Proxy(IXMLDOMElement *This,BSTR *tagName);
void __attribute__((__stdcall__)) IXMLDOMElement_get_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_getAttribute_Proxy(IXMLDOMElement *This,BSTR name,VARIANT *value);
void __attribute__((__stdcall__)) IXMLDOMElement_getAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_setAttribute_Proxy(IXMLDOMElement *This,BSTR name,VARIANT value);
void __attribute__((__stdcall__)) IXMLDOMElement_setAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_removeAttribute_Proxy(IXMLDOMElement *This,BSTR name);
void __attribute__((__stdcall__)) IXMLDOMElement_removeAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_getAttributeNode_Proxy(IXMLDOMElement *This,BSTR name,IXMLDOMAttribute **attributeNode);
void __attribute__((__stdcall__)) IXMLDOMElement_getAttributeNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_setAttributeNode_Proxy(IXMLDOMElement *This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode);
void __attribute__((__stdcall__)) IXMLDOMElement_setAttributeNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_removeAttributeNode_Proxy(IXMLDOMElement *This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode);
void __attribute__((__stdcall__)) IXMLDOMElement_removeAttributeNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_getElementsByTagName_Proxy(IXMLDOMElement *This,BSTR tagName,IXMLDOMNodeList **resultList);
void __attribute__((__stdcall__)) IXMLDOMElement_getElementsByTagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMElement_normalize_Proxy(IXMLDOMElement *This);
void __attribute__((__stdcall__)) IXMLDOMElement_normalize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMText;
typedef struct IXMLDOMTextVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMText *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMText *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMText *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMText *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMText *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMText *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMText *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMText *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMText *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMText *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMText *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMText *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMText *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMText *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMText *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMText *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMText *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMText *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMText *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMText *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMText *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMText *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMText *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMText *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMText *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMText *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMText *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMText *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMText *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMText *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMText *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMText *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMText *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMText *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMText *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMText *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMText *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMText *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMText *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMText *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMText *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMText *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMText *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_data)(IXMLDOMText *This,BSTR *data);
HRESULT (__attribute__((__stdcall__)) *put_data)(IXMLDOMText *This,BSTR data);
HRESULT (__attribute__((__stdcall__)) *get_length)(IXMLDOMText *This,LONG *dataLength);
HRESULT (__attribute__((__stdcall__)) *substringData)(IXMLDOMText *This,LONG offset,LONG count,BSTR *data);
HRESULT (__attribute__((__stdcall__)) *appendData)(IXMLDOMText *This,BSTR data);
HRESULT (__attribute__((__stdcall__)) *insertData)(IXMLDOMText *This,LONG offset,BSTR data);
HRESULT (__attribute__((__stdcall__)) *deleteData)(IXMLDOMText *This,LONG offset,LONG count);
HRESULT (__attribute__((__stdcall__)) *replaceData)(IXMLDOMText *This,LONG offset,LONG count,BSTR data);
HRESULT (__attribute__((__stdcall__)) *splitText)(IXMLDOMText *This,LONG offset,IXMLDOMText **rightHandTextNode);
} IXMLDOMTextVtbl;
struct IXMLDOMText {
struct IXMLDOMTextVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMText_splitText_Proxy(IXMLDOMText *This,LONG offset,IXMLDOMText **rightHandTextNode);
void __attribute__((__stdcall__)) IXMLDOMText_splitText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMComment;
typedef struct IXMLDOMCommentVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMComment *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMComment *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMComment *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMComment *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMComment *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMComment *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMComment *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMComment *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMComment *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMComment *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMComment *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMComment *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMComment *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMComment *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMComment *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMComment *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMComment *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMComment *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMComment *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMComment *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMComment *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMComment *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMComment *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMComment *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMComment *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMComment *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMComment *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMComment *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMComment *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMComment *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMComment *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMComment *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMComment *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMComment *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMComment *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMComment *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMComment *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMComment *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMComment *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMComment *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMComment *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMComment *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMComment *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_data)(IXMLDOMComment *This,BSTR *data);
HRESULT (__attribute__((__stdcall__)) *put_data)(IXMLDOMComment *This,BSTR data);
HRESULT (__attribute__((__stdcall__)) *get_length)(IXMLDOMComment *This,LONG *dataLength);
HRESULT (__attribute__((__stdcall__)) *substringData)(IXMLDOMComment *This,LONG offset,LONG count,BSTR *data);
HRESULT (__attribute__((__stdcall__)) *appendData)(IXMLDOMComment *This,BSTR data);
HRESULT (__attribute__((__stdcall__)) *insertData)(IXMLDOMComment *This,LONG offset,BSTR data);
HRESULT (__attribute__((__stdcall__)) *deleteData)(IXMLDOMComment *This,LONG offset,LONG count);
HRESULT (__attribute__((__stdcall__)) *replaceData)(IXMLDOMComment *This,LONG offset,LONG count,BSTR data);
} IXMLDOMCommentVtbl;
struct IXMLDOMComment {
struct IXMLDOMCommentVtbl *lpVtbl;
};
extern const IID IID_IXMLDOMProcessingInstruction;
typedef struct IXMLDOMProcessingInstructionVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMProcessingInstruction *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMProcessingInstruction *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMProcessingInstruction *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMProcessingInstruction *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMProcessingInstruction *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMProcessingInstruction *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMProcessingInstruction *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMProcessingInstruction *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMProcessingInstruction *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMProcessingInstruction *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMProcessingInstruction *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMProcessingInstruction *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMProcessingInstruction *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMProcessingInstruction *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMProcessingInstruction *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMProcessingInstruction *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMProcessingInstruction *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMProcessingInstruction *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMProcessingInstruction *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMProcessingInstruction *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMProcessingInstruction *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMProcessingInstruction *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMProcessingInstruction *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMProcessingInstruction *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMProcessingInstruction *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMProcessingInstruction *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMProcessingInstruction *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMProcessingInstruction *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMProcessingInstruction *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMProcessingInstruction *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMProcessingInstruction *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_target)(IXMLDOMProcessingInstruction *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_data)(IXMLDOMProcessingInstruction *This,BSTR *value);
HRESULT (__attribute__((__stdcall__)) *put_data)(IXMLDOMProcessingInstruction *This,BSTR value);
} IXMLDOMProcessingInstructionVtbl;
struct IXMLDOMProcessingInstruction {
struct IXMLDOMProcessingInstructionVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMProcessingInstruction_get_target_Proxy(IXMLDOMProcessingInstruction *This,BSTR *name);
void __attribute__((__stdcall__)) IXMLDOMProcessingInstruction_get_target_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMProcessingInstruction_get_data_Proxy(IXMLDOMProcessingInstruction *This,BSTR *value);
void __attribute__((__stdcall__)) IXMLDOMProcessingInstruction_get_data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMProcessingInstruction_put_data_Proxy(IXMLDOMProcessingInstruction *This,BSTR value);
void __attribute__((__stdcall__)) IXMLDOMProcessingInstruction_put_data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMCDATASection;
typedef struct IXMLDOMCDATASectionVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMCDATASection *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMCDATASection *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMCDATASection *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMCDATASection *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMCDATASection *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMCDATASection *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMCDATASection *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMCDATASection *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMCDATASection *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMCDATASection *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMCDATASection *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMCDATASection *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMCDATASection *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMCDATASection *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMCDATASection *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMCDATASection *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMCDATASection *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMCDATASection *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMCDATASection *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMCDATASection *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMCDATASection *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMCDATASection *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMCDATASection *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMCDATASection *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMCDATASection *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMCDATASection *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMCDATASection *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMCDATASection *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMCDATASection *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMCDATASection *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMCDATASection *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMCDATASection *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMCDATASection *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMCDATASection *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMCDATASection *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMCDATASection *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMCDATASection *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMCDATASection *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMCDATASection *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMCDATASection *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMCDATASection *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMCDATASection *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMCDATASection *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_data)(IXMLDOMCDATASection *This,BSTR *data);
HRESULT (__attribute__((__stdcall__)) *put_data)(IXMLDOMCDATASection *This,BSTR data);
HRESULT (__attribute__((__stdcall__)) *get_length)(IXMLDOMCDATASection *This,LONG *dataLength);
HRESULT (__attribute__((__stdcall__)) *substringData)(IXMLDOMCDATASection *This,LONG offset,LONG count,BSTR *data);
HRESULT (__attribute__((__stdcall__)) *appendData)(IXMLDOMCDATASection *This,BSTR data);
HRESULT (__attribute__((__stdcall__)) *insertData)(IXMLDOMCDATASection *This,LONG offset,BSTR data);
HRESULT (__attribute__((__stdcall__)) *deleteData)(IXMLDOMCDATASection *This,LONG offset,LONG count);
HRESULT (__attribute__((__stdcall__)) *replaceData)(IXMLDOMCDATASection *This,LONG offset,LONG count,BSTR data);
HRESULT (__attribute__((__stdcall__)) *splitText)(IXMLDOMCDATASection *This,LONG offset,IXMLDOMText **rightHandTextNode);
} IXMLDOMCDATASectionVtbl;
struct IXMLDOMCDATASection {
struct IXMLDOMCDATASectionVtbl *lpVtbl;
};
extern const IID IID_IXMLDOMDocumentType;
typedef struct IXMLDOMDocumentTypeVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMDocumentType *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMDocumentType *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMDocumentType *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMDocumentType *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMDocumentType *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMDocumentType *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMDocumentType *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMDocumentType *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMDocumentType *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMDocumentType *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMDocumentType *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMDocumentType *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMDocumentType *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMDocumentType *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMDocumentType *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMDocumentType *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMDocumentType *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMDocumentType *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMDocumentType *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMDocumentType *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMDocumentType *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMDocumentType *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMDocumentType *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMDocumentType *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMDocumentType *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMDocumentType *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMDocumentType *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMDocumentType *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMDocumentType *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMDocumentType *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMDocumentType *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMDocumentType *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMDocumentType *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMDocumentType *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMDocumentType *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMDocumentType *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMDocumentType *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMDocumentType *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMDocumentType *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMDocumentType *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMDocumentType *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMDocumentType *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_name)(IXMLDOMDocumentType *This,BSTR *rootName);
HRESULT (__attribute__((__stdcall__)) *get_entities)(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **entityMap);
HRESULT (__attribute__((__stdcall__)) *get_notations)(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **notationMap);
} IXMLDOMDocumentTypeVtbl;
struct IXMLDOMDocumentType {
struct IXMLDOMDocumentTypeVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMDocumentType_get_name_Proxy(IXMLDOMDocumentType *This,BSTR *rootName);
void __attribute__((__stdcall__)) IXMLDOMDocumentType_get_name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocumentType_get_entities_Proxy(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **entityMap);
void __attribute__((__stdcall__)) IXMLDOMDocumentType_get_entities_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMDocumentType_get_notations_Proxy(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **notationMap);
void __attribute__((__stdcall__)) IXMLDOMDocumentType_get_notations_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMNotation;
typedef struct IXMLDOMNotationVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMNotation *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMNotation *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMNotation *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMNotation *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMNotation *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMNotation *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMNotation *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMNotation *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMNotation *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMNotation *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMNotation *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMNotation *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMNotation *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMNotation *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMNotation *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMNotation *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMNotation *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMNotation *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMNotation *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMNotation *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMNotation *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMNotation *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMNotation *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMNotation *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMNotation *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMNotation *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMNotation *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMNotation *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMNotation *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMNotation *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMNotation *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMNotation *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMNotation *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMNotation *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMNotation *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMNotation *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMNotation *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMNotation *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMNotation *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMNotation *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMNotation *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMNotation *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMNotation *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_publicId)(IXMLDOMNotation *This,VARIANT *publicID);
HRESULT (__attribute__((__stdcall__)) *get_systemId)(IXMLDOMNotation *This,VARIANT *systemID);
} IXMLDOMNotationVtbl;
struct IXMLDOMNotation {
struct IXMLDOMNotationVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMNotation_get_publicId_Proxy(IXMLDOMNotation *This,VARIANT *publicID);
void __attribute__((__stdcall__)) IXMLDOMNotation_get_publicId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMNotation_get_systemId_Proxy(IXMLDOMNotation *This,VARIANT *systemID);
void __attribute__((__stdcall__)) IXMLDOMNotation_get_systemId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMEntity;
typedef struct IXMLDOMEntityVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMEntity *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMEntity *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMEntity *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMEntity *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMEntity *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMEntity *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMEntity *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMEntity *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMEntity *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMEntity *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMEntity *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMEntity *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMEntity *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMEntity *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMEntity *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMEntity *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMEntity *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMEntity *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMEntity *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMEntity *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMEntity *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMEntity *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMEntity *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMEntity *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMEntity *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMEntity *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMEntity *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMEntity *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMEntity *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMEntity *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMEntity *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMEntity *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMEntity *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMEntity *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMEntity *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMEntity *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMEntity *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMEntity *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMEntity *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMEntity *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMEntity *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMEntity *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMEntity *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *get_publicId)(IXMLDOMEntity *This,VARIANT *publicID);
HRESULT (__attribute__((__stdcall__)) *get_systemId)(IXMLDOMEntity *This,VARIANT *systemID);
HRESULT (__attribute__((__stdcall__)) *get_notationName)(IXMLDOMEntity *This,BSTR *name);
} IXMLDOMEntityVtbl;
struct IXMLDOMEntity {
struct IXMLDOMEntityVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMEntity_get_publicId_Proxy(IXMLDOMEntity *This,VARIANT *publicID);
void __attribute__((__stdcall__)) IXMLDOMEntity_get_publicId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMEntity_get_systemId_Proxy(IXMLDOMEntity *This,VARIANT *systemID);
void __attribute__((__stdcall__)) IXMLDOMEntity_get_systemId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMEntity_get_notationName_Proxy(IXMLDOMEntity *This,BSTR *name);
void __attribute__((__stdcall__)) IXMLDOMEntity_get_notationName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDOMEntityReference;
typedef struct IXMLDOMEntityReferenceVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMEntityReference *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMEntityReference *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMEntityReference *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMEntityReference *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMEntityReference *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMEntityReference *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMEntityReference *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXMLDOMEntityReference *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXMLDOMEntityReference *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXMLDOMEntityReference *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXMLDOMEntityReference *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXMLDOMEntityReference *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXMLDOMEntityReference *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXMLDOMEntityReference *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXMLDOMEntityReference *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXMLDOMEntityReference *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXMLDOMEntityReference *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLDOMEntityReference *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXMLDOMEntityReference *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXMLDOMEntityReference *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLDOMEntityReference *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXMLDOMEntityReference *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXMLDOMEntityReference *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXMLDOMEntityReference *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXMLDOMEntityReference *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXMLDOMEntityReference *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLDOMEntityReference *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLDOMEntityReference *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXMLDOMEntityReference *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXMLDOMEntityReference *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXMLDOMEntityReference *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXMLDOMEntityReference *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXMLDOMEntityReference *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXMLDOMEntityReference *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXMLDOMEntityReference *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXMLDOMEntityReference *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXMLDOMEntityReference *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXMLDOMEntityReference *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXMLDOMEntityReference *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXMLDOMEntityReference *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXMLDOMEntityReference *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXMLDOMEntityReference *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXMLDOMEntityReference *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
} IXMLDOMEntityReferenceVtbl;
struct IXMLDOMEntityReference {
struct IXMLDOMEntityReferenceVtbl *lpVtbl;
};
extern const IID IID_IXMLDOMParseError;
typedef struct IXMLDOMParseErrorVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDOMParseError *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDOMParseError *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDOMParseError *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDOMParseError *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDOMParseError *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDOMParseError *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDOMParseError *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_errorCode)(IXMLDOMParseError *This,LONG *errorCode);
HRESULT (__attribute__((__stdcall__)) *get_url)(IXMLDOMParseError *This,BSTR *urlString);
HRESULT (__attribute__((__stdcall__)) *get_reason)(IXMLDOMParseError *This,BSTR *reasonString);
HRESULT (__attribute__((__stdcall__)) *get_srcText)(IXMLDOMParseError *This,BSTR *sourceString);
HRESULT (__attribute__((__stdcall__)) *get_line)(IXMLDOMParseError *This,LONG *lineNumber);
HRESULT (__attribute__((__stdcall__)) *get_linepos)(IXMLDOMParseError *This,LONG *linePosition);
HRESULT (__attribute__((__stdcall__)) *get_filepos)(IXMLDOMParseError *This,LONG *filePosition);
} IXMLDOMParseErrorVtbl;
struct IXMLDOMParseError {
struct IXMLDOMParseErrorVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDOMParseError_get_errorCode_Proxy(IXMLDOMParseError *This,LONG *errorCode);
void __attribute__((__stdcall__)) IXMLDOMParseError_get_errorCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMParseError_get_url_Proxy(IXMLDOMParseError *This,BSTR *urlString);
void __attribute__((__stdcall__)) IXMLDOMParseError_get_url_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMParseError_get_reason_Proxy(IXMLDOMParseError *This,BSTR *reasonString);
void __attribute__((__stdcall__)) IXMLDOMParseError_get_reason_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMParseError_get_srcText_Proxy(IXMLDOMParseError *This,BSTR *sourceString);
void __attribute__((__stdcall__)) IXMLDOMParseError_get_srcText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMParseError_get_line_Proxy(IXMLDOMParseError *This,LONG *lineNumber);
void __attribute__((__stdcall__)) IXMLDOMParseError_get_line_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMParseError_get_linepos_Proxy(IXMLDOMParseError *This,LONG *linePosition);
void __attribute__((__stdcall__)) IXMLDOMParseError_get_linepos_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDOMParseError_get_filepos_Proxy(IXMLDOMParseError *This,LONG *filePosition);
void __attribute__((__stdcall__)) IXMLDOMParseError_get_filepos_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXTLRuntime;
typedef struct IXTLRuntimeVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXTLRuntime *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXTLRuntime *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXTLRuntime *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXTLRuntime *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXTLRuntime *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXTLRuntime *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXTLRuntime *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_nodeName)(IXTLRuntime *This,BSTR *name);
HRESULT (__attribute__((__stdcall__)) *get_nodeValue)(IXTLRuntime *This,VARIANT *value);
HRESULT (__attribute__((__stdcall__)) *put_nodeValue)(IXTLRuntime *This,VARIANT value);
HRESULT (__attribute__((__stdcall__)) *get_nodeType)(IXTLRuntime *This,DOMNodeType *type);
HRESULT (__attribute__((__stdcall__)) *get_parentNode)(IXTLRuntime *This,IXMLDOMNode **parent);
HRESULT (__attribute__((__stdcall__)) *get_childNodes)(IXTLRuntime *This,IXMLDOMNodeList **childList);
HRESULT (__attribute__((__stdcall__)) *get_firstChild)(IXTLRuntime *This,IXMLDOMNode **firstChild);
HRESULT (__attribute__((__stdcall__)) *get_lastChild)(IXTLRuntime *This,IXMLDOMNode **lastChild);
HRESULT (__attribute__((__stdcall__)) *get_previousSibling)(IXTLRuntime *This,IXMLDOMNode **previousSibling);
HRESULT (__attribute__((__stdcall__)) *get_nextSibling)(IXTLRuntime *This,IXMLDOMNode **nextSibling);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXTLRuntime *This,IXMLDOMNamedNodeMap **attributeMap);
HRESULT (__attribute__((__stdcall__)) *insertBefore)(IXTLRuntime *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *replaceChild)(IXTLRuntime *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXTLRuntime *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
HRESULT (__attribute__((__stdcall__)) *appendChild)(IXTLRuntime *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
HRESULT (__attribute__((__stdcall__)) *hasChildNodes)(IXTLRuntime *This,VARIANT_BOOL *hasChild);
HRESULT (__attribute__((__stdcall__)) *get_ownerDocument)(IXTLRuntime *This,IXMLDOMDocument **DOMDocument);
HRESULT (__attribute__((__stdcall__)) *cloneNode)(IXTLRuntime *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypeString)(IXTLRuntime *This,BSTR *nodeType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXTLRuntime *This,BSTR *text);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXTLRuntime *This,BSTR text);
HRESULT (__attribute__((__stdcall__)) *get_specified)(IXTLRuntime *This,VARIANT_BOOL *isSpecified);
HRESULT (__attribute__((__stdcall__)) *get_definition)(IXTLRuntime *This,IXMLDOMNode **definitionNode);
HRESULT (__attribute__((__stdcall__)) *get_nodeTypedValue)(IXTLRuntime *This,VARIANT *typedValue);
HRESULT (__attribute__((__stdcall__)) *put_nodeTypedValue)(IXTLRuntime *This,VARIANT typedValue);
HRESULT (__attribute__((__stdcall__)) *get_dataType)(IXTLRuntime *This,VARIANT *dataTypeName);
HRESULT (__attribute__((__stdcall__)) *put_dataType)(IXTLRuntime *This,BSTR dataTypeName);
HRESULT (__attribute__((__stdcall__)) *get_xml)(IXTLRuntime *This,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *transformNode)(IXTLRuntime *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
HRESULT (__attribute__((__stdcall__)) *selectNodes)(IXTLRuntime *This,BSTR queryString,IXMLDOMNodeList **resultList);
HRESULT (__attribute__((__stdcall__)) *selectSingleNode)(IXTLRuntime *This,BSTR queryString,IXMLDOMNode **resultNode);
HRESULT (__attribute__((__stdcall__)) *get_parsed)(IXTLRuntime *This,VARIANT_BOOL *isParsed);
HRESULT (__attribute__((__stdcall__)) *get_namespaceURI)(IXTLRuntime *This,BSTR *namespaceURI);
HRESULT (__attribute__((__stdcall__)) *get_prefix)(IXTLRuntime *This,BSTR *prefixString);
HRESULT (__attribute__((__stdcall__)) *get_baseName)(IXTLRuntime *This,BSTR *nameString);
HRESULT (__attribute__((__stdcall__)) *transformNodeToObject)(IXTLRuntime *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
HRESULT (__attribute__((__stdcall__)) *uniqueID)(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pID);
HRESULT (__attribute__((__stdcall__)) *depth)(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pDepth);
HRESULT (__attribute__((__stdcall__)) *childNumber)(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pNumber);
HRESULT (__attribute__((__stdcall__)) *ancestorChildNumber)(IXTLRuntime *This,BSTR bstrNodeName,IXMLDOMNode *pNode,LONG *pNumber);
HRESULT (__attribute__((__stdcall__)) *absoluteChildNumber)(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pNumber);
HRESULT (__attribute__((__stdcall__)) *formatIndex)(IXTLRuntime *This,LONG lIndex,BSTR bstrFormat,BSTR *pbstrFormattedString);
HRESULT (__attribute__((__stdcall__)) *formatNumber)(IXTLRuntime *This,double dblNumber,BSTR bstrFormat,BSTR *pbstrFormattedString);
HRESULT (__attribute__((__stdcall__)) *formatDate)(IXTLRuntime *This,VARIANT varDate,BSTR bstrFormat,VARIANT varDestLocale,BSTR *pbstrFormattedString);
HRESULT (__attribute__((__stdcall__)) *formatTime)(IXTLRuntime *This,VARIANT varTime,BSTR bstrFormat,VARIANT varDestLocale,BSTR *pbstrFormattedString);
} IXTLRuntimeVtbl;
struct IXTLRuntime {
struct IXTLRuntimeVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXTLRuntime_uniqueID_Proxy(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pID);
void __attribute__((__stdcall__)) IXTLRuntime_uniqueID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXTLRuntime_depth_Proxy(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pDepth);
void __attribute__((__stdcall__)) IXTLRuntime_depth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXTLRuntime_childNumber_Proxy(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pNumber);
void __attribute__((__stdcall__)) IXTLRuntime_childNumber_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXTLRuntime_ancestorChildNumber_Proxy(IXTLRuntime *This,BSTR bstrNodeName,IXMLDOMNode *pNode,LONG *pNumber);
void __attribute__((__stdcall__)) IXTLRuntime_ancestorChildNumber_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXTLRuntime_absoluteChildNumber_Proxy(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pNumber);
void __attribute__((__stdcall__)) IXTLRuntime_absoluteChildNumber_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXTLRuntime_formatIndex_Proxy(IXTLRuntime *This,LONG lIndex,BSTR bstrFormat,BSTR *pbstrFormattedString);
void __attribute__((__stdcall__)) IXTLRuntime_formatIndex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXTLRuntime_formatNumber_Proxy(IXTLRuntime *This,double dblNumber,BSTR bstrFormat,BSTR *pbstrFormattedString);
void __attribute__((__stdcall__)) IXTLRuntime_formatNumber_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXTLRuntime_formatDate_Proxy(IXTLRuntime *This,VARIANT varDate,BSTR bstrFormat,VARIANT varDestLocale,BSTR *pbstrFormattedString);
void __attribute__((__stdcall__)) IXTLRuntime_formatDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXTLRuntime_formatTime_Proxy(IXTLRuntime *This,VARIANT varTime,BSTR bstrFormat,VARIANT varDestLocale,BSTR *pbstrFormattedString);
void __attribute__((__stdcall__)) IXTLRuntime_formatTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID DIID_XMLDOMDocumentEvents;
typedef struct XMLDOMDocumentEventsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(XMLDOMDocumentEvents *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(XMLDOMDocumentEvents *This);
ULONG (__attribute__((__stdcall__)) *Release)(XMLDOMDocumentEvents *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(XMLDOMDocumentEvents *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(XMLDOMDocumentEvents *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(XMLDOMDocumentEvents *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(XMLDOMDocumentEvents *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
} XMLDOMDocumentEventsVtbl;
struct XMLDOMDocumentEvents {
struct XMLDOMDocumentEventsVtbl *lpVtbl;
};
extern const CLSID CLSID_DOMDocument;
extern const CLSID CLSID_DOMFreeThreadedDocument;
extern const IID IID_IXMLHttpRequest;
typedef struct IXMLHttpRequestVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLHttpRequest *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLHttpRequest *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLHttpRequest *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLHttpRequest *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLHttpRequest *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLHttpRequest *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLHttpRequest *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *open)(IXMLHttpRequest *This,BSTR bstrMethod,BSTR bstrUrl,VARIANT varAsync,VARIANT bstrUser,VARIANT bstrPassword);
HRESULT (__attribute__((__stdcall__)) *setRequestHeader)(IXMLHttpRequest *This,BSTR bstrHeader,BSTR bstrValue);
HRESULT (__attribute__((__stdcall__)) *getResponseHeader)(IXMLHttpRequest *This,BSTR bstrHeader,BSTR *pbstrValue);
HRESULT (__attribute__((__stdcall__)) *getAllResponseHeaders)(IXMLHttpRequest *This,BSTR *pbstrHeaders);
HRESULT (__attribute__((__stdcall__)) *send)(IXMLHttpRequest *This,VARIANT varBody);
HRESULT (__attribute__((__stdcall__)) *abort)(IXMLHttpRequest *This);
HRESULT (__attribute__((__stdcall__)) *get_status)(IXMLHttpRequest *This,LONG *plStatus);
HRESULT (__attribute__((__stdcall__)) *get_statusText)(IXMLHttpRequest *This,BSTR *pbstrStatus);
HRESULT (__attribute__((__stdcall__)) *get_responseXML)(IXMLHttpRequest *This,IDispatch **ppBody);
HRESULT (__attribute__((__stdcall__)) *get_responseText)(IXMLHttpRequest *This,BSTR *pbstrBody);
HRESULT (__attribute__((__stdcall__)) *get_responseBody)(IXMLHttpRequest *This,VARIANT *pvarBody);
HRESULT (__attribute__((__stdcall__)) *get_responseStream)(IXMLHttpRequest *This,VARIANT *pvarBody);
HRESULT (__attribute__((__stdcall__)) *get_readyState)(IXMLHttpRequest *This,LONG *plState);
HRESULT (__attribute__((__stdcall__)) *put_onreadystatechange)(IXMLHttpRequest *This,IDispatch *pReadyStateSink);
} IXMLHttpRequestVtbl;
struct IXMLHttpRequest {
struct IXMLHttpRequestVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_open_Proxy(IXMLHttpRequest *This,BSTR bstrMethod,BSTR bstrUrl,VARIANT varAsync,VARIANT bstrUser,VARIANT bstrPassword);
void __attribute__((__stdcall__)) IXMLHttpRequest_open_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_setRequestHeader_Proxy(IXMLHttpRequest *This,BSTR bstrHeader,BSTR bstrValue);
void __attribute__((__stdcall__)) IXMLHttpRequest_setRequestHeader_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_getResponseHeader_Proxy(IXMLHttpRequest *This,BSTR bstrHeader,BSTR *pbstrValue);
void __attribute__((__stdcall__)) IXMLHttpRequest_getResponseHeader_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_getAllResponseHeaders_Proxy(IXMLHttpRequest *This,BSTR *pbstrHeaders);
void __attribute__((__stdcall__)) IXMLHttpRequest_getAllResponseHeaders_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_send_Proxy(IXMLHttpRequest *This,VARIANT varBody);
void __attribute__((__stdcall__)) IXMLHttpRequest_send_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_abort_Proxy(IXMLHttpRequest *This);
void __attribute__((__stdcall__)) IXMLHttpRequest_abort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_get_status_Proxy(IXMLHttpRequest *This,LONG *plStatus);
void __attribute__((__stdcall__)) IXMLHttpRequest_get_status_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_get_statusText_Proxy(IXMLHttpRequest *This,BSTR *pbstrStatus);
void __attribute__((__stdcall__)) IXMLHttpRequest_get_statusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_get_responseXML_Proxy(IXMLHttpRequest *This,IDispatch **ppBody);
void __attribute__((__stdcall__)) IXMLHttpRequest_get_responseXML_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_get_responseText_Proxy(IXMLHttpRequest *This,BSTR *pbstrBody);
void __attribute__((__stdcall__)) IXMLHttpRequest_get_responseText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_get_responseBody_Proxy(IXMLHttpRequest *This,VARIANT *pvarBody);
void __attribute__((__stdcall__)) IXMLHttpRequest_get_responseBody_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_get_responseStream_Proxy(IXMLHttpRequest *This,VARIANT *pvarBody);
void __attribute__((__stdcall__)) IXMLHttpRequest_get_responseStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_get_readyState_Proxy(IXMLHttpRequest *This,LONG *plState);
void __attribute__((__stdcall__)) IXMLHttpRequest_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLHttpRequest_put_onreadystatechange_Proxy(IXMLHttpRequest *This,IDispatch *pReadyStateSink);
void __attribute__((__stdcall__)) IXMLHttpRequest_put_onreadystatechange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const CLSID CLSID_XMLHTTPRequest;
extern const IID IID_IXMLDSOControl;
typedef struct IXMLDSOControlVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDSOControl *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDSOControl *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDSOControl *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDSOControl *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDSOControl *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDSOControl *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDSOControl *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_XMLDocument)(IXMLDSOControl *This,IXMLDOMDocument **ppDoc);
HRESULT (__attribute__((__stdcall__)) *put_XMLDocument)(IXMLDSOControl *This,IXMLDOMDocument *ppDoc);
HRESULT (__attribute__((__stdcall__)) *get_JavaDSOCompatible)(IXMLDSOControl *This,WINBOOL *fJavaDSOCompatible);
HRESULT (__attribute__((__stdcall__)) *put_JavaDSOCompatible)(IXMLDSOControl *This,WINBOOL fJavaDSOCompatible);
HRESULT (__attribute__((__stdcall__)) *get_readyState)(IXMLDSOControl *This,LONG *state);
} IXMLDSOControlVtbl;
struct IXMLDSOControl {
struct IXMLDSOControlVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDSOControl_get_XMLDocument_Proxy(IXMLDSOControl *This,IXMLDOMDocument **ppDoc);
void __attribute__((__stdcall__)) IXMLDSOControl_get_XMLDocument_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDSOControl_put_XMLDocument_Proxy(IXMLDSOControl *This,IXMLDOMDocument *ppDoc);
void __attribute__((__stdcall__)) IXMLDSOControl_put_XMLDocument_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDSOControl_get_JavaDSOCompatible_Proxy(IXMLDSOControl *This,WINBOOL *fJavaDSOCompatible);
void __attribute__((__stdcall__)) IXMLDSOControl_get_JavaDSOCompatible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDSOControl_put_JavaDSOCompatible_Proxy(IXMLDSOControl *This,WINBOOL fJavaDSOCompatible);
void __attribute__((__stdcall__)) IXMLDSOControl_put_JavaDSOCompatible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDSOControl_get_readyState_Proxy(IXMLDSOControl *This,LONG *state);
void __attribute__((__stdcall__)) IXMLDSOControl_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const CLSID CLSID_XMLDSOControl;
extern const IID IID_IXMLElementCollection;
typedef struct IXMLElementCollectionVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLElementCollection *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLElementCollection *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLElementCollection *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLElementCollection *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLElementCollection *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLElementCollection *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLElementCollection *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *put_length)(IXMLElementCollection *This,LONG v);
HRESULT (__attribute__((__stdcall__)) *get_length)(IXMLElementCollection *This,LONG *p);
HRESULT (__attribute__((__stdcall__)) *get__newEnum)(IXMLElementCollection *This,IUnknown **ppUnk);
HRESULT (__attribute__((__stdcall__)) *item)(IXMLElementCollection *This,VARIANT var1,VARIANT var2,IDispatch **ppDisp);
} IXMLElementCollectionVtbl;
struct IXMLElementCollection {
struct IXMLElementCollectionVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLElementCollection_put_length_Proxy(IXMLElementCollection *This,LONG v);
void __attribute__((__stdcall__)) IXMLElementCollection_put_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElementCollection_get_length_Proxy(IXMLElementCollection *This,LONG *p);
void __attribute__((__stdcall__)) IXMLElementCollection_get_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElementCollection_get__newEnum_Proxy(IXMLElementCollection *This,IUnknown **ppUnk);
void __attribute__((__stdcall__)) IXMLElementCollection_get__newEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElementCollection_item_Proxy(IXMLElementCollection *This,VARIANT var1,VARIANT var2,IDispatch **ppDisp);
void __attribute__((__stdcall__)) IXMLElementCollection_item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDocument;
typedef struct IXMLDocumentVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDocument *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDocument *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDocument *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDocument *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDocument *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDocument *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDocument *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_root)(IXMLDocument *This,IXMLElement **p);
HRESULT (__attribute__((__stdcall__)) *get_fileSize)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_fileModifiedDate)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_fileUpdatedDate)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_URL)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *put_URL)(IXMLDocument *This,BSTR p);
HRESULT (__attribute__((__stdcall__)) *get_mimeType)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_readyState)(IXMLDocument *This,LONG *pl);
HRESULT (__attribute__((__stdcall__)) *get_charset)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *put_charset)(IXMLDocument *This,BSTR p);
HRESULT (__attribute__((__stdcall__)) *get_version)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_doctype)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_dtdURL)(IXMLDocument *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *createElement)(IXMLDocument *This,VARIANT vType,VARIANT var1,IXMLElement **ppElem);
} IXMLDocumentVtbl;
struct IXMLDocument {
struct IXMLDocumentVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_root_Proxy(IXMLDocument *This,IXMLElement **p);
void __attribute__((__stdcall__)) IXMLDocument_get_root_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_fileSize_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_fileSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_fileModifiedDate_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_fileModifiedDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_fileUpdatedDate_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_fileUpdatedDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_URL_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_URL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_put_URL_Proxy(IXMLDocument *This,BSTR p);
void __attribute__((__stdcall__)) IXMLDocument_put_URL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_mimeType_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_mimeType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_readyState_Proxy(IXMLDocument *This,LONG *pl);
void __attribute__((__stdcall__)) IXMLDocument_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_charset_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_charset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_put_charset_Proxy(IXMLDocument *This,BSTR p);
void __attribute__((__stdcall__)) IXMLDocument_put_charset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_version_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_version_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_doctype_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_doctype_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_get_dtdURL_Proxy(IXMLDocument *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument_get_dtdURL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument_createElement_Proxy(IXMLDocument *This,VARIANT vType,VARIANT var1,IXMLElement **ppElem);
void __attribute__((__stdcall__)) IXMLDocument_createElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLDocument2;
typedef struct IXMLDocument2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLDocument2 *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLDocument2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLDocument2 *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLDocument2 *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLDocument2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLDocument2 *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLDocument2 *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_root)(IXMLDocument2 *This,IXMLElement2 **p);
HRESULT (__attribute__((__stdcall__)) *get_fileSize)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_fileModifiedDate)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_fileUpdatedDate)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_URL)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *put_URL)(IXMLDocument2 *This,BSTR p);
HRESULT (__attribute__((__stdcall__)) *get_mimeType)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_readyState)(IXMLDocument2 *This,LONG *pl);
HRESULT (__attribute__((__stdcall__)) *get_charset)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *put_charset)(IXMLDocument2 *This,BSTR p);
HRESULT (__attribute__((__stdcall__)) *get_version)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_doctype)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *get_dtdURL)(IXMLDocument2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *createElement)(IXMLDocument2 *This,VARIANT vType,VARIANT var1,IXMLElement2 **ppElem);
HRESULT (__attribute__((__stdcall__)) *get_async)(IXMLDocument2 *This,VARIANT_BOOL *pf);
HRESULT (__attribute__((__stdcall__)) *put_async)(IXMLDocument2 *This,VARIANT_BOOL f);
} IXMLDocument2Vtbl;
struct IXMLDocument2 {
struct IXMLDocument2Vtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_root_Proxy(IXMLDocument2 *This,IXMLElement2 **p);
void __attribute__((__stdcall__)) IXMLDocument2_get_root_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_fileSize_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_fileSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_fileModifiedDate_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_fileModifiedDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_fileUpdatedDate_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_fileUpdatedDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_URL_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_URL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_put_URL_Proxy(IXMLDocument2 *This,BSTR p);
void __attribute__((__stdcall__)) IXMLDocument2_put_URL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_mimeType_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_mimeType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_readyState_Proxy(IXMLDocument2 *This,LONG *pl);
void __attribute__((__stdcall__)) IXMLDocument2_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_charset_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_charset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_put_charset_Proxy(IXMLDocument2 *This,BSTR p);
void __attribute__((__stdcall__)) IXMLDocument2_put_charset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_version_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_version_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_doctype_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_doctype_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_dtdURL_Proxy(IXMLDocument2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLDocument2_get_dtdURL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_createElement_Proxy(IXMLDocument2 *This,VARIANT vType,VARIANT var1,IXMLElement2 **ppElem);
void __attribute__((__stdcall__)) IXMLDocument2_createElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_get_async_Proxy(IXMLDocument2 *This,VARIANT_BOOL *pf);
void __attribute__((__stdcall__)) IXMLDocument2_get_async_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLDocument2_put_async_Proxy(IXMLDocument2 *This,VARIANT_BOOL f);
void __attribute__((__stdcall__)) IXMLDocument2_put_async_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLElement;
typedef struct IXMLElementVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLElement *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLElement *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLElement *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLElement *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLElement *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLElement *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLElement *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_tagName)(IXMLElement *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *put_tagName)(IXMLElement *This,BSTR p);
HRESULT (__attribute__((__stdcall__)) *get_parent)(IXMLElement *This,IXMLElement **ppParent);
HRESULT (__attribute__((__stdcall__)) *setAttribute)(IXMLElement *This,BSTR strPropertyName,VARIANT PropertyValue);
HRESULT (__attribute__((__stdcall__)) *getAttribute)(IXMLElement *This,BSTR strPropertyName,VARIANT *PropertyValue);
HRESULT (__attribute__((__stdcall__)) *removeAttribute)(IXMLElement *This,BSTR strPropertyName);
HRESULT (__attribute__((__stdcall__)) *get_children)(IXMLElement *This,IXMLElementCollection **pp);
HRESULT (__attribute__((__stdcall__)) *get_type)(IXMLElement *This,LONG *plType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLElement *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLElement *This,BSTR p);
HRESULT (__attribute__((__stdcall__)) *addChild)(IXMLElement *This,IXMLElement *pChildElem,LONG lIndex,LONG lReserved);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLElement *This,IXMLElement *pChildElem);
} IXMLElementVtbl;
struct IXMLElement {
struct IXMLElementVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLElement_get_tagName_Proxy(IXMLElement *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLElement_get_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_put_tagName_Proxy(IXMLElement *This,BSTR p);
void __attribute__((__stdcall__)) IXMLElement_put_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_get_parent_Proxy(IXMLElement *This,IXMLElement **ppParent);
void __attribute__((__stdcall__)) IXMLElement_get_parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_setAttribute_Proxy(IXMLElement *This,BSTR strPropertyName,VARIANT PropertyValue);
void __attribute__((__stdcall__)) IXMLElement_setAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_getAttribute_Proxy(IXMLElement *This,BSTR strPropertyName,VARIANT *PropertyValue);
void __attribute__((__stdcall__)) IXMLElement_getAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_removeAttribute_Proxy(IXMLElement *This,BSTR strPropertyName);
void __attribute__((__stdcall__)) IXMLElement_removeAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_get_children_Proxy(IXMLElement *This,IXMLElementCollection **pp);
void __attribute__((__stdcall__)) IXMLElement_get_children_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_get_type_Proxy(IXMLElement *This,LONG *plType);
void __attribute__((__stdcall__)) IXMLElement_get_type_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_get_text_Proxy(IXMLElement *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLElement_get_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_put_text_Proxy(IXMLElement *This,BSTR p);
void __attribute__((__stdcall__)) IXMLElement_put_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_addChild_Proxy(IXMLElement *This,IXMLElement *pChildElem,LONG lIndex,LONG lReserved);
void __attribute__((__stdcall__)) IXMLElement_addChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement_removeChild_Proxy(IXMLElement *This,IXMLElement *pChildElem);
void __attribute__((__stdcall__)) IXMLElement_removeChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLElement2;
typedef struct IXMLElement2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLElement2 *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLElement2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLElement2 *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLElement2 *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLElement2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLElement2 *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLElement2 *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_tagName)(IXMLElement2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *put_tagName)(IXMLElement2 *This,BSTR p);
HRESULT (__attribute__((__stdcall__)) *get_parent)(IXMLElement2 *This,IXMLElement2 **ppParent);
HRESULT (__attribute__((__stdcall__)) *setAttribute)(IXMLElement2 *This,BSTR strPropertyName,VARIANT PropertyValue);
HRESULT (__attribute__((__stdcall__)) *getAttribute)(IXMLElement2 *This,BSTR strPropertyName,VARIANT *PropertyValue);
HRESULT (__attribute__((__stdcall__)) *removeAttribute)(IXMLElement2 *This,BSTR strPropertyName);
HRESULT (__attribute__((__stdcall__)) *get_children)(IXMLElement2 *This,IXMLElementCollection **pp);
HRESULT (__attribute__((__stdcall__)) *get_type)(IXMLElement2 *This,LONG *plType);
HRESULT (__attribute__((__stdcall__)) *get_text)(IXMLElement2 *This,BSTR *p);
HRESULT (__attribute__((__stdcall__)) *put_text)(IXMLElement2 *This,BSTR p);
HRESULT (__attribute__((__stdcall__)) *addChild)(IXMLElement2 *This,IXMLElement2 *pChildElem,LONG lIndex,LONG lReserved);
HRESULT (__attribute__((__stdcall__)) *removeChild)(IXMLElement2 *This,IXMLElement2 *pChildElem);
HRESULT (__attribute__((__stdcall__)) *get_attributes)(IXMLElement2 *This,IXMLElementCollection **pp);
} IXMLElement2Vtbl;
struct IXMLElement2 {
struct IXMLElement2Vtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLElement2_get_tagName_Proxy(IXMLElement2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLElement2_get_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_put_tagName_Proxy(IXMLElement2 *This,BSTR p);
void __attribute__((__stdcall__)) IXMLElement2_put_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_get_parent_Proxy(IXMLElement2 *This,IXMLElement2 **ppParent);
void __attribute__((__stdcall__)) IXMLElement2_get_parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_setAttribute_Proxy(IXMLElement2 *This,BSTR strPropertyName,VARIANT PropertyValue);
void __attribute__((__stdcall__)) IXMLElement2_setAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_getAttribute_Proxy(IXMLElement2 *This,BSTR strPropertyName,VARIANT *PropertyValue);
void __attribute__((__stdcall__)) IXMLElement2_getAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_removeAttribute_Proxy(IXMLElement2 *This,BSTR strPropertyName);
void __attribute__((__stdcall__)) IXMLElement2_removeAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_get_children_Proxy(IXMLElement2 *This,IXMLElementCollection **pp);
void __attribute__((__stdcall__)) IXMLElement2_get_children_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_get_type_Proxy(IXMLElement2 *This,LONG *plType);
void __attribute__((__stdcall__)) IXMLElement2_get_type_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_get_text_Proxy(IXMLElement2 *This,BSTR *p);
void __attribute__((__stdcall__)) IXMLElement2_get_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_put_text_Proxy(IXMLElement2 *This,BSTR p);
void __attribute__((__stdcall__)) IXMLElement2_put_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_addChild_Proxy(IXMLElement2 *This,IXMLElement2 *pChildElem,LONG lIndex,LONG lReserved);
void __attribute__((__stdcall__)) IXMLElement2_addChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_removeChild_Proxy(IXMLElement2 *This,IXMLElement2 *pChildElem);
void __attribute__((__stdcall__)) IXMLElement2_removeChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLElement2_get_attributes_Proxy(IXMLElement2 *This,IXMLElementCollection **pp);
void __attribute__((__stdcall__)) IXMLElement2_get_attributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLAttribute;
typedef struct IXMLAttributeVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLAttribute *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLAttribute *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLAttribute *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(IXMLAttribute *This,UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(IXMLAttribute *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(IXMLAttribute *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(IXMLAttribute *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
HRESULT (__attribute__((__stdcall__)) *get_name)(IXMLAttribute *This,BSTR *n);
HRESULT (__attribute__((__stdcall__)) *get_value)(IXMLAttribute *This,BSTR *v);
} IXMLAttributeVtbl;
struct IXMLAttribute {
struct IXMLAttributeVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLAttribute_get_name_Proxy(IXMLAttribute *This,BSTR *n);
void __attribute__((__stdcall__)) IXMLAttribute_get_name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IXMLAttribute_get_value_Proxy(IXMLAttribute *This,BSTR *v);
void __attribute__((__stdcall__)) IXMLAttribute_get_value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const IID IID_IXMLError;
typedef struct IXMLErrorVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(IXMLError *This,const IID *const riid,void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(IXMLError *This);
ULONG (__attribute__((__stdcall__)) *Release)(IXMLError *This);
HRESULT (__attribute__((__stdcall__)) *GetErrorInfo)(IXMLError *This,XML_ERROR *pErrorReturn);
} IXMLErrorVtbl;
struct IXMLError {
struct IXMLErrorVtbl *lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IXMLError_GetErrorInfo_Proxy(IXMLError *This,XML_ERROR *pErrorReturn);
void __attribute__((__stdcall__)) IXMLError_GetErrorInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
extern const CLSID CLSID_XMLDocument;
typedef struct IBindStatusCallbackMsg IBindStatusCallbackMsg;
extern const IID CLSID_SBS_StdURLMoniker;
extern const IID CLSID_SBS_HttpProtocol;
extern const IID CLSID_SBS_FtpProtocol;
extern const IID CLSID_SBS_GopherProtocol;
extern const IID CLSID_SBS_HttpSProtocol;
extern const IID CLSID_SBS_FileProtocol;
extern const IID CLSID_SBS_MkProtocol;
extern const IID CLSID_SBS_UrlMkBindCtx;
extern const IID CLSID_SBS_SoftDistExt;
extern const IID CLSID_SBS_CdlProtocol;
extern const IID CLSID_SBS_ClassInstallFilter;
extern const IID CLSID_SBS_InternetSecurityManager;
extern const IID CLSID_SBS_InternetZoneManager;
extern const IID IID_IAsyncMoniker;
extern const IID CLSID_StdURLMoniker;
extern const IID CLSID_HttpProtocol;
extern const IID CLSID_FtpProtocol;
extern const IID CLSID_GopherProtocol;
extern const IID CLSID_HttpSProtocol;
extern const IID CLSID_FileProtocol;
extern const IID CLSID_MkProtocol;
extern const IID CLSID_StdURLProtocol;
extern const IID CLSID_UrlMkBindCtx;
extern const IID CLSID_CdlProtocol;
extern const IID CLSID_ClassInstallFilter;
extern const IID IID_IAsyncBindCtx;
extern HRESULT __attribute__((__stdcall__)) CreateURLMoniker(LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER *ppmk);
extern HRESULT __attribute__((__stdcall__)) CreateURLMonikerEx(LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER *ppmk, DWORD dwFlags);
extern HRESULT __attribute__((__stdcall__)) GetClassURL(LPCWSTR szURL, CLSID *pClsID);
extern HRESULT __attribute__((__stdcall__)) CreateAsyncBindCtx(DWORD reserved, IBindStatusCallback *pBSCb, IEnumFORMATETC *pEFetc, IBindCtx **ppBC);
extern HRESULT __attribute__((__stdcall__)) CreateAsyncBindCtxEx(IBindCtx *pbc, DWORD dwOptions, IBindStatusCallback *pBSCb, IEnumFORMATETC *pEnum, IBindCtx **ppBC, DWORD reserved);
extern HRESULT __attribute__((__stdcall__)) MkParseDisplayNameEx(IBindCtx *pbc, LPCWSTR szDisplayName, ULONG *pchEaten, LPMONIKER *ppmk);
extern HRESULT __attribute__((__stdcall__)) RegisterBindStatusCallback(LPBC pBC, IBindStatusCallback *pBSCb, IBindStatusCallback **ppBSCBPrev, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) RevokeBindStatusCallback(LPBC pBC, IBindStatusCallback *pBSCb);
extern HRESULT __attribute__((__stdcall__)) GetClassFileOrMime(LPBC pBC, LPCWSTR szFilename, LPVOID pBuffer, DWORD cbSize, LPCWSTR szMime, DWORD dwReserved, CLSID *pclsid);
extern HRESULT __attribute__((__stdcall__)) IsValidURL(LPBC pBC, LPCWSTR szURL, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) CoGetClassObjectFromURL(const IID *const rCLASSID, LPCWSTR szCODE, DWORD dwFileVersionMS, DWORD dwFileVersionLS, LPCWSTR szTYPE, LPBINDCTX pBindCtx, DWORD dwClsContext, LPVOID pvReserved, const IID *const riid, LPVOID *ppv);
extern HRESULT __attribute__((__stdcall__)) IEInstallScope(LPDWORD pdwScope);
extern HRESULT __attribute__((__stdcall__)) FaultInIEFeature(HWND hWnd, uCLSSPEC *pClassSpec, QUERYCONTEXT *pQuery, DWORD dwFlags);
extern HRESULT __attribute__((__stdcall__)) GetComponentIDFromCLSSPEC(uCLSSPEC *pClassspec, LPSTR *ppszComponentID);
extern HRESULT __attribute__((__stdcall__)) IsAsyncMoniker(IMoniker *pmk);
extern HRESULT __attribute__((__stdcall__)) CreateURLBinding(LPCWSTR lpszUrl, IBindCtx *pbc, IBinding **ppBdg);
extern HRESULT __attribute__((__stdcall__)) RegisterMediaTypes(UINT ctypes, const LPCSTR *rgszTypes, CLIPFORMAT *rgcfTypes);
extern HRESULT __attribute__((__stdcall__)) FindMediaType(LPCSTR rgszTypes, CLIPFORMAT *rgcfTypes);
extern HRESULT __attribute__((__stdcall__)) CreateFormatEnumerator(UINT cfmtetc, FORMATETC *rgfmtetc, IEnumFORMATETC **ppenumfmtetc);
extern HRESULT __attribute__((__stdcall__)) RegisterFormatEnumerator(LPBC pBC, IEnumFORMATETC *pEFetc, DWORD reserved);
extern HRESULT __attribute__((__stdcall__)) RevokeFormatEnumerator(LPBC pBC, IEnumFORMATETC *pEFetc);
extern HRESULT __attribute__((__stdcall__)) RegisterMediaTypeClass(LPBC pBC,UINT ctypes, const LPCSTR *rgszTypes, CLSID *rgclsID, DWORD reserved);
extern HRESULT __attribute__((__stdcall__)) FindMediaTypeClass(LPBC pBC, LPCSTR szType, CLSID *pclsID, DWORD reserved);
extern HRESULT __attribute__((__stdcall__)) UrlMkSetSessionOption(DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) UrlMkGetSessionOption(DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD *pdwBufferLengthOut, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) FindMimeFromData(LPBC pBC, LPCWSTR pwzUrl, LPVOID pBuffer, DWORD cbSize, LPCWSTR pwzMimeProposed, DWORD dwMimeFlags, LPWSTR *ppwzMimeOut, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) ObtainUserAgentString(DWORD dwOption, LPSTR pszUAOut, DWORD *cbSize);
extern HRESULT __attribute__((__stdcall__)) CompareSecurityIds(BYTE *pbSecurityId1, DWORD dwLen1, BYTE *pbSecurityId2, DWORD dwLen2, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) CompatFlagsFromClsid(CLSID *pclsid, LPDWORD pdwCompatFlags, LPDWORD pdwMiscStatusFlags);
typedef IPersistMoniker *LPPERSISTMONIKER;
extern const GUID IID_IPersistMoniker;
typedef struct IPersistMonikerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersistMoniker *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersistMoniker *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersistMoniker *This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersistMoniker *This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *IsDirty)(
IPersistMoniker *This);
HRESULT (__attribute__((__stdcall__)) *Load)(
IPersistMoniker *This,
WINBOOL fFullyAvailable,
IMoniker *pimkName,
LPBC pibc,
DWORD grfMode);
HRESULT (__attribute__((__stdcall__)) *Save)(
IPersistMoniker *This,
IMoniker *pimkName,
LPBC pbc,
WINBOOL fRemember);
HRESULT (__attribute__((__stdcall__)) *SaveCompleted)(
IPersistMoniker *This,
IMoniker *pimkName,
LPBC pibc);
HRESULT (__attribute__((__stdcall__)) *GetCurMoniker)(
IPersistMoniker *This,
IMoniker **ppimkName);
} IPersistMonikerVtbl;
struct IPersistMoniker {
IPersistMonikerVtbl* lpVtbl;
};
typedef IMonikerProp *LPMONIKERPROP;
typedef enum __WIDL_urlmon_generated_name_00000002 {
MIMETYPEPROP = 0x0,
USE_SRC_URL = 0x1,
CLASSIDPROP = 0x2,
TRUSTEDDOWNLOADPROP = 0x3,
POPUPLEVELPROP = 0x4
} MONIKERPROPERTY;
extern const GUID IID_IMonikerProp;
typedef struct IMonikerPropVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IMonikerProp *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IMonikerProp *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IMonikerProp *This);
HRESULT (__attribute__((__stdcall__)) *PutProperty)(
IMonikerProp *This,
MONIKERPROPERTY mkp,
LPCWSTR val);
} IMonikerPropVtbl;
struct IMonikerProp {
IMonikerPropVtbl* lpVtbl;
};
typedef IBindProtocol *LPBINDPROTOCOL;
extern const GUID IID_IBindProtocol;
typedef struct IBindProtocolVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IBindProtocol *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IBindProtocol *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IBindProtocol *This);
HRESULT (__attribute__((__stdcall__)) *CreateBinding)(
IBindProtocol *This,
LPCWSTR szUrl,
IBindCtx *pbc,
IBinding **ppb);
} IBindProtocolVtbl;
struct IBindProtocol {
IBindProtocolVtbl* lpVtbl;
};
typedef IBinding *LPBINDING;
extern const GUID IID_IBinding;
typedef struct IBindingVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IBinding *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IBinding *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IBinding *This);
HRESULT (__attribute__((__stdcall__)) *Abort)(
IBinding *This);
HRESULT (__attribute__((__stdcall__)) *Suspend)(
IBinding *This);
HRESULT (__attribute__((__stdcall__)) *Resume)(
IBinding *This);
HRESULT (__attribute__((__stdcall__)) *SetPriority)(
IBinding *This,
LONG nPriority);
HRESULT (__attribute__((__stdcall__)) *GetPriority)(
IBinding *This,
LONG *pnPriority);
HRESULT (__attribute__((__stdcall__)) *GetBindResult)(
IBinding *This,
CLSID *pclsidProtocol,
DWORD *pdwResult,
LPOLESTR *pszResult,
DWORD *pdwReserved);
} IBindingVtbl;
struct IBinding {
IBindingVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IBinding_RemoteGetBindResult_Proxy(
IBinding* This,
CLSID *pclsidProtocol,
DWORD *pdwResult,
LPOLESTR *pszResult,
DWORD dwReserved);
void __attribute__((__stdcall__)) IBinding_RemoteGetBindResult_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBinding_GetBindResult_Proxy(
IBinding* This,
CLSID *pclsidProtocol,
DWORD *pdwResult,
LPOLESTR *pszResult,
DWORD *pdwReserved);
HRESULT __attribute__((__stdcall__)) IBinding_GetBindResult_Stub(
IBinding* This,
CLSID *pclsidProtocol,
DWORD *pdwResult,
LPOLESTR *pszResult,
DWORD dwReserved);
typedef IBindStatusCallback *LPBINDSTATUSCALLBACK;
typedef enum __WIDL_urlmon_generated_name_00000003 {
BINDVERB_GET = 0x0,
BINDVERB_POST = 0x1,
BINDVERB_PUT = 0x2,
BINDVERB_CUSTOM = 0x3,
BINDVERB_RESERVED1 = 0x4
} BINDVERB;
typedef enum __WIDL_urlmon_generated_name_00000004 {
BINDINFOF_URLENCODESTGMEDDATA = 0x1,
BINDINFOF_URLENCODEDEXTRAINFO = 0x2
} BINDINFOF;
typedef enum __WIDL_urlmon_generated_name_00000005 {
BINDF_ASYNCHRONOUS = 0x1,
BINDF_ASYNCSTORAGE = 0x2,
BINDF_NOPROGRESSIVERENDERING = 0x4,
BINDF_OFFLINEOPERATION = 0x8,
BINDF_GETNEWESTVERSION = 0x10,
BINDF_NOWRITECACHE = 0x20,
BINDF_NEEDFILE = 0x40,
BINDF_PULLDATA = 0x80,
BINDF_IGNORESECURITYPROBLEM = 0x100,
BINDF_RESYNCHRONIZE = 0x200,
BINDF_HYPERLINK = 0x400,
BINDF_NO_UI = 0x800,
BINDF_SILENTOPERATION = 0x1000,
BINDF_PRAGMA_NO_CACHE = 0x2000,
BINDF_GETCLASSOBJECT = 0x4000,
BINDF_RESERVED_1 = 0x8000,
BINDF_FREE_THREADED = 0x10000,
BINDF_DIRECT_READ = 0x20000,
BINDF_FORMS_SUBMIT = 0x40000,
BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
BINDF_FROMURLMON = 0x100000,
BINDF_FWD_BACK = 0x200000,
BINDF_PREFERDEFAULTHANDLER = 0x400000,
BINDF_ENFORCERESTRICTED = 0x800000,
BINDF_RESERVED_2 = 0x80000000,
BINDF_RESERVED_3 = 0x1000000,
BINDF_RESERVED_4 = 0x2000000,
BINDF_RESERVED_5 = 0x4000000,
BINDF_RESERVED_6 = 0x8000000,
BINDF_RESERVED_7 = 0x40000000,
BINDF_RESERVED_8 = 0x20000000
} BINDF;
typedef enum __WIDL_urlmon_generated_name_00000006 {
URL_ENCODING_NONE = 0x0,
URL_ENCODING_ENABLE_UTF8 = 0x10000000,
URL_ENCODING_DISABLE_UTF8 = 0x20000000
} URL_ENCODING;
typedef struct _tagBINDINFO {
ULONG cbSize;
LPWSTR szExtraInfo;
STGMEDIUM stgmedData;
DWORD grfBindInfoF;
DWORD dwBindVerb;
LPWSTR szCustomVerb;
DWORD cbstgmedData;
DWORD dwOptions;
DWORD dwOptionsFlags;
DWORD dwCodePage;
SECURITY_ATTRIBUTES securityAttributes;
IID iid;
IUnknown *pUnk;
DWORD dwReserved;
} BINDINFO;
typedef struct _REMSECURITY_ATTRIBUTES {
DWORD nLength;
DWORD lpSecurityDescriptor;
WINBOOL bInheritHandle;
} REMSECURITY_ATTRIBUTES;
typedef struct _REMSECURITY_ATTRIBUTES *PREMSECURITY_ATTRIBUTES;
typedef struct _REMSECURITY_ATTRIBUTES *LPREMSECURITY_ATTRIBUTES;
typedef struct _tagRemBINDINFO {
ULONG cbSize;
LPWSTR szExtraInfo;
DWORD grfBindInfoF;
DWORD dwBindVerb;
LPWSTR szCustomVerb;
DWORD cbstgmedData;
DWORD dwOptions;
DWORD dwOptionsFlags;
DWORD dwCodePage;
REMSECURITY_ATTRIBUTES securityAttributes;
IID iid;
IUnknown *pUnk;
DWORD dwReserved;
} RemBINDINFO;
typedef struct tagRemFORMATETC {
DWORD cfFormat;
DWORD ptd;
DWORD dwAspect;
LONG lindex;
DWORD tymed;
} RemFORMATETC;
typedef struct tagRemFORMATETC *LPREMFORMATETC;
typedef enum __WIDL_urlmon_generated_name_00000007 {
BINDINFO_OPTIONS_WININETFLAG = 0x10000,
BINDINFO_OPTIONS_ENABLE_UTF8 = 0x20000,
BINDINFO_OPTIONS_DISABLE_UTF8 = 0x40000,
BINDINFO_OPTIONS_USE_IE_ENCODING = 0x80000,
BINDINFO_OPTIONS_BINDTOOBJECT = 0x100000,
BINDINFO_OPTIONS_SECURITYOPTOUT = 0x200000,
BINDINFO_OPTIONS_IGNOREMIMETEXTPLAIN = 0x400000,
BINDINFO_OPTIONS_USEBINDSTRINGCREDS = 0x800000,
BINDINFO_OPTIONS_IGNOREHTTPHTTPSREDIRECTS = 0x1000000,
BINDINFO_OPTIONS_IGNORE_SSLERRORS_ONCE = 0x2000000,
BINDINFO_WPC_DOWNLOADBLOCKED = 0x8000000,
BINDINFO_WPC_LOGGING_ENABLED = 0x10000000,
BINDINFO_OPTIONS_ALLOWCONNECTDATA = 0x20000000,
BINDINFO_OPTIONS_DISABLEAUTOREDIRECTS = 0x40000000,
BINDINFO_OPTIONS_SHDOCVW_NAVIGATE = (int)0x80000000
} BINDINFO_OPTIONS;
typedef enum __WIDL_urlmon_generated_name_00000008 {
BSCF_FIRSTDATANOTIFICATION = 0x1,
BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
BSCF_LASTDATANOTIFICATION = 0x4,
BSCF_DATAFULLYAVAILABLE = 0x8,
BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10,
BSCF_SKIPDRAINDATAFORFILEURLS = 0x20,
BSCF_64BITLENGTHDOWNLOAD = 0x40
} BSCF;
typedef enum tagBINDSTATUS {
BINDSTATUS_FINDINGRESOURCE = 1,
BINDSTATUS_CONNECTING = 2,
BINDSTATUS_REDIRECTING = 3,
BINDSTATUS_BEGINDOWNLOADDATA = 4,
BINDSTATUS_DOWNLOADINGDATA = 5,
BINDSTATUS_ENDDOWNLOADDATA = 6,
BINDSTATUS_BEGINDOWNLOADCOMPONENTS = 7,
BINDSTATUS_INSTALLINGCOMPONENTS = 8,
BINDSTATUS_ENDDOWNLOADCOMPONENTS = 9,
BINDSTATUS_USINGCACHEDCOPY = 10,
BINDSTATUS_SENDINGREQUEST = 11,
BINDSTATUS_CLASSIDAVAILABLE = 12,
BINDSTATUS_MIMETYPEAVAILABLE = 13,
BINDSTATUS_CACHEFILENAMEAVAILABLE = 14,
BINDSTATUS_BEGINSYNCOPERATION = 15,
BINDSTATUS_ENDSYNCOPERATION = 16,
BINDSTATUS_BEGINUPLOADDATA = 17,
BINDSTATUS_UPLOADINGDATA = 18,
BINDSTATUS_ENDUPLOADDATA = 19,
BINDSTATUS_PROTOCOLCLASSID = 20,
BINDSTATUS_ENCODING = 21,
BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE = 22,
BINDSTATUS_CLASSINSTALLLOCATION = 23,
BINDSTATUS_DECODING = 24,
BINDSTATUS_LOADINGMIMEHANDLER = 25,
BINDSTATUS_CONTENTDISPOSITIONATTACH = 26,
BINDSTATUS_FILTERREPORTMIMETYPE = 27,
BINDSTATUS_CLSIDCANINSTANTIATE = 28,
BINDSTATUS_IUNKNOWNAVAILABLE = 29,
BINDSTATUS_DIRECTBIND = 30,
BINDSTATUS_RAWMIMETYPE = 31,
BINDSTATUS_PROXYDETECTING = 32,
BINDSTATUS_ACCEPTRANGES = 33,
BINDSTATUS_COOKIE_SENT = 34,
BINDSTATUS_COMPACT_POLICY_RECEIVED = 35,
BINDSTATUS_COOKIE_SUPPRESSED = 36,
BINDSTATUS_COOKIE_STATE_UNKNOWN = 37,
BINDSTATUS_COOKIE_STATE_ACCEPT = 38,
BINDSTATUS_COOKIE_STATE_REJECT = 39,
BINDSTATUS_COOKIE_STATE_PROMPT = 40,
BINDSTATUS_COOKIE_STATE_LEASH = 41,
BINDSTATUS_COOKIE_STATE_DOWNGRADE = 42,
BINDSTATUS_POLICY_HREF = 43,
BINDSTATUS_P3P_HEADER = 44,
BINDSTATUS_SESSION_COOKIE_RECEIVED = 45,
BINDSTATUS_PERSISTENT_COOKIE_RECEIVED = 46,
BINDSTATUS_SESSION_COOKIES_ALLOWED = 47,
BINDSTATUS_CACHECONTROL = 48,
BINDSTATUS_CONTENTDISPOSITIONFILENAME = 49,
BINDSTATUS_MIMETEXTPLAINMISMATCH = 50,
BINDSTATUS_PUBLISHERAVAILABLE = 51,
BINDSTATUS_DISPLAYNAMEAVAILABLE = 52,
BINDSTATUS_SSLUX_NAVBLOCKED = 53,
BINDSTATUS_SERVER_MIMETYPEAVAILABLE = 54,
BINDSTATUS_SNIFFED_CLASSIDAVAILABLE = 55,
BINDSTATUS_64BIT_PROGRESS = 56,
BINDSTATUS_LAST = BINDSTATUS_64BIT_PROGRESS,
BINDSTATUS_RESERVED_0 = 57,
BINDSTATUS_RESERVED_1 = 58,
BINDSTATUS_RESERVED_2 = 59,
BINDSTATUS_RESERVED_3 = 60,
BINDSTATUS_RESERVED_4 = 61,
BINDSTATUS_RESERVED_5 = 62,
BINDSTATUS_RESERVED_6 = 63,
BINDSTATUS_RESERVED_7 = 64,
BINDSTATUS_RESERVED_8 = 65,
BINDSTATUS_RESERVED_9 = 66,
BINDSTATUS_LAST_PRIVATE = BINDSTATUS_RESERVED_9
} BINDSTATUS;
extern const GUID IID_IBindStatusCallback;
typedef struct IBindStatusCallbackVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IBindStatusCallback *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IBindStatusCallback *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IBindStatusCallback *This);
HRESULT (__attribute__((__stdcall__)) *OnStartBinding)(
IBindStatusCallback *This,
DWORD dwReserved,
IBinding *pib);
HRESULT (__attribute__((__stdcall__)) *GetPriority)(
IBindStatusCallback *This,
LONG *pnPriority);
HRESULT (__attribute__((__stdcall__)) *OnLowResource)(
IBindStatusCallback *This,
DWORD reserved);
HRESULT (__attribute__((__stdcall__)) *OnProgress)(
IBindStatusCallback *This,
ULONG ulProgress,
ULONG ulProgressMax,
ULONG ulStatusCode,
LPCWSTR szStatusText);
HRESULT (__attribute__((__stdcall__)) *OnStopBinding)(
IBindStatusCallback *This,
HRESULT hresult,
LPCWSTR szError);
HRESULT (__attribute__((__stdcall__)) *GetBindInfo)(
IBindStatusCallback *This,
DWORD *grfBINDF,
BINDINFO *pbindinfo);
HRESULT (__attribute__((__stdcall__)) *OnDataAvailable)(
IBindStatusCallback *This,
DWORD grfBSCF,
DWORD dwSize,
FORMATETC *pformatetc,
STGMEDIUM *pstgmed);
HRESULT (__attribute__((__stdcall__)) *OnObjectAvailable)(
IBindStatusCallback *This,
const IID *const riid,
IUnknown *punk);
} IBindStatusCallbackVtbl;
struct IBindStatusCallback {
IBindStatusCallbackVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IBindStatusCallback_RemoteGetBindInfo_Proxy(
IBindStatusCallback* This,
DWORD *grfBINDF,
RemBINDINFO *pbindinfo,
RemSTGMEDIUM *pstgmed);
void __attribute__((__stdcall__)) IBindStatusCallback_RemoteGetBindInfo_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindStatusCallback_RemoteOnDataAvailable_Proxy(
IBindStatusCallback* This,
DWORD grfBSCF,
DWORD dwSize,
RemFORMATETC *pformatetc,
RemSTGMEDIUM *pstgmed);
void __attribute__((__stdcall__)) IBindStatusCallback_RemoteOnDataAvailable_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindStatusCallback_GetBindInfo_Proxy(
IBindStatusCallback* This,
DWORD *grfBINDF,
BINDINFO *pbindinfo);
HRESULT __attribute__((__stdcall__)) IBindStatusCallback_GetBindInfo_Stub(
IBindStatusCallback* This,
DWORD *grfBINDF,
RemBINDINFO *pbindinfo,
RemSTGMEDIUM *pstgmed);
HRESULT __attribute__((__stdcall__)) IBindStatusCallback_OnDataAvailable_Proxy(
IBindStatusCallback* This,
DWORD grfBSCF,
DWORD dwSize,
FORMATETC *pformatetc,
STGMEDIUM *pstgmed);
HRESULT __attribute__((__stdcall__)) IBindStatusCallback_OnDataAvailable_Stub(
IBindStatusCallback* This,
DWORD grfBSCF,
DWORD dwSize,
RemFORMATETC *pformatetc,
RemSTGMEDIUM *pstgmed);
typedef IBindStatusCallbackEx *LPBINDSTATUSCALLBACKEX;
typedef enum __WIDL_urlmon_generated_name_00000009 {
BINDF2_DISABLEBASICOVERHTTP = 0x1,
BINDF2_DISABLEAUTOCOOKIEHANDLING = 0x2,
BINDF2_READ_DATA_GREATER_THAN_4GB = 0x4,
BINDF2_DISABLE_HTTP_REDIRECT_XSECURITYID = 0x8,
BINDF2_SETDOWNLOADMODE = 0x20,
BINDF2_DISABLE_HTTP_REDIRECT_CACHING = 0x40,
BINDF2_KEEP_CALLBACK_MODULE_LOADED = 0x80,
BINDF2_ALLOW_PROXY_CRED_PROMPT = 0x100,
BINDF2_RESERVED_F = 0x20000,
BINDF2_RESERVED_E = 0x40000,
BINDF2_RESERVED_D = 0x80000,
BINDF2_RESERVED_C = 0x100000,
BINDF2_RESERVED_B = 0x200000,
BINDF2_RESERVED_A = 0x400000,
BINDF2_RESERVED_9 = 0x800000,
BINDF2_RESERVED_8 = 0x1000000,
BINDF2_RESERVED_7 = 0x2000000,
BINDF2_RESERVED_6 = 0x4000000,
BINDF2_RESERVED_5 = 0x8000000,
BINDF2_RESERVED_4 = 0x10000000,
BINDF2_RESERVED_3 = 0x20000000,
BINDF2_RESERVED_2 = 0x40000000,
BINDF2_RESERVED_1 = 0x80000000
} BINDF2;
extern const GUID IID_IBindStatusCallbackEx;
typedef struct IBindStatusCallbackExVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IBindStatusCallbackEx *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IBindStatusCallbackEx *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IBindStatusCallbackEx *This);
HRESULT (__attribute__((__stdcall__)) *OnStartBinding)(
IBindStatusCallbackEx *This,
DWORD dwReserved,
IBinding *pib);
HRESULT (__attribute__((__stdcall__)) *GetPriority)(
IBindStatusCallbackEx *This,
LONG *pnPriority);
HRESULT (__attribute__((__stdcall__)) *OnLowResource)(
IBindStatusCallbackEx *This,
DWORD reserved);
HRESULT (__attribute__((__stdcall__)) *OnProgress)(
IBindStatusCallbackEx *This,
ULONG ulProgress,
ULONG ulProgressMax,
ULONG ulStatusCode,
LPCWSTR szStatusText);
HRESULT (__attribute__((__stdcall__)) *OnStopBinding)(
IBindStatusCallbackEx *This,
HRESULT hresult,
LPCWSTR szError);
HRESULT (__attribute__((__stdcall__)) *GetBindInfo)(
IBindStatusCallbackEx *This,
DWORD *grfBINDF,
BINDINFO *pbindinfo);
HRESULT (__attribute__((__stdcall__)) *OnDataAvailable)(
IBindStatusCallbackEx *This,
DWORD grfBSCF,
DWORD dwSize,
FORMATETC *pformatetc,
STGMEDIUM *pstgmed);
HRESULT (__attribute__((__stdcall__)) *OnObjectAvailable)(
IBindStatusCallbackEx *This,
const IID *const riid,
IUnknown *punk);
HRESULT (__attribute__((__stdcall__)) *GetBindInfoEx)(
IBindStatusCallbackEx *This,
DWORD *grfBINDF,
BINDINFO *pbindinfo,
DWORD *grfBINDF2,
DWORD *pdwReserved);
} IBindStatusCallbackExVtbl;
struct IBindStatusCallbackEx {
IBindStatusCallbackExVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IBindStatusCallbackEx_RemoteGetBindInfoEx_Proxy(
IBindStatusCallbackEx* This,
DWORD *grfBINDF,
RemBINDINFO *pbindinfo,
RemSTGMEDIUM *pstgmed,
DWORD *grfBINDF2,
DWORD *pdwReserved);
void __attribute__((__stdcall__)) IBindStatusCallbackEx_RemoteGetBindInfoEx_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindStatusCallbackEx_GetBindInfoEx_Proxy(
IBindStatusCallbackEx* This,
DWORD *grfBINDF,
BINDINFO *pbindinfo,
DWORD *grfBINDF2,
DWORD *pdwReserved);
HRESULT __attribute__((__stdcall__)) IBindStatusCallbackEx_GetBindInfoEx_Stub(
IBindStatusCallbackEx* This,
DWORD *grfBINDF,
RemBINDINFO *pbindinfo,
RemSTGMEDIUM *pstgmed,
DWORD *grfBINDF2,
DWORD *pdwReserved);
typedef IAuthenticate *LPAUTHENTICATION;
extern const GUID IID_IAuthenticate;
typedef struct IAuthenticateVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAuthenticate *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAuthenticate *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAuthenticate *This);
HRESULT (__attribute__((__stdcall__)) *Authenticate)(
IAuthenticate *This,
HWND *phwnd,
LPWSTR *pszUsername,
LPWSTR *pszPassword);
} IAuthenticateVtbl;
struct IAuthenticate {
IAuthenticateVtbl* lpVtbl;
};
typedef IAuthenticateEx *LPAUTHENTICATIONEX;
typedef enum __WIDL_urlmon_generated_name_0000000A {
AUTHENTICATEF_PROXY = 0x1,
AUTHENTICATEF_BASIC = 0x2,
AUTHENTICATEF_HTTP = 0x4
} AUTHENTICATEF;
typedef struct _tagAUTHENTICATEINFO {
DWORD dwFlags;
DWORD dwReserved;
} AUTHENTICATEINFO;
extern const GUID IID_IAuthenticateEx;
typedef struct IAuthenticateExVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAuthenticateEx *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAuthenticateEx *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAuthenticateEx *This);
HRESULT (__attribute__((__stdcall__)) *Authenticate)(
IAuthenticateEx *This,
HWND *phwnd,
LPWSTR *pszUsername,
LPWSTR *pszPassword);
HRESULT (__attribute__((__stdcall__)) *AuthenticateEx)(
IAuthenticateEx *This,
HWND *phwnd,
LPWSTR *pszUsername,
LPWSTR *pszPassword,
AUTHENTICATEINFO *pauthinfo);
} IAuthenticateExVtbl;
struct IAuthenticateEx {
IAuthenticateExVtbl* lpVtbl;
};
typedef IHttpNegotiate *LPHTTPNEGOTIATE;
extern const GUID IID_IHttpNegotiate;
typedef struct IHttpNegotiateVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IHttpNegotiate *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IHttpNegotiate *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IHttpNegotiate *This);
HRESULT (__attribute__((__stdcall__)) *BeginningTransaction)(
IHttpNegotiate *This,
LPCWSTR szURL,
LPCWSTR szHeaders,
DWORD dwReserved,
LPWSTR *pszAdditionalHeaders);
HRESULT (__attribute__((__stdcall__)) *OnResponse)(
IHttpNegotiate *This,
DWORD dwResponseCode,
LPCWSTR szResponseHeaders,
LPCWSTR szRequestHeaders,
LPWSTR *pszAdditionalRequestHeaders);
} IHttpNegotiateVtbl;
struct IHttpNegotiate {
IHttpNegotiateVtbl* lpVtbl;
};
typedef IHttpNegotiate2 *LPHTTPNEGOTIATE2;
extern const GUID IID_IHttpNegotiate2;
typedef struct IHttpNegotiate2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IHttpNegotiate2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IHttpNegotiate2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IHttpNegotiate2 *This);
HRESULT (__attribute__((__stdcall__)) *BeginningTransaction)(
IHttpNegotiate2 *This,
LPCWSTR szURL,
LPCWSTR szHeaders,
DWORD dwReserved,
LPWSTR *pszAdditionalHeaders);
HRESULT (__attribute__((__stdcall__)) *OnResponse)(
IHttpNegotiate2 *This,
DWORD dwResponseCode,
LPCWSTR szResponseHeaders,
LPCWSTR szRequestHeaders,
LPWSTR *pszAdditionalRequestHeaders);
HRESULT (__attribute__((__stdcall__)) *GetRootSecurityId)(
IHttpNegotiate2 *This,
BYTE *pbSecurityId,
DWORD *pcbSecurityId,
DWORD_PTR dwReserved);
} IHttpNegotiate2Vtbl;
struct IHttpNegotiate2 {
IHttpNegotiate2Vtbl* lpVtbl;
};
typedef IHttpNegotiate3 *LPHTTPNEGOTIATE3;
extern const GUID IID_IHttpNegotiate3;
typedef struct IHttpNegotiate3Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IHttpNegotiate3 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IHttpNegotiate3 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IHttpNegotiate3 *This);
HRESULT (__attribute__((__stdcall__)) *BeginningTransaction)(
IHttpNegotiate3 *This,
LPCWSTR szURL,
LPCWSTR szHeaders,
DWORD dwReserved,
LPWSTR *pszAdditionalHeaders);
HRESULT (__attribute__((__stdcall__)) *OnResponse)(
IHttpNegotiate3 *This,
DWORD dwResponseCode,
LPCWSTR szResponseHeaders,
LPCWSTR szRequestHeaders,
LPWSTR *pszAdditionalRequestHeaders);
HRESULT (__attribute__((__stdcall__)) *GetRootSecurityId)(
IHttpNegotiate3 *This,
BYTE *pbSecurityId,
DWORD *pcbSecurityId,
DWORD_PTR dwReserved);
HRESULT (__attribute__((__stdcall__)) *GetSerializedClientCertContext)(
IHttpNegotiate3 *This,
BYTE **ppbCert,
DWORD *pcbCert);
} IHttpNegotiate3Vtbl;
struct IHttpNegotiate3 {
IHttpNegotiate3Vtbl* lpVtbl;
};
typedef IWinInetFileStream *LPWININETFILESTREAM;
extern const GUID IID_IWinInetFileStream;
typedef struct IWinInetFileStreamVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IWinInetFileStream *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IWinInetFileStream *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IWinInetFileStream *This);
HRESULT (__attribute__((__stdcall__)) *SetHandleForUnlock)(
IWinInetFileStream *This,
DWORD_PTR hWinInetLockHandle,
DWORD_PTR dwReserved);
HRESULT (__attribute__((__stdcall__)) *SetDeleteFile)(
IWinInetFileStream *This,
DWORD_PTR dwReserved);
} IWinInetFileStreamVtbl;
struct IWinInetFileStream {
IWinInetFileStreamVtbl* lpVtbl;
};
typedef IWindowForBindingUI *LPWINDOWFORBINDINGUI;
extern const GUID IID_IWindowForBindingUI;
typedef struct IWindowForBindingUIVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IWindowForBindingUI *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IWindowForBindingUI *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IWindowForBindingUI *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IWindowForBindingUI *This,
const GUID *const rguidReason,
HWND *phwnd);
} IWindowForBindingUIVtbl;
struct IWindowForBindingUI {
IWindowForBindingUIVtbl* lpVtbl;
};
typedef ICodeInstall *LPCODEINSTALL;
typedef enum __WIDL_urlmon_generated_name_0000000B {
CIP_DISK_FULL = 0,
CIP_ACCESS_DENIED = 1,
CIP_NEWER_VERSION_EXISTS = 2,
CIP_OLDER_VERSION_EXISTS = 3,
CIP_NAME_CONFLICT = 4,
CIP_TRUST_VERIFICATION_COMPONENT_MISSING = 5,
CIP_EXE_SELF_REGISTERATION_TIMEOUT = 6,
CIP_UNSAFE_TO_ABORT = 7,
CIP_NEED_REBOOT = 8,
CIP_NEED_REBOOT_UI_PERMISSION = 9
} CIP_STATUS;
extern const GUID IID_ICodeInstall;
typedef struct ICodeInstallVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICodeInstall *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICodeInstall *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICodeInstall *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
ICodeInstall *This,
const GUID *const rguidReason,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *OnCodeInstallProblem)(
ICodeInstall *This,
ULONG ulStatusCode,
LPCWSTR szDestination,
LPCWSTR szSource,
DWORD dwReserved);
} ICodeInstallVtbl;
struct ICodeInstall {
ICodeInstallVtbl* lpVtbl;
};
typedef IWinInetInfo *LPWININETINFO;
extern const GUID IID_IWinInetInfo;
typedef struct IWinInetInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IWinInetInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IWinInetInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IWinInetInfo *This);
HRESULT (__attribute__((__stdcall__)) *QueryOption)(
IWinInetInfo *This,
DWORD dwOption,
LPVOID pBuffer,
DWORD *pcbBuf);
} IWinInetInfoVtbl;
struct IWinInetInfo {
IWinInetInfoVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IWinInetInfo_RemoteQueryOption_Proxy(
IWinInetInfo* This,
DWORD dwOption,
BYTE *pBuffer,
DWORD *pcbBuf);
void __attribute__((__stdcall__)) IWinInetInfo_RemoteQueryOption_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IWinInetInfo_QueryOption_Proxy(
IWinInetInfo* This,
DWORD dwOption,
LPVOID pBuffer,
DWORD *pcbBuf);
HRESULT __attribute__((__stdcall__)) IWinInetInfo_QueryOption_Stub(
IWinInetInfo* This,
DWORD dwOption,
BYTE *pBuffer,
DWORD *pcbBuf);
typedef IHttpSecurity *LPHTTPSECURITY;
extern const GUID IID_IHttpSecurity;
typedef struct IHttpSecurityVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IHttpSecurity *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IHttpSecurity *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IHttpSecurity *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IHttpSecurity *This,
const GUID *const rguidReason,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *OnSecurityProblem)(
IHttpSecurity *This,
DWORD dwProblem);
} IHttpSecurityVtbl;
struct IHttpSecurity {
IHttpSecurityVtbl* lpVtbl;
};
typedef IWinInetHttpInfo *LPWININETHTTPINFO;
extern const GUID IID_IWinInetHttpInfo;
typedef struct IWinInetHttpInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IWinInetHttpInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IWinInetHttpInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IWinInetHttpInfo *This);
HRESULT (__attribute__((__stdcall__)) *QueryOption)(
IWinInetHttpInfo *This,
DWORD dwOption,
LPVOID pBuffer,
DWORD *pcbBuf);
HRESULT (__attribute__((__stdcall__)) *QueryInfo)(
IWinInetHttpInfo *This,
DWORD dwOption,
LPVOID pBuffer,
DWORD *pcbBuf,
DWORD *pdwFlags,
DWORD *pdwReserved);
} IWinInetHttpInfoVtbl;
struct IWinInetHttpInfo {
IWinInetHttpInfoVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IWinInetHttpInfo_RemoteQueryInfo_Proxy(
IWinInetHttpInfo* This,
DWORD dwOption,
BYTE *pBuffer,
DWORD *pcbBuf,
DWORD *pdwFlags,
DWORD *pdwReserved);
void __attribute__((__stdcall__)) IWinInetHttpInfo_RemoteQueryInfo_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IWinInetHttpInfo_QueryInfo_Proxy(
IWinInetHttpInfo* This,
DWORD dwOption,
LPVOID pBuffer,
DWORD *pcbBuf,
DWORD *pdwFlags,
DWORD *pdwReserved);
HRESULT __attribute__((__stdcall__)) IWinInetHttpInfo_QueryInfo_Stub(
IWinInetHttpInfo* This,
DWORD dwOption,
BYTE *pBuffer,
DWORD *pcbBuf,
DWORD *pdwFlags,
DWORD *pdwReserved);
extern const GUID IID_IWinInetHttpTimeouts;
typedef struct IWinInetHttpTimeoutsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IWinInetHttpTimeouts *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IWinInetHttpTimeouts *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IWinInetHttpTimeouts *This);
HRESULT (__attribute__((__stdcall__)) *GetRequestTimeouts)(
IWinInetHttpTimeouts *This,
DWORD *pdwConnectTimeout,
DWORD *pdwSendTimeout,
DWORD *pdwReceiveTimeout);
} IWinInetHttpTimeoutsVtbl;
struct IWinInetHttpTimeouts {
IWinInetHttpTimeoutsVtbl* lpVtbl;
};
extern const GUID SID_BindHost;
typedef IBindHost *LPBINDHOST;
extern const GUID IID_IBindHost;
typedef struct IBindHostVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IBindHost *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IBindHost *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IBindHost *This);
HRESULT (__attribute__((__stdcall__)) *CreateMoniker)(
IBindHost *This,
LPOLESTR szName,
IBindCtx *pBC,
IMoniker **ppmk,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *MonikerBindToStorage)(
IBindHost *This,
IMoniker *pMk,
IBindCtx *pBC,
IBindStatusCallback *pBSC,
const IID *const riid,
void **ppvObj);
HRESULT (__attribute__((__stdcall__)) *MonikerBindToObject)(
IBindHost *This,
IMoniker *pMk,
IBindCtx *pBC,
IBindStatusCallback *pBSC,
const IID *const riid,
void **ppvObj);
} IBindHostVtbl;
struct IBindHost {
IBindHostVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IBindHost_RemoteMonikerBindToStorage_Proxy(
IBindHost* This,
IMoniker *pMk,
IBindCtx *pBC,
IBindStatusCallback *pBSC,
const IID *const riid,
IUnknown **ppvObj);
void __attribute__((__stdcall__)) IBindHost_RemoteMonikerBindToStorage_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindHost_RemoteMonikerBindToObject_Proxy(
IBindHost* This,
IMoniker *pMk,
IBindCtx *pBC,
IBindStatusCallback *pBSC,
const IID *const riid,
IUnknown **ppvObj);
void __attribute__((__stdcall__)) IBindHost_RemoteMonikerBindToObject_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IBindHost_MonikerBindToStorage_Proxy(
IBindHost* This,
IMoniker *pMk,
IBindCtx *pBC,
IBindStatusCallback *pBSC,
const IID *const riid,
void **ppvObj);
HRESULT __attribute__((__stdcall__)) IBindHost_MonikerBindToStorage_Stub(
IBindHost* This,
IMoniker *pMk,
IBindCtx *pBC,
IBindStatusCallback *pBSC,
const IID *const riid,
IUnknown **ppvObj);
HRESULT __attribute__((__stdcall__)) IBindHost_MonikerBindToObject_Proxy(
IBindHost* This,
IMoniker *pMk,
IBindCtx *pBC,
IBindStatusCallback *pBSC,
const IID *const riid,
void **ppvObj);
HRESULT __attribute__((__stdcall__)) IBindHost_MonikerBindToObject_Stub(
IBindHost* This,
IMoniker *pMk,
IBindCtx *pBC,
IBindStatusCallback *pBSC,
const IID *const riid,
IUnknown **ppvObj);
struct IBindStatusCallback;
extern HRESULT __attribute__((__stdcall__)) HlinkSimpleNavigateToString(LPCWSTR szTarget, LPCWSTR szLocation, LPCWSTR szTargetFrameName, IUnknown *pUnk, IBindCtx *pbc, IBindStatusCallback *, DWORD grfHLNF, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) HlinkSimpleNavigateToMoniker(IMoniker *pmkTarget, LPCWSTR szLocation, LPCWSTR szTargetFrameName, IUnknown *pUnk, IBindCtx *pbc, IBindStatusCallback *, DWORD grfHLNF, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) URLOpenStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLOpenStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLOpenPullStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLOpenPullStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLDownloadToFileA(LPUNKNOWN,LPCSTR,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLDownloadToFileW(LPUNKNOWN,LPCWSTR,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLDownloadToCacheFileA(LPUNKNOWN, LPCSTR, LPSTR, DWORD, DWORD, LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLDownloadToCacheFileW(LPUNKNOWN, LPCWSTR, LPWSTR, DWORD, DWORD, LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLOpenBlockingStreamA(LPUNKNOWN,LPCSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) URLOpenBlockingStreamW(LPUNKNOWN,LPCWSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);
extern HRESULT __attribute__((__stdcall__)) HlinkGoBack(IUnknown *pUnk);
extern HRESULT __attribute__((__stdcall__)) HlinkGoForward(IUnknown *pUnk);
extern HRESULT __attribute__((__stdcall__)) HlinkNavigateString(IUnknown *pUnk, LPCWSTR szTarget);
extern HRESULT __attribute__((__stdcall__)) HlinkNavigateMoniker(IUnknown *pUnk, IMoniker *pmkTarget);
typedef IInternet *LPIINTERNET;
extern const GUID IID_IInternet;
typedef struct IInternetVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternet *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternet *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternet *This);
} IInternetVtbl;
struct IInternet {
IInternetVtbl* lpVtbl;
};
typedef IInternetBindInfo *LPIINTERNETBINDINFO;
typedef enum tagBINDSTRING {
BINDSTRING_HEADERS = 1,
BINDSTRING_ACCEPT_MIMES = 2,
BINDSTRING_EXTRA_URL = 3,
BINDSTRING_LANGUAGE = 4,
BINDSTRING_USERNAME = 5,
BINDSTRING_PASSWORD = 6,
BINDSTRING_UA_PIXELS = 7,
BINDSTRING_UA_COLOR = 8,
BINDSTRING_OS = 9,
BINDSTRING_USER_AGENT = 10,
BINDSTRING_ACCEPT_ENCODINGS = 11,
BINDSTRING_POST_COOKIE = 12,
BINDSTRING_POST_DATA_MIME = 13,
BINDSTRING_URL = 14,
BINDSTRING_IID = 15,
BINDSTRING_FLAG_BIND_TO_OBJECT = 16,
BINDSTRING_PTR_BIND_CONTEXT = 17,
BINDSTRING_XDR_ORIGIN = 18,
BINDSTRING_DOWNLOADPATH = 19,
BINDSTRING_ROOTDOC_URL = 20,
BINDSTRING_INITIAL_FILENAME = 21,
BINDSTRING_PROXY_USERNAME = 22,
BINDSTRING_PROXY_PASSWORD = 23
} BINDSTRING;
extern const GUID IID_IInternetBindInfo;
typedef struct IInternetBindInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetBindInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetBindInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetBindInfo *This);
HRESULT (__attribute__((__stdcall__)) *GetBindInfo)(
IInternetBindInfo *This,
DWORD *grfBINDF,
BINDINFO *pbindinfo);
HRESULT (__attribute__((__stdcall__)) *GetBindString)(
IInternetBindInfo *This,
ULONG ulStringType,
LPOLESTR *ppwzStr,
ULONG cEl,
ULONG *pcElFetched);
} IInternetBindInfoVtbl;
struct IInternetBindInfo {
IInternetBindInfoVtbl* lpVtbl;
};
typedef IInternetBindInfoEx *LPIINTERNETBINDINFOEX;
extern const GUID IID_IInternetBindInfoEx;
typedef struct IInternetBindInfoExVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetBindInfoEx *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetBindInfoEx *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetBindInfoEx *This);
HRESULT (__attribute__((__stdcall__)) *GetBindInfo)(
IInternetBindInfoEx *This,
DWORD *grfBINDF,
BINDINFO *pbindinfo);
HRESULT (__attribute__((__stdcall__)) *GetBindString)(
IInternetBindInfoEx *This,
ULONG ulStringType,
LPOLESTR *ppwzStr,
ULONG cEl,
ULONG *pcElFetched);
HRESULT (__attribute__((__stdcall__)) *GetBindInfoEx)(
IInternetBindInfoEx *This,
DWORD *grfBINDF,
BINDINFO *pbindinfo,
DWORD *grfBINDF2,
DWORD *pdwReserved);
} IInternetBindInfoExVtbl;
struct IInternetBindInfoEx {
IInternetBindInfoExVtbl* lpVtbl;
};
typedef IInternetProtocolRoot *LPIINTERNETPROTOCOLROOT;
typedef enum _tagPI_FLAGS {
PI_PARSE_URL = 0x1,
PI_FILTER_MODE = 0x2,
PI_FORCE_ASYNC = 0x4,
PI_USE_WORKERTHREAD = 0x8,
PI_MIMEVERIFICATION = 0x10,
PI_CLSIDLOOKUP = 0x20,
PI_DATAPROGRESS = 0x40,
PI_SYNCHRONOUS = 0x80,
PI_APARTMENTTHREADED = 0x100,
PI_CLASSINSTALL = 0x200,
PI_PASSONBINDCTX = 0x2000,
PI_NOMIMEHANDLER = 0x8000,
PI_LOADAPPDIRECT = 0x4000,
PD_FORCE_SWITCH = 0x10000,
PI_PREFERDEFAULTHANDLER = 0x20000
} PI_FLAGS;
typedef struct _tagPROTOCOLDATA {
DWORD grfFlags;
DWORD dwState;
LPVOID pData;
ULONG cbData;
} PROTOCOLDATA;
typedef struct _tagStartParam {
IID iid;
IBindCtx *pIBindCtx;
IUnknown *pItf;
} StartParam;
extern const GUID IID_IInternetProtocolRoot;
typedef struct IInternetProtocolRootVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetProtocolRoot *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetProtocolRoot *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetProtocolRoot *This);
HRESULT (__attribute__((__stdcall__)) *Start)(
IInternetProtocolRoot *This,
LPCWSTR szUrl,
IInternetProtocolSink *pOIProtSink,
IInternetBindInfo *pOIBindInfo,
DWORD grfPI,
HANDLE_PTR dwReserved);
HRESULT (__attribute__((__stdcall__)) *Continue)(
IInternetProtocolRoot *This,
PROTOCOLDATA *pProtocolData);
HRESULT (__attribute__((__stdcall__)) *Abort)(
IInternetProtocolRoot *This,
HRESULT hrReason,
DWORD dwOptions);
HRESULT (__attribute__((__stdcall__)) *Terminate)(
IInternetProtocolRoot *This,
DWORD dwOptions);
HRESULT (__attribute__((__stdcall__)) *Suspend)(
IInternetProtocolRoot *This);
HRESULT (__attribute__((__stdcall__)) *Resume)(
IInternetProtocolRoot *This);
} IInternetProtocolRootVtbl;
struct IInternetProtocolRoot {
IInternetProtocolRootVtbl* lpVtbl;
};
typedef IInternetProtocol *LPIINTERNETPROTOCOL;
extern const GUID IID_IInternetProtocol;
typedef struct IInternetProtocolVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetProtocol *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetProtocol *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetProtocol *This);
HRESULT (__attribute__((__stdcall__)) *Start)(
IInternetProtocol *This,
LPCWSTR szUrl,
IInternetProtocolSink *pOIProtSink,
IInternetBindInfo *pOIBindInfo,
DWORD grfPI,
HANDLE_PTR dwReserved);
HRESULT (__attribute__((__stdcall__)) *Continue)(
IInternetProtocol *This,
PROTOCOLDATA *pProtocolData);
HRESULT (__attribute__((__stdcall__)) *Abort)(
IInternetProtocol *This,
HRESULT hrReason,
DWORD dwOptions);
HRESULT (__attribute__((__stdcall__)) *Terminate)(
IInternetProtocol *This,
DWORD dwOptions);
HRESULT (__attribute__((__stdcall__)) *Suspend)(
IInternetProtocol *This);
HRESULT (__attribute__((__stdcall__)) *Resume)(
IInternetProtocol *This);
HRESULT (__attribute__((__stdcall__)) *Read)(
IInternetProtocol *This,
void *pv,
ULONG cb,
ULONG *pcbRead);
HRESULT (__attribute__((__stdcall__)) *Seek)(
IInternetProtocol *This,
LARGE_INTEGER dlibMove,
DWORD dwOrigin,
ULARGE_INTEGER *plibNewPosition);
HRESULT (__attribute__((__stdcall__)) *LockRequest)(
IInternetProtocol *This,
DWORD dwOptions);
HRESULT (__attribute__((__stdcall__)) *UnlockRequest)(
IInternetProtocol *This);
} IInternetProtocolVtbl;
struct IInternetProtocol {
IInternetProtocolVtbl* lpVtbl;
};
typedef IInternetProtocolSink *LPIINTERNETPROTOCOLSINK;
extern const GUID IID_IInternetProtocolSink;
typedef struct IInternetProtocolSinkVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetProtocolSink *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetProtocolSink *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetProtocolSink *This);
HRESULT (__attribute__((__stdcall__)) *Switch)(
IInternetProtocolSink *This,
PROTOCOLDATA *pProtocolData);
HRESULT (__attribute__((__stdcall__)) *ReportProgress)(
IInternetProtocolSink *This,
ULONG ulStatusCode,
LPCWSTR szStatusText);
HRESULT (__attribute__((__stdcall__)) *ReportData)(
IInternetProtocolSink *This,
DWORD grfBSCF,
ULONG ulProgress,
ULONG ulProgressMax);
HRESULT (__attribute__((__stdcall__)) *ReportResult)(
IInternetProtocolSink *This,
HRESULT hrResult,
DWORD dwError,
LPCWSTR szResult);
} IInternetProtocolSinkVtbl;
struct IInternetProtocolSink {
IInternetProtocolSinkVtbl* lpVtbl;
};
typedef IInternetProtocolSinkStackable *LPIINTERNETPROTOCOLSINKStackable;
extern const GUID IID_IInternetProtocolSinkStackable;
typedef struct IInternetProtocolSinkStackableVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetProtocolSinkStackable *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetProtocolSinkStackable *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetProtocolSinkStackable *This);
HRESULT (__attribute__((__stdcall__)) *SwitchSink)(
IInternetProtocolSinkStackable *This,
IInternetProtocolSink *pOIProtSink);
HRESULT (__attribute__((__stdcall__)) *CommitSwitch)(
IInternetProtocolSinkStackable *This);
HRESULT (__attribute__((__stdcall__)) *RollbackSwitch)(
IInternetProtocolSinkStackable *This);
} IInternetProtocolSinkStackableVtbl;
struct IInternetProtocolSinkStackable {
IInternetProtocolSinkStackableVtbl* lpVtbl;
};
typedef IInternetSession *LPIINTERNETSESSION;
typedef enum _tagOIBDG_FLAGS {
OIBDG_APARTMENTTHREADED = 0x100,
OIBDG_DATAONLY = 0x1000
} OIBDG_FLAGS;
extern const GUID IID_IInternetSession;
typedef struct IInternetSessionVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetSession *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetSession *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetSession *This);
HRESULT (__attribute__((__stdcall__)) *RegisterNameSpace)(
IInternetSession *This,
IClassFactory *pCF,
const IID *const rclsid,
LPCWSTR pwzProtocol,
ULONG cPatterns,
const LPCWSTR *ppwzPatterns,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *UnregisterNameSpace)(
IInternetSession *This,
IClassFactory *pCF,
LPCWSTR pszProtocol);
HRESULT (__attribute__((__stdcall__)) *RegisterMimeFilter)(
IInternetSession *This,
IClassFactory *pCF,
const IID *const rclsid,
LPCWSTR pwzType);
HRESULT (__attribute__((__stdcall__)) *UnregisterMimeFilter)(
IInternetSession *This,
IClassFactory *pCF,
LPCWSTR pwzType);
HRESULT (__attribute__((__stdcall__)) *CreateBinding)(
IInternetSession *This,
LPBC pBC,
LPCWSTR szUrl,
IUnknown *pUnkOuter,
IUnknown **ppUnk,
IInternetProtocol **ppOInetProt,
DWORD dwOption);
HRESULT (__attribute__((__stdcall__)) *SetSessionOption)(
IInternetSession *This,
DWORD dwOption,
LPVOID pBuffer,
DWORD dwBufferLength,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *GetSessionOption)(
IInternetSession *This,
DWORD dwOption,
LPVOID pBuffer,
DWORD *pdwBufferLength,
DWORD dwReserved);
} IInternetSessionVtbl;
struct IInternetSession {
IInternetSessionVtbl* lpVtbl;
};
typedef IInternetThreadSwitch *LPIINTERNETTHREADSWITCH;
extern const GUID IID_IInternetThreadSwitch;
typedef struct IInternetThreadSwitchVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetThreadSwitch *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetThreadSwitch *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetThreadSwitch *This);
HRESULT (__attribute__((__stdcall__)) *Prepare)(
IInternetThreadSwitch *This);
HRESULT (__attribute__((__stdcall__)) *Continue)(
IInternetThreadSwitch *This);
} IInternetThreadSwitchVtbl;
struct IInternetThreadSwitch {
IInternetThreadSwitchVtbl* lpVtbl;
};
typedef IInternetPriority *LPIINTERNETPRIORITY;
extern const GUID IID_IInternetPriority;
typedef struct IInternetPriorityVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetPriority *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetPriority *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetPriority *This);
HRESULT (__attribute__((__stdcall__)) *SetPriority)(
IInternetPriority *This,
LONG nPriority);
HRESULT (__attribute__((__stdcall__)) *GetPriority)(
IInternetPriority *This,
LONG *pnPriority);
} IInternetPriorityVtbl;
struct IInternetPriority {
IInternetPriorityVtbl* lpVtbl;
};
typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
typedef enum _tagPARSEACTION {
PARSE_CANONICALIZE = 1,
PARSE_FRIENDLY = 2,
PARSE_SECURITY_URL = 3,
PARSE_ROOTDOCUMENT = 4,
PARSE_DOCUMENT = 5,
PARSE_ANCHOR = 6,
PARSE_ENCODE_IS_UNESCAPE = 7,
PARSE_DECODE_IS_ESCAPE = 8,
PARSE_PATH_FROM_URL = 9,
PARSE_URL_FROM_PATH = 10,
PARSE_MIME = 11,
PARSE_SERVER = 12,
PARSE_SCHEMA = 13,
PARSE_SITE = 14,
PARSE_DOMAIN = 15,
PARSE_LOCATION = 16,
PARSE_SECURITY_DOMAIN = 17,
PARSE_ESCAPE = 18,
PARSE_UNESCAPE = 19
} PARSEACTION;
typedef enum _tagPSUACTION {
PSU_DEFAULT = 1,
PSU_SECURITY_URL_ONLY = 2
} PSUACTION;
typedef enum _tagQUERYOPTION {
QUERY_EXPIRATION_DATE = 1,
QUERY_TIME_OF_LAST_CHANGE = 2,
QUERY_CONTENT_ENCODING = 3,
QUERY_CONTENT_TYPE = 4,
QUERY_REFRESH = 5,
QUERY_RECOMBINE = 6,
QUERY_CAN_NAVIGATE = 7,
QUERY_USES_NETWORK = 8,
QUERY_IS_CACHED = 9,
QUERY_IS_INSTALLEDENTRY = 10,
QUERY_IS_CACHED_OR_MAPPED = 11,
QUERY_USES_CACHE = 12,
QUERY_IS_SECURE = 13,
QUERY_IS_SAFE = 14,
QUERY_USES_HISTORYFOLDER = 15,
QUERY_IS_CACHED_AND_USABLE_OFFLINE = 16
} QUERYOPTION;
extern const GUID IID_IInternetProtocolInfo;
typedef struct IInternetProtocolInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetProtocolInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetProtocolInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetProtocolInfo *This);
HRESULT (__attribute__((__stdcall__)) *ParseUrl)(
IInternetProtocolInfo *This,
LPCWSTR pwzUrl,
PARSEACTION ParseAction,
DWORD dwParseFlags,
LPWSTR pwzResult,
DWORD cchResult,
DWORD *pcchResult,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *CombineUrl)(
IInternetProtocolInfo *This,
LPCWSTR pwzBaseUrl,
LPCWSTR pwzRelativeUrl,
DWORD dwCombineFlags,
LPWSTR pwzResult,
DWORD cchResult,
DWORD *pcchResult,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *CompareUrl)(
IInternetProtocolInfo *This,
LPCWSTR pwzUrl1,
LPCWSTR pwzUrl2,
DWORD dwCompareFlags);
HRESULT (__attribute__((__stdcall__)) *QueryInfo)(
IInternetProtocolInfo *This,
LPCWSTR pwzUrl,
QUERYOPTION OueryOption,
DWORD dwQueryFlags,
LPVOID pBuffer,
DWORD cbBuffer,
DWORD *pcbBuf,
DWORD dwReserved);
} IInternetProtocolInfoVtbl;
struct IInternetProtocolInfo {
IInternetProtocolInfoVtbl* lpVtbl;
};
extern HRESULT __attribute__((__stdcall__)) CoInternetParseUrl(LPCWSTR pwzUrl, PARSEACTION ParseAction, DWORD dwFlags, LPWSTR pszResult, DWORD cchResult, DWORD *pcchResult, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) CoInternetCombineUrl(LPCWSTR pwzBaseUrl, LPCWSTR pwzRelativeUrl, DWORD dwCombineFlags, LPWSTR pszResult, DWORD cchResult, DWORD *pcchResult, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) CoInternetCompareUrl(LPCWSTR pwzUrl1, LPCWSTR pwzUrl2, DWORD dwFlags);
extern HRESULT __attribute__((__stdcall__)) CoInternetGetProtocolFlags(LPCWSTR pwzUrl, DWORD *pdwFlags, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) CoInternetQueryInfo(LPCWSTR pwzUrl, QUERYOPTION QueryOptions, DWORD dwQueryFlags, LPVOID pvBuffer, DWORD cbBuffer, DWORD *pcbBuffer, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) CoInternetGetSession(DWORD dwSessionMode, IInternetSession **ppIInternetSession, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) CoInternetGetSecurityUrl(LPCWSTR pwszUrl, LPWSTR *ppwszSecUrl, PSUACTION psuAction, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) AsyncInstallDistributionUnit(LPCWSTR szDistUnit, LPCWSTR szTYPE, LPCWSTR szExt, DWORD dwFileVersionMS, DWORD dwFileVersionLS, LPCWSTR szURL,IBindCtx *pbc, LPVOID pvReserved,DWORD flags);
extern HRESULT __attribute__((__stdcall__)) CopyStgMedium(const STGMEDIUM *pcstgmedSrc, STGMEDIUM *pstgmedDest);
extern HRESULT __attribute__((__stdcall__)) CopyBindInfo(const BINDINFO *pcbiSrc, BINDINFO *pbiDest);
extern void __attribute__((__stdcall__)) ReleaseBindInfo(BINDINFO *pbindinfo);
extern HRESULT __attribute__((__stdcall__)) CoInternetCreateSecurityManager(IServiceProvider *pSP, IInternetSecurityManager **ppSM, DWORD dwReserved);
extern HRESULT __attribute__((__stdcall__)) CoInternetCreateZoneManager(IServiceProvider *pSP, IInternetZoneManager **ppZM, DWORD dwReserved);
extern const IID CLSID_InternetSecurityManager;
extern const IID CLSID_InternetZoneManager;
extern const GUID IID_IInternetSecurityMgrSite;
typedef struct IInternetSecurityMgrSiteVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetSecurityMgrSite *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetSecurityMgrSite *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetSecurityMgrSite *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IInternetSecurityMgrSite *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *EnableModeless)(
IInternetSecurityMgrSite *This,
WINBOOL fEnable);
} IInternetSecurityMgrSiteVtbl;
struct IInternetSecurityMgrSite {
IInternetSecurityMgrSiteVtbl* lpVtbl;
};
typedef enum __WIDL_urlmon_generated_name_0000000E {
PUAF_DEFAULT = 0x0,
PUAF_NOUI = 0x1,
PUAF_ISFILE = 0x2,
PUAF_WARN_IF_DENIED = 0x4,
PUAF_FORCEUI_FOREGROUND = 0x8,
PUAF_CHECK_TIFS = 0x10,
PUAF_DONTCHECKBOXINDIALOG = 0x20,
PUAF_TRUSTED = 0x40,
PUAF_ACCEPT_WILDCARD_SCHEME = 0x80,
PUAF_ENFORCERESTRICTED = 0x100,
PUAF_NOSAVEDFILECHECK = 0x200,
PUAF_REQUIRESAVEDFILECHECK = 0x400,
PUAF_DONT_USE_CACHE = 0x1000,
PUAF_RESERVED1 = 0x2000,
PUAF_RESERVED2 = 0x4000,
PUAF_LMZ_UNLOCKED = 0x10000,
PUAF_LMZ_LOCKED = 0x20000,
PUAF_DEFAULTZONEPOL = 0x40000,
PUAF_NPL_USE_LOCKED_IF_RESTRICTED = 0x80000,
PUAF_NOUIIFLOCKED = 0x100000,
PUAF_DRAGPROTOCOLCHECK = 0x200000
} PUAF;
typedef enum __WIDL_urlmon_generated_name_0000000F {
PUAFOUT_DEFAULT = 0x0,
PUAFOUT_ISLOCKZONEPOLICY = 0x1
} PUAFOUT;
typedef enum __WIDL_urlmon_generated_name_00000010 {
SZM_CREATE = 0x0,
SZM_DELETE = 0x1
} SZM_FLAGS;
extern const GUID IID_IInternetSecurityManager;
typedef struct IInternetSecurityManagerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetSecurityManager *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetSecurityManager *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetSecurityManager *This);
HRESULT (__attribute__((__stdcall__)) *SetSecuritySite)(
IInternetSecurityManager *This,
IInternetSecurityMgrSite *pSite);
HRESULT (__attribute__((__stdcall__)) *GetSecuritySite)(
IInternetSecurityManager *This,
IInternetSecurityMgrSite **ppSite);
HRESULT (__attribute__((__stdcall__)) *MapUrlToZone)(
IInternetSecurityManager *This,
LPCWSTR pwszUrl,
DWORD *pdwZone,
DWORD dwFlags);
HRESULT (__attribute__((__stdcall__)) *GetSecurityId)(
IInternetSecurityManager *This,
LPCWSTR pwszUrl,
BYTE *pbSecurityId,
DWORD *pcbSecurityId,
DWORD_PTR dwReserved);
HRESULT (__attribute__((__stdcall__)) *ProcessUrlAction)(
IInternetSecurityManager *This,
LPCWSTR pwszUrl,
DWORD dwAction,
BYTE *pPolicy,
DWORD cbPolicy,
BYTE *pContext,
DWORD cbContext,
DWORD dwFlags,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *QueryCustomPolicy)(
IInternetSecurityManager *This,
LPCWSTR pwszUrl,
const GUID *const guidKey,
BYTE **ppPolicy,
DWORD *pcbPolicy,
BYTE *pContext,
DWORD cbContext,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *SetZoneMapping)(
IInternetSecurityManager *This,
DWORD dwZone,
LPCWSTR lpszPattern,
DWORD dwFlags);
HRESULT (__attribute__((__stdcall__)) *GetZoneMappings)(
IInternetSecurityManager *This,
DWORD dwZone,
IEnumString **ppenumString,
DWORD dwFlags);
} IInternetSecurityManagerVtbl;
struct IInternetSecurityManager {
IInternetSecurityManagerVtbl* lpVtbl;
};
extern const GUID IID_IInternetHostSecurityManager;
typedef struct IInternetHostSecurityManagerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetHostSecurityManager *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetHostSecurityManager *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetHostSecurityManager *This);
HRESULT (__attribute__((__stdcall__)) *GetSecurityId)(
IInternetHostSecurityManager *This,
BYTE *pbSecurityId,
DWORD *pcbSecurityId,
DWORD_PTR dwReserved);
HRESULT (__attribute__((__stdcall__)) *ProcessUrlAction)(
IInternetHostSecurityManager *This,
DWORD dwAction,
BYTE *pPolicy,
DWORD cbPolicy,
BYTE *pContext,
DWORD cbContext,
DWORD dwFlags,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *QueryCustomPolicy)(
IInternetHostSecurityManager *This,
const GUID *const guidKey,
BYTE **ppPolicy,
DWORD *pcbPolicy,
BYTE *pContext,
DWORD cbContext,
DWORD dwReserved);
} IInternetHostSecurityManagerVtbl;
struct IInternetHostSecurityManager {
IInternetHostSecurityManagerVtbl* lpVtbl;
};
typedef IInternetZoneManager *LPURLZONEMANAGER;
typedef enum tagURLZONE {
URLZONE_INVALID = -1,
URLZONE_PREDEFINED_MIN = 0,
URLZONE_LOCAL_MACHINE = 0,
URLZONE_INTRANET = 1,
URLZONE_TRUSTED = 2,
URLZONE_INTERNET = 3,
URLZONE_UNTRUSTED = 4,
URLZONE_PREDEFINED_MAX = 999,
URLZONE_USER_MIN = 1000,
URLZONE_USER_MAX = 10000
} URLZONE;
typedef enum tagURLTEMPLATE {
URLTEMPLATE_CUSTOM = 0x0,
URLTEMPLATE_PREDEFINED_MIN = 0x10000,
URLTEMPLATE_LOW = 0x10000,
URLTEMPLATE_MEDLOW = 0x10500,
URLTEMPLATE_MEDIUM = 0x11000,
URLTEMPLATE_MEDHIGH = 0x11500,
URLTEMPLATE_HIGH = 0x12000,
URLTEMPLATE_PREDEFINED_MAX = 0x20000
} URLTEMPLATE;
enum {
MAX_ZONE_PATH = 260,
MAX_ZONE_DESCRIPTION = 200
};
typedef enum __WIDL_urlmon_generated_name_00000011 {
ZAFLAGS_CUSTOM_EDIT = 0x1,
ZAFLAGS_ADD_SITES = 0x2,
ZAFLAGS_REQUIRE_VERIFICATION = 0x4,
ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 0x8,
ZAFLAGS_INCLUDE_INTRANET_SITES = 0x10,
ZAFLAGS_NO_UI = 0x20,
ZAFLAGS_SUPPORTS_VERIFICATION = 0x40,
ZAFLAGS_UNC_AS_INTRANET = 0x80,
ZAFLAGS_DETECT_INTRANET = 0x100,
ZAFLAGS_USE_LOCKED_ZONES = 0x10000,
ZAFLAGS_VERIFY_TEMPLATE_SETTINGS = 0x20000,
ZAFLAGS_NO_CACHE = 0x40000
} ZAFLAGS;
typedef struct _ZONEATTRIBUTES {
ULONG cbSize;
WCHAR szDisplayName[260];
WCHAR szDescription[200];
WCHAR szIconPath[260];
DWORD dwTemplateMinLevel;
DWORD dwTemplateRecommended;
DWORD dwTemplateCurrentLevel;
DWORD dwFlags;
} ZONEATTRIBUTES;
typedef struct _ZONEATTRIBUTES *LPZONEATTRIBUTES;
typedef enum _URLZONEREG {
URLZONEREG_DEFAULT = 0,
URLZONEREG_HKLM = 1,
URLZONEREG_HKCU = 2
} URLZONEREG;
extern const GUID IID_IInternetZoneManager;
typedef struct IInternetZoneManagerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IInternetZoneManager *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IInternetZoneManager *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IInternetZoneManager *This);
HRESULT (__attribute__((__stdcall__)) *GetZoneAttributes)(
IInternetZoneManager *This,
DWORD dwZone,
ZONEATTRIBUTES *pZoneAttributes);
HRESULT (__attribute__((__stdcall__)) *SetZoneAttributes)(
IInternetZoneManager *This,
DWORD dwZone,
ZONEATTRIBUTES *pZoneAttributes);
HRESULT (__attribute__((__stdcall__)) *GetZoneCustomPolicy)(
IInternetZoneManager *This,
DWORD dwZone,
const GUID *const guidKey,
BYTE **ppPolicy,
DWORD *pcbPolicy,
URLZONEREG urlZoneReg);
HRESULT (__attribute__((__stdcall__)) *SetZoneCustomPolicy)(
IInternetZoneManager *This,
DWORD dwZone,
const GUID *const guidKey,
BYTE *pPolicy,
DWORD cbPolicy,
URLZONEREG urlZoneReg);
HRESULT (__attribute__((__stdcall__)) *GetZoneActionPolicy)(
IInternetZoneManager *This,
DWORD dwZone,
DWORD dwAction,
BYTE *pPolicy,
DWORD cbPolicy,
URLZONEREG urlZoneReg);
HRESULT (__attribute__((__stdcall__)) *SetZoneActionPolicy)(
IInternetZoneManager *This,
DWORD dwZone,
DWORD dwAction,
BYTE *pPolicy,
DWORD cbPolicy,
URLZONEREG urlZoneReg);
HRESULT (__attribute__((__stdcall__)) *PromptAction)(
IInternetZoneManager *This,
DWORD dwAction,
HWND hwndParent,
LPCWSTR pwszUrl,
LPCWSTR pwszText,
DWORD dwPromptFlags);
HRESULT (__attribute__((__stdcall__)) *LogAction)(
IInternetZoneManager *This,
DWORD dwAction,
LPCWSTR pwszUrl,
LPCWSTR pwszText,
DWORD dwLogFlags);
HRESULT (__attribute__((__stdcall__)) *CreateZoneEnumerator)(
IInternetZoneManager *This,
DWORD *pdwEnum,
DWORD *pdwCount,
DWORD dwFlags);
HRESULT (__attribute__((__stdcall__)) *GetZoneAt)(
IInternetZoneManager *This,
DWORD dwEnum,
DWORD dwIndex,
DWORD *pdwZone);
HRESULT (__attribute__((__stdcall__)) *DestroyZoneEnumerator)(
IInternetZoneManager *This,
DWORD dwEnum);
HRESULT (__attribute__((__stdcall__)) *CopyTemplatePoliciesToZone)(
IInternetZoneManager *This,
DWORD dwTemplate,
DWORD dwZone,
DWORD dwReserved);
} IInternetZoneManagerVtbl;
struct IInternetZoneManager {
IInternetZoneManagerVtbl* lpVtbl;
};
extern const IID CLSID_SoftDistExt;
typedef struct _tagCODEBASEHOLD {
ULONG cbSize;
LPWSTR szDistUnit;
LPWSTR szCodeBase;
DWORD dwVersionMS;
DWORD dwVersionLS;
DWORD dwStyle;
} CODEBASEHOLD;
typedef struct _tagCODEBASEHOLD *LPCODEBASEHOLD;
typedef struct _tagSOFTDISTINFO {
ULONG cbSize;
DWORD dwFlags;
DWORD dwAdState;
LPWSTR szTitle;
LPWSTR szAbstract;
LPWSTR szHREF;
DWORD dwInstalledVersionMS;
DWORD dwInstalledVersionLS;
DWORD dwUpdateVersionMS;
DWORD dwUpdateVersionLS;
DWORD dwAdvertisedVersionMS;
DWORD dwAdvertisedVersionLS;
DWORD dwReserved;
} SOFTDISTINFO;
typedef struct _tagSOFTDISTINFO *LPSOFTDISTINFO;
extern const GUID IID_ISoftDistExt;
typedef struct ISoftDistExtVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISoftDistExt *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISoftDistExt *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISoftDistExt *This);
HRESULT (__attribute__((__stdcall__)) *ProcessSoftDist)(
ISoftDistExt *This,
LPCWSTR szCDFURL,
IXMLElement *pSoftDistElement,
LPSOFTDISTINFO lpsdi);
HRESULT (__attribute__((__stdcall__)) *GetFirstCodeBase)(
ISoftDistExt *This,
LPWSTR *szCodeBase,
LPDWORD dwMaxSize);
HRESULT (__attribute__((__stdcall__)) *GetNextCodeBase)(
ISoftDistExt *This,
LPWSTR *szCodeBase,
LPDWORD dwMaxSize);
HRESULT (__attribute__((__stdcall__)) *AsyncInstallDistributionUnit)(
ISoftDistExt *This,
IBindCtx *pbc,
LPVOID pvReserved,
DWORD flags,
LPCODEBASEHOLD lpcbh);
} ISoftDistExtVtbl;
struct ISoftDistExt {
ISoftDistExtVtbl* lpVtbl;
};
extern HRESULT __attribute__((__stdcall__)) GetSoftwareUpdateInfo(LPCWSTR szDistUnit, LPSOFTDISTINFO psdi);
extern HRESULT __attribute__((__stdcall__)) SetSoftwareUpdateAdvertisementState(LPCWSTR szDistUnit, DWORD dwAdState, DWORD dwAdvertisedVersionMS, DWORD dwAdvertisedVersionLS);
typedef ICatalogFileInfo *LPCATALOGFILEINFO;
extern const GUID IID_ICatalogFileInfo;
typedef struct ICatalogFileInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ICatalogFileInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ICatalogFileInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ICatalogFileInfo *This);
HRESULT (__attribute__((__stdcall__)) *GetCatalogFile)(
ICatalogFileInfo *This,
LPSTR *ppszCatalogFile);
HRESULT (__attribute__((__stdcall__)) *GetJavaTrust)(
ICatalogFileInfo *This,
void **ppJavaTrust);
} ICatalogFileInfoVtbl;
struct ICatalogFileInfo {
ICatalogFileInfoVtbl* lpVtbl;
};
typedef IDataFilter *LPDATAFILTER;
extern const GUID IID_IDataFilter;
typedef struct IDataFilterVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IDataFilter *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IDataFilter *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IDataFilter *This);
HRESULT (__attribute__((__stdcall__)) *DoEncode)(
IDataFilter *This,
DWORD dwFlags,
LONG lInBufferSize,
BYTE *pbInBuffer,
LONG lOutBufferSize,
BYTE *pbOutBuffer,
LONG lInBytesAvailable,
LONG *plInBytesRead,
LONG *plOutBytesWritten,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *DoDecode)(
IDataFilter *This,
DWORD dwFlags,
LONG lInBufferSize,
BYTE *pbInBuffer,
LONG lOutBufferSize,
BYTE *pbOutBuffer,
LONG lInBytesAvailable,
LONG *plInBytesRead,
LONG *plOutBytesWritten,
DWORD dwReserved);
HRESULT (__attribute__((__stdcall__)) *SetEncodingLevel)(
IDataFilter *This,
DWORD dwEncLevel);
} IDataFilterVtbl;
struct IDataFilter {
IDataFilterVtbl* lpVtbl;
};
typedef struct _tagPROTOCOLFILTERDATA {
DWORD cbSize;
IInternetProtocolSink *pProtocolSink;
IInternetProtocol *pProtocol;
IUnknown *pUnk;
DWORD dwFilterFlags;
} PROTOCOLFILTERDATA;
typedef IEncodingFilterFactory *LPENCODINGFILTERFACTORY;
typedef struct _tagDATAINFO {
ULONG ulTotalSize;
ULONG ulavrPacketSize;
ULONG ulConnectSpeed;
ULONG ulProcessorSpeed;
} DATAINFO;
extern const GUID IID_IEncodingFilterFactory;
typedef struct IEncodingFilterFactoryVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEncodingFilterFactory *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEncodingFilterFactory *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEncodingFilterFactory *This);
HRESULT (__attribute__((__stdcall__)) *FindBestFilter)(
IEncodingFilterFactory *This,
LPCWSTR pwzCodeIn,
LPCWSTR pwzCodeOut,
DATAINFO info,
IDataFilter **ppDF);
HRESULT (__attribute__((__stdcall__)) *GetDefaultFilter)(
IEncodingFilterFactory *This,
LPCWSTR pwzCodeIn,
LPCWSTR pwzCodeOut,
IDataFilter **ppDF);
} IEncodingFilterFactoryVtbl;
struct IEncodingFilterFactory {
IEncodingFilterFactoryVtbl* lpVtbl;
};
WINBOOL __attribute__((__stdcall__)) IsLoggingEnabledA(LPCSTR pszUrl);
WINBOOL __attribute__((__stdcall__)) IsLoggingEnabledW(LPCWSTR pwszUrl);
typedef struct _tagHIT_LOGGING_INFO {
DWORD dwStructSize;
LPSTR lpszLoggedUrlName;
SYSTEMTIME StartTime;
SYSTEMTIME EndTime;
LPSTR lpszExtendedInfo;
} HIT_LOGGING_INFO;
typedef struct _tagHIT_LOGGING_INFO *LPHIT_LOGGING_INFO;
WINBOOL __attribute__((__stdcall__)) WriteHitLogging(LPHIT_LOGGING_INFO lpLogginginfo);
struct CONFIRMSAFETY {
CLSID clsid;
IUnknown *pUnk;
DWORD dwFlags;
};
extern const GUID GUID_CUSTOM_CONFIRMOBJECTSAFETY;
typedef IWrappedProtocol *LPIWRAPPEDPROTOCOL;
extern const GUID IID_IWrappedProtocol;
typedef struct IWrappedProtocolVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IWrappedProtocol *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IWrappedProtocol *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IWrappedProtocol *This);
HRESULT (__attribute__((__stdcall__)) *GetWrapperCode)(
IWrappedProtocol *This,
LONG *pnCode,
DWORD_PTR dwReserved);
} IWrappedProtocolVtbl;
struct IWrappedProtocol {
IWrappedProtocolVtbl* lpVtbl;
};
typedef IGetBindHandle *LPGETBINDHANDLE;
typedef enum __WIDL_urlmon_generated_name_00000012 {
BINDHANDLETYPES_APPCACHE = 0x0,
BINDHANDLETYPES_DEPENDENCY = 0x1,
BINDHANDLETYPES_COUNT = 0x2
} BINDHANDLETYPES;
extern const GUID IID_IGetBindHandle;
typedef struct IGetBindHandleVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IGetBindHandle *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IGetBindHandle *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IGetBindHandle *This);
HRESULT (__attribute__((__stdcall__)) *GetBindHandle)(
IGetBindHandle *This,
BINDHANDLETYPES enumRequestedHandle,
HANDLE *pRetHandle);
} IGetBindHandleVtbl;
struct IGetBindHandle {
IGetBindHandleVtbl* lpVtbl;
};
typedef struct _tagPROTOCOL_ARGUMENT {
LPCWSTR szMethod;
LPCWSTR szTargetUrl;
} PROTOCOL_ARGUMENT;
typedef struct _tagPROTOCOL_ARGUMENT *LPPROTOCOL_ARGUMENT;
typedef IBindCallbackRedirect *LPBINDCALLBACKREDIRECT;
extern const GUID IID_IBindCallbackRedirect;
typedef struct IBindCallbackRedirectVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IBindCallbackRedirect *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IBindCallbackRedirect *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IBindCallbackRedirect *This);
HRESULT (__attribute__((__stdcall__)) *Redirect)(
IBindCallbackRedirect *This,
LPCWSTR lpcUrl,
VARIANT_BOOL *vbCancel);
} IBindCallbackRedirectVtbl;
struct IBindCallbackRedirect {
IBindCallbackRedirectVtbl* lpVtbl;
};
ULONG __attribute__((__stdcall__)) STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *);
unsigned char * __attribute__((__stdcall__)) STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
void __attribute__((__stdcall__)) STGMEDIUM_UserFree (ULONG *, STGMEDIUM *);
ULONG __attribute__((__stdcall__)) CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
unsigned char * __attribute__((__stdcall__)) CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
unsigned char * __attribute__((__stdcall__)) CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
void __attribute__((__stdcall__)) CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
ULONG __attribute__((__stdcall__)) HWND_UserSize (ULONG *, ULONG, HWND *);
unsigned char * __attribute__((__stdcall__)) HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
unsigned char * __attribute__((__stdcall__)) HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
void __attribute__((__stdcall__)) HWND_UserFree (ULONG *, HWND *);
ULONG __attribute__((__stdcall__)) BSTR_UserSize (ULONG *, ULONG, BSTR *);
unsigned char * __attribute__((__stdcall__)) BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
unsigned char * __attribute__((__stdcall__)) BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
void __attribute__((__stdcall__)) BSTR_UserFree (ULONG *, BSTR *);
typedef struct IPropertyStorage IPropertyStorage;
typedef struct IPropertySetStorage IPropertySetStorage;
typedef struct IEnumSTATPROPSTG IEnumSTATPROPSTG;
typedef struct IEnumSTATPROPSETSTG IEnumSTATPROPSETSTG;
typedef struct tagVersionedStream {
GUID guidVersion;
IStream *pStream;
} VERSIONEDSTREAM;
typedef struct tagVersionedStream *LPVERSIONEDSTREAM;
typedef struct tagPROPVARIANT PROPVARIANT;
typedef struct tagCAC {
ULONG cElems;
CHAR *pElems;
} CAC;
typedef struct tagCAUB {
ULONG cElems;
UCHAR *pElems;
} CAUB;
typedef struct tagCAI {
ULONG cElems;
SHORT *pElems;
} CAI;
typedef struct tagCAUI {
ULONG cElems;
USHORT *pElems;
} CAUI;
typedef struct tagCAL {
ULONG cElems;
LONG *pElems;
} CAL;
typedef struct tagCAUL {
ULONG cElems;
ULONG *pElems;
} CAUL;
typedef struct tagCAFLT {
ULONG cElems;
FLOAT *pElems;
} CAFLT;
typedef struct tagCADBL {
ULONG cElems;
DOUBLE *pElems;
} CADBL;
typedef struct tagCACY {
ULONG cElems;
CY *pElems;
} CACY;
typedef struct tagCADATE {
ULONG cElems;
DATE *pElems;
} CADATE;
typedef struct tagCABSTR {
ULONG cElems;
BSTR *pElems;
} CABSTR;
typedef struct tagCABSTRBLOB {
ULONG cElems;
BSTRBLOB *pElems;
} CABSTRBLOB;
typedef struct tagCABOOL {
ULONG cElems;
VARIANT_BOOL *pElems;
} CABOOL;
typedef struct tagCASCODE {
ULONG cElems;
SCODE *pElems;
} CASCODE;
typedef struct tagCAPROPVARIANT {
ULONG cElems;
PROPVARIANT *pElems;
} CAPROPVARIANT;
typedef struct tagCAH {
ULONG cElems;
LARGE_INTEGER *pElems;
} CAH;
typedef struct tagCAUH {
ULONG cElems;
ULARGE_INTEGER *pElems;
} CAUH;
typedef struct tagCALPSTR {
ULONG cElems;
LPSTR *pElems;
} CALPSTR;
typedef struct tagCALPWSTR {
ULONG cElems;
LPWSTR *pElems;
} CALPWSTR;
typedef struct tagCAFILETIME {
ULONG cElems;
FILETIME *pElems;
} CAFILETIME;
typedef struct tagCACLIPDATA {
ULONG cElems;
CLIPDATA *pElems;
} CACLIPDATA;
typedef struct tagCACLSID {
ULONG cElems;
CLSID *pElems;
} CACLSID;
typedef WORD PROPVAR_PAD1;
typedef WORD PROPVAR_PAD2;
typedef WORD PROPVAR_PAD3;
struct tagPROPVARIANT {
__extension__ union {
__extension__
struct {
VARTYPE vt;
PROPVAR_PAD1 wReserved1;
PROPVAR_PAD2 wReserved2;
PROPVAR_PAD3 wReserved3;
__extension__ union {
CHAR cVal;
UCHAR bVal;
SHORT iVal;
USHORT uiVal;
LONG lVal;
ULONG ulVal;
INT intVal;
UINT uintVal;
LARGE_INTEGER hVal;
ULARGE_INTEGER uhVal;
FLOAT fltVal;
DOUBLE dblVal;
VARIANT_BOOL boolVal;
SCODE scode;
CY cyVal;
DATE date;
FILETIME filetime;
CLSID *puuid;
CLIPDATA *pclipdata;
BSTR bstrVal;
BSTRBLOB bstrblobVal;
BLOB blob;
LPSTR pszVal;
LPWSTR pwszVal;
IUnknown *punkVal;
IDispatch *pdispVal;
IStream *pStream;
IStorage *pStorage;
LPVERSIONEDSTREAM pVersionedStream;
LPSAFEARRAY parray;
CAC cac;
CAUB caub;
CAI cai;
CAUI caui;
CAL cal;
CAUL caul;
CAH cah;
CAUH cauh;
CAFLT caflt;
CADBL cadbl;
CABOOL cabool;
CASCODE cascode;
CACY cacy;
CADATE cadate;
CAFILETIME cafiletime;
CACLSID cauuid;
CACLIPDATA caclipdata;
CABSTR cabstr;
CABSTRBLOB cabstrblob;
CALPSTR calpstr;
CALPWSTR calpwstr;
CAPROPVARIANT capropvar;
CHAR *pcVal;
UCHAR *pbVal;
SHORT *piVal;
USHORT *puiVal;
LONG *plVal;
ULONG *pulVal;
INT *pintVal;
UINT *puintVal;
FLOAT *pfltVal;
DOUBLE *pdblVal;
VARIANT_BOOL *pboolVal;
DECIMAL *pdecVal;
SCODE *pscode;
CY *pcyVal;
DATE *pdate;
BSTR *pbstrVal;
IUnknown **ppunkVal;
IDispatch **ppdispVal;
LPSAFEARRAY *pparray;
PROPVARIANT *pvarVal;
} ;
};
DECIMAL decVal;
};
};
typedef struct tagPROPVARIANT * LPPROPVARIANT;
enum PIDMSI_STATUS_VALUE {
PIDMSI_STATUS_NORMAL = 0,
PIDMSI_STATUS_NEW = 1,
PIDMSI_STATUS_PRELIM = 2,
PIDMSI_STATUS_DRAFT = 3,
PIDMSI_STATUS_INPROGRESS = 4,
PIDMSI_STATUS_EDIT = 5,
PIDMSI_STATUS_REVIEW = 6,
PIDMSI_STATUS_PROOF = 7,
PIDMSI_STATUS_FINAL = 8,
PIDMSI_STATUS_OTHER = 0x7fff
};
typedef struct tagPROPSPEC {
ULONG ulKind;
union {
PROPID propid;
LPOLESTR lpwstr;
} ;
} PROPSPEC;
typedef struct tagSTATPROPSTG {
LPOLESTR lpwstrName;
PROPID propid;
VARTYPE vt;
} STATPROPSTG;
typedef struct tagSTATPROPSETSTG {
FMTID fmtid;
CLSID clsid;
DWORD grfFlags;
FILETIME mtime;
FILETIME ctime;
FILETIME atime;
DWORD dwOSVersion;
} STATPROPSETSTG;
extern const GUID IID_IPropertyStorage;
typedef struct IPropertyStorageVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPropertyStorage *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPropertyStorage *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPropertyStorage *This);
HRESULT (__attribute__((__stdcall__)) *ReadMultiple)(
IPropertyStorage *This,
ULONG cpspec,
const PROPSPEC rgpspec[],
PROPVARIANT rgpropvar[]);
HRESULT (__attribute__((__stdcall__)) *WriteMultiple)(
IPropertyStorage *This,
ULONG cpspec,
const PROPSPEC rgpspec[],
const PROPVARIANT rgpropvar[],
PROPID propidNameFirst);
HRESULT (__attribute__((__stdcall__)) *DeleteMultiple)(
IPropertyStorage *This,
ULONG cpspec,
const PROPSPEC rgpspec[]);
HRESULT (__attribute__((__stdcall__)) *ReadPropertyNames)(
IPropertyStorage *This,
ULONG cpropid,
const PROPID rgpropid[],
LPOLESTR rglpwstrName[]);
HRESULT (__attribute__((__stdcall__)) *WritePropertyNames)(
IPropertyStorage *This,
ULONG cpropid,
const PROPID rgpropid[],
const LPOLESTR rglpwstrName[]);
HRESULT (__attribute__((__stdcall__)) *DeletePropertyNames)(
IPropertyStorage *This,
ULONG cpropid,
const PROPID rgpropid[]);
HRESULT (__attribute__((__stdcall__)) *Commit)(
IPropertyStorage *This,
DWORD grfCommitFlags);
HRESULT (__attribute__((__stdcall__)) *Revert)(
IPropertyStorage *This);
HRESULT (__attribute__((__stdcall__)) *Enum)(
IPropertyStorage *This,
IEnumSTATPROPSTG **ppenum);
HRESULT (__attribute__((__stdcall__)) *SetTimes)(
IPropertyStorage *This,
const FILETIME *pctime,
const FILETIME *patime,
const FILETIME *pmtime);
HRESULT (__attribute__((__stdcall__)) *SetClass)(
IPropertyStorage *This,
const IID *const clsid);
HRESULT (__attribute__((__stdcall__)) *Stat)(
IPropertyStorage *This,
STATPROPSETSTG *pstatpsstg);
} IPropertyStorageVtbl;
struct IPropertyStorage {
IPropertyStorageVtbl* lpVtbl;
};
typedef IPropertySetStorage *LPPROPERTYSETSTORAGE;
extern const GUID IID_IPropertySetStorage;
typedef struct IPropertySetStorageVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPropertySetStorage *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPropertySetStorage *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPropertySetStorage *This);
HRESULT (__attribute__((__stdcall__)) *Create)(
IPropertySetStorage *This,
const IID *const rfmtid,
const CLSID *pclsid,
DWORD grfFlags,
DWORD grfMode,
IPropertyStorage **ppprstg);
HRESULT (__attribute__((__stdcall__)) *Open)(
IPropertySetStorage *This,
const IID *const rfmtid,
DWORD grfMode,
IPropertyStorage **ppprstg);
HRESULT (__attribute__((__stdcall__)) *Delete)(
IPropertySetStorage *This,
const IID *const rfmtid);
HRESULT (__attribute__((__stdcall__)) *Enum)(
IPropertySetStorage *This,
IEnumSTATPROPSETSTG **ppenum);
} IPropertySetStorageVtbl;
struct IPropertySetStorage {
IPropertySetStorageVtbl* lpVtbl;
};
typedef IEnumSTATPROPSTG *LPENUMSTATPROPSTG;
extern const GUID IID_IEnumSTATPROPSTG;
typedef struct IEnumSTATPROPSTGVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumSTATPROPSTG *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumSTATPROPSTG *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumSTATPROPSTG *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumSTATPROPSTG *This,
ULONG celt,
STATPROPSTG *rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumSTATPROPSTG *This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumSTATPROPSTG *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumSTATPROPSTG *This,
IEnumSTATPROPSTG **ppenum);
} IEnumSTATPROPSTGVtbl;
struct IEnumSTATPROPSTG {
IEnumSTATPROPSTGVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumSTATPROPSTG_RemoteNext_Proxy(
IEnumSTATPROPSTG* This,
ULONG celt,
STATPROPSTG *rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumSTATPROPSTG_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATPROPSTG_Next_Proxy(
IEnumSTATPROPSTG* This,
ULONG celt,
STATPROPSTG *rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumSTATPROPSTG_Next_Stub(
IEnumSTATPROPSTG* This,
ULONG celt,
STATPROPSTG *rgelt,
ULONG *pceltFetched);
typedef IEnumSTATPROPSETSTG *LPENUMSTATPROPSETSTG;
extern const GUID IID_IEnumSTATPROPSETSTG;
typedef struct IEnumSTATPROPSETSTGVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumSTATPROPSETSTG *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumSTATPROPSETSTG *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumSTATPROPSETSTG *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumSTATPROPSETSTG *This,
ULONG celt,
STATPROPSETSTG *rgelt,
ULONG *pceltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumSTATPROPSETSTG *This,
ULONG celt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumSTATPROPSETSTG *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumSTATPROPSETSTG *This,
IEnumSTATPROPSETSTG **ppenum);
} IEnumSTATPROPSETSTGVtbl;
struct IEnumSTATPROPSETSTG {
IEnumSTATPROPSETSTGVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumSTATPROPSETSTG_RemoteNext_Proxy(
IEnumSTATPROPSETSTG* This,
ULONG celt,
STATPROPSETSTG *rgelt,
ULONG *pceltFetched);
void __attribute__((__stdcall__)) IEnumSTATPROPSETSTG_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumSTATPROPSETSTG_Next_Proxy(
IEnumSTATPROPSETSTG* This,
ULONG celt,
STATPROPSETSTG *rgelt,
ULONG *pceltFetched);
HRESULT __attribute__((__stdcall__)) IEnumSTATPROPSETSTG_Next_Stub(
IEnumSTATPROPSETSTG* This,
ULONG celt,
STATPROPSETSTG *rgelt,
ULONG *pceltFetched);
typedef IPropertyStorage *LPPROPERTYSTORAGE;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) PropVariantCopy(PROPVARIANT *pvarDest,const PROPVARIANT *pvarSrc);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) PropVariantClear(PROPVARIANT *pvar);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) FreePropVariantArray(ULONG cVariants, PROPVARIANT *rgvars);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgCreatePropStg(IUnknown *pUnk, const IID *const fmtid, const CLSID *pclsid, DWORD grfFlags, DWORD dwReserved, IPropertyStorage **ppPropStg);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgOpenPropStg(IUnknown *pUnk, const IID *const fmtid, DWORD grfFlags, DWORD dwReserved, IPropertyStorage **ppPropStg);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) StgCreatePropSetStg(IStorage *pStorage, DWORD dwReserved, IPropertySetStorage **ppPropSetStg);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) FmtIdToPropStgName(const FMTID *pfmtid, LPOLESTR oszName);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) PropStgNameToFmtId(const LPOLESTR oszName, FMTID *pfmtid);
typedef struct tagSERIALIZEDPROPERTYVALUE {
DWORD dwType;
BYTE rgb[1];
} SERIALIZEDPROPERTYVALUE;
extern SERIALIZEDPROPERTYVALUE * __attribute__((__stdcall__)) StgConvertVariantToProperty(const PROPVARIANT *pvar, USHORT CodePage, SERIALIZEDPROPERTYVALUE *pprop, ULONG *pcb, PROPID pid, BOOLEAN fReserved, ULONG *pcIndirect);
ULONG __attribute__((__stdcall__)) BSTR_UserSize (ULONG *, ULONG, BSTR *);
unsigned char * __attribute__((__stdcall__)) BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
unsigned char * __attribute__((__stdcall__)) BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
void __attribute__((__stdcall__)) BSTR_UserFree (ULONG *, BSTR *);
ULONG __attribute__((__stdcall__)) LPSAFEARRAY_UserSize (ULONG *, ULONG, LPSAFEARRAY *);
unsigned char * __attribute__((__stdcall__)) LPSAFEARRAY_UserMarshal (ULONG *, unsigned char *, LPSAFEARRAY *);
unsigned char * __attribute__((__stdcall__)) LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *);
void __attribute__((__stdcall__)) LPSAFEARRAY_UserFree (ULONG *, LPSAFEARRAY *);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateStdProgressIndicator (HWND hwndParent, LPCOLESTR pszTitle, IBindStatusCallback *pIbscCaller, IBindStatusCallback **ppIbsc);
#pragma pack(pop)
#pragma pack(push,8)
extern const IID IID_StdOle;
extern __attribute__((dllimport)) BSTR __attribute__((__stdcall__)) SysAllocString(const OLECHAR *);
extern __attribute__((dllimport)) INT __attribute__((__stdcall__)) SysReAllocString(BSTR *,const OLECHAR *);
extern __attribute__((dllimport)) BSTR __attribute__((__stdcall__)) SysAllocStringLen(const OLECHAR *,UINT);
extern __attribute__((dllimport)) INT __attribute__((__stdcall__)) SysReAllocStringLen(BSTR *,const OLECHAR *,UINT);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) SysFreeString(BSTR);
extern __attribute__((dllimport)) UINT __attribute__((__stdcall__)) SysStringLen(BSTR);
extern __attribute__((dllimport)) UINT __attribute__((__stdcall__)) SysStringByteLen(BSTR bstr);
extern __attribute__((dllimport)) BSTR __attribute__((__stdcall__)) SysAllocStringByteLen(LPCSTR psz,UINT len);
extern __attribute__((dllimport)) INT __attribute__((__stdcall__)) DosDateTimeToVariantTime(USHORT wDosDate,USHORT wDosTime,DOUBLE *pvtime);
extern __attribute__((dllimport)) INT __attribute__((__stdcall__)) VariantTimeToDosDateTime(DOUBLE vtime,USHORT *pwDosDate,USHORT *pwDosTime);
extern __attribute__((dllimport)) INT __attribute__((__stdcall__)) SystemTimeToVariantTime(LPSYSTEMTIME lpSystemTime,DOUBLE *pvtime);
extern __attribute__((dllimport)) INT __attribute__((__stdcall__)) VariantTimeToSystemTime(DOUBLE vtime,LPSYSTEMTIME lpSystemTime);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayAllocDescriptor(UINT cDims,SAFEARRAY **ppsaOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayAllocDescriptorEx(VARTYPE vt,UINT cDims,SAFEARRAY **ppsaOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayAllocData(SAFEARRAY *psa);
extern __attribute__((dllimport)) SAFEARRAY * __attribute__((__stdcall__)) SafeArrayCreate(VARTYPE vt,UINT cDims,SAFEARRAYBOUND *rgsabound);
extern __attribute__((dllimport)) SAFEARRAY * __attribute__((__stdcall__)) SafeArrayCreateEx(VARTYPE vt,UINT cDims,SAFEARRAYBOUND *rgsabound,PVOID pvExtra);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayCopyData(SAFEARRAY *psaSource,SAFEARRAY *psaTarget);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayDestroyDescriptor(SAFEARRAY *psa);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayDestroyData(SAFEARRAY *psa);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayDestroy(SAFEARRAY *psa);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayRedim(SAFEARRAY *psa,SAFEARRAYBOUND *psaboundNew);
extern __attribute__((dllimport)) UINT __attribute__((__stdcall__)) SafeArrayGetDim(SAFEARRAY *psa);
extern __attribute__((dllimport)) UINT __attribute__((__stdcall__)) SafeArrayGetElemsize(SAFEARRAY *psa);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayGetUBound(SAFEARRAY *psa,UINT nDim,LONG *plUbound);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayGetLBound(SAFEARRAY *psa,UINT nDim,LONG *plLbound);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayLock(SAFEARRAY *psa);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayUnlock(SAFEARRAY *psa);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayAccessData(SAFEARRAY *psa,void **ppvData);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayUnaccessData(SAFEARRAY *psa);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayGetElement(SAFEARRAY *psa,LONG *rgIndices,void *pv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayPutElement(SAFEARRAY *psa,LONG *rgIndices,void *pv);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayCopy(SAFEARRAY *psa,SAFEARRAY **ppsaOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayPtrOfIndex(SAFEARRAY *psa,LONG *rgIndices,void **ppvData);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArraySetRecordInfo(SAFEARRAY *psa,IRecordInfo *prinfo);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayGetRecordInfo(SAFEARRAY *psa,IRecordInfo **prinfo);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArraySetIID(SAFEARRAY *psa,const GUID *const guid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayGetIID(SAFEARRAY *psa,GUID *pguid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SafeArrayGetVartype(SAFEARRAY *psa,VARTYPE *pvt);
extern __attribute__((dllimport)) SAFEARRAY * __attribute__((__stdcall__)) SafeArrayCreateVector(VARTYPE vt,LONG lLbound,ULONG cElements);
extern __attribute__((dllimport)) SAFEARRAY * __attribute__((__stdcall__)) SafeArrayCreateVectorEx(VARTYPE vt,LONG lLbound,ULONG cElements,PVOID pvExtra);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) VariantInit(VARIANTARG *pvarg);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VariantClear(VARIANTARG *pvarg);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VariantCopy(VARIANTARG *pvargDest,VARIANTARG *pvargSrc);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VariantCopyInd(VARIANT *pvarDest,VARIANTARG *pvargSrc);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VariantChangeType(VARIANTARG *pvargDest,VARIANTARG *pvarSrc,USHORT wFlags,VARTYPE vt);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VariantChangeTypeEx(VARIANTARG *pvargDest,VARIANTARG *pvarSrc,LCID lcid,USHORT wFlags,VARTYPE vt);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VectorFromBstr (BSTR bstr,SAFEARRAY **ppsa);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) BstrFromVector (SAFEARRAY *psa,BSTR *pbstr);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromI2(SHORT sIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromI4(LONG lIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromI8(LONG64 i64In,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromR4(FLOAT fltIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromR8(DOUBLE dblIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromCy(CY cyIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromDate(DATE dateIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromDisp(IDispatch *pdispIn,LCID lcid,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromBool(VARIANT_BOOL boolIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromI1(CHAR cIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromUI2(USHORT uiIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromUI4(ULONG ulIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromUI8(ULONG64 ui64In,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI1FromDec(DECIMAL *pdecIn,BYTE *pbOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromUI1(BYTE bIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromI4(LONG lIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromI8(LONG64 i64In,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromR4(FLOAT fltIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromR8(DOUBLE dblIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromCy(CY cyIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromDate(DATE dateIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromDisp(IDispatch *pdispIn,LCID lcid,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromBool(VARIANT_BOOL boolIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromI1(CHAR cIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromUI2(USHORT uiIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromUI4(ULONG ulIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromUI8(ULONG64 ui64In,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI2FromDec(DECIMAL *pdecIn,SHORT *psOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromUI1(BYTE bIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromI2(SHORT sIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromI8(LONG64 i64In,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromR4(FLOAT fltIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromR8(DOUBLE dblIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromCy(CY cyIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromDate(DATE dateIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromDisp(IDispatch *pdispIn,LCID lcid,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromBool(VARIANT_BOOL boolIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromI1(CHAR cIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromUI2(USHORT uiIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromUI4(ULONG ulIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromUI8(ULONG64 ui64In,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromDec(DECIMAL *pdecIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromInt(INT intIn,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromUI1(BYTE bIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromI2(SHORT sIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromI4(LONG lIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromR4(FLOAT fltIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromR8(DOUBLE dblIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromCy(CY cyIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromDate(DATE dateIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromStr(OLECHAR *strIn,LCID lcid,unsigned long dwFlags,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromDisp(IDispatch *pdispIn,LCID lcid,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromBool(VARIANT_BOOL boolIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromI1(CHAR cIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromUI2(USHORT uiIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromUI4(ULONG ulIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromUI8(ULONG64 ui64In,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromDec(DECIMAL *pdecIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI8FromInt(INT intIn,LONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromUI1(BYTE bIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromI2(SHORT sIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromI4(LONG lIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromI8(LONG64 i64In,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromR8(DOUBLE dblIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromCy(CY cyIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromDate(DATE dateIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromDisp(IDispatch *pdispIn,LCID lcid,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromBool(VARIANT_BOOL boolIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromI1(CHAR cIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromUI2(USHORT uiIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromUI4(ULONG ulIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromUI8(ULONG64 ui64In,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR4FromDec(DECIMAL *pdecIn,FLOAT *pfltOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromUI1(BYTE bIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromI2(SHORT sIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromI4(LONG lIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromI8(LONG64 i64In,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromR4(FLOAT fltIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromCy(CY cyIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromDate(DATE dateIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromDisp(IDispatch *pdispIn,LCID lcid,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromBool(VARIANT_BOOL boolIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromI1(CHAR cIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromUI2(USHORT uiIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromUI4(ULONG ulIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromUI8(ULONG64 ui64In,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarR8FromDec(DECIMAL *pdecIn,DOUBLE *pdblOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromUI1(BYTE bIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromI2(SHORT sIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromI4(LONG lIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromI8(LONG64 i64In,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromR4(FLOAT fltIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromR8(DOUBLE dblIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromCy(CY cyIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromDisp(IDispatch *pdispIn,LCID lcid,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromBool(VARIANT_BOOL boolIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromI1(CHAR cIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromUI2(USHORT uiIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromUI4(ULONG ulIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromUI8(ULONG64 ui64In,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromDec(DECIMAL *pdecIn,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromUI1(BYTE bIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromI2(SHORT sIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromI4(LONG lIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromI8(LONG64 i64In,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromR4(FLOAT fltIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromR8(DOUBLE dblIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromDate(DATE dateIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromDisp(IDispatch *pdispIn,LCID lcid,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromBool(VARIANT_BOOL boolIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromI1(CHAR cIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromUI2(USHORT uiIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromUI4(ULONG ulIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromUI8(ULONG64 ui64In,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarCyFromDec(DECIMAL *pdecIn,CY *pcyOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromUI1(BYTE bVal,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromI2(SHORT iVal,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromI4(LONG lIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromI8(LONG64 i64In,LCID lcid,unsigned long dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromR4(FLOAT fltIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromR8(DOUBLE dblIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromCy(CY cyIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromDate(DATE dateIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromDisp(IDispatch *pdispIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromBool(VARIANT_BOOL boolIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromI1(CHAR cIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromUI2(USHORT uiIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromUI4(ULONG ulIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromUI8(ULONG64 ui64In,LCID lcid,unsigned long dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBstrFromDec(DECIMAL *pdecIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromUI1(BYTE bIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromI2(SHORT sIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromI4(LONG lIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromI8(LONG64 i64In,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromR4(FLOAT fltIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromR8(DOUBLE dblIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromDate(DATE dateIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromCy(CY cyIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromDisp(IDispatch *pdispIn,LCID lcid,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromI1(CHAR cIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromUI2(USHORT uiIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromUI4(ULONG ulIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromUI8(ULONG64 i64In,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarBoolFromDec(DECIMAL *pdecIn,VARIANT_BOOL *pboolOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromUI1(BYTE bIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromI2(SHORT uiIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromI4(LONG lIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromI8(LONG64 i64In,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromR4(FLOAT fltIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromR8(DOUBLE dblIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromDate(DATE dateIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromCy(CY cyIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromDisp(IDispatch *pdispIn,LCID lcid,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromBool(VARIANT_BOOL boolIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromUI2(USHORT uiIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromUI4(ULONG ulIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromUI8(ULONG64 i64In,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI1FromDec(DECIMAL *pdecIn,CHAR *pcOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromUI1(BYTE bIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromI2(SHORT uiIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromI4(LONG lIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromI8(LONG64 i64In,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromR4(FLOAT fltIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromR8(DOUBLE dblIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromDate(DATE dateIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromCy(CY cyIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromDisp(IDispatch *pdispIn,LCID lcid,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromBool(VARIANT_BOOL boolIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromI1(CHAR cIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromUI4(ULONG ulIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromUI8(ULONG64 i64In,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI2FromDec(DECIMAL *pdecIn,USHORT *puiOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromUI1(BYTE bIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromI2(SHORT uiIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromI4(LONG lIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromI8(LONG64 i64In,ULONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromR4(FLOAT fltIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromR8(DOUBLE dblIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromDate(DATE dateIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromCy(CY cyIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromDisp(IDispatch *pdispIn,LCID lcid,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromBool(VARIANT_BOOL boolIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromI1(CHAR cIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromUI2(USHORT uiIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromUI8(ULONG64 ui64In,ULONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI4FromDec(DECIMAL *pdecIn,ULONG *pulOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromUI1(BYTE bIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromI2(SHORT sIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromI4(LONG lIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromI8(LONG64 ui64In,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromR4(FLOAT fltIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromR8(DOUBLE dblIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromCy(CY cyIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromDate(DATE dateIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromStr(OLECHAR *strIn,LCID lcid,unsigned long dwFlags,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromDisp(IDispatch *pdispIn,LCID lcid,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromBool(VARIANT_BOOL boolIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromI1(CHAR cIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromUI2(USHORT uiIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromUI4(ULONG ulIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromDec(DECIMAL *pdecIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUI8FromInt(INT intIn,ULONG64 *pi64Out);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromUI1(BYTE bIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromI2(SHORT uiIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromI4(LONG lIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromI8(LONG64 i64In,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromR4(FLOAT fltIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromR8(DOUBLE dblIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromDate(DATE dateIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromCy(CY cyIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromDisp(IDispatch *pdispIn,LCID lcid,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromBool(VARIANT_BOOL boolIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromI1(CHAR cIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromUI2(USHORT uiIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromUI4(ULONG ulIn,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDecFromUI8(ULONG64 ui64In,DECIMAL *pdecOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromI8(LONG64 i64In,LONG *plOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarI4FromUI8(ULONG64 ui64In,LONG *plOut);
typedef struct {
INT cDig;
ULONG dwInFlags;
ULONG dwOutFlags;
INT cchUsed;
INT nBaseShift;
INT nPwr10;
} NUMPARSE;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarParseNumFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,NUMPARSE *pnumprs,BYTE *rgbDig);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarNumFromParseNum(NUMPARSE *pnumprs,BYTE *rgbDig,ULONG dwVtBits,VARIANT *pvar);
extern HRESULT __attribute__((__stdcall__)) VarAdd(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarAnd(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarCat(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarDiv(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarEqv(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarIdiv(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarImp(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarMod(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarMul(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarOr(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarPow(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarSub(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarXor(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarAbs(LPVARIANT pvarIn,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarFix(LPVARIANT pvarIn,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarInt(LPVARIANT pvarIn,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarNeg(LPVARIANT pvarIn,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarNot(LPVARIANT pvarIn,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarRound(LPVARIANT pvarIn,int cDecimals,LPVARIANT pvarResult);
extern HRESULT __attribute__((__stdcall__)) VarCmp(LPVARIANT pvarLeft,LPVARIANT pvarRight,LCID lcid,ULONG dwFlags);
extern HRESULT __attribute__((__stdcall__)) VarDecAdd(LPDECIMAL pdecLeft,LPDECIMAL pdecRight,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecDiv(LPDECIMAL pdecLeft,LPDECIMAL pdecRight,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecMul(LPDECIMAL pdecLeft,LPDECIMAL pdecRight,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecSub(LPDECIMAL pdecLeft,LPDECIMAL pdecRight,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecAbs(LPDECIMAL pdecIn,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecFix(LPDECIMAL pdecIn,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecInt(LPDECIMAL pdecIn,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecNeg(LPDECIMAL pdecIn,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecRound(LPDECIMAL pdecIn,int cDecimals,LPDECIMAL pdecResult);
extern HRESULT __attribute__((__stdcall__)) VarDecCmp(LPDECIMAL pdecLeft,LPDECIMAL pdecRight);
extern HRESULT __attribute__((__stdcall__)) VarDecCmpR8(LPDECIMAL pdecLeft,double dblRight);
extern HRESULT __attribute__((__stdcall__)) VarCyAdd(CY cyLeft,CY cyRight,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyMul(CY cyLeft,CY cyRight,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyMulI4(CY cyLeft,long lRight,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyMulI8(CY cyLeft,LONG64 lRight,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCySub(CY cyLeft,CY cyRight,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyAbs(CY cyIn,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyFix(CY cyIn,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyInt(CY cyIn,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyNeg(CY cyIn,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyRound(CY cyIn,int cDecimals,LPCY pcyResult);
extern HRESULT __attribute__((__stdcall__)) VarCyCmp(CY cyLeft,CY cyRight);
extern HRESULT __attribute__((__stdcall__)) VarCyCmpR8(CY cyLeft,double dblRight);
extern HRESULT __attribute__((__stdcall__)) VarBstrCat(BSTR bstrLeft,BSTR bstrRight,LPBSTR pbstrResult);
extern HRESULT __attribute__((__stdcall__)) VarBstrCmp(BSTR bstrLeft,BSTR bstrRight,LCID lcid,ULONG dwFlags);
extern HRESULT __attribute__((__stdcall__)) VarR8Pow(double dblLeft,double dblRight,double *pdblResult);
extern HRESULT __attribute__((__stdcall__)) VarR4CmpR8(float fltLeft,double dblRight);
extern HRESULT __attribute__((__stdcall__)) VarR8Round(double dblIn,int cDecimals,double *pdblResult);
typedef struct {
SYSTEMTIME st;
USHORT wDayOfYear;
} UDATE;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromUdate(UDATE *pudateIn,ULONG dwFlags,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarDateFromUdateEx(UDATE *pudateIn,LCID lcid,ULONG dwFlags,DATE *pdateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarUdateFromDate(DATE dateIn,ULONG dwFlags,UDATE *pudateOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetAltMonthNames(LCID lcid,LPOLESTR **prgp);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarFormat(LPVARIANT pvarIn,LPOLESTR pstrFormat,int iFirstDay,int iFirstWeek,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarFormatDateTime(LPVARIANT pvarIn,int iNamedFormat,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarFormatNumber(LPVARIANT pvarIn,int iNumDig,int iIncLead,int iUseParens,int iGroup,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarFormatPercent(LPVARIANT pvarIn,int iNumDig,int iIncLead,int iUseParens,int iGroup,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarFormatCurrency(LPVARIANT pvarIn,int iNumDig,int iIncLead,int iUseParens,int iGroup,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarWeekdayName(int iWeekday,int fAbbrev,int iFirstDay,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarMonthName(int iMonth,int fAbbrev,ULONG dwFlags,BSTR *pbstrOut);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarFormatFromTokens(LPVARIANT pvarIn,LPOLESTR pstrFormat,LPBYTE pbTokCur,ULONG dwFlags,BSTR *pbstrOut,LCID lcid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) VarTokenizeFormatString(LPOLESTR pstrFormat,LPBYTE rgbTok,int cbTok,int iFirstDay,int iFirstWeek,LCID lcid,int *pcbActual);
typedef ITypeLib *LPTYPELIB;
typedef LONG DISPID;
typedef DISPID MEMBERID;
typedef ITypeInfo *LPTYPEINFO;
typedef ITypeComp *LPTYPECOMP;
typedef ICreateTypeLib *LPCREATETYPELIB;
typedef ICreateTypeInfo *LPCREATETYPEINFO;
extern __attribute__((dllimport)) ULONG __attribute__((__stdcall__)) LHashValOfNameSysA(SYSKIND syskind,LCID lcid,LPCSTR szName);
extern __attribute__((dllimport)) ULONG __attribute__((__stdcall__)) LHashValOfNameSys(SYSKIND syskind,LCID lcid,const OLECHAR *szName);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) LoadTypeLib(const OLECHAR *szFile,ITypeLib **pptlib);
typedef enum tagREGKIND {
REGKIND_DEFAULT,REGKIND_REGISTER,REGKIND_NONE
} REGKIND;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) LoadTypeLibEx(LPCOLESTR szFile,REGKIND regkind,ITypeLib **pptlib);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) LoadRegTypeLib(const GUID *const rguid,WORD wVerMajor,WORD wVerMinor,LCID lcid,ITypeLib **pptlib);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) QueryPathOfRegTypeLib(const GUID *const guid,USHORT wMaj,USHORT wMin,LCID lcid,LPBSTR lpbstrPathName);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) RegisterTypeLib(ITypeLib *ptlib,OLECHAR *szFullPath,OLECHAR *szHelpDir);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) UnRegisterTypeLib(const GUID *const libID,WORD wVerMajor,WORD wVerMinor,LCID lcid,SYSKIND syskind);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateTypeLib(SYSKIND syskind,const OLECHAR *szFile,ICreateTypeLib **ppctlib);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateTypeLib2(SYSKIND syskind,LPCOLESTR szFile,ICreateTypeLib2 **ppctlib);
typedef IDispatch *LPDISPATCH;
typedef struct tagPARAMDATA {
OLECHAR *szName;
VARTYPE vt;
} PARAMDATA,*LPPARAMDATA;
typedef struct tagMETHODDATA {
OLECHAR *szName;
PARAMDATA *ppdata;
DISPID dispid;
UINT iMeth;
CALLCONV cc;
UINT cArgs;
WORD wFlags;
VARTYPE vtReturn;
} METHODDATA,*LPMETHODDATA;
typedef struct tagINTERFACEDATA {
METHODDATA *pmethdata;
UINT cMembers;
} INTERFACEDATA,*LPINTERFACEDATA;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) DispGetParam(DISPPARAMS *pdispparams,UINT position,VARTYPE vtTarg,VARIANT *pvarResult,UINT *puArgErr);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) DispGetIDsOfNames(ITypeInfo *ptinfo,OLECHAR **rgszNames,UINT cNames,DISPID *rgdispid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) DispInvoke(void *_this,ITypeInfo *ptinfo,DISPID dispidMember,WORD wFlags,DISPPARAMS *pparams,VARIANT *pvarResult,EXCEPINFO *pexcepinfo,UINT *puArgErr);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateDispTypeInfo(INTERFACEDATA *pidata,LCID lcid,ITypeInfo **pptinfo);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateStdDispatch(IUnknown *punkOuter,void *pvThis,ITypeInfo *ptinfo,IUnknown **ppunkStdDisp);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) DispCallFunc(void *pvInstance,ULONG_PTR oVft,CALLCONV cc,VARTYPE vtReturn,UINT cActuals,VARTYPE *prgvt,VARIANTARG **prgpvarg,VARIANT *pvargResult);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) RegisterActiveObject(IUnknown *punk,const IID *const rclsid,DWORD dwFlags,DWORD *pdwRegister);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) RevokeActiveObject(DWORD dwRegister,void *pvReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetActiveObject(const IID *const rclsid,void *pvReserved,IUnknown **ppunk);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SetErrorInfo(ULONG dwReserved,IErrorInfo *perrinfo);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetErrorInfo(ULONG dwReserved,IErrorInfo **pperrinfo);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateErrorInfo(ICreateErrorInfo **pperrinfo);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetRecordInfoFromTypeInfo(ITypeInfo *pTypeInfo,IRecordInfo **ppRecInfo);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetRecordInfoFromGuids(const GUID *const rGuidTypeLib,ULONG uVerMajor,ULONG uVerMinor,LCID lcid,const GUID *const rGuidTypeInfo,IRecordInfo **ppRecInfo);
extern __attribute__((dllimport)) ULONG __attribute__((__stdcall__)) OaBuildVersion(void);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) ClearCustData(LPCUSTDATA pCustData);
#pragma pack(pop)
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) OleBuildVersion (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateDataAdviseHolder (LPDATAADVISEHOLDER *ppDAHolder);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) ReadClassStg (LPSTORAGE pStg, CLSID *pclsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) WriteClassStg (LPSTORAGE pStg, const IID *const rclsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) ReadClassStm (LPSTREAM pStm, CLSID *pclsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) WriteClassStm (LPSTREAM pStm, const IID *const rclsid);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) WriteFmtUserTypeStg (LPSTORAGE pstg, CLIPFORMAT cf, LPOLESTR lpszUserType);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) ReadFmtUserTypeStg (LPSTORAGE pstg, CLIPFORMAT *pcf, LPOLESTR *lplpszUserType);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleInitialize (LPVOID pvReserved);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) OleUninitialize (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleQueryLinkFromData (LPDATAOBJECT pSrcDataObject);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleQueryCreateFromData (LPDATAOBJECT pSrcDataObject);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreate (const IID *const rclsid, const IID *const riid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateEx (const IID *const rclsid, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateFromData (LPDATAOBJECT pSrcDataObj, const IID *const riid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateFromDataEx (LPDATAOBJECT pSrcDataObj, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateLinkFromData (LPDATAOBJECT pSrcDataObj, const IID *const riid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateLinkFromDataEx (LPDATAOBJECT pSrcDataObj, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateStaticFromData (LPDATAOBJECT pSrcDataObj, const IID *const iid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateLink (LPMONIKER pmkLinkSrc, const IID *const riid, DWORD renderopt, LPFORMATETC lpFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateLinkEx (LPMONIKER pmkLinkSrc, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateLinkToFile (LPCOLESTR lpszFileName, const IID *const riid, DWORD renderopt, LPFORMATETC lpFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateLinkToFileEx (LPCOLESTR lpszFileName, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateFromFile (const IID *const rclsid, LPCOLESTR lpszFileName, const IID *const riid, DWORD renderopt, LPFORMATETC lpFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateFromFileEx (const IID *const rclsid, LPCOLESTR lpszFileName, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleLoad (LPSTORAGE pStg, const IID *const riid, LPOLECLIENTSITE pClientSite, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleSave (LPPERSISTSTORAGE pPS, LPSTORAGE pStg, WINBOOL fSameAsLoad);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleLoadFromStream (LPSTREAM pStm, const IID *const iidInterface, LPVOID *ppvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleSaveToStream (LPPERSISTSTREAM pPStm, LPSTREAM pStm);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleSetContainedObject (LPUNKNOWN pUnknown, WINBOOL fContained);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleNoteObjectVisible (LPUNKNOWN pUnknown, WINBOOL fVisible);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) RegisterDragDrop (HWND hwnd, LPDROPTARGET pDropTarget);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) RevokeDragDrop (HWND hwnd);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) DoDragDrop (LPDATAOBJECT pDataObj, LPDROPSOURCE pDropSource, DWORD dwOKEffects, LPDWORD pdwEffect);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleSetClipboard (LPDATAOBJECT pDataObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleGetClipboard (LPDATAOBJECT *ppDataObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleFlushClipboard (void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleIsCurrentClipboard (LPDATAOBJECT pDataObj);
extern __attribute__((dllimport)) HOLEMENU __attribute__((__stdcall__)) OleCreateMenuDescriptor (HMENU hmenuCombined, LPOLEMENUGROUPWIDTHS lpMenuWidths);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleSetMenuDescriptor (HOLEMENU holemenu, HWND hwndFrame, HWND hwndActiveObject, LPOLEINPLACEFRAME lpFrame, LPOLEINPLACEACTIVEOBJECT lpActiveObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleDestroyMenuDescriptor (HOLEMENU holemenu);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleTranslateAccelerator (LPOLEINPLACEFRAME lpFrame, LPOLEINPLACEFRAMEINFO lpFrameInfo, LPMSG lpmsg);
extern __attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) OleDuplicateData (HANDLE hSrc, CLIPFORMAT cfFormat, UINT uiFlags);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleDraw (LPUNKNOWN pUnknown, DWORD dwAspect, HDC hdcDraw, LPCRECT lprcBounds);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleRun (LPUNKNOWN pUnknown);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) OleIsRunning (LPOLEOBJECT pObject);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleLockRunning (LPUNKNOWN pUnknown, WINBOOL fLock, WINBOOL fLastUnlockCloses);
extern __attribute__((dllimport)) void __attribute__((__stdcall__)) ReleaseStgMedium (LPSTGMEDIUM);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateOleAdviseHolder (LPOLEADVISEHOLDER *ppOAHolder);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateDefaultHandler (const IID *const clsid, LPUNKNOWN pUnkOuter, const IID *const riid, LPVOID *lplpObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateEmbeddingHelper (const IID *const clsid, LPUNKNOWN pUnkOuter, DWORD flags, LPCLASSFACTORY pCF, const IID *const riid, LPVOID *lplpObj);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) IsAccelerator (HACCEL hAccel, int cAccelEntries, LPMSG lpMsg, WORD *lpwCmd);
extern __attribute__((dllimport)) HGLOBAL __attribute__((__stdcall__)) OleGetIconOfFile (LPOLESTR lpszPath, WINBOOL fUseFileAsLabel);
extern __attribute__((dllimport)) HGLOBAL __attribute__((__stdcall__)) OleGetIconOfClass (const IID *const rclsid, LPOLESTR lpszLabel, WINBOOL fUseTypeAsLabel);
extern __attribute__((dllimport)) HGLOBAL __attribute__((__stdcall__)) OleMetafilePictFromIconAndLabel (HICON hIcon, LPOLESTR lpszLabel, LPOLESTR lpszSourceFile, UINT iIconIndex);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleRegGetUserType (const IID *const clsid, DWORD dwFormOfType, LPOLESTR *pszUserType);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleRegGetMiscStatus (const IID *const clsid, DWORD dwAspect, DWORD *pdwStatus);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleRegEnumFormatEtc (const IID *const clsid, DWORD dwDirection, LPENUMFORMATETC *ppenum);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleRegEnumVerbs (const IID *const clsid, LPENUMOLEVERB *ppenum);
typedef struct _OLESTREAM *LPOLESTREAM;
typedef struct _OLESTREAMVTBL {
DWORD (__attribute__((__stdcall__)) *Get) (LPOLESTREAM, void *, DWORD);
DWORD (__attribute__((__stdcall__)) *Put) (LPOLESTREAM, const void *, DWORD);
} OLESTREAMVTBL;
typedef OLESTREAMVTBL *LPOLESTREAMVTBL;
typedef struct _OLESTREAM {
LPOLESTREAMVTBL lpstbl;
} OLESTREAM;
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleConvertOLESTREAMToIStorage (LPOLESTREAM lpolestream, LPSTORAGE pstg, const DVTARGETDEVICE *ptd);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleConvertIStorageToOLESTREAM (LPSTORAGE pstg, LPOLESTREAM lpolestream);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetHGlobalFromILockBytes (LPLOCKBYTES plkbyt, HGLOBAL *phglobal);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) CreateILockBytesOnHGlobal (HGLOBAL hGlobal, WINBOOL fDeleteOnRelease, LPLOCKBYTES *pplkbyt);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleDoAutoConvert (LPSTORAGE pStg, LPCLSID pClsidNew);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleGetAutoConvert (const IID *const clsidOld, LPCLSID pClsidNew);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleSetAutoConvert (const IID *const clsidOld, const IID *const clsidNew);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) GetConvertStg (LPSTORAGE pStg);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) SetConvertStg (LPSTORAGE pStg, WINBOOL fConvert);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleConvertIStorageToOLESTREAMEx (LPSTORAGE pstg, CLIPFORMAT cfFormat, LONG lWidth, LONG lHeight, DWORD dwSize, LPSTGMEDIUM pmedium, LPOLESTREAM polestm);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleConvertOLESTREAMToIStorageEx (LPOLESTREAM polestm, LPSTORAGE pstg, CLIPFORMAT *pcfFormat, LONG *plwWidth, LONG *plHeight, DWORD *pdwSize, LPSTGMEDIUM pmedium);
#pragma pack(pop)
extern const GUID GUID_DEVINTERFACE_DISK;
extern const GUID GUID_DEVINTERFACE_CDROM;
extern const GUID GUID_DEVINTERFACE_PARTITION;
extern const GUID GUID_DEVINTERFACE_TAPE;
extern const GUID GUID_DEVINTERFACE_WRITEONCEDISK;
extern const GUID GUID_DEVINTERFACE_VOLUME;
extern const GUID GUID_DEVINTERFACE_MEDIUMCHANGER;
extern const GUID GUID_DEVINTERFACE_FLOPPY;
extern const GUID GUID_DEVINTERFACE_CDCHANGER;
extern const GUID GUID_DEVINTERFACE_STORAGEPORT;
extern const GUID GUID_DEVINTERFACE_COMPORT;
extern const GUID GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR;
typedef struct _STORAGE_READ_CAPACITY {
ULONG Version;
ULONG Size;
ULONG BlockLength;
LARGE_INTEGER NumberOfBlocks;
LARGE_INTEGER DiskLength;
} STORAGE_READ_CAPACITY, *PSTORAGE_READ_CAPACITY;
typedef struct _STORAGE_HOTPLUG_INFO {
DWORD Size;
BOOLEAN MediaRemovable;
BOOLEAN MediaHotplug;
BOOLEAN DeviceHotplug;
BOOLEAN WriteCacheEnableOverride;
} STORAGE_HOTPLUG_INFO,*PSTORAGE_HOTPLUG_INFO;
typedef struct _STORAGE_DEVICE_NUMBER {
DWORD DeviceType;
DWORD DeviceNumber;
DWORD PartitionNumber;
} STORAGE_DEVICE_NUMBER,*PSTORAGE_DEVICE_NUMBER;
typedef struct _STORAGE_BUS_RESET_REQUEST {
BYTE PathId;
} STORAGE_BUS_RESET_REQUEST,*PSTORAGE_BUS_RESET_REQUEST;
typedef struct STORAGE_BREAK_RESERVATION_REQUEST {
DWORD Length;
BYTE _unused;
BYTE PathId;
BYTE TargetId;
BYTE Lun;
} STORAGE_BREAK_RESERVATION_REQUEST,*PSTORAGE_BREAK_RESERVATION_REQUEST;
typedef struct _PREVENT_MEDIA_REMOVAL {
BOOLEAN PreventMediaRemoval;
} PREVENT_MEDIA_REMOVAL,*PPREVENT_MEDIA_REMOVAL;
typedef struct _CLASS_MEDIA_CHANGE_CONTEXT {
DWORD MediaChangeCount;
DWORD NewState;
} CLASS_MEDIA_CHANGE_CONTEXT,*PCLASS_MEDIA_CHANGE_CONTEXT;
typedef struct _TAPE_STATISTICS {
DWORD Version;
DWORD Flags;
LARGE_INTEGER RecoveredWrites;
LARGE_INTEGER UnrecoveredWrites;
LARGE_INTEGER RecoveredReads;
LARGE_INTEGER UnrecoveredReads;
BYTE CompressionRatioReads;
BYTE CompressionRatioWrites;
} TAPE_STATISTICS,*PTAPE_STATISTICS;
typedef struct _TAPE_GET_STATISTICS {
DWORD Operation;
} TAPE_GET_STATISTICS,*PTAPE_GET_STATISTICS;
typedef enum _STORAGE_MEDIA_TYPE {
DDS_4mm = 0x20,
MiniQic,
Travan,
QIC,
MP_8mm,
AME_8mm,
AIT1_8mm,
DLT,
NCTP,
IBM_3480,
IBM_3490E,
IBM_Magstar_3590,
IBM_Magstar_MP,
STK_DATA_D3,
SONY_DTF,
DV_6mm,
DMI,
SONY_D2,
CLEANER_CARTRIDGE,
CD_ROM,
CD_R,
CD_RW,
DVD_ROM,
DVD_R,
DVD_RW,
MO_3_RW,
MO_5_WO,
MO_5_RW,
MO_5_LIMDOW,
PC_5_WO,
PC_5_RW,
PD_5_RW,
ABL_5_WO,
PINNACLE_APEX_5_RW,
SONY_12_WO,
PHILIPS_12_WO,
HITACHI_12_WO,
CYGNET_12_WO,
KODAK_14_WO,
MO_NFR_525,
NIKON_12_RW,
IOMEGA_ZIP,
IOMEGA_JAZ,
SYQUEST_EZ135,
SYQUEST_EZFLYER,
SYQUEST_SYJET,
AVATAR_F2,
MP2_8mm,
DST_S,
DST_M,
DST_L,
VXATape_1,
VXATape_2,
STK_9840,
LTO_Ultrium,
LTO_Accelis,
DVD_RAM,
AIT_8mm,
ADR_1,
ADR_2,
STK_9940,
SAIT,
VXATape
} STORAGE_MEDIA_TYPE, *PSTORAGE_MEDIA_TYPE;
typedef enum _STORAGE_BUS_TYPE {
BusTypeUnknown = 0x00,
BusTypeScsi = 0x1,
BusTypeAtapi = 0x2,
BusTypeAta = 0x3,
BusType1394 = 0x4,
BusTypeSsa = 0x5,
BusTypeFibre = 0x6,
BusTypeUsb = 0x7,
BusTypeRAID = 0x8,
BusTypeMax,
BusTypeMaxReserved = 0x7F
} STORAGE_BUS_TYPE, *PSTORAGE_BUS_TYPE;
typedef struct _DEVICE_MEDIA_INFO {
union {
struct {
LARGE_INTEGER Cylinders;
STORAGE_MEDIA_TYPE MediaType;
DWORD TracksPerCylinder;
DWORD SectorsPerTrack;
DWORD BytesPerSector;
DWORD NumberMediaSides;
DWORD MediaCharacteristics;
} DiskInfo;
struct {
LARGE_INTEGER Cylinders;
STORAGE_MEDIA_TYPE MediaType;
DWORD TracksPerCylinder;
DWORD SectorsPerTrack;
DWORD BytesPerSector;
DWORD NumberMediaSides;
DWORD MediaCharacteristics;
} RemovableDiskInfo;
struct {
STORAGE_MEDIA_TYPE MediaType;
DWORD MediaCharacteristics;
DWORD CurrentBlockSize;
STORAGE_BUS_TYPE BusType;
union {
struct {
BYTE MediumType;
BYTE DensityCode;
} ScsiInformation;
} BusSpecificData;
} TapeInfo;
} DeviceSpecific;
} DEVICE_MEDIA_INFO,*PDEVICE_MEDIA_INFO;
typedef struct _GET_MEDIA_TYPES {
DWORD DeviceType;
DWORD MediaInfoCount;
DEVICE_MEDIA_INFO MediaInfo[1];
} GET_MEDIA_TYPES,*PGET_MEDIA_TYPES;
typedef struct _STORAGE_PREDICT_FAILURE {
DWORD PredictFailure;
BYTE VendorSpecific[512];
} STORAGE_PREDICT_FAILURE,*PSTORAGE_PREDICT_FAILURE;
typedef enum _MEDIA_TYPE {
Unknown,F5_1Pt2_512,F3_1Pt44_512,F3_2Pt88_512,F3_20Pt8_512,F3_720_512,F5_360_512,F5_320_512,F5_320_1024,F5_180_512,F5_160_512,
RemovableMedia,FixedMedia,F3_120M_512,F3_640_512,F5_640_512,F5_720_512,F3_1Pt2_512,F3_1Pt23_1024,F5_1Pt23_1024,F3_128Mb_512,
F3_230Mb_512,F8_256_128,F3_200Mb_512,F3_240M_512,F3_32M_512
} MEDIA_TYPE,*PMEDIA_TYPE;
typedef struct _FORMAT_PARAMETERS {
MEDIA_TYPE MediaType;
DWORD StartCylinderNumber;
DWORD EndCylinderNumber;
DWORD StartHeadNumber;
DWORD EndHeadNumber;
} FORMAT_PARAMETERS,*PFORMAT_PARAMETERS;
typedef WORD BAD_TRACK_NUMBER;
typedef WORD *PBAD_TRACK_NUMBER;
typedef struct _FORMAT_EX_PARAMETERS {
MEDIA_TYPE MediaType;
DWORD StartCylinderNumber;
DWORD EndCylinderNumber;
DWORD StartHeadNumber;
DWORD EndHeadNumber;
WORD FormatGapLength;
WORD SectorsPerTrack;
WORD SectorNumber[1];
} FORMAT_EX_PARAMETERS,*PFORMAT_EX_PARAMETERS;
typedef struct _DISK_GEOMETRY {
LARGE_INTEGER Cylinders;
MEDIA_TYPE MediaType;
DWORD TracksPerCylinder;
DWORD SectorsPerTrack;
DWORD BytesPerSector;
} DISK_GEOMETRY,*PDISK_GEOMETRY;
typedef struct _PARTITION_INFORMATION {
LARGE_INTEGER StartingOffset;
LARGE_INTEGER PartitionLength;
DWORD HiddenSectors;
DWORD PartitionNumber;
BYTE PartitionType;
BOOLEAN BootIndicator;
BOOLEAN RecognizedPartition;
BOOLEAN RewritePartition;
} PARTITION_INFORMATION,*PPARTITION_INFORMATION;
typedef struct _SET_PARTITION_INFORMATION {
BYTE PartitionType;
} SET_PARTITION_INFORMATION,*PSET_PARTITION_INFORMATION;
typedef struct _DRIVE_LAYOUT_INFORMATION {
DWORD PartitionCount;
DWORD Signature;
PARTITION_INFORMATION PartitionEntry[1];
} DRIVE_LAYOUT_INFORMATION,*PDRIVE_LAYOUT_INFORMATION;
typedef struct _VERIFY_INFORMATION {
LARGE_INTEGER StartingOffset;
DWORD Length;
} VERIFY_INFORMATION,*PVERIFY_INFORMATION;
typedef struct _REASSIGN_BLOCKS {
WORD Reserved;
WORD Count;
DWORD BlockNumber[1];
} REASSIGN_BLOCKS,*PREASSIGN_BLOCKS;
#pragma pack(push,1)
typedef struct _REASSIGN_BLOCKS_EX {
WORD Reserved;
WORD Count;
LARGE_INTEGER BlockNumber[1];
} REASSIGN_BLOCKS_EX,*PREASSIGN_BLOCKS_EX;
#pragma pack(pop)
typedef enum _PARTITION_STYLE {
PARTITION_STYLE_MBR,PARTITION_STYLE_GPT,PARTITION_STYLE_RAW
} PARTITION_STYLE;
typedef struct _PARTITION_INFORMATION_GPT {
GUID PartitionType;
GUID PartitionId;
DWORD64 Attributes;
WCHAR Name [36];
} PARTITION_INFORMATION_GPT,*PPARTITION_INFORMATION_GPT;
typedef struct _PARTITION_INFORMATION_MBR {
BYTE PartitionType;
BOOLEAN BootIndicator;
BOOLEAN RecognizedPartition;
DWORD HiddenSectors;
} PARTITION_INFORMATION_MBR,*PPARTITION_INFORMATION_MBR;
typedef SET_PARTITION_INFORMATION SET_PARTITION_INFORMATION_MBR;
typedef PARTITION_INFORMATION_GPT SET_PARTITION_INFORMATION_GPT;
typedef struct _SET_PARTITION_INFORMATION_EX {
PARTITION_STYLE PartitionStyle;
__extension__ union {
SET_PARTITION_INFORMATION_MBR Mbr;
SET_PARTITION_INFORMATION_GPT Gpt;
} ;
} SET_PARTITION_INFORMATION_EX,*PSET_PARTITION_INFORMATION_EX;
typedef struct _CREATE_DISK_GPT {
GUID DiskId;
DWORD MaxPartitionCount;
} CREATE_DISK_GPT,*PCREATE_DISK_GPT;
typedef struct _CREATE_DISK_MBR {
DWORD Signature;
} CREATE_DISK_MBR,*PCREATE_DISK_MBR;
typedef struct _CREATE_DISK {
PARTITION_STYLE PartitionStyle;
__extension__ union {
CREATE_DISK_MBR Mbr;
CREATE_DISK_GPT Gpt;
} ;
} CREATE_DISK,*PCREATE_DISK;
typedef struct _GET_LENGTH_INFORMATION {
LARGE_INTEGER Length;
} GET_LENGTH_INFORMATION,*PGET_LENGTH_INFORMATION;
typedef struct _PARTITION_INFORMATION_EX {
PARTITION_STYLE PartitionStyle;
LARGE_INTEGER StartingOffset;
LARGE_INTEGER PartitionLength;
DWORD PartitionNumber;
BOOLEAN RewritePartition;
__extension__ union {
PARTITION_INFORMATION_MBR Mbr;
PARTITION_INFORMATION_GPT Gpt;
} ;
} PARTITION_INFORMATION_EX,*PPARTITION_INFORMATION_EX;
typedef struct _DRIVE_LAYOUT_INFORMATION_GPT {
GUID DiskId;
LARGE_INTEGER StartingUsableOffset;
LARGE_INTEGER UsableLength;
DWORD MaxPartitionCount;
} DRIVE_LAYOUT_INFORMATION_GPT,*PDRIVE_LAYOUT_INFORMATION_GPT;
typedef struct _DRIVE_LAYOUT_INFORMATION_MBR {
DWORD Signature;
} DRIVE_LAYOUT_INFORMATION_MBR,*PDRIVE_LAYOUT_INFORMATION_MBR;
typedef struct _DRIVE_LAYOUT_INFORMATION_EX {
DWORD PartitionStyle;
DWORD PartitionCount;
__extension__ union {
DRIVE_LAYOUT_INFORMATION_MBR Mbr;
DRIVE_LAYOUT_INFORMATION_GPT Gpt;
} ;
PARTITION_INFORMATION_EX PartitionEntry[1];
} DRIVE_LAYOUT_INFORMATION_EX,*PDRIVE_LAYOUT_INFORMATION_EX;
typedef enum _DETECTION_TYPE {
DetectNone,DetectInt13,DetectExInt13
} DETECTION_TYPE;
typedef struct _DISK_INT13_INFO {
WORD DriveSelect;
DWORD MaxCylinders;
WORD SectorsPerTrack;
WORD MaxHeads;
WORD NumberDrives;
} DISK_INT13_INFO,*PDISK_INT13_INFO;
typedef struct _DISK_EX_INT13_INFO {
WORD ExBufferSize;
WORD ExFlags;
DWORD ExCylinders;
DWORD ExHeads;
DWORD ExSectorsPerTrack;
DWORD64 ExSectorsPerDrive;
WORD ExSectorSize;
WORD ExReserved;
} DISK_EX_INT13_INFO,*PDISK_EX_INT13_INFO;
typedef struct _DISK_DETECTION_INFO {
DWORD SizeOfDetectInfo;
DETECTION_TYPE DetectionType;
__extension__ union {
__extension__ struct {
DISK_INT13_INFO Int13;
DISK_EX_INT13_INFO ExInt13;
} ;
} ;
} DISK_DETECTION_INFO,*PDISK_DETECTION_INFO;
typedef struct _DISK_PARTITION_INFO {
DWORD SizeOfPartitionInfo;
PARTITION_STYLE PartitionStyle;
__extension__ union {
struct {
DWORD Signature;
DWORD CheckSum;
} Mbr;
struct {
GUID DiskId;
} Gpt;
} ;
} DISK_PARTITION_INFO,*PDISK_PARTITION_INFO;
typedef struct _DISK_GEOMETRY_EX {
DISK_GEOMETRY Geometry;
LARGE_INTEGER DiskSize;
BYTE Data[1];
} DISK_GEOMETRY_EX,*PDISK_GEOMETRY_EX;
typedef struct _DISK_CONTROLLER_NUMBER {
DWORD ControllerNumber;
DWORD DiskNumber;
} DISK_CONTROLLER_NUMBER,*PDISK_CONTROLLER_NUMBER;
typedef enum {
EqualPriority,KeepPrefetchedData,KeepReadData
} DISK_CACHE_RETENTION_PRIORITY;
typedef struct _DISK_CACHE_INFORMATION {
BOOLEAN ParametersSavable;
BOOLEAN ReadCacheEnabled;
BOOLEAN WriteCacheEnabled;
DISK_CACHE_RETENTION_PRIORITY ReadRetentionPriority;
DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority;
WORD DisablePrefetchTransferLength;
BOOLEAN PrefetchScalar;
__extension__ union {
struct {
WORD Minimum;
WORD Maximum;
WORD MaximumBlocks;
} ScalarPrefetch;
struct {
WORD Minimum;
WORD Maximum;
} BlockPrefetch;
} ;
} DISK_CACHE_INFORMATION,*PDISK_CACHE_INFORMATION;
typedef struct _DISK_GROW_PARTITION {
DWORD PartitionNumber;
LARGE_INTEGER BytesToGrow;
} DISK_GROW_PARTITION,*PDISK_GROW_PARTITION;
typedef struct _HISTOGRAM_BUCKET {
DWORD Reads;
DWORD Writes;
} HISTOGRAM_BUCKET,*PHISTOGRAM_BUCKET;
typedef struct _DISK_HISTOGRAM {
LARGE_INTEGER DiskSize;
LARGE_INTEGER Start;
LARGE_INTEGER End;
LARGE_INTEGER Average;
LARGE_INTEGER AverageRead;
LARGE_INTEGER AverageWrite;
DWORD Granularity;
DWORD Size;
DWORD ReadCount;
DWORD WriteCount;
PHISTOGRAM_BUCKET Histogram;
} DISK_HISTOGRAM,*PDISK_HISTOGRAM;
typedef struct _DISK_PERFORMANCE {
LARGE_INTEGER BytesRead;
LARGE_INTEGER BytesWritten;
LARGE_INTEGER ReadTime;
LARGE_INTEGER WriteTime;
LARGE_INTEGER IdleTime;
DWORD ReadCount;
DWORD WriteCount;
DWORD QueueDepth;
DWORD SplitCount;
LARGE_INTEGER QueryTime;
DWORD StorageDeviceNumber;
WCHAR StorageManagerName[8];
} DISK_PERFORMANCE,*PDISK_PERFORMANCE;
typedef struct _DISK_RECORD {
LARGE_INTEGER ByteOffset;
LARGE_INTEGER StartTime;
LARGE_INTEGER EndTime;
PVOID VirtualAddress;
DWORD NumberOfBytes;
BYTE DeviceNumber;
BOOLEAN ReadRequest;
} DISK_RECORD,*PDISK_RECORD;
typedef struct _DISK_LOGGING {
BYTE Function;
PVOID BufferAddress;
DWORD BufferSize;
} DISK_LOGGING,*PDISK_LOGGING;
typedef enum _BIN_TYPES {
RequestSize,RequestLocation
} BIN_TYPES;
typedef struct _BIN_RANGE {
LARGE_INTEGER StartValue;
LARGE_INTEGER Length;
} BIN_RANGE,*PBIN_RANGE;
typedef struct _PERF_BIN {
DWORD NumberOfBins;
DWORD TypeOfBin;
BIN_RANGE BinsRanges[1];
} PERF_BIN,*PPERF_BIN;
typedef struct _BIN_COUNT {
BIN_RANGE BinRange;
DWORD BinCount;
} BIN_COUNT,*PBIN_COUNT;
typedef struct _BIN_RESULTS {
DWORD NumberOfBins;
BIN_COUNT BinCounts[1];
} BIN_RESULTS,*PBIN_RESULTS;
#pragma pack(push,1)
typedef struct _GETVERSIONINPARAMS {
BYTE bVersion;
BYTE bRevision;
BYTE bReserved;
BYTE bIDEDeviceMap;
DWORD fCapabilities;
DWORD dwReserved[4];
} GETVERSIONINPARAMS,*PGETVERSIONINPARAMS,*LPGETVERSIONINPARAMS;
#pragma pack(pop)
#pragma pack(push,1)
typedef struct _IDEREGS {
BYTE bFeaturesReg;
BYTE bSectorCountReg;
BYTE bSectorNumberReg;
BYTE bCylLowReg;
BYTE bCylHighReg;
BYTE bDriveHeadReg;
BYTE bCommandReg;
BYTE bReserved;
} IDEREGS,*PIDEREGS,*LPIDEREGS;
#pragma pack(pop)
#pragma pack(push,1)
typedef struct _SENDCMDINPARAMS {
DWORD cBufferSize;
IDEREGS irDriveRegs;
BYTE bDriveNumber;
BYTE bReserved[3];
DWORD dwReserved[4];
BYTE bBuffer[1];
} SENDCMDINPARAMS,*PSENDCMDINPARAMS,*LPSENDCMDINPARAMS;
#pragma pack(pop)
#pragma pack(push,1)
typedef struct _DRIVERSTATUS {
BYTE bDriverError;
BYTE bIDEError;
BYTE bReserved[2];
DWORD dwReserved[2];
} DRIVERSTATUS,*PDRIVERSTATUS,*LPDRIVERSTATUS;
#pragma pack(pop)
#pragma pack(push,1)
typedef struct _SENDCMDOUTPARAMS {
DWORD cBufferSize;
DRIVERSTATUS DriverStatus;
BYTE bBuffer[1];
} SENDCMDOUTPARAMS,*PSENDCMDOUTPARAMS,*LPSENDCMDOUTPARAMS;
#pragma pack(pop)
typedef enum _ELEMENT_TYPE {
AllElements,ChangerTransport,ChangerSlot,ChangerIEPort,ChangerDrive,ChangerDoor,ChangerKeypad,ChangerMaxElement
} ELEMENT_TYPE,*PELEMENT_TYPE;
typedef struct _CHANGER_ELEMENT {
ELEMENT_TYPE ElementType;
DWORD ElementAddress;
} CHANGER_ELEMENT,*PCHANGER_ELEMENT;
typedef struct _CHANGER_ELEMENT_LIST {
CHANGER_ELEMENT Element;
DWORD NumberOfElements;
} CHANGER_ELEMENT_LIST ,*PCHANGER_ELEMENT_LIST;
typedef struct _GET_CHANGER_PARAMETERS {
DWORD Size;
WORD NumberTransportElements;
WORD NumberStorageElements;
WORD NumberCleanerSlots;
WORD NumberIEElements;
WORD NumberDataTransferElements;
WORD NumberOfDoors;
WORD FirstSlotNumber;
WORD FirstDriveNumber;
WORD FirstTransportNumber;
WORD FirstIEPortNumber;
WORD FirstCleanerSlotAddress;
WORD MagazineSize;
DWORD DriveCleanTimeout;
DWORD Features0;
DWORD Features1;
BYTE MoveFromTransport;
BYTE MoveFromSlot;
BYTE MoveFromIePort;
BYTE MoveFromDrive;
BYTE ExchangeFromTransport;
BYTE ExchangeFromSlot;
BYTE ExchangeFromIePort;
BYTE ExchangeFromDrive;
BYTE LockUnlockCapabilities;
BYTE PositionCapabilities;
BYTE Reserved1[2];
DWORD Reserved2[2];
} GET_CHANGER_PARAMETERS,*PGET_CHANGER_PARAMETERS;
typedef struct _CHANGER_PRODUCT_DATA {
BYTE VendorId[8];
BYTE ProductId[16];
BYTE Revision[4];
BYTE SerialNumber[32];
BYTE DeviceType;
} CHANGER_PRODUCT_DATA,*PCHANGER_PRODUCT_DATA;
typedef struct _CHANGER_SET_ACCESS {
CHANGER_ELEMENT Element;
DWORD Control;
} CHANGER_SET_ACCESS,*PCHANGER_SET_ACCESS;
typedef struct _CHANGER_READ_ELEMENT_STATUS {
CHANGER_ELEMENT_LIST ElementList;
BOOLEAN VolumeTagInfo;
} CHANGER_READ_ELEMENT_STATUS,*PCHANGER_READ_ELEMENT_STATUS;
typedef struct _CHANGER_ELEMENT_STATUS {
CHANGER_ELEMENT Element;
CHANGER_ELEMENT SrcElementAddress;
DWORD Flags;
DWORD ExceptionCode;
BYTE TargetId;
BYTE Lun;
WORD Reserved;
BYTE PrimaryVolumeID[36];
BYTE AlternateVolumeID[36];
} CHANGER_ELEMENT_STATUS,*PCHANGER_ELEMENT_STATUS;
typedef struct _CHANGER_ELEMENT_STATUS_EX {
CHANGER_ELEMENT Element;
CHANGER_ELEMENT SrcElementAddress;
DWORD Flags;
DWORD ExceptionCode;
BYTE TargetId;
BYTE Lun;
WORD Reserved;
BYTE PrimaryVolumeID[36];
BYTE AlternateVolumeID[36];
BYTE VendorIdentification[8];
BYTE ProductIdentification[16];
BYTE SerialNumber[32];
} CHANGER_ELEMENT_STATUS_EX,*PCHANGER_ELEMENT_STATUS_EX;
typedef struct _CHANGER_INITIALIZE_ELEMENT_STATUS {
CHANGER_ELEMENT_LIST ElementList;
BOOLEAN BarCodeScan;
} CHANGER_INITIALIZE_ELEMENT_STATUS,*PCHANGER_INITIALIZE_ELEMENT_STATUS;
typedef struct _CHANGER_SET_POSITION {
CHANGER_ELEMENT Transport;
CHANGER_ELEMENT Destination;
BOOLEAN Flip;
} CHANGER_SET_POSITION,*PCHANGER_SET_POSITION;
typedef struct _CHANGER_EXCHANGE_MEDIUM {
CHANGER_ELEMENT Transport;
CHANGER_ELEMENT Source;
CHANGER_ELEMENT Destination1;
CHANGER_ELEMENT Destination2;
BOOLEAN Flip1;
BOOLEAN Flip2;
} CHANGER_EXCHANGE_MEDIUM,*PCHANGER_EXCHANGE_MEDIUM;
typedef struct _CHANGER_MOVE_MEDIUM {
CHANGER_ELEMENT Transport;
CHANGER_ELEMENT Source;
CHANGER_ELEMENT Destination;
BOOLEAN Flip;
} CHANGER_MOVE_MEDIUM,*PCHANGER_MOVE_MEDIUM;
typedef struct _CHANGER_SEND_VOLUME_TAG_INFORMATION {
CHANGER_ELEMENT StartingElement;
DWORD ActionCode;
BYTE VolumeIDTemplate[40];
} CHANGER_SEND_VOLUME_TAG_INFORMATION,*PCHANGER_SEND_VOLUME_TAG_INFORMATION;
typedef struct _READ_ELEMENT_ADDRESS_INFO {
DWORD NumberOfElements;
CHANGER_ELEMENT_STATUS ElementStatus[1];
} READ_ELEMENT_ADDRESS_INFO,*PREAD_ELEMENT_ADDRESS_INFO;
typedef enum _CHANGER_DEVICE_PROBLEM_TYPE {
DeviceProblemNone,DeviceProblemHardware,DeviceProblemCHMError,DeviceProblemDoorOpen,DeviceProblemCalibrationError,DeviceProblemTargetFailure,
DeviceProblemCHMMoveError,DeviceProblemCHMZeroError,DeviceProblemCartridgeInsertError,DeviceProblemPositionError,DeviceProblemSensorError,
DeviceProblemCartridgeEjectError,DeviceProblemGripperError,DeviceProblemDriveError
} CHANGER_DEVICE_PROBLEM_TYPE,*PCHANGER_DEVICE_PROBLEM_TYPE;
typedef struct _PATHNAME_BUFFER {
DWORD PathNameLength;
WCHAR Name[1];
} PATHNAME_BUFFER,*PPATHNAME_BUFFER;
typedef struct _FSCTL_QUERY_FAT_BPB_BUFFER {
BYTE First0x24BytesOfBootSector[0x24];
} FSCTL_QUERY_FAT_BPB_BUFFER,*PFSCTL_QUERY_FAT_BPB_BUFFER;
typedef struct {
LARGE_INTEGER VolumeSerialNumber;
LARGE_INTEGER NumberSectors;
LARGE_INTEGER TotalClusters;
LARGE_INTEGER FreeClusters;
LARGE_INTEGER TotalReserved;
DWORD BytesPerSector;
DWORD BytesPerCluster;
DWORD BytesPerFileRecordSegment;
DWORD ClustersPerFileRecordSegment;
LARGE_INTEGER MftValidDataLength;
LARGE_INTEGER MftStartLcn;
LARGE_INTEGER Mft2StartLcn;
LARGE_INTEGER MftZoneStart;
LARGE_INTEGER MftZoneEnd;
} NTFS_VOLUME_DATA_BUFFER,*PNTFS_VOLUME_DATA_BUFFER;
typedef struct {
DWORD ByteCount;
WORD MajorVersion;
WORD MinorVersion;
} NTFS_EXTENDED_VOLUME_DATA,*PNTFS_EXTENDED_VOLUME_DATA;
typedef struct {
LARGE_INTEGER StartingLcn;
} STARTING_LCN_INPUT_BUFFER,*PSTARTING_LCN_INPUT_BUFFER;
typedef struct {
LARGE_INTEGER StartingLcn;
LARGE_INTEGER BitmapSize;
BYTE Buffer[1];
} VOLUME_BITMAP_BUFFER,*PVOLUME_BITMAP_BUFFER;
typedef struct {
LARGE_INTEGER StartingVcn;
} STARTING_VCN_INPUT_BUFFER,*PSTARTING_VCN_INPUT_BUFFER;
typedef struct RETRIEVAL_POINTERS_BUFFER {
DWORD ExtentCount;
LARGE_INTEGER StartingVcn;
struct {
LARGE_INTEGER NextVcn;
LARGE_INTEGER Lcn;
} Extents[1];
} RETRIEVAL_POINTERS_BUFFER,*PRETRIEVAL_POINTERS_BUFFER;
typedef struct {
LARGE_INTEGER FileReferenceNumber;
} NTFS_FILE_RECORD_INPUT_BUFFER,*PNTFS_FILE_RECORD_INPUT_BUFFER;
typedef struct {
LARGE_INTEGER FileReferenceNumber;
DWORD FileRecordLength;
BYTE FileRecordBuffer[1];
} NTFS_FILE_RECORD_OUTPUT_BUFFER,*PNTFS_FILE_RECORD_OUTPUT_BUFFER;
typedef struct {
HANDLE FileHandle;
LARGE_INTEGER StartingVcn;
LARGE_INTEGER StartingLcn;
DWORD ClusterCount;
} MOVE_FILE_DATA,*PMOVE_FILE_DATA;
typedef struct {
DWORD Restart;
SID Sid;
} FIND_BY_SID_DATA,*PFIND_BY_SID_DATA;
typedef struct {
DWORD NextEntryOffset;
DWORD FileIndex;
DWORD FileNameLength;
WCHAR FileName[1];
} FIND_BY_SID_OUTPUT,*PFIND_BY_SID_OUTPUT;
typedef struct {
DWORDLONG StartFileReferenceNumber;
USN LowUsn;
USN HighUsn;
} MFT_ENUM_DATA,*PMFT_ENUM_DATA;
typedef struct {
DWORDLONG MaximumSize;
DWORDLONG AllocationDelta;
} CREATE_USN_JOURNAL_DATA,*PCREATE_USN_JOURNAL_DATA;
typedef struct {
USN StartUsn;
DWORD ReasonMask;
DWORD ReturnOnlyOnClose;
DWORDLONG Timeout;
DWORDLONG BytesToWaitFor;
DWORDLONG UsnJournalID;
} READ_USN_JOURNAL_DATA,*PREAD_USN_JOURNAL_DATA;
typedef struct {
DWORD RecordLength;
WORD MajorVersion;
WORD MinorVersion;
DWORDLONG FileReferenceNumber;
DWORDLONG ParentFileReferenceNumber;
USN Usn;
LARGE_INTEGER TimeStamp;
DWORD Reason;
DWORD SourceInfo;
DWORD SecurityId;
DWORD FileAttributes;
WORD FileNameLength;
WORD FileNameOffset;
WCHAR FileName[1];
} USN_RECORD,*PUSN_RECORD;
typedef struct {
DWORDLONG UsnJournalID;
USN FirstUsn;
USN NextUsn;
USN LowestValidUsn;
USN MaxUsn;
DWORDLONG MaximumSize;
DWORDLONG AllocationDelta;
} USN_JOURNAL_DATA,*PUSN_JOURNAL_DATA;
typedef struct {
DWORDLONG UsnJournalID;
DWORD DeleteFlags;
} DELETE_USN_JOURNAL_DATA,*PDELETE_USN_JOURNAL_DATA;
typedef struct {
DWORD UsnSourceInfo;
HANDLE VolumeHandle;
DWORD HandleInfo;
} MARK_HANDLE_INFO,*PMARK_HANDLE_INFO;
typedef struct {
ACCESS_MASK DesiredAccess;
DWORD SecurityIds[1];
} BULK_SECURITY_TEST_DATA,*PBULK_SECURITY_TEST_DATA;
typedef struct _FILE_PREFETCH {
DWORD Type;
DWORD Count;
DWORDLONG Prefetch[1];
} FILE_PREFETCH,*PFILE_PREFETCH;
typedef struct _FILESYSTEM_STATISTICS {
WORD FileSystemType;
WORD Version;
DWORD SizeOfCompleteStructure;
DWORD UserFileReads;
DWORD UserFileReadBytes;
DWORD UserDiskReads;
DWORD UserFileWrites;
DWORD UserFileWriteBytes;
DWORD UserDiskWrites;
DWORD MetaDataReads;
DWORD MetaDataReadBytes;
DWORD MetaDataDiskReads;
DWORD MetaDataWrites;
DWORD MetaDataWriteBytes;
DWORD MetaDataDiskWrites;
} FILESYSTEM_STATISTICS,*PFILESYSTEM_STATISTICS;
typedef struct _FAT_STATISTICS {
DWORD CreateHits;
DWORD SuccessfulCreates;
DWORD FailedCreates;
DWORD NonCachedReads;
DWORD NonCachedReadBytes;
DWORD NonCachedWrites;
DWORD NonCachedWriteBytes;
DWORD NonCachedDiskReads;
DWORD NonCachedDiskWrites;
} FAT_STATISTICS,*PFAT_STATISTICS;
typedef struct _EXFAT_STATISTICS {
DWORD CreateHits;
DWORD SuccessfulCreates;
DWORD FailedCreates;
DWORD NonCachedReads;
DWORD NonCachedReadBytes;
DWORD NonCachedWrites;
DWORD NonCachedWriteBytes;
DWORD NonCachedDiskReads;
DWORD NonCachedDiskWrites;
} EXFAT_STATISTICS, *PEXFAT_STATISTICS;
typedef struct _NTFS_STATISTICS {
DWORD LogFileFullExceptions;
DWORD OtherExceptions;
DWORD MftReads;
DWORD MftReadBytes;
DWORD MftWrites;
DWORD MftWriteBytes;
struct {
WORD Write;
WORD Create;
WORD SetInfo;
WORD Flush;
} MftWritesUserLevel;
WORD MftWritesFlushForLogFileFull;
WORD MftWritesLazyWriter;
WORD MftWritesUserRequest;
DWORD Mft2Writes;
DWORD Mft2WriteBytes;
struct {
WORD Write;
WORD Create;
WORD SetInfo;
WORD Flush;
} Mft2WritesUserLevel;
WORD Mft2WritesFlushForLogFileFull;
WORD Mft2WritesLazyWriter;
WORD Mft2WritesUserRequest;
DWORD RootIndexReads;
DWORD RootIndexReadBytes;
DWORD RootIndexWrites;
DWORD RootIndexWriteBytes;
DWORD BitmapReads;
DWORD BitmapReadBytes;
DWORD BitmapWrites;
DWORD BitmapWriteBytes;
WORD BitmapWritesFlushForLogFileFull;
WORD BitmapWritesLazyWriter;
WORD BitmapWritesUserRequest;
struct {
WORD Write;
WORD Create;
WORD SetInfo;
} BitmapWritesUserLevel;
DWORD MftBitmapReads;
DWORD MftBitmapReadBytes;
DWORD MftBitmapWrites;
DWORD MftBitmapWriteBytes;
WORD MftBitmapWritesFlushForLogFileFull;
WORD MftBitmapWritesLazyWriter;
WORD MftBitmapWritesUserRequest;
struct {
WORD Write;
WORD Create;
WORD SetInfo;
WORD Flush;
} MftBitmapWritesUserLevel;
DWORD UserIndexReads;
DWORD UserIndexReadBytes;
DWORD UserIndexWrites;
DWORD UserIndexWriteBytes;
DWORD LogFileReads;
DWORD LogFileReadBytes;
DWORD LogFileWrites;
DWORD LogFileWriteBytes;
struct {
DWORD Calls;
DWORD Clusters;
DWORD Hints;
DWORD RunsReturned;
DWORD HintsHonored;
DWORD HintsClusters;
DWORD Cache;
DWORD CacheClusters;
DWORD CacheMiss;
DWORD CacheMissClusters;
} Allocate;
} NTFS_STATISTICS,*PNTFS_STATISTICS;
typedef struct _FILE_OBJECTID_BUFFER {
BYTE ObjectId[16];
__extension__ union {
__extension__ struct {
BYTE BirthVolumeId[16];
BYTE BirthObjectId[16];
BYTE DomainId[16];
} ;
BYTE ExtendedInfo[48];
} ;
} FILE_OBJECTID_BUFFER,*PFILE_OBJECTID_BUFFER;
typedef struct _FILE_SET_SPARSE_BUFFER {
BOOLEAN SetSparse;
} FILE_SET_SPARSE_BUFFER,*PFILE_SET_SPARSE_BUFFER;
typedef struct _FILE_ZERO_DATA_INFORMATION {
LARGE_INTEGER FileOffset;
LARGE_INTEGER BeyondFinalZero;
} FILE_ZERO_DATA_INFORMATION,*PFILE_ZERO_DATA_INFORMATION;
typedef struct _FILE_ALLOCATED_RANGE_BUFFER {
LARGE_INTEGER FileOffset;
LARGE_INTEGER Length;
} FILE_ALLOCATED_RANGE_BUFFER,*PFILE_ALLOCATED_RANGE_BUFFER;
typedef struct _ENCRYPTION_BUFFER {
DWORD EncryptionOperation;
BYTE Private[1];
} ENCRYPTION_BUFFER,*PENCRYPTION_BUFFER;
typedef struct _DECRYPTION_STATUS_BUFFER {
BOOLEAN NoEncryptedStreams;
} DECRYPTION_STATUS_BUFFER,*PDECRYPTION_STATUS_BUFFER;
typedef struct _REQUEST_RAW_ENCRYPTED_DATA {
LONGLONG FileOffset;
DWORD Length;
} REQUEST_RAW_ENCRYPTED_DATA,*PREQUEST_RAW_ENCRYPTED_DATA;
typedef struct _ENCRYPTED_DATA_INFO {
DWORDLONG StartingFileOffset;
DWORD OutputBufferOffset;
DWORD BytesWithinFileSize;
DWORD BytesWithinValidDataLength;
WORD CompressionFormat;
BYTE DataUnitShift;
BYTE ChunkShift;
BYTE ClusterShift;
BYTE EncryptionFormat;
WORD NumberOfDataBlocks;
DWORD DataBlockSize[1];
} ENCRYPTED_DATA_INFO;
typedef ENCRYPTED_DATA_INFO *PENCRYPTED_DATA_INFO;
typedef struct _PLEX_READ_DATA_REQUEST {
LARGE_INTEGER ByteOffset;
DWORD ByteLength;
DWORD PlexNumber;
} PLEX_READ_DATA_REQUEST,*PPLEX_READ_DATA_REQUEST;
typedef struct _SI_COPYFILE {
DWORD SourceFileNameLength;
DWORD DestinationFileNameLength;
DWORD Flags;
WCHAR FileNameBuffer[1];
} SI_COPYFILE,*PSI_COPYFILE;
typedef struct _STORAGE_DESCRIPTOR_HEADER {
DWORD Version;
DWORD Size;
} STORAGE_DESCRIPTOR_HEADER, *PSTORAGE_DESCRIPTOR_HEADER;
typedef enum _STORAGE_PROPERTY_ID {
StorageDeviceProperty = 0,
StorageAdapterProperty = 1,
StorageDeviceIdProperty = 2,
StorageDeviceUniqueIdProperty = 3,
StorageDeviceWriteCacheProperty = 4,
StorageMiniportProperty = 5,
StorageAccessAlignmentProperty = 6,
StorageDeviceSeekPenaltyProperty = 7,
StorageDeviceTrimProperty = 8
} STORAGE_PROPERTY_ID, *PSTORAGE_PROPERTY_ID;
typedef enum _STORAGE_QUERY_TYPE {
PropertyStandardQuery = 0,
PropertyExistsQuery = 1,
PropertyMaskQuery = 2,
PropertyQueryMaxDefined = 3
} STORAGE_QUERY_TYPE, *PSTORAGE_QUERY_TYPE;
typedef struct _STORAGE_PROPERTY_QUERY {
STORAGE_PROPERTY_ID PropertyId;
STORAGE_QUERY_TYPE QueryType;
BYTE AdditionalParameters[1];
} STORAGE_PROPERTY_QUERY, *PSTORAGE_PROPERTY_QUERY;
typedef struct _STORAGE_DEVICE_DESCRIPTOR {
DWORD Version;
DWORD Size;
BYTE DeviceType;
BYTE DeviceTypeModifier;
BOOLEAN RemovableMedia;
BOOLEAN CommandQueueing;
DWORD VendorIdOffset;
DWORD ProductIdOffset;
DWORD ProductRevisionOffset;
DWORD SerialNumberOffset;
STORAGE_BUS_TYPE BusType;
DWORD RawPropertiesLength;
BYTE RawDeviceProperties[1];
} STORAGE_DEVICE_DESCRIPTOR, *PSTORAGE_DEVICE_DESCRIPTOR;
typedef struct _STORAGE_ADAPTER_DESCRIPTOR {
DWORD Version;
DWORD Size;
DWORD MaximumTransferLength;
DWORD MaximumPhysicalPages;
DWORD AlignmentMask;
BOOLEAN AdapterUsesPio;
BOOLEAN AdapterScansDown;
BOOLEAN CommandQueueing;
BOOLEAN AcceleratedTransfer;
BYTE BusType;
WORD BusMajorVersion;
WORD BusMinorVersion;
} STORAGE_ADAPTER_DESCRIPTOR, *PSTORAGE_ADAPTER_DESCRIPTOR;
typedef struct _STORAGE_DEVICE_ID_DESCRIPTOR {
DWORD Version;
DWORD Size;
DWORD NumberOfIdentifiers;
BYTE Identifiers[1];
} STORAGE_DEVICE_ID_DESCRIPTOR, *PSTORAGE_DEVICE_ID_DESCRIPTOR;
typedef struct _VOLUME_GET_GPT_ATTRIBUTES_INFORMATION {
ULONGLONG GptAttributes;
} VOLUME_GET_GPT_ATTRIBUTES_INFORMATION, *PVOLUME_GET_GPT_ATTRIBUTES_INFORMATION;
typedef struct _DISK_EXTENT {
DWORD DiskNumber;
LARGE_INTEGER StartingOffset;
LARGE_INTEGER ExtentLength;
} DISK_EXTENT,*PDISK_EXTENT;
typedef struct _VOLUME_DISK_EXTENTS {
DWORD NumberOfDiskExtents;
DISK_EXTENT Extents[1];
} VOLUME_DISK_EXTENTS,*PVOLUME_DISK_EXTENTS;
typedef WORD UWORD;
typedef struct _SCARD_IO_REQUEST {
DWORD dwProtocol;
DWORD cbPciLength;
} SCARD_IO_REQUEST,*PSCARD_IO_REQUEST,*LPSCARD_IO_REQUEST;
typedef const SCARD_IO_REQUEST *LPCSCARD_IO_REQUEST;
typedef struct {
BYTE
bCla,bIns,bP1,bP2,bP3;
} SCARD_T0_COMMAND,*LPSCARD_T0_COMMAND;
typedef struct {
SCARD_IO_REQUEST ioRequest;
BYTE bSw1,bSw2;
__extension__ union {
SCARD_T0_COMMAND CmdBytes;
BYTE rgbHeader[5];
};
} SCARD_T0_REQUEST;
typedef SCARD_T0_REQUEST *PSCARD_T0_REQUEST,*LPSCARD_T0_REQUEST;
typedef struct {
SCARD_IO_REQUEST ioRequest;
} SCARD_T1_REQUEST;
typedef SCARD_T1_REQUEST *PSCARD_T1_REQUEST,*LPSCARD_T1_REQUEST;
typedef const BYTE *LPCBYTE;
__attribute__((dllimport)) extern const SCARD_IO_REQUEST g_rgSCardT0Pci,g_rgSCardT1Pci,g_rgSCardRawPci;
typedef ULONG_PTR SCARDCONTEXT;
typedef SCARDCONTEXT *PSCARDCONTEXT,*LPSCARDCONTEXT;
typedef ULONG_PTR SCARDHANDLE;
typedef SCARDHANDLE *PSCARDHANDLE,*LPSCARDHANDLE;
extern LONG __attribute__((__stdcall__)) SCardEstablishContext(DWORD dwScope,LPCVOID pvReserved1,LPCVOID pvReserved2,LPSCARDCONTEXT phContext);
extern LONG __attribute__((__stdcall__)) SCardReleaseContext(SCARDCONTEXT hContext);
extern LONG __attribute__((__stdcall__)) SCardIsValidContext(SCARDCONTEXT hContext);
extern LONG __attribute__((__stdcall__)) SCardListReaderGroupsA(SCARDCONTEXT hContext,LPSTR mszGroups,LPDWORD pcchGroups);
extern LONG __attribute__((__stdcall__)) SCardListReaderGroupsW(SCARDCONTEXT hContext,LPWSTR mszGroups,LPDWORD pcchGroups);
extern LONG __attribute__((__stdcall__)) SCardListReadersA(SCARDCONTEXT hContext,LPCSTR mszGroups,LPSTR mszReaders,LPDWORD pcchReaders);
extern LONG __attribute__((__stdcall__)) SCardListReadersW(SCARDCONTEXT hContext,LPCWSTR mszGroups,LPWSTR mszReaders,LPDWORD pcchReaders);
extern LONG __attribute__((__stdcall__)) SCardListCardsA(SCARDCONTEXT hContext,LPCBYTE pbAtr,LPCGUID rgquidInterfaces,DWORD cguidInterfaceCount,LPSTR mszCards,LPDWORD pcchCards);
extern LONG __attribute__((__stdcall__)) SCardListCardsW(SCARDCONTEXT hContext,LPCBYTE pbAtr,LPCGUID rgquidInterfaces,DWORD cguidInterfaceCount,LPWSTR mszCards,LPDWORD pcchCards);
extern LONG __attribute__((__stdcall__)) SCardListInterfacesA(SCARDCONTEXT hContext,LPCSTR szCard,LPGUID pguidInterfaces,LPDWORD pcguidInterfaces);
extern LONG __attribute__((__stdcall__)) SCardListInterfacesW(SCARDCONTEXT hContext,LPCWSTR szCard,LPGUID pguidInterfaces,LPDWORD pcguidInterfaces);
extern LONG __attribute__((__stdcall__)) SCardGetProviderIdA(SCARDCONTEXT hContext,LPCSTR szCard,LPGUID pguidProviderId);
extern LONG __attribute__((__stdcall__)) SCardGetProviderIdW(SCARDCONTEXT hContext,LPCWSTR szCard,LPGUID pguidProviderId);
extern LONG __attribute__((__stdcall__)) SCardGetCardTypeProviderNameA(SCARDCONTEXT hContext,LPCSTR szCardName,DWORD dwProviderId,LPSTR szProvider,LPDWORD pcchProvider);
extern LONG __attribute__((__stdcall__)) SCardGetCardTypeProviderNameW(SCARDCONTEXT hContext,LPCWSTR szCardName,DWORD dwProviderId,LPWSTR szProvider,LPDWORD pcchProvider);
extern LONG __attribute__((__stdcall__)) SCardIntroduceReaderGroupA(SCARDCONTEXT hContext,LPCSTR szGroupName);
extern LONG __attribute__((__stdcall__)) SCardIntroduceReaderGroupW(SCARDCONTEXT hContext,LPCWSTR szGroupName);
extern LONG __attribute__((__stdcall__)) SCardForgetReaderGroupA(SCARDCONTEXT hContext,LPCSTR szGroupName);
extern LONG __attribute__((__stdcall__)) SCardForgetReaderGroupW(SCARDCONTEXT hContext,LPCWSTR szGroupName);
extern LONG __attribute__((__stdcall__)) SCardIntroduceReaderA(SCARDCONTEXT hContext,LPCSTR szReaderName,LPCSTR szDeviceName);
extern LONG __attribute__((__stdcall__)) SCardIntroduceReaderW(SCARDCONTEXT hContext,LPCWSTR szReaderName,LPCWSTR szDeviceName);
extern LONG __attribute__((__stdcall__)) SCardForgetReaderA(SCARDCONTEXT hContext,LPCSTR szReaderName);
extern LONG __attribute__((__stdcall__)) SCardForgetReaderW(SCARDCONTEXT hContext,LPCWSTR szReaderName);
extern LONG __attribute__((__stdcall__)) SCardAddReaderToGroupA(SCARDCONTEXT hContext,LPCSTR szReaderName,LPCSTR szGroupName);
extern LONG __attribute__((__stdcall__)) SCardAddReaderToGroupW(SCARDCONTEXT hContext,LPCWSTR szReaderName,LPCWSTR szGroupName);
extern LONG __attribute__((__stdcall__)) SCardRemoveReaderFromGroupA(SCARDCONTEXT hContext,LPCSTR szReaderName,LPCSTR szGroupName);
extern LONG __attribute__((__stdcall__)) SCardRemoveReaderFromGroupW(SCARDCONTEXT hContext,LPCWSTR szReaderName,LPCWSTR szGroupName);
extern LONG __attribute__((__stdcall__)) SCardIntroduceCardTypeA(SCARDCONTEXT hContext,LPCSTR szCardName,LPCGUID pguidPrimaryProvider,LPCGUID rgguidInterfaces,DWORD dwInterfaceCount,LPCBYTE pbAtr,LPCBYTE pbAtrMask,DWORD cbAtrLen);
extern LONG __attribute__((__stdcall__)) SCardIntroduceCardTypeW(SCARDCONTEXT hContext,LPCWSTR szCardName,LPCGUID pguidPrimaryProvider,LPCGUID rgguidInterfaces,DWORD dwInterfaceCount,LPCBYTE pbAtr,LPCBYTE pbAtrMask,DWORD cbAtrLen);
extern LONG __attribute__((__stdcall__)) SCardSetCardTypeProviderNameA(SCARDCONTEXT hContext,LPCSTR szCardName,DWORD dwProviderId,LPCSTR szProvider);
extern LONG __attribute__((__stdcall__)) SCardSetCardTypeProviderNameW(SCARDCONTEXT hContext,LPCWSTR szCardName,DWORD dwProviderId,LPCWSTR szProvider);
extern LONG __attribute__((__stdcall__)) SCardForgetCardTypeA(SCARDCONTEXT hContext,LPCSTR szCardName);
extern LONG __attribute__((__stdcall__)) SCardForgetCardTypeW(SCARDCONTEXT hContext,LPCWSTR szCardName);
extern LONG __attribute__((__stdcall__)) SCardFreeMemory(SCARDCONTEXT hContext,LPCVOID pvMem);
extern HANDLE __attribute__((__stdcall__)) SCardAccessStartedEvent(void);
extern void __attribute__((__stdcall__)) SCardReleaseStartedEvent(void);
typedef struct {
LPCSTR szReader;
LPVOID pvUserData;
DWORD dwCurrentState;
DWORD dwEventState;
DWORD cbAtr;
BYTE rgbAtr[36];
} SCARD_READERSTATEA,*PSCARD_READERSTATEA,*LPSCARD_READERSTATEA;
typedef struct {
LPCWSTR szReader;
LPVOID pvUserData;
DWORD dwCurrentState;
DWORD dwEventState;
DWORD cbAtr;
BYTE rgbAtr[36];
} SCARD_READERSTATEW,*PSCARD_READERSTATEW,*LPSCARD_READERSTATEW;
typedef SCARD_READERSTATEA SCARD_READERSTATE;
typedef PSCARD_READERSTATEA PSCARD_READERSTATE;
typedef LPSCARD_READERSTATEA LPSCARD_READERSTATE;
extern LONG __attribute__((__stdcall__)) SCardLocateCardsA(SCARDCONTEXT hContext,LPCSTR mszCards,LPSCARD_READERSTATEA rgReaderStates,DWORD cReaders);
extern LONG __attribute__((__stdcall__)) SCardLocateCardsW(SCARDCONTEXT hContext,LPCWSTR mszCards,LPSCARD_READERSTATEW rgReaderStates,DWORD cReaders);
typedef struct _SCARD_ATRMASK {
DWORD cbAtr;
BYTE rgbAtr[36];
BYTE rgbMask[36];
} SCARD_ATRMASK,*PSCARD_ATRMASK,*LPSCARD_ATRMASK;
extern LONG __attribute__((__stdcall__)) SCardLocateCardsByATRA(SCARDCONTEXT hContext,LPSCARD_ATRMASK rgAtrMasks,DWORD cAtrs,LPSCARD_READERSTATEA rgReaderStates,DWORD cReaders);
extern LONG __attribute__((__stdcall__)) SCardLocateCardsByATRW(SCARDCONTEXT hContext,LPSCARD_ATRMASK rgAtrMasks,DWORD cAtrs,LPSCARD_READERSTATEW rgReaderStates,DWORD cReaders);
extern LONG __attribute__((__stdcall__)) SCardGetStatusChangeA(SCARDCONTEXT hContext,DWORD dwTimeout,LPSCARD_READERSTATEA rgReaderStates,DWORD cReaders);
extern LONG __attribute__((__stdcall__)) SCardGetStatusChangeW(SCARDCONTEXT hContext,DWORD dwTimeout,LPSCARD_READERSTATEW rgReaderStates,DWORD cReaders);
extern LONG __attribute__((__stdcall__)) SCardCancel(SCARDCONTEXT hContext);
extern LONG __attribute__((__stdcall__)) SCardConnectA(SCARDCONTEXT hContext,LPCSTR szReader,DWORD dwShareMode,DWORD dwPreferredProtocols,LPSCARDHANDLE phCard,LPDWORD pdwActiveProtocol);
extern LONG __attribute__((__stdcall__)) SCardConnectW(SCARDCONTEXT hContext,LPCWSTR szReader,DWORD dwShareMode,DWORD dwPreferredProtocols,LPSCARDHANDLE phCard,LPDWORD pdwActiveProtocol);
extern LONG __attribute__((__stdcall__)) SCardReconnect(SCARDHANDLE hCard,DWORD dwShareMode,DWORD dwPreferredProtocols,DWORD dwInitialization,LPDWORD pdwActiveProtocol);
extern LONG __attribute__((__stdcall__)) SCardDisconnect(SCARDHANDLE hCard,DWORD dwDisposition);
extern LONG __attribute__((__stdcall__)) SCardBeginTransaction(SCARDHANDLE hCard);
extern LONG __attribute__((__stdcall__)) SCardEndTransaction(SCARDHANDLE hCard,DWORD dwDisposition);
extern LONG __attribute__((__stdcall__)) SCardCancelTransaction(SCARDHANDLE hCard);
extern LONG __attribute__((__stdcall__)) SCardState(SCARDHANDLE hCard,LPDWORD pdwState,LPDWORD pdwProtocol,LPBYTE pbAtr,LPDWORD pcbAtrLen);
extern LONG __attribute__((__stdcall__)) SCardStatusA(SCARDHANDLE hCard,LPSTR szReaderName,LPDWORD pcchReaderLen,LPDWORD pdwState,LPDWORD pdwProtocol,LPBYTE pbAtr,LPDWORD pcbAtrLen);
extern LONG __attribute__((__stdcall__)) SCardStatusW(SCARDHANDLE hCard,LPWSTR szReaderName,LPDWORD pcchReaderLen,LPDWORD pdwState,LPDWORD pdwProtocol,LPBYTE pbAtr,LPDWORD pcbAtrLen);
extern LONG __attribute__((__stdcall__)) SCardTransmit(SCARDHANDLE hCard,LPCSCARD_IO_REQUEST pioSendPci,LPCBYTE pbSendBuffer,DWORD cbSendLength,LPSCARD_IO_REQUEST pioRecvPci,LPBYTE pbRecvBuffer,LPDWORD pcbRecvLength);
extern LONG __attribute__((__stdcall__)) SCardControl(SCARDHANDLE hCard,DWORD dwControlCode,LPCVOID lpInBuffer,DWORD nInBufferSize,LPVOID lpOutBuffer,DWORD nOutBufferSize,LPDWORD lpBytesReturned);
extern LONG __attribute__((__stdcall__)) SCardGetAttrib(SCARDHANDLE hCard,DWORD dwAttrId,LPBYTE pbAttr,LPDWORD pcbAttrLen);
extern LONG __attribute__((__stdcall__)) SCardSetAttrib(SCARDHANDLE hCard,DWORD dwAttrId,LPCBYTE pbAttr,DWORD cbAttrLen);
typedef SCARDHANDLE (__attribute__((__stdcall__)) *LPOCNCONNPROCA) (SCARDCONTEXT,LPSTR,LPSTR,PVOID);
typedef SCARDHANDLE (__attribute__((__stdcall__)) *LPOCNCONNPROCW) (SCARDCONTEXT,LPWSTR,LPWSTR,PVOID);
typedef WINBOOL (__attribute__((__stdcall__)) *LPOCNCHKPROC) (SCARDCONTEXT,SCARDHANDLE,PVOID);
typedef void (__attribute__((__stdcall__)) *LPOCNDSCPROC) (SCARDCONTEXT,SCARDHANDLE,PVOID);
typedef struct {
DWORD dwStructSize;
LPSTR lpstrGroupNames;
DWORD nMaxGroupNames;
LPCGUID rgguidInterfaces;
DWORD cguidInterfaces;
LPSTR lpstrCardNames;
DWORD nMaxCardNames;
LPOCNCHKPROC lpfnCheck;
LPOCNCONNPROCA lpfnConnect;
LPOCNDSCPROC lpfnDisconnect;
LPVOID pvUserData;
DWORD dwShareMode;
DWORD dwPreferredProtocols;
} OPENCARD_SEARCH_CRITERIAA,*POPENCARD_SEARCH_CRITERIAA,*LPOPENCARD_SEARCH_CRITERIAA;
typedef struct {
DWORD dwStructSize;
LPWSTR lpstrGroupNames;
DWORD nMaxGroupNames;
LPCGUID rgguidInterfaces;
DWORD cguidInterfaces;
LPWSTR lpstrCardNames;
DWORD nMaxCardNames;
LPOCNCHKPROC lpfnCheck;
LPOCNCONNPROCW lpfnConnect;
LPOCNDSCPROC lpfnDisconnect;
LPVOID pvUserData;
DWORD dwShareMode;
DWORD dwPreferredProtocols;
} OPENCARD_SEARCH_CRITERIAW,*POPENCARD_SEARCH_CRITERIAW,*LPOPENCARD_SEARCH_CRITERIAW;
typedef OPENCARD_SEARCH_CRITERIAA OPENCARD_SEARCH_CRITERIA;
typedef POPENCARD_SEARCH_CRITERIAA POPENCARD_SEARCH_CRITERIA;
typedef LPOPENCARD_SEARCH_CRITERIAA LPOPENCARD_SEARCH_CRITERIA;
typedef struct {
DWORD dwStructSize;
SCARDCONTEXT hSCardContext;
HWND hwndOwner;
DWORD dwFlags;
LPCSTR lpstrTitle;
LPCSTR lpstrSearchDesc;
HICON hIcon;
POPENCARD_SEARCH_CRITERIAA pOpenCardSearchCriteria;
LPOCNCONNPROCA lpfnConnect;
LPVOID pvUserData;
DWORD dwShareMode;
DWORD dwPreferredProtocols;
LPSTR lpstrRdr;
DWORD nMaxRdr;
LPSTR lpstrCard;
DWORD nMaxCard;
DWORD dwActiveProtocol;
SCARDHANDLE hCardHandle;
} OPENCARDNAME_EXA,*POPENCARDNAME_EXA,*LPOPENCARDNAME_EXA;
typedef struct {
DWORD dwStructSize;
SCARDCONTEXT hSCardContext;
HWND hwndOwner;
DWORD dwFlags;
LPCWSTR lpstrTitle;
LPCWSTR lpstrSearchDesc;
HICON hIcon;
POPENCARD_SEARCH_CRITERIAW pOpenCardSearchCriteria;
LPOCNCONNPROCW lpfnConnect;
LPVOID pvUserData;
DWORD dwShareMode;
DWORD dwPreferredProtocols;
LPWSTR lpstrRdr;
DWORD nMaxRdr;
LPWSTR lpstrCard;
DWORD nMaxCard;
DWORD dwActiveProtocol;
SCARDHANDLE hCardHandle;
} OPENCARDNAME_EXW,*POPENCARDNAME_EXW,*LPOPENCARDNAME_EXW;
typedef OPENCARDNAME_EXA OPENCARDNAME_EX;
typedef POPENCARDNAME_EXA POPENCARDNAME_EX;
typedef LPOPENCARDNAME_EXA LPOPENCARDNAME_EX;
extern LONG __attribute__((__stdcall__)) SCardUIDlgSelectCardA(LPOPENCARDNAME_EXA);
extern LONG __attribute__((__stdcall__)) SCardUIDlgSelectCardW(LPOPENCARDNAME_EXW);
typedef struct {
DWORD dwStructSize;
HWND hwndOwner;
SCARDCONTEXT hSCardContext;
LPSTR lpstrGroupNames;
DWORD nMaxGroupNames;
LPSTR lpstrCardNames;
DWORD nMaxCardNames;
LPCGUID rgguidInterfaces;
DWORD cguidInterfaces;
LPSTR lpstrRdr;
DWORD nMaxRdr;
LPSTR lpstrCard;
DWORD nMaxCard;
LPCSTR lpstrTitle;
DWORD dwFlags;
LPVOID pvUserData;
DWORD dwShareMode;
DWORD dwPreferredProtocols;
DWORD dwActiveProtocol;
LPOCNCONNPROCA lpfnConnect;
LPOCNCHKPROC lpfnCheck;
LPOCNDSCPROC lpfnDisconnect;
SCARDHANDLE hCardHandle;
} OPENCARDNAMEA,*POPENCARDNAMEA,*LPOPENCARDNAMEA;
typedef struct {
DWORD dwStructSize;
HWND hwndOwner;
SCARDCONTEXT hSCardContext;
LPWSTR lpstrGroupNames;
DWORD nMaxGroupNames;
LPWSTR lpstrCardNames;
DWORD nMaxCardNames;
LPCGUID rgguidInterfaces;
DWORD cguidInterfaces;
LPWSTR lpstrRdr;
DWORD nMaxRdr;
LPWSTR lpstrCard;
DWORD nMaxCard;
LPCWSTR lpstrTitle;
DWORD dwFlags;
LPVOID pvUserData;
DWORD dwShareMode;
DWORD dwPreferredProtocols;
DWORD dwActiveProtocol;
LPOCNCONNPROCW lpfnConnect;
LPOCNCHKPROC lpfnCheck;
LPOCNDSCPROC lpfnDisconnect;
SCARDHANDLE hCardHandle;
} OPENCARDNAMEW,*POPENCARDNAMEW,*LPOPENCARDNAMEW;
typedef OPENCARDNAMEA OPENCARDNAME;
typedef POPENCARDNAMEA POPENCARDNAME;
typedef LPOPENCARDNAMEA LPOPENCARDNAME;
extern LONG __attribute__((__stdcall__)) GetOpenCardNameA(LPOPENCARDNAMEA);
extern LONG __attribute__((__stdcall__)) GetOpenCardNameW(LPOPENCARDNAMEW);
extern LONG __attribute__((__stdcall__)) SCardDlgExtendedError(void);
#pragma pack(push,4)
struct _PSP;
struct _PROPSHEETPAGEA;
struct _PROPSHEETPAGEW;
typedef struct _PSP *HPROPSHEETPAGE;
typedef UINT (__attribute__((__stdcall__)) *LPFNPSPCALLBACKA)(HWND hwnd,UINT uMsg,struct _PROPSHEETPAGEA *ppsp);
typedef UINT (__attribute__((__stdcall__)) *LPFNPSPCALLBACKW)(HWND hwnd,UINT uMsg,struct _PROPSHEETPAGEW *ppsp);
typedef LPCDLGTEMPLATE PROPSHEETPAGE_RESOURCE;
typedef struct _PROPSHEETPAGEA_V1 {
DWORD dwSize,dwFlags; HINSTANCE hInstance; __extension__ union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
} PROPSHEETPAGEA_V1,*LPPROPSHEETPAGEA_V1;
typedef const PROPSHEETPAGEA_V1 *LPCPROPSHEETPAGEA_V1;
typedef struct _PROPSHEETPAGEA_V2 {
DWORD dwSize,dwFlags; HINSTANCE hInstance; __extension__ union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
LPCSTR pszHeaderTitle;
LPCSTR pszHeaderSubTitle;
} PROPSHEETPAGEA_V2,*LPPROPSHEETPAGEA_V2;
typedef const PROPSHEETPAGEA_V2 *LPCPROPSHEETPAGEA_V2;
typedef struct _PROPSHEETPAGEA {
DWORD dwSize,dwFlags; HINSTANCE hInstance; __extension__ union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
LPCSTR pszHeaderTitle;
LPCSTR pszHeaderSubTitle;
HANDLE hActCtx;
} PROPSHEETPAGEA_V3,*LPPROPSHEETPAGEA_V3;
typedef const PROPSHEETPAGEA_V3 *LPCPROPSHEETPAGEA_V3;
typedef struct _PROPSHEETPAGEW_V1 {
DWORD dwSize, dwFlags; HINSTANCE hInstance; __extension__ union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
} PROPSHEETPAGEW_V1,*LPPROPSHEETPAGEW_V1;
typedef const PROPSHEETPAGEW_V1 *LPCPROPSHEETPAGEW_V1;
typedef struct _PROPSHEETPAGEW_V2 {
DWORD dwSize, dwFlags; HINSTANCE hInstance; __extension__ union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
LPCWSTR pszHeaderTitle;
LPCWSTR pszHeaderSubTitle;
} PROPSHEETPAGEW_V2,*LPPROPSHEETPAGEW_V2;
typedef const PROPSHEETPAGEW_V2 *LPCPROPSHEETPAGEW_V2;
typedef struct _PROPSHEETPAGEW {
DWORD dwSize, dwFlags; HINSTANCE hInstance; __extension__ union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
LPCWSTR pszHeaderTitle;
LPCWSTR pszHeaderSubTitle;
HANDLE hActCtx;
} PROPSHEETPAGEW_V3,*LPPROPSHEETPAGEW_V3;
typedef const PROPSHEETPAGEW_V3 *LPCPROPSHEETPAGEW_V3;
typedef PROPSHEETPAGEA_V3 PROPSHEETPAGEA_LATEST;
typedef PROPSHEETPAGEW_V3 PROPSHEETPAGEW_LATEST;
typedef LPPROPSHEETPAGEA_V3 LPPROPSHEETPAGEA_LATEST;
typedef LPPROPSHEETPAGEW_V3 LPPROPSHEETPAGEW_LATEST;
typedef LPCPROPSHEETPAGEA_V3 LPCPROPSHEETPAGEA_LATEST;
typedef LPCPROPSHEETPAGEW_V3 LPCPROPSHEETPAGEW_LATEST;
typedef PROPSHEETPAGEA_V3 PROPSHEETPAGEA;
typedef PROPSHEETPAGEW_V3 PROPSHEETPAGEW;
typedef LPPROPSHEETPAGEA_V3 LPPROPSHEETPAGEA;
typedef LPPROPSHEETPAGEW_V3 LPPROPSHEETPAGEW;
typedef LPCPROPSHEETPAGEA_V3 LPCPROPSHEETPAGEA;
typedef LPCPROPSHEETPAGEW_V3 LPCPROPSHEETPAGEW;
typedef int (__attribute__((__stdcall__)) *PFNPROPSHEETCALLBACK)(HWND,UINT,LPARAM);
typedef struct _PROPSHEETHEADERA {
DWORD dwSize;
DWORD dwFlags;
HWND hwndParent;
HINSTANCE hInstance;
__extension__ union {
HICON hIcon;
LPCSTR pszIcon;
} ;
LPCSTR pszCaption;
UINT nPages;
__extension__ union {
UINT nStartPage;
LPCSTR pStartPage;
} ;
__extension__ union {
LPCPROPSHEETPAGEA ppsp;
HPROPSHEETPAGE *phpage;
} ;
PFNPROPSHEETCALLBACK pfnCallback;
__extension__ union {
HBITMAP hbmWatermark;
LPCSTR pszbmWatermark;
} ;
HPALETTE hplWatermark;
__extension__ union {
HBITMAP hbmHeader;
LPCSTR pszbmHeader;
} ;
} PROPSHEETHEADERA,*LPPROPSHEETHEADERA;
typedef const PROPSHEETHEADERA *LPCPROPSHEETHEADERA;
typedef struct _PROPSHEETHEADERW {
DWORD dwSize;
DWORD dwFlags;
HWND hwndParent;
HINSTANCE hInstance;
__extension__ union {
HICON hIcon;
LPCWSTR pszIcon;
} ;
LPCWSTR pszCaption;
UINT nPages;
__extension__ union {
UINT nStartPage;
LPCWSTR pStartPage;
} ;
__extension__ union {
LPCPROPSHEETPAGEW ppsp;
HPROPSHEETPAGE *phpage;
} ;
PFNPROPSHEETCALLBACK pfnCallback;
__extension__ union {
HBITMAP hbmWatermark;
LPCWSTR pszbmWatermark;
} ;
HPALETTE hplWatermark;
__extension__ union {
HBITMAP hbmHeader;
LPCWSTR pszbmHeader;
} ;
} PROPSHEETHEADERW,*LPPROPSHEETHEADERW;
typedef const PROPSHEETHEADERW *LPCPROPSHEETHEADERW;
__attribute__((dllimport)) HPROPSHEETPAGE __attribute__((__stdcall__)) CreatePropertySheetPageA(LPCPROPSHEETPAGEA constPropSheetPagePointer);
__attribute__((dllimport)) HPROPSHEETPAGE __attribute__((__stdcall__)) CreatePropertySheetPageW(LPCPROPSHEETPAGEW constPropSheetPagePointer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DestroyPropertySheetPage(HPROPSHEETPAGE);
__attribute__((dllimport)) INT_PTR __attribute__((__stdcall__)) PropertySheetA(LPCPROPSHEETHEADERA);
__attribute__((dllimport)) INT_PTR __attribute__((__stdcall__)) PropertySheetW(LPCPROPSHEETHEADERW);
typedef WINBOOL (__attribute__((__stdcall__)) *LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE,LPARAM);
typedef WINBOOL (__attribute__((__stdcall__)) *LPFNADDPROPSHEETPAGES)(LPVOID,LPFNADDPROPSHEETPAGE,LPARAM);
typedef struct _PSHNOTIFY {
NMHDR hdr;
LPARAM lParam;
} PSHNOTIFY,*LPPSHNOTIFY;
#pragma pack(pop)
typedef struct _PRINTER_INFO_1A {
DWORD Flags;
LPSTR pDescription;
LPSTR pName;
LPSTR pComment;
} PRINTER_INFO_1A,*PPRINTER_INFO_1A,*LPPRINTER_INFO_1A;
typedef struct _PRINTER_INFO_1W {
DWORD Flags;
LPWSTR pDescription;
LPWSTR pName;
LPWSTR pComment;
} PRINTER_INFO_1W,*PPRINTER_INFO_1W,*LPPRINTER_INFO_1W;
typedef PRINTER_INFO_1A PRINTER_INFO_1;
typedef PPRINTER_INFO_1A PPRINTER_INFO_1;
typedef LPPRINTER_INFO_1A LPPRINTER_INFO_1;
typedef struct _PRINTER_INFO_2A {
LPSTR pServerName;
LPSTR pPrinterName;
LPSTR pShareName;
LPSTR pPortName;
LPSTR pDriverName;
LPSTR pComment;
LPSTR pLocation;
LPDEVMODEA pDevMode;
LPSTR pSepFile;
LPSTR pPrintProcessor;
LPSTR pDatatype;
LPSTR pParameters;
PSECURITY_DESCRIPTOR pSecurityDescriptor;
DWORD Attributes;
DWORD Priority;
DWORD DefaultPriority;
DWORD StartTime;
DWORD UntilTime;
DWORD Status;
DWORD cJobs;
DWORD AveragePPM;
} PRINTER_INFO_2A,*PPRINTER_INFO_2A,*LPPRINTER_INFO_2A;
typedef struct _PRINTER_INFO_2W {
LPWSTR pServerName;
LPWSTR pPrinterName;
LPWSTR pShareName;
LPWSTR pPortName;
LPWSTR pDriverName;
LPWSTR pComment;
LPWSTR pLocation;
LPDEVMODEW pDevMode;
LPWSTR pSepFile;
LPWSTR pPrintProcessor;
LPWSTR pDatatype;
LPWSTR pParameters;
PSECURITY_DESCRIPTOR pSecurityDescriptor;
DWORD Attributes;
DWORD Priority;
DWORD DefaultPriority;
DWORD StartTime;
DWORD UntilTime;
DWORD Status;
DWORD cJobs;
DWORD AveragePPM;
} PRINTER_INFO_2W,*PPRINTER_INFO_2W,*LPPRINTER_INFO_2W;
typedef PRINTER_INFO_2A PRINTER_INFO_2;
typedef PPRINTER_INFO_2A PPRINTER_INFO_2;
typedef LPPRINTER_INFO_2A LPPRINTER_INFO_2;
typedef struct _PRINTER_INFO_3 {
PSECURITY_DESCRIPTOR pSecurityDescriptor;
} PRINTER_INFO_3,*PPRINTER_INFO_3,*LPPRINTER_INFO_3;
typedef struct _PRINTER_INFO_4A {
LPSTR pPrinterName;
LPSTR pServerName;
DWORD Attributes;
} PRINTER_INFO_4A,*PPRINTER_INFO_4A,*LPPRINTER_INFO_4A;
typedef struct _PRINTER_INFO_4W {
LPWSTR pPrinterName;
LPWSTR pServerName;
DWORD Attributes;
} PRINTER_INFO_4W,*PPRINTER_INFO_4W,*LPPRINTER_INFO_4W;
typedef PRINTER_INFO_4A PRINTER_INFO_4;
typedef PPRINTER_INFO_4A PPRINTER_INFO_4;
typedef LPPRINTER_INFO_4A LPPRINTER_INFO_4;
typedef struct _PRINTER_INFO_5A {
LPSTR pPrinterName;
LPSTR pPortName;
DWORD Attributes;
DWORD DeviceNotSelectedTimeout;
DWORD TransmissionRetryTimeout;
} PRINTER_INFO_5A,*PPRINTER_INFO_5A,*LPPRINTER_INFO_5A;
typedef struct _PRINTER_INFO_5W {
LPWSTR pPrinterName;
LPWSTR pPortName;
DWORD Attributes;
DWORD DeviceNotSelectedTimeout;
DWORD TransmissionRetryTimeout;
} PRINTER_INFO_5W,*PPRINTER_INFO_5W,*LPPRINTER_INFO_5W;
typedef PRINTER_INFO_5A PRINTER_INFO_5;
typedef PPRINTER_INFO_5A PPRINTER_INFO_5;
typedef LPPRINTER_INFO_5A LPPRINTER_INFO_5;
typedef struct _PRINTER_INFO_6 {
DWORD dwStatus;
} PRINTER_INFO_6,*PPRINTER_INFO_6,*LPPRINTER_INFO_6;
typedef struct _PRINTER_INFO_7A {
LPSTR pszObjectGUID;
DWORD dwAction;
} PRINTER_INFO_7A,*PPRINTER_INFO_7A,*LPPRINTER_INFO_7A;
typedef struct _PRINTER_INFO_7W {
LPWSTR pszObjectGUID;
DWORD dwAction;
} PRINTER_INFO_7W,*PPRINTER_INFO_7W,*LPPRINTER_INFO_7W;
typedef PRINTER_INFO_7A PRINTER_INFO_7;
typedef PPRINTER_INFO_7A PPRINTER_INFO_7;
typedef LPPRINTER_INFO_7A LPPRINTER_INFO_7;
typedef struct _PRINTER_INFO_8A {
LPDEVMODEA pDevMode;
} PRINTER_INFO_8A,*PPRINTER_INFO_8A,*LPPRINTER_INFO_8A;
typedef struct _PRINTER_INFO_8W {
LPDEVMODEW pDevMode;
} PRINTER_INFO_8W,*PPRINTER_INFO_8W,*LPPRINTER_INFO_8W;
typedef PRINTER_INFO_8A PRINTER_INFO_8;
typedef PPRINTER_INFO_8A PPRINTER_INFO_8;
typedef LPPRINTER_INFO_8A LPPRINTER_INFO_8;
typedef struct _PRINTER_INFO_9A {
LPDEVMODEA pDevMode;
} PRINTER_INFO_9A,*PPRINTER_INFO_9A,*LPPRINTER_INFO_9A;
typedef struct _PRINTER_INFO_9W {
LPDEVMODEW pDevMode;
} PRINTER_INFO_9W,*PPRINTER_INFO_9W,*LPPRINTER_INFO_9W;
typedef PRINTER_INFO_9A PRINTER_INFO_9;
typedef PPRINTER_INFO_9A PPRINTER_INFO_9;
typedef LPPRINTER_INFO_9A LPPRINTER_INFO_9;
typedef struct _JOB_INFO_1A {
DWORD JobId;
LPSTR pPrinterName;
LPSTR pMachineName;
LPSTR pUserName;
LPSTR pDocument;
LPSTR pDatatype;
LPSTR pStatus;
DWORD Status;
DWORD Priority;
DWORD Position;
DWORD TotalPages;
DWORD PagesPrinted;
SYSTEMTIME Submitted;
} JOB_INFO_1A,*PJOB_INFO_1A,*LPJOB_INFO_1A;
typedef struct _JOB_INFO_1W {
DWORD JobId;
LPWSTR pPrinterName;
LPWSTR pMachineName;
LPWSTR pUserName;
LPWSTR pDocument;
LPWSTR pDatatype;
LPWSTR pStatus;
DWORD Status;
DWORD Priority;
DWORD Position;
DWORD TotalPages;
DWORD PagesPrinted;
SYSTEMTIME Submitted;
} JOB_INFO_1W,*PJOB_INFO_1W,*LPJOB_INFO_1W;
typedef JOB_INFO_1A JOB_INFO_1;
typedef PJOB_INFO_1A PJOB_INFO_1;
typedef LPJOB_INFO_1A LPJOB_INFO_1;
typedef struct _JOB_INFO_2A {
DWORD JobId;
LPSTR pPrinterName;
LPSTR pMachineName;
LPSTR pUserName;
LPSTR pDocument;
LPSTR pNotifyName;
LPSTR pDatatype;
LPSTR pPrintProcessor;
LPSTR pParameters;
LPSTR pDriverName;
LPDEVMODEA pDevMode;
LPSTR pStatus;
PSECURITY_DESCRIPTOR pSecurityDescriptor;
DWORD Status;
DWORD Priority;
DWORD Position;
DWORD StartTime;
DWORD UntilTime;
DWORD TotalPages;
DWORD Size;
SYSTEMTIME Submitted;
DWORD Time;
DWORD PagesPrinted;
} JOB_INFO_2A,*PJOB_INFO_2A,*LPJOB_INFO_2A;
typedef struct _JOB_INFO_2W {
DWORD JobId;
LPWSTR pPrinterName;
LPWSTR pMachineName;
LPWSTR pUserName;
LPWSTR pDocument;
LPWSTR pNotifyName;
LPWSTR pDatatype;
LPWSTR pPrintProcessor;
LPWSTR pParameters;
LPWSTR pDriverName;
LPDEVMODEW pDevMode;
LPWSTR pStatus;
PSECURITY_DESCRIPTOR pSecurityDescriptor;
DWORD Status;
DWORD Priority;
DWORD Position;
DWORD StartTime;
DWORD UntilTime;
DWORD TotalPages;
DWORD Size;
SYSTEMTIME Submitted;
DWORD Time;
DWORD PagesPrinted;
} JOB_INFO_2W,*PJOB_INFO_2W,*LPJOB_INFO_2W;
typedef JOB_INFO_2A JOB_INFO_2;
typedef PJOB_INFO_2A PJOB_INFO_2;
typedef LPJOB_INFO_2A LPJOB_INFO_2;
typedef struct _JOB_INFO_3 {
DWORD JobId;
DWORD NextJobId;
DWORD Reserved;
} JOB_INFO_3,*PJOB_INFO_3,*LPJOB_INFO_3;
typedef struct _ADDJOB_INFO_1A {
LPSTR Path;
DWORD JobId;
} ADDJOB_INFO_1A,*PADDJOB_INFO_1A,*LPADDJOB_INFO_1A;
typedef struct _ADDJOB_INFO_1W {
LPWSTR Path;
DWORD JobId;
} ADDJOB_INFO_1W,*PADDJOB_INFO_1W,*LPADDJOB_INFO_1W;
typedef ADDJOB_INFO_1A ADDJOB_INFO_1;
typedef PADDJOB_INFO_1A PADDJOB_INFO_1;
typedef LPADDJOB_INFO_1A LPADDJOB_INFO_1;
typedef struct _DRIVER_INFO_1A {
LPSTR pName;
} DRIVER_INFO_1A,*PDRIVER_INFO_1A,*LPDRIVER_INFO_1A;
typedef struct _DRIVER_INFO_1W {
LPWSTR pName;
} DRIVER_INFO_1W,*PDRIVER_INFO_1W,*LPDRIVER_INFO_1W;
typedef DRIVER_INFO_1A DRIVER_INFO_1;
typedef PDRIVER_INFO_1A PDRIVER_INFO_1;
typedef LPDRIVER_INFO_1A LPDRIVER_INFO_1;
typedef struct _DRIVER_INFO_2A {
DWORD cVersion;
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDriverPath;
LPSTR pDataFile;
LPSTR pConfigFile;
} DRIVER_INFO_2A,*PDRIVER_INFO_2A,*LPDRIVER_INFO_2A;
typedef struct _DRIVER_INFO_2W {
DWORD cVersion;
LPWSTR pName;
LPWSTR pEnvironment;
LPWSTR pDriverPath;
LPWSTR pDataFile;
LPWSTR pConfigFile;
} DRIVER_INFO_2W,*PDRIVER_INFO_2W,*LPDRIVER_INFO_2W;
typedef DRIVER_INFO_2A DRIVER_INFO_2;
typedef PDRIVER_INFO_2A PDRIVER_INFO_2;
typedef LPDRIVER_INFO_2A LPDRIVER_INFO_2;
typedef struct _DRIVER_INFO_3A {
DWORD cVersion;
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDriverPath;
LPSTR pDataFile;
LPSTR pConfigFile;
LPSTR pHelpFile;
LPSTR pDependentFiles;
LPSTR pMonitorName;
LPSTR pDefaultDataType;
} DRIVER_INFO_3A,*PDRIVER_INFO_3A,*LPDRIVER_INFO_3A;
typedef struct _DRIVER_INFO_3W {
DWORD cVersion;
LPWSTR pName;
LPWSTR pEnvironment;
LPWSTR pDriverPath;
LPWSTR pDataFile;
LPWSTR pConfigFile;
LPWSTR pHelpFile;
LPWSTR pDependentFiles;
LPWSTR pMonitorName;
LPWSTR pDefaultDataType;
} DRIVER_INFO_3W,*PDRIVER_INFO_3W,*LPDRIVER_INFO_3W;
typedef DRIVER_INFO_3A DRIVER_INFO_3;
typedef PDRIVER_INFO_3A PDRIVER_INFO_3;
typedef LPDRIVER_INFO_3A LPDRIVER_INFO_3;
typedef struct _DRIVER_INFO_4A {
DWORD cVersion;
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDriverPath;
LPSTR pDataFile;
LPSTR pConfigFile;
LPSTR pHelpFile;
LPSTR pDependentFiles;
LPSTR pMonitorName;
LPSTR pDefaultDataType;
LPSTR pszzPreviousNames;
} DRIVER_INFO_4A,*PDRIVER_INFO_4A,*LPDRIVER_INFO_4A;
typedef struct _DRIVER_INFO_4W {
DWORD cVersion;
LPWSTR pName;
LPWSTR pEnvironment;
LPWSTR pDriverPath;
LPWSTR pDataFile;
LPWSTR pConfigFile;
LPWSTR pHelpFile;
LPWSTR pDependentFiles;
LPWSTR pMonitorName;
LPWSTR pDefaultDataType;
LPWSTR pszzPreviousNames;
} DRIVER_INFO_4W,*PDRIVER_INFO_4W,*LPDRIVER_INFO_4W;
typedef DRIVER_INFO_4A DRIVER_INFO_4;
typedef PDRIVER_INFO_4A PDRIVER_INFO_4;
typedef LPDRIVER_INFO_4A LPDRIVER_INFO_4;
typedef struct _DRIVER_INFO_5A {
DWORD cVersion;
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDriverPath;
LPSTR pDataFile;
LPSTR pConfigFile;
DWORD dwDriverAttributes;
DWORD dwConfigVersion;
DWORD dwDriverVersion;
} DRIVER_INFO_5A,*PDRIVER_INFO_5A,*LPDRIVER_INFO_5A;
typedef struct _DRIVER_INFO_5W {
DWORD cVersion;
LPWSTR pName;
LPWSTR pEnvironment;
LPWSTR pDriverPath;
LPWSTR pDataFile;
LPWSTR pConfigFile;
DWORD dwDriverAttributes;
DWORD dwConfigVersion;
DWORD dwDriverVersion;
} DRIVER_INFO_5W,*PDRIVER_INFO_5W,*LPDRIVER_INFO_5W;
typedef DRIVER_INFO_5A DRIVER_INFO_5;
typedef PDRIVER_INFO_5A PDRIVER_INFO_5;
typedef LPDRIVER_INFO_5A LPDRIVER_INFO_5;
typedef struct _DRIVER_INFO_6A {
DWORD cVersion;
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDriverPath;
LPSTR pDataFile;
LPSTR pConfigFile;
LPSTR pHelpFile;
LPSTR pDependentFiles;
LPSTR pMonitorName;
LPSTR pDefaultDataType;
LPSTR pszzPreviousNames;
FILETIME ftDriverDate;
DWORDLONG dwlDriverVersion;
LPSTR pszMfgName;
LPSTR pszOEMUrl;
LPSTR pszHardwareID;
LPSTR pszProvider;
} DRIVER_INFO_6A,*PDRIVER_INFO_6A,*LPDRIVER_INFO_6A;
typedef struct _DRIVER_INFO_6W {
DWORD cVersion;
LPWSTR pName;
LPWSTR pEnvironment;
LPWSTR pDriverPath;
LPWSTR pDataFile;
LPWSTR pConfigFile;
LPWSTR pHelpFile;
LPWSTR pDependentFiles;
LPWSTR pMonitorName;
LPWSTR pDefaultDataType;
LPWSTR pszzPreviousNames;
FILETIME ftDriverDate;
DWORDLONG dwlDriverVersion;
LPWSTR pszMfgName;
LPWSTR pszOEMUrl;
LPWSTR pszHardwareID;
LPWSTR pszProvider;
} DRIVER_INFO_6W,*PDRIVER_INFO_6W,*LPDRIVER_INFO_6W;
typedef DRIVER_INFO_6A DRIVER_INFO_6;
typedef PDRIVER_INFO_6A PDRIVER_INFO_6;
typedef LPDRIVER_INFO_6A LPDRIVER_INFO_6;
typedef struct _DOC_INFO_1A {
LPSTR pDocName;
LPSTR pOutputFile;
LPSTR pDatatype;
} DOC_INFO_1A,*PDOC_INFO_1A,*LPDOC_INFO_1A;
typedef struct _DOC_INFO_1W {
LPWSTR pDocName;
LPWSTR pOutputFile;
LPWSTR pDatatype;
} DOC_INFO_1W,*PDOC_INFO_1W,*LPDOC_INFO_1W;
typedef DOC_INFO_1A DOC_INFO_1;
typedef PDOC_INFO_1A PDOC_INFO_1;
typedef LPDOC_INFO_1A LPDOC_INFO_1;
typedef struct _FORM_INFO_1A {
DWORD Flags;
LPSTR pName;
SIZEL Size;
RECTL ImageableArea;
} FORM_INFO_1A,*PFORM_INFO_1A,*LPFORM_INFO_1A;
typedef struct _FORM_INFO_1W {
DWORD Flags;
LPWSTR pName;
SIZEL Size;
RECTL ImageableArea;
} FORM_INFO_1W,*PFORM_INFO_1W,*LPFORM_INFO_1W;
typedef FORM_INFO_1A FORM_INFO_1;
typedef PFORM_INFO_1A PFORM_INFO_1;
typedef LPFORM_INFO_1A LPFORM_INFO_1;
typedef struct _DOC_INFO_2A {
LPSTR pDocName;
LPSTR pOutputFile;
LPSTR pDatatype;
DWORD dwMode;
DWORD JobId;
} DOC_INFO_2A,*PDOC_INFO_2A,*LPDOC_INFO_2A;
typedef struct _DOC_INFO_2W {
LPWSTR pDocName;
LPWSTR pOutputFile;
LPWSTR pDatatype;
DWORD dwMode;
DWORD JobId;
} DOC_INFO_2W,*PDOC_INFO_2W,*LPDOC_INFO_2W;
typedef DOC_INFO_2A DOC_INFO_2;
typedef PDOC_INFO_2A PDOC_INFO_2;
typedef LPDOC_INFO_2A LPDOC_INFO_2;
typedef struct _DOC_INFO_3A {
LPSTR pDocName;
LPSTR pOutputFile;
LPSTR pDatatype;
DWORD dwFlags;
} DOC_INFO_3A,*PDOC_INFO_3A,*LPDOC_INFO_3A;
typedef struct _DOC_INFO_3W {
LPWSTR pDocName;
LPWSTR pOutputFile;
LPWSTR pDatatype;
DWORD dwFlags;
} DOC_INFO_3W,*PDOC_INFO_3W,*LPDOC_INFO_3W;
typedef DOC_INFO_3A DOC_INFO_3;
typedef PDOC_INFO_3A PDOC_INFO_3;
typedef LPDOC_INFO_3A LPDOC_INFO_3;
typedef struct _PRINTPROCESSOR_INFO_1A {
LPSTR pName;
} PRINTPROCESSOR_INFO_1A,*PPRINTPROCESSOR_INFO_1A,*LPPRINTPROCESSOR_INFO_1A;
typedef struct _PRINTPROCESSOR_INFO_1W {
LPWSTR pName;
} PRINTPROCESSOR_INFO_1W,*PPRINTPROCESSOR_INFO_1W,*LPPRINTPROCESSOR_INFO_1W;
typedef PRINTPROCESSOR_INFO_1A PRINTPROCESSOR_INFO_1;
typedef PPRINTPROCESSOR_INFO_1A PPRINTPROCESSOR_INFO_1;
typedef LPPRINTPROCESSOR_INFO_1A LPPRINTPROCESSOR_INFO_1;
typedef struct _PRINTPROCESSOR_CAPS_1 {
DWORD dwLevel;
DWORD dwNupOptions;
DWORD dwPageOrderFlags;
DWORD dwNumberOfCopies;
} PRINTPROCESSOR_CAPS_1,*PPRINTPROCESSOR_CAPS_1;
typedef struct _PORT_INFO_1A {
LPSTR pName;
} PORT_INFO_1A,*PPORT_INFO_1A,*LPPORT_INFO_1A;
typedef struct _PORT_INFO_1W {
LPWSTR pName;
} PORT_INFO_1W,*PPORT_INFO_1W,*LPPORT_INFO_1W;
typedef PORT_INFO_1A PORT_INFO_1;
typedef PPORT_INFO_1A PPORT_INFO_1;
typedef LPPORT_INFO_1A LPPORT_INFO_1;
typedef struct _PORT_INFO_2A {
LPSTR pPortName;
LPSTR pMonitorName;
LPSTR pDescription;
DWORD fPortType;
DWORD Reserved;
} PORT_INFO_2A,*PPORT_INFO_2A,*LPPORT_INFO_2A;
typedef struct _PORT_INFO_2W {
LPWSTR pPortName;
LPWSTR pMonitorName;
LPWSTR pDescription;
DWORD fPortType;
DWORD Reserved;
} PORT_INFO_2W,*PPORT_INFO_2W,*LPPORT_INFO_2W;
typedef PORT_INFO_2A PORT_INFO_2;
typedef PPORT_INFO_2A PPORT_INFO_2;
typedef LPPORT_INFO_2A LPPORT_INFO_2;
typedef struct _PORT_INFO_3A {
DWORD dwStatus;
LPSTR pszStatus;
DWORD dwSeverity;
} PORT_INFO_3A,*PPORT_INFO_3A,*LPPORT_INFO_3A;
typedef struct _PORT_INFO_3W {
DWORD dwStatus;
LPWSTR pszStatus;
DWORD dwSeverity;
} PORT_INFO_3W,*PPORT_INFO_3W,*LPPORT_INFO_3W;
typedef PORT_INFO_3A PORT_INFO_3;
typedef PPORT_INFO_3A PPORT_INFO_3;
typedef LPPORT_INFO_3A LPPORT_INFO_3;
typedef struct _MONITOR_INFO_1A{
LPSTR pName;
} MONITOR_INFO_1A,*PMONITOR_INFO_1A,*LPMONITOR_INFO_1A;
typedef struct _MONITOR_INFO_1W{
LPWSTR pName;
} MONITOR_INFO_1W,*PMONITOR_INFO_1W,*LPMONITOR_INFO_1W;
typedef MONITOR_INFO_1A MONITOR_INFO_1;
typedef PMONITOR_INFO_1A PMONITOR_INFO_1;
typedef LPMONITOR_INFO_1A LPMONITOR_INFO_1;
typedef struct _MONITOR_INFO_2A {
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDLLName;
} MONITOR_INFO_2A,*PMONITOR_INFO_2A,*LPMONITOR_INFO_2A;
typedef struct _MONITOR_INFO_2W {
LPWSTR pName;
LPWSTR pEnvironment;
LPWSTR pDLLName;
} MONITOR_INFO_2W,*PMONITOR_INFO_2W,*LPMONITOR_INFO_2W;
typedef MONITOR_INFO_2A MONITOR_INFO_2;
typedef PMONITOR_INFO_2A PMONITOR_INFO_2;
typedef LPMONITOR_INFO_2A LPMONITOR_INFO_2;
typedef struct _DATATYPES_INFO_1A {
LPSTR pName;
} DATATYPES_INFO_1A,*PDATATYPES_INFO_1A,*LPDATATYPES_INFO_1A;
typedef struct _DATATYPES_INFO_1W {
LPWSTR pName;
} DATATYPES_INFO_1W,*PDATATYPES_INFO_1W,*LPDATATYPES_INFO_1W;
typedef DATATYPES_INFO_1A DATATYPES_INFO_1;
typedef PDATATYPES_INFO_1A PDATATYPES_INFO_1;
typedef LPDATATYPES_INFO_1A LPDATATYPES_INFO_1;
typedef struct _PRINTER_DEFAULTSA {
LPSTR pDatatype;
LPDEVMODEA pDevMode;
ACCESS_MASK DesiredAccess;
} PRINTER_DEFAULTSA,*PPRINTER_DEFAULTSA,*LPPRINTER_DEFAULTSA;
typedef struct _PRINTER_DEFAULTSW {
LPWSTR pDatatype;
LPDEVMODEW pDevMode;
ACCESS_MASK DesiredAccess;
} PRINTER_DEFAULTSW,*PPRINTER_DEFAULTSW,*LPPRINTER_DEFAULTSW;
typedef PRINTER_DEFAULTSA PRINTER_DEFAULTS;
typedef PPRINTER_DEFAULTSA PPRINTER_DEFAULTS;
typedef LPPRINTER_DEFAULTSA LPPRINTER_DEFAULTS;
typedef struct _PRINTER_ENUM_VALUESA {
LPSTR pValueName;
DWORD cbValueName;
DWORD dwType;
LPBYTE pData;
DWORD cbData;
} PRINTER_ENUM_VALUESA,*PPRINTER_ENUM_VALUESA,*LPPRINTER_ENUM_VALUESA;
typedef struct _PRINTER_ENUM_VALUESW {
LPWSTR pValueName;
DWORD cbValueName;
DWORD dwType;
LPBYTE pData;
DWORD cbData;
} PRINTER_ENUM_VALUESW,*PPRINTER_ENUM_VALUESW,*LPPRINTER_ENUM_VALUESW;
typedef PRINTER_ENUM_VALUESA PRINTER_ENUM_VALUES;
typedef PPRINTER_ENUM_VALUESA PPRINTER_ENUM_VALUES;
typedef LPPRINTER_ENUM_VALUESA LPPRINTER_ENUM_VALUES;
WINBOOL __attribute__((__stdcall__)) EnumPrintersA(DWORD Flags,LPSTR Name,DWORD Level,LPBYTE pPrinterEnum,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumPrintersW(DWORD Flags,LPWSTR Name,DWORD Level,LPBYTE pPrinterEnum,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) OpenPrinterA(LPSTR pPrinterName,LPHANDLE phPrinter,LPPRINTER_DEFAULTSA pDefault);
WINBOOL __attribute__((__stdcall__)) OpenPrinterW(LPWSTR pPrinterName,LPHANDLE phPrinter,LPPRINTER_DEFAULTSW pDefault);
WINBOOL __attribute__((__stdcall__)) ResetPrinterA(HANDLE hPrinter,LPPRINTER_DEFAULTSA pDefault);
WINBOOL __attribute__((__stdcall__)) ResetPrinterW(HANDLE hPrinter,LPPRINTER_DEFAULTSW pDefault);
WINBOOL __attribute__((__stdcall__)) SetJobA(HANDLE hPrinter,DWORD JobId,DWORD Level,LPBYTE pJob,DWORD Command);
WINBOOL __attribute__((__stdcall__)) SetJobW(HANDLE hPrinter,DWORD JobId,DWORD Level,LPBYTE pJob,DWORD Command);
WINBOOL __attribute__((__stdcall__)) GetJobA(HANDLE hPrinter,DWORD JobId,DWORD Level,LPBYTE pJob,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) GetJobW(HANDLE hPrinter,DWORD JobId,DWORD Level,LPBYTE pJob,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) EnumJobsA(HANDLE hPrinter,DWORD FirstJob,DWORD NoJobs,DWORD Level,LPBYTE pJob,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumJobsW(HANDLE hPrinter,DWORD FirstJob,DWORD NoJobs,DWORD Level,LPBYTE pJob,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
HANDLE __attribute__((__stdcall__)) AddPrinterA(LPSTR pName,DWORD Level,LPBYTE pPrinter);
HANDLE __attribute__((__stdcall__)) AddPrinterW(LPWSTR pName,DWORD Level,LPBYTE pPrinter);
WINBOOL __attribute__((__stdcall__)) DeletePrinter(HANDLE hPrinter);
WINBOOL __attribute__((__stdcall__)) SetPrinterA(HANDLE hPrinter,DWORD Level,LPBYTE pPrinter,DWORD Command);
WINBOOL __attribute__((__stdcall__)) SetPrinterW(HANDLE hPrinter,DWORD Level,LPBYTE pPrinter,DWORD Command);
WINBOOL __attribute__((__stdcall__)) GetPrinterA(HANDLE hPrinter,DWORD Level,LPBYTE pPrinter,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) GetPrinterW(HANDLE hPrinter,DWORD Level,LPBYTE pPrinter,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) AddPrinterDriverA(LPSTR pName,DWORD Level,LPBYTE pDriverInfo);
WINBOOL __attribute__((__stdcall__)) AddPrinterDriverW(LPWSTR pName,DWORD Level,LPBYTE pDriverInfo);
WINBOOL __attribute__((__stdcall__)) AddPrinterDriverExA(LPSTR pName,DWORD Level,LPBYTE pDriverInfo,DWORD dwFileCopyFlags);
WINBOOL __attribute__((__stdcall__)) AddPrinterDriverExW(LPWSTR pName,DWORD Level,LPBYTE pDriverInfo,DWORD dwFileCopyFlags);
WINBOOL __attribute__((__stdcall__)) EnumPrinterDriversA(LPSTR pName,LPSTR pEnvironment,DWORD Level,LPBYTE pDriverInfo,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumPrinterDriversW(LPWSTR pName,LPWSTR pEnvironment,DWORD Level,LPBYTE pDriverInfo,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) GetPrinterDriverA(HANDLE hPrinter,LPSTR pEnvironment,DWORD Level,LPBYTE pDriverInfo,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) GetPrinterDriverW(HANDLE hPrinter,LPWSTR pEnvironment,DWORD Level,LPBYTE pDriverInfo,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) GetPrinterDriverDirectoryA(LPSTR pName,LPSTR pEnvironment,DWORD Level,LPBYTE pDriverDirectory,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) GetPrinterDriverDirectoryW(LPWSTR pName,LPWSTR pEnvironment,DWORD Level,LPBYTE pDriverDirectory,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) DeletePrinterDriverA(LPSTR pName,LPSTR pEnvironment,LPSTR pDriverName);
WINBOOL __attribute__((__stdcall__)) DeletePrinterDriverW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pDriverName);
WINBOOL __attribute__((__stdcall__)) DeletePrinterDriverExA(LPSTR pName,LPSTR pEnvironment,LPSTR pDriverName,DWORD dwDeleteFlag,DWORD dwVersionFlag);
WINBOOL __attribute__((__stdcall__)) DeletePrinterDriverExW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pDriverName,DWORD dwDeleteFlag,DWORD dwVersionFlag);
WINBOOL __attribute__((__stdcall__)) AddPrintProcessorA(LPSTR pName,LPSTR pEnvironment,LPSTR pPathName,LPSTR pPrintProcessorName);
WINBOOL __attribute__((__stdcall__)) AddPrintProcessorW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pPathName,LPWSTR pPrintProcessorName);
WINBOOL __attribute__((__stdcall__)) EnumPrintProcessorsA(LPSTR pName,LPSTR pEnvironment,DWORD Level,LPBYTE pPrintProcessorInfo,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumPrintProcessorsW(LPWSTR pName,LPWSTR pEnvironment,DWORD Level,LPBYTE pPrintProcessorInfo,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) GetPrintProcessorDirectoryA(LPSTR pName,LPSTR pEnvironment,DWORD Level,LPBYTE pPrintProcessorInfo,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) GetPrintProcessorDirectoryW(LPWSTR pName,LPWSTR pEnvironment,DWORD Level,LPBYTE pPrintProcessorInfo,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) EnumPrintProcessorDatatypesA(LPSTR pName,LPSTR pPrintProcessorName,DWORD Level,LPBYTE pDatatypes,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumPrintProcessorDatatypesW(LPWSTR pName,LPWSTR pPrintProcessorName,DWORD Level,LPBYTE pDatatypes,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) DeletePrintProcessorA(LPSTR pName,LPSTR pEnvironment,LPSTR pPrintProcessorName);
WINBOOL __attribute__((__stdcall__)) DeletePrintProcessorW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pPrintProcessorName);
DWORD __attribute__((__stdcall__)) StartDocPrinterA(HANDLE hPrinter,DWORD Level,LPBYTE pDocInfo);
DWORD __attribute__((__stdcall__)) StartDocPrinterW(HANDLE hPrinter,DWORD Level,LPBYTE pDocInfo);
WINBOOL __attribute__((__stdcall__)) StartPagePrinter(HANDLE hPrinter);
WINBOOL __attribute__((__stdcall__)) WritePrinter(HANDLE hPrinter,LPVOID pBuf,DWORD cbBuf,LPDWORD pcWritten);
WINBOOL __attribute__((__stdcall__)) FlushPrinter(HANDLE hPrinter,LPVOID pBuf,DWORD cbBuf,LPDWORD pcWritten,DWORD cSleep);
WINBOOL __attribute__((__stdcall__)) EndPagePrinter(HANDLE hPrinter);
WINBOOL __attribute__((__stdcall__)) AbortPrinter(HANDLE hPrinter);
WINBOOL __attribute__((__stdcall__)) ReadPrinter(HANDLE hPrinter,LPVOID pBuf,DWORD cbBuf,LPDWORD pNoBytesRead);
WINBOOL __attribute__((__stdcall__)) EndDocPrinter(HANDLE hPrinter);
WINBOOL __attribute__((__stdcall__)) AddJobA(HANDLE hPrinter,DWORD Level,LPBYTE pData,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) AddJobW(HANDLE hPrinter,DWORD Level,LPBYTE pData,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) ScheduleJob(HANDLE hPrinter,DWORD JobId);
WINBOOL __attribute__((__stdcall__)) PrinterProperties(HWND hWnd,HANDLE hPrinter);
LONG __attribute__((__stdcall__)) DocumentPropertiesA(HWND hWnd,HANDLE hPrinter,LPSTR pDeviceName,PDEVMODEA pDevModeOutput,PDEVMODEA pDevModeInput,DWORD fMode);
LONG __attribute__((__stdcall__)) DocumentPropertiesW(HWND hWnd,HANDLE hPrinter,LPWSTR pDeviceName,PDEVMODEW pDevModeOutput,PDEVMODEW pDevModeInput,DWORD fMode);
LONG __attribute__((__stdcall__)) AdvancedDocumentPropertiesA(HWND hWnd,HANDLE hPrinter,LPSTR pDeviceName,PDEVMODEA pDevModeOutput,PDEVMODEA pDevModeInput);
LONG __attribute__((__stdcall__)) AdvancedDocumentPropertiesW(HWND hWnd,HANDLE hPrinter,LPWSTR pDeviceName,PDEVMODEW pDevModeOutput,PDEVMODEW pDevModeInput);
LONG ExtDeviceMode(HWND hWnd,HANDLE hInst,LPDEVMODEA pDevModeOutput,LPSTR pDeviceName,LPSTR pPort,LPDEVMODEA pDevModeInput,LPSTR pProfile,DWORD fMode);
DWORD __attribute__((__stdcall__)) GetPrinterDataA(HANDLE hPrinter,LPSTR pValueName,LPDWORD pType,LPBYTE pData,DWORD nSize,LPDWORD pcbNeeded);
DWORD __attribute__((__stdcall__)) GetPrinterDataW(HANDLE hPrinter,LPWSTR pValueName,LPDWORD pType,LPBYTE pData,DWORD nSize,LPDWORD pcbNeeded);
DWORD __attribute__((__stdcall__)) GetPrinterDataExA(HANDLE hPrinter,LPCSTR pKeyName,LPCSTR pValueName,LPDWORD pType,LPBYTE pData,DWORD nSize,LPDWORD pcbNeeded);
DWORD __attribute__((__stdcall__)) GetPrinterDataExW(HANDLE hPrinter,LPCWSTR pKeyName,LPCWSTR pValueName,LPDWORD pType,LPBYTE pData,DWORD nSize,LPDWORD pcbNeeded);
DWORD __attribute__((__stdcall__)) EnumPrinterDataA(HANDLE hPrinter,DWORD dwIndex,LPSTR pValueName,DWORD cbValueName,LPDWORD pcbValueName,LPDWORD pType,LPBYTE pData,DWORD cbData,LPDWORD pcbData);
DWORD __attribute__((__stdcall__)) EnumPrinterDataW(HANDLE hPrinter,DWORD dwIndex,LPWSTR pValueName,DWORD cbValueName,LPDWORD pcbValueName,LPDWORD pType,LPBYTE pData,DWORD cbData,LPDWORD pcbData);
DWORD __attribute__((__stdcall__)) EnumPrinterDataExA(HANDLE hPrinter,LPCSTR pKeyName,LPBYTE pEnumValues,DWORD cbEnumValues,LPDWORD pcbEnumValues,LPDWORD pnEnumValues);
DWORD __attribute__((__stdcall__)) EnumPrinterDataExW(HANDLE hPrinter,LPCWSTR pKeyName,LPBYTE pEnumValues,DWORD cbEnumValues,LPDWORD pcbEnumValues,LPDWORD pnEnumValues);
DWORD __attribute__((__stdcall__)) EnumPrinterKeyA(HANDLE hPrinter,LPCSTR pKeyName,LPSTR pSubkey,DWORD cbSubkey,LPDWORD pcbSubkey);
DWORD __attribute__((__stdcall__)) EnumPrinterKeyW(HANDLE hPrinter,LPCWSTR pKeyName,LPWSTR pSubkey,DWORD cbSubkey,LPDWORD pcbSubkey);
DWORD __attribute__((__stdcall__)) SetPrinterDataA(HANDLE hPrinter,LPSTR pValueName,DWORD Type,LPBYTE pData,DWORD cbData);
DWORD __attribute__((__stdcall__)) SetPrinterDataW(HANDLE hPrinter,LPWSTR pValueName,DWORD Type,LPBYTE pData,DWORD cbData);
DWORD __attribute__((__stdcall__)) SetPrinterDataExA(HANDLE hPrinter,LPCSTR pKeyName,LPCSTR pValueName,DWORD Type,LPBYTE pData,DWORD cbData);
DWORD __attribute__((__stdcall__)) SetPrinterDataExW(HANDLE hPrinter,LPCWSTR pKeyName,LPCWSTR pValueName,DWORD Type,LPBYTE pData,DWORD cbData);
DWORD __attribute__((__stdcall__)) DeletePrinterDataA(HANDLE hPrinter,LPSTR pValueName);
DWORD __attribute__((__stdcall__)) DeletePrinterDataW(HANDLE hPrinter,LPWSTR pValueName);
DWORD __attribute__((__stdcall__)) DeletePrinterDataExA(HANDLE hPrinter,LPCSTR pKeyName,LPCSTR pValueName);
DWORD __attribute__((__stdcall__)) DeletePrinterDataExW(HANDLE hPrinter,LPCWSTR pKeyName,LPCWSTR pValueName);
DWORD __attribute__((__stdcall__)) DeletePrinterKeyA(HANDLE hPrinter,LPCSTR pKeyName);
DWORD __attribute__((__stdcall__)) DeletePrinterKeyW(HANDLE hPrinter,LPCWSTR pKeyName);
typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE {
WORD Type;
WORD Reserved0;
DWORD Reserved1;
DWORD Reserved2;
DWORD Count;
PWORD pFields;
} PRINTER_NOTIFY_OPTIONS_TYPE,*PPRINTER_NOTIFY_OPTIONS_TYPE,*LPPRINTER_NOTIFY_OPTIONS_TYPE;
typedef struct _PRINTER_NOTIFY_OPTIONS {
DWORD Version;
DWORD Flags;
DWORD Count;
PPRINTER_NOTIFY_OPTIONS_TYPE pTypes;
} PRINTER_NOTIFY_OPTIONS,*PPRINTER_NOTIFY_OPTIONS,*LPPRINTER_NOTIFY_OPTIONS;
typedef struct _PRINTER_NOTIFY_INFO_DATA {
WORD Type;
WORD Field;
DWORD Reserved;
DWORD Id;
union {
DWORD adwData[2];
struct {
DWORD cbBuf;
LPVOID pBuf;
} Data;
} NotifyData;
} PRINTER_NOTIFY_INFO_DATA,*PPRINTER_NOTIFY_INFO_DATA,*LPPRINTER_NOTIFY_INFO_DATA;
typedef struct _PRINTER_NOTIFY_INFO {
DWORD Version;
DWORD Flags;
DWORD Count;
PRINTER_NOTIFY_INFO_DATA aData[1];
} PRINTER_NOTIFY_INFO,*PPRINTER_NOTIFY_INFO,*LPPRINTER_NOTIFY_INFO;
typedef struct _BINARY_CONTAINER{
DWORD cbBuf;
LPBYTE pData;
} BINARY_CONTAINER,*PBINARY_CONTAINER;
typedef struct _BIDI_DATA{
DWORD dwBidiType;
union {
WINBOOL bData;
LONG iData;
LPWSTR sData;
FLOAT fData;
BINARY_CONTAINER biData;
} u;
} BIDI_DATA,*PBIDI_DATA,*LPBIDI_DATA;
typedef struct _BIDI_REQUEST_DATA{
DWORD dwReqNumber;
LPWSTR pSchema;
BIDI_DATA data;
} BIDI_REQUEST_DATA ,*PBIDI_REQUEST_DATA ,*LPBIDI_REQUEST_DATA;
typedef struct _BIDI_REQUEST_CONTAINER{
DWORD Version;
DWORD Flags;
DWORD Count;
BIDI_REQUEST_DATA aData[1 ];
}BIDI_REQUEST_CONTAINER,*PBIDI_REQUEST_CONTAINER,*LPBIDI_REQUEST_CONTAINER;
typedef struct _BIDI_RESPONSE_DATA{
DWORD dwResult;
DWORD dwReqNumber;
LPWSTR pSchema;
BIDI_DATA data;
} BIDI_RESPONSE_DATA,*PBIDI_RESPONSE_DATA,*LPBIDI_RESPONSE_DATA;
typedef struct _BIDI_RESPONSE_CONTAINER{
DWORD Version;
DWORD Flags;
DWORD Count;
BIDI_RESPONSE_DATA aData[1 ];
} BIDI_RESPONSE_CONTAINER,*PBIDI_RESPONSE_CONTAINER,*LPBIDI_RESPONSE_CONTAINER;
typedef enum {
BIDI_NULL = 0,BIDI_INT = 1,BIDI_FLOAT = 2,BIDI_BOOL = 3,BIDI_STRING = 4,BIDI_TEXT = 5,BIDI_ENUM = 6,BIDI_BLOB = 7
} BIDI_TYPE;
DWORD __attribute__((__stdcall__)) WaitForPrinterChange(HANDLE hPrinter,DWORD Flags);
HANDLE __attribute__((__stdcall__)) FindFirstPrinterChangeNotification(HANDLE hPrinter,DWORD fdwFlags,DWORD fdwOptions,LPVOID pPrinterNotifyOptions);
WINBOOL __attribute__((__stdcall__)) FindNextPrinterChangeNotification(HANDLE hChange,PDWORD pdwChange,LPVOID pPrinterNotifyOptions,LPVOID *ppPrinterNotifyInfo);
WINBOOL __attribute__((__stdcall__)) FreePrinterNotifyInfo (PPRINTER_NOTIFY_INFO pPrinterNotifyInfo);
WINBOOL __attribute__((__stdcall__)) FindClosePrinterChangeNotification(HANDLE hChange);
DWORD __attribute__((__stdcall__)) PrinterMessageBoxA(HANDLE hPrinter,DWORD Error,HWND hWnd,LPSTR pText,LPSTR pCaption,DWORD dwType);
DWORD __attribute__((__stdcall__)) PrinterMessageBoxW(HANDLE hPrinter,DWORD Error,HWND hWnd,LPWSTR pText,LPWSTR pCaption,DWORD dwType);
WINBOOL __attribute__((__stdcall__)) ClosePrinter(HANDLE hPrinter);
WINBOOL __attribute__((__stdcall__)) AddFormA(HANDLE hPrinter,DWORD Level,LPBYTE pForm);
WINBOOL __attribute__((__stdcall__)) AddFormW(HANDLE hPrinter,DWORD Level,LPBYTE pForm);
WINBOOL __attribute__((__stdcall__)) DeleteFormA(HANDLE hPrinter,LPSTR pFormName);
WINBOOL __attribute__((__stdcall__)) DeleteFormW(HANDLE hPrinter,LPWSTR pFormName);
WINBOOL __attribute__((__stdcall__)) GetFormA(HANDLE hPrinter,LPSTR pFormName,DWORD Level,LPBYTE pForm,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) GetFormW(HANDLE hPrinter,LPWSTR pFormName,DWORD Level,LPBYTE pForm,DWORD cbBuf,LPDWORD pcbNeeded);
WINBOOL __attribute__((__stdcall__)) SetFormA(HANDLE hPrinter,LPSTR pFormName,DWORD Level,LPBYTE pForm);
WINBOOL __attribute__((__stdcall__)) SetFormW(HANDLE hPrinter,LPWSTR pFormName,DWORD Level,LPBYTE pForm);
WINBOOL __attribute__((__stdcall__)) EnumFormsA(HANDLE hPrinter,DWORD Level,LPBYTE pForm,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumFormsW(HANDLE hPrinter,DWORD Level,LPBYTE pForm,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumMonitorsA(LPSTR pName,DWORD Level,LPBYTE pMonitor,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumMonitorsW(LPWSTR pName,DWORD Level,LPBYTE pMonitor,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) AddMonitorA(LPSTR pName,DWORD Level,LPBYTE pMonitorInfo);
WINBOOL __attribute__((__stdcall__)) AddMonitorW(LPWSTR pName,DWORD Level,LPBYTE pMonitorInfo);
WINBOOL __attribute__((__stdcall__)) DeleteMonitorA(LPSTR pName,LPSTR pEnvironment,LPSTR pMonitorName);
WINBOOL __attribute__((__stdcall__)) DeleteMonitorW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pMonitorName);
WINBOOL __attribute__((__stdcall__)) EnumPortsA(LPSTR pName,DWORD Level,LPBYTE pPorts,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) EnumPortsW(LPWSTR pName,DWORD Level,LPBYTE pPorts,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
WINBOOL __attribute__((__stdcall__)) AddPortA(LPSTR pName,HWND hWnd,LPSTR pMonitorName);
WINBOOL __attribute__((__stdcall__)) AddPortW(LPWSTR pName,HWND hWnd,LPWSTR pMonitorName);
WINBOOL __attribute__((__stdcall__)) ConfigurePortA(LPSTR pName,HWND hWnd,LPSTR pPortName);
WINBOOL __attribute__((__stdcall__)) ConfigurePortW(LPWSTR pName,HWND hWnd,LPWSTR pPortName);
WINBOOL __attribute__((__stdcall__)) DeletePortA(LPSTR pName,HWND hWnd,LPSTR pPortName);
WINBOOL __attribute__((__stdcall__)) DeletePortW(LPWSTR pName,HWND hWnd,LPWSTR pPortName);
WINBOOL __attribute__((__stdcall__)) XcvDataW(HANDLE hXcv,PCWSTR pszDataName,PBYTE pInputData,DWORD cbInputData,PBYTE pOutputData,DWORD cbOutputData,PDWORD pcbOutputNeeded,PDWORD pdwStatus);
WINBOOL __attribute__((__stdcall__)) GetDefaultPrinterA(LPSTR pszBuffer,LPDWORD pcchBuffer);
WINBOOL __attribute__((__stdcall__)) GetDefaultPrinterW(LPWSTR pszBuffer,LPDWORD pcchBuffer);
WINBOOL __attribute__((__stdcall__)) SetDefaultPrinterA(LPCSTR pszPrinter);
WINBOOL __attribute__((__stdcall__)) SetDefaultPrinterW(LPCWSTR pszPrinter);
WINBOOL __attribute__((__stdcall__)) SetPortA(LPSTR pName,LPSTR pPortName,DWORD dwLevel,LPBYTE pPortInfo);
WINBOOL __attribute__((__stdcall__)) SetPortW(LPWSTR pName,LPWSTR pPortName,DWORD dwLevel,LPBYTE pPortInfo);
WINBOOL __attribute__((__stdcall__)) AddPrinterConnectionA(LPSTR pName);
WINBOOL __attribute__((__stdcall__)) AddPrinterConnectionW(LPWSTR pName);
WINBOOL __attribute__((__stdcall__)) DeletePrinterConnectionA(LPSTR pName);
WINBOOL __attribute__((__stdcall__)) DeletePrinterConnectionW(LPWSTR pName);
HANDLE __attribute__((__stdcall__)) ConnectToPrinterDlg(HWND hwnd,DWORD Flags);
typedef struct _PROVIDOR_INFO_1A{
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDLLName;
} PROVIDOR_INFO_1A,*PPROVIDOR_INFO_1A,*LPPROVIDOR_INFO_1A;
typedef struct _PROVIDOR_INFO_1W{
LPWSTR pName;
LPWSTR pEnvironment;
LPWSTR pDLLName;
} PROVIDOR_INFO_1W,*PPROVIDOR_INFO_1W,*LPPROVIDOR_INFO_1W;
typedef PROVIDOR_INFO_1A PROVIDOR_INFO_1;
typedef PPROVIDOR_INFO_1A PPROVIDOR_INFO_1;
typedef LPPROVIDOR_INFO_1A LPPROVIDOR_INFO_1;
typedef struct _PROVIDOR_INFO_2A{
LPSTR pOrder;
} PROVIDOR_INFO_2A,*PPROVIDOR_INFO_2A,*LPPROVIDOR_INFO_2A;
typedef struct _PROVIDOR_INFO_2W{
LPWSTR pOrder;
} PROVIDOR_INFO_2W,*PPROVIDOR_INFO_2W,*LPPROVIDOR_INFO_2W;
typedef PROVIDOR_INFO_2A PROVIDOR_INFO_2;
typedef PPROVIDOR_INFO_2A PPROVIDOR_INFO_2;
typedef LPPROVIDOR_INFO_2A LPPROVIDOR_INFO_2;
WINBOOL __attribute__((__stdcall__)) AddPrintProvidorA(LPSTR pName,DWORD level,LPBYTE pProvidorInfo);
WINBOOL __attribute__((__stdcall__)) AddPrintProvidorW(LPWSTR pName,DWORD level,LPBYTE pProvidorInfo);
WINBOOL __attribute__((__stdcall__)) DeletePrintProvidorA(LPSTR pName,LPSTR pEnvironment,LPSTR pPrintProvidorName);
WINBOOL __attribute__((__stdcall__)) DeletePrintProvidorW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pPrintProvidorName);
WINBOOL __attribute__((__stdcall__)) IsValidDevmodeA (PDEVMODEA pDevmode,size_t DevmodeSize);
WINBOOL __attribute__((__stdcall__)) IsValidDevmodeW (PDEVMODEW pDevmode,size_t DevmodeSize);
extern const GUID IID_IPrintDialogCallback;
extern const GUID IID_IPrintDialogServices;
#pragma pack(push,1)
typedef UINT_PTR (__attribute__((__stdcall__)) *LPOFNHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
typedef struct tagOFN_NT4A {
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
LPCSTR lpstrFilter;
LPSTR lpstrCustomFilter;
DWORD nMaxCustFilter;
DWORD nFilterIndex;
LPSTR lpstrFile;
DWORD nMaxFile;
LPSTR lpstrFileTitle;
DWORD nMaxFileTitle;
LPCSTR lpstrInitialDir;
LPCSTR lpstrTitle;
DWORD Flags;
WORD nFileOffset;
WORD nFileExtension;
LPCSTR lpstrDefExt;
LPARAM lCustData;
LPOFNHOOKPROC lpfnHook;
LPCSTR lpTemplateName;
} OPENFILENAME_NT4A,*LPOPENFILENAME_NT4A;
typedef struct tagOFN_NT4W {
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
LPCWSTR lpstrFilter;
LPWSTR lpstrCustomFilter;
DWORD nMaxCustFilter;
DWORD nFilterIndex;
LPWSTR lpstrFile;
DWORD nMaxFile;
LPWSTR lpstrFileTitle;
DWORD nMaxFileTitle;
LPCWSTR lpstrInitialDir;
LPCWSTR lpstrTitle;
DWORD Flags;
WORD nFileOffset;
WORD nFileExtension;
LPCWSTR lpstrDefExt;
LPARAM lCustData;
LPOFNHOOKPROC lpfnHook;
LPCWSTR lpTemplateName;
} OPENFILENAME_NT4W,*LPOPENFILENAME_NT4W;
typedef OPENFILENAME_NT4A OPENFILENAME_NT4;
typedef LPOPENFILENAME_NT4A LPOPENFILENAME_NT4;
typedef struct tagOFNA {
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
LPCSTR lpstrFilter;
LPSTR lpstrCustomFilter;
DWORD nMaxCustFilter;
DWORD nFilterIndex;
LPSTR lpstrFile;
DWORD nMaxFile;
LPSTR lpstrFileTitle;
DWORD nMaxFileTitle;
LPCSTR lpstrInitialDir;
LPCSTR lpstrTitle;
DWORD Flags;
WORD nFileOffset;
WORD nFileExtension;
LPCSTR lpstrDefExt;
LPARAM lCustData;
LPOFNHOOKPROC lpfnHook;
LPCSTR lpTemplateName;
void *pvReserved;
DWORD dwReserved;
DWORD FlagsEx;
} OPENFILENAMEA,*LPOPENFILENAMEA;
typedef struct tagOFNW {
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
LPCWSTR lpstrFilter;
LPWSTR lpstrCustomFilter;
DWORD nMaxCustFilter;
DWORD nFilterIndex;
LPWSTR lpstrFile;
DWORD nMaxFile;
LPWSTR lpstrFileTitle;
DWORD nMaxFileTitle;
LPCWSTR lpstrInitialDir;
LPCWSTR lpstrTitle;
DWORD Flags;
WORD nFileOffset;
WORD nFileExtension;
LPCWSTR lpstrDefExt;
LPARAM lCustData;
LPOFNHOOKPROC lpfnHook;
LPCWSTR lpTemplateName;
void *pvReserved;
DWORD dwReserved;
DWORD FlagsEx;
} OPENFILENAMEW,*LPOPENFILENAMEW;
typedef OPENFILENAMEA OPENFILENAME;
typedef LPOPENFILENAMEA LPOPENFILENAME;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetOpenFileNameA(LPOPENFILENAMEA);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetOpenFileNameW(LPOPENFILENAMEW);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSaveFileNameA(LPOPENFILENAMEA);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetSaveFileNameW(LPOPENFILENAMEW);
__attribute__((dllimport)) short __attribute__((__stdcall__)) GetFileTitleA(LPCSTR,LPSTR,WORD);
__attribute__((dllimport)) short __attribute__((__stdcall__)) GetFileTitleW(LPCWSTR,LPWSTR,WORD);
typedef UINT_PTR (__attribute__((__stdcall__)) *LPCCHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
typedef struct _OFNOTIFYA {
NMHDR hdr;
LPOPENFILENAMEA lpOFN;
LPSTR pszFile;
} OFNOTIFYA,*LPOFNOTIFYA;
typedef struct _OFNOTIFYW {
NMHDR hdr;
LPOPENFILENAMEW lpOFN;
LPWSTR pszFile;
} OFNOTIFYW,*LPOFNOTIFYW;
typedef OFNOTIFYA OFNOTIFY;
typedef LPOFNOTIFYA LPOFNOTIFY;
typedef struct _OFNOTIFYEXA {
NMHDR hdr;
LPOPENFILENAMEA lpOFN;
LPVOID psf;
LPVOID pidl;
} OFNOTIFYEXA,*LPOFNOTIFYEXA;
typedef struct _OFNOTIFYEXW {
NMHDR hdr;
LPOPENFILENAMEW lpOFN;
LPVOID psf;
LPVOID pidl;
} OFNOTIFYEXW,*LPOFNOTIFYEXW;
typedef OFNOTIFYEXA OFNOTIFYEX;
typedef LPOFNOTIFYEXA LPOFNOTIFYEX;
typedef struct tagCHOOSECOLORA {
DWORD lStructSize;
HWND hwndOwner;
HWND hInstance;
COLORREF rgbResult;
COLORREF *lpCustColors;
DWORD Flags;
LPARAM lCustData;
LPCCHOOKPROC lpfnHook;
LPCSTR lpTemplateName;
} CHOOSECOLORA,*LPCHOOSECOLORA;
typedef struct tagCHOOSECOLORW {
DWORD lStructSize;
HWND hwndOwner;
HWND hInstance;
COLORREF rgbResult;
COLORREF *lpCustColors;
DWORD Flags;
LPARAM lCustData;
LPCCHOOKPROC lpfnHook;
LPCWSTR lpTemplateName;
} CHOOSECOLORW,*LPCHOOSECOLORW;
typedef CHOOSECOLORA CHOOSECOLOR;
typedef LPCHOOSECOLORA LPCHOOSECOLOR;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChooseColorA(LPCHOOSECOLORA);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChooseColorW(LPCHOOSECOLORW);
typedef UINT_PTR (__attribute__((__stdcall__)) *LPFRHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
typedef struct tagFINDREPLACEA {
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
DWORD Flags;
LPSTR lpstrFindWhat;
LPSTR lpstrReplaceWith;
WORD wFindWhatLen;
WORD wReplaceWithLen;
LPARAM lCustData;
LPFRHOOKPROC lpfnHook;
LPCSTR lpTemplateName;
} FINDREPLACEA,*LPFINDREPLACEA;
typedef struct tagFINDREPLACEW {
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
DWORD Flags;
LPWSTR lpstrFindWhat;
LPWSTR lpstrReplaceWith;
WORD wFindWhatLen;
WORD wReplaceWithLen;
LPARAM lCustData;
LPFRHOOKPROC lpfnHook;
LPCWSTR lpTemplateName;
} FINDREPLACEW,*LPFINDREPLACEW;
typedef FINDREPLACEA FINDREPLACE;
typedef LPFINDREPLACEA LPFINDREPLACE;
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) FindTextA(LPFINDREPLACEA);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) FindTextW(LPFINDREPLACEW);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) ReplaceTextA(LPFINDREPLACEA);
__attribute__((dllimport)) HWND __attribute__((__stdcall__)) ReplaceTextW(LPFINDREPLACEW);
typedef UINT_PTR (__attribute__((__stdcall__)) *LPCFHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
typedef struct tagCHOOSEFONTA {
DWORD lStructSize;
HWND hwndOwner;
HDC hDC;
LPLOGFONTA lpLogFont;
INT iPointSize;
DWORD Flags;
COLORREF rgbColors;
LPARAM lCustData;
LPCFHOOKPROC lpfnHook;
LPCSTR lpTemplateName;
HINSTANCE hInstance;
LPSTR lpszStyle;
WORD nFontType;
WORD ___MISSING_ALIGNMENT__;
INT nSizeMin;
INT nSizeMax;
} CHOOSEFONTA,*LPCHOOSEFONTA;
typedef struct tagCHOOSEFONTW {
DWORD lStructSize;
HWND hwndOwner;
HDC hDC;
LPLOGFONTW lpLogFont;
INT iPointSize;
DWORD Flags;
COLORREF rgbColors;
LPARAM lCustData;
LPCFHOOKPROC lpfnHook;
LPCWSTR lpTemplateName;
HINSTANCE hInstance;
LPWSTR lpszStyle;
WORD nFontType;
WORD ___MISSING_ALIGNMENT__;
INT nSizeMin;
INT nSizeMax;
} CHOOSEFONTW,*LPCHOOSEFONTW;
typedef CHOOSEFONTA CHOOSEFONT;
typedef LPCHOOSEFONTA LPCHOOSEFONT;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChooseFontA(LPCHOOSEFONTA);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChooseFontW(LPCHOOSEFONTW);
typedef UINT_PTR (__attribute__((__stdcall__)) *LPPRINTHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
typedef UINT_PTR (__attribute__((__stdcall__)) *LPSETUPHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
typedef struct tagPDA {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
HDC hDC;
DWORD Flags;
WORD nFromPage;
WORD nToPage;
WORD nMinPage;
WORD nMaxPage;
WORD nCopies;
HINSTANCE hInstance;
LPARAM lCustData;
LPPRINTHOOKPROC lpfnPrintHook;
LPSETUPHOOKPROC lpfnSetupHook;
LPCSTR lpPrintTemplateName;
LPCSTR lpSetupTemplateName;
HGLOBAL hPrintTemplate;
HGLOBAL hSetupTemplate;
} PRINTDLGA,*LPPRINTDLGA;
typedef struct tagPDW {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
HDC hDC;
DWORD Flags;
WORD nFromPage;
WORD nToPage;
WORD nMinPage;
WORD nMaxPage;
WORD nCopies;
HINSTANCE hInstance;
LPARAM lCustData;
LPPRINTHOOKPROC lpfnPrintHook;
LPSETUPHOOKPROC lpfnSetupHook;
LPCWSTR lpPrintTemplateName;
LPCWSTR lpSetupTemplateName;
HGLOBAL hPrintTemplate;
HGLOBAL hSetupTemplate;
} PRINTDLGW,*LPPRINTDLGW;
typedef PRINTDLGA PRINTDLG;
typedef LPPRINTDLGA LPPRINTDLG;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PrintDlgA(LPPRINTDLGA);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PrintDlgW(LPPRINTDLGW);
typedef struct IPrintDialogCallback { struct IPrintDialogCallbackVtbl *lpVtbl; } IPrintDialogCallback; typedef struct IPrintDialogCallbackVtbl IPrintDialogCallbackVtbl; struct IPrintDialogCallbackVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface) (IPrintDialogCallback *This, const IID *const riid,LPVOID *ppvObj) ;
ULONG (__attribute__((__stdcall__)) *AddRef) (IPrintDialogCallback *This) ;
ULONG (__attribute__((__stdcall__)) *Release) (IPrintDialogCallback *This) ;
HRESULT (__attribute__((__stdcall__)) *InitDone) (IPrintDialogCallback *This) ;
HRESULT (__attribute__((__stdcall__)) *SelectionChange) (IPrintDialogCallback *This) ;
HRESULT (__attribute__((__stdcall__)) *HandleMessage) (IPrintDialogCallback *This, HWND hDlg,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *pResult) ;
};
typedef struct IPrintDialogServices { struct IPrintDialogServicesVtbl *lpVtbl; } IPrintDialogServices; typedef struct IPrintDialogServicesVtbl IPrintDialogServicesVtbl; struct IPrintDialogServicesVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface) (IPrintDialogServices *This, const IID *const riid,LPVOID *ppvObj) ;
ULONG (__attribute__((__stdcall__)) *AddRef) (IPrintDialogServices *This) ;
ULONG (__attribute__((__stdcall__)) *Release) (IPrintDialogServices *This) ;
HRESULT (__attribute__((__stdcall__)) *GetCurrentDevMode) (IPrintDialogServices *This, LPDEVMODE pDevMode,UINT *pcbSize) ;
HRESULT (__attribute__((__stdcall__)) *GetCurrentPrinterName) (IPrintDialogServices *This, LPTSTR pPrinterName,UINT *pcchSize) ;
HRESULT (__attribute__((__stdcall__)) *GetCurrentPortName) (IPrintDialogServices *This, LPTSTR pPortName,UINT *pcchSize) ;
};
typedef struct tagPRINTPAGERANGE {
DWORD nFromPage;
DWORD nToPage;
} PRINTPAGERANGE,*LPPRINTPAGERANGE;
typedef struct tagPDEXA {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
HDC hDC;
DWORD Flags;
DWORD Flags2;
DWORD ExclusionFlags;
DWORD nPageRanges;
DWORD nMaxPageRanges;
LPPRINTPAGERANGE lpPageRanges;
DWORD nMinPage;
DWORD nMaxPage;
DWORD nCopies;
HINSTANCE hInstance;
LPCSTR lpPrintTemplateName;
LPUNKNOWN lpCallback;
DWORD nPropertyPages;
HPROPSHEETPAGE *lphPropertyPages;
DWORD nStartPage;
DWORD dwResultAction;
} PRINTDLGEXA,*LPPRINTDLGEXA;
typedef struct tagPDEXW {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
HDC hDC;
DWORD Flags;
DWORD Flags2;
DWORD ExclusionFlags;
DWORD nPageRanges;
DWORD nMaxPageRanges;
LPPRINTPAGERANGE lpPageRanges;
DWORD nMinPage;
DWORD nMaxPage;
DWORD nCopies;
HINSTANCE hInstance;
LPCWSTR lpPrintTemplateName;
LPUNKNOWN lpCallback;
DWORD nPropertyPages;
HPROPSHEETPAGE *lphPropertyPages;
DWORD nStartPage;
DWORD dwResultAction;
} PRINTDLGEXW,*LPPRINTDLGEXW;
typedef PRINTDLGEXA PRINTDLGEX;
typedef LPPRINTDLGEXA LPPRINTDLGEX;
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) PrintDlgExA(LPPRINTDLGEXA);
__attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) PrintDlgExW(LPPRINTDLGEXW);
typedef struct tagDEVNAMES {
WORD wDriverOffset;
WORD wDeviceOffset;
WORD wOutputOffset;
WORD wDefault;
} DEVNAMES,*LPDEVNAMES;
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) CommDlgExtendedError(void);
typedef UINT_PTR (__attribute__((__stdcall__)) *LPPAGEPAINTHOOK)(HWND,UINT,WPARAM,LPARAM);
typedef UINT_PTR (__attribute__((__stdcall__)) *LPPAGESETUPHOOK)(HWND,UINT,WPARAM,LPARAM);
typedef struct tagPSDA {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
DWORD Flags;
POINT ptPaperSize;
RECT rtMinMargin;
RECT rtMargin;
HINSTANCE hInstance;
LPARAM lCustData;
LPPAGESETUPHOOK lpfnPageSetupHook;
LPPAGEPAINTHOOK lpfnPagePaintHook;
LPCSTR lpPageSetupTemplateName;
HGLOBAL hPageSetupTemplate;
} PAGESETUPDLGA,*LPPAGESETUPDLGA;
typedef struct tagPSDW {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
DWORD Flags;
POINT ptPaperSize;
RECT rtMinMargin;
RECT rtMargin;
HINSTANCE hInstance;
LPARAM lCustData;
LPPAGESETUPHOOK lpfnPageSetupHook;
LPPAGEPAINTHOOK lpfnPagePaintHook;
LPCWSTR lpPageSetupTemplateName;
HGLOBAL hPageSetupTemplate;
} PAGESETUPDLGW,*LPPAGESETUPDLGW;
typedef PAGESETUPDLGA PAGESETUPDLG;
typedef LPPAGESETUPDLGA LPPAGESETUPDLG;
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PageSetupDlgA(LPPAGESETUPDLGA);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) PageSetupDlgW(LPPAGESETUPDLGW);
#pragma pack(pop)
PUWSTR ua_wcscpy(PUWSTR Destination,PCUWSTR Source);
typedef struct _SERVICE_DESCRIPTIONA {
LPSTR lpDescription;
} SERVICE_DESCRIPTIONA,*LPSERVICE_DESCRIPTIONA;
typedef struct _SERVICE_DESCRIPTIONW {
LPWSTR lpDescription;
} SERVICE_DESCRIPTIONW,*LPSERVICE_DESCRIPTIONW;
typedef SERVICE_DESCRIPTIONA SERVICE_DESCRIPTION;
typedef LPSERVICE_DESCRIPTIONA LPSERVICE_DESCRIPTION;
typedef enum _SC_ACTION_TYPE {
SC_ACTION_NONE = 0,SC_ACTION_RESTART = 1,SC_ACTION_REBOOT = 2,SC_ACTION_RUN_COMMAND = 3
} SC_ACTION_TYPE;
typedef struct _SC_ACTION {
SC_ACTION_TYPE Type;
DWORD Delay;
} SC_ACTION,*LPSC_ACTION;
typedef struct _SERVICE_FAILURE_ACTIONSA {
DWORD dwResetPeriod;
LPSTR lpRebootMsg;
LPSTR lpCommand;
DWORD cActions;
SC_ACTION *lpsaActions;
} SERVICE_FAILURE_ACTIONSA,*LPSERVICE_FAILURE_ACTIONSA;
typedef struct _SERVICE_FAILURE_ACTIONSW {
DWORD dwResetPeriod;
LPWSTR lpRebootMsg;
LPWSTR lpCommand;
DWORD cActions;
SC_ACTION *lpsaActions;
} SERVICE_FAILURE_ACTIONSW,*LPSERVICE_FAILURE_ACTIONSW;
typedef SERVICE_FAILURE_ACTIONSA SERVICE_FAILURE_ACTIONS;
typedef LPSERVICE_FAILURE_ACTIONSA LPSERVICE_FAILURE_ACTIONS;
struct SC_HANDLE__ { int unused; }; typedef struct SC_HANDLE__ *SC_HANDLE;
typedef SC_HANDLE *LPSC_HANDLE;
struct SERVICE_STATUS_HANDLE__ { int unused; }; typedef struct SERVICE_STATUS_HANDLE__ *SERVICE_STATUS_HANDLE;
typedef enum _SC_STATUS_TYPE {
SC_STATUS_PROCESS_INFO = 0
} SC_STATUS_TYPE;
typedef enum _SC_ENUM_TYPE {
SC_ENUM_PROCESS_INFO = 0
} SC_ENUM_TYPE;
typedef struct _SERVICE_STATUS {
DWORD dwServiceType;
DWORD dwCurrentState;
DWORD dwControlsAccepted;
DWORD dwWin32ExitCode;
DWORD dwServiceSpecificExitCode;
DWORD dwCheckPoint;
DWORD dwWaitHint;
} SERVICE_STATUS,*LPSERVICE_STATUS;
typedef struct _SERVICE_STATUS_PROCESS {
DWORD dwServiceType;
DWORD dwCurrentState;
DWORD dwControlsAccepted;
DWORD dwWin32ExitCode;
DWORD dwServiceSpecificExitCode;
DWORD dwCheckPoint;
DWORD dwWaitHint;
DWORD dwProcessId;
DWORD dwServiceFlags;
} SERVICE_STATUS_PROCESS,*LPSERVICE_STATUS_PROCESS;
typedef struct _ENUM_SERVICE_STATUSA {
LPSTR lpServiceName;
LPSTR lpDisplayName;
SERVICE_STATUS ServiceStatus;
} ENUM_SERVICE_STATUSA,*LPENUM_SERVICE_STATUSA;
typedef struct _ENUM_SERVICE_STATUSW {
LPWSTR lpServiceName;
LPWSTR lpDisplayName;
SERVICE_STATUS ServiceStatus;
} ENUM_SERVICE_STATUSW,*LPENUM_SERVICE_STATUSW;
typedef ENUM_SERVICE_STATUSA ENUM_SERVICE_STATUS;
typedef LPENUM_SERVICE_STATUSA LPENUM_SERVICE_STATUS;
typedef struct _ENUM_SERVICE_STATUS_PROCESSA {
LPSTR lpServiceName;
LPSTR lpDisplayName;
SERVICE_STATUS_PROCESS ServiceStatusProcess;
} ENUM_SERVICE_STATUS_PROCESSA,*LPENUM_SERVICE_STATUS_PROCESSA;
typedef struct _ENUM_SERVICE_STATUS_PROCESSW {
LPWSTR lpServiceName;
LPWSTR lpDisplayName;
SERVICE_STATUS_PROCESS ServiceStatusProcess;
} ENUM_SERVICE_STATUS_PROCESSW,*LPENUM_SERVICE_STATUS_PROCESSW;
typedef ENUM_SERVICE_STATUS_PROCESSA ENUM_SERVICE_STATUS_PROCESS;
typedef LPENUM_SERVICE_STATUS_PROCESSA LPENUM_SERVICE_STATUS_PROCESS;
typedef LPVOID SC_LOCK;
typedef struct _QUERY_SERVICE_LOCK_STATUSA {
DWORD fIsLocked;
LPSTR lpLockOwner;
DWORD dwLockDuration;
} QUERY_SERVICE_LOCK_STATUSA,*LPQUERY_SERVICE_LOCK_STATUSA;
typedef struct _QUERY_SERVICE_LOCK_STATUSW {
DWORD fIsLocked;
LPWSTR lpLockOwner;
DWORD dwLockDuration;
} QUERY_SERVICE_LOCK_STATUSW,*LPQUERY_SERVICE_LOCK_STATUSW;
typedef QUERY_SERVICE_LOCK_STATUSA QUERY_SERVICE_LOCK_STATUS;
typedef LPQUERY_SERVICE_LOCK_STATUSA LPQUERY_SERVICE_LOCK_STATUS;
typedef struct _QUERY_SERVICE_CONFIGA {
DWORD dwServiceType;
DWORD dwStartType;
DWORD dwErrorControl;
LPSTR lpBinaryPathName;
LPSTR lpLoadOrderGroup;
DWORD dwTagId;
LPSTR lpDependencies;
LPSTR lpServiceStartName;
LPSTR lpDisplayName;
} QUERY_SERVICE_CONFIGA,*LPQUERY_SERVICE_CONFIGA;
typedef struct _QUERY_SERVICE_CONFIGW {
DWORD dwServiceType;
DWORD dwStartType;
DWORD dwErrorControl;
LPWSTR lpBinaryPathName;
LPWSTR lpLoadOrderGroup;
DWORD dwTagId;
LPWSTR lpDependencies;
LPWSTR lpServiceStartName;
LPWSTR lpDisplayName;
} QUERY_SERVICE_CONFIGW,*LPQUERY_SERVICE_CONFIGW;
typedef QUERY_SERVICE_CONFIGA QUERY_SERVICE_CONFIG;
typedef LPQUERY_SERVICE_CONFIGA LPQUERY_SERVICE_CONFIG;
typedef void (__attribute__((__stdcall__)) *LPSERVICE_MAIN_FUNCTIONW)(DWORD dwNumServicesArgs,LPWSTR *lpServiceArgVectors);
typedef void (__attribute__((__stdcall__)) *LPSERVICE_MAIN_FUNCTIONA)(DWORD dwNumServicesArgs,LPSTR *lpServiceArgVectors);
typedef struct _SERVICE_TABLE_ENTRYA {
LPSTR lpServiceName;
LPSERVICE_MAIN_FUNCTIONA lpServiceProc;
} SERVICE_TABLE_ENTRYA,*LPSERVICE_TABLE_ENTRYA;
typedef struct _SERVICE_TABLE_ENTRYW {
LPWSTR lpServiceName;
LPSERVICE_MAIN_FUNCTIONW lpServiceProc;
} SERVICE_TABLE_ENTRYW,*LPSERVICE_TABLE_ENTRYW;
typedef SERVICE_TABLE_ENTRYA SERVICE_TABLE_ENTRY;
typedef LPSERVICE_TABLE_ENTRYA LPSERVICE_TABLE_ENTRY;
typedef void (__attribute__((__stdcall__)) *LPHANDLER_FUNCTION)(DWORD dwControl);
typedef DWORD (__attribute__((__stdcall__)) *LPHANDLER_FUNCTION_EX)(DWORD dwControl,DWORD dwEventType,LPVOID lpEventData,LPVOID lpContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChangeServiceConfigA(SC_HANDLE hService,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCSTR lpBinaryPathName,LPCSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCSTR lpDependencies,LPCSTR lpServiceStartName,LPCSTR lpPassword,LPCSTR lpDisplayName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChangeServiceConfigW(SC_HANDLE hService,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCWSTR lpBinaryPathName,LPCWSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCWSTR lpDependencies,LPCWSTR lpServiceStartName,LPCWSTR lpPassword,LPCWSTR lpDisplayName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChangeServiceConfig2A(SC_HANDLE hService,DWORD dwInfoLevel,LPVOID lpInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ChangeServiceConfig2W(SC_HANDLE hService,DWORD dwInfoLevel,LPVOID lpInfo);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CloseServiceHandle(SC_HANDLE hSCObject);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ControlService(SC_HANDLE hService,DWORD dwControl,LPSERVICE_STATUS lpServiceStatus);
__attribute__((dllimport)) SC_HANDLE __attribute__((__stdcall__)) CreateServiceA(SC_HANDLE hSCManager,LPCSTR lpServiceName,LPCSTR lpDisplayName,DWORD dwDesiredAccess,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCSTR lpBinaryPathName,LPCSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCSTR lpDependencies,LPCSTR lpServiceStartName,LPCSTR lpPassword);
__attribute__((dllimport)) SC_HANDLE __attribute__((__stdcall__)) CreateServiceW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,LPCWSTR lpDisplayName,DWORD dwDesiredAccess,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCWSTR lpBinaryPathName,LPCWSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCWSTR lpDependencies,LPCWSTR lpServiceStartName,LPCWSTR lpPassword);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteService(SC_HANDLE hService);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDependentServicesA(SC_HANDLE hService,DWORD dwServiceState,LPENUM_SERVICE_STATUSA lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumDependentServicesW(SC_HANDLE hService,DWORD dwServiceState,LPENUM_SERVICE_STATUSW lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumServicesStatusA(SC_HANDLE hSCManager,DWORD dwServiceType,DWORD dwServiceState,LPENUM_SERVICE_STATUSA lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumServicesStatusW(SC_HANDLE hSCManager,DWORD dwServiceType,DWORD dwServiceState,LPENUM_SERVICE_STATUSW lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumServicesStatusExA(SC_HANDLE hSCManager,SC_ENUM_TYPE InfoLevel,DWORD dwServiceType,DWORD dwServiceState,LPBYTE lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle,LPCSTR pszGroupName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) EnumServicesStatusExW(SC_HANDLE hSCManager,SC_ENUM_TYPE InfoLevel,DWORD dwServiceType,DWORD dwServiceState,LPBYTE lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle,LPCWSTR pszGroupName);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetServiceKeyNameA(SC_HANDLE hSCManager,LPCSTR lpDisplayName,LPSTR lpServiceName,LPDWORD lpcchBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetServiceKeyNameW(SC_HANDLE hSCManager,LPCWSTR lpDisplayName,LPWSTR lpServiceName,LPDWORD lpcchBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetServiceDisplayNameA(SC_HANDLE hSCManager,LPCSTR lpServiceName,LPSTR lpDisplayName,LPDWORD lpcchBuffer);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetServiceDisplayNameW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,LPWSTR lpDisplayName,LPDWORD lpcchBuffer);
__attribute__((dllimport)) SC_LOCK __attribute__((__stdcall__)) LockServiceDatabase(SC_HANDLE hSCManager);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) NotifyBootConfigStatus(WINBOOL BootAcceptable);
__attribute__((dllimport)) SC_HANDLE __attribute__((__stdcall__)) OpenSCManagerA(LPCSTR lpMachineName,LPCSTR lpDatabaseName,DWORD dwDesiredAccess);
__attribute__((dllimport)) SC_HANDLE __attribute__((__stdcall__)) OpenSCManagerW(LPCWSTR lpMachineName,LPCWSTR lpDatabaseName,DWORD dwDesiredAccess);
__attribute__((dllimport)) SC_HANDLE __attribute__((__stdcall__)) OpenServiceA(SC_HANDLE hSCManager,LPCSTR lpServiceName,DWORD dwDesiredAccess);
__attribute__((dllimport)) SC_HANDLE __attribute__((__stdcall__)) OpenServiceW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,DWORD dwDesiredAccess);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceConfigA(SC_HANDLE hService,LPQUERY_SERVICE_CONFIGA lpServiceConfig,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceConfigW(SC_HANDLE hService,LPQUERY_SERVICE_CONFIGW lpServiceConfig,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceConfig2A(SC_HANDLE hService,DWORD dwInfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceConfig2W(SC_HANDLE hService,DWORD dwInfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceLockStatusA(SC_HANDLE hSCManager,LPQUERY_SERVICE_LOCK_STATUSA lpLockStatus,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceLockStatusW(SC_HANDLE hSCManager,LPQUERY_SERVICE_LOCK_STATUSW lpLockStatus,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceObjectSecurity(SC_HANDLE hService,SECURITY_INFORMATION dwSecurityInformation,PSECURITY_DESCRIPTOR lpSecurityDescriptor,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceStatus(SC_HANDLE hService,LPSERVICE_STATUS lpServiceStatus);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) QueryServiceStatusEx(SC_HANDLE hService,SC_STATUS_TYPE InfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
__attribute__((dllimport)) SERVICE_STATUS_HANDLE __attribute__((__stdcall__)) RegisterServiceCtrlHandlerA(LPCSTR lpServiceName,LPHANDLER_FUNCTION lpHandlerProc);
__attribute__((dllimport)) SERVICE_STATUS_HANDLE __attribute__((__stdcall__)) RegisterServiceCtrlHandlerW(LPCWSTR lpServiceName,LPHANDLER_FUNCTION lpHandlerProc);
__attribute__((dllimport)) SERVICE_STATUS_HANDLE __attribute__((__stdcall__)) RegisterServiceCtrlHandlerExA(LPCSTR lpServiceName,LPHANDLER_FUNCTION_EX lpHandlerProc,LPVOID lpContext);
__attribute__((dllimport)) SERVICE_STATUS_HANDLE __attribute__((__stdcall__)) RegisterServiceCtrlHandlerExW(LPCWSTR lpServiceName,LPHANDLER_FUNCTION_EX lpHandlerProc,LPVOID lpContext);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetServiceObjectSecurity(SC_HANDLE hService,SECURITY_INFORMATION dwSecurityInformation,PSECURITY_DESCRIPTOR lpSecurityDescriptor);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetServiceStatus(SERVICE_STATUS_HANDLE hServiceStatus,LPSERVICE_STATUS lpServiceStatus);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) StartServiceCtrlDispatcherA(const SERVICE_TABLE_ENTRYA *lpServiceStartTable);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) StartServiceCtrlDispatcherW(const SERVICE_TABLE_ENTRYW *lpServiceStartTable);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) StartServiceA(SC_HANDLE hService,DWORD dwNumServiceArgs,LPCSTR *lpServiceArgVectors);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) StartServiceW(SC_HANDLE hService,DWORD dwNumServiceArgs,LPCWSTR *lpServiceArgVectors);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnlockServiceDatabase(SC_LOCK ScLock);
typedef struct _MODEMDEVCAPS {
DWORD dwActualSize;
DWORD dwRequiredSize;
DWORD dwDevSpecificOffset;
DWORD dwDevSpecificSize;
DWORD dwModemProviderVersion;
DWORD dwModemManufacturerOffset;
DWORD dwModemManufacturerSize;
DWORD dwModemModelOffset;
DWORD dwModemModelSize;
DWORD dwModemVersionOffset;
DWORD dwModemVersionSize;
DWORD dwDialOptions;
DWORD dwCallSetupFailTimer;
DWORD dwInactivityTimeout;
DWORD dwSpeakerVolume;
DWORD dwSpeakerMode;
DWORD dwModemOptions;
DWORD dwMaxDTERate;
DWORD dwMaxDCERate;
BYTE abVariablePortion[1];
} MODEMDEVCAPS,*PMODEMDEVCAPS,*LPMODEMDEVCAPS;
typedef struct _MODEMSETTINGS {
DWORD dwActualSize;
DWORD dwRequiredSize;
DWORD dwDevSpecificOffset;
DWORD dwDevSpecificSize;
DWORD dwCallSetupFailTimer;
DWORD dwInactivityTimeout;
DWORD dwSpeakerVolume;
DWORD dwSpeakerMode;
DWORD dwPreferredModemOptions;
DWORD dwNegotiatedModemOptions;
DWORD dwNegotiatedDCERate;
BYTE abVariablePortion [1];
} MODEMSETTINGS,*PMODEMSETTINGS,*LPMODEMSETTINGS;
struct HIMC__ { int unused; }; typedef struct HIMC__ *HIMC;
struct HIMCC__ { int unused; }; typedef struct HIMCC__ *HIMCC;
typedef HKL *LPHKL;
typedef struct tagCOMPOSITIONFORM {
DWORD dwStyle;
POINT ptCurrentPos;
RECT rcArea;
} COMPOSITIONFORM,*PCOMPOSITIONFORM,*NPCOMPOSITIONFORM,*LPCOMPOSITIONFORM;
typedef struct tagCANDIDATEFORM {
DWORD dwIndex;
DWORD dwStyle;
POINT ptCurrentPos;
RECT rcArea;
} CANDIDATEFORM,*PCANDIDATEFORM,*NPCANDIDATEFORM,*LPCANDIDATEFORM;
typedef struct tagCANDIDATELIST {
DWORD dwSize;
DWORD dwStyle;
DWORD dwCount;
DWORD dwSelection;
DWORD dwPageStart;
DWORD dwPageSize;
DWORD dwOffset[1];
} CANDIDATELIST,*PCANDIDATELIST,*NPCANDIDATELIST,*LPCANDIDATELIST;
typedef struct tagREGISTERWORDA {
LPSTR lpReading;
LPSTR lpWord;
} REGISTERWORDA,*PREGISTERWORDA,*NPREGISTERWORDA,*LPREGISTERWORDA;
typedef struct tagREGISTERWORDW {
LPWSTR lpReading;
LPWSTR lpWord;
} REGISTERWORDW,*PREGISTERWORDW,*NPREGISTERWORDW,*LPREGISTERWORDW;
typedef REGISTERWORDA REGISTERWORD;
typedef PREGISTERWORDA PREGISTERWORD;
typedef NPREGISTERWORDA NPREGISTERWORD;
typedef LPREGISTERWORDA LPREGISTERWORD;
typedef struct tagRECONVERTSTRING {
DWORD dwSize;
DWORD dwVersion;
DWORD dwStrLen;
DWORD dwStrOffset;
DWORD dwCompStrLen;
DWORD dwCompStrOffset;
DWORD dwTargetStrLen;
DWORD dwTargetStrOffset;
} RECONVERTSTRING,*PRECONVERTSTRING,*NPRECONVERTSTRING,*LPRECONVERTSTRING;
typedef struct tagSTYLEBUFA {
DWORD dwStyle;
CHAR szDescription[32];
} STYLEBUFA,*PSTYLEBUFA,*NPSTYLEBUFA,*LPSTYLEBUFA;
typedef struct tagSTYLEBUFW {
DWORD dwStyle;
WCHAR szDescription[32];
} STYLEBUFW,*PSTYLEBUFW,*NPSTYLEBUFW,*LPSTYLEBUFW;
typedef STYLEBUFA STYLEBUF;
typedef PSTYLEBUFA PSTYLEBUF;
typedef NPSTYLEBUFA NPSTYLEBUF;
typedef LPSTYLEBUFA LPSTYLEBUF;
typedef struct tagIMEMENUITEMINFOA {
UINT cbSize;
UINT fType;
UINT fState;
UINT wID;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
DWORD dwItemData;
CHAR szString[80];
HBITMAP hbmpItem;
} IMEMENUITEMINFOA,*PIMEMENUITEMINFOA,*NPIMEMENUITEMINFOA,*LPIMEMENUITEMINFOA;
typedef struct tagIMEMENUITEMINFOW {
UINT cbSize;
UINT fType;
UINT fState;
UINT wID;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
DWORD dwItemData;
WCHAR szString[80];
HBITMAP hbmpItem;
} IMEMENUITEMINFOW,*PIMEMENUITEMINFOW,*NPIMEMENUITEMINFOW,*LPIMEMENUITEMINFOW;
typedef IMEMENUITEMINFOA IMEMENUITEMINFO;
typedef PIMEMENUITEMINFOA PIMEMENUITEMINFO;
typedef NPIMEMENUITEMINFOA NPIMEMENUITEMINFO;
typedef LPIMEMENUITEMINFOA LPIMEMENUITEMINFO;
typedef struct tagIMECHARPOSITION {
DWORD dwSize;
DWORD dwCharPos;
POINT pt;
UINT cLineHeight;
RECT rcDocument;
} IMECHARPOSITION,*PIMECHARPOSITION,*NPIMECHARPOSITION,*LPIMECHARPOSITION;
typedef WINBOOL (__attribute__((__stdcall__)) *IMCENUMPROC)(HIMC,LPARAM);
HKL __attribute__((__stdcall__)) ImmInstallIMEA(LPCSTR lpszIMEFileName,LPCSTR lpszLayoutText);
HKL __attribute__((__stdcall__)) ImmInstallIMEW(LPCWSTR lpszIMEFileName,LPCWSTR lpszLayoutText);
HWND __attribute__((__stdcall__)) ImmGetDefaultIMEWnd(HWND);
UINT __attribute__((__stdcall__)) ImmGetDescriptionA(HKL,LPSTR,UINT uBufLen);
UINT __attribute__((__stdcall__)) ImmGetDescriptionW(HKL,LPWSTR,UINT uBufLen);
UINT __attribute__((__stdcall__)) ImmGetIMEFileNameA(HKL,LPSTR,UINT uBufLen);
UINT __attribute__((__stdcall__)) ImmGetIMEFileNameW(HKL,LPWSTR,UINT uBufLen);
DWORD __attribute__((__stdcall__)) ImmGetProperty(HKL,DWORD);
WINBOOL __attribute__((__stdcall__)) ImmIsIME(HKL);
WINBOOL __attribute__((__stdcall__)) ImmSimulateHotKey(HWND,DWORD);
HIMC __attribute__((__stdcall__)) ImmCreateContext(void);
WINBOOL __attribute__((__stdcall__)) ImmDestroyContext(HIMC);
HIMC __attribute__((__stdcall__)) ImmGetContext(HWND);
WINBOOL __attribute__((__stdcall__)) ImmReleaseContext(HWND,HIMC);
HIMC __attribute__((__stdcall__)) ImmAssociateContext(HWND,HIMC);
WINBOOL __attribute__((__stdcall__)) ImmAssociateContextEx(HWND,HIMC,DWORD);
LONG __attribute__((__stdcall__)) ImmGetCompositionStringA(HIMC,DWORD,LPVOID,DWORD);
LONG __attribute__((__stdcall__)) ImmGetCompositionStringW(HIMC,DWORD,LPVOID,DWORD);
WINBOOL __attribute__((__stdcall__)) ImmSetCompositionStringA(HIMC,DWORD dwIndex,LPVOID lpComp,DWORD,LPVOID lpRead,DWORD);
WINBOOL __attribute__((__stdcall__)) ImmSetCompositionStringW(HIMC,DWORD dwIndex,LPVOID lpComp,DWORD,LPVOID lpRead,DWORD);
DWORD __attribute__((__stdcall__)) ImmGetCandidateListCountA(HIMC,LPDWORD lpdwListCount);
DWORD __attribute__((__stdcall__)) ImmGetCandidateListCountW(HIMC,LPDWORD lpdwListCount);
DWORD __attribute__((__stdcall__)) ImmGetCandidateListA(HIMC,DWORD deIndex,LPCANDIDATELIST,DWORD dwBufLen);
DWORD __attribute__((__stdcall__)) ImmGetCandidateListW(HIMC,DWORD deIndex,LPCANDIDATELIST,DWORD dwBufLen);
DWORD __attribute__((__stdcall__)) ImmGetGuideLineA(HIMC,DWORD dwIndex,LPSTR,DWORD dwBufLen);
DWORD __attribute__((__stdcall__)) ImmGetGuideLineW(HIMC,DWORD dwIndex,LPWSTR,DWORD dwBufLen);
WINBOOL __attribute__((__stdcall__)) ImmGetConversionStatus(HIMC,LPDWORD,LPDWORD);
WINBOOL __attribute__((__stdcall__)) ImmSetConversionStatus(HIMC,DWORD,DWORD);
WINBOOL __attribute__((__stdcall__)) ImmGetOpenStatus(HIMC);
WINBOOL __attribute__((__stdcall__)) ImmSetOpenStatus(HIMC,WINBOOL);
WINBOOL __attribute__((__stdcall__)) ImmGetCompositionFontA(HIMC,LPLOGFONTA);
WINBOOL __attribute__((__stdcall__)) ImmGetCompositionFontW(HIMC,LPLOGFONTW);
WINBOOL __attribute__((__stdcall__)) ImmSetCompositionFontA(HIMC,LPLOGFONTA);
WINBOOL __attribute__((__stdcall__)) ImmSetCompositionFontW(HIMC,LPLOGFONTW);
typedef int (__attribute__((__stdcall__)) *REGISTERWORDENUMPROCA)(LPCSTR,DWORD,LPCSTR,LPVOID);
typedef int (__attribute__((__stdcall__)) *REGISTERWORDENUMPROCW)(LPCWSTR,DWORD,LPCWSTR,LPVOID);
WINBOOL __attribute__((__stdcall__)) ImmConfigureIMEA(HKL,HWND,DWORD,LPVOID);
WINBOOL __attribute__((__stdcall__)) ImmConfigureIMEW(HKL,HWND,DWORD,LPVOID);
LRESULT __attribute__((__stdcall__)) ImmEscapeA(HKL,HIMC,UINT,LPVOID);
LRESULT __attribute__((__stdcall__)) ImmEscapeW(HKL,HIMC,UINT,LPVOID);
DWORD __attribute__((__stdcall__)) ImmGetConversionListA(HKL,HIMC,LPCSTR,LPCANDIDATELIST,DWORD dwBufLen,UINT uFlag);
DWORD __attribute__((__stdcall__)) ImmGetConversionListW(HKL,HIMC,LPCWSTR,LPCANDIDATELIST,DWORD dwBufLen,UINT uFlag);
WINBOOL __attribute__((__stdcall__)) ImmNotifyIME(HIMC,DWORD dwAction,DWORD dwIndex,DWORD dwValue);
WINBOOL __attribute__((__stdcall__)) ImmGetStatusWindowPos(HIMC,LPPOINT);
WINBOOL __attribute__((__stdcall__)) ImmSetStatusWindowPos(HIMC,LPPOINT);
WINBOOL __attribute__((__stdcall__)) ImmGetCompositionWindow(HIMC,LPCOMPOSITIONFORM);
WINBOOL __attribute__((__stdcall__)) ImmSetCompositionWindow(HIMC,LPCOMPOSITIONFORM);
WINBOOL __attribute__((__stdcall__)) ImmGetCandidateWindow(HIMC,DWORD,LPCANDIDATEFORM);
WINBOOL __attribute__((__stdcall__)) ImmSetCandidateWindow(HIMC,LPCANDIDATEFORM);
WINBOOL __attribute__((__stdcall__)) ImmIsUIMessageA(HWND,UINT,WPARAM,LPARAM);
WINBOOL __attribute__((__stdcall__)) ImmIsUIMessageW(HWND,UINT,WPARAM,LPARAM);
UINT __attribute__((__stdcall__)) ImmGetVirtualKey(HWND);
WINBOOL __attribute__((__stdcall__)) ImmRegisterWordA(HKL,LPCSTR lpszReading,DWORD,LPCSTR lpszRegister);
WINBOOL __attribute__((__stdcall__)) ImmRegisterWordW(HKL,LPCWSTR lpszReading,DWORD,LPCWSTR lpszRegister);
WINBOOL __attribute__((__stdcall__)) ImmUnregisterWordA(HKL,LPCSTR lpszReading,DWORD,LPCSTR lpszUnregister);
WINBOOL __attribute__((__stdcall__)) ImmUnregisterWordW(HKL,LPCWSTR lpszReading,DWORD,LPCWSTR lpszUnregister);
UINT __attribute__((__stdcall__)) ImmGetRegisterWordStyleA(HKL,UINT nItem,LPSTYLEBUFA);
UINT __attribute__((__stdcall__)) ImmGetRegisterWordStyleW(HKL,UINT nItem,LPSTYLEBUFW);
UINT __attribute__((__stdcall__)) ImmEnumRegisterWordA(HKL,REGISTERWORDENUMPROCA,LPCSTR lpszReading,DWORD,LPCSTR lpszRegister,LPVOID);
UINT __attribute__((__stdcall__)) ImmEnumRegisterWordW(HKL,REGISTERWORDENUMPROCW,LPCWSTR lpszReading,DWORD,LPCWSTR lpszRegister,LPVOID);
WINBOOL __attribute__((__stdcall__)) ImmDisableIME(DWORD);
WINBOOL __attribute__((__stdcall__)) ImmEnumInputContext(DWORD idThread,IMCENUMPROC lpfn,LPARAM lParam);
DWORD __attribute__((__stdcall__)) ImmGetImeMenuItemsA(HIMC,DWORD,DWORD,LPIMEMENUITEMINFOA,LPIMEMENUITEMINFOA,DWORD);
DWORD __attribute__((__stdcall__)) ImmGetImeMenuItemsW(HIMC,DWORD,DWORD,LPIMEMENUITEMINFOW,LPIMEMENUITEMINFOW,DWORD);
WINBOOL __attribute__((__stdcall__)) ImmDisableTextFrameService(DWORD idThread);
struct timeval
{
long tv_sec;
long tv_usec;
};
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
__extension__
typedef unsigned long long u_int64;
typedef struct in_addr {
union {
struct { u_char s_b1, s_b2, s_b3, s_b4; } S_un_b;
struct { u_short s_w1, s_w2; } S_un_w;
u_long S_addr;
} S_un;
} IN_ADDR, *PIN_ADDR, *LPIN_ADDR;
typedef UINT_PTR SOCKET;
typedef struct fd_set
{
u_int fd_count;
SOCKET fd_array[64];
} fd_set;
int __attribute__((__stdcall__)) __WSAFDIsSet(SOCKET,fd_set *);
typedef struct fd_set FD_SET;
typedef struct fd_set *PFD_SET;
typedef struct fd_set *LPFD_SET;
struct hostent {
char *h_name;
char **h_aliases;
short h_addrtype;
short h_length;
char **h_addr_list;
};
struct netent {
char *n_name;
char **n_aliases;
short n_addrtype;
u_long n_net;
};
struct servent {
char *s_name;
char **s_aliases;
short s_port;
char *s_proto;
};
struct protoent {
char *p_name;
char **p_aliases;
short p_proto;
};
struct sockproto {
u_short sp_family;
u_short sp_protocol;
};
struct linger {
u_short l_onoff;
u_short l_linger;
};
struct sockaddr {
u_short sa_family;
char sa_data[14];
};
struct sockaddr_in {
short sin_family;
u_short sin_port;
struct in_addr sin_addr;
char sin_zero[8];
};
typedef struct hostent HOSTENT;
typedef struct hostent *PHOSTENT;
typedef struct hostent *LPHOSTENT;
typedef struct servent SERVENT;
typedef struct servent *PSERVENT;
typedef struct servent *LPSERVENT;
typedef struct protoent PROTOENT;
typedef struct protoent *PPROTOENT;
typedef struct protoent *LPPROTOENT;
typedef struct sockaddr SOCKADDR;
typedef struct sockaddr *PSOCKADDR;
typedef struct sockaddr *LPSOCKADDR;
typedef struct sockaddr_in SOCKADDR_IN;
typedef struct sockaddr_in *PSOCKADDR_IN;
typedef struct sockaddr_in *LPSOCKADDR_IN;
typedef struct linger LINGER;
typedef struct linger *PLINGER;
typedef struct linger *LPLINGER;
typedef struct timeval TIMEVAL;
typedef struct timeval *PTIMEVAL;
typedef struct timeval *LPTIMEVAL;
typedef struct WSAData {
WORD wVersion;
WORD wHighVersion;
char szDescription[256 +1];
char szSystemStatus[128 +1];
unsigned short iMaxSockets;
unsigned short iMaxUdpDg;
char *lpVendorInfo;
} WSADATA, *LPWSADATA;
typedef enum _SCOPE_LEVEL {
ScopeLevelInterface = 1,
ScopeLevelLink = 2,
ScopeLevelSubnet = 3,
ScopeLevelAdmin = 4,
ScopeLevelSite = 5,
ScopeLevelOrganization = 8,
ScopeLevelGlobal = 14,
ScopeLevelCount = 16
} SCOPE_LEVEL;
typedef struct _SCOPE_ID {
__extension__ union {
__extension__ struct {
ULONG Zone : 28;
ULONG Level : 4;
};
ULONG Value;
};
} SCOPE_ID, *PSCOPE_ID;
struct sockaddr_storage {
short ss_family;
char __ss_pad1[((8) - sizeof (short))];
__extension__ long long __ss_align;
char __ss_pad2[(128 - (sizeof (short) + ((8) - sizeof (short)) + (8)))];
};
typedef struct _OVERLAPPED *LPWSAOVERLAPPED;
typedef struct _WSABUF {
u_long len;
char *buf;
} WSABUF,*LPWSABUF;
typedef ULONG SERVICETYPE;
typedef struct _flowspec {
ULONG TokenRate;
ULONG TokenBucketSize;
ULONG PeakBandwidth;
ULONG Latency;
ULONG DelayVariation;
SERVICETYPE ServiceType;
ULONG MaxSduSize;
ULONG MinimumPolicedSize;
} FLOWSPEC,*PFLOWSPEC,*LPFLOWSPEC;
typedef struct _QOS_OBJECT_HDR {
ULONG ObjectType;
ULONG ObjectLength;
} QOS_OBJECT_HDR, *LPQOS_OBJECT_HDR;
typedef struct _QOS_SD_MODE {
QOS_OBJECT_HDR ObjectHdr;
ULONG ShapeDiscardMode;
} QOS_SD_MODE, *LPQOS_SD_MODE;
typedef struct _QOS_SHAPING_RATE {
QOS_OBJECT_HDR ObjectHdr;
ULONG ShapingRate;
} QOS_SHAPING_RATE, *LPQOS_SHAPING_RATE;
typedef struct _QualityOfService {
FLOWSPEC SendingFlowspec;
FLOWSPEC ReceivingFlowspec;
WSABUF ProviderSpecific;
} QOS,*LPQOS;
typedef unsigned int GROUP;
typedef struct _WSANETWORKEVENTS {
long lNetworkEvents;
int iErrorCode[10];
} WSANETWORKEVENTS,*LPWSANETWORKEVENTS;
typedef struct _WSAPROTOCOLCHAIN {
int ChainLen;
DWORD ChainEntries[7];
} WSAPROTOCOLCHAIN,*LPWSAPROTOCOLCHAIN;
typedef struct _WSAPROTOCOL_INFOA {
DWORD dwServiceFlags1;
DWORD dwServiceFlags2;
DWORD dwServiceFlags3;
DWORD dwServiceFlags4;
DWORD dwProviderFlags;
GUID ProviderId;
DWORD dwCatalogEntryId;
WSAPROTOCOLCHAIN ProtocolChain;
int iVersion;
int iAddressFamily;
int iMaxSockAddr;
int iMinSockAddr;
int iSocketType;
int iProtocol;
int iProtocolMaxOffset;
int iNetworkByteOrder;
int iSecurityScheme;
DWORD dwMessageSize;
DWORD dwProviderReserved;
CHAR szProtocol[255 +1];
} WSAPROTOCOL_INFOA,*LPWSAPROTOCOL_INFOA;
typedef struct _WSAPROTOCOL_INFOW {
DWORD dwServiceFlags1;
DWORD dwServiceFlags2;
DWORD dwServiceFlags3;
DWORD dwServiceFlags4;
DWORD dwProviderFlags;
GUID ProviderId;
DWORD dwCatalogEntryId;
WSAPROTOCOLCHAIN ProtocolChain;
int iVersion;
int iAddressFamily;
int iMaxSockAddr;
int iMinSockAddr;
int iSocketType;
int iProtocol;
int iProtocolMaxOffset;
int iNetworkByteOrder;
int iSecurityScheme;
DWORD dwMessageSize;
DWORD dwProviderReserved;
WCHAR szProtocol[255 +1];
} WSAPROTOCOL_INFOW,*LPWSAPROTOCOL_INFOW;
typedef WSAPROTOCOL_INFOA WSAPROTOCOL_INFO;
typedef LPWSAPROTOCOL_INFOA LPWSAPROTOCOL_INFO;
typedef int (__attribute__((__stdcall__)) *LPCONDITIONPROC)(LPWSABUF lpCallerId,LPWSABUF lpCallerData,LPQOS lpSQOS,LPQOS lpGQOS,LPWSABUF lpCalleeId,LPWSABUF lpCalleeData,GROUP *g,DWORD_PTR dwCallbackData);
typedef void (__attribute__((__stdcall__)) *LPWSAOVERLAPPED_COMPLETION_ROUTINE)(DWORD dwError,DWORD cbTransferred,LPWSAOVERLAPPED lpOverlapped,DWORD dwFlags);
typedef enum _WSACOMPLETIONTYPE {
NSP_NOTIFY_IMMEDIATELY = 0,
NSP_NOTIFY_HWND,
NSP_NOTIFY_EVENT,
NSP_NOTIFY_PORT,
NSP_NOTIFY_APC
} WSACOMPLETIONTYPE,*PWSACOMPLETIONTYPE,*LPWSACOMPLETIONTYPE;
typedef struct _WSACOMPLETION {
WSACOMPLETIONTYPE Type;
union {
struct {
HWND hWnd;
UINT uMsg;
WPARAM context;
} WindowMessage;
struct {
LPWSAOVERLAPPED lpOverlapped;
} Event;
struct {
LPWSAOVERLAPPED lpOverlapped;
LPWSAOVERLAPPED_COMPLETION_ROUTINE lpfnCompletionProc;
} Apc;
struct {
LPWSAOVERLAPPED lpOverlapped;
HANDLE hPort;
ULONG_PTR Key;
} Port;
} Parameters;
} WSACOMPLETION,*PWSACOMPLETION,*LPWSACOMPLETION;
typedef struct sockaddr_storage SOCKADDR_STORAGE;
typedef struct sockaddr_storage *PSOCKADDR_STORAGE;
typedef struct sockaddr_storage *LPSOCKADDR_STORAGE;
typedef u_short ADDRESS_FAMILY;
typedef struct _SOCKET_ADDRESS {
LPSOCKADDR lpSockaddr;
INT iSockaddrLength;
} SOCKET_ADDRESS,*PSOCKET_ADDRESS,*LPSOCKET_ADDRESS;
typedef struct _CSADDR_INFO {
SOCKET_ADDRESS LocalAddr;
SOCKET_ADDRESS RemoteAddr;
INT iSocketType;
INT iProtocol;
} CSADDR_INFO,*PCSADDR_INFO,*LPCSADDR_INFO;
typedef struct _SOCKET_ADDRESS_LIST {
INT iAddressCount;
SOCKET_ADDRESS Address[1];
} SOCKET_ADDRESS_LIST,*PSOCKET_ADDRESS_LIST,*LPSOCKET_ADDRESS_LIST;
typedef struct _AFPROTOCOLS {
INT iAddressFamily;
INT iProtocol;
} AFPROTOCOLS,*PAFPROTOCOLS,*LPAFPROTOCOLS;
typedef enum _WSAEcomparator {
COMP_EQUAL = 0,
COMP_NOTLESS
} WSAECOMPARATOR,*PWSAECOMPARATOR,*LPWSAECOMPARATOR;
typedef struct _WSAVersion {
DWORD dwVersion;
WSAECOMPARATOR ecHow;
} WSAVERSION,*PWSAVERSION,*LPWSAVERSION;
typedef struct _WSAQuerySetA {
DWORD dwSize;
LPSTR lpszServiceInstanceName;
LPGUID lpServiceClassId;
LPWSAVERSION lpVersion;
LPSTR lpszComment;
DWORD dwNameSpace;
LPGUID lpNSProviderId;
LPSTR lpszContext;
DWORD dwNumberOfProtocols;
LPAFPROTOCOLS lpafpProtocols;
LPSTR lpszQueryString;
DWORD dwNumberOfCsAddrs;
LPCSADDR_INFO lpcsaBuffer;
DWORD dwOutputFlags;
LPBLOB lpBlob;
} WSAQUERYSETA,*PWSAQUERYSETA,*LPWSAQUERYSETA;
typedef struct _WSAQuerySetW {
DWORD dwSize;
LPWSTR lpszServiceInstanceName;
LPGUID lpServiceClassId;
LPWSAVERSION lpVersion;
LPWSTR lpszComment;
DWORD dwNameSpace;
LPGUID lpNSProviderId;
LPWSTR lpszContext;
DWORD dwNumberOfProtocols;
LPAFPROTOCOLS lpafpProtocols;
LPWSTR lpszQueryString;
DWORD dwNumberOfCsAddrs;
LPCSADDR_INFO lpcsaBuffer;
DWORD dwOutputFlags;
LPBLOB lpBlob;
} WSAQUERYSETW,*PWSAQUERYSETW,*LPWSAQUERYSETW;
typedef WSAQUERYSETA WSAQUERYSET;
typedef PWSAQUERYSETA PWSAQUERYSET;
typedef LPWSAQUERYSETA LPWSAQUERYSET;
typedef enum _WSAESETSERVICEOP {
RNRSERVICE_REGISTER = 0,
RNRSERVICE_DEREGISTER,
RNRSERVICE_DELETE
} WSAESETSERVICEOP,*PWSAESETSERVICEOP,*LPWSAESETSERVICEOP;
typedef struct _WSANSClassInfoA {
LPSTR lpszName;
DWORD dwNameSpace;
DWORD dwValueType;
DWORD dwValueSize;
LPVOID lpValue;
} WSANSCLASSINFOA,*PWSANSCLASSINFOA,*LPWSANSCLASSINFOA;
typedef struct _WSANSClassInfoW {
LPWSTR lpszName;
DWORD dwNameSpace;
DWORD dwValueType;
DWORD dwValueSize;
LPVOID lpValue;
} WSANSCLASSINFOW,*PWSANSCLASSINFOW,*LPWSANSCLASSINFOW;
typedef WSANSCLASSINFOA WSANSCLASSINFO;
typedef PWSANSCLASSINFOA PWSANSCLASSINFO;
typedef LPWSANSCLASSINFOA LPWSANSCLASSINFO;
typedef struct _WSAServiceClassInfoA {
LPGUID lpServiceClassId;
LPSTR lpszServiceClassName;
DWORD dwCount;
LPWSANSCLASSINFOA lpClassInfos;
} WSASERVICECLASSINFOA,*PWSASERVICECLASSINFOA,*LPWSASERVICECLASSINFOA;
typedef struct _WSAServiceClassInfoW {
LPGUID lpServiceClassId;
LPWSTR lpszServiceClassName;
DWORD dwCount;
LPWSANSCLASSINFOW lpClassInfos;
} WSASERVICECLASSINFOW,*PWSASERVICECLASSINFOW,*LPWSASERVICECLASSINFOW;
typedef WSASERVICECLASSINFOA WSASERVICECLASSINFO;
typedef PWSASERVICECLASSINFOA PWSASERVICECLASSINFO;
typedef LPWSASERVICECLASSINFOA LPWSASERVICECLASSINFO;
typedef struct _WSANAMESPACE_INFOA {
GUID NSProviderId;
DWORD dwNameSpace;
WINBOOL fActive;
DWORD dwVersion;
LPSTR lpszIdentifier;
} WSANAMESPACE_INFOA,*PWSANAMESPACE_INFOA,*LPWSANAMESPACE_INFOA;
typedef struct _WSANAMESPACE_INFOW {
GUID NSProviderId;
DWORD dwNameSpace;
WINBOOL fActive;
DWORD dwVersion;
LPWSTR lpszIdentifier;
} WSANAMESPACE_INFOW,*PWSANAMESPACE_INFOW,*LPWSANAMESPACE_INFOW;
typedef WSANAMESPACE_INFOA WSANAMESPACE_INFO;
typedef PWSANAMESPACE_INFOA PWSANAMESPACE_INFO;
typedef LPWSANAMESPACE_INFOA LPWSANAMESPACE_INFO;
typedef struct _WSAMSG {
LPSOCKADDR name;
INT namelen;
LPWSABUF lpBuffers;
DWORD dwBufferCount;
WSABUF Control;
DWORD dwFlags;
} WSAMSG,*PWSAMSG,*LPWSAMSG;
__attribute__((dllimport)) SOCKET __attribute__((__stdcall__)) accept(SOCKET s,struct sockaddr *addr,int *addrlen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) bind(SOCKET s,const struct sockaddr *name,int namelen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) closesocket(SOCKET s);
__attribute__((dllimport)) int __attribute__((__stdcall__)) connect(SOCKET s,const struct sockaddr *name,int namelen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) ioctlsocket(SOCKET s,long cmd,u_long *argp);
__attribute__((dllimport)) int __attribute__((__stdcall__)) getpeername(SOCKET s,struct sockaddr *name,int *namelen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) getsockname(SOCKET s,struct sockaddr *name,int *namelen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) getsockopt(SOCKET s,int level,int optname,char *optval,int *optlen);
__attribute__((dllimport)) u_long __attribute__((__stdcall__)) htonl(u_long hostlong);
__attribute__((dllimport)) u_short __attribute__((__stdcall__)) htons(u_short hostshort);
__attribute__((dllimport)) unsigned long __attribute__((__stdcall__)) inet_addr(const char *cp);
__attribute__((dllimport)) char *__attribute__((__stdcall__)) inet_ntoa(struct in_addr in);
__attribute__((dllimport)) int __attribute__((__stdcall__)) listen(SOCKET s,int backlog);
__attribute__((dllimport)) u_long __attribute__((__stdcall__)) ntohl(u_long netlong);
__attribute__((dllimport)) u_short __attribute__((__stdcall__)) ntohs(u_short netshort);
__attribute__((dllimport)) int __attribute__((__stdcall__)) recv(SOCKET s,char *buf,int len,int flags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) recvfrom(SOCKET s,char *buf,int len,int flags,struct sockaddr *from,int *fromlen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const PTIMEVAL timeout);
__attribute__((dllimport)) int __attribute__((__stdcall__)) send(SOCKET s,const char *buf,int len,int flags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) sendto(SOCKET s,const char *buf,int len,int flags,const struct sockaddr *to,int tolen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) setsockopt(SOCKET s,int level,int optname,const char *optval,int optlen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) shutdown(SOCKET s,int how);
__attribute__((dllimport)) SOCKET __attribute__((__stdcall__)) socket(int af,int type,int protocol);
__attribute__((dllimport)) struct hostent *__attribute__((__stdcall__)) gethostbyaddr(const char *addr,int len,int type);
__attribute__((dllimport)) struct hostent *__attribute__((__stdcall__)) gethostbyname(const char *name);
__attribute__((dllimport)) int __attribute__((__stdcall__)) gethostname(char *name,int namelen);
__attribute__((dllimport)) struct servent *__attribute__((__stdcall__)) getservbyport(int port,const char *proto);
__attribute__((dllimport)) struct servent *__attribute__((__stdcall__)) getservbyname(const char *name,const char *proto);
__attribute__((dllimport)) struct protoent *__attribute__((__stdcall__)) getprotobynumber(int number);
__attribute__((dllimport)) struct protoent *__attribute__((__stdcall__)) getprotobyname(const char *name);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAStartup(WORD wVersionRequested,LPWSADATA lpWSAData);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSACleanup(void);
__attribute__((dllimport)) void __attribute__((__stdcall__)) WSASetLastError(int iError);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAGetLastError(void);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WSAIsBlocking(void);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAUnhookBlockingHook(void);
__attribute__((dllimport)) FARPROC __attribute__((__stdcall__)) WSASetBlockingHook(FARPROC lpBlockFunc);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSACancelBlockingCall(void);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) WSAAsyncGetServByName(HWND hWnd,u_int wMsg,const char *name,const char *proto,char *buf,int buflen);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) WSAAsyncGetServByPort(HWND hWnd,u_int wMsg,int port,const char *proto,char *buf,int buflen);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) WSAAsyncGetProtoByName(HWND hWnd,u_int wMsg,const char *name,char *buf,int buflen);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) WSAAsyncGetProtoByNumber(HWND hWnd,u_int wMsg,int number,char *buf,int buflen);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) WSAAsyncGetHostByName(HWND hWnd,u_int wMsg,const char *name,char *buf,int buflen);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) WSAAsyncGetHostByAddr(HWND hWnd,u_int wMsg,const char *addr,int len,int type,char *buf,int buflen);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSACancelAsyncRequest(HANDLE hAsyncTaskHandle);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAAsyncSelect(SOCKET s,HWND hWnd,u_int wMsg,long lEvent);
__attribute__((dllimport)) SOCKET __attribute__((__stdcall__)) WSAAccept(SOCKET s,struct sockaddr *addr,LPINT addrlen,LPCONDITIONPROC lpfnCondition,DWORD_PTR dwCallbackData);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WSACloseEvent(HANDLE hEvent);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAConnect(SOCKET s,const struct sockaddr *name,int namelen,LPWSABUF lpCallerData,LPWSABUF lpCalleeData,LPQOS lpSQOS,LPQOS lpGQOS);
__attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) WSACreateEvent(void);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSADuplicateSocketA(SOCKET s,DWORD dwProcessId,LPWSAPROTOCOL_INFOA lpProtocolInfo);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSADuplicateSocketW(SOCKET s,DWORD dwProcessId,LPWSAPROTOCOL_INFOW lpProtocolInfo);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAEnumNetworkEvents(SOCKET s,HANDLE hEventObject,LPWSANETWORKEVENTS lpNetworkEvents);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAEnumProtocolsA(LPINT lpiProtocols,LPWSAPROTOCOL_INFOA lpProtocolBuffer,LPDWORD lpdwBufferLength);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAEnumProtocolsW(LPINT lpiProtocols,LPWSAPROTOCOL_INFOW lpProtocolBuffer,LPDWORD lpdwBufferLength);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAEventSelect(SOCKET s,HANDLE hEventObject,long lNetworkEvents);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WSAGetOverlappedResult(SOCKET s,LPWSAOVERLAPPED lpOverlapped,LPDWORD lpcbTransfer,WINBOOL fWait,LPDWORD lpdwFlags);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WSAGetQOSByName(SOCKET s,LPWSABUF lpQOSName,LPQOS lpQOS);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAHtonl(SOCKET s,u_long hostlong,u_long *lpnetlong);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAHtons(SOCKET s,u_short hostshort,u_short *lpnetshort);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSAIoctl(SOCKET s,DWORD dwIoControlCode,LPVOID lpvInBuffer,DWORD cbInBuffer,LPVOID lpvOutBuffer,DWORD cbOutBuffer,LPDWORD lpcbBytesReturned,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
__attribute__((dllimport)) SOCKET __attribute__((__stdcall__)) WSAJoinLeaf(SOCKET s,const struct sockaddr *name,int namelen,LPWSABUF lpCallerData,LPWSABUF lpCalleeData,LPQOS lpSQOS,LPQOS lpGQOS,DWORD dwFlags);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSANtohl(SOCKET s,u_long netlong,u_long *lphostlong);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSANtohs(SOCKET s,u_short netshort,u_short *lphostshort);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSARecv(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesRecvd,LPDWORD lpFlags,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSARecvDisconnect(SOCKET s,LPWSABUF lpInboundDisconnectData);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSARecvFrom(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesRecvd,LPDWORD lpFlags,struct sockaddr *lpFrom,LPINT lpFromlen,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WSAResetEvent(HANDLE hEvent);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSASend(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesSent,DWORD dwFlags,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSASendDisconnect(SOCKET s,LPWSABUF lpOutboundDisconnectData);
__attribute__((dllimport)) int __attribute__((__stdcall__)) WSASendTo(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesSent,DWORD dwFlags,const struct sockaddr *lpTo,int iTolen,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
__attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) WSASetEvent(HANDLE hEvent);
__attribute__((dllimport)) SOCKET __attribute__((__stdcall__)) WSASocketA(int af,int type,int protocol,LPWSAPROTOCOL_INFOA lpProtocolInfo,GROUP g,DWORD dwFlags);
__attribute__((dllimport)) SOCKET __attribute__((__stdcall__)) WSASocketW(int af,int type,int protocol,LPWSAPROTOCOL_INFOW lpProtocolInfo,GROUP g,DWORD dwFlags);
__attribute__((dllimport)) DWORD __attribute__((__stdcall__)) WSAWaitForMultipleEvents(DWORD cEvents,const HANDLE *lphEvents,WINBOOL fWaitAll,DWORD dwTimeout,WINBOOL fAlertable);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAAddressToStringA(LPSOCKADDR lpsaAddress,DWORD dwAddressLength,LPWSAPROTOCOL_INFOA lpProtocolInfo,LPSTR lpszAddressString,LPDWORD lpdwAddressStringLength);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAAddressToStringW(LPSOCKADDR lpsaAddress,DWORD dwAddressLength,LPWSAPROTOCOL_INFOW lpProtocolInfo,LPWSTR lpszAddressString,LPDWORD lpdwAddressStringLength);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAStringToAddressA(LPSTR AddressString,INT AddressFamily,LPWSAPROTOCOL_INFOA lpProtocolInfo,LPSOCKADDR lpAddress,LPINT lpAddressLength);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAStringToAddressW(LPWSTR AddressString,INT AddressFamily,LPWSAPROTOCOL_INFOW lpProtocolInfo,LPSOCKADDR lpAddress,LPINT lpAddressLength);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSALookupServiceBeginA(LPWSAQUERYSETA lpqsRestrictions,DWORD dwControlFlags,LPHANDLE lphLookup);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSALookupServiceBeginW(LPWSAQUERYSETW lpqsRestrictions,DWORD dwControlFlags,LPHANDLE lphLookup);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSALookupServiceNextA(HANDLE hLookup,DWORD dwControlFlags,LPDWORD lpdwBufferLength,LPWSAQUERYSETA lpqsResults);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSALookupServiceNextW(HANDLE hLookup,DWORD dwControlFlags,LPDWORD lpdwBufferLength,LPWSAQUERYSETW lpqsResults);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSANSPIoctl(HANDLE hLookup,DWORD dwControlCode,LPVOID lpvInBuffer,DWORD cbInBuffer,LPVOID lpvOutBuffer,DWORD cbOutBuffer,LPDWORD lpcbBytesReturned,LPWSACOMPLETION lpCompletion);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSALookupServiceEnd(HANDLE hLookup);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAInstallServiceClassA(LPWSASERVICECLASSINFOA lpServiceClassInfo);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAInstallServiceClassW(LPWSASERVICECLASSINFOW lpServiceClassInfo);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSARemoveServiceClass(LPGUID lpServiceClassId);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAGetServiceClassInfoA(LPGUID lpProviderId,LPGUID lpServiceClassId,LPDWORD lpdwBufSize,LPWSASERVICECLASSINFOA lpServiceClassInfo);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAGetServiceClassInfoW(LPGUID lpProviderId,LPGUID lpServiceClassId,LPDWORD lpdwBufSize,LPWSASERVICECLASSINFOW lpServiceClassInfo);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAEnumNameSpaceProvidersA(LPDWORD lpdwBufferLength,LPWSANAMESPACE_INFOA lpnspBuffer);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAEnumNameSpaceProvidersW(LPDWORD lpdwBufferLength,LPWSANAMESPACE_INFOW lpnspBuffer);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAGetServiceClassNameByClassIdA(LPGUID lpServiceClassId,LPSTR lpszServiceClassName,LPDWORD lpdwBufferLength);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAGetServiceClassNameByClassIdW(LPGUID lpServiceClassId,LPWSTR lpszServiceClassName,LPDWORD lpdwBufferLength);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSASetServiceA(LPWSAQUERYSETA lpqsRegInfo,WSAESETSERVICEOP essoperation,DWORD dwControlFlags);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSASetServiceW(LPWSAQUERYSETW lpqsRegInfo,WSAESETSERVICEOP essoperation,DWORD dwControlFlags);
__attribute__((dllimport)) INT __attribute__((__stdcall__)) WSAProviderConfigChange(LPHANDLE lpNotificationHandle,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
#pragma pack(push,4)
typedef LPVOID HINTERNET;
typedef HINTERNET *LPHINTERNET;
typedef WORD INTERNET_PORT;
typedef INTERNET_PORT *LPINTERNET_PORT;
typedef enum {
INTERNET_SCHEME_PARTIAL = -2,INTERNET_SCHEME_UNKNOWN = -1,INTERNET_SCHEME_DEFAULT = 0,INTERNET_SCHEME_FTP,INTERNET_SCHEME_GOPHER,
INTERNET_SCHEME_HTTP,INTERNET_SCHEME_HTTPS,INTERNET_SCHEME_FILE,INTERNET_SCHEME_NEWS,INTERNET_SCHEME_MAILTO,INTERNET_SCHEME_SOCKS,
INTERNET_SCHEME_JAVASCRIPT,INTERNET_SCHEME_VBSCRIPT,INTERNET_SCHEME_RES,INTERNET_SCHEME_FIRST = INTERNET_SCHEME_FTP,
INTERNET_SCHEME_LAST = INTERNET_SCHEME_RES
} INTERNET_SCHEME,*LPINTERNET_SCHEME;
typedef struct {
DWORD_PTR dwResult;
DWORD dwError;
} INTERNET_ASYNC_RESULT,*LPINTERNET_ASYNC_RESULT;
typedef struct {
DWORD_PTR Socket;
DWORD SourcePort;
DWORD DestPort;
DWORD Flags;
} INTERNET_DIAGNOSTIC_SOCKET_INFO,*LPINTERNET_DIAGNOSTIC_SOCKET_INFO;
typedef struct {
DWORD dwAccessType;
LPCTSTR lpszProxy;
LPCTSTR lpszProxyBypass;
} INTERNET_PROXY_INFO,*LPINTERNET_PROXY_INFO;
typedef struct {
DWORD dwOption;
union {
DWORD dwValue;
LPSTR pszValue;
FILETIME ftValue;
} Value;
} INTERNET_PER_CONN_OPTIONA,*LPINTERNET_PER_CONN_OPTIONA;
typedef struct {
DWORD dwOption;
union {
DWORD dwValue;
LPWSTR pszValue;
FILETIME ftValue;
} Value;
} INTERNET_PER_CONN_OPTIONW,*LPINTERNET_PER_CONN_OPTIONW;
typedef INTERNET_PER_CONN_OPTIONA INTERNET_PER_CONN_OPTION;
typedef LPINTERNET_PER_CONN_OPTIONA LPINTERNET_PER_CONN_OPTION;
typedef struct {
DWORD dwSize;
LPSTR pszConnection;
DWORD dwOptionCount;
DWORD dwOptionError;
LPINTERNET_PER_CONN_OPTIONA pOptions;
} INTERNET_PER_CONN_OPTION_LISTA,*LPINTERNET_PER_CONN_OPTION_LISTA;
typedef struct {
DWORD dwSize;
LPWSTR pszConnection;
DWORD dwOptionCount;
DWORD dwOptionError;
LPINTERNET_PER_CONN_OPTIONW pOptions;
} INTERNET_PER_CONN_OPTION_LISTW,*LPINTERNET_PER_CONN_OPTION_LISTW;
typedef INTERNET_PER_CONN_OPTION_LISTA INTERNET_PER_CONN_OPTION_LIST;
typedef LPINTERNET_PER_CONN_OPTION_LISTA LPINTERNET_PER_CONN_OPTION_LIST;
typedef struct {
DWORD dwMajorVersion;
DWORD dwMinorVersion;
} INTERNET_VERSION_INFO,*LPINTERNET_VERSION_INFO;
typedef struct {
DWORD dwMajorVersion;
DWORD dwMinorVersion;
} HTTP_VERSION_INFO,*LPHTTP_VERSION_INFO;
typedef struct {
DWORD dwConnectedState;
DWORD dwFlags;
} INTERNET_CONNECTED_INFO,*LPINTERNET_CONNECTED_INFO;
typedef struct {
DWORD dwStructSize;
LPSTR lpszScheme;
DWORD dwSchemeLength;
INTERNET_SCHEME nScheme;
LPSTR lpszHostName;
DWORD dwHostNameLength;
INTERNET_PORT nPort;
LPSTR lpszUserName;
DWORD dwUserNameLength;
LPSTR lpszPassword;
DWORD dwPasswordLength;
LPSTR lpszUrlPath;
DWORD dwUrlPathLength;
LPSTR lpszExtraInfo;
DWORD dwExtraInfoLength;
} URL_COMPONENTSA,*LPURL_COMPONENTSA;
typedef struct {
DWORD dwStructSize;
LPWSTR lpszScheme;
DWORD dwSchemeLength;
INTERNET_SCHEME nScheme;
LPWSTR lpszHostName;
DWORD dwHostNameLength;
INTERNET_PORT nPort;
LPWSTR lpszUserName;
DWORD dwUserNameLength;
LPWSTR lpszPassword;
DWORD dwPasswordLength;
LPWSTR lpszUrlPath;
DWORD dwUrlPathLength;
LPWSTR lpszExtraInfo;
DWORD dwExtraInfoLength;
} URL_COMPONENTSW,*LPURL_COMPONENTSW;
typedef URL_COMPONENTSA URL_COMPONENTS;
typedef LPURL_COMPONENTSA LPURL_COMPONENTS;
typedef struct {
FILETIME ftExpiry;
FILETIME ftStart;
LPTSTR lpszSubjectInfo;
LPTSTR lpszIssuerInfo;
LPTSTR lpszProtocolName;
LPTSTR lpszSignatureAlgName;
LPTSTR lpszEncryptionAlgName;
DWORD dwKeySize;
} INTERNET_CERTIFICATE_INFO,*LPINTERNET_CERTIFICATE_INFO;
typedef struct _INTERNET_BUFFERSA {
DWORD dwStructSize;
struct _INTERNET_BUFFERSA *Next;
LPCSTR lpcszHeader;
DWORD dwHeadersLength;
DWORD dwHeadersTotal;
LPVOID lpvBuffer;
DWORD dwBufferLength;
DWORD dwBufferTotal;
DWORD dwOffsetLow;
DWORD dwOffsetHigh;
} INTERNET_BUFFERSA,*LPINTERNET_BUFFERSA;
typedef struct _INTERNET_BUFFERSW {
DWORD dwStructSize;
struct _INTERNET_BUFFERSW *Next;
LPCWSTR lpcszHeader;
DWORD dwHeadersLength;
DWORD dwHeadersTotal;
LPVOID lpvBuffer;
DWORD dwBufferLength;
DWORD dwBufferTotal;
DWORD dwOffsetLow;
DWORD dwOffsetHigh;
} INTERNET_BUFFERSW,*LPINTERNET_BUFFERSW;
typedef INTERNET_BUFFERSA INTERNET_BUFFERS;
typedef LPINTERNET_BUFFERSA LPINTERNET_BUFFERS;
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetTimeFromSystemTime(const SYSTEMTIME *pst,DWORD dwRFC,LPSTR lpszTime,DWORD cbTime);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetTimeFromSystemTimeA(const SYSTEMTIME *pst,DWORD dwRFC,LPSTR lpszTime,DWORD cbTime);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetTimeFromSystemTimeW(const SYSTEMTIME *pst,DWORD dwRFC,LPWSTR lpszTime,DWORD cbTime);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetTimeToSystemTime(LPCSTR lpszTime,SYSTEMTIME *pst,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetTimeToSystemTimeA(LPCSTR lpszTime,SYSTEMTIME *pst,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetTimeToSystemTimeW(LPCWSTR lpszTime,SYSTEMTIME *pst,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCrackUrlA(LPCSTR lpszUrl,DWORD dwUrlLength,DWORD dwFlags,LPURL_COMPONENTSA lpUrlComponents);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCrackUrlW(LPCWSTR lpszUrl,DWORD dwUrlLength,DWORD dwFlags,LPURL_COMPONENTSW lpUrlComponents);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCreateUrlA(LPURL_COMPONENTSA lpUrlComponents,DWORD dwFlags,LPSTR lpszUrl,LPDWORD lpdwUrlLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCreateUrlW(LPURL_COMPONENTSW lpUrlComponents,DWORD dwFlags,LPWSTR lpszUrl,LPDWORD lpdwUrlLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCanonicalizeUrlA(LPCSTR lpszUrl,LPSTR lpszBuffer,LPDWORD lpdwBufferLength,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCanonicalizeUrlW(LPCWSTR lpszUrl,LPWSTR lpszBuffer,LPDWORD lpdwBufferLength,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCombineUrlA(LPCSTR lpszBaseUrl,LPCSTR lpszRelativeUrl,LPSTR lpszBuffer,LPDWORD lpdwBufferLength,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCombineUrlW(LPCWSTR lpszBaseUrl,LPCWSTR lpszRelativeUrl,LPWSTR lpszBuffer,LPDWORD lpdwBufferLength,DWORD dwFlags);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) InternetOpenA(LPCSTR lpszAgent,DWORD dwAccessType,LPCSTR lpszProxy,LPCSTR lpszProxyBypass,DWORD dwFlags);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) InternetOpenW(LPCWSTR lpszAgent,DWORD dwAccessType,LPCWSTR lpszProxy,LPCWSTR lpszProxyBypass,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCloseHandle(HINTERNET hInternet);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) InternetConnectA(HINTERNET hInternet,LPCSTR lpszServerName,INTERNET_PORT nServerPort,LPCSTR lpszUserName,LPCSTR lpszPassword,DWORD dwService,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) InternetConnectW(HINTERNET hInternet,LPCWSTR lpszServerName,INTERNET_PORT nServerPort,LPCWSTR lpszUserName,LPCWSTR lpszPassword,DWORD dwService,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) InternetOpenUrlA(HINTERNET hInternet,LPCSTR lpszUrl,LPCSTR lpszHeaders,DWORD dwHeadersLength,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) InternetOpenUrlW(HINTERNET hInternet,LPCWSTR lpszUrl,LPCWSTR lpszHeaders,DWORD dwHeadersLength,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetReadFile(HINTERNET hFile,LPVOID lpBuffer,DWORD dwNumberOfBytesToRead,LPDWORD lpdwNumberOfBytesRead);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetReadFileExA(HINTERNET hFile,LPINTERNET_BUFFERSA lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetReadFileExW(HINTERNET hFile,LPINTERNET_BUFFERSW lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetSetFilePointer(HINTERNET hFile,LONG lDistanceToMove,PVOID pReserved,DWORD dwMoveMethod,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetWriteFile(HINTERNET hFile,LPCVOID lpBuffer,DWORD dwNumberOfBytesToWrite,LPDWORD lpdwNumberOfBytesWritten);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetQueryDataAvailable(HINTERNET hFile,LPDWORD lpdwNumberOfBytesAvailable,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetFindNextFileA(HINTERNET hFind,LPVOID lpvFindData);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetFindNextFileW(HINTERNET hFind,LPVOID lpvFindData);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetQueryOptionA(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,LPDWORD lpdwBufferLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetQueryOptionW(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,LPDWORD lpdwBufferLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetOptionA(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,DWORD dwBufferLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetOptionW(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,DWORD dwBufferLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetOptionExA(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,DWORD dwBufferLength,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetOptionExW(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,DWORD dwBufferLength,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetLockRequestFile(HINTERNET hInternet,HANDLE *lphLockRequestInfo);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetUnlockRequestFile(HANDLE hLockRequestInfo);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetLastResponseInfoA(LPDWORD lpdwError,LPSTR lpszBuffer,LPDWORD lpdwBufferLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetLastResponseInfoW(LPDWORD lpdwError,LPWSTR lpszBuffer,LPDWORD lpdwBufferLength);
typedef void (__attribute__((__stdcall__)) *INTERNET_STATUS_CALLBACK)(HINTERNET hInternet,DWORD_PTR dwContext,DWORD dwInternetStatus,LPVOID lpvStatusInformation,DWORD dwStatusInformationLength);
typedef INTERNET_STATUS_CALLBACK *LPINTERNET_STATUS_CALLBACK;
extern __attribute__((dllimport)) INTERNET_STATUS_CALLBACK __attribute__((__stdcall__)) InternetSetStatusCallback(HINTERNET hInternet,INTERNET_STATUS_CALLBACK lpfnInternetCallback);
extern __attribute__((dllimport)) INTERNET_STATUS_CALLBACK __attribute__((__stdcall__)) InternetSetStatusCallbackA(HINTERNET hInternet,INTERNET_STATUS_CALLBACK lpfnInternetCallback);
extern __attribute__((dllimport)) INTERNET_STATUS_CALLBACK __attribute__((__stdcall__)) InternetSetStatusCallbackW(HINTERNET hInternet,INTERNET_STATUS_CALLBACK lpfnInternetCallback);
typedef enum {
COOKIE_STATE_UNKNOWN = 0x0,COOKIE_STATE_ACCEPT = 0x1,COOKIE_STATE_PROMPT = 0x2,COOKIE_STATE_LEASH = 0x3,COOKIE_STATE_DOWNGRADE = 0x4,
COOKIE_STATE_REJECT = 0x5,COOKIE_STATE_MAX = COOKIE_STATE_REJECT
} InternetCookieState;
typedef struct {
int cSession;
int cPersistent;
int cAccepted;
int cLeashed;
int cDowngraded;
int cBlocked;
const char *pszLocation;
} IncomingCookieState;
typedef struct {
int cSent;
int cSuppressed;
const char *pszLocation;
} OutgoingCookieState;
typedef struct {
WINBOOL fAccepted;
WINBOOL fLeashed;
WINBOOL fDowngraded;
WINBOOL fRejected;
} InternetCookieHistory;
typedef struct {
DWORD dwCookieState;
WINBOOL fAllowSession;
} CookieDecision;
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) FtpFindFirstFileA(HINTERNET hConnect,LPCSTR lpszSearchFile,LPWIN32_FIND_DATAA lpFindFileData,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) FtpFindFirstFileW(HINTERNET hConnect,LPCWSTR lpszSearchFile,LPWIN32_FIND_DATAW lpFindFileData,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpGetFileA(HINTERNET hConnect,LPCSTR lpszRemoteFile,LPCSTR lpszNewFile,WINBOOL fFailIfExists,DWORD dwFlagsAndAttributes,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpGetFileW(HINTERNET hConnect,LPCWSTR lpszRemoteFile,LPCWSTR lpszNewFile,WINBOOL fFailIfExists,DWORD dwFlagsAndAttributes,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpPutFileA(HINTERNET hConnect,LPCSTR lpszLocalFile,LPCSTR lpszNewRemoteFile,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpPutFileW(HINTERNET hConnect,LPCWSTR lpszLocalFile,LPCWSTR lpszNewRemoteFile,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpGetFileEx(HINTERNET hFtpSession,LPCSTR lpszRemoteFile,LPCWSTR lpszNewFile,WINBOOL fFailIfExists,DWORD dwFlagsAndAttributes,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpPutFileEx(HINTERNET hFtpSession,LPCWSTR lpszLocalFile,LPCSTR lpszNewRemoteFile,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpDeleteFileA(HINTERNET hConnect,LPCSTR lpszFileName);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpDeleteFileW(HINTERNET hConnect,LPCWSTR lpszFileName);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpRenameFileA(HINTERNET hConnect,LPCSTR lpszExisting,LPCSTR lpszNew);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpRenameFileW(HINTERNET hConnect,LPCWSTR lpszExisting,LPCWSTR lpszNew);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) FtpOpenFileA(HINTERNET hConnect,LPCSTR lpszFileName,DWORD dwAccess,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) FtpOpenFileW(HINTERNET hConnect,LPCWSTR lpszFileName,DWORD dwAccess,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpCreateDirectoryA(HINTERNET hConnect,LPCSTR lpszDirectory);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpCreateDirectoryW(HINTERNET hConnect,LPCWSTR lpszDirectory);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpRemoveDirectoryA(HINTERNET hConnect,LPCSTR lpszDirectory);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpRemoveDirectoryW(HINTERNET hConnect,LPCWSTR lpszDirectory);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpSetCurrentDirectoryA(HINTERNET hConnect,LPCSTR lpszDirectory);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpSetCurrentDirectoryW(HINTERNET hConnect,LPCWSTR lpszDirectory);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpGetCurrentDirectoryA(HINTERNET hConnect,LPSTR lpszCurrentDirectory,LPDWORD lpdwCurrentDirectory);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpGetCurrentDirectoryW(HINTERNET hConnect,LPWSTR lpszCurrentDirectory,LPDWORD lpdwCurrentDirectory);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpCommandA(HINTERNET hConnect,WINBOOL fExpectResponse,DWORD dwFlags,LPCSTR lpszCommand,DWORD_PTR dwContext,HINTERNET *phFtpCommand);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FtpCommandW(HINTERNET hConnect,WINBOOL fExpectResponse,DWORD dwFlags,LPCWSTR lpszCommand,DWORD_PTR dwContext,HINTERNET *phFtpCommand);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) FtpGetFileSize(HINTERNET hFile,LPDWORD lpdwFileSizeHigh);
typedef struct {
CHAR DisplayString[128 + 1];
DWORD GopherType;
DWORD SizeLow;
DWORD SizeHigh;
FILETIME LastModificationTime;
CHAR Locator[(1 + 128 + 1 + 256 + 1 + 256 + 1 + 5 + 1 + 1 + 2) + 1];
} GOPHER_FIND_DATAA,*LPGOPHER_FIND_DATAA;
typedef struct {
WCHAR DisplayString[128 + 1];
DWORD GopherType;
DWORD SizeLow;
DWORD SizeHigh;
FILETIME LastModificationTime;
WCHAR Locator[(1 + 128 + 1 + 256 + 1 + 256 + 1 + 5 + 1 + 1 + 2) + 1];
} GOPHER_FIND_DATAW,*LPGOPHER_FIND_DATAW;
typedef GOPHER_FIND_DATAA GOPHER_FIND_DATA;
typedef LPGOPHER_FIND_DATAA LPGOPHER_FIND_DATA;
typedef struct {
LPCTSTR Comment;
LPCTSTR EmailAddress;
} GOPHER_ADMIN_ATTRIBUTE_TYPE,*LPGOPHER_ADMIN_ATTRIBUTE_TYPE;
typedef struct {
FILETIME DateAndTime;
} GOPHER_MOD_DATE_ATTRIBUTE_TYPE,*LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE;
typedef struct {
DWORD Ttl;
} GOPHER_TTL_ATTRIBUTE_TYPE,*LPGOPHER_TTL_ATTRIBUTE_TYPE;
typedef struct {
INT Score;
} GOPHER_SCORE_ATTRIBUTE_TYPE,*LPGOPHER_SCORE_ATTRIBUTE_TYPE;
typedef struct {
INT LowerBound;
INT UpperBound;
} GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE,*LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR Site;
} GOPHER_SITE_ATTRIBUTE_TYPE,*LPGOPHER_SITE_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR Organization;
} GOPHER_ORGANIZATION_ATTRIBUTE_TYPE,*LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR Location;
} GOPHER_LOCATION_ATTRIBUTE_TYPE,*LPGOPHER_LOCATION_ATTRIBUTE_TYPE;
typedef struct {
INT DegreesNorth;
INT MinutesNorth;
INT SecondsNorth;
INT DegreesEast;
INT MinutesEast;
INT SecondsEast;
} GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE,*LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE;
typedef struct {
INT Zone;
} GOPHER_TIMEZONE_ATTRIBUTE_TYPE,*LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR Provider;
} GOPHER_PROVIDER_ATTRIBUTE_TYPE,*LPGOPHER_PROVIDER_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR Version;
} GOPHER_VERSION_ATTRIBUTE_TYPE,*LPGOPHER_VERSION_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR ShortAbstract;
LPCTSTR AbstractFile;
} GOPHER_ABSTRACT_ATTRIBUTE_TYPE,*LPGOPHER_ABSTRACT_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR ContentType;
LPCTSTR Language;
DWORD Size;
} GOPHER_VIEW_ATTRIBUTE_TYPE,*LPGOPHER_VIEW_ATTRIBUTE_TYPE;
typedef struct {
WINBOOL TreeWalk;
} GOPHER_VERONICA_ATTRIBUTE_TYPE,*LPGOPHER_VERONICA_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR QuestionType;
LPCTSTR QuestionText;
} GOPHER_ASK_ATTRIBUTE_TYPE,*LPGOPHER_ASK_ATTRIBUTE_TYPE;
typedef struct {
LPCTSTR Text;
} GOPHER_UNKNOWN_ATTRIBUTE_TYPE,*LPGOPHER_UNKNOWN_ATTRIBUTE_TYPE;
typedef struct {
DWORD CategoryId;
DWORD AttributeId;
union {
GOPHER_ADMIN_ATTRIBUTE_TYPE Admin;
GOPHER_MOD_DATE_ATTRIBUTE_TYPE ModDate;
GOPHER_TTL_ATTRIBUTE_TYPE Ttl;
GOPHER_SCORE_ATTRIBUTE_TYPE Score;
GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE ScoreRange;
GOPHER_SITE_ATTRIBUTE_TYPE Site;
GOPHER_ORGANIZATION_ATTRIBUTE_TYPE Organization;
GOPHER_LOCATION_ATTRIBUTE_TYPE Location;
GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE GeographicalLocation;
GOPHER_TIMEZONE_ATTRIBUTE_TYPE TimeZone;
GOPHER_PROVIDER_ATTRIBUTE_TYPE Provider;
GOPHER_VERSION_ATTRIBUTE_TYPE Version;
GOPHER_ABSTRACT_ATTRIBUTE_TYPE Abstract;
GOPHER_VIEW_ATTRIBUTE_TYPE View;
GOPHER_VERONICA_ATTRIBUTE_TYPE Veronica;
GOPHER_ASK_ATTRIBUTE_TYPE Ask;
GOPHER_UNKNOWN_ATTRIBUTE_TYPE Unknown;
} AttributeType;
} GOPHER_ATTRIBUTE_TYPE,*LPGOPHER_ATTRIBUTE_TYPE;
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GopherCreateLocatorA(LPCSTR lpszHost,INTERNET_PORT nServerPort,LPCSTR lpszDisplayString,LPCSTR lpszSelectorString,DWORD dwGopherType,LPSTR lpszLocator,LPDWORD lpdwBufferLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GopherCreateLocatorW(LPCWSTR lpszHost,INTERNET_PORT nServerPort,LPCWSTR lpszDisplayString,LPCWSTR lpszSelectorString,DWORD dwGopherType,LPWSTR lpszLocator,LPDWORD lpdwBufferLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GopherGetLocatorTypeA(LPCSTR lpszLocator,LPDWORD lpdwGopherType);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GopherGetLocatorTypeW(LPCWSTR lpszLocator,LPDWORD lpdwGopherType);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) GopherFindFirstFileA(HINTERNET hConnect,LPCSTR lpszLocator,LPCSTR lpszSearchString,LPGOPHER_FIND_DATAA lpFindData,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) GopherFindFirstFileW(HINTERNET hConnect,LPCWSTR lpszLocator,LPCWSTR lpszSearchString,LPGOPHER_FIND_DATAW lpFindData,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) GopherOpenFileA(HINTERNET hConnect,LPCSTR lpszLocator,LPCSTR lpszView,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) GopherOpenFileW(HINTERNET hConnect,LPCWSTR lpszLocator,LPCWSTR lpszView,DWORD dwFlags,DWORD_PTR dwContext);
typedef WINBOOL (__attribute__((__stdcall__)) *GOPHER_ATTRIBUTE_ENUMERATOR)(LPGOPHER_ATTRIBUTE_TYPE lpAttributeInfo,DWORD dwError);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GopherGetAttributeA(HINTERNET hConnect,LPCSTR lpszLocator,LPCSTR lpszAttributeName,LPBYTE lpBuffer,DWORD dwBufferLength,LPDWORD lpdwCharactersReturned,GOPHER_ATTRIBUTE_ENUMERATOR lpfnEnumerator,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GopherGetAttributeW(HINTERNET hConnect,LPCWSTR lpszLocator,LPCWSTR lpszAttributeName,LPBYTE lpBuffer,DWORD dwBufferLength,LPDWORD lpdwCharactersReturned,GOPHER_ATTRIBUTE_ENUMERATOR lpfnEnumerator,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) HttpOpenRequestA(HINTERNET hConnect,LPCSTR lpszVerb,LPCSTR lpszObjectName,LPCSTR lpszVersion,LPCSTR lpszReferrer,LPCSTR *lplpszAcceptTypes,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) HINTERNET __attribute__((__stdcall__)) HttpOpenRequestW(HINTERNET hConnect,LPCWSTR lpszVerb,LPCWSTR lpszObjectName,LPCWSTR lpszVersion,LPCWSTR lpszReferrer,LPCWSTR *lplpszAcceptTypes,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpAddRequestHeadersA(HINTERNET hRequest,LPCSTR lpszHeaders,DWORD dwHeadersLength,DWORD dwModifiers);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpAddRequestHeadersW(HINTERNET hRequest,LPCWSTR lpszHeaders,DWORD dwHeadersLength,DWORD dwModifiers);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpSendRequestA(HINTERNET hRequest,LPCSTR lpszHeaders,DWORD dwHeadersLength,LPVOID lpOptional,DWORD dwOptionalLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpSendRequestW(HINTERNET hRequest,LPCWSTR lpszHeaders,DWORD dwHeadersLength,LPVOID lpOptional,DWORD dwOptionalLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpSendRequestExA(HINTERNET hRequest,LPINTERNET_BUFFERSA lpBuffersIn,LPINTERNET_BUFFERSA lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpSendRequestExW(HINTERNET hRequest,LPINTERNET_BUFFERSW lpBuffersIn,LPINTERNET_BUFFERSW lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpEndRequestA(HINTERNET hRequest,LPINTERNET_BUFFERSA lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpEndRequestW(HINTERNET hRequest,LPINTERNET_BUFFERSW lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpQueryInfoA(HINTERNET hRequest,DWORD dwInfoLevel,LPVOID lpBuffer,LPDWORD lpdwBufferLength,LPDWORD lpdwIndex);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) HttpQueryInfoW(HINTERNET hRequest,DWORD dwInfoLevel,LPVOID lpBuffer,LPDWORD lpdwBufferLength,LPDWORD lpdwIndex);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetCookieA(LPCSTR lpszUrl,LPCSTR lpszCookieName,LPCSTR lpszCookieData);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetCookieW(LPCWSTR lpszUrl,LPCWSTR lpszCookieName,LPCWSTR lpszCookieData);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetCookieA(LPCSTR lpszUrl,LPCSTR lpszCookieName,LPSTR lpszCookieData,LPDWORD lpdwSize);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetCookieW(LPCWSTR lpszUrl,LPCWSTR lpszCookieName,LPWSTR lpszCookieData,LPDWORD lpdwSize);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetSetCookieExA(LPCSTR lpszUrl,LPCSTR lpszCookieName,LPCSTR lpszCookieData,DWORD dwFlags,DWORD_PTR dwReserved);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetSetCookieExW(LPCWSTR lpszUrl,LPCWSTR lpszCookieName,LPCWSTR lpszCookieData,DWORD dwFlags,DWORD_PTR dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetCookieExA(LPCSTR lpszUrl,LPCSTR lpszCookieName,LPSTR lpszCookieData,LPDWORD lpdwSize,DWORD dwFlags,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetCookieExW(LPCWSTR lpszUrl,LPCWSTR lpszCookieName,LPWSTR lpszCookieData,LPDWORD lpdwSize,DWORD dwFlags,LPVOID lpReserved);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetAttemptConnect(DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCheckConnectionA(LPCSTR lpszUrl,DWORD dwFlags,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetCheckConnectionW(LPCWSTR lpszUrl,DWORD dwFlags,DWORD dwReserved);
DWORD InternetAuthNotifyCallback(DWORD_PTR dwContext,DWORD dwReturn,LPVOID lpReserved);
typedef DWORD (__attribute__((__stdcall__)) *PFN_AUTH_NOTIFY) (DWORD_PTR,DWORD,LPVOID);
typedef struct {
DWORD cbStruct;
DWORD dwOptions;
PFN_AUTH_NOTIFY pfnNotify;
DWORD_PTR dwContext;
} INTERNET_AUTH_NOTIFY_DATA;
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetConfirmZoneCrossing(HWND hWnd,LPSTR szUrlPrev,LPSTR szUrlNew,WINBOOL bPost);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ResumeSuspendedDownload(HINTERNET hRequest,DWORD dwResultCode);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetErrorDlg(HWND hWnd,HINTERNET hRequest,DWORD dwError,DWORD dwFlags,LPVOID *lppvData);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetConfirmZoneCrossingA(HWND hWnd,LPSTR szUrlPrev,LPSTR szUrlNew,WINBOOL bPost);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetConfirmZoneCrossingW(HWND hWnd,LPWSTR szUrlPrev,LPWSTR szUrlNew,WINBOOL bPost);
typedef struct _INTERNET_CACHE_ENTRY_INFOA {
DWORD dwStructSize;
LPSTR lpszSourceUrlName;
LPSTR lpszLocalFileName;
DWORD CacheEntryType;
DWORD dwUseCount;
DWORD dwHitRate;
DWORD dwSizeLow;
DWORD dwSizeHigh;
FILETIME LastModifiedTime;
FILETIME ExpireTime;
FILETIME LastAccessTime;
FILETIME LastSyncTime;
LPSTR lpHeaderInfo;
DWORD dwHeaderInfoSize;
LPSTR lpszFileExtension;
__extension__ union {
DWORD dwReserved;
DWORD dwExemptDelta;
};
} INTERNET_CACHE_ENTRY_INFOA,*LPINTERNET_CACHE_ENTRY_INFOA;
typedef struct _INTERNET_CACHE_ENTRY_INFOW {
DWORD dwStructSize;
LPWSTR lpszSourceUrlName;
LPWSTR lpszLocalFileName;
DWORD CacheEntryType;
DWORD dwUseCount;
DWORD dwHitRate;
DWORD dwSizeLow;
DWORD dwSizeHigh;
FILETIME LastModifiedTime;
FILETIME ExpireTime;
FILETIME LastAccessTime;
FILETIME LastSyncTime;
LPWSTR lpHeaderInfo;
DWORD dwHeaderInfoSize;
LPWSTR lpszFileExtension;
__extension__ union {
DWORD dwReserved;
DWORD dwExemptDelta;
};
} INTERNET_CACHE_ENTRY_INFOW,*LPINTERNET_CACHE_ENTRY_INFOW;
typedef INTERNET_CACHE_ENTRY_INFOA INTERNET_CACHE_ENTRY_INFO;
typedef LPINTERNET_CACHE_ENTRY_INFOA LPINTERNET_CACHE_ENTRY_INFO;
typedef struct _INTERNET_CACHE_TIMESTAMPS {
FILETIME ftExpires;
FILETIME ftLastModified;
} INTERNET_CACHE_TIMESTAMPS,*LPINTERNET_CACHE_TIMESTAMPS;
typedef LONGLONG GROUPID;
typedef struct _INTERNET_CACHE_GROUP_INFOA {
DWORD dwGroupSize;
DWORD dwGroupFlags;
DWORD dwGroupType;
DWORD dwDiskUsage;
DWORD dwDiskQuota;
DWORD dwOwnerStorage[4];
CHAR szGroupName[120];
} INTERNET_CACHE_GROUP_INFOA,*LPINTERNET_CACHE_GROUP_INFOA;
typedef struct _INTERNET_CACHE_GROUP_INFOW {
DWORD dwGroupSize;
DWORD dwGroupFlags;
DWORD dwGroupType;
DWORD dwDiskUsage;
DWORD dwDiskQuota;
DWORD dwOwnerStorage[4];
WCHAR szGroupName[120];
} INTERNET_CACHE_GROUP_INFOW,*LPINTERNET_CACHE_GROUP_INFOW;
typedef INTERNET_CACHE_GROUP_INFOA INTERNET_CACHE_GROUP_INFO;
typedef LPINTERNET_CACHE_GROUP_INFOA LPINTERNET_CACHE_GROUP_INFO;
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateUrlCacheEntryA(LPCSTR lpszUrlName,DWORD dwExpectedFileSize,LPCSTR lpszFileExtension,LPSTR lpszFileName,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateUrlCacheEntryW(LPCWSTR lpszUrlName,DWORD dwExpectedFileSize,LPCWSTR lpszFileExtension,LPWSTR lpszFileName,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CommitUrlCacheEntryA(LPCSTR lpszUrlName,LPCSTR lpszLocalFileName,FILETIME ExpireTime,FILETIME LastModifiedTime,DWORD CacheEntryType,LPBYTE lpHeaderInfo,DWORD dwHeaderSize,LPCSTR lpszFileExtension,LPCSTR lpszOriginalUrl);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CommitUrlCacheEntryW(LPCWSTR lpszUrlName,LPCWSTR lpszLocalFileName,FILETIME ExpireTime,FILETIME LastModifiedTime,DWORD CacheEntryType,LPWSTR lpszHeaderInfo,DWORD dwHeaders,LPCWSTR lpszFileExtension,LPCWSTR lpszOriginalUrl);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RetrieveUrlCacheEntryFileA(LPCSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) RetrieveUrlCacheEntryFileW(LPCWSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnlockUrlCacheEntryFileA(LPCSTR lpszUrlName,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnlockUrlCacheEntryFileW(LPCWSTR lpszUrlName,DWORD dwReserved);
extern __attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) RetrieveUrlCacheEntryStreamA(LPCSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,WINBOOL fRandomRead,DWORD dwReserved);
extern __attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) RetrieveUrlCacheEntryStreamW(LPCWSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,WINBOOL fRandomRead,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) ReadUrlCacheEntryStream(HANDLE hUrlCacheStream,DWORD dwLocation,LPVOID lpBuffer,LPDWORD lpdwLen,DWORD Reserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) UnlockUrlCacheEntryStream(HANDLE hUrlCacheStream,DWORD Reserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUrlCacheEntryInfoA(LPCSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUrlCacheEntryInfoW(LPCWSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
extern __attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstUrlCacheGroup(DWORD dwFlags,DWORD dwFilter,LPVOID lpSearchCondition,DWORD dwSearchCondition,GROUPID *lpGroupId,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextUrlCacheGroup(HANDLE hFind,GROUPID *lpGroupId,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUrlCacheGroupAttributeA(GROUPID gid,DWORD dwFlags,DWORD dwAttributes,LPINTERNET_CACHE_GROUP_INFOA lpGroupInfo,LPDWORD lpdwGroupInfo,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUrlCacheGroupAttributeW(GROUPID gid,DWORD dwFlags,DWORD dwAttributes,LPINTERNET_CACHE_GROUP_INFOW lpGroupInfo,LPDWORD lpdwGroupInfo,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUrlCacheGroupAttributeA(GROUPID gid,DWORD dwFlags,DWORD dwAttributes,LPINTERNET_CACHE_GROUP_INFOA lpGroupInfo,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUrlCacheGroupAttributeW(GROUPID gid,DWORD dwFlags,DWORD dwAttributes,LPINTERNET_CACHE_GROUP_INFOW lpGroupInfo,LPVOID lpReserved);
extern __attribute__((dllimport)) GROUPID __attribute__((__stdcall__)) CreateUrlCacheGroup(DWORD dwFlags,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteUrlCacheGroup(GROUPID GroupId,DWORD dwFlags,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUrlCacheEntryInfoExA(LPCSTR lpszUrl,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,LPSTR lpszRedirectUrl,LPDWORD lpcbRedirectUrl,LPVOID lpReserved,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) GetUrlCacheEntryInfoExW(LPCWSTR lpszUrl,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,LPWSTR lpszRedirectUrl,LPDWORD lpcbRedirectUrl,LPVOID lpReserved,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUrlCacheEntryGroup(LPCSTR lpszUrlName,DWORD dwFlags,GROUPID GroupId,LPBYTE pbGroupAttributes,DWORD cbGroupAttributes,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteUrlCacheEntry(LPCSTR lpszUrlName);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetDial(HWND hwndParent,LPSTR lpszConnectoid,DWORD dwFlags,LPDWORD lpdwConnection,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGoOnline(LPSTR lpszURL,HWND hwndParent,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUrlCacheEntryInfoA(LPCSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,DWORD dwFieldControl);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUrlCacheEntryInfoW(LPCWSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,DWORD dwFieldControl);
extern __attribute__((dllimport)) GROUPID __attribute__((__stdcall__)) CreateUrlCacheGroup(DWORD dwFlags,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteUrlCacheGroup(GROUPID GroupId,DWORD dwFlags,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUrlCacheEntryGroupA(LPCSTR lpszUrlName,DWORD dwFlags,GROUPID GroupId,LPBYTE pbGroupAttributes,DWORD cbGroupAttributes,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) SetUrlCacheEntryGroupW(LPCWSTR lpszUrlName,DWORD dwFlags,GROUPID GroupId,LPBYTE pbGroupAttributes,DWORD cbGroupAttributes,LPVOID lpReserved);
extern __attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstUrlCacheEntryExA(LPCSTR lpszUrlSearchPattern,DWORD dwFlags,DWORD dwFilter,GROUPID GroupId,LPINTERNET_CACHE_ENTRY_INFOA lpFirstCacheEntryInfo,LPDWORD lpcbEntryInfo,LPVOID lpGroupAttributes,LPDWORD lpcbGroupAttributes,LPVOID lpReserved);
extern __attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstUrlCacheEntryExW(LPCWSTR lpszUrlSearchPattern,DWORD dwFlags,DWORD dwFilter,GROUPID GroupId,LPINTERNET_CACHE_ENTRY_INFOW lpFirstCacheEntryInfo,LPDWORD lpcbEntryInfo,LPVOID lpGroupAttributes,LPDWORD lpcbGroupAttributes,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextUrlCacheEntryExA(HANDLE hEnumHandle,LPINTERNET_CACHE_ENTRY_INFOA lpNextCacheEntryInfo,LPDWORD lpcbEntryInfo,LPVOID lpGroupAttributes,LPDWORD lpcbGroupAttributes,LPVOID lpReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextUrlCacheEntryExW(HANDLE hEnumHandle,LPINTERNET_CACHE_ENTRY_INFOW lpNextCacheEntryInfo,LPDWORD lpcbEntryInfo,LPVOID lpGroupAttributes,LPDWORD lpcbGroupAttributes,LPVOID lpReserved);
extern __attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstUrlCacheEntryA(LPCSTR lpszUrlSearchPattern,LPINTERNET_CACHE_ENTRY_INFOA lpFirstCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
extern __attribute__((dllimport)) HANDLE __attribute__((__stdcall__)) FindFirstUrlCacheEntryW(LPCWSTR lpszUrlSearchPattern,LPINTERNET_CACHE_ENTRY_INFOW lpFirstCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextUrlCacheEntryA(HANDLE hEnumHandle,LPINTERNET_CACHE_ENTRY_INFOA lpNextCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindNextUrlCacheEntryW(HANDLE hEnumHandle,LPINTERNET_CACHE_ENTRY_INFOW lpNextCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) FindCloseUrlCache(HANDLE hEnumHandle);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteUrlCacheEntryA(LPCSTR lpszUrlName);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DeleteUrlCacheEntryW(LPCWSTR lpszUrlName);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetDialA(HWND hwndParent,LPSTR lpszConnectoid,DWORD dwFlags,DWORD_PTR *lpdwConnection,DWORD dwReserved);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetDialW(HWND hwndParent,LPWSTR lpszConnectoid,DWORD dwFlags,DWORD_PTR *lpdwConnection,DWORD dwReserved);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) InternetHangUp(DWORD_PTR dwConnection,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGoOnlineA(LPSTR lpszURL,HWND hwndParent,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGoOnlineW(LPWSTR lpszURL,HWND hwndParent,DWORD dwFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetAutodial(DWORD dwFlags,HWND hwndParent);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetAutodialHangup(DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetConnectedState(LPDWORD lpdwFlags,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetConnectedStateExA(LPDWORD lpdwFlags,LPSTR lpszConnectionName,DWORD dwBufLen,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetConnectedStateExW(LPDWORD lpdwFlags,LPWSTR lpszConnectionName,DWORD dwBufLen,DWORD dwReserved);
struct AutoProxyHelperFunctions;
typedef struct AutoProxyHelperVtbl {
WINBOOL (__attribute__((__stdcall__)) *IsResolvable)(LPSTR lpszHost);
DWORD (__attribute__((__stdcall__)) *GetIPAddress)(LPSTR lpszIPAddress,LPDWORD lpdwIPAddressSize);
DWORD (__attribute__((__stdcall__)) *ResolveHostName)(LPSTR lpszHostName,LPSTR lpszIPAddress,LPDWORD lpdwIPAddressSize);
WINBOOL (__attribute__((__stdcall__)) *IsInNet)(LPSTR lpszIPAddress,LPSTR lpszDest,LPSTR lpszMask);
} AutoProxyHelperVtbl;
typedef struct {
DWORD dwStructSize;
LPSTR lpszScriptBuffer;
DWORD dwScriptBufferSize;
} AUTO_PROXY_SCRIPT_BUFFER,*LPAUTO_PROXY_SCRIPT_BUFFER;
typedef struct AutoProxyHelperFunctions {
const struct AutoProxyHelperVtbl *lpVtbl;
} AutoProxyHelperFunctions;
typedef WINBOOL (__attribute__((__stdcall__)) *pfnInternetInitializeAutoProxyDll)(DWORD dwVersion,LPSTR lpszDownloadedTempFile,LPSTR lpszMime,AutoProxyHelperFunctions *lpAutoProxyCallbacks,LPAUTO_PROXY_SCRIPT_BUFFER lpAutoProxyScriptBuffer);
typedef WINBOOL (__attribute__((__stdcall__)) *pfnInternetDeInitializeAutoProxyDll)(LPSTR lpszMime,DWORD dwReserved);
typedef WINBOOL (__attribute__((__stdcall__)) *pfnInternetGetProxyInfo)(LPCSTR lpszUrl,DWORD dwUrlLength,LPSTR lpszUrlHostName,DWORD dwUrlHostNameLength,LPSTR *lplpszProxyHostName,LPDWORD lpdwProxyHostNameLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetConnectedStateEx(LPDWORD lpdwFlags,LPSTR lpszConnectionName,DWORD dwNameLen,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetInitializeAutoProxyDll(DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetDeInitializeAutoProxyDll(LPSTR lpszMime,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetProxyInfo(LPCSTR lpszUrl,DWORD dwUrlLength,LPSTR lpszUrlHostName,DWORD dwUrlHostNameLength,LPSTR *lplpszProxyHostName,LPDWORD lpdwProxyHostNameLength);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) DetectAutoProxyUrl(LPSTR lpszAutoProxyUrl,DWORD dwAutoProxyUrlLength,DWORD dwDetectFlags);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) CreateMD5SSOHash(PWSTR pszChallengeInfo,PWSTR pwszRealm,PWSTR pwszTarget,PBYTE pbHexHash);
typedef DWORD (__attribute__((__stdcall__)) *PFN_DIAL_HANDLER) (HWND,LPCSTR,DWORD,LPDWORD);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetDialState(LPCSTR lpszConnectoid,DWORD dwState,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetDialStateA(LPCSTR lpszConnectoid,DWORD dwState,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetDialStateW(LPCWSTR lpszConnectoid,DWORD dwState,DWORD dwReserved);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetPerSiteCookieDecisionA(LPCSTR pchHostName,DWORD dwDecision);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetSetPerSiteCookieDecisionW(LPCWSTR pchHostName,DWORD dwDecision);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetPerSiteCookieDecisionA(LPCSTR pchHostName,unsigned long *pResult);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetGetPerSiteCookieDecisionW(LPCWSTR pchHostName,unsigned long *pResult);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetClearAllPerSiteCookieDecisions();
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetEnumPerSiteCookieDecisionA(LPSTR pszSiteName,unsigned long *pcSiteNameSize,unsigned long *pdwDecision,unsigned long dwIndex);
extern __attribute__((dllimport)) WINBOOL __attribute__((__stdcall__)) InternetEnumPerSiteCookieDecisionW(LPWSTR pszSiteName,unsigned long *pcSiteNameSize,unsigned long *pdwDecision,unsigned long dwIndex);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) PrivacySetZonePreferenceW(DWORD dwZone,DWORD dwType,DWORD dwTemplate,LPCWSTR pszPreference);
extern __attribute__((dllimport)) DWORD __attribute__((__stdcall__)) PrivacyGetZonePreferenceW(DWORD dwZone,DWORD dwType,LPDWORD pdwTemplate,LPWSTR pszBuffer,LPDWORD pdwBufferLength);
#pragma pack(pop)
HANDLE __attribute__((__stdcall__)) CreateToolhelp32Snapshot(DWORD dwFlags,DWORD th32ProcessID);
typedef struct tagHEAPLIST32 {
SIZE_T dwSize;
DWORD th32ProcessID;
ULONG_PTR th32HeapID;
DWORD dwFlags;
} HEAPLIST32;
typedef HEAPLIST32 *PHEAPLIST32;
typedef HEAPLIST32 *LPHEAPLIST32;
WINBOOL __attribute__((__stdcall__)) Heap32ListFirst(HANDLE hSnapshot,LPHEAPLIST32 lphl);
WINBOOL __attribute__((__stdcall__)) Heap32ListNext(HANDLE hSnapshot,LPHEAPLIST32 lphl);
typedef struct tagHEAPENTRY32 {
SIZE_T dwSize;
HANDLE hHandle;
ULONG_PTR dwAddress;
SIZE_T dwBlockSize;
DWORD dwFlags;
DWORD dwLockCount;
DWORD dwResvd;
DWORD th32ProcessID;
ULONG_PTR th32HeapID;
} HEAPENTRY32;
typedef HEAPENTRY32 *PHEAPENTRY32;
typedef HEAPENTRY32 *LPHEAPENTRY32;
WINBOOL __attribute__((__stdcall__)) Heap32First(LPHEAPENTRY32 lphe,DWORD th32ProcessID,ULONG_PTR th32HeapID);
WINBOOL __attribute__((__stdcall__)) Heap32Next(LPHEAPENTRY32 lphe);
WINBOOL __attribute__((__stdcall__)) Toolhelp32ReadProcessMemory(DWORD th32ProcessID,LPCVOID lpBaseAddress,LPVOID lpBuffer,SIZE_T cbRead,SIZE_T *lpNumberOfBytesRead);
typedef struct tagPROCESSENTRY32W {
DWORD dwSize;
DWORD cntUsage;
DWORD th32ProcessID;
ULONG_PTR th32DefaultHeapID;
DWORD th32ModuleID;
DWORD cntThreads;
DWORD th32ParentProcessID;
LONG pcPriClassBase;
DWORD dwFlags;
WCHAR szExeFile[260];
} PROCESSENTRY32W;
typedef PROCESSENTRY32W *PPROCESSENTRY32W;
typedef PROCESSENTRY32W *LPPROCESSENTRY32W;
WINBOOL __attribute__((__stdcall__)) Process32FirstW(HANDLE hSnapshot,LPPROCESSENTRY32W lppe);
WINBOOL __attribute__((__stdcall__)) Process32NextW(HANDLE hSnapshot,LPPROCESSENTRY32W lppe);
typedef struct tagPROCESSENTRY32 {
DWORD dwSize;
DWORD cntUsage;
DWORD th32ProcessID;
ULONG_PTR th32DefaultHeapID;
DWORD th32ModuleID;
DWORD cntThreads;
DWORD th32ParentProcessID;
LONG pcPriClassBase;
DWORD dwFlags;
CHAR szExeFile[260];
} PROCESSENTRY32;
typedef PROCESSENTRY32 *PPROCESSENTRY32;
typedef PROCESSENTRY32 *LPPROCESSENTRY32;
WINBOOL __attribute__((__stdcall__)) Process32First(HANDLE hSnapshot,LPPROCESSENTRY32 lppe);
WINBOOL __attribute__((__stdcall__)) Process32Next(HANDLE hSnapshot,LPPROCESSENTRY32 lppe);
typedef struct tagTHREADENTRY32 {
DWORD dwSize;
DWORD cntUsage;
DWORD th32ThreadID;
DWORD th32OwnerProcessID;
LONG tpBasePri;
LONG tpDeltaPri;
DWORD dwFlags;
} THREADENTRY32;
typedef THREADENTRY32 *PTHREADENTRY32;
typedef THREADENTRY32 *LPTHREADENTRY32;
WINBOOL __attribute__((__stdcall__)) Thread32First(HANDLE hSnapshot,LPTHREADENTRY32 lpte);
WINBOOL __attribute__((__stdcall__)) Thread32Next(HANDLE hSnapshot,LPTHREADENTRY32 lpte);
typedef struct tagMODULEENTRY32W {
DWORD dwSize;
DWORD th32ModuleID;
DWORD th32ProcessID;
DWORD GlblcntUsage;
DWORD ProccntUsage;
BYTE *modBaseAddr;
DWORD modBaseSize;
HMODULE hModule;
WCHAR szModule[255 + 1];
WCHAR szExePath[260];
} MODULEENTRY32W;
typedef MODULEENTRY32W *PMODULEENTRY32W;
typedef MODULEENTRY32W *LPMODULEENTRY32W;
WINBOOL __attribute__((__stdcall__)) Module32FirstW(HANDLE hSnapshot,LPMODULEENTRY32W lpme);
WINBOOL __attribute__((__stdcall__)) Module32NextW(HANDLE hSnapshot,LPMODULEENTRY32W lpme);
typedef struct tagMODULEENTRY32 {
DWORD dwSize;
DWORD th32ModuleID;
DWORD th32ProcessID;
DWORD GlblcntUsage;
DWORD ProccntUsage;
BYTE *modBaseAddr;
DWORD modBaseSize;
HMODULE hModule;
char szModule[255 + 1];
char szExePath[260];
} MODULEENTRY32;
typedef MODULEENTRY32 *PMODULEENTRY32;
typedef MODULEENTRY32 *LPMODULEENTRY32;
WINBOOL __attribute__((__stdcall__)) Module32First(HANDLE hSnapshot,LPMODULEENTRY32 lpme);
WINBOOL __attribute__((__stdcall__)) Module32Next(HANDLE hSnapshot,LPMODULEENTRY32 lpme);
WINBOOL __attribute__((__stdcall__)) EnumProcesses(DWORD *lpidProcess,DWORD cb,DWORD *cbNeeded);
WINBOOL __attribute__((__stdcall__)) EnumProcessModules(HANDLE hProcess,HMODULE *lphModule,DWORD cb,LPDWORD lpcbNeeded);
DWORD __attribute__((__stdcall__)) GetModuleBaseNameA(HANDLE hProcess,HMODULE hModule,LPSTR lpBaseName,DWORD nSize);
DWORD __attribute__((__stdcall__)) GetModuleBaseNameW(HANDLE hProcess,HMODULE hModule,LPWSTR lpBaseName,DWORD nSize);
DWORD __attribute__((__stdcall__)) GetModuleFileNameExA(HANDLE hProcess,HMODULE hModule,LPSTR lpFilename,DWORD nSize);
DWORD __attribute__((__stdcall__)) GetModuleFileNameExW(HANDLE hProcess,HMODULE hModule,LPWSTR lpFilename,DWORD nSize);
typedef struct _MODULEINFO {
LPVOID lpBaseOfDll;
DWORD SizeOfImage;
LPVOID EntryPoint;
} MODULEINFO,*LPMODULEINFO;
WINBOOL __attribute__((__stdcall__)) GetModuleInformation(HANDLE hProcess,HMODULE hModule,LPMODULEINFO lpmodinfo,DWORD cb);
WINBOOL __attribute__((__stdcall__)) EmptyWorkingSet(HANDLE hProcess);
WINBOOL __attribute__((__stdcall__)) QueryWorkingSet(HANDLE hProcess,PVOID pv,DWORD cb);
WINBOOL __attribute__((__stdcall__)) QueryWorkingSetEx(HANDLE hProcess,PVOID pv,DWORD cb);
WINBOOL __attribute__((__stdcall__)) InitializeProcessForWsWatch(HANDLE hProcess);
typedef struct _PSAPI_WS_WATCH_INFORMATION {
LPVOID FaultingPc;
LPVOID FaultingVa;
} PSAPI_WS_WATCH_INFORMATION,*PPSAPI_WS_WATCH_INFORMATION;
WINBOOL __attribute__((__stdcall__)) GetWsChanges(HANDLE hProcess,PPSAPI_WS_WATCH_INFORMATION lpWatchInfo,DWORD cb);
DWORD __attribute__((__stdcall__)) GetMappedFileNameW(HANDLE hProcess,LPVOID lpv,LPWSTR lpFilename,DWORD nSize);
DWORD __attribute__((__stdcall__)) GetMappedFileNameA(HANDLE hProcess,LPVOID lpv,LPSTR lpFilename,DWORD nSize);
WINBOOL __attribute__((__stdcall__)) EnumDeviceDrivers(LPVOID *lpImageBase,DWORD cb,LPDWORD lpcbNeeded);
DWORD __attribute__((__stdcall__)) GetDeviceDriverBaseNameA(LPVOID ImageBase,LPSTR lpBaseName,DWORD nSize);
DWORD __attribute__((__stdcall__)) GetDeviceDriverBaseNameW(LPVOID ImageBase,LPWSTR lpBaseName,DWORD nSize);
DWORD __attribute__((__stdcall__)) GetDeviceDriverFileNameA(LPVOID ImageBase,LPSTR lpFilename,DWORD nSize);
DWORD __attribute__((__stdcall__)) GetDeviceDriverFileNameW(LPVOID ImageBase,LPWSTR lpFilename,DWORD nSize);
typedef struct _PROCESS_MEMORY_COUNTERS {
DWORD cb;
DWORD PageFaultCount;
SIZE_T PeakWorkingSetSize;
SIZE_T WorkingSetSize;
SIZE_T QuotaPeakPagedPoolUsage;
SIZE_T QuotaPagedPoolUsage;
SIZE_T QuotaPeakNonPagedPoolUsage;
SIZE_T QuotaNonPagedPoolUsage;
SIZE_T PagefileUsage;
SIZE_T PeakPagefileUsage;
} PROCESS_MEMORY_COUNTERS;
typedef PROCESS_MEMORY_COUNTERS *PPROCESS_MEMORY_COUNTERS;
typedef struct _PROCESS_MEMORY_COUNTERS_EX {
DWORD cb;
DWORD PageFaultCount;
SIZE_T PeakWorkingSetSize;
SIZE_T WorkingSetSize;
SIZE_T QuotaPeakPagedPoolUsage;
SIZE_T QuotaPagedPoolUsage;
SIZE_T QuotaPeakNonPagedPoolUsage;
SIZE_T QuotaNonPagedPoolUsage;
SIZE_T PagefileUsage;
SIZE_T PeakPagefileUsage;
SIZE_T PrivateUsage;
} PROCESS_MEMORY_COUNTERS_EX;
typedef PROCESS_MEMORY_COUNTERS_EX *PPROCESS_MEMORY_COUNTERS_EX;
WINBOOL __attribute__((__stdcall__)) GetProcessMemoryInfo(HANDLE Process,PPROCESS_MEMORY_COUNTERS ppsmemCounters,DWORD cb);
typedef struct _PERFORMANCE_INFORMATION {
DWORD cb;
SIZE_T CommitTotal;
SIZE_T CommitLimit;
SIZE_T CommitPeak;
SIZE_T PhysicalTotal;
SIZE_T PhysicalAvailable;
SIZE_T SystemCache;
SIZE_T KernelTotal;
SIZE_T KernelPaged;
SIZE_T KernelNonpaged;
SIZE_T PageSize;
DWORD HandleCount;
DWORD ProcessCount;
DWORD ThreadCount;
} PERFORMANCE_INFORMATION,*PPERFORMANCE_INFORMATION,PERFORMACE_INFORMATION,*PPERFORMACE_INFORMATION;
WINBOOL __attribute__((__stdcall__)) GetPerformanceInfo (PPERFORMACE_INFORMATION pPerformanceInformation,DWORD cb);
typedef struct _ENUM_PAGE_FILE_INFORMATION {
DWORD cb;
DWORD Reserved;
SIZE_T TotalSize;
SIZE_T TotalInUse;
SIZE_T PeakUsage;
} ENUM_PAGE_FILE_INFORMATION,*PENUM_PAGE_FILE_INFORMATION;
typedef WINBOOL (*PENUM_PAGE_FILE_CALLBACKW) (LPVOID pContext,PENUM_PAGE_FILE_INFORMATION pPageFileInfo,LPCWSTR lpFilename);
typedef WINBOOL (*PENUM_PAGE_FILE_CALLBACKA) (LPVOID pContext,PENUM_PAGE_FILE_INFORMATION pPageFileInfo,LPCSTR lpFilename);
WINBOOL __attribute__((__stdcall__)) EnumPageFilesW (PENUM_PAGE_FILE_CALLBACKW pCallBackRoutine,LPVOID pContext);
WINBOOL __attribute__((__stdcall__)) EnumPageFilesA (PENUM_PAGE_FILE_CALLBACKA pCallBackRoutine,LPVOID pContext);
DWORD __attribute__((__stdcall__)) GetProcessImageFileNameA(HANDLE hProcess,LPSTR lpImageFileName,DWORD nSize);
DWORD __attribute__((__stdcall__)) GetProcessImageFileNameW(HANDLE hProcess,LPWSTR lpImageFileName,DWORD nSize);
typedef struct _PSAPI_WS_WATCH_INFORMATION_EX {
PSAPI_WS_WATCH_INFORMATION BasicInfo;
ULONG_PTR FaultingThreadId;
ULONG_PTR Flags;
} PSAPI_WS_WATCH_INFORMATION_EX, *PPSAPI_WS_WATCH_INFORMATION_EX;
WINBOOL __attribute__((__stdcall__)) GetWsChangesEx(
HANDLE hProcess,
PPSAPI_WS_WATCH_INFORMATION_EX lpWatchInfoEx,
DWORD cb
);
WINBOOL __attribute__((__stdcall__)) EnumProcessModulesEx(
HANDLE hProcess,
HMODULE *lphModule,
DWORD cb,
LPDWORD lpcbNeeded,
DWORD dwFilterFlag
);
typedef union _PSAPI_WORKING_SET_BLOCK {
ULONG_PTR Flags;
__extension__ struct {
ULONG_PTR Protection :5;
ULONG_PTR ShareCount :3;
ULONG_PTR Shared :1;
ULONG_PTR Reserved :3;
ULONG_PTR VirtualPage :20;
} ;
} PSAPI_WORKING_SET_BLOCK, *PPSAPI_WORKING_SET_BLOCK;
typedef struct _PSAPI_WORKING_SET_INFORMATION {
ULONG_PTR NumberOfEntries;
PSAPI_WORKING_SET_BLOCK WorkingSetInfo[1];
} PSAPI_WORKING_SET_INFORMATION, *PPSAPI_WORKING_SET_INFORMATION;
typedef union _PSAPI_WORKING_SET_EX_BLOCK {
ULONG_PTR Flags;
__extension__ struct {
ULONG_PTR Valid :1;
ULONG_PTR ShareCount :3;
ULONG_PTR Win32Protection :11;
ULONG_PTR Shared :1;
ULONG_PTR Node :6;
ULONG_PTR Locked :1;
ULONG_PTR LargePage :1;
} ;
} PSAPI_WORKING_SET_EX_BLOCK, *PPSAPI_WORKING_SET_EX_BLOCK;
typedef struct _PSAPI_WORKING_SET_EX_INFORMATION {
PVOID VirtualAddress;
PSAPI_WORKING_SET_EX_BLOCK VirtualAttributes;
} PSAPI_WORKING_SET_EX_INFORMATION, *PPSAPI_WORKING_SET_EX_INFORMATION;
typedef struct in6_addr {
union {
u_char Byte[16];
u_short Word[8];
} u;
} IN6_ADDR, *PIN6_ADDR, *LPIN6_ADDR;
typedef struct IEnumConnections IEnumConnections;
typedef struct IConnectionPoint IConnectionPoint;
typedef struct IEnumConnectionPoints IEnumConnectionPoints;
typedef struct IConnectionPointContainer IConnectionPointContainer;
typedef struct IClassFactory2 IClassFactory2;
typedef struct IProvideClassInfo IProvideClassInfo;
typedef struct IProvideClassInfo2 IProvideClassInfo2;
typedef struct IProvideMultipleClassInfo IProvideMultipleClassInfo;
typedef struct IOleControl IOleControl;
typedef struct IOleControlSite IOleControlSite;
typedef struct IPropertyPage IPropertyPage;
typedef struct IPropertyPage2 IPropertyPage2;
typedef struct IPropertyPageSite IPropertyPageSite;
typedef struct IPropertyNotifySink IPropertyNotifySink;
typedef struct ISpecifyPropertyPages ISpecifyPropertyPages;
typedef struct IPersistMemory IPersistMemory;
typedef struct IPersistStreamInit IPersistStreamInit;
typedef struct IPersistPropertyBag IPersistPropertyBag;
typedef struct ISimpleFrameSite ISimpleFrameSite;
typedef struct IFont IFont;
typedef struct IPicture IPicture;
typedef struct IPicture2 IPicture2;
typedef struct IFontEventsDisp IFontEventsDisp;
typedef struct IFontDisp IFontDisp;
typedef struct IPictureDisp IPictureDisp;
typedef struct IOleInPlaceObjectWindowless IOleInPlaceObjectWindowless;
typedef struct IOleInPlaceSiteEx IOleInPlaceSiteEx;
typedef struct IOleInPlaceSiteWindowless IOleInPlaceSiteWindowless;
typedef struct IViewObjectEx IViewObjectEx;
typedef struct IOleUndoUnit IOleUndoUnit;
typedef struct IOleParentUndoUnit IOleParentUndoUnit;
typedef struct IEnumOleUndoUnits IEnumOleUndoUnits;
typedef struct IOleUndoManager IOleUndoManager;
typedef struct IPointerInactive IPointerInactive;
typedef struct IObjectWithSite IObjectWithSite;
typedef struct IPerPropertyBrowsing IPerPropertyBrowsing;
typedef struct IPropertyBag2 IPropertyBag2;
typedef struct IPersistPropertyBag2 IPersistPropertyBag2;
typedef struct IAdviseSinkEx IAdviseSinkEx;
typedef struct IQuickActivate IQuickActivate;
extern RPC_IF_HANDLE IOleControlTypes_v1_0_c_ifspec;
extern RPC_IF_HANDLE IOleControlTypes_v1_0_s_ifspec;
typedef enum tagUASFLAGS {
UAS_NORMAL = 0x0,
UAS_BLOCKED = 0x1,
UAS_NOPARENTENABLE = 0x2,
UAS_MASK = 0x3
} UASFLAGS;
typedef enum tagREADYSTATE {
READYSTATE_UNINITIALIZED = 0,
READYSTATE_LOADING = 1,
READYSTATE_LOADED = 2,
READYSTATE_INTERACTIVE = 3,
READYSTATE_COMPLETE = 4
} READYSTATE;
typedef IEnumConnections *PENUMCONNECTIONS;
typedef IEnumConnections *LPENUMCONNECTIONS;
typedef struct tagCONNECTDATA {
IUnknown *pUnk;
DWORD dwCookie;
} CONNECTDATA;
typedef struct tagCONNECTDATA *PCONNECTDATA;
typedef struct tagCONNECTDATA *LPCONNECTDATA;
extern const GUID IID_IEnumConnections;
typedef struct IEnumConnectionsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumConnections *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumConnections *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumConnections *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumConnections *This,
ULONG cConnections,
LPCONNECTDATA rgcd,
ULONG *pcFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumConnections *This,
ULONG cConnections);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumConnections *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumConnections *This,
IEnumConnections **ppEnum);
} IEnumConnectionsVtbl;
struct IEnumConnections {
IEnumConnectionsVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumConnections_RemoteNext_Proxy(
IEnumConnections* This,
ULONG cConnections,
LPCONNECTDATA rgcd,
ULONG *pcFetched);
void __attribute__((__stdcall__)) IEnumConnections_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumConnections_Next_Proxy(
IEnumConnections* This,
ULONG cConnections,
LPCONNECTDATA rgcd,
ULONG *pcFetched);
HRESULT __attribute__((__stdcall__)) IEnumConnections_Next_Stub(
IEnumConnections* This,
ULONG cConnections,
LPCONNECTDATA rgcd,
ULONG *pcFetched);
typedef IConnectionPoint *PCONNECTIONPOINT;
typedef IConnectionPoint *LPCONNECTIONPOINT;
extern const GUID IID_IConnectionPoint;
typedef struct IConnectionPointVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IConnectionPoint *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IConnectionPoint *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IConnectionPoint *This);
HRESULT (__attribute__((__stdcall__)) *GetConnectionInterface)(
IConnectionPoint *This,
IID *pIID);
HRESULT (__attribute__((__stdcall__)) *GetConnectionPointContainer)(
IConnectionPoint *This,
IConnectionPointContainer **ppCPC);
HRESULT (__attribute__((__stdcall__)) *Advise)(
IConnectionPoint *This,
IUnknown *pUnkSink,
DWORD *pdwCookie);
HRESULT (__attribute__((__stdcall__)) *Unadvise)(
IConnectionPoint *This,
DWORD dwCookie);
HRESULT (__attribute__((__stdcall__)) *EnumConnections)(
IConnectionPoint *This,
IEnumConnections **ppEnum);
} IConnectionPointVtbl;
struct IConnectionPoint {
IConnectionPointVtbl* lpVtbl;
};
typedef IEnumConnectionPoints *PENUMCONNECTIONPOINTS;
typedef IEnumConnectionPoints *LPENUMCONNECTIONPOINTS;
extern const GUID IID_IEnumConnectionPoints;
typedef struct IEnumConnectionPointsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumConnectionPoints *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumConnectionPoints *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumConnectionPoints *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumConnectionPoints *This,
ULONG cConnections,
LPCONNECTIONPOINT *ppCP,
ULONG *pcFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumConnectionPoints *This,
ULONG cConnections);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumConnectionPoints *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumConnectionPoints *This,
IEnumConnectionPoints **ppEnum);
} IEnumConnectionPointsVtbl;
struct IEnumConnectionPoints {
IEnumConnectionPointsVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumConnectionPoints_RemoteNext_Proxy(
IEnumConnectionPoints* This,
ULONG cConnections,
LPCONNECTIONPOINT *ppCP,
ULONG *pcFetched);
void __attribute__((__stdcall__)) IEnumConnectionPoints_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumConnectionPoints_Next_Proxy(
IEnumConnectionPoints* This,
ULONG cConnections,
LPCONNECTIONPOINT *ppCP,
ULONG *pcFetched);
HRESULT __attribute__((__stdcall__)) IEnumConnectionPoints_Next_Stub(
IEnumConnectionPoints* This,
ULONG cConnections,
LPCONNECTIONPOINT *ppCP,
ULONG *pcFetched);
typedef IConnectionPointContainer *PCONNECTIONPOINTCONTAINER;
typedef IConnectionPointContainer *LPCONNECTIONPOINTCONTAINER;
extern const GUID IID_IConnectionPointContainer;
typedef struct IConnectionPointContainerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IConnectionPointContainer *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IConnectionPointContainer *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IConnectionPointContainer *This);
HRESULT (__attribute__((__stdcall__)) *EnumConnectionPoints)(
IConnectionPointContainer *This,
IEnumConnectionPoints **ppEnum);
HRESULT (__attribute__((__stdcall__)) *FindConnectionPoint)(
IConnectionPointContainer *This,
const IID *const riid,
IConnectionPoint **ppCP);
} IConnectionPointContainerVtbl;
struct IConnectionPointContainer {
IConnectionPointContainerVtbl* lpVtbl;
};
typedef IClassFactory2 *LPCLASSFACTORY2;
typedef struct tagLICINFO {
LONG cbLicInfo;
WINBOOL fRuntimeKeyAvail;
WINBOOL fLicVerified;
} LICINFO;
typedef struct tagLICINFO *LPLICINFO;
extern const GUID IID_IClassFactory2;
typedef struct IClassFactory2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IClassFactory2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IClassFactory2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IClassFactory2 *This);
HRESULT (__attribute__((__stdcall__)) *CreateInstance)(
IClassFactory2 *This,
IUnknown *pUnkOuter,
const IID *const riid,
void **ppvObject);
HRESULT (__attribute__((__stdcall__)) *LockServer)(
IClassFactory2 *This,
WINBOOL fLock);
HRESULT (__attribute__((__stdcall__)) *GetLicInfo)(
IClassFactory2 *This,
LICINFO *pLicInfo);
HRESULT (__attribute__((__stdcall__)) *RequestLicKey)(
IClassFactory2 *This,
DWORD dwReserved,
BSTR *pBstrKey);
HRESULT (__attribute__((__stdcall__)) *CreateInstanceLic)(
IClassFactory2 *This,
IUnknown *pUnkOuter,
IUnknown *pUnkReserved,
const IID *const riid,
BSTR bstrKey,
PVOID *ppvObj);
} IClassFactory2Vtbl;
struct IClassFactory2 {
IClassFactory2Vtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IClassFactory2_RemoteCreateInstanceLic_Proxy(
IClassFactory2* This,
const IID *const riid,
BSTR bstrKey,
IUnknown **ppvObj);
void __attribute__((__stdcall__)) IClassFactory2_RemoteCreateInstanceLic_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IClassFactory2_CreateInstanceLic_Proxy(
IClassFactory2* This,
IUnknown *pUnkOuter,
IUnknown *pUnkReserved,
const IID *const riid,
BSTR bstrKey,
PVOID *ppvObj);
HRESULT __attribute__((__stdcall__)) IClassFactory2_CreateInstanceLic_Stub(
IClassFactory2* This,
const IID *const riid,
BSTR bstrKey,
IUnknown **ppvObj);
typedef IProvideClassInfo *LPPROVIDECLASSINFO;
extern const GUID IID_IProvideClassInfo;
typedef struct IProvideClassInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IProvideClassInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IProvideClassInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IProvideClassInfo *This);
HRESULT (__attribute__((__stdcall__)) *GetClassInfoA)(
IProvideClassInfo *This,
ITypeInfo **ppTI);
} IProvideClassInfoVtbl;
struct IProvideClassInfo {
IProvideClassInfoVtbl* lpVtbl;
};
typedef IProvideClassInfo2 *LPPROVIDECLASSINFO2;
typedef enum tagGUIDKIND {
GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1
} GUIDKIND;
extern const GUID IID_IProvideClassInfo2;
typedef struct IProvideClassInfo2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IProvideClassInfo2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IProvideClassInfo2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IProvideClassInfo2 *This);
HRESULT (__attribute__((__stdcall__)) *GetClassInfoA)(
IProvideClassInfo2 *This,
ITypeInfo **ppTI);
HRESULT (__attribute__((__stdcall__)) *GetGUID)(
IProvideClassInfo2 *This,
DWORD dwGuidKind,
GUID *pGUID);
} IProvideClassInfo2Vtbl;
struct IProvideClassInfo2 {
IProvideClassInfo2Vtbl* lpVtbl;
};
typedef IProvideMultipleClassInfo *LPPROVIDEMULTIPLECLASSINFO;
extern const GUID IID_IProvideMultipleClassInfo;
typedef struct IProvideMultipleClassInfoVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IProvideMultipleClassInfo *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IProvideMultipleClassInfo *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IProvideMultipleClassInfo *This);
HRESULT (__attribute__((__stdcall__)) *GetClassInfoA)(
IProvideMultipleClassInfo *This,
ITypeInfo **ppTI);
HRESULT (__attribute__((__stdcall__)) *GetGUID)(
IProvideMultipleClassInfo *This,
DWORD dwGuidKind,
GUID *pGUID);
HRESULT (__attribute__((__stdcall__)) *GetMultiTypeInfoCount)(
IProvideMultipleClassInfo *This,
ULONG *pcti);
HRESULT (__attribute__((__stdcall__)) *GetInfoOfIndex)(
IProvideMultipleClassInfo *This,
ULONG iti,
DWORD dwFlags,
ITypeInfo **pptiCoClass,
DWORD *pdwTIFlags,
ULONG *pcdispidReserved,
IID *piidPrimary,
IID *piidSource);
} IProvideMultipleClassInfoVtbl;
struct IProvideMultipleClassInfo {
IProvideMultipleClassInfoVtbl* lpVtbl;
};
typedef IOleControl *LPOLECONTROL;
typedef struct tagCONTROLINFO {
ULONG cb;
HACCEL hAccel;
USHORT cAccel;
DWORD dwFlags;
} CONTROLINFO;
typedef struct tagCONTROLINFO *LPCONTROLINFO;
typedef enum tagCTRLINFO {
CTRLINFO_EATS_RETURN = 1,
CTRLINFO_EATS_ESCAPE = 2
} CTRLINFO;
extern const GUID IID_IOleControl;
typedef struct IOleControlVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleControl *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleControl *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleControl *This);
HRESULT (__attribute__((__stdcall__)) *GetControlInfo)(
IOleControl *This,
CONTROLINFO *pCI);
HRESULT (__attribute__((__stdcall__)) *OnMnemonic)(
IOleControl *This,
MSG *pMsg);
HRESULT (__attribute__((__stdcall__)) *OnAmbientPropertyChange)(
IOleControl *This,
DISPID dispID);
HRESULT (__attribute__((__stdcall__)) *FreezeEvents)(
IOleControl *This,
WINBOOL bFreeze);
} IOleControlVtbl;
struct IOleControl {
IOleControlVtbl* lpVtbl;
};
typedef IOleControlSite *LPOLECONTROLSITE;
typedef struct tagPOINTF {
FLOAT x;
FLOAT y;
} POINTF;
typedef struct tagPOINTF *LPPOINTF;
typedef enum tagXFORMCOORDS {
XFORMCOORDS_POSITION = 0x1,
XFORMCOORDS_SIZE = 0x2,
XFORMCOORDS_HIMETRICTOCONTAINER = 0x4,
XFORMCOORDS_CONTAINERTOHIMETRIC = 0x8,
XFORMCOORDS_EVENTCOMPAT = 0x10
} XFORMCOORDS;
extern const GUID IID_IOleControlSite;
typedef struct IOleControlSiteVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleControlSite *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleControlSite *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleControlSite *This);
HRESULT (__attribute__((__stdcall__)) *OnControlInfoChanged)(
IOleControlSite *This);
HRESULT (__attribute__((__stdcall__)) *LockInPlaceActive)(
IOleControlSite *This,
WINBOOL fLock);
HRESULT (__attribute__((__stdcall__)) *GetExtendedControl)(
IOleControlSite *This,
IDispatch **ppDisp);
HRESULT (__attribute__((__stdcall__)) *TransformCoords)(
IOleControlSite *This,
POINTL *pPtlHimetric,
POINTF *pPtfContainer,
DWORD dwFlags);
HRESULT (__attribute__((__stdcall__)) *TranslateAcceleratorA)(
IOleControlSite *This,
MSG *pMsg,
DWORD grfModifiers);
HRESULT (__attribute__((__stdcall__)) *OnFocus)(
IOleControlSite *This,
WINBOOL fGotFocus);
HRESULT (__attribute__((__stdcall__)) *ShowPropertyFrame)(
IOleControlSite *This);
} IOleControlSiteVtbl;
struct IOleControlSite {
IOleControlSiteVtbl* lpVtbl;
};
typedef IPropertyPage *LPPROPERTYPAGE;
typedef struct tagPROPPAGEINFO {
ULONG cb;
LPOLESTR pszTitle;
SIZE size;
LPOLESTR pszDocString;
LPOLESTR pszHelpFile;
DWORD dwHelpContext;
} PROPPAGEINFO;
typedef struct tagPROPPAGEINFO *LPPROPPAGEINFO;
extern const GUID IID_IPropertyPage;
typedef struct IPropertyPageVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPropertyPage *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPropertyPage *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPropertyPage *This);
HRESULT (__attribute__((__stdcall__)) *SetPageSite)(
IPropertyPage *This,
IPropertyPageSite *pPageSite);
HRESULT (__attribute__((__stdcall__)) *Activate)(
IPropertyPage *This,
HWND hWndParent,
LPCRECT pRect,
WINBOOL bModal);
HRESULT (__attribute__((__stdcall__)) *Deactivate)(
IPropertyPage *This);
HRESULT (__attribute__((__stdcall__)) *GetPageInfo)(
IPropertyPage *This,
PROPPAGEINFO *pPageInfo);
HRESULT (__attribute__((__stdcall__)) *SetObjects)(
IPropertyPage *This,
ULONG cObjects,
IUnknown **ppUnk);
HRESULT (__attribute__((__stdcall__)) *Show)(
IPropertyPage *This,
UINT nCmdShow);
HRESULT (__attribute__((__stdcall__)) *Move)(
IPropertyPage *This,
LPCRECT pRect);
HRESULT (__attribute__((__stdcall__)) *IsPageDirty)(
IPropertyPage *This);
HRESULT (__attribute__((__stdcall__)) *Apply)(
IPropertyPage *This);
HRESULT (__attribute__((__stdcall__)) *Help)(
IPropertyPage *This,
LPCOLESTR pszHelpDir);
HRESULT (__attribute__((__stdcall__)) *TranslateAcceleratorA)(
IPropertyPage *This,
MSG *pMsg);
} IPropertyPageVtbl;
struct IPropertyPage {
IPropertyPageVtbl* lpVtbl;
};
typedef IPropertyPage2 *LPPROPERTYPAGE2;
extern const GUID IID_IPropertyPage2;
typedef struct IPropertyPage2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPropertyPage2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPropertyPage2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPropertyPage2 *This);
HRESULT (__attribute__((__stdcall__)) *SetPageSite)(
IPropertyPage2 *This,
IPropertyPageSite *pPageSite);
HRESULT (__attribute__((__stdcall__)) *Activate)(
IPropertyPage2 *This,
HWND hWndParent,
LPCRECT pRect,
WINBOOL bModal);
HRESULT (__attribute__((__stdcall__)) *Deactivate)(
IPropertyPage2 *This);
HRESULT (__attribute__((__stdcall__)) *GetPageInfo)(
IPropertyPage2 *This,
PROPPAGEINFO *pPageInfo);
HRESULT (__attribute__((__stdcall__)) *SetObjects)(
IPropertyPage2 *This,
ULONG cObjects,
IUnknown **ppUnk);
HRESULT (__attribute__((__stdcall__)) *Show)(
IPropertyPage2 *This,
UINT nCmdShow);
HRESULT (__attribute__((__stdcall__)) *Move)(
IPropertyPage2 *This,
LPCRECT pRect);
HRESULT (__attribute__((__stdcall__)) *IsPageDirty)(
IPropertyPage2 *This);
HRESULT (__attribute__((__stdcall__)) *Apply)(
IPropertyPage2 *This);
HRESULT (__attribute__((__stdcall__)) *Help)(
IPropertyPage2 *This,
LPCOLESTR pszHelpDir);
HRESULT (__attribute__((__stdcall__)) *TranslateAcceleratorA)(
IPropertyPage2 *This,
MSG *pMsg);
HRESULT (__attribute__((__stdcall__)) *EditProperty)(
IPropertyPage2 *This,
DISPID dispID);
} IPropertyPage2Vtbl;
struct IPropertyPage2 {
IPropertyPage2Vtbl* lpVtbl;
};
typedef IPropertyPageSite *LPPROPERTYPAGESITE;
typedef enum tagPROPPAGESTATUS {
PROPPAGESTATUS_DIRTY = 0x1,
PROPPAGESTATUS_VALIDATE = 0x2,
PROPPAGESTATUS_CLEAN = 0x4
} PROPPAGESTATUS;
extern const GUID IID_IPropertyPageSite;
typedef struct IPropertyPageSiteVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPropertyPageSite *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPropertyPageSite *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPropertyPageSite *This);
HRESULT (__attribute__((__stdcall__)) *OnStatusChange)(
IPropertyPageSite *This,
DWORD dwFlags);
HRESULT (__attribute__((__stdcall__)) *GetLocaleID)(
IPropertyPageSite *This,
LCID *pLocaleID);
HRESULT (__attribute__((__stdcall__)) *GetPageContainer)(
IPropertyPageSite *This,
IUnknown **ppUnk);
HRESULT (__attribute__((__stdcall__)) *TranslateAcceleratorA)(
IPropertyPageSite *This,
MSG *pMsg);
} IPropertyPageSiteVtbl;
struct IPropertyPageSite {
IPropertyPageSiteVtbl* lpVtbl;
};
typedef IPropertyNotifySink *LPPROPERTYNOTIFYSINK;
extern const GUID IID_IPropertyNotifySink;
typedef struct IPropertyNotifySinkVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPropertyNotifySink *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPropertyNotifySink *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPropertyNotifySink *This);
HRESULT (__attribute__((__stdcall__)) *OnChanged)(
IPropertyNotifySink *This,
DISPID dispID);
HRESULT (__attribute__((__stdcall__)) *OnRequestEdit)(
IPropertyNotifySink *This,
DISPID dispID);
} IPropertyNotifySinkVtbl;
struct IPropertyNotifySink {
IPropertyNotifySinkVtbl* lpVtbl;
};
typedef ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES;
typedef struct tagCAUUID {
ULONG cElems;
GUID *pElems;
} CAUUID;
typedef struct tagCAUUID *LPCAUUID;
extern const GUID IID_ISpecifyPropertyPages;
typedef struct ISpecifyPropertyPagesVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISpecifyPropertyPages *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISpecifyPropertyPages *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISpecifyPropertyPages *This);
HRESULT (__attribute__((__stdcall__)) *GetPages)(
ISpecifyPropertyPages *This,
CAUUID *pPages);
} ISpecifyPropertyPagesVtbl;
struct ISpecifyPropertyPages {
ISpecifyPropertyPagesVtbl* lpVtbl;
};
typedef IPersistMemory *LPPERSISTMEMORY;
extern const GUID IID_IPersistMemory;
typedef struct IPersistMemoryVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersistMemory *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersistMemory *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersistMemory *This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersistMemory *This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *IsDirty)(
IPersistMemory *This);
HRESULT (__attribute__((__stdcall__)) *Load)(
IPersistMemory *This,
LPVOID pMem,
ULONG cbSize);
HRESULT (__attribute__((__stdcall__)) *Save)(
IPersistMemory *This,
LPVOID pMem,
WINBOOL fClearDirty,
ULONG cbSize);
HRESULT (__attribute__((__stdcall__)) *GetSizeMax)(
IPersistMemory *This,
ULONG *pCbSize);
HRESULT (__attribute__((__stdcall__)) *InitNew)(
IPersistMemory *This);
} IPersistMemoryVtbl;
struct IPersistMemory {
IPersistMemoryVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IPersistMemory_RemoteLoad_Proxy(
IPersistMemory* This,
BYTE *pMem,
ULONG cbSize);
void __attribute__((__stdcall__)) IPersistMemory_RemoteLoad_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistMemory_RemoteSave_Proxy(
IPersistMemory* This,
BYTE *pMem,
WINBOOL fClearDirty,
ULONG cbSize);
void __attribute__((__stdcall__)) IPersistMemory_RemoteSave_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IPersistMemory_Load_Proxy(
IPersistMemory* This,
LPVOID pMem,
ULONG cbSize);
HRESULT __attribute__((__stdcall__)) IPersistMemory_Load_Stub(
IPersistMemory* This,
BYTE *pMem,
ULONG cbSize);
HRESULT __attribute__((__stdcall__)) IPersistMemory_Save_Proxy(
IPersistMemory* This,
LPVOID pMem,
WINBOOL fClearDirty,
ULONG cbSize);
HRESULT __attribute__((__stdcall__)) IPersistMemory_Save_Stub(
IPersistMemory* This,
BYTE *pMem,
WINBOOL fClearDirty,
ULONG cbSize);
typedef IPersistStreamInit *LPPERSISTSTREAMINIT;
extern const GUID IID_IPersistStreamInit;
typedef struct IPersistStreamInitVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersistStreamInit *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersistStreamInit *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersistStreamInit *This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersistStreamInit *This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *IsDirty)(
IPersistStreamInit *This);
HRESULT (__attribute__((__stdcall__)) *Load)(
IPersistStreamInit *This,
LPSTREAM pStm);
HRESULT (__attribute__((__stdcall__)) *Save)(
IPersistStreamInit *This,
LPSTREAM pStm,
WINBOOL fClearDirty);
HRESULT (__attribute__((__stdcall__)) *GetSizeMax)(
IPersistStreamInit *This,
ULARGE_INTEGER *pCbSize);
HRESULT (__attribute__((__stdcall__)) *InitNew)(
IPersistStreamInit *This);
} IPersistStreamInitVtbl;
struct IPersistStreamInit {
IPersistStreamInitVtbl* lpVtbl;
};
typedef IPersistPropertyBag *LPPERSISTPROPERTYBAG;
extern const GUID IID_IPersistPropertyBag;
typedef struct IPersistPropertyBagVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersistPropertyBag *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersistPropertyBag *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersistPropertyBag *This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersistPropertyBag *This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *InitNew)(
IPersistPropertyBag *This);
HRESULT (__attribute__((__stdcall__)) *Load)(
IPersistPropertyBag *This,
IPropertyBag *pPropBag,
IErrorLog *pErrorLog);
HRESULT (__attribute__((__stdcall__)) *Save)(
IPersistPropertyBag *This,
IPropertyBag *pPropBag,
WINBOOL fClearDirty,
WINBOOL fSaveAllProperties);
} IPersistPropertyBagVtbl;
struct IPersistPropertyBag {
IPersistPropertyBagVtbl* lpVtbl;
};
typedef ISimpleFrameSite *LPSIMPLEFRAMESITE;
extern const GUID IID_ISimpleFrameSite;
typedef struct ISimpleFrameSiteVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
ISimpleFrameSite *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
ISimpleFrameSite *This);
ULONG (__attribute__((__stdcall__)) *Release)(
ISimpleFrameSite *This);
HRESULT (__attribute__((__stdcall__)) *PreMessageFilter)(
ISimpleFrameSite *This,
HWND hWnd,
UINT msg,
WPARAM wp,
LPARAM lp,
LRESULT *plResult,
DWORD *pdwCookie);
HRESULT (__attribute__((__stdcall__)) *PostMessageFilter)(
ISimpleFrameSite *This,
HWND hWnd,
UINT msg,
WPARAM wp,
LPARAM lp,
LRESULT *plResult,
DWORD dwCookie);
} ISimpleFrameSiteVtbl;
struct ISimpleFrameSite {
ISimpleFrameSiteVtbl* lpVtbl;
};
typedef IFont *LPFONT;
typedef TEXTMETRICW TEXTMETRICOLE;
typedef TEXTMETRICOLE *LPTEXTMETRICOLE;
extern const GUID IID_IFont;
typedef struct IFontVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IFont *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IFont *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IFont *This);
HRESULT (__attribute__((__stdcall__)) *get_Name)(
IFont *This,
BSTR *pName);
HRESULT (__attribute__((__stdcall__)) *put_Name)(
IFont *This,
BSTR name);
HRESULT (__attribute__((__stdcall__)) *get_Size)(
IFont *This,
CY *pSize);
HRESULT (__attribute__((__stdcall__)) *put_Size)(
IFont *This,
CY size);
HRESULT (__attribute__((__stdcall__)) *get_Bold)(
IFont *This,
WINBOOL *pBold);
HRESULT (__attribute__((__stdcall__)) *put_Bold)(
IFont *This,
WINBOOL bold);
HRESULT (__attribute__((__stdcall__)) *get_Italic)(
IFont *This,
WINBOOL *pItalic);
HRESULT (__attribute__((__stdcall__)) *put_Italic)(
IFont *This,
WINBOOL italic);
HRESULT (__attribute__((__stdcall__)) *get_Underline)(
IFont *This,
WINBOOL *pUnderline);
HRESULT (__attribute__((__stdcall__)) *put_Underline)(
IFont *This,
WINBOOL underline);
HRESULT (__attribute__((__stdcall__)) *get_Strikethrough)(
IFont *This,
WINBOOL *pStrikethrough);
HRESULT (__attribute__((__stdcall__)) *put_Strikethrough)(
IFont *This,
WINBOOL strikethrough);
HRESULT (__attribute__((__stdcall__)) *get_Weight)(
IFont *This,
SHORT *pWeight);
HRESULT (__attribute__((__stdcall__)) *put_Weight)(
IFont *This,
SHORT weight);
HRESULT (__attribute__((__stdcall__)) *get_Charset)(
IFont *This,
SHORT *pCharset);
HRESULT (__attribute__((__stdcall__)) *put_Charset)(
IFont *This,
SHORT charset);
HRESULT (__attribute__((__stdcall__)) *get_hFont)(
IFont *This,
HFONT *phFont);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IFont *This,
IFont **ppFont);
HRESULT (__attribute__((__stdcall__)) *IsEqual)(
IFont *This,
IFont *pFontOther);
HRESULT (__attribute__((__stdcall__)) *SetRatio)(
IFont *This,
LONG cyLogical,
LONG cyHimetric);
HRESULT (__attribute__((__stdcall__)) *QueryTextMetrics)(
IFont *This,
TEXTMETRICOLE *pTM);
HRESULT (__attribute__((__stdcall__)) *AddRefHfont)(
IFont *This,
HFONT hFont);
HRESULT (__attribute__((__stdcall__)) *ReleaseHfont)(
IFont *This,
HFONT hFont);
HRESULT (__attribute__((__stdcall__)) *SetHdc)(
IFont *This,
HDC hDC);
} IFontVtbl;
struct IFont {
IFontVtbl* lpVtbl;
};
typedef IPicture *LPPICTURE;
typedef enum tagPictureAttributes {
PICTURE_SCALABLE = 0x1,
PICTURE_TRANSPARENT = 0x2
} PICTUREATTRIBUTES;
typedef UINT OLE_HANDLE;
typedef LONG OLE_XPOS_HIMETRIC;
typedef LONG OLE_YPOS_HIMETRIC;
typedef LONG OLE_XSIZE_HIMETRIC;
typedef LONG OLE_YSIZE_HIMETRIC;
extern const GUID IID_IPicture;
typedef struct IPictureVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPicture *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPicture *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPicture *This);
HRESULT (__attribute__((__stdcall__)) *get_Handle)(
IPicture *This,
OLE_HANDLE *pHandle);
HRESULT (__attribute__((__stdcall__)) *get_hPal)(
IPicture *This,
OLE_HANDLE *phPal);
HRESULT (__attribute__((__stdcall__)) *get_Type)(
IPicture *This,
SHORT *pType);
HRESULT (__attribute__((__stdcall__)) *get_Width)(
IPicture *This,
OLE_XSIZE_HIMETRIC *pWidth);
HRESULT (__attribute__((__stdcall__)) *get_Height)(
IPicture *This,
OLE_YSIZE_HIMETRIC *pHeight);
HRESULT (__attribute__((__stdcall__)) *Render)(
IPicture *This,
HDC hDC,
LONG x,
LONG y,
LONG cx,
LONG cy,
OLE_XPOS_HIMETRIC xSrc,
OLE_YPOS_HIMETRIC ySrc,
OLE_XSIZE_HIMETRIC cxSrc,
OLE_YSIZE_HIMETRIC cySrc,
LPCRECT pRcWBounds);
HRESULT (__attribute__((__stdcall__)) *set_hPal)(
IPicture *This,
OLE_HANDLE hPal);
HRESULT (__attribute__((__stdcall__)) *get_CurDC)(
IPicture *This,
HDC *phDC);
HRESULT (__attribute__((__stdcall__)) *SelectPicture)(
IPicture *This,
HDC hDCIn,
HDC *phDCOut,
OLE_HANDLE *phBmpOut);
HRESULT (__attribute__((__stdcall__)) *get_KeepOriginalFormat)(
IPicture *This,
WINBOOL *pKeep);
HRESULT (__attribute__((__stdcall__)) *put_KeepOriginalFormat)(
IPicture *This,
WINBOOL keep);
HRESULT (__attribute__((__stdcall__)) *PictureChanged)(
IPicture *This);
HRESULT (__attribute__((__stdcall__)) *SaveAsFile)(
IPicture *This,
LPSTREAM pStream,
WINBOOL fSaveMemCopy,
LONG *pCbSize);
HRESULT (__attribute__((__stdcall__)) *get_Attributes)(
IPicture *This,
DWORD *pDwAttr);
} IPictureVtbl;
struct IPicture {
IPictureVtbl* lpVtbl;
};
typedef IPicture2 *LPPICTURE2;
typedef UINT_PTR HHANDLE;
extern const GUID IID_IPicture2;
typedef struct IPicture2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPicture2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPicture2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPicture2 *This);
HRESULT (__attribute__((__stdcall__)) *get_Handle)(
IPicture2 *This,
HHANDLE *pHandle);
HRESULT (__attribute__((__stdcall__)) *get_hPal)(
IPicture2 *This,
HHANDLE *phPal);
HRESULT (__attribute__((__stdcall__)) *get_Type)(
IPicture2 *This,
SHORT *pType);
HRESULT (__attribute__((__stdcall__)) *get_Width)(
IPicture2 *This,
OLE_XSIZE_HIMETRIC *pWidth);
HRESULT (__attribute__((__stdcall__)) *get_Height)(
IPicture2 *This,
OLE_YSIZE_HIMETRIC *pHeight);
HRESULT (__attribute__((__stdcall__)) *Render)(
IPicture2 *This,
HDC hDC,
LONG x,
LONG y,
LONG cx,
LONG cy,
OLE_XPOS_HIMETRIC xSrc,
OLE_YPOS_HIMETRIC ySrc,
OLE_XSIZE_HIMETRIC cxSrc,
OLE_YSIZE_HIMETRIC cySrc,
LPCRECT pRcWBounds);
HRESULT (__attribute__((__stdcall__)) *set_hPal)(
IPicture2 *This,
HHANDLE hPal);
HRESULT (__attribute__((__stdcall__)) *get_CurDC)(
IPicture2 *This,
HDC *phDC);
HRESULT (__attribute__((__stdcall__)) *SelectPicture)(
IPicture2 *This,
HDC hDCIn,
HDC *phDCOut,
HHANDLE *phBmpOut);
HRESULT (__attribute__((__stdcall__)) *get_KeepOriginalFormat)(
IPicture2 *This,
WINBOOL *pKeep);
HRESULT (__attribute__((__stdcall__)) *put_KeepOriginalFormat)(
IPicture2 *This,
WINBOOL keep);
HRESULT (__attribute__((__stdcall__)) *PictureChanged)(
IPicture2 *This);
HRESULT (__attribute__((__stdcall__)) *SaveAsFile)(
IPicture2 *This,
LPSTREAM pStream,
WINBOOL fSaveMemCopy,
LONG *pCbSize);
HRESULT (__attribute__((__stdcall__)) *get_Attributes)(
IPicture2 *This,
DWORD *pDwAttr);
} IPicture2Vtbl;
struct IPicture2 {
IPicture2Vtbl* lpVtbl;
};
typedef IFontEventsDisp *LPFONTEVENTS;
extern const GUID IID_IFontEventsDisp;
typedef struct IFontEventsDispVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IFontEventsDisp *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IFontEventsDisp *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IFontEventsDisp *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(
IFontEventsDisp *This,
UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(
IFontEventsDisp *This,
UINT iTInfo,
LCID lcid,
ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(
IFontEventsDisp *This,
const IID *const riid,
LPOLESTR *rgszNames,
UINT cNames,
LCID lcid,
DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(
IFontEventsDisp *This,
DISPID dispIdMember,
const IID *const riid,
LCID lcid,
WORD wFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *puArgErr);
} IFontEventsDispVtbl;
struct IFontEventsDisp {
IFontEventsDispVtbl* lpVtbl;
};
typedef IFontDisp *LPFONTDISP;
extern const GUID IID_IFontDisp;
typedef struct IFontDispVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IFontDisp *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IFontDisp *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IFontDisp *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(
IFontDisp *This,
UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(
IFontDisp *This,
UINT iTInfo,
LCID lcid,
ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(
IFontDisp *This,
const IID *const riid,
LPOLESTR *rgszNames,
UINT cNames,
LCID lcid,
DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(
IFontDisp *This,
DISPID dispIdMember,
const IID *const riid,
LCID lcid,
WORD wFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *puArgErr);
} IFontDispVtbl;
struct IFontDisp {
IFontDispVtbl* lpVtbl;
};
typedef IPictureDisp *LPPICTUREDISP;
extern const GUID IID_IPictureDisp;
typedef struct IPictureDispVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPictureDisp *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPictureDisp *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPictureDisp *This);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfoCount)(
IPictureDisp *This,
UINT *pctinfo);
HRESULT (__attribute__((__stdcall__)) *GetTypeInfo)(
IPictureDisp *This,
UINT iTInfo,
LCID lcid,
ITypeInfo **ppTInfo);
HRESULT (__attribute__((__stdcall__)) *GetIDsOfNames)(
IPictureDisp *This,
const IID *const riid,
LPOLESTR *rgszNames,
UINT cNames,
LCID lcid,
DISPID *rgDispId);
HRESULT (__attribute__((__stdcall__)) *Invoke)(
IPictureDisp *This,
DISPID dispIdMember,
const IID *const riid,
LCID lcid,
WORD wFlags,
DISPPARAMS *pDispParams,
VARIANT *pVarResult,
EXCEPINFO *pExcepInfo,
UINT *puArgErr);
} IPictureDispVtbl;
struct IPictureDisp {
IPictureDispVtbl* lpVtbl;
};
typedef IOleInPlaceObjectWindowless *LPOLEINPLACEOBJECTWINDOWLESS;
extern const GUID IID_IOleInPlaceObjectWindowless;
typedef struct IOleInPlaceObjectWindowlessVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleInPlaceObjectWindowless *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleInPlaceObjectWindowless *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleInPlaceObjectWindowless *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleInPlaceObjectWindowless *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleInPlaceObjectWindowless *This,
WINBOOL fEnterMode);
HRESULT (__attribute__((__stdcall__)) *InPlaceDeactivate)(
IOleInPlaceObjectWindowless *This);
HRESULT (__attribute__((__stdcall__)) *UIDeactivate)(
IOleInPlaceObjectWindowless *This);
HRESULT (__attribute__((__stdcall__)) *SetObjectRects)(
IOleInPlaceObjectWindowless *This,
LPCRECT lprcPosRect,
LPCRECT lprcClipRect);
HRESULT (__attribute__((__stdcall__)) *ReactivateAndUndo)(
IOleInPlaceObjectWindowless *This);
HRESULT (__attribute__((__stdcall__)) *OnWindowMessage)(
IOleInPlaceObjectWindowless *This,
UINT msg,
WPARAM wParam,
LPARAM lParam,
LRESULT *plResult);
HRESULT (__attribute__((__stdcall__)) *GetDropTarget)(
IOleInPlaceObjectWindowless *This,
IDropTarget **ppDropTarget);
} IOleInPlaceObjectWindowlessVtbl;
struct IOleInPlaceObjectWindowless {
IOleInPlaceObjectWindowlessVtbl* lpVtbl;
};
typedef IOleInPlaceSiteEx *LPOLEINPLACESITEEX;
typedef enum tagACTIVATEFLAGS {
ACTIVATE_WINDOWLESS = 1
} ACTIVATEFLAGS;
extern const GUID IID_IOleInPlaceSiteEx;
typedef struct IOleInPlaceSiteExVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleInPlaceSiteEx *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleInPlaceSiteEx *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleInPlaceSiteEx *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleInPlaceSiteEx *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleInPlaceSiteEx *This,
WINBOOL fEnterMode);
HRESULT (__attribute__((__stdcall__)) *CanInPlaceActivate)(
IOleInPlaceSiteEx *This);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceActivate)(
IOleInPlaceSiteEx *This);
HRESULT (__attribute__((__stdcall__)) *OnUIActivate)(
IOleInPlaceSiteEx *This);
HRESULT (__attribute__((__stdcall__)) *GetWindowContext)(
IOleInPlaceSiteEx *This,
IOleInPlaceFrame **ppFrame,
IOleInPlaceUIWindow **ppDoc,
LPRECT lprcPosRect,
LPRECT lprcClipRect,
LPOLEINPLACEFRAMEINFO lpFrameInfo);
HRESULT (__attribute__((__stdcall__)) *Scroll)(
IOleInPlaceSiteEx *This,
SIZE scrollExtant);
HRESULT (__attribute__((__stdcall__)) *OnUIDeactivate)(
IOleInPlaceSiteEx *This,
WINBOOL fUndoable);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceDeactivate)(
IOleInPlaceSiteEx *This);
HRESULT (__attribute__((__stdcall__)) *DiscardUndoState)(
IOleInPlaceSiteEx *This);
HRESULT (__attribute__((__stdcall__)) *DeactivateAndUndo)(
IOleInPlaceSiteEx *This);
HRESULT (__attribute__((__stdcall__)) *OnPosRectChange)(
IOleInPlaceSiteEx *This,
LPCRECT lprcPosRect);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceActivateEx)(
IOleInPlaceSiteEx *This,
WINBOOL *pfNoRedraw,
DWORD dwFlags);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceDeactivateEx)(
IOleInPlaceSiteEx *This,
WINBOOL fNoRedraw);
HRESULT (__attribute__((__stdcall__)) *RequestUIActivate)(
IOleInPlaceSiteEx *This);
} IOleInPlaceSiteExVtbl;
struct IOleInPlaceSiteEx {
IOleInPlaceSiteExVtbl* lpVtbl;
};
typedef IOleInPlaceSiteWindowless *LPOLEINPLACESITEWINDOWLESS;
typedef enum tagOLEDCFLAGS {
OLEDC_NODRAW = 0x1,
OLEDC_PAINTBKGND = 0x2,
OLEDC_OFFSCREEN = 0x4
} OLEDCFLAGS;
extern const GUID IID_IOleInPlaceSiteWindowless;
typedef struct IOleInPlaceSiteWindowlessVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleInPlaceSiteWindowless *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleInPlaceSiteWindowless *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *GetWindow)(
IOleInPlaceSiteWindowless *This,
HWND *phwnd);
HRESULT (__attribute__((__stdcall__)) *ContextSensitiveHelp)(
IOleInPlaceSiteWindowless *This,
WINBOOL fEnterMode);
HRESULT (__attribute__((__stdcall__)) *CanInPlaceActivate)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceActivate)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *OnUIActivate)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *GetWindowContext)(
IOleInPlaceSiteWindowless *This,
IOleInPlaceFrame **ppFrame,
IOleInPlaceUIWindow **ppDoc,
LPRECT lprcPosRect,
LPRECT lprcClipRect,
LPOLEINPLACEFRAMEINFO lpFrameInfo);
HRESULT (__attribute__((__stdcall__)) *Scroll)(
IOleInPlaceSiteWindowless *This,
SIZE scrollExtant);
HRESULT (__attribute__((__stdcall__)) *OnUIDeactivate)(
IOleInPlaceSiteWindowless *This,
WINBOOL fUndoable);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceDeactivate)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *DiscardUndoState)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *DeactivateAndUndo)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *OnPosRectChange)(
IOleInPlaceSiteWindowless *This,
LPCRECT lprcPosRect);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceActivateEx)(
IOleInPlaceSiteWindowless *This,
WINBOOL *pfNoRedraw,
DWORD dwFlags);
HRESULT (__attribute__((__stdcall__)) *OnInPlaceDeactivateEx)(
IOleInPlaceSiteWindowless *This,
WINBOOL fNoRedraw);
HRESULT (__attribute__((__stdcall__)) *RequestUIActivate)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *CanWindowlessActivate)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *GetCapture)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *SetCapture)(
IOleInPlaceSiteWindowless *This,
WINBOOL fCapture);
HRESULT (__attribute__((__stdcall__)) *GetFocus)(
IOleInPlaceSiteWindowless *This);
HRESULT (__attribute__((__stdcall__)) *SetFocus)(
IOleInPlaceSiteWindowless *This,
WINBOOL fFocus);
HRESULT (__attribute__((__stdcall__)) *GetDC)(
IOleInPlaceSiteWindowless *This,
LPCRECT pRect,
DWORD grfFlags,
HDC *phDC);
HRESULT (__attribute__((__stdcall__)) *ReleaseDC)(
IOleInPlaceSiteWindowless *This,
HDC hDC);
HRESULT (__attribute__((__stdcall__)) *InvalidateRect)(
IOleInPlaceSiteWindowless *This,
LPCRECT pRect,
WINBOOL fErase);
HRESULT (__attribute__((__stdcall__)) *InvalidateRgn)(
IOleInPlaceSiteWindowless *This,
HRGN hRGN,
WINBOOL fErase);
HRESULT (__attribute__((__stdcall__)) *ScrollRect)(
IOleInPlaceSiteWindowless *This,
INT dx,
INT dy,
LPCRECT pRectScroll,
LPCRECT pRectClip);
HRESULT (__attribute__((__stdcall__)) *AdjustRect)(
IOleInPlaceSiteWindowless *This,
LPRECT prc);
HRESULT (__attribute__((__stdcall__)) *OnDefWindowMessage)(
IOleInPlaceSiteWindowless *This,
UINT msg,
WPARAM wParam,
LPARAM lParam,
LRESULT *plResult);
} IOleInPlaceSiteWindowlessVtbl;
struct IOleInPlaceSiteWindowless {
IOleInPlaceSiteWindowlessVtbl* lpVtbl;
};
typedef IViewObjectEx *LPVIEWOBJECTEX;
typedef enum tagVIEWSTATUS {
VIEWSTATUS_OPAQUE = 1,
VIEWSTATUS_SOLIDBKGND = 2,
VIEWSTATUS_DVASPECTOPAQUE = 4,
VIEWSTATUS_DVASPECTTRANSPARENT = 8,
VIEWSTATUS_SURFACE = 16,
VIEWSTATUS_3DSURFACE = 32
} VIEWSTATUS;
typedef enum tagHITRESULT {
HITRESULT_OUTSIDE = 0,
HITRESULT_TRANSPARENT = 1,
HITRESULT_CLOSE = 2,
HITRESULT_HIT = 3
} HITRESULT;
typedef enum tagDVASPECT2 {
DVASPECT_OPAQUE = 16,
DVASPECT_TRANSPARENT = 32
} DVASPECT2;
typedef struct tagExtentInfo {
ULONG cb;
DWORD dwExtentMode;
SIZEL sizelProposed;
} DVEXTENTINFO;
typedef enum tagExtentMode {
DVEXTENT_CONTENT = 0,
DVEXTENT_INTEGRAL = 1
} DVEXTENTMODE;
typedef enum tagAspectInfoFlag {
DVASPECTINFOFLAG_CANOPTIMIZE = 1
} DVASPECTINFOFLAG;
typedef struct tagAspectInfo {
ULONG cb;
DWORD dwFlags;
} DVASPECTINFO;
extern const GUID IID_IViewObjectEx;
typedef struct IViewObjectExVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IViewObjectEx *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IViewObjectEx *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IViewObjectEx *This);
HRESULT (__attribute__((__stdcall__)) *Draw)(
IViewObjectEx *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DVTARGETDEVICE *ptd,
HDC hdcTargetDev,
HDC hdcDraw,
LPCRECTL lprcBounds,
LPCRECTL lprcWBounds,
WINBOOL (__attribute__((__stdcall__)) *pfnContinue)(ULONG_PTR dwContinue),
ULONG_PTR dwContinue);
HRESULT (__attribute__((__stdcall__)) *GetColorSet)(
IViewObjectEx *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DVTARGETDEVICE *ptd,
HDC hicTargetDev,
LOGPALETTE **ppColorSet);
HRESULT (__attribute__((__stdcall__)) *Freeze)(
IViewObjectEx *This,
DWORD dwDrawAspect,
LONG lindex,
void *pvAspect,
DWORD *pdwFreeze);
HRESULT (__attribute__((__stdcall__)) *Unfreeze)(
IViewObjectEx *This,
DWORD dwFreeze);
HRESULT (__attribute__((__stdcall__)) *SetAdvise)(
IViewObjectEx *This,
DWORD aspects,
DWORD advf,
IAdviseSink *pAdvSink);
HRESULT (__attribute__((__stdcall__)) *GetAdvise)(
IViewObjectEx *This,
DWORD *pAspects,
DWORD *pAdvf,
IAdviseSink **ppAdvSink);
HRESULT (__attribute__((__stdcall__)) *GetExtent)(
IViewObjectEx *This,
DWORD dwDrawAspect,
LONG lindex,
DVTARGETDEVICE *ptd,
LPSIZEL lpsizel);
HRESULT (__attribute__((__stdcall__)) *GetRect)(
IViewObjectEx *This,
DWORD dwAspect,
LPRECTL pRect);
HRESULT (__attribute__((__stdcall__)) *GetViewStatus)(
IViewObjectEx *This,
DWORD *pdwStatus);
HRESULT (__attribute__((__stdcall__)) *QueryHitPoint)(
IViewObjectEx *This,
DWORD dwAspect,
LPCRECT pRectBounds,
POINT ptlLoc,
LONG lCloseHint,
DWORD *pHitResult);
HRESULT (__attribute__((__stdcall__)) *QueryHitRect)(
IViewObjectEx *This,
DWORD dwAspect,
LPCRECT pRectBounds,
LPCRECT pRectLoc,
LONG lCloseHint,
DWORD *pHitResult);
HRESULT (__attribute__((__stdcall__)) *GetNaturalExtent)(
IViewObjectEx *This,
DWORD dwAspect,
LONG lindex,
DVTARGETDEVICE *ptd,
HDC hicTargetDev,
DVEXTENTINFO *pExtentInfo,
LPSIZEL pSizel);
} IViewObjectExVtbl;
struct IViewObjectEx {
IViewObjectExVtbl* lpVtbl;
};
typedef IOleUndoUnit *LPOLEUNDOUNIT;
extern const GUID IID_IOleUndoUnit;
typedef struct IOleUndoUnitVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleUndoUnit *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleUndoUnit *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleUndoUnit *This);
HRESULT (__attribute__((__stdcall__)) *Do)(
IOleUndoUnit *This,
IOleUndoManager *pUndoManager);
HRESULT (__attribute__((__stdcall__)) *GetDescription)(
IOleUndoUnit *This,
BSTR *pBstr);
HRESULT (__attribute__((__stdcall__)) *GetUnitType)(
IOleUndoUnit *This,
CLSID *pClsid,
LONG *plID);
HRESULT (__attribute__((__stdcall__)) *OnNextAdd)(
IOleUndoUnit *This);
} IOleUndoUnitVtbl;
struct IOleUndoUnit {
IOleUndoUnitVtbl* lpVtbl;
};
typedef IOleParentUndoUnit *LPOLEPARENTUNDOUNIT;
extern const GUID IID_IOleParentUndoUnit;
typedef struct IOleParentUndoUnitVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleParentUndoUnit *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleParentUndoUnit *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleParentUndoUnit *This);
HRESULT (__attribute__((__stdcall__)) *Do)(
IOleParentUndoUnit *This,
IOleUndoManager *pUndoManager);
HRESULT (__attribute__((__stdcall__)) *GetDescription)(
IOleParentUndoUnit *This,
BSTR *pBstr);
HRESULT (__attribute__((__stdcall__)) *GetUnitType)(
IOleParentUndoUnit *This,
CLSID *pClsid,
LONG *plID);
HRESULT (__attribute__((__stdcall__)) *OnNextAdd)(
IOleParentUndoUnit *This);
HRESULT (__attribute__((__stdcall__)) *Open)(
IOleParentUndoUnit *This,
IOleParentUndoUnit *pPUU);
HRESULT (__attribute__((__stdcall__)) *Close)(
IOleParentUndoUnit *This,
IOleParentUndoUnit *pPUU,
WINBOOL fCommit);
HRESULT (__attribute__((__stdcall__)) *Add)(
IOleParentUndoUnit *This,
IOleUndoUnit *pUU);
HRESULT (__attribute__((__stdcall__)) *FindUnit)(
IOleParentUndoUnit *This,
IOleUndoUnit *pUU);
HRESULT (__attribute__((__stdcall__)) *GetParentState)(
IOleParentUndoUnit *This,
DWORD *pdwState);
} IOleParentUndoUnitVtbl;
struct IOleParentUndoUnit {
IOleParentUndoUnitVtbl* lpVtbl;
};
typedef IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
extern const GUID IID_IEnumOleUndoUnits;
typedef struct IEnumOleUndoUnitsVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IEnumOleUndoUnits *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IEnumOleUndoUnits *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IEnumOleUndoUnits *This);
HRESULT (__attribute__((__stdcall__)) *Next)(
IEnumOleUndoUnits *This,
ULONG cElt,
IOleUndoUnit **rgElt,
ULONG *pcEltFetched);
HRESULT (__attribute__((__stdcall__)) *Skip)(
IEnumOleUndoUnits *This,
ULONG cElt);
HRESULT (__attribute__((__stdcall__)) *Reset)(
IEnumOleUndoUnits *This);
HRESULT (__attribute__((__stdcall__)) *Clone)(
IEnumOleUndoUnits *This,
IEnumOleUndoUnits **ppEnum);
} IEnumOleUndoUnitsVtbl;
struct IEnumOleUndoUnits {
IEnumOleUndoUnitsVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IEnumOleUndoUnits_RemoteNext_Proxy(
IEnumOleUndoUnits* This,
ULONG cElt,
IOleUndoUnit **rgElt,
ULONG *pcEltFetched);
void __attribute__((__stdcall__)) IEnumOleUndoUnits_RemoteNext_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IEnumOleUndoUnits_Next_Proxy(
IEnumOleUndoUnits* This,
ULONG cElt,
IOleUndoUnit **rgElt,
ULONG *pcEltFetched);
HRESULT __attribute__((__stdcall__)) IEnumOleUndoUnits_Next_Stub(
IEnumOleUndoUnits* This,
ULONG cElt,
IOleUndoUnit **rgElt,
ULONG *pcEltFetched);
typedef IOleUndoManager *LPOLEUNDOMANAGER;
extern const GUID IID_IOleUndoManager;
typedef struct IOleUndoManagerVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IOleUndoManager *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IOleUndoManager *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IOleUndoManager *This);
HRESULT (__attribute__((__stdcall__)) *Open)(
IOleUndoManager *This,
IOleParentUndoUnit *pPUU);
HRESULT (__attribute__((__stdcall__)) *Close)(
IOleUndoManager *This,
IOleParentUndoUnit *pPUU,
WINBOOL fCommit);
HRESULT (__attribute__((__stdcall__)) *Add)(
IOleUndoManager *This,
IOleUndoUnit *pUU);
HRESULT (__attribute__((__stdcall__)) *GetOpenParentState)(
IOleUndoManager *This,
DWORD *pdwState);
HRESULT (__attribute__((__stdcall__)) *DiscardFrom)(
IOleUndoManager *This,
IOleUndoUnit *pUU);
HRESULT (__attribute__((__stdcall__)) *UndoTo)(
IOleUndoManager *This,
IOleUndoUnit *pUU);
HRESULT (__attribute__((__stdcall__)) *RedoTo)(
IOleUndoManager *This,
IOleUndoUnit *pUU);
HRESULT (__attribute__((__stdcall__)) *EnumUndoable)(
IOleUndoManager *This,
IEnumOleUndoUnits **ppEnum);
HRESULT (__attribute__((__stdcall__)) *EnumRedoable)(
IOleUndoManager *This,
IEnumOleUndoUnits **ppEnum);
HRESULT (__attribute__((__stdcall__)) *GetLastUndoDescription)(
IOleUndoManager *This,
BSTR *pBstr);
HRESULT (__attribute__((__stdcall__)) *GetLastRedoDescription)(
IOleUndoManager *This,
BSTR *pBstr);
HRESULT (__attribute__((__stdcall__)) *Enable)(
IOleUndoManager *This,
WINBOOL fEnable);
} IOleUndoManagerVtbl;
struct IOleUndoManager {
IOleUndoManagerVtbl* lpVtbl;
};
typedef IPointerInactive *LPPOINTERINACTIVE;
typedef enum tagPOINTERINACTIVE {
POINTERINACTIVE_ACTIVATEONENTRY = 1,
POINTERINACTIVE_DEACTIVATEONLEAVE = 2,
POINTERINACTIVE_ACTIVATEONDRAG = 4
} POINTERINACTIVE;
extern const GUID IID_IPointerInactive;
typedef struct IPointerInactiveVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPointerInactive *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPointerInactive *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPointerInactive *This);
HRESULT (__attribute__((__stdcall__)) *GetActivationPolicy)(
IPointerInactive *This,
DWORD *pdwPolicy);
HRESULT (__attribute__((__stdcall__)) *OnInactiveMouseMove)(
IPointerInactive *This,
LPCRECT pRectBounds,
LONG x,
LONG y,
DWORD grfKeyState);
HRESULT (__attribute__((__stdcall__)) *OnInactiveSetCursor)(
IPointerInactive *This,
LPCRECT pRectBounds,
LONG x,
LONG y,
DWORD dwMouseMsg,
WINBOOL fSetAlways);
} IPointerInactiveVtbl;
struct IPointerInactive {
IPointerInactiveVtbl* lpVtbl;
};
typedef IObjectWithSite *LPOBJECTWITHSITE;
extern const GUID IID_IObjectWithSite;
typedef struct IObjectWithSiteVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IObjectWithSite *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IObjectWithSite *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IObjectWithSite *This);
HRESULT (__attribute__((__stdcall__)) *SetSite)(
IObjectWithSite *This,
IUnknown *pUnkSite);
HRESULT (__attribute__((__stdcall__)) *GetSite)(
IObjectWithSite *This,
const IID *const riid,
void **ppvSite);
} IObjectWithSiteVtbl;
struct IObjectWithSite {
IObjectWithSiteVtbl* lpVtbl;
};
typedef IPerPropertyBrowsing *LPPERPROPERTYBROWSING;
typedef struct tagCALPOLESTR {
ULONG cElems;
LPOLESTR *pElems;
} CALPOLESTR;
typedef struct tagCALPOLESTR *LPCALPOLESTR;
typedef struct tagCADWORD {
ULONG cElems;
DWORD *pElems;
} CADWORD;
typedef struct tagCADWORD *LPCADWORD;
extern const GUID IID_IPerPropertyBrowsing;
typedef struct IPerPropertyBrowsingVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPerPropertyBrowsing *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPerPropertyBrowsing *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPerPropertyBrowsing *This);
HRESULT (__attribute__((__stdcall__)) *GetDisplayString)(
IPerPropertyBrowsing *This,
DISPID dispID,
BSTR *pBstr);
HRESULT (__attribute__((__stdcall__)) *MapPropertyToPage)(
IPerPropertyBrowsing *This,
DISPID dispID,
CLSID *pClsid);
HRESULT (__attribute__((__stdcall__)) *GetPredefinedStrings)(
IPerPropertyBrowsing *This,
DISPID dispID,
CALPOLESTR *pCaStringsOut,
CADWORD *pCaCookiesOut);
HRESULT (__attribute__((__stdcall__)) *GetPredefinedValue)(
IPerPropertyBrowsing *This,
DISPID dispID,
DWORD dwCookie,
VARIANT *pVarOut);
} IPerPropertyBrowsingVtbl;
struct IPerPropertyBrowsing {
IPerPropertyBrowsingVtbl* lpVtbl;
};
typedef IPropertyBag2 *LPPROPERTYBAG2;
typedef enum tagPROPBAG2_TYPE {
PROPBAG2_TYPE_UNDEFINED = 0,
PROPBAG2_TYPE_DATA = 1,
PROPBAG2_TYPE_URL = 2,
PROPBAG2_TYPE_OBJECT = 3,
PROPBAG2_TYPE_STREAM = 4,
PROPBAG2_TYPE_STORAGE = 5,
PROPBAG2_TYPE_MONIKER = 6
} PROPBAG2_TYPE;
typedef struct tagPROPBAG2 {
DWORD dwType;
VARTYPE vt;
CLIPFORMAT cfType;
DWORD dwHint;
LPOLESTR pstrName;
CLSID clsid;
} PROPBAG2;
extern const GUID IID_IPropertyBag2;
typedef struct IPropertyBag2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPropertyBag2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPropertyBag2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPropertyBag2 *This);
HRESULT (__attribute__((__stdcall__)) *Read)(
IPropertyBag2 *This,
ULONG cProperties,
PROPBAG2 *pPropBag,
IErrorLog *pErrLog,
VARIANT *pvarValue,
HRESULT *phrError);
HRESULT (__attribute__((__stdcall__)) *Write)(
IPropertyBag2 *This,
ULONG cProperties,
PROPBAG2 *pPropBag,
VARIANT *pvarValue);
HRESULT (__attribute__((__stdcall__)) *CountProperties)(
IPropertyBag2 *This,
ULONG *pcProperties);
HRESULT (__attribute__((__stdcall__)) *GetPropertyInfo)(
IPropertyBag2 *This,
ULONG iProperty,
ULONG cProperties,
PROPBAG2 *pPropBag,
ULONG *pcProperties);
HRESULT (__attribute__((__stdcall__)) *LoadObject)(
IPropertyBag2 *This,
LPCOLESTR pstrName,
DWORD dwHint,
IUnknown *pUnkObject,
IErrorLog *pErrLog);
} IPropertyBag2Vtbl;
struct IPropertyBag2 {
IPropertyBag2Vtbl* lpVtbl;
};
typedef IPersistPropertyBag2 *LPPERSISTPROPERTYBAG2;
extern const GUID IID_IPersistPropertyBag2;
typedef struct IPersistPropertyBag2Vtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IPersistPropertyBag2 *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IPersistPropertyBag2 *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IPersistPropertyBag2 *This);
HRESULT (__attribute__((__stdcall__)) *GetClassID)(
IPersistPropertyBag2 *This,
CLSID *pClassID);
HRESULT (__attribute__((__stdcall__)) *InitNew)(
IPersistPropertyBag2 *This);
HRESULT (__attribute__((__stdcall__)) *Load)(
IPersistPropertyBag2 *This,
IPropertyBag2 *pPropBag,
IErrorLog *pErrLog);
HRESULT (__attribute__((__stdcall__)) *Save)(
IPersistPropertyBag2 *This,
IPropertyBag2 *pPropBag,
WINBOOL fClearDirty,
WINBOOL fSaveAllProperties);
HRESULT (__attribute__((__stdcall__)) *IsDirty)(
IPersistPropertyBag2 *This);
} IPersistPropertyBag2Vtbl;
struct IPersistPropertyBag2 {
IPersistPropertyBag2Vtbl* lpVtbl;
};
typedef IAdviseSinkEx *LPADVISESINKEX;
extern const GUID IID_IAdviseSinkEx;
typedef struct IAdviseSinkExVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IAdviseSinkEx *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IAdviseSinkEx *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IAdviseSinkEx *This);
void (__attribute__((__stdcall__)) *OnDataChange)(
IAdviseSinkEx *This,
FORMATETC *pFormatetc,
STGMEDIUM *pStgmed);
void (__attribute__((__stdcall__)) *OnViewChange)(
IAdviseSinkEx *This,
DWORD dwAspect,
LONG lindex);
void (__attribute__((__stdcall__)) *OnRename)(
IAdviseSinkEx *This,
IMoniker *pmk);
void (__attribute__((__stdcall__)) *OnSave)(
IAdviseSinkEx *This);
void (__attribute__((__stdcall__)) *OnClose)(
IAdviseSinkEx *This);
void (__attribute__((__stdcall__)) *OnViewStatusChange)(
IAdviseSinkEx *This,
DWORD dwViewStatus);
} IAdviseSinkExVtbl;
struct IAdviseSinkEx {
IAdviseSinkExVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IAdviseSinkEx_RemoteOnViewStatusChange_Proxy(
IAdviseSinkEx* This,
DWORD dwViewStatus);
void __attribute__((__stdcall__)) IAdviseSinkEx_RemoteOnViewStatusChange_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
void __attribute__((__stdcall__)) IAdviseSinkEx_OnViewStatusChange_Proxy(
IAdviseSinkEx* This,
DWORD dwViewStatus);
HRESULT __attribute__((__stdcall__)) IAdviseSinkEx_OnViewStatusChange_Stub(
IAdviseSinkEx* This,
DWORD dwViewStatus);
typedef IQuickActivate *LPQUICKACTIVATE;
typedef enum tagQACONTAINERFLAGS {
QACONTAINER_SHOWHATCHING = 0x1,
QACONTAINER_SHOWGRABHANDLES = 0x2,
QACONTAINER_USERMODE = 0x4,
QACONTAINER_DISPLAYASDEFAULT = 0x8,
QACONTAINER_UIDEAD = 0x10,
QACONTAINER_AUTOCLIP = 0x20,
QACONTAINER_MESSAGEREFLECT = 0x40,
QACONTAINER_SUPPORTSMNEMONICS = 0x80
} QACONTAINERFLAGS;
typedef DWORD OLE_COLOR;
typedef struct tagQACONTAINER {
ULONG cbSize;
IOleClientSite *pClientSite;
IAdviseSinkEx *pAdviseSink;
IPropertyNotifySink *pPropertyNotifySink;
IUnknown *pUnkEventSink;
DWORD dwAmbientFlags;
OLE_COLOR colorFore;
OLE_COLOR colorBack;
IFont *pFont;
IOleUndoManager *pUndoMgr;
DWORD dwAppearance;
LONG lcid;
HPALETTE hpal;
IBindHost *pBindHost;
IOleControlSite *pOleControlSite;
IServiceProvider *pServiceProvider;
} QACONTAINER;
typedef struct tagQACONTROL {
ULONG cbSize;
DWORD dwMiscStatus;
DWORD dwViewStatus;
DWORD dwEventCookie;
DWORD dwPropNotifyCookie;
DWORD dwPointerActivationPolicy;
} QACONTROL;
extern const GUID IID_IQuickActivate;
typedef struct IQuickActivateVtbl {
HRESULT (__attribute__((__stdcall__)) *QueryInterface)(
IQuickActivate *This,
const IID *const riid,
void **ppvObject);
ULONG (__attribute__((__stdcall__)) *AddRef)(
IQuickActivate *This);
ULONG (__attribute__((__stdcall__)) *Release)(
IQuickActivate *This);
HRESULT (__attribute__((__stdcall__)) *QuickActivate)(
IQuickActivate *This,
QACONTAINER *pQaContainer,
QACONTROL *pQaControl);
HRESULT (__attribute__((__stdcall__)) *SetContentExtent)(
IQuickActivate *This,
LPSIZEL pSizel);
HRESULT (__attribute__((__stdcall__)) *GetContentExtent)(
IQuickActivate *This,
LPSIZEL pSizel);
} IQuickActivateVtbl;
struct IQuickActivate {
IQuickActivateVtbl* lpVtbl;
};
HRESULT __attribute__((__stdcall__)) IQuickActivate_RemoteQuickActivate_Proxy(
IQuickActivate* This,
QACONTAINER *pQaContainer,
QACONTROL *pQaControl);
void __attribute__((__stdcall__)) IQuickActivate_RemoteQuickActivate_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT __attribute__((__stdcall__)) IQuickActivate_QuickActivate_Proxy(
IQuickActivate* This,
QACONTAINER *pQaContainer,
QACONTROL *pQaControl);
HRESULT __attribute__((__stdcall__)) IQuickActivate_QuickActivate_Stub(
IQuickActivate* This,
QACONTAINER *pQaContainer,
QACONTROL *pQaControl);
ULONG __attribute__((__stdcall__)) BSTR_UserSize (ULONG *, ULONG, BSTR *);
unsigned char * __attribute__((__stdcall__)) BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
unsigned char * __attribute__((__stdcall__)) BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
void __attribute__((__stdcall__)) BSTR_UserFree (ULONG *, BSTR *);
ULONG __attribute__((__stdcall__)) HACCEL_UserSize (ULONG *, ULONG, HACCEL *);
unsigned char * __attribute__((__stdcall__)) HACCEL_UserMarshal (ULONG *, unsigned char *, HACCEL *);
unsigned char * __attribute__((__stdcall__)) HACCEL_UserUnmarshal(ULONG *, unsigned char *, HACCEL *);
void __attribute__((__stdcall__)) HACCEL_UserFree (ULONG *, HACCEL *);
ULONG __attribute__((__stdcall__)) HWND_UserSize (ULONG *, ULONG, HWND *);
unsigned char * __attribute__((__stdcall__)) HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
unsigned char * __attribute__((__stdcall__)) HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
void __attribute__((__stdcall__)) HWND_UserFree (ULONG *, HWND *);
ULONG __attribute__((__stdcall__)) HFONT_UserSize (ULONG *, ULONG, HFONT *);
unsigned char * __attribute__((__stdcall__)) HFONT_UserMarshal (ULONG *, unsigned char *, HFONT *);
unsigned char * __attribute__((__stdcall__)) HFONT_UserUnmarshal(ULONG *, unsigned char *, HFONT *);
void __attribute__((__stdcall__)) HFONT_UserFree (ULONG *, HFONT *);
ULONG __attribute__((__stdcall__)) HDC_UserSize (ULONG *, ULONG, HDC *);
unsigned char * __attribute__((__stdcall__)) HDC_UserMarshal (ULONG *, unsigned char *, HDC *);
unsigned char * __attribute__((__stdcall__)) HDC_UserUnmarshal(ULONG *, unsigned char *, HDC *);
void __attribute__((__stdcall__)) HDC_UserFree (ULONG *, HDC *);
ULONG __attribute__((__stdcall__)) HRGN_UserSize (ULONG *, ULONG, HRGN *);
unsigned char * __attribute__((__stdcall__)) HRGN_UserMarshal (ULONG *, unsigned char *, HRGN *);
unsigned char * __attribute__((__stdcall__)) HRGN_UserUnmarshal(ULONG *, unsigned char *, HRGN *);
void __attribute__((__stdcall__)) HRGN_UserFree (ULONG *, HRGN *);
ULONG __attribute__((__stdcall__)) VARIANT_UserSize (ULONG *, ULONG, VARIANT *);
unsigned char * __attribute__((__stdcall__)) VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *);
unsigned char * __attribute__((__stdcall__)) VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
void __attribute__((__stdcall__)) VARIANT_UserFree (ULONG *, VARIANT *);
ULONG __attribute__((__stdcall__)) CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
unsigned char * __attribute__((__stdcall__)) CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
unsigned char * __attribute__((__stdcall__)) CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
void __attribute__((__stdcall__)) CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
ULONG __attribute__((__stdcall__)) HPALETTE_UserSize (ULONG *, ULONG, HPALETTE *);
unsigned char * __attribute__((__stdcall__)) HPALETTE_UserMarshal (ULONG *, unsigned char *, HPALETTE *);
unsigned char * __attribute__((__stdcall__)) HPALETTE_UserUnmarshal(ULONG *, unsigned char *, HPALETTE *);
void __attribute__((__stdcall__)) HPALETTE_UserFree (ULONG *, HPALETTE *);
extern RPC_IF_HANDLE INapTypes_v0_0_c_ifspec;
extern RPC_IF_HANDLE INapTypes_v0_0_s_ifspec;
typedef enum tagIsolationState {
isolationStateNotRestricted = 1,
isolationStateInProbation = 2,
isolationStateRestrictedAccess = 3
} IsolationState;
typedef enum tagExtendedIsolationState {
extendedIsolationStateNoData = 0x0,
extendedIsolationStateTransition = 0x1,
extendedIsolationStateInfected = 0x2,
extendedIsolationStateUnknown = 0x3
} ExtendedIsolationState;
typedef enum tagNapTracingLevel {
tracingLevelUndefined = 0,
tracingLevelBasic = 1,
tracingLevelAdvanced = 2,
tracingLevelDebug = 3
} NapTracingLevel;
typedef enum tagFailureCategory {
failureCategoryNone = 0,
failureCategoryOther = 1,
failureCategoryClientComponent = 2,
failureCategoryClientCommunication = 3,
failureCategoryServerComponent = 4,
failureCategoryServerCommunication = 5
} FailureCategory;
typedef enum tagFixupState {
fixupStateSuccess = 0,
fixupStateInProgress = 1,
fixupStateCouldNotUpdate = 2
} FixupState;
typedef enum tagNapNotifyType {
napNotifyTypeUnknown = 0,
napNotifyTypeServiceState = 1,
napNotifyTypeQuarState = 2
} NapNotifyType;
typedef enum tagRemoteConfigurationType {
remoteConfigTypeMachine = 1,
remoteConfigTypeConfigBlob = 2
} RemoteConfigurationType;
typedef FILETIME ProbationTime;
typedef UINT32 MessageId;
typedef UINT32 NapComponentId;
typedef NapComponentId SystemHealthEntityId;
typedef NapComponentId EnforcementEntityId;
typedef struct tagCountedString {
UINT16 length;
WCHAR *string;
} CountedString;
typedef CountedString StringCorrelationId;
typedef struct tagIsolationInfo {
IsolationState isolationState;
ProbationTime probEndTime;
CountedString failureUrl;
} IsolationInfo;
typedef struct tagIsolationInfoEx {
IsolationState isolationState;
ExtendedIsolationState extendedIsolationState;
ProbationTime probEndTime;
CountedString failureUrl;
} IsolationInfoEx;
typedef struct tagFailureCategoryMapping {
WINBOOL mappingCompliance[5];
} FailureCategoryMapping;
typedef UINT16 SystemHealthEntityCount;
typedef UINT16 EnforcementEntityCount;
typedef struct tagCorrelationId {
GUID connId;
FILETIME timeStamp;
} CorrelationId;
typedef GUID ConnectionId;
typedef UINT8 Percentage;
typedef struct tagResultCodes {
UINT16 count;
HRESULT *results;
} ResultCodes;
typedef struct tagIpv4Address {
BYTE addr[4];
} Ipv4Address;
typedef struct tagIpv6Address {
BYTE addr[16];
} Ipv6Address;
typedef struct tagFixupInfo {
FixupState state;
Percentage percentage;
ResultCodes resultCodes;
MessageId fixupMsgId;
} FixupInfo;
typedef struct tagSystemHealthAgentState {
SystemHealthEntityId id;
ResultCodes shaResultCodes;
FailureCategory failureCategory;
FixupInfo fixupInfo;
} SystemHealthAgentState;
typedef struct tagSoHAttribute {
UINT16 type;
UINT16 size;
BYTE *value;
} SoHAttribute;
typedef struct tagSoH {
UINT16 count;
SoHAttribute *attributes;
} SoH;
typedef struct tagSoH SoHRequest;
typedef struct tagSoH SoHResponse;
typedef struct tagNetworkSoH {
UINT16 size;
BYTE *data;
} NetworkSoH;
typedef struct tagNetworkSoH NetworkSoHRequest;
typedef struct tagNetworkSoH NetworkSoHResponse;
typedef struct tagPrivateData {
UINT16 size;
BYTE *data;
} PrivateData;
typedef struct tagNapComponentRegistrationInfo {
NapComponentId id;
CountedString friendlyName;
CountedString description;
CountedString version;
CountedString vendorName;
CLSID infoClsid;
CLSID configClsid;
FILETIME registrationDate;
UINT32 componentType;
} NapComponentRegistrationInfo;
typedef struct in_addr RASIPV4ADDR;
typedef struct in6_addr RASIPV6ADDR;
#pragma pack(push,4)
struct HRASCONN__ { int unused; }; typedef struct HRASCONN__ *HRASCONN;
struct tagRASCONNW {
DWORD dwSize;
HRASCONN hrasconn;
WCHAR szEntryName[256 + 1 ];
WCHAR szDeviceType[16 + 1 ];
WCHAR szDeviceName[128 + 1 ];
WCHAR szPhonebook [260 ];
DWORD dwSubEntry;
GUID guidEntry;
DWORD dwFlags;
LUID luid;
};
struct tagRASCONNA {
DWORD dwSize;
HRASCONN hrasconn;
CHAR szEntryName[256 + 1 ];
CHAR szDeviceType[16 + 1 ];
CHAR szDeviceName[128 + 1 ];
CHAR szPhonebook [260 ];
DWORD dwSubEntry;
GUID guidEntry;
DWORD dwFlags;
LUID luid;
};
enum tagRASCONNSTATE {
RASCS_OpenPort = 0,RASCS_PortOpened,RASCS_ConnectDevice,RASCS_DeviceConnected,RASCS_AllDevicesConnected,RASCS_Authenticate,
RASCS_AuthNotify,RASCS_AuthRetry,RASCS_AuthCallback,RASCS_AuthChangePassword,RASCS_AuthProject,RASCS_AuthLinkSpeed,
RASCS_AuthAck,RASCS_ReAuthenticate,RASCS_Authenticated,RASCS_PrepareForCallback,RASCS_WaitForModemReset,RASCS_WaitForCallback,RASCS_Projected,
RASCS_StartAuthentication,RASCS_CallbackComplete,RASCS_LogonNetwork,RASCS_SubEntryConnected,
RASCS_SubEntryDisconnected,RASCS_Interactive = 0x1000,RASCS_RetryAuthentication,RASCS_CallbackSetByCaller,RASCS_PasswordExpired,
RASCS_InvokeEapUI,RASCS_Connected = 0x2000,RASCS_Disconnected
};
struct tagRASCONNSTATUSW {
DWORD dwSize;
enum tagRASCONNSTATE rasconnstate;
DWORD dwError;
WCHAR szDeviceType[16 + 1 ];
WCHAR szDeviceName[128 + 1 ];
WCHAR szPhoneNumber[128 + 1 ];
};
struct tagRASCONNSTATUSA {
DWORD dwSize;
enum tagRASCONNSTATE rasconnstate;
DWORD dwError;
CHAR szDeviceType[16 + 1 ];
CHAR szDeviceName[128 + 1 ];
CHAR szPhoneNumber[128 + 1 ];
};
struct tagRASDIALPARAMSW {
DWORD dwSize;
WCHAR szEntryName[256 + 1 ];
WCHAR szPhoneNumber[128 + 1 ];
WCHAR szCallbackNumber[128 + 1 ];
WCHAR szUserName[256 + 1 ];
WCHAR szPassword[256 + 1 ];
WCHAR szDomain[15 + 1 ];
DWORD dwSubEntry;
ULONG_PTR dwCallbackId;
};
struct tagRASDIALPARAMSA {
DWORD dwSize;
CHAR szEntryName[256 + 1 ];
CHAR szPhoneNumber[128 + 1 ];
CHAR szCallbackNumber[128 + 1 ];
CHAR szUserName[256 + 1 ];
CHAR szPassword[256 + 1 ];
CHAR szDomain[15 + 1 ];
DWORD dwSubEntry;
ULONG_PTR dwCallbackId;
};
struct tagRASEAPINFO {
DWORD dwSizeofEapInfo;
BYTE *pbEapInfo;
};
struct tagRASDIALEXTENSIONS {
DWORD dwSize;
DWORD dwfOptions;
HWND hwndParent;
ULONG_PTR reserved;
ULONG_PTR reserved1;
struct tagRASEAPINFO RasEapInfo;
};
struct tagRASENTRYNAMEW {
DWORD dwSize;
WCHAR szEntryName[256 + 1 ];
DWORD dwFlags;
WCHAR szPhonebookPath[260 + 1];
};
struct tagRASENTRYNAMEA {
DWORD dwSize;
CHAR szEntryName[256 + 1 ];
DWORD dwFlags;
CHAR szPhonebookPath[260 + 1];
};
enum tagRASPROJECTION {
RASP_Amb = 0x10000,RASP_PppNbf = 0x803F,RASP_PppIpx = 0x802B,RASP_PppIp = 0x8021,
RASP_PppCcp = 0x80FD,RASP_PppLcp = 0xC021,RASP_Slip = 0x20000
};
struct tagRASAMBW {
DWORD dwSize;
DWORD dwError;
WCHAR szNetBiosError[16 + 1 ];
BYTE bLana;
};
struct tagRASAMBA {
DWORD dwSize;
DWORD dwError;
CHAR szNetBiosError[16 + 1 ];
BYTE bLana;
};
struct tagRASPPPNBFW {
DWORD dwSize;
DWORD dwError;
DWORD dwNetBiosError;
WCHAR szNetBiosError[16 + 1 ];
WCHAR szWorkstationName[16 + 1 ];
BYTE bLana;
};
struct tagRASPPPNBFA {
DWORD dwSize;
DWORD dwError;
DWORD dwNetBiosError;
CHAR szNetBiosError[16 + 1 ];
CHAR szWorkstationName[16 + 1 ];
BYTE bLana;
};
struct tagRASIPXW {
DWORD dwSize;
DWORD dwError;
WCHAR szIpxAddress[21 + 1 ];
};
struct tagRASPPPIPXA {
DWORD dwSize;
DWORD dwError;
CHAR szIpxAddress[21 + 1 ];
};
struct tagRASPPPIPW {
DWORD dwSize;
DWORD dwError;
WCHAR szIpAddress[15 + 1 ];
WCHAR szServerIpAddress[15 + 1 ];
DWORD dwOptions;
DWORD dwServerOptions;
};
struct tagRASPPPIPA {
DWORD dwSize;
DWORD dwError;
CHAR szIpAddress[15 + 1 ];
CHAR szServerIpAddress[15 + 1 ];
DWORD dwOptions;
DWORD dwServerOptions;
};
struct tagRASPPPLCPW {
DWORD dwSize;
WINBOOL fBundled;
DWORD dwError;
DWORD dwAuthenticationProtocol;
DWORD dwAuthenticationData;
DWORD dwEapTypeId;
DWORD dwServerAuthenticationProtocol;
DWORD dwServerAuthenticationData;
DWORD dwServerEapTypeId;
WINBOOL fMultilink;
DWORD dwTerminateReason;
DWORD dwServerTerminateReason;
WCHAR szReplyMessage[1024];
DWORD dwOptions;
DWORD dwServerOptions;
};
struct tagRASPPPLCPA {
DWORD dwSize;
WINBOOL fBundled;
DWORD dwError;
DWORD dwAuthenticationProtocol;
DWORD dwAuthenticationData;
DWORD dwEapTypeId;
DWORD dwServerAuthenticationProtocol;
DWORD dwServerAuthenticationData;
DWORD dwServerEapTypeId;
WINBOOL fMultilink;
DWORD dwTerminateReason;
DWORD dwServerTerminateReason;
CHAR szReplyMessage[1024];
DWORD dwOptions;
DWORD dwServerOptions;
};
struct tagRASSLIPW {
DWORD dwSize;
DWORD dwError;
WCHAR szIpAddress[15 + 1 ];
};
struct tagRASSLIPA {
DWORD dwSize;
DWORD dwError;
CHAR szIpAddress[15 + 1 ];
};
struct tagRASPPPCCP {
DWORD dwSize;
DWORD dwError;
DWORD dwCompressionAlgorithm;
DWORD dwOptions;
DWORD dwServerCompressionAlgorithm;
DWORD dwServerOptions;
};
typedef void (__attribute__((__stdcall__)) *RASDIALFUNC)(UINT,enum tagRASCONNSTATE,DWORD);
typedef void (__attribute__((__stdcall__)) *RASDIALFUNC1)(HRASCONN,UINT,enum tagRASCONNSTATE,DWORD,DWORD);
typedef DWORD (__attribute__((__stdcall__)) *RASDIALFUNC2)(ULONG_PTR,DWORD,HRASCONN,UINT,enum tagRASCONNSTATE,DWORD,DWORD);
struct tagRASDEVINFOW {
DWORD dwSize;
WCHAR szDeviceType[16 + 1 ];
WCHAR szDeviceName[128 + 1 ];
};
struct tagRASDEVINFOA {
DWORD dwSize;
CHAR szDeviceType[16 + 1 ];
CHAR szDeviceName[128 + 1 ];
};
struct RASCTRYINFO {
DWORD dwSize;
DWORD dwCountryID;
DWORD dwNextCountryID;
DWORD dwCountryCode;
DWORD dwCountryNameOffset;
};
struct RASIPADDR {
BYTE a;
BYTE b;
BYTE c;
BYTE d;
};
struct tagRASENTRYA {
DWORD dwSize;
DWORD dwfOptions;
DWORD dwCountryID;
DWORD dwCountryCode;
CHAR szAreaCode[10 + 1 ];
CHAR szLocalPhoneNumber[128 + 1 ];
DWORD dwAlternateOffset;
struct RASIPADDR ipaddr;
struct RASIPADDR ipaddrDns;
struct RASIPADDR ipaddrDnsAlt;
struct RASIPADDR ipaddrWins;
struct RASIPADDR ipaddrWinsAlt;
DWORD dwFrameSize;
DWORD dwfNetProtocols;
DWORD dwFramingProtocol;
CHAR szScript[260 ];
CHAR szAutodialDll[260 ];
CHAR szAutodialFunc[260 ];
CHAR szDeviceType[16 + 1 ];
CHAR szDeviceName[128 + 1 ];
CHAR szX25PadType[32 + 1 ];
CHAR szX25Address[200 + 1 ];
CHAR szX25Facilities[200 + 1 ];
CHAR szX25UserData[200 + 1 ];
DWORD dwChannels;
DWORD dwReserved1;
DWORD dwReserved2;
DWORD dwSubEntries;
DWORD dwDialMode;
DWORD dwDialExtraPercent;
DWORD dwDialExtraSampleSeconds;
DWORD dwHangUpExtraPercent;
DWORD dwHangUpExtraSampleSeconds;
DWORD dwIdleDisconnectSeconds;
DWORD dwType;
DWORD dwEncryptionType;
DWORD dwCustomAuthKey;
GUID guidId;
CHAR szCustomDialDll[260];
DWORD dwVpnStrategy;
DWORD dwfOptions2;
DWORD dwfOptions3;
CHAR szDnsSuffix[256];
DWORD dwTcpWindowSize;
CHAR szPrerequisitePbk[260];
CHAR szPrerequisiteEntry[256 + 1];
DWORD dwRedialCount;
DWORD dwRedialPause;
};
struct tagRASENTRYW {
DWORD dwSize;
DWORD dwfOptions;
DWORD dwCountryID;
DWORD dwCountryCode;
WCHAR szAreaCode[10 + 1 ];
WCHAR szLocalPhoneNumber[128 + 1 ];
DWORD dwAlternateOffset;
struct RASIPADDR ipaddr;
struct RASIPADDR ipaddrDns;
struct RASIPADDR ipaddrDnsAlt;
struct RASIPADDR ipaddrWins;
struct RASIPADDR ipaddrWinsAlt;
DWORD dwFrameSize;
DWORD dwfNetProtocols;
DWORD dwFramingProtocol;
WCHAR szScript[260 ];
WCHAR szAutodialDll[260 ];
WCHAR szAutodialFunc[260 ];
WCHAR szDeviceType[16 + 1 ];
WCHAR szDeviceName[128 + 1 ];
WCHAR szX25PadType[32 + 1 ];
WCHAR szX25Address[200 + 1 ];
WCHAR szX25Facilities[200 + 1 ];
WCHAR szX25UserData[200 + 1 ];
DWORD dwChannels;
DWORD dwReserved1;
DWORD dwReserved2;
DWORD dwSubEntries;
DWORD dwDialMode;
DWORD dwDialExtraPercent;
DWORD dwDialExtraSampleSeconds;
DWORD dwHangUpExtraPercent;
DWORD dwHangUpExtraSampleSeconds;
DWORD dwIdleDisconnectSeconds;
DWORD dwType;
DWORD dwEncryptionType;
DWORD dwCustomAuthKey;
GUID guidId;
WCHAR szCustomDialDll[260];
DWORD dwVpnStrategy;
DWORD dwfOptions2;
DWORD dwfOptions3;
WCHAR szDnsSuffix[256];
DWORD dwTcpWindowSize;
WCHAR szPrerequisitePbk[260];
WCHAR szPrerequisiteEntry[256 + 1];
DWORD dwRedialCount;
DWORD dwRedialPause;
};
typedef WINBOOL (__attribute__((__stdcall__)) *ORASADFUNC)(HWND,LPSTR,DWORD,LPDWORD);
struct tagRASADPARAMS {
DWORD dwSize;
HWND hwndOwner;
DWORD dwFlags;
LONG xDlg;
LONG yDlg;
};
typedef WINBOOL (__attribute__((__stdcall__)) *RASADFUNCA)(LPSTR,LPSTR,struct tagRASADPARAMS*,LPDWORD);
typedef WINBOOL (__attribute__((__stdcall__)) *RASADFUNCW)(LPWSTR,LPWSTR,struct tagRASADPARAMS*,LPDWORD);
struct tagRASSUBENTRYA {
DWORD dwSize;
DWORD dwfFlags;
CHAR szDeviceType[16 + 1 ];
CHAR szDeviceName[128 + 1 ];
CHAR szLocalPhoneNumber[128 + 1 ];
DWORD dwAlternateOffset;
};
struct tagRASSUBENTRYW {
DWORD dwSize;
DWORD dwfFlags;
WCHAR szDeviceType[16 + 1 ];
WCHAR szDeviceName[128 + 1 ];
WCHAR szLocalPhoneNumber[128 + 1 ];
DWORD dwAlternateOffset;
};
struct tagRASCREDENTIALSA {
DWORD dwSize;
DWORD dwMask;
CHAR szUserName[256 + 1 ];
CHAR szPassword[256 + 1 ];
CHAR szDomain[15 + 1 ];
};
struct tagRASCREDENTIALSW {
DWORD dwSize;
DWORD dwMask;
WCHAR szUserName[256 + 1 ];
WCHAR szPassword[256 + 1 ];
WCHAR szDomain[15 + 1 ];
};
struct tagRASAUTODIALENTRYA {
DWORD dwSize;
DWORD dwFlags;
DWORD dwDialingLocation;
CHAR szEntry[256 + 1];
};
struct tagRASAUTODIALENTRYW {
DWORD dwSize;
DWORD dwFlags;
DWORD dwDialingLocation;
WCHAR szEntry[256 + 1];
};
struct tagRASEAPUSERIDENTITYA {
CHAR szUserName[256 + 1 ];
DWORD dwSizeofEapInfo;
BYTE pbEapInfo[1 ];
};
struct tagRASEAPUSERIDENTITYW {
WCHAR szUserName[256 + 1 ];
DWORD dwSizeofEapInfo;
BYTE pbEapInfo[1 ];
};
typedef DWORD (__attribute__((__stdcall__)) *PFNRASGETBUFFER) (PBYTE *ppBuffer,PDWORD pdwSize);
typedef DWORD (__attribute__((__stdcall__)) *PFNRASFREEBUFFER) (PBYTE pBufer);
typedef DWORD (__attribute__((__stdcall__)) *PFNRASSENDBUFFER) (HANDLE hPort,PBYTE pBuffer,DWORD dwSize);
typedef DWORD (__attribute__((__stdcall__)) *PFNRASRECEIVEBUFFER) (HANDLE hPort,PBYTE pBuffer,PDWORD pdwSize,DWORD dwTimeOut,HANDLE hEvent);
typedef DWORD (__attribute__((__stdcall__)) *PFNRASRETRIEVEBUFFER) (HANDLE hPort,PBYTE pBuffer,PDWORD pdwSize);
typedef DWORD (__attribute__((__stdcall__)) *RasCustomScriptExecuteFn) (HANDLE hPort,LPCWSTR lpszPhonebook,LPCWSTR lpszEntryName,PFNRASGETBUFFER pfnRasGetBuffer,PFNRASFREEBUFFER pfnRasFreeBuffer,PFNRASSENDBUFFER pfnRasSendBuffer,PFNRASRECEIVEBUFFER pfnRasReceiveBuffer,PFNRASRETRIEVEBUFFER pfnRasRetrieveBuffer,HWND hWnd,struct tagRASDIALPARAMSA *pRasDialParams,PVOID pvReserved);
struct tagRASCOMMSETTINGS {
DWORD dwSize;
BYTE bParity;
BYTE bStop;
BYTE bByteSize;
BYTE bAlign;
};
typedef DWORD (__attribute__((__stdcall__)) *PFNRASSETCOMMSETTINGS) (HANDLE hPort,struct tagRASCOMMSETTINGS *pRasCommSettings,PVOID pvReserved);
struct tagRASCUSTOMSCRIPTEXTENSIONS {
DWORD dwSize;
PFNRASSETCOMMSETTINGS pfnRasSetCommSettings;
};
DWORD __attribute__((__stdcall__)) RasDialA(struct tagRASDIALEXTENSIONS*,LPCSTR,struct tagRASDIALPARAMSA*,DWORD,LPVOID,HRASCONN*);
DWORD __attribute__((__stdcall__)) RasDialW(struct tagRASDIALEXTENSIONS*,LPCWSTR,struct tagRASDIALPARAMSW*,DWORD,LPVOID,HRASCONN*);
DWORD __attribute__((__stdcall__)) RasEnumConnectionsA(struct tagRASCONNA*,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasEnumConnectionsW(struct tagRASCONNW*,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasEnumEntriesA(LPCSTR,LPCSTR,struct tagRASENTRYNAMEA*,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasEnumEntriesW(LPCWSTR,LPCWSTR,struct tagRASENTRYNAMEW*,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetConnectStatusA(HRASCONN,struct tagRASCONNSTATUSA*);
DWORD __attribute__((__stdcall__)) RasGetConnectStatusW(HRASCONN,struct tagRASCONNSTATUSW*);
DWORD __attribute__((__stdcall__)) RasGetErrorStringA(UINT,LPSTR,DWORD);
DWORD __attribute__((__stdcall__)) RasGetErrorStringW(UINT,LPWSTR,DWORD);
DWORD __attribute__((__stdcall__)) RasHangUpA(HRASCONN);
DWORD __attribute__((__stdcall__)) RasHangUpW(HRASCONN);
DWORD __attribute__((__stdcall__)) RasGetProjectionInfoA(HRASCONN,enum tagRASPROJECTION,LPVOID,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetProjectionInfoW(HRASCONN,enum tagRASPROJECTION,LPVOID,LPDWORD);
DWORD __attribute__((__stdcall__)) RasCreatePhonebookEntryA(HWND,LPCSTR);
DWORD __attribute__((__stdcall__)) RasCreatePhonebookEntryW(HWND,LPCWSTR);
DWORD __attribute__((__stdcall__)) RasEditPhonebookEntryA(HWND,LPCSTR,LPCSTR);
DWORD __attribute__((__stdcall__)) RasEditPhonebookEntryW(HWND,LPCWSTR,LPCWSTR);
DWORD __attribute__((__stdcall__)) RasSetEntryDialParamsA(LPCSTR,struct tagRASDIALPARAMSA*,WINBOOL);
DWORD __attribute__((__stdcall__)) RasSetEntryDialParamsW(LPCWSTR,struct tagRASDIALPARAMSW*,WINBOOL);
DWORD __attribute__((__stdcall__)) RasGetEntryDialParamsA(LPCSTR,struct tagRASDIALPARAMSA*,LPBOOL);
DWORD __attribute__((__stdcall__)) RasGetEntryDialParamsW(LPCWSTR,struct tagRASDIALPARAMSW*,LPBOOL);
DWORD __attribute__((__stdcall__)) RasEnumDevicesA(struct tagRASDEVINFOA*,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasEnumDevicesW(struct tagRASDEVINFOW*,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetCountryInfoA(struct RASCTRYINFO*,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetCountryInfoW(struct RASCTRYINFO*,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetEntryPropertiesA(LPCSTR,LPCSTR,struct tagRASENTRYA*,LPDWORD,LPBYTE,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetEntryPropertiesW(LPCWSTR,LPCWSTR,struct tagRASENTRYW*,LPDWORD,LPBYTE,LPDWORD);
DWORD __attribute__((__stdcall__)) RasSetEntryPropertiesA(LPCSTR,LPCSTR,struct tagRASENTRYA*,DWORD,LPBYTE,DWORD);
DWORD __attribute__((__stdcall__)) RasSetEntryPropertiesW(LPCWSTR,LPCWSTR,struct tagRASENTRYW*,DWORD,LPBYTE,DWORD);
DWORD __attribute__((__stdcall__)) RasRenameEntryA(LPCSTR,LPCSTR,LPCSTR);
DWORD __attribute__((__stdcall__)) RasRenameEntryW(LPCWSTR,LPCWSTR,LPCWSTR);
DWORD __attribute__((__stdcall__)) RasDeleteEntryA(LPCSTR,LPCSTR);
DWORD __attribute__((__stdcall__)) RasDeleteEntryW(LPCWSTR,LPCWSTR);
DWORD __attribute__((__stdcall__)) RasValidateEntryNameA(LPCSTR,LPCSTR);
DWORD __attribute__((__stdcall__)) RasValidateEntryNameW(LPCWSTR,LPCWSTR);
DWORD __attribute__((__stdcall__)) RasConnectionNotificationA(HRASCONN,HANDLE,DWORD);
DWORD __attribute__((__stdcall__)) RasConnectionNotificationW(HRASCONN,HANDLE,DWORD);
DWORD __attribute__((__stdcall__)) RasGetSubEntryHandleA(HRASCONN,DWORD,HRASCONN*);
DWORD __attribute__((__stdcall__)) RasGetSubEntryHandleW(HRASCONN,DWORD,HRASCONN*);
DWORD __attribute__((__stdcall__)) RasGetCredentialsA(LPCSTR,LPCSTR,struct tagRASCREDENTIALSA*);
DWORD __attribute__((__stdcall__)) RasGetCredentialsW(LPCWSTR,LPCWSTR,struct tagRASCREDENTIALSW*);
DWORD __attribute__((__stdcall__)) RasSetCredentialsA(LPCSTR,LPCSTR,struct tagRASCREDENTIALSA*,WINBOOL);
DWORD __attribute__((__stdcall__)) RasSetCredentialsW(LPCWSTR,LPCWSTR,struct tagRASCREDENTIALSW*,WINBOOL);
DWORD __attribute__((__stdcall__)) RasGetSubEntryPropertiesA(LPCSTR,LPCSTR,DWORD,struct tagRASSUBENTRYA*,LPDWORD,LPBYTE,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetSubEntryPropertiesW(LPCWSTR,LPCWSTR,DWORD,struct tagRASSUBENTRYW*,LPDWORD,LPBYTE,LPDWORD);
DWORD __attribute__((__stdcall__)) RasSetSubEntryPropertiesA(LPCSTR,LPCSTR,DWORD,struct tagRASSUBENTRYA*,DWORD,LPBYTE,DWORD);
DWORD __attribute__((__stdcall__)) RasSetSubEntryPropertiesW(LPCWSTR,LPCWSTR,DWORD,struct tagRASSUBENTRYW*,DWORD,LPBYTE,DWORD);
DWORD __attribute__((__stdcall__)) RasGetAutodialAddressA(LPCSTR,LPDWORD,struct tagRASAUTODIALENTRYA*,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetAutodialAddressW(LPCWSTR,LPDWORD,struct tagRASAUTODIALENTRYW*,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasSetAutodialAddressA(LPCSTR,DWORD,struct tagRASAUTODIALENTRYA*,DWORD,DWORD);
DWORD __attribute__((__stdcall__)) RasSetAutodialAddressW(LPCWSTR,DWORD,struct tagRASAUTODIALENTRYW*,DWORD,DWORD);
DWORD __attribute__((__stdcall__)) RasEnumAutodialAddressesA(LPSTR *,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasEnumAutodialAddressesW(LPWSTR *,LPDWORD,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetAutodialEnableA(DWORD,LPBOOL);
DWORD __attribute__((__stdcall__)) RasGetAutodialEnableW(DWORD,LPBOOL);
DWORD __attribute__((__stdcall__)) RasSetAutodialEnableA(DWORD,WINBOOL);
DWORD __attribute__((__stdcall__)) RasSetAutodialEnableW(DWORD,WINBOOL);
DWORD __attribute__((__stdcall__)) RasGetAutodialParamA(DWORD,LPVOID,LPDWORD);
DWORD __attribute__((__stdcall__)) RasGetAutodialParamW(DWORD,LPVOID,LPDWORD);
DWORD __attribute__((__stdcall__)) RasSetAutodialParamA(DWORD,LPVOID,DWORD);
DWORD __attribute__((__stdcall__)) RasSetAutodialParamW(DWORD,LPVOID,DWORD);
typedef struct _RAS_STATS {
DWORD dwSize;
DWORD dwBytesXmited;
DWORD dwBytesRcved;
DWORD dwFramesXmited;
DWORD dwFramesRcved;
DWORD dwCrcErr;
DWORD dwTimeoutErr;
DWORD dwAlignmentErr;
DWORD dwHardwareOverrunErr;
DWORD dwFramingErr;
DWORD dwBufferOverrunErr;
DWORD dwCompressionRatioIn;
DWORD dwCompressionRatioOut;
DWORD dwBps;
DWORD dwConnectDuration;
} RAS_STATS,*PRAS_STATS;
typedef DWORD (__attribute__((__stdcall__)) *RasCustomHangUpFn)(HRASCONN hRasConn);
typedef DWORD (__attribute__((__stdcall__)) *RasCustomDialFn)(HINSTANCE hInstDll,struct tagRASDIALEXTENSIONS* lpRasDialExtensions,LPCWSTR lpszPhonebook,struct tagRASDIALPARAMSA* lpRasDialParams,DWORD dwNotifierType,LPVOID lpvNotifier,HRASCONN* lphRasConn,DWORD dwFlags);
typedef DWORD (__attribute__((__stdcall__)) *RasCustomDeleteEntryNotifyFn)(LPCWSTR lpszPhonebook,LPCWSTR lpszEntry,DWORD dwFlags);
DWORD __attribute__((__stdcall__)) RasInvokeEapUI(HRASCONN,DWORD,struct tagRASDIALEXTENSIONS*,HWND);
DWORD __attribute__((__stdcall__)) RasGetLinkStatistics(HRASCONN hRasConn,DWORD dwSubEntry,RAS_STATS *lpStatistics);
DWORD __attribute__((__stdcall__)) RasGetConnectionStatistics(HRASCONN hRasConn,RAS_STATS *lpStatistics);
DWORD __attribute__((__stdcall__)) RasClearLinkStatistics(HRASCONN hRasConn,DWORD dwSubEntry);
DWORD __attribute__((__stdcall__)) RasClearConnectionStatistics(HRASCONN hRasConn);
DWORD __attribute__((__stdcall__)) RasGetEapUserDataA(HANDLE hToken,LPCSTR pszPhonebook,LPCSTR pszEntry,BYTE *pbEapData,DWORD *pdwSizeofEapData);
DWORD __attribute__((__stdcall__)) RasGetEapUserDataW(HANDLE hToken,LPCWSTR pszPhonebook,LPCWSTR pszEntry,BYTE *pbEapData,DWORD *pdwSizeofEapData);
DWORD __attribute__((__stdcall__)) RasSetEapUserDataA(HANDLE hToken,LPCSTR pszPhonebook,LPCSTR pszEntry,BYTE *pbEapData,DWORD dwSizeofEapData);
DWORD __attribute__((__stdcall__)) RasSetEapUserDataW(HANDLE hToken,LPCWSTR pszPhonebook,LPCWSTR pszEntry,BYTE *pbEapData,DWORD dwSizeofEapData);
DWORD __attribute__((__stdcall__)) RasGetCustomAuthDataA(LPCSTR pszPhonebook,LPCSTR pszEntry,BYTE *pbCustomAuthData,DWORD *pdwSizeofCustomAuthData);
DWORD __attribute__((__stdcall__)) RasGetCustomAuthDataW(LPCWSTR pszPhonebook,LPCWSTR pszEntry,BYTE *pbCustomAuthData,DWORD *pdwSizeofCustomAuthData);
DWORD __attribute__((__stdcall__)) RasSetCustomAuthDataA(LPCSTR pszPhonebook,LPCSTR pszEntry,BYTE *pbCustomAuthData,DWORD dwSizeofCustomAuthData);
DWORD __attribute__((__stdcall__)) RasSetCustomAuthDataW(LPCWSTR pszPhonebook,LPCWSTR pszEntry,BYTE *pbCustomAuthData,DWORD dwSizeofCustomAuthData);
DWORD __attribute__((__stdcall__)) RasGetEapUserIdentityW(LPCWSTR pszPhonebook,LPCWSTR pszEntry,DWORD dwFlags,HWND hwnd,struct tagRASEAPUSERIDENTITYW* *ppRasEapUserIdentity);
DWORD __attribute__((__stdcall__)) RasGetEapUserIdentityA(LPCSTR pszPhonebook,LPCSTR pszEntry,DWORD dwFlags,HWND hwnd,struct tagRASEAPUSERIDENTITYA* *ppRasEapUserIdentity);
void __attribute__((__stdcall__)) RasFreeEapUserIdentityW(struct tagRASEAPUSERIDENTITYW* pRasEapUserIdentity);
void __attribute__((__stdcall__)) RasFreeEapUserIdentityA(struct tagRASEAPUSERIDENTITYA* pRasEapUserIdentity);
DWORD __attribute__((__stdcall__)) RasDeleteSubEntryA(LPCSTR pszPhonebook,LPCSTR pszEntry,DWORD dwSubentryId);
DWORD __attribute__((__stdcall__)) RasDeleteSubEntryW(LPCWSTR pszPhonebook,LPCWSTR pszEntry,DWORD dwSubEntryId);
#pragma pack(pop)
typedef enum _ROUTER_INTERFACE_TYPE {
ROUTER_IF_TYPE_CLIENT,ROUTER_IF_TYPE_HOME_ROUTER,ROUTER_IF_TYPE_FULL_ROUTER,ROUTER_IF_TYPE_DEDICATED,ROUTER_IF_TYPE_INTERNAL,
ROUTER_IF_TYPE_LOOPBACK,ROUTER_IF_TYPE_TUNNEL1,ROUTER_IF_TYPE_DIALOUT
} ROUTER_INTERFACE_TYPE;
typedef enum _ROUTER_CONNECTION_STATE {
ROUTER_IF_STATE_UNREACHABLE,ROUTER_IF_STATE_DISCONNECTED,ROUTER_IF_STATE_CONNECTING,ROUTER_IF_STATE_CONNECTED
} ROUTER_CONNECTION_STATE;
typedef struct _MPR_INTERFACE_0 {
WCHAR wszInterfaceName[256 +1];
HANDLE hInterface;
WINBOOL fEnabled;
ROUTER_INTERFACE_TYPE dwIfType;
ROUTER_CONNECTION_STATE dwConnectionState;
DWORD fUnReachabilityReasons;
DWORD dwLastError;
} MPR_INTERFACE_0,*PMPR_INTERFACE_0;
typedef struct _MPR_IPINIP_INTERFACE_0 {
WCHAR wszFriendlyName[256 +1];
GUID Guid;
} MPR_IPINIP_INTERFACE_0,*PMPR_IPINIP_INTERFACE_0;
typedef struct _MPR_INTERFACE_1 {
WCHAR wszInterfaceName[256 +1];
HANDLE hInterface;
WINBOOL fEnabled;
ROUTER_INTERFACE_TYPE dwIfType;
ROUTER_CONNECTION_STATE dwConnectionState;
DWORD fUnReachabilityReasons;
DWORD dwLastError;
LPWSTR lpwsDialoutHoursRestriction;
} MPR_INTERFACE_1,*PMPR_INTERFACE_1;
typedef struct _MPR_INTERFACE_2 {
WCHAR wszInterfaceName[256 +1];
HANDLE hInterface;
WINBOOL fEnabled;
ROUTER_INTERFACE_TYPE dwIfType;
ROUTER_CONNECTION_STATE dwConnectionState;
DWORD fUnReachabilityReasons;
DWORD dwLastError;
DWORD dwfOptions;
WCHAR szLocalPhoneNumber[128 + 1 ];
PWCHAR szAlternates;
DWORD ipaddr;
DWORD ipaddrDns;
DWORD ipaddrDnsAlt;
DWORD ipaddrWins;
DWORD ipaddrWinsAlt;
DWORD dwfNetProtocols;
WCHAR szDeviceType[16 + 1 ];
WCHAR szDeviceName[128 + 1 ];
WCHAR szX25PadType[32 + 1 ];
WCHAR szX25Address[200 + 1 ];
WCHAR szX25Facilities[200 + 1 ];
WCHAR szX25UserData[200 + 1 ];
DWORD dwChannels;
DWORD dwSubEntries;
DWORD dwDialMode;
DWORD dwDialExtraPercent;
DWORD dwDialExtraSampleSeconds;
DWORD dwHangUpExtraPercent;
DWORD dwHangUpExtraSampleSeconds;
DWORD dwIdleDisconnectSeconds;
DWORD dwType;
DWORD dwEncryptionType;
DWORD dwCustomAuthKey;
DWORD dwCustomAuthDataSize;
LPBYTE lpbCustomAuthData;
GUID guidId;
DWORD dwVpnStrategy;
} MPR_INTERFACE_2,*PMPR_INTERFACE_2;
typedef struct _MPR_DEVICE_0 {
WCHAR szDeviceType[16 + 1 ];
WCHAR szDeviceName[128 + 1 ];
} MPR_DEVICE_0,*PMPR_DEVICE_0;
typedef struct _MPR_DEVICE_1 {
WCHAR szDeviceType[16 + 1 ];
WCHAR szDeviceName[128 + 1 ];
WCHAR szLocalPhoneNumber[128 + 1 ];
PWCHAR szAlternates;
} MPR_DEVICE_1,*PMPR_DEVICE_1;
typedef struct _MPR_CREDENTIALSEX_0 {
DWORD dwSize;
LPBYTE lpbCredentialsInfo;
} MPR_CREDENTIALSEX_0,*PMPR_CREDENTIALSEX_0;
typedef struct _MPR_CREDENTIALSEX_1 {
DWORD dwSize;
LPBYTE lpbCredentialsInfo;
} MPR_CREDENTIALSEX_1,*PMPR_CREDENTIALSEX_1;
typedef struct _MPR_TRANSPORT_0 {
DWORD dwTransportId;
HANDLE hTransport;
WCHAR wszTransportName[40 +1];
} MPR_TRANSPORT_0,*PMPR_TRANSPORT_0;
typedef struct _MPR_IFTRANSPORT_0
{
DWORD dwTransportId;
HANDLE hIfTransport;
WCHAR wszIfTransportName[40 +1];
}
MPR_IFTRANSPORT_0,*PMPR_IFTRANSPORT_0;
typedef struct _MPR_SERVER_0
{
WINBOOL fLanOnlyMode;
DWORD dwUpTime;
DWORD dwTotalPorts;
DWORD dwPortsInUse;
}
MPR_SERVER_0,*PMPR_SERVER_0;
typedef struct _MPR_SERVER_1 {
DWORD dwNumPptpPorts;
DWORD dwPptpPortFlags;
DWORD dwNumL2tpPorts;
DWORD dwL2tpPortFlags;
} MPR_SERVER_1,*PMPR_SERVER_1;
typedef enum _RAS_PORT_CONDITION {
RAS_PORT_NON_OPERATIONAL,RAS_PORT_DISCONNECTED,RAS_PORT_CALLING_BACK,RAS_PORT_LISTENING,RAS_PORT_AUTHENTICATING,RAS_PORT_AUTHENTICATED,
RAS_PORT_INITIALIZING
} RAS_PORT_CONDITION;
typedef enum _RAS_HARDWARE_CONDITION {
RAS_HARDWARE_OPERATIONAL,RAS_HARDWARE_FAILURE
} RAS_HARDWARE_CONDITION;
typedef struct _RAS_PORT_0 {
HANDLE hPort;
HANDLE hConnection;
RAS_PORT_CONDITION dwPortCondition;
DWORD dwTotalNumberOfCalls;
DWORD dwConnectDuration;
WCHAR wszPortName[16 + 1 ];
WCHAR wszMediaName[16 + 1 ];
WCHAR wszDeviceName[128 + 1 ];
WCHAR wszDeviceType[16 + 1 ];
} RAS_PORT_0,*PRAS_PORT_0;
typedef struct _RAS_PORT_1 {
HANDLE hPort;
HANDLE hConnection;
RAS_HARDWARE_CONDITION dwHardwareCondition;
DWORD dwLineSpeed;
DWORD dwBytesXmited;
DWORD dwBytesRcved;
DWORD dwFramesXmited;
DWORD dwFramesRcved;
DWORD dwCrcErr;
DWORD dwTimeoutErr;
DWORD dwAlignmentErr;
DWORD dwHardwareOverrunErr;
DWORD dwFramingErr;
DWORD dwBufferOverrunErr;
DWORD dwCompressionRatioIn;
DWORD dwCompressionRatioOut;
} RAS_PORT_1,*PRAS_PORT_1;
typedef struct _PPP_NBFCP_INFO {
DWORD dwError;
WCHAR wszWksta[16 + 1 ];
} PPP_NBFCP_INFO;
typedef struct _PPP_IPCP_INFO {
DWORD dwError;
WCHAR wszAddress[15 + 1 ];
WCHAR wszRemoteAddress[15 + 1 ];
} PPP_IPCP_INFO;
typedef struct _PPP_IPCP_INFO2 {
DWORD dwError;
WCHAR wszAddress[15 + 1 ];
WCHAR wszRemoteAddress[15 + 1 ];
DWORD dwOptions;
DWORD dwRemoteOptions;
} PPP_IPCP_INFO2;
typedef struct _PPP_IPXCP_INFO {
DWORD dwError;
WCHAR wszAddress[22 + 1 ];
} PPP_IPXCP_INFO;
typedef struct _PPP_ATCP_INFO {
DWORD dwError;
WCHAR wszAddress[32 + 1 ];
} PPP_ATCP_INFO;
typedef struct _PPP_INFO {
PPP_NBFCP_INFO nbf;
PPP_IPCP_INFO ip;
PPP_IPXCP_INFO ipx;
PPP_ATCP_INFO at;
} PPP_INFO;
typedef struct _PPP_CCP_INFO {
DWORD dwError;
DWORD dwCompressionAlgorithm;
DWORD dwOptions;
DWORD dwRemoteCompressionAlgorithm;
DWORD dwRemoteOptions;
} PPP_CCP_INFO;
typedef struct _PPP_LCP_INFO {
DWORD dwError;
DWORD dwAuthenticationProtocol;
DWORD dwAuthenticationData;
DWORD dwRemoteAuthenticationProtocol;
DWORD dwRemoteAuthenticationData;
DWORD dwTerminateReason;
DWORD dwRemoteTerminateReason;
DWORD dwOptions;
DWORD dwRemoteOptions;
DWORD dwEapTypeId;
DWORD dwRemoteEapTypeId;
} PPP_LCP_INFO;
typedef struct _PPP_INFO_2 {
PPP_NBFCP_INFO nbf;
PPP_IPCP_INFO2 ip;
PPP_IPXCP_INFO ipx;
PPP_ATCP_INFO at;
PPP_CCP_INFO ccp;
PPP_LCP_INFO lcp;
} PPP_INFO_2;
typedef struct _RAS_CONNECTION_0 {
HANDLE hConnection;
HANDLE hInterface;
DWORD dwConnectDuration;
ROUTER_INTERFACE_TYPE dwInterfaceType;
DWORD dwConnectionFlags;
WCHAR wszInterfaceName[256 + 1 ];
WCHAR wszUserName[256 + 1 ];
WCHAR wszLogonDomain[15 + 1 ];
WCHAR wszRemoteComputer[16 + 1 ];
} RAS_CONNECTION_0,*PRAS_CONNECTION_0;
typedef struct _RAS_CONNECTION_1 {
HANDLE hConnection;
HANDLE hInterface;
PPP_INFO PppInfo;
DWORD dwBytesXmited;
DWORD dwBytesRcved;
DWORD dwFramesXmited;
DWORD dwFramesRcved;
DWORD dwCrcErr;
DWORD dwTimeoutErr;
DWORD dwAlignmentErr;
DWORD dwHardwareOverrunErr;
DWORD dwFramingErr;
DWORD dwBufferOverrunErr;
DWORD dwCompressionRatioIn;
DWORD dwCompressionRatioOut;
} RAS_CONNECTION_1,*PRAS_CONNECTION_1;
typedef struct _RAS_CONNECTION_2 {
HANDLE hConnection;
WCHAR wszUserName[256 + 1 ];
ROUTER_INTERFACE_TYPE dwInterfaceType;
GUID guid;
PPP_INFO_2 PppInfo2;
} RAS_CONNECTION_2,*PRAS_CONNECTION_2;
typedef struct _RAS_USER_0 {
BYTE bfPrivilege;
WCHAR wszPhoneNumber[128 + 1];
} RAS_USER_0,*PRAS_USER_0;
typedef struct _RAS_USER_1 {
BYTE bfPrivilege;
WCHAR wszPhoneNumber[128 + 1];
BYTE bfPrivilege2;
} RAS_USER_1,*PRAS_USER_1;
typedef HANDLE RAS_SERVER_HANDLE;
typedef HANDLE MPR_SERVER_HANDLE;
typedef HANDLE MIB_SERVER_HANDLE;
DWORD __attribute__((__stdcall__)) MprAdminConnectionEnum(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
DWORD __attribute__((__stdcall__)) MprAdminPortEnum(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hConnection,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
DWORD __attribute__((__stdcall__)) MprAdminConnectionGetInfo(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hConnection,LPBYTE *lplpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminPortGetInfo(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hPort,LPBYTE *lplpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminConnectionClearStats(RAS_SERVER_HANDLE hRasServer,HANDLE hConnection);
DWORD __attribute__((__stdcall__)) MprAdminPortClearStats(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
DWORD __attribute__((__stdcall__)) MprAdminPortReset(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
DWORD __attribute__((__stdcall__)) MprAdminPortDisconnect(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
WINBOOL __attribute__((__stdcall__)) MprAdminAcceptNewConnection(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1);
WINBOOL __attribute__((__stdcall__)) MprAdminAcceptNewConnection2(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1,RAS_CONNECTION_2 *pRasConnection2);
WINBOOL __attribute__((__stdcall__)) MprAdminAcceptNewLink (RAS_PORT_0 *pRasPort0,RAS_PORT_1 *pRasPort1);
void __attribute__((__stdcall__)) MprAdminConnectionHangupNotification(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1);
void __attribute__((__stdcall__)) MprAdminConnectionHangupNotification2(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1,RAS_CONNECTION_2 *pRasConnection2);
DWORD __attribute__((__stdcall__)) MprAdminConnectionRemoveQuarantine(HANDLE hRasServer,HANDLE hRasConnection,WINBOOL fIsIpAddress);
void __attribute__((__stdcall__)) MprAdminLinkHangupNotification (RAS_PORT_0 *pRasPort0,RAS_PORT_1 *pRasPort1);
DWORD __attribute__((__stdcall__)) MprAdminGetIpAddressForUser (WCHAR *lpwszUserName,WCHAR *lpwszPortName,DWORD *lpdwIpAddress,WINBOOL *bNotifyRelease);
void __attribute__((__stdcall__)) MprAdminReleaseIpAddress (WCHAR *lpszUserName,WCHAR *lpszPortName,DWORD *lpdwIpAddress);
DWORD __attribute__((__stdcall__)) MprAdminInitializeDll(void);
DWORD __attribute__((__stdcall__)) MprAdminTerminateDll(void);
DWORD __attribute__((__stdcall__)) MprAdminUserGetInfo(const WCHAR *lpszServer,const WCHAR *lpszUser,DWORD dwLevel,LPBYTE lpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminUserSetInfo(const WCHAR *lpszServer,const WCHAR *lpszUser,DWORD dwLevel,const LPBYTE lpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminSendUserMessage(MPR_SERVER_HANDLE hMprServer,HANDLE hConnection,LPWSTR lpwszMessage);
DWORD __attribute__((__stdcall__)) MprAdminGetPDCServer(const WCHAR *lpszDomain,const WCHAR *lpszServer,LPWSTR lpszPDCServer);
WINBOOL __attribute__((__stdcall__)) MprAdminIsServiceRunning(LPWSTR lpwsServerName);
DWORD __attribute__((__stdcall__)) MprAdminServerConnect(LPWSTR lpwsServerName,MPR_SERVER_HANDLE *phMprServer);
void __attribute__((__stdcall__)) MprAdminServerDisconnect(MPR_SERVER_HANDLE hMprServer);
DWORD __attribute__((__stdcall__)) MprAdminServerGetCredentials(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminServerSetCredentials(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminBufferFree(LPVOID pBuffer);
DWORD __attribute__((__stdcall__)) MprAdminGetErrorString(DWORD dwError,LPWSTR *lpwsErrorString);
DWORD __attribute__((__stdcall__)) MprAdminServerGetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminServerSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminEstablishDomainRasServer (PWCHAR pszDomain,PWCHAR pszMachine,WINBOOL bEnable);
DWORD __attribute__((__stdcall__)) MprAdminIsDomainRasServer (PWCHAR pszDomain,PWCHAR pszMachine,PBOOL pbIsRasServer);
DWORD __attribute__((__stdcall__)) MprAdminTransportCreate(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath);
DWORD __attribute__((__stdcall__)) MprAdminTransportSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize);
DWORD __attribute__((__stdcall__)) MprAdminTransportGetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPBYTE *ppGlobalInfo,LPDWORD lpdwGlobalInfoSize,LPBYTE *ppClientInterfaceInfo,LPDWORD lpdwClientInterfaceInfoSize);
DWORD __attribute__((__stdcall__)) MprAdminDeviceEnum(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer,LPDWORD lpdwTotalEntries);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceGetHandle(MPR_SERVER_HANDLE hMprServer,LPWSTR lpwsInterfaceName,HANDLE *phInterface,WINBOOL fIncludeClientInterfaces);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceCreate(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer,HANDLE *phInterface);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE *lplpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE lpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceDelete(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceDeviceGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwIndex,DWORD dwLevel,LPBYTE *lplpBuffer);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceDeviceSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwIndex,DWORD dwLevel,LPBYTE lplpBuffer);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceTransportRemove(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceTransportAdd(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceTransportGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE *ppInterfaceInfo,LPDWORD lpdwpInterfaceInfoSize);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceTransportSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceEnum(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
DWORD __attribute__((__stdcall__)) MprSetupIpInIpInterfaceFriendlyNameEnum(PWCHAR pwszMachineName,LPBYTE *lplpBuffer,LPDWORD lpdwEntriesRead);
DWORD __attribute__((__stdcall__)) MprSetupIpInIpInterfaceFriendlyNameFree(LPVOID lpBuffer);
DWORD __attribute__((__stdcall__)) MprSetupIpInIpInterfaceFriendlyNameCreate(PWCHAR pwszMachineName,PMPR_IPINIP_INTERFACE_0 pNameInformation);
DWORD __attribute__((__stdcall__)) MprSetupIpInIpInterfaceFriendlyNameDelete(PWCHAR pwszMachineName,GUID *pGuid);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceSetCredentials(LPWSTR lpwsServer,LPWSTR lpwsInterfaceName,LPWSTR lpwsUserName,LPWSTR lpwsDomainName,LPWSTR lpwsPassword);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceGetCredentials(LPWSTR lpwsServer,LPWSTR lpwsInterfaceName,LPWSTR lpwsUserName,LPWSTR lpwsPassword,LPWSTR lpwsDomainName);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceSetCredentialsEx(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE lpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceGetCredentialsEx(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE *lplpbBuffer);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceConnect(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,HANDLE hEvent,WINBOOL fSynchronous);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceDisconnect(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceUpdateRoutes(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwProtocolId,HANDLE hEvent);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceQueryUpdateResult(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwProtocolId,LPDWORD lpdwUpdateResult);
DWORD __attribute__((__stdcall__)) MprAdminInterfaceUpdatePhonebookInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
DWORD __attribute__((__stdcall__)) MprAdminRegisterConnectionNotification(MPR_SERVER_HANDLE hMprServer,HANDLE hEventNotification);
DWORD __attribute__((__stdcall__)) MprAdminDeregisterConnectionNotification(MPR_SERVER_HANDLE hMprServer,HANDLE hEventNotification);
DWORD __attribute__((__stdcall__)) MprAdminMIBServerConnect(LPWSTR lpwsServerName,MIB_SERVER_HANDLE *phMibServer);
void __attribute__((__stdcall__)) MprAdminMIBServerDisconnect(MIB_SERVER_HANDLE hMibServer);
DWORD __attribute__((__stdcall__)) MprAdminMIBEntryCreate(MIB_SERVER_HANDLE hMibServer,DWORD dwPid,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
DWORD __attribute__((__stdcall__)) MprAdminMIBEntryDelete(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
DWORD __attribute__((__stdcall__)) MprAdminMIBEntrySet(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
DWORD __attribute__((__stdcall__)) MprAdminMIBEntryGet(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
DWORD __attribute__((__stdcall__)) MprAdminMIBEntryGetFirst(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
DWORD __attribute__((__stdcall__)) MprAdminMIBEntryGetNext(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
DWORD __attribute__((__stdcall__)) MprAdminMIBGetTrapInfo(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInData,DWORD dwInDataSize,LPVOID *lplpOutData,LPDWORD lpOutDataSize);
DWORD __attribute__((__stdcall__)) MprAdminMIBSetTrapInfo(DWORD dwProtocolId,DWORD dwRoutingPid,HANDLE hEvent,LPVOID lpInData,DWORD dwInDataSize,LPVOID *lplpOutData,LPDWORD lpOutDataSize);
DWORD __attribute__((__stdcall__)) MprAdminMIBBufferFree(LPVOID pBuffer);
DWORD __attribute__((__stdcall__)) MprConfigServerInstall(DWORD dwLevel,PVOID pBuffer);
DWORD __attribute__((__stdcall__)) MprConfigServerConnect(LPWSTR lpwsServerName,HANDLE *phMprConfig);
void __attribute__((__stdcall__)) MprConfigServerDisconnect(HANDLE hMprConfig);
DWORD __attribute__((__stdcall__)) MprConfigServerRefresh(HANDLE hMprConfig);
DWORD __attribute__((__stdcall__)) MprConfigBufferFree(LPVOID pBuffer);
DWORD __attribute__((__stdcall__)) MprConfigServerGetInfo(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpbBuffer);
DWORD __attribute__((__stdcall__)) MprConfigServerSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
DWORD __attribute__((__stdcall__)) MprConfigServerBackup(HANDLE hMprConfig,LPWSTR lpwsPath);
DWORD __attribute__((__stdcall__)) MprConfigServerRestore(HANDLE hMprConfig,LPWSTR lpwsPath);
DWORD __attribute__((__stdcall__)) MprConfigTransportCreate(HANDLE hMprConfig,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath,HANDLE *phRouterTransport);
DWORD __attribute__((__stdcall__)) MprConfigTransportDelete(HANDLE hMprConfig,HANDLE hRouterTransport);
DWORD __attribute__((__stdcall__)) MprConfigTransportGetHandle(HANDLE hMprConfig,DWORD dwTransportId,HANDLE *phRouterTransport);
DWORD __attribute__((__stdcall__)) MprConfigTransportSetInfo(HANDLE hMprConfig,HANDLE hRouterTransport,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath);
DWORD __attribute__((__stdcall__)) MprConfigTransportGetInfo(HANDLE hMprConfig,HANDLE hRouterTransport,LPBYTE *ppGlobalInfo,LPDWORD lpdwGlobalInfoSize,LPBYTE *ppClientInterfaceInfo,LPDWORD lpdwClientInterfaceInfoSize,LPWSTR *lplpwsDLLPath);
DWORD __attribute__((__stdcall__)) MprConfigTransportEnum(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceCreate(HANDLE hMprConfig,DWORD dwLevel,LPBYTE lpbBuffer,HANDLE *phRouterInterface);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceDelete(HANDLE hMprConfig,HANDLE hRouterInterface);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceGetHandle(HANDLE hMprConfig,LPWSTR lpwsInterfaceName,HANDLE *phRouterInterface);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceGetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE *lplpBuffer,LPDWORD lpdwBufferSize);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceSetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE lpbBuffer);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceEnum(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceTransportAdd(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize,HANDLE *phRouterIfTransport);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceTransportRemove(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceTransportGetHandle(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwTransportId,HANDLE *phRouterIfTransport);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceTransportGetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport,LPBYTE *ppInterfaceInfo,LPDWORD lpdwInterfaceInfoSize);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceTransportSetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
DWORD __attribute__((__stdcall__)) MprConfigInterfaceTransportEnum(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
DWORD __attribute__((__stdcall__)) MprConfigGetFriendlyName(HANDLE hMprConfig,PWCHAR pszGuidName,PWCHAR pszBuffer,DWORD dwBufferSize);
DWORD __attribute__((__stdcall__)) MprConfigGetGuidName(HANDLE hMprConfig,PWCHAR pszFriendlyName,PWCHAR pszBuffer,DWORD dwBufferSize);
DWORD __attribute__((__stdcall__)) MprInfoCreate(DWORD dwVersion,LPVOID *lplpNewHeader);
DWORD __attribute__((__stdcall__)) MprInfoDelete(LPVOID lpHeader);
DWORD __attribute__((__stdcall__)) MprInfoRemoveAll(LPVOID lpHeader,LPVOID *lplpNewHeader);
DWORD __attribute__((__stdcall__)) MprInfoDuplicate(LPVOID lpHeader,LPVOID *lplpNewHeader);
DWORD __attribute__((__stdcall__)) MprInfoBlockAdd(LPVOID lpHeader,DWORD dwInfoType,DWORD dwItemSize,DWORD dwItemCount,LPBYTE lpItemData,LPVOID *lplpNewHeader);
DWORD __attribute__((__stdcall__)) MprInfoBlockRemove(LPVOID lpHeader,DWORD dwInfoType,LPVOID *lplpNewHeader);
DWORD __attribute__((__stdcall__)) MprInfoBlockSet(LPVOID lpHeader,DWORD dwInfoType,DWORD dwItemSize,DWORD dwItemCount,LPBYTE lpItemData,LPVOID *lplpNewHeader);
DWORD __attribute__((__stdcall__)) MprInfoBlockFind(LPVOID lpHeader,DWORD dwInfoType,LPDWORD lpdwItemSize,LPDWORD lpdwItemCount,LPBYTE *lplpItemData);
DWORD __attribute__((__stdcall__)) MprInfoBlockQuerySize(LPVOID lpHeader);
typedef enum {
NldsInvalid,
NldsTentative,
NldsDuplicate,
NldsDeprecated,
NldsPreferred,
IpDadStateInvalid = 0,
IpDadStateTentative,
IpDadStateDuplicate,
IpDadStateDeprecated,
IpDadStatePreferred,
} NL_DAD_STATE;
typedef enum {
RouteProtocolOther = 1,
RouteProtocolLocal = 2,
RouteProtocolNetMgmt = 3,
RouteProtocolIcmp = 4,
RouteProtocolEgp = 5,
RouteProtocolGgp = 6,
RouteProtocolHello = 7,
RouteProtocolRip = 8,
RouteProtocolIsIs = 9,
RouteProtocolEsIs = 10,
RouteProtocolCisco = 11,
RouteProtocolBbn = 12,
RouteProtocolOspf = 13,
RouteProtocolBgp = 14,
MIB_IPPROTO_OTHER = 1, PROTO_IP_OTHER = 1,
MIB_IPPROTO_LOCAL = 2, PROTO_IP_LOCAL = 2,
MIB_IPPROTO_NETMGMT = 3, PROTO_IP_NETMGMT = 3,
MIB_IPPROTO_ICMP = 4, PROTO_IP_ICMP = 4,
MIB_IPPROTO_EGP = 5, PROTO_IP_EGP = 5,
MIB_IPPROTO_GGP = 6, PROTO_IP_GGP = 6,
MIB_IPPROTO_HELLO = 7, PROTO_IP_HELLO = 7,
MIB_IPPROTO_RIP = 8, PROTO_IP_RIP = 8,
MIB_IPPROTO_IS_IS = 9, PROTO_IP_IS_IS = 9,
MIB_IPPROTO_ES_IS = 10, PROTO_IP_ES_IS = 10,
MIB_IPPROTO_CISCO = 11, PROTO_IP_CISCO = 11,
MIB_IPPROTO_BBN = 12, PROTO_IP_BBN = 12,
MIB_IPPROTO_OSPF = 13, PROTO_IP_OSPF = 13,
MIB_IPPROTO_BGP = 14, PROTO_IP_BGP = 14,
MIB_IPPROTO_NT_AUTOSTATIC = 10002, PROTO_IP_NT_AUTOSTATIC = 10002,
MIB_IPPROTO_NT_STATIC = 10006, PROTO_IP_NT_STATIC = 10006,
MIB_IPPROTO_NT_STATIC_NON_DOD = 10007, PROTO_IP_NT_STATIC_NON_DOD = 10007
} NL_ROUTE_PROTOCOL,*PNL_ROUTE_PROTOCOL;
typedef enum {
IpPrefixOriginOther = 0,
IpPrefixOriginManual,
IpPrefixOriginWellKnown,
IpPrefixOriginDhcp,
IpPrefixOriginRouterAdvertisement,
IpPrefixOriginUnchanged = 16
} NL_PREFIX_ORIGIN;
typedef enum {
NlsoOther = 0,
NlsoManual,
NlsoWellKnown,
NlsoDhcp,
NlsoLinkLayerAddress,
NlsoRandom,
IpSuffixOriginOther = 0,
IpSuffixOriginManual,
IpSuffixOriginWellKnown,
IpSuffixOriginDhcp,
IpSuffixOriginLinkLayerAddress,
IpSuffixOriginRandom,
IpSuffixOriginUnchanged = 16
} NL_SUFFIX_ORIGIN;
typedef enum {
NlatUnspecified,
NlatUnicast,
NlatAnycast,
NlatMulticast,
NlatBroadcast,
NlatInvalid
} NL_ADDRESS_TYPE, *PNL_ADDRESS_TYPE;
typedef enum _NL_ROUTE_ORIGIN {
NlroManual,
NlroWellKnown,
NlroDHCP,
NlroRouterAdvertisement,
Nlro6to4,
} NL_ROUTE_ORIGIN, *PNL_ROUTE_ORIGIN;
typedef enum _NL_NEIGHBOR_STATE {
NlnsUnreachable,
NlnsIncomplete,
NlnsProbe,
NlnsDelay,
NlnsStale,
NlnsReachable,
NlnsPermanent,
NlnsMaximum,
} NL_NEIGHBOR_STATE, *PNL_NEIGHBOR_STATE;
typedef enum _NL_LINK_LOCAL_ADDRESS_BEHAVIOR {
LinkLocalAlwaysOff = 0,
LinkLocalDelayed,
LinkLocalAlwaysOn,
LinkLocalUnchanged = -1
} NL_LINK_LOCAL_ADDRESS_BEHAVIOR;
typedef enum _NL_ROUTER_DISCOVERY_BEHAVIOR {
RouterDiscoveryDisabled = 0,
RouterDiscoveryEnabled,
RouterDiscoveryDhcp,
RouterDiscoveryUnchanged = -1
} NL_ROUTER_DISCOVERY_BEHAVIOR;
typedef enum _NL_BANDWIDTH_FLAG {
NlbwDisabled = 0,
NlbwEnabled,
NlbwUnchanged = -1
} NL_BANDWIDTH_FLAG, *PNL_BANDWIDTH_FLAG;
typedef enum _NL_INTERFACE_NETWORK_CATEGORY_STATE {
NlincCategoryUnknown = 0,
NlincPublic = 1,
NlincPrivate = 2,
NlincDomainAuthenticated = 3,
NlincCategoryStateMax
} NL_INTERFACE_NETWORK_CATEGORY_STATE, *PNL_INTERFACE_NETWORK_CATEGORY_STATE;
typedef struct _NL_INTERFACE_OFFLOAD_ROD {
BOOLEAN NlChecksumSupported : 1;
BOOLEAN NlOptionsSupported : 1;
BOOLEAN TlDatagramChecksumSupported : 1;
BOOLEAN TlStreamChecksumSupported : 1;
BOOLEAN TlStreamOptionsSupported : 1;
BOOLEAN FastPathCompatible : 1;
BOOLEAN TlLargeSendOffloadSupported : 1;
BOOLEAN TlGiantSendOffloadSupported : 1;
} NL_INTERFACE_OFFLOAD_ROD, *PNL_INTERFACE_OFFLOAD_ROD;
typedef struct _NL_PATH_BANDWIDTH_ROD {
ULONG64 Bandwidth;
ULONG64 Instability;
BOOLEAN BandwidthPeaked;
} NL_PATH_BANDWIDTH_ROD, *PNL_PATH_BANDWIDTH_ROD;
typedef enum _NL_NETWORK_CATEGORY {
NetworkCategoryPublic,
NetworkCategoryPrivate,
NetworkCategoryDomainAuthenticated,
NetworkCategoryUnchanged = -1,
NetworkCategoryUnknown = -1
} NL_NETWORK_CATEGORY,*PNL_NETWORK_CATEGORY;
typedef struct _NL_BANDWIDTH_INFORMATION {
ULONG64 Bandwidth;
ULONG64 Instability;
BOOLEAN BandwidthPeaked;
} NL_BANDWIDTH_INFORMATION, *PNL_BANDWIDTH_INFORMATION;
typedef ULONG IFTYPE;
typedef struct _MIB_OPAQUE_QUERY {
DWORD dwVarId;
DWORD rgdwVarIndex[1];
} MIB_OPAQUE_QUERY,*PMIB_OPAQUE_QUERY;
typedef struct _MIB_IFNUMBER {
DWORD dwValue;
} MIB_IFNUMBER,*PMIB_IFNUMBER;
typedef struct _MIB_IFROW {
WCHAR wszName[256];
DWORD dwIndex;
DWORD dwType;
DWORD dwMtu;
DWORD dwSpeed;
DWORD dwPhysAddrLen;
BYTE bPhysAddr[8];
DWORD dwAdminStatus;
DWORD dwOperStatus;
DWORD dwLastChange;
DWORD dwInOctets;
DWORD dwInUcastPkts;
DWORD dwInNUcastPkts;
DWORD dwInDiscards;
DWORD dwInErrors;
DWORD dwInUnknownProtos;
DWORD dwOutOctets;
DWORD dwOutUcastPkts;
DWORD dwOutNUcastPkts;
DWORD dwOutDiscards;
DWORD dwOutErrors;
DWORD dwOutQLen;
DWORD dwDescrLen;
BYTE bDescr[256];
} MIB_IFROW,*PMIB_IFROW;
typedef struct _MIB_IFTABLE {
DWORD dwNumEntries;
MIB_IFROW table[1];
} MIB_IFTABLE,*PMIB_IFTABLE;
typedef struct _MIBICMPSTATS {
DWORD dwMsgs;
DWORD dwErrors;
DWORD dwDestUnreachs;
DWORD dwTimeExcds;
DWORD dwParmProbs;
DWORD dwSrcQuenchs;
DWORD dwRedirects;
DWORD dwEchos;
DWORD dwEchoReps;
DWORD dwTimestamps;
DWORD dwTimestampReps;
DWORD dwAddrMasks;
DWORD dwAddrMaskReps;
} MIBICMPSTATS,*PMIBICMPSTATS;
typedef struct _MIBICMPINFO {
MIBICMPSTATS icmpInStats;
MIBICMPSTATS icmpOutStats;
} MIBICMPINFO;
typedef struct _MIB_ICMP {
MIBICMPINFO stats;
} MIB_ICMP,*PMIB_ICMP;
typedef enum {
ICMP6_DST_UNREACH = 1,ICMP6_PACKET_TOO_BIG = 2,ICMP6_TIME_EXCEEDED = 3,ICMP6_PARAM_PROB = 4,ICMP6_ECHO_REQUEST = 128,
ICMP6_ECHO_REPLY = 129,ICMP6_MEMBERSHIP_QUERY = 130,ICMP6_MEMBERSHIP_REPORT = 131,ICMP6_MEMBERSHIP_REDUCTION = 132,
ND_ROUTER_SOLICIT = 133,ND_ROUTER_ADVERT = 134,ND_NEIGHBOR_SOLICIT = 135,ND_NEIGHBOR_ADVERT = 136,ND_REDIRECT = 137
} ICMP6_TYPE,*PICMP6_TYPE;
typedef enum {
ICMP4_ECHO_REPLY = 0,ICMP4_DST_UNREACH = 3,ICMP4_SOURCE_QUENCH = 4,ICMP4_REDIRECT = 5,ICMP4_ECHO_REQUEST = 8,ICMP4_ROUTER_ADVERT = 9,
ICMP4_ROUTER_SOLICIT = 10,ICMP4_TIME_EXCEEDED = 11,ICMP4_PARAM_PROB = 12,ICMP4_TIMESTAMP_REQUEST = 13,ICMP4_TIMESTAMP_REPLY = 14,
ICMP4_MASK_REQUEST = 17,ICMP4_MASK_REPLY = 18
} ICMP4_TYPE,*PICMP4_TYPE;
typedef struct _MIBICMPSTATS_EX {
DWORD dwMsgs;
DWORD dwErrors;
DWORD rgdwTypeCount[256];
} MIBICMPSTATS_EX,*PMIBICMPSTATS_EX;
typedef struct _MIB_ICMP_EX {
MIBICMPSTATS_EX icmpInStats;
MIBICMPSTATS_EX icmpOutStats;
} MIB_ICMP_EX,*PMIB_ICMP_EX;
typedef struct _MIB_UDPSTATS {
DWORD dwInDatagrams;
DWORD dwNoPorts;
DWORD dwInErrors;
DWORD dwOutDatagrams;
DWORD dwNumAddrs;
} MIB_UDPSTATS,*PMIB_UDPSTATS;
typedef struct _MIB_UDPROW {
DWORD dwLocalAddr;
DWORD dwLocalPort;
} MIB_UDPROW,*PMIB_UDPROW;
typedef MIB_UDPROW MIB_UDPROW_BASIC,*PMIB_UDPROW_BASIC;
typedef struct _MIB_UDPROW_OWNER_PID {
DWORD dwLocalAddr;
DWORD dwLocalPort;
DWORD dwOwningPid;
} MIB_UDPROW_OWNER_PID,*PMIB_UDPROW_OWNER_PID;
typedef struct _MIB_UDPROW_OWNER_MODULE {
DWORD dwLocalAddr;
DWORD dwLocalPort;
DWORD dwOwningPid;
LARGE_INTEGER liCreateTimestamp;
__extension__ union {
__extension__ struct {
DWORD SpecificPortBind : 1;
};
DWORD dwFlags;
};
ULONGLONG OwningModuleInfo[16];
} MIB_UDPROW_OWNER_MODULE,*PMIB_UDPROW_OWNER_MODULE;
typedef struct _MIB_UDP6ROW_OWNER_PID {
UCHAR ucLocalAddr[16];
DWORD dwLocalScopeId;
DWORD dwLocalPort;
DWORD dwOwningPid;
} MIB_UDP6ROW_OWNER_PID,*PMIB_UDP6ROW_OWNER_PID;
typedef struct _MIB_UDP6ROW_OWNER_MODULE {
UCHAR ucLocalAddr[16];
DWORD dwLocalScopeId;
DWORD dwLocalPort;
DWORD dwOwningPid;
LARGE_INTEGER liCreateTimestamp;
__extension__ union {
__extension__ struct {
DWORD SpecificPortBind : 1;
};
DWORD dwFlags;
};
ULONGLONG OwningModuleInfo[16];
} MIB_UDP6ROW_OWNER_MODULE,*PMIB_UDP6ROW_OWNER_MODULE;
typedef struct _MIB_UDPTABLE {
DWORD dwNumEntries;
MIB_UDPROW table[1];
} MIB_UDPTABLE,*PMIB_UDPTABLE;
typedef MIB_UDPTABLE MIB_UDPTABLE_BASIC,*PMIB_UDPTABLE_BASIC;
typedef struct _MIB_UDPTABLE_OWNER_PID {
DWORD dwNumEntries;
MIB_UDPROW_OWNER_PID table[1];
} MIB_UDPTABLE_OWNER_PID,*PMIB_UDPTABLE_OWNER_PID;
typedef struct _MIB_UDPTABLE_OWNER_MODULE {
DWORD dwNumEntries;
MIB_UDPROW_OWNER_MODULE table[1];
} MIB_UDPTABLE_OWNER_MODULE,*PMIB_UDPTABLE_OWNER_MODULE;
typedef struct _MIB_UDP6TABLE_OWNER_PID {
DWORD dwNumEntries;
MIB_UDP6ROW_OWNER_PID table[1];
} MIB_UDP6TABLE_OWNER_PID,*PMIB_UDP6TABLE_OWNER_PID;
typedef struct _MIB_UDP6TABLE_OWNER_MODULE {
DWORD dwNumEntries;
MIB_UDP6ROW_OWNER_MODULE table[1];
} MIB_UDP6TABLE_OWNER_MODULE,*PMIB_UDP6TABLE_OWNER_MODULE;
typedef struct _MIB_TCPSTATS {
DWORD dwRtoAlgorithm;
DWORD dwRtoMin;
DWORD dwRtoMax;
DWORD dwMaxConn;
DWORD dwActiveOpens;
DWORD dwPassiveOpens;
DWORD dwAttemptFails;
DWORD dwEstabResets;
DWORD dwCurrEstab;
DWORD dwInSegs;
DWORD dwOutSegs;
DWORD dwRetransSegs;
DWORD dwInErrs;
DWORD dwOutRsts;
DWORD dwNumConns;
} MIB_TCPSTATS,*PMIB_TCPSTATS;
typedef enum _TCP_TABLE_CLASS {
TCP_TABLE_BASIC_LISTENER,
TCP_TABLE_BASIC_CONNECTIONS,
TCP_TABLE_BASIC_ALL,
TCP_TABLE_OWNER_PID_LISTENER,
TCP_TABLE_OWNER_PID_CONNECTIONS,
TCP_TABLE_OWNER_PID_ALL,
TCP_TABLE_OWNER_MODULE_LISTENER,
TCP_TABLE_OWNER_MODULE_CONNECTIONS,
TCP_TABLE_OWNER_MODULE_ALL
} TCP_TABLE_CLASS, *PTCP_TABLE_CLASS;
typedef struct _MIB_TCPROW {
DWORD dwState;
DWORD dwLocalAddr;
DWORD dwLocalPort;
DWORD dwRemoteAddr;
DWORD dwRemotePort;
} MIB_TCPROW,*PMIB_TCPROW;
typedef MIB_TCPROW MIB_TCPROW_BASIC,*PMIB_TCPROW_BASIC;
typedef struct _MIB_TCPROW_OWNER_PID {
DWORD dwState;
DWORD dwLocalAddr;
DWORD dwLocalPort;
DWORD dwRemoteAddr;
DWORD dwRemotePort;
DWORD dwOwningPid;
} MIB_TCPROW_OWNER_PID,*PMIB_TCPROW_OWNER_PID;
typedef struct _MIB_TCPROW_OWNER_MODULE {
DWORD dwState;
DWORD dwLocalAddr;
DWORD dwLocalPort;
DWORD dwRemoteAddr;
DWORD dwRemotePort;
DWORD dwOwningPid;
LARGE_INTEGER liCreateTimestamp;
ULONGLONG OwningModuleInfo[16];
} MIB_TCPROW_OWNER_MODULE,*PMIB_TCPROW_OWNER_MODULE;
typedef struct _MIB_TCP6ROW_OWNER_PID {
UCHAR ucLocalAddr[16];
DWORD dwLocalScopeId;
DWORD dwLocalPort;
UCHAR ucRemoteAddr[16];
DWORD dwRemoteScopeId;
DWORD dwRemotePort;
DWORD dwState;
DWORD dwOwningPid;
} MIB_TCP6ROW_OWNER_PID,*PMIB_TCP6ROW_OWNER_PID;
typedef struct _MIB_TCP6ROW_OWNER_MODULE {
UCHAR ucLocalAddr[16];
DWORD dwLocalScopeId;
DWORD dwLocalPort;
UCHAR ucRemoteAddr[16];
DWORD dwRemoteScopeId;
DWORD dwRemotePort;
DWORD dwState;
DWORD dwOwningPid;
LARGE_INTEGER liCreateTimestamp;
ULONGLONG OwningModuleInfo[16];
} MIB_TCP6ROW_OWNER_MODULE,*PMIB_TCP6ROW_OWNER_MODULE;
typedef struct _MIB_TCPTABLE {
DWORD dwNumEntries;
MIB_TCPROW table[1];
} MIB_TCPTABLE,*PMIB_TCPTABLE;
typedef MIB_TCPTABLE MIB_TCPTABLE_BASIC,*PMIB_TCPTABLE_BASIC;
typedef struct _MIB_TCPTABLE_OWNER_PID {
DWORD dwNumEntries;
MIB_TCPROW_OWNER_PID table[1];
} MIB_TCPTABLE_OWNER_PID,*PMIB_TCPTABLE_OWNER_PID;
typedef struct _MIB_TCPTABLE_OWNER_MODULE {
DWORD dwNumEntries;
MIB_TCPROW_OWNER_MODULE table[1];
} MIB_TCPTABLE_OWNER_MODULE,*PMIB_TCPTABLE_OWNER_MODULE;
typedef struct _MIB_TCP6TABLE_OWNER_PID {
DWORD dwNumEntries;
MIB_TCP6ROW_OWNER_PID table[1];
} MIB_TCP6TABLE_OWNER_PID,*PMIB_TCP6TABLE_OWNER_PID;
typedef struct _MIB_TCP6TABLE_OWNER_MODULE {
DWORD dwNumEntries;
MIB_TCP6ROW_OWNER_MODULE table[1];
} MIB_TCP6TABLE_OWNER_MODULE,*PMIB_TCP6TABLE_OWNER_MODULE;
typedef struct _MIB_IPSTATS {
DWORD dwForwarding;
DWORD dwDefaultTTL;
DWORD dwInReceives;
DWORD dwInHdrErrors;
DWORD dwInAddrErrors;
DWORD dwForwDatagrams;
DWORD dwInUnknownProtos;
DWORD dwInDiscards;
DWORD dwInDelivers;
DWORD dwOutRequests;
DWORD dwRoutingDiscards;
DWORD dwOutDiscards;
DWORD dwOutNoRoutes;
DWORD dwReasmTimeout;
DWORD dwReasmReqds;
DWORD dwReasmOks;
DWORD dwReasmFails;
DWORD dwFragOks;
DWORD dwFragFails;
DWORD dwFragCreates;
DWORD dwNumIf;
DWORD dwNumAddr;
DWORD dwNumRoutes;
} MIB_IPSTATS,*PMIB_IPSTATS;
typedef struct _MIB_IPADDRROW {
DWORD dwAddr;
DWORD dwIndex;
DWORD dwMask;
DWORD dwBCastAddr;
DWORD dwReasmSize;
unsigned short unused1;
unsigned short wType;
} MIB_IPADDRROW,*PMIB_IPADDRROW;
typedef struct _MIB_IPADDRTABLE {
DWORD dwNumEntries;
MIB_IPADDRROW table[1];
} MIB_IPADDRTABLE,*PMIB_IPADDRTABLE;
typedef struct _MIB_IPFORWARDNUMBER {
DWORD dwValue;
} MIB_IPFORWARDNUMBER,*PMIB_IPFORWARDNUMBER;
typedef struct _MIB_IPFORWARDROW {
DWORD dwForwardDest;
DWORD dwForwardMask;
DWORD dwForwardPolicy;
DWORD dwForwardNextHop;
DWORD dwForwardIfIndex;
DWORD dwForwardType;
DWORD dwForwardProto;
DWORD dwForwardAge;
DWORD dwForwardNextHopAS;
DWORD dwForwardMetric1;
DWORD dwForwardMetric2;
DWORD dwForwardMetric3;
DWORD dwForwardMetric4;
DWORD dwForwardMetric5;
} MIB_IPFORWARDROW,*PMIB_IPFORWARDROW;
typedef struct _MIB_IPFORWARDTABLE {
DWORD dwNumEntries;
MIB_IPFORWARDROW table[1];
} MIB_IPFORWARDTABLE,*PMIB_IPFORWARDTABLE;
typedef struct _MIB_IPNETROW {
DWORD dwIndex;
DWORD dwPhysAddrLen;
BYTE bPhysAddr[8];
DWORD dwAddr;
DWORD dwType;
} MIB_IPNETROW,*PMIB_IPNETROW;
typedef struct _MIB_IPNETTABLE {
DWORD dwNumEntries;
MIB_IPNETROW table[1];
} MIB_IPNETTABLE,*PMIB_IPNETTABLE;
typedef struct _MIB_IPMCAST_OIF {
DWORD dwOutIfIndex;
DWORD dwNextHopAddr;
DWORD dwReserved;
DWORD dwReserved1;
} MIB_IPMCAST_OIF,*PMIB_IPMCAST_OIF;
typedef struct _MIB_IPMCAST_MFE {
DWORD dwGroup;
DWORD dwSource;
DWORD dwSrcMask;
DWORD dwUpStrmNgbr;
DWORD dwInIfIndex;
DWORD dwInIfProtocol;
DWORD dwRouteProtocol;
DWORD dwRouteNetwork;
DWORD dwRouteMask;
ULONG ulUpTime;
ULONG ulExpiryTime;
ULONG ulTimeOut;
ULONG ulNumOutIf;
DWORD fFlags;
DWORD dwReserved;
MIB_IPMCAST_OIF rgmioOutInfo[1];
} MIB_IPMCAST_MFE,*PMIB_IPMCAST_MFE;
typedef struct _MIB_MFE_TABLE {
DWORD dwNumEntries;
MIB_IPMCAST_MFE table[1];
} MIB_MFE_TABLE,*PMIB_MFE_TABLE;
typedef struct _MIB_IPMCAST_OIF_STATS {
DWORD dwOutIfIndex;
DWORD dwNextHopAddr;
DWORD dwDialContext;
ULONG ulTtlTooLow;
ULONG ulFragNeeded;
ULONG ulOutPackets;
ULONG ulOutDiscards;
} MIB_IPMCAST_OIF_STATS,*PMIB_IPMCAST_OIF_STATS;
typedef struct _MIB_IPMCAST_MFE_STATS {
DWORD dwGroup;
DWORD dwSource;
DWORD dwSrcMask;
DWORD dwUpStrmNgbr;
DWORD dwInIfIndex;
DWORD dwInIfProtocol;
DWORD dwRouteProtocol;
DWORD dwRouteNetwork;
DWORD dwRouteMask;
ULONG ulUpTime;
ULONG ulExpiryTime;
ULONG ulNumOutIf;
ULONG ulInPkts;
ULONG ulInOctets;
ULONG ulPktsDifferentIf;
ULONG ulQueueOverflow;
MIB_IPMCAST_OIF_STATS rgmiosOutStats[1];
} MIB_IPMCAST_MFE_STATS,*PMIB_IPMCAST_MFE_STATS;
typedef struct _MIB_MFE_STATS_TABLE {
DWORD dwNumEntries;
MIB_IPMCAST_MFE_STATS table[1];
} MIB_MFE_STATS_TABLE,*PMIB_MFE_STATS_TABLE;
typedef struct _MIB_IPMCAST_MFE_STATS_EX {
DWORD dwGroup;
DWORD dwSource;
DWORD dwSrcMask;
DWORD dwUpStrmNgbr;
DWORD dwInIfIndex;
DWORD dwInIfProtocol;
DWORD dwRouteProtocol;
DWORD dwRouteNetwork;
DWORD dwRouteMask;
ULONG ulUpTime;
ULONG ulExpiryTime;
ULONG ulNumOutIf;
ULONG ulInPkts;
ULONG ulInOctets;
ULONG ulPktsDifferentIf;
ULONG ulQueueOverflow;
ULONG ulUninitMfe;
ULONG ulNegativeMfe;
ULONG ulInDiscards;
ULONG ulInHdrErrors;
ULONG ulTotalOutPackets;
MIB_IPMCAST_OIF_STATS rgmiosOutStats[1];
} MIB_IPMCAST_MFE_STATS_EX,*PMIB_IPMCAST_MFE_STATS_EX;
typedef struct _MIB_MFE_STATS_TABLE_EX {
DWORD dwNumEntries;
MIB_IPMCAST_MFE_STATS_EX table[1];
} MIB_MFE_STATS_TABLE_EX,*PMIB_MFE_STATS_TABLE_EX;
typedef struct _MIB_IPMCAST_GLOBAL {
DWORD dwEnable;
} MIB_IPMCAST_GLOBAL,*PMIB_IPMCAST_GLOBAL;
typedef struct _MIB_IPMCAST_IF_ENTRY {
DWORD dwIfIndex;
DWORD dwTtl;
DWORD dwProtocol;
DWORD dwRateLimit;
ULONG ulInMcastOctets;
ULONG ulOutMcastOctets;
} MIB_IPMCAST_IF_ENTRY,*PMIB_IPMCAST_IF_ENTRY;
typedef struct _MIB_IPMCAST_IF_TABLE {
DWORD dwNumEntries;
MIB_IPMCAST_IF_ENTRY table[1];
} MIB_IPMCAST_IF_TABLE,*PMIB_IPMCAST_IF_TABLE;
typedef struct _MIB_IPMCAST_BOUNDARY {
DWORD dwIfIndex;
DWORD dwGroupAddress;
DWORD dwGroupMask;
DWORD dwStatus;
} MIB_IPMCAST_BOUNDARY,*PMIB_IPMCAST_BOUNDARY;
typedef struct _MIB_IPMCAST_BOUNDARY_TABLE {
DWORD dwNumEntries;
MIB_IPMCAST_BOUNDARY table[1];
} MIB_IPMCAST_BOUNDARY_TABLE,*PMIB_IPMCAST_BOUNDARY_TABLE;
typedef struct {
DWORD dwGroupAddress;
DWORD dwGroupMask;
} MIB_BOUNDARYROW,*PMIB_BOUNDARYROW;
typedef struct {
DWORD dwTtl;
DWORD dwRateLimit;
} MIB_MCAST_LIMIT_ROW,*PMIB_MCAST_LIMIT_ROW;
typedef WCHAR SN_CHAR;
typedef SN_CHAR SCOPE_NAME_BUFFER[255 +1],*SCOPE_NAME;
typedef struct _MIB_IPMCAST_SCOPE {
DWORD dwGroupAddress;
DWORD dwGroupMask;
SCOPE_NAME_BUFFER snNameBuffer;
DWORD dwStatus;
} MIB_IPMCAST_SCOPE,*PMIB_IPMCAST_SCOPE;
typedef struct _MIB_IPDESTROW {
__extension__ union {
DWORD dwForwardDest;
DWORD dwForwardMask;
DWORD dwForwardPolicy;
DWORD dwForwardNextHop;
DWORD dwForwardIfIndex;
DWORD dwForwardType;
DWORD dwForwardProto;
DWORD dwForwardAge;
DWORD dwForwardNextHopAS;
DWORD dwForwardMetric1;
DWORD dwForwardMetric2;
DWORD dwForwardMetric3;
DWORD dwForwardMetric4;
DWORD dwForwardMetric5;
};
DWORD dwForwardPreference;
DWORD dwForwardViewSet;
} MIB_IPDESTROW,*PMIB_IPDESTROW;
typedef struct _MIB_IPDESTTABLE {
DWORD dwNumEntries;
MIB_IPDESTROW table[1];
} MIB_IPDESTTABLE,*PMIB_IPDESTTABLE;
typedef struct _MIB_BEST_IF {
DWORD dwDestAddr;
DWORD dwIfIndex;
} MIB_BEST_IF,*PMIB_BEST_IF;
typedef struct _MIB_PROXYARP {
DWORD dwAddress;
DWORD dwMask;
DWORD dwIfIndex;
} MIB_PROXYARP,*PMIB_PROXYARP;
typedef struct _MIB_IFSTATUS {
DWORD dwIfIndex;
DWORD dwAdminStatus;
DWORD dwOperationalStatus;
WINBOOL bMHbeatActive;
WINBOOL bMHbeatAlive;
} MIB_IFSTATUS,*PMIB_IFSTATUS;
typedef struct _MIB_ROUTESTATE {
WINBOOL bRoutesSetToStack;
} MIB_ROUTESTATE,*PMIB_ROUTESTATE;
typedef struct _MIB_OPAQUE_INFO {
DWORD dwId;
__extension__ union {
ULONGLONG ullAlign;
BYTE rgbyData[1];
};
} MIB_OPAQUE_INFO,*PMIB_OPAQUE_INFO;
typedef struct _TCPIP_OWNER_MODULE_BASIC_INFO {
PWCHAR pModuleName;
PWCHAR pModulePath;
} TCPIP_OWNER_MODULE_BASIC_INFO, *PTCPIP_OWNER_MODULE_BASIC_INFO;
typedef enum _UDP_TABLE_CLASS {
UDP_TABLE_BASIC,
UDP_TABLE_OWNER_PID,
UDP_TABLE_OWNER_MODULE
} UDP_TABLE_CLASS, *PUDP_TABLE_CLASS;
typedef enum _TCPIP_OWNER_MODULE_INFO_CLASS {
TCPIP_OWNER_MODULE_INFO_BASIC
} TCPIP_OWNER_MODULE_INFO_CLASS, *PTCPIP_OWNER_MODULE_INFO_CLASS;
typedef ULONG IPAddr;
typedef ULONG IPMask;
typedef ULONG IP_STATUS;
typedef struct in6_addr IPv6Addr;
typedef struct ip_option_information {
UCHAR Ttl;
UCHAR Tos;
UCHAR Flags;
UCHAR OptionsSize;
PUCHAR OptionsData;
} IP_OPTION_INFORMATION,*PIP_OPTION_INFORMATION;
typedef struct icmp_echo_reply {
IPAddr Address;
ULONG Status;
ULONG RoundTripTime;
USHORT DataSize;
USHORT Reserved;
PVOID Data;
struct ip_option_information Options;
} ICMP_ECHO_REPLY,*PICMP_ECHO_REPLY;
typedef struct arp_send_reply {
IPAddr DestAddress;
IPAddr SrcAddress;
} ARP_SEND_REPLY,*PARP_SEND_REPLY;
typedef struct tcp_reserve_port_range {
USHORT UpperRange;
USHORT LowerRange;
} TCP_RESERVE_PORT_RANGE,*PTCP_RESERVE_PORT_RANGE;
typedef struct _IP_ADAPTER_INDEX_MAP {
ULONG Index;
WCHAR Name[128];
} IP_ADAPTER_INDEX_MAP,*PIP_ADAPTER_INDEX_MAP;
typedef struct _IP_INTERFACE_INFO {
LONG NumAdapters;
IP_ADAPTER_INDEX_MAP Adapter[1];
} IP_INTERFACE_INFO,*PIP_INTERFACE_INFO;
typedef struct _IP_UNIDIRECTIONAL_ADAPTER_ADDRESS {
ULONG NumAdapters;
IPAddr Address[1];
} IP_UNIDIRECTIONAL_ADAPTER_ADDRESS,*PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS;
typedef struct _IP_ADAPTER_ORDER_MAP {
ULONG NumAdapters;
ULONG AdapterOrder[1];
} IP_ADAPTER_ORDER_MAP,*PIP_ADAPTER_ORDER_MAP;
typedef struct _IP_MCAST_COUNTER_INFO {
ULONG64 InMcastOctets;
ULONG64 OutMcastOctets;
ULONG64 InMcastPkts;
ULONG64 OutMcastPkts;
} IP_MCAST_COUNTER_INFO,*PIP_MCAST_COUNTER_INFO;
typedef struct _IPV6_ADDRESS_EX {
USHORT sin6_port;
ULONG sin6_flowinfo;
USHORT sin6_addr[8];
ULONG sin6_scope_id;
} IPV6_ADDRESS_EX, *PIPV6_ADDRESS_EX;
#pragma pack(push,_CRT_PACKING)
typedef long clock_t;
struct tm {
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
extern __attribute__ ((__dllimport__)) int _daylight;
extern __attribute__ ((__dllimport__)) long _dstbias;
extern __attribute__ ((__dllimport__)) long _timezone;
extern __attribute__ ((__dllimport__)) char * _tzname[2];
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_daylight(int *_Daylight);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_dstbias(long *_Daylight_savings_bias);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_timezone(long *_Timezone);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_tzname(size_t *_ReturnValue,char *_Buffer,size_t _SizeInBytes,int _Index);
char *__attribute__((__cdecl__)) asctime(const struct tm *_Tm) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) asctime_s (char *_Buf,size_t _SizeInWords,const struct tm *_Tm);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ctime32(const __time32_t *_Time) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _ctime32_s (char *_Buf,size_t _SizeInBytes,const __time32_t *_Time);
clock_t __attribute__((__cdecl__)) clock(void);
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _difftime32(__time32_t _Time1,__time32_t _Time2);
__attribute__ ((__dllimport__)) struct tm *__attribute__((__cdecl__)) _gmtime32(const __time32_t *_Time) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _gmtime32_s (struct tm *_Tm,const __time32_t *_Time);
__attribute__ ((__dllimport__)) struct tm *__attribute__((__cdecl__)) _localtime32(const __time32_t *_Time) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _localtime32_s (struct tm *_Tm,const __time32_t *_Time);
size_t __attribute__((__cdecl__)) strftime(char * __restrict__ _Buf,size_t _SizeInBytes,const char * __restrict__ _Format,const struct tm * __restrict__ _Tm);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _strftime_l(char * __restrict__ _Buf,size_t _Max_size,const char * __restrict__ _Format,const struct tm * __restrict__ _Tm,_locale_t _Locale);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strdate(char *_Buffer) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _strdate_s (char *_Buf,size_t _SizeInBytes);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strtime(char *_Buffer) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _strtime_s (char *_Buf ,size_t _SizeInBytes);
__attribute__ ((__dllimport__)) __time32_t __attribute__((__cdecl__)) _time32(__time32_t *_Time);
__attribute__ ((__dllimport__)) __time32_t __attribute__((__cdecl__)) _mktime32(struct tm *_Tm);
__attribute__ ((__dllimport__)) __time32_t __attribute__((__cdecl__)) _mkgmtime32(struct tm *_Tm);
void __attribute__((__cdecl__)) tzset(void) ;
__attribute__ ((__dllimport__))
void __attribute__((__cdecl__)) _tzset(void);
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _difftime64(__time64_t _Time1,__time64_t _Time2);
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ctime64(const __time64_t *_Time) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _ctime64_s (char *_Buf,size_t _SizeInBytes,const __time64_t *_Time);
__attribute__ ((__dllimport__)) struct tm *__attribute__((__cdecl__)) _gmtime64(const __time64_t *_Time) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _gmtime64_s (struct tm *_Tm,const __time64_t *_Time);
__attribute__ ((__dllimport__)) struct tm *__attribute__((__cdecl__)) _localtime64(const __time64_t *_Time) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _localtime64_s (struct tm *_Tm,const __time64_t *_Time);
__attribute__ ((__dllimport__)) __time64_t __attribute__((__cdecl__)) _mktime64(struct tm *_Tm);
__attribute__ ((__dllimport__)) __time64_t __attribute__((__cdecl__)) _mkgmtime64(struct tm *_Tm);
__attribute__ ((__dllimport__)) __time64_t __attribute__((__cdecl__)) _time64(__time64_t *_Time);
unsigned __attribute__((__cdecl__)) _getsystime(struct tm *_Tm);
unsigned __attribute__((__cdecl__)) _setsystime(struct tm *_Tm,unsigned _MilliSec);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wasctime(const struct tm *_Tm);
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wasctime_s (wchar_t *_Buf,size_t _SizeInWords,const struct tm *_Tm);
wchar_t *__attribute__((__cdecl__)) _wctime32(const __time32_t *_Time) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wctime32_s (wchar_t *_Buf,size_t _SizeInWords,const __time32_t *_Time);
size_t __attribute__((__cdecl__)) wcsftime(wchar_t * __restrict__ _Buf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,const struct tm * __restrict__ _Tm);
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _wcsftime_l(wchar_t * __restrict__ _Buf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,const struct tm * __restrict__ _Tm,_locale_t _Locale);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wstrdate(wchar_t *_Buffer) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wstrdate_s (wchar_t *_Buf,size_t _SizeInWords);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wstrtime(wchar_t *_Buffer) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wstrtime_s (wchar_t *_Buf,size_t _SizeInWords);
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wctime64(const __time64_t *_Time) ;
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wctime64_s (wchar_t *_Buf,size_t _SizeInWords,const __time64_t *_Time);
wchar_t *__attribute__((__cdecl__)) _wctime(const time_t *) ;
errno_t __attribute__((__cdecl__)) _wctime_s(wchar_t *, size_t, const time_t *);
static __inline time_t __attribute__((__cdecl__)) time(time_t *_Time) { return _time32(_Time); }
static __inline double __attribute__((__cdecl__)) difftime(time_t _Time1,time_t _Time2) { return _difftime32(_Time1,_Time2); }
static __inline struct tm *__attribute__((__cdecl__)) localtime(const time_t *_Time) { return _localtime32(_Time); }
static __inline errno_t __attribute__((__cdecl__)) localtime_s(struct tm *_Tm,const time_t *_Time) { return _localtime32_s(_Tm,_Time); }
static __inline struct tm *__attribute__((__cdecl__)) gmtime(const time_t *_Time) { return _gmtime32(_Time); }
static __inline errno_t __attribute__((__cdecl__)) gmtime_s(struct tm *_Tm, const time_t *_Time) { return _gmtime32_s(_Tm, _Time); }
static __inline char *__attribute__((__cdecl__)) ctime(const time_t *_Time) { return _ctime32(_Time); }
static __inline errno_t __attribute__((__cdecl__)) ctime_s(char *_Buf,size_t _SizeInBytes,const time_t *_Time) { return _ctime32_s(_Buf,_SizeInBytes,_Time); }
static __inline time_t __attribute__((__cdecl__)) mktime(struct tm *_Tm) { return _mktime32(_Tm); }
static __inline time_t __attribute__((__cdecl__)) _mkgmtime(struct tm *_Tm) { return _mkgmtime32(_Tm); }
__attribute__ ((__dllimport__)) extern int daylight ;
__attribute__ ((__dllimport__)) extern long timezone ;
__attribute__ ((__dllimport__)) extern char *tzname[2] ;
void __attribute__((__cdecl__)) tzset(void) ;
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
extern int __attribute__((__cdecl__)) mingw_gettimeofday (struct timeval *p, struct timezone *z);
#pragma pack(pop)
#pragma pack(push,_CRT_PACKING)
struct __timeb32 {
__time32_t time;
unsigned short millitm;
short timezone;
short dstflag;
};
struct timeb {
time_t time;
unsigned short millitm;
short timezone;
short dstflag;
};
struct __timeb64 {
__time64_t time;
unsigned short millitm;
short timezone;
short dstflag;
};
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _ftime64(struct __timeb64 *_Time);
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _ftime32(struct __timeb32 *_Time);
struct timespec {
time_t tv_sec;
long tv_nsec;
};
struct itimerspec {
struct timespec it_interval;
struct timespec it_value;
};
void __attribute__((__cdecl__)) ftime (struct timeb *);
#pragma pack(pop)
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ftime32_s(struct __timeb32 *_Time);
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ftime64_s(struct __timeb64 *_Time);
typedef int clockid_t;
int __attribute__((__cdecl__)) nanosleep(const struct timespec *request, struct timespec *remain);
int __attribute__((__cdecl__)) clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *request, struct timespec *remain);
int __attribute__((__cdecl__)) clock_getres(clockid_t clock_id, struct timespec *res);
int __attribute__((__cdecl__)) clock_gettime(clockid_t clock_id, struct timespec *tp);
int __attribute__((__cdecl__)) clock_settime(clockid_t clock_id, const struct timespec *tp);
typedef UINT32 NET_IF_COMPARTMENT_ID, *PNET_IF_COMPARTMENT_ID;
typedef ULONG NET_IFINDEX, *PNET_IFINDEX;
typedef UINT16 NET_IFTYPE, *PNET_IFTYPE;
typedef NET_IFINDEX IF_INDEX, *PIF_INDEX;
typedef GUID NET_IF_NETWORK_GUID;
typedef enum _IF_OPER_STATUS {
IfOperStatusUp = 1,
IfOperStatusDown,
IfOperStatusTesting,
IfOperStatusUnknown,
IfOperStatusDormant,
IfOperStatusNotPresent,
IfOperStatusLowerLayerDown
} IF_OPER_STATUS;
typedef enum _NET_IF_OPER_STATUS {
NET_IF_OPER_STATUS_UP = 1,
NET_IF_OPER_STATUS_DOWN,
NET_IF_OPER_STATUS_TESTING,
NET_IF_OPER_STATUS_UNKNOWN,
NET_IF_OPER_STATUS_DORMANT,
NET_IF_OPER_STATUS_NOT_PRESENT,
NET_IF_OPER_STATUS_LOWER_LAYER_DOWN
} NET_IF_OPER_STATUS, *PNET_IF_OPER_STATUS;
typedef enum _NET_IF_ADMIN_STATUS {
NET_IF_ADMIN_STATUS_UP = 1,
NET_IF_ADMIN_STATUS_DOWN,
NET_IF_ADMIN_STATUS_TESTING
} NET_IF_ADMIN_STATUS, *PNET_IF_ADMIN_STATUS;
typedef enum _NET_IF_MEDIA_CONNECT_STATE {
MediaConnectStateUnknown,
MediaConnectStateConnected,
MediaConnectStateDisconnected
} NET_IF_MEDIA_CONNECT_STATE, *PNET_IF_MEDIA_CONNECT_STATE;
typedef enum _NET_IF_ACCESS_TYPE {
NET_IF_ACCESS_LOOPBACK = 1,
NET_IF_ACCESS_BROADCAST,
NET_IF_ACCESS_POINT_TO_POINT,
NET_IF_ACCESS_POINT_TO_MULTI_POINT,
NET_IF_ACCESS_MAXIMUM
} NET_IF_ACCESS_TYPE, *PNET_IF_ACCESS_TYPE;
typedef enum _NET_IF_CONNECTION_TYPE {
NET_IF_CONNECTION_DEDICATED = 1,
NET_IF_CONNECTION_PASSIVE,
NET_IF_CONNECTION_DEMAND,
NET_IF_CONNECTION_MAXIMUM
} NET_IF_CONNECTION_TYPE, *PNET_IF_CONNECTION_TYPE;
typedef enum _NET_IF_DIRECTION_TYPE {
NET_IF_DIRECTION_SENDRECEIVE,
NET_IF_DIRECTION_SENDONLY,
NET_IF_DIRECTION_RECEIVEONLY,
NET_IF_DIRECTION_MAXIMUM
} NET_IF_DIRECTION_TYPE, *PNET_IF_DIRECTION_TYPE;
typedef enum _NET_IF_MEDIA_DUPLEX_STATE {
MediaDuplexStateUnknown,
MediaDuplexStateHalf,
MediaDuplexStateFull
} NET_IF_MEDIA_DUPLEX_STATE, *PNET_IF_MEDIA_DUPLEX_STATE;
typedef enum _TUNNEL_TYPE {
TUNNEL_TYPE_NONE = 0,
TUNNEL_TYPE_OTHER = 1,
TUNNEL_TYPE_DIRECT = 2,
TUNNEL_TYPE_6TO4 = 11,
TUNNEL_TYPE_ISATAP = 13,
TUNNEL_TYPE_TEREDO = 14,
TUNNEL_TYPE_IPHTTPS = 15
} TUNNEL_TYPE, *PTUNNEL_TYPE;
typedef union _NET_LUID {
ULONG64 Value;
__extension__ struct {
ULONG64 Reserved :24;
ULONG64 NetLuidIndex :24;
ULONG64 IfType :16;
} Info;
} NET_LUID, *PNET_LUID;
typedef NET_LUID IF_LUID, *PIF_LUID;
typedef struct _IF_COUNTED_STRING_LH {
USHORT Length;
WCHAR String[256 + 1];
} IF_COUNTED_STRING_LH, *PIF_COUNTED_STRING_LH;
typedef IF_COUNTED_STRING_LH IF_COUNTED_STRING;
typedef IF_COUNTED_STRING *PIF_COUNTED_STRING;
typedef struct _IF_PHYSICAL_ADDRESS_LH {
USHORT Length;
UCHAR Address[32];
} IF_PHYSICAL_ADDRESS_LH, *PIF_PHYSICAL_ADDRESS_LH;
typedef IF_PHYSICAL_ADDRESS_LH IF_PHYSICAL_ADDRESS;
typedef IF_PHYSICAL_ADDRESS *PIF_PHYSICAL_ADDRESS;
typedef struct {
char String[4*4];
} IP_ADDRESS_STRING,*PIP_ADDRESS_STRING,IP_MASK_STRING,*PIP_MASK_STRING;
typedef struct _IP_ADDR_STRING {
struct _IP_ADDR_STRING *Next;
IP_ADDRESS_STRING IpAddress;
IP_MASK_STRING IpMask;
DWORD Context;
} IP_ADDR_STRING,*PIP_ADDR_STRING;
typedef struct _IP_ADAPTER_INFO {
struct _IP_ADAPTER_INFO *Next;
DWORD ComboIndex;
char AdapterName[256 + 4];
char Description[128 + 4];
UINT AddressLength;
BYTE Address[8];
DWORD Index;
UINT Type;
UINT DhcpEnabled;
PIP_ADDR_STRING CurrentIpAddress;
IP_ADDR_STRING IpAddressList;
IP_ADDR_STRING GatewayList;
IP_ADDR_STRING DhcpServer;
WINBOOL HaveWins;
IP_ADDR_STRING PrimaryWinsServer;
IP_ADDR_STRING SecondaryWinsServer;
time_t LeaseObtained;
time_t LeaseExpires;
} IP_ADAPTER_INFO,*PIP_ADAPTER_INFO;
typedef NL_PREFIX_ORIGIN IP_PREFIX_ORIGIN;
typedef NL_SUFFIX_ORIGIN IP_SUFFIX_ORIGIN;
typedef NL_DAD_STATE IP_DAD_STATE;
typedef struct _IP_ADAPTER_UNICAST_ADDRESS_XP {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD Flags;
};
};
struct _IP_ADAPTER_UNICAST_ADDRESS_XP *Next;
SOCKET_ADDRESS Address;
IP_PREFIX_ORIGIN PrefixOrigin;
IP_SUFFIX_ORIGIN SuffixOrigin;
IP_DAD_STATE DadState;
ULONG ValidLifetime;
ULONG PreferredLifetime;
ULONG LeaseLifetime;
} IP_ADAPTER_UNICAST_ADDRESS_XP,*PIP_ADAPTER_UNICAST_ADDRESS_XP;
typedef struct _IP_ADAPTER_UNICAST_ADDRESS_LH {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD Flags;
};
};
struct _IP_ADAPTER_UNICAST_ADDRESS_LH *Next;
SOCKET_ADDRESS Address;
IP_PREFIX_ORIGIN PrefixOrigin;
IP_SUFFIX_ORIGIN SuffixOrigin;
IP_DAD_STATE DadState;
ULONG ValidLifetime;
ULONG PreferredLifetime;
ULONG LeaseLifetime;
UINT8 OnLinkPrefixLength;
} IP_ADAPTER_UNICAST_ADDRESS_LH,*PIP_ADAPTER_UNICAST_ADDRESS_LH;
typedef IP_ADAPTER_UNICAST_ADDRESS_XP IP_ADAPTER_UNICAST_ADDRESS;
typedef IP_ADAPTER_UNICAST_ADDRESS_XP *PIP_ADAPTER_UNICAST_ADDRESS;
typedef struct _IP_ADAPTER_ANYCAST_ADDRESS_XP {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD Flags;
};
};
struct _IP_ADAPTER_ANYCAST_ADDRESS_XP *Next;
SOCKET_ADDRESS Address;
} IP_ADAPTER_ANYCAST_ADDRESS_XP,*PIP_ADAPTER_ANYCAST_ADDRESS_XP;
typedef IP_ADAPTER_ANYCAST_ADDRESS_XP IP_ADAPTER_ANYCAST_ADDRESS;
typedef IP_ADAPTER_ANYCAST_ADDRESS_XP *PIP_ADAPTER_ANYCAST_ADDRESS;
typedef struct _IP_ADAPTER_MULTICAST_ADDRESS_XP {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD Flags;
};
};
struct _IP_ADAPTER_MULTICAST_ADDRESS_XP *Next;
SOCKET_ADDRESS Address;
} IP_ADAPTER_MULTICAST_ADDRESS_XP,*PIP_ADAPTER_MULTICAST_ADDRESS_XP;
typedef IP_ADAPTER_MULTICAST_ADDRESS_XP IP_ADAPTER_MULTICAST_ADDRESS;
typedef IP_ADAPTER_MULTICAST_ADDRESS_XP *PIP_ADAPTER_MULTICAST_ADDRESS;
typedef struct _IP_ADAPTER_DNS_SERVER_ADDRESS_XP {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD Reserved;
};
};
struct _IP_ADAPTER_DNS_SERVER_ADDRESS_XP *Next;
SOCKET_ADDRESS Address;
} IP_ADAPTER_DNS_SERVER_ADDRESS_XP,*PIP_ADAPTER_DNS_SERVER_ADDRESS_XP;
typedef IP_ADAPTER_DNS_SERVER_ADDRESS_XP IP_ADAPTER_DNS_SERVER_ADDRESS;
typedef IP_ADAPTER_DNS_SERVER_ADDRESS_XP *PIP_ADAPTER_DNS_SERVER_ADDRESS;
typedef struct _IP_ADAPTER_PREFIX_XP {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD Flags;
};
};
struct _IP_ADAPTER_PREFIX_XP *Next;
SOCKET_ADDRESS Address;
ULONG PrefixLength;
} IP_ADAPTER_PREFIX_XP,*PIP_ADAPTER_PREFIX_XP;
typedef IP_ADAPTER_PREFIX_XP IP_ADAPTER_PREFIX;
typedef IP_ADAPTER_PREFIX_XP *PIP_ADAPTER_PREFIX;
typedef struct _IP_ADAPTER_WINS_SERVER_ADDRESS_LH {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD Reserved;
};
};
struct _IP_ADAPTER_WINS_SERVER_ADDRESS_LH *Next;
SOCKET_ADDRESS Address;
} IP_ADAPTER_WINS_SERVER_ADDRESS_LH,*PIP_ADAPTER_WINS_SERVER_ADDRESS_LH;
typedef struct _IP_ADAPTER_GATEWAY_ADDRESS_LH {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD Reserved;
};
};
struct _IP_ADAPTER_GATEWAY_ADDRESS_LH *Next;
SOCKET_ADDRESS Address;
} IP_ADAPTER_GATEWAY_ADDRESS_LH,*PIP_ADAPTER_GATEWAY_ADDRESS_LH;
typedef struct _IP_ADAPTER_DNS_SUFFIX {
struct _IP_ADAPTER_DNS_SUFFIX *Next;
WCHAR String[256];
} IP_ADAPTER_DNS_SUFFIX, *PIP_ADAPTER_DNS_SUFFIX;
typedef struct _IP_ADAPTER_ADDRESSES_LH {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
IF_INDEX IfIndex;
};
};
struct _IP_ADAPTER_ADDRESSES_LH *Next;
PCHAR AdapterName;
PIP_ADAPTER_UNICAST_ADDRESS_LH FirstUnicastAddress;
PIP_ADAPTER_ANYCAST_ADDRESS_XP FirstAnycastAddress;
PIP_ADAPTER_MULTICAST_ADDRESS_XP FirstMulticastAddress;
PIP_ADAPTER_DNS_SERVER_ADDRESS_XP FirstDnsServerAddress;
PWCHAR DnsSuffix;
PWCHAR Description;
PWCHAR FriendlyName;
BYTE PhysicalAddress[8];
ULONG PhysicalAddressLength;
__extension__ union {
ULONG Flags;
__extension__ struct {
ULONG DdnsEnabled : 1;
ULONG RegisterAdapterSuffix : 1;
ULONG Dhcpv4Enabled : 1;
ULONG ReceiveOnly : 1;
ULONG NoMulticast : 1;
ULONG Ipv6OtherStatefulConfig : 1;
ULONG NetbiosOverTcpipEnabled : 1;
ULONG Ipv4Enabled : 1;
ULONG Ipv6Enabled : 1;
ULONG Ipv6ManagedAddressConfigurationSupported : 1;
};
};
ULONG Mtu;
IFTYPE IfType;
IF_OPER_STATUS OperStatus;
IF_INDEX Ipv6IfIndex;
ULONG ZoneIndices[16];
PIP_ADAPTER_PREFIX_XP FirstPrefix;
ULONG64 TransmitLinkSpeed;
ULONG64 ReceiveLinkSpeed;
PIP_ADAPTER_WINS_SERVER_ADDRESS_LH FirstWinsServerAddress;
PIP_ADAPTER_GATEWAY_ADDRESS_LH FirstGatewayAddress;
ULONG Ipv4Metric;
ULONG Ipv6Metric;
IF_LUID Luid;
SOCKET_ADDRESS Dhcpv4Server;
NET_IF_COMPARTMENT_ID CompartmentId;
NET_IF_NETWORK_GUID NetworkGuid;
NET_IF_CONNECTION_TYPE ConnectionType;
TUNNEL_TYPE TunnelType;
SOCKET_ADDRESS Dhcpv6Server;
BYTE Dhcpv6ClientDuid[130];
ULONG Dhcpv6ClientDuidLength;
ULONG Dhcpv6Iaid;
} IP_ADAPTER_ADDRESSES_LH, *PIP_ADAPTER_ADDRESSES_LH;
typedef struct _IP_ADAPTER_ADDRESSES_XP {
__extension__ union {
ULONGLONG Alignment;
__extension__ struct {
ULONG Length;
DWORD IfIndex;
};
};
struct _IP_ADAPTER_ADDRESSES_XP *Next;
PCHAR AdapterName;
PIP_ADAPTER_UNICAST_ADDRESS_XP FirstUnicastAddress;
PIP_ADAPTER_ANYCAST_ADDRESS_XP FirstAnycastAddress;
PIP_ADAPTER_MULTICAST_ADDRESS_XP FirstMulticastAddress;
PIP_ADAPTER_DNS_SERVER_ADDRESS_XP FirstDnsServerAddress;
PWCHAR DnsSuffix;
PWCHAR Description;
PWCHAR FriendlyName;
BYTE PhysicalAddress[8];
DWORD PhysicalAddressLength;
DWORD Flags;
DWORD Mtu;
DWORD IfType;
IF_OPER_STATUS OperStatus;
DWORD Ipv6IfIndex;
DWORD ZoneIndices[16];
PIP_ADAPTER_PREFIX_XP FirstPrefix;
} IP_ADAPTER_ADDRESSES_XP,*PIP_ADAPTER_ADDRESSES_XP;
typedef IP_ADAPTER_ADDRESSES_XP IP_ADAPTER_ADDRESSES;
typedef IP_ADAPTER_ADDRESSES_XP *PIP_ADAPTER_ADDRESSES;
typedef struct _IP_PER_ADAPTER_INFO {
UINT AutoconfigEnabled;
UINT AutoconfigActive;
PIP_ADDR_STRING CurrentDnsServer;
IP_ADDR_STRING DnsServerList;
} IP_PER_ADAPTER_INFO,*PIP_PER_ADAPTER_INFO;
typedef struct {
char HostName[128 + 4];
char DomainName[128 + 4];
PIP_ADDR_STRING CurrentDnsServer;
IP_ADDR_STRING DnsServerList;
UINT NodeType;
char ScopeId[256 + 4];
UINT EnableRouting;
UINT EnableProxy;
UINT EnableDns;
} FIXED_INFO,*PFIXED_INFO;
typedef struct ip_interface_name_info {
ULONG Index;
ULONG MediaType;
UCHAR ConnectionType;
UCHAR AccessType;
GUID DeviceGuid;
GUID InterfaceGuid;
} IP_INTERFACE_NAME_INFO,*PIP_INTERFACE_NAME_INFO;
DWORD __attribute__((__stdcall__)) GetNumberOfInterfaces (PDWORD pdwNumIf);
DWORD __attribute__((__stdcall__)) GetIfEntry (PMIB_IFROW pIfRow);
DWORD __attribute__((__stdcall__)) GetIfTable (PMIB_IFTABLE pIfTable, PULONG pdwSize, WINBOOL bOrder);
DWORD __attribute__((__stdcall__)) GetIpAddrTable (PMIB_IPADDRTABLE pIpAddrTable, PULONG pdwSize, WINBOOL bOrder);
ULONG __attribute__((__stdcall__)) GetIpNetTable (PMIB_IPNETTABLE IpNetTable, PULONG SizePointer, WINBOOL Order);
DWORD __attribute__((__stdcall__)) GetIpForwardTable (PMIB_IPFORWARDTABLE pIpForwardTable, PULONG pdwSize, WINBOOL bOrder);
ULONG __attribute__((__stdcall__)) GetTcpTable (PMIB_TCPTABLE TcpTable, PULONG SizePointer, WINBOOL Order);
DWORD __attribute__((__stdcall__)) GetExtendedTcpTable (PVOID pTcpTable, PDWORD pdwSize, WINBOOL bOrder, ULONG ulAf, TCP_TABLE_CLASS TableClass, ULONG Reserved);
DWORD __attribute__((__stdcall__)) GetOwnerModuleFromTcpEntry (PMIB_TCPROW_OWNER_MODULE pTcpEntry, TCPIP_OWNER_MODULE_INFO_CLASS Class, PVOID pBuffer, PDWORD pdwSize);
ULONG __attribute__((__stdcall__)) GetUdpTable (PMIB_UDPTABLE UdpTable, PULONG SizePointer, WINBOOL Order);
DWORD __attribute__((__stdcall__)) GetExtendedUdpTable (PVOID pUdpTable, PDWORD pdwSize, WINBOOL bOrder, ULONG ulAf, UDP_TABLE_CLASS TableClass, ULONG Reserved);
DWORD __attribute__((__stdcall__)) GetOwnerModuleFromUdpEntry (PMIB_UDPROW_OWNER_MODULE pUdpEntry, TCPIP_OWNER_MODULE_INFO_CLASS Class, PVOID pBuffer, PDWORD pdwSize);
DWORD AllocateAndGetTcpExTableFromStack (PVOID *ppTcpTable, WINBOOL bOrder, HANDLE hHeap, DWORD dwFlags, DWORD dwFamily);
DWORD AllocateAndGetUdpExTableFromStack (PVOID *ppUdpTable, WINBOOL bOrder, HANDLE hHeap, DWORD dwFlags, DWORD dwFamily);
DWORD GetOwnerModuleFromPidAndInfo (ULONG ulPid, ULONGLONG *pInfo, TCPIP_OWNER_MODULE_INFO_CLASS Class, PVOID pBuffer, PDWORD pdwSize);
ULONG __attribute__((__stdcall__)) GetIpStatistics (PMIB_IPSTATS Statistics);
ULONG __attribute__((__stdcall__)) GetIcmpStatistics (PMIB_ICMP Statistics);
ULONG __attribute__((__stdcall__)) GetTcpStatistics (PMIB_TCPSTATS Statistics);
ULONG __attribute__((__stdcall__)) GetUdpStatistics (PMIB_UDPSTATS Stats);
ULONG __attribute__((__stdcall__)) GetIpStatisticsEx (PMIB_IPSTATS Statistics, ULONG Family);
ULONG __attribute__((__stdcall__)) SetIpStatisticsEx (PMIB_IPSTATS Statistics, ULONG Family);
ULONG __attribute__((__stdcall__)) GetIcmpStatisticsEx (PMIB_ICMP_EX Statistics, ULONG Family);
ULONG __attribute__((__stdcall__)) GetTcpStatisticsEx (PMIB_TCPSTATS Statistics, ULONG Family);
ULONG __attribute__((__stdcall__)) GetUdpStatisticsEx (PMIB_UDPSTATS Statistics, ULONG Family);
DWORD __attribute__((__stdcall__)) SetIfEntry (PMIB_IFROW pIfRow);
DWORD __attribute__((__stdcall__)) CreateIpForwardEntry (PMIB_IPFORWARDROW pRoute);
DWORD __attribute__((__stdcall__)) SetIpForwardEntry (PMIB_IPFORWARDROW pRoute);
DWORD __attribute__((__stdcall__)) DeleteIpForwardEntry (PMIB_IPFORWARDROW pRoute);
DWORD __attribute__((__stdcall__)) SetIpStatistics (PMIB_IPSTATS pIpStats);
DWORD __attribute__((__stdcall__)) SetIpTTL (UINT nTTL);
DWORD __attribute__((__stdcall__)) CreateIpNetEntry (PMIB_IPNETROW pArpEntry);
DWORD __attribute__((__stdcall__)) SetIpNetEntry (PMIB_IPNETROW pArpEntry);
DWORD __attribute__((__stdcall__)) DeleteIpNetEntry (PMIB_IPNETROW pArpEntry);
DWORD __attribute__((__stdcall__)) FlushIpNetTable (DWORD dwIfIndex);
DWORD __attribute__((__stdcall__)) CreateProxyArpEntry (DWORD dwAddress, DWORD dwMask, DWORD dwIfIndex);
DWORD __attribute__((__stdcall__)) DeleteProxyArpEntry (DWORD dwAddress, DWORD dwMask, DWORD dwIfIndex);
DWORD __attribute__((__stdcall__)) SetTcpEntry (PMIB_TCPROW pTcpRow);
DWORD __attribute__((__stdcall__)) GetInterfaceInfo (PIP_INTERFACE_INFO pIfTable, PULONG dwOutBufLen);
DWORD __attribute__((__stdcall__)) GetUniDirectionalAdapterInfo (PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS pIPIfInfo, PULONG dwOutBufLen);
DWORD __attribute__((__stdcall__)) NhpAllocateAndGetInterfaceInfoFromStack (IP_INTERFACE_NAME_INFO **ppTable, PDWORD pdwCount, WINBOOL bOrder, HANDLE hHeap, DWORD dwFlags);
DWORD __attribute__((__stdcall__)) GetBestInterface (IPAddr dwDestAddr, PDWORD pdwBestIfIndex);
DWORD __attribute__((__stdcall__)) GetBestInterfaceEx (struct sockaddr *pDestAddr, PDWORD pdwBestIfIndex);
DWORD __attribute__((__stdcall__)) GetBestRoute (DWORD dwDestAddr, DWORD dwSourceAddr, PMIB_IPFORWARDROW pBestRoute);
DWORD __attribute__((__stdcall__)) NotifyAddrChange (PHANDLE Handle, LPOVERLAPPED overlapped);
DWORD __attribute__((__stdcall__)) NotifyRouteChange (PHANDLE Handle, LPOVERLAPPED overlapped);
WINBOOL __attribute__((__stdcall__)) CancelIPChangeNotify (LPOVERLAPPED notifyOverlapped);
DWORD __attribute__((__stdcall__)) GetAdapterIndex (LPWSTR AdapterName, PULONG IfIndex);
DWORD __attribute__((__stdcall__)) AddIPAddress (IPAddr Address, IPMask IpMask, DWORD IfIndex, PULONG NTEContext, PULONG NTEInstance);
DWORD __attribute__((__stdcall__)) DeleteIPAddress (ULONG NTEContext);
DWORD __attribute__((__stdcall__)) GetNetworkParams (PFIXED_INFO pFixedInfo, PULONG pOutBufLen);
ULONG __attribute__((__stdcall__)) GetAdaptersInfo (PIP_ADAPTER_INFO AdapterInfo, PULONG SizePointer);
PIP_ADAPTER_ORDER_MAP __attribute__((__stdcall__)) GetAdapterOrderMap (void);
ULONG __attribute__((__stdcall__)) GetAdaptersAddresses (ULONG Family, ULONG Flags, PVOID Reserved, PIP_ADAPTER_ADDRESSES AdapterAddresses, PULONG SizePointer);
DWORD __attribute__((__stdcall__)) GetPerAdapterInfo (ULONG IfIndex, PIP_PER_ADAPTER_INFO pPerAdapterInfo, PULONG pOutBufLen);
DWORD __attribute__((__stdcall__)) IpReleaseAddress (PIP_ADAPTER_INDEX_MAP AdapterInfo);
DWORD __attribute__((__stdcall__)) IpRenewAddress (PIP_ADAPTER_INDEX_MAP AdapterInfo);
DWORD __attribute__((__stdcall__)) SendARP (IPAddr DestIP, IPAddr SrcIP, PVOID pMacAddr, PULONG PhyAddrLen);
WINBOOL __attribute__((__stdcall__)) GetRTTAndHopCount (IPAddr DestIpAddress, PULONG HopCount, ULONG MaxHops, PULONG RTT);
DWORD __attribute__((__stdcall__)) GetFriendlyIfIndex (DWORD IfIndex);
DWORD __attribute__((__stdcall__)) EnableRouter (HANDLE *pHandle, OVERLAPPED *pOverlapped);
DWORD __attribute__((__stdcall__)) UnenableRouter (OVERLAPPED *pOverlapped, LPDWORD lpdwEnableCount);
DWORD __attribute__((__stdcall__)) DisableMediaSense (HANDLE *pHandle, OVERLAPPED *pOverLapped);
DWORD __attribute__((__stdcall__)) RestoreMediaSense (OVERLAPPED *pOverlapped, LPDWORD lpdwEnableCount);
typedef struct _UNICODE_STRING {
USHORT Length;
USHORT MaximumLength;
PWSTR Buffer;
} UNICODE_STRING;
typedef struct _PEB_LDR_DATA {
BYTE Reserved1[8];
PVOID Reserved2[3];
LIST_ENTRY InMemoryOrderModuleList;
} PEB_LDR_DATA,*PPEB_LDR_DATA;
typedef struct _LDR_DATA_TABLE_ENTRY {
PVOID Reserved1[2];
LIST_ENTRY InMemoryOrderLinks;
PVOID Reserved2[2];
PVOID DllBase;
PVOID Reserved3[2];
UNICODE_STRING FullDllName;
BYTE Reserved4[8];
PVOID Reserved5[3];
__extension__ union {
ULONG CheckSum;
PVOID Reserved6;
};
ULONG TimeDateStamp;
} LDR_DATA_TABLE_ENTRY,*PLDR_DATA_TABLE_ENTRY;
typedef struct _RTL_USER_PROCESS_PARAMETERS {
BYTE Reserved1[16];
PVOID Reserved2[10];
UNICODE_STRING ImagePathName;
UNICODE_STRING CommandLine;
} RTL_USER_PROCESS_PARAMETERS,*PRTL_USER_PROCESS_PARAMETERS;
typedef void (__attribute__((__stdcall__)) *PPS_POST_PROCESS_INIT_ROUTINE)(void);
typedef struct _PEB {
BYTE Reserved1[2];
BYTE BeingDebugged;
BYTE Reserved2[1];
PVOID Reserved3[2];
PPEB_LDR_DATA Ldr;
PRTL_USER_PROCESS_PARAMETERS ProcessParameters;
PVOID Reserved4[3];
PVOID AtlThunkSListPtr;
PVOID Reserved5;
ULONG Reserved6;
PVOID Reserved7;
ULONG Reserved8;
ULONG AtlThunkSListPtr32;
PVOID Reserved9[45];
BYTE Reserved10[96];
PPS_POST_PROCESS_INIT_ROUTINE PostProcessInitRoutine;
BYTE Reserved11[128];
PVOID Reserved12[1];
ULONG SessionId;
} PEB,*PPEB;
typedef struct _TEB {
PVOID Reserved1[12];
PPEB ProcessEnvironmentBlock;
PVOID Reserved2[399];
BYTE Reserved3[1952];
PVOID TlsSlots[64];
BYTE Reserved4[8];
PVOID Reserved5[26];
PVOID ReservedForOle;
PVOID Reserved6[4];
PVOID TlsExpansionSlots;
} TEB;
typedef TEB *PTEB;
typedef const char *PCSZ;
typedef struct _STRING {
USHORT Length;
USHORT MaximumLength;
PCHAR Buffer;
} STRING;
typedef STRING *PSTRING;
typedef STRING ANSI_STRING;
typedef PSTRING PANSI_STRING;
typedef PSTRING PCANSI_STRING;
typedef STRING OEM_STRING;
typedef PSTRING POEM_STRING;
typedef const STRING *PCOEM_STRING;
typedef UNICODE_STRING *PUNICODE_STRING;
typedef const UNICODE_STRING *PCUNICODE_STRING;
typedef struct _OBJECT_ATTRIBUTES {
ULONG Length;
HANDLE RootDirectory;
PUNICODE_STRING ObjectName;
ULONG Attributes;
PVOID SecurityDescriptor;
PVOID SecurityQualityOfService;
} OBJECT_ATTRIBUTES, *POBJECT_ATTRIBUTES;
typedef struct _OBJECT_DATA_INFORMATION {
BOOLEAN InheritHandle;
BOOLEAN ProtectFromClose;
} OBJECT_DATA_INFORMATION, *POBJECT_DATA_INFORMATION;
typedef struct _OBJECT_BASIC_INFORMATION {
ULONG Attributes;
ACCESS_MASK GrantedAccess;
ULONG HandleCount;
ULONG PointerCount;
ULONG PagedPoolUsage;
ULONG NonPagedPoolUsage;
ULONG Reserved[3];
ULONG NameInformationLength;
ULONG TypeInformationLength;
ULONG SecurityDescriptorLength;
LARGE_INTEGER CreateTime;
} OBJECT_BASIC_INFORMATION, *POBJECT_BASIC_INFORMATION;
typedef struct _OBJECT_NAME_INFORMATION {
UNICODE_STRING Name;
} OBJECT_NAME_INFORMATION, *POBJECT_NAME_INFORMATION;
typedef struct _OBJECT_TYPE_INFORMATION {
UNICODE_STRING TypeName;
ULONG TotalNumberOfObjects;
ULONG TotalNumberOfHandles;
ULONG TotalPagedPoolUsage;
ULONG TotalNonPagedPoolUsage;
ULONG TotalNamePoolUsage;
ULONG TotalHandleTableUsage;
ULONG HighWaterNumberOfObjects;
ULONG HighWaterNumberOfHandles;
ULONG HighWaterPagedPoolUsage;
ULONG HighWaterNonPagedPoolUsage;
ULONG HighWaterNamePoolUsage;
ULONG HighWaterHandleTableUsage;
ULONG InvalidAttributes;
GENERIC_MAPPING GenericMapping;
ULONG ValidAccessMask;
BOOLEAN SecurityRequired;
BOOLEAN MaintainHandleCount;
ULONG PoolType;
ULONG DefaultPagedPoolCharge;
ULONG DefaultNonPagedPoolCharge;
} OBJECT_TYPE_INFORMATION, *POBJECT_TYPE_INFORMATION;
typedef struct _OBJECT_ALL_INFORMATION {
ULONG NumberOfObjects;
OBJECT_TYPE_INFORMATION ObjectTypeInformation[1];
}OBJECT_ALL_INFORMATION, *POBJECT_ALL_INFORMATION;
typedef enum _FILE_INFORMATION_CLASS {
FileDirectoryInformation = 1,
FileFullDirectoryInformation,
FileBothDirectoryInformation,
FileBasicInformation,
FileStandardInformation,
FileInternalInformation,
FileEaInformation,
FileAccessInformation,
FileNameInformation,
FileRenameInformation,
FileLinkInformation,
FileNamesInformation,
FileDispositionInformation,
FilePositionInformation,
FileFullEaInformation,
FileModeInformation,
FileAlignmentInformation,
FileAllInformation,
FileAllocationInformation,
FileEndOfFileInformation,
FileAlternateNameInformation,
FileStreamInformation,
FilePipeInformation,
FilePipeLocalInformation,
FilePipeRemoteInformation,
FileMailslotQueryInformation,
FileMailslotSetInformation,
FileCompressionInformation,
FileObjectIdInformation,
FileCompletionInformation,
FileMoveClusterInformation,
FileQuotaInformation,
FileReparsePointInformation,
FileNetworkOpenInformation,
FileAttributeTagInformation,
FileTrackingInformation,
FileIdBothDirectoryInformation,
FileIdFullDirectoryInformation,
FileValidDataLengthInformation,
FileShortNameInformation = 40,
FileSfioReserveInformation = 44,
FileSfioVolumeInformation = 45,
FileHardLinkInformation = 46,
FileNormalizedNameInformation = 48,
FileIdGlobalTxDirectoryInformation = 50,
FileStandardLinkInformation = 54,
FileMaximumInformation
} FILE_INFORMATION_CLASS, *PFILE_INFORMATION_CLASS;
typedef struct _FILE_DIRECTORY_INFORMATION {
ULONG NextEntryOffset;
ULONG FileIndex;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER EndOfFile;
LARGE_INTEGER AllocationSize;
ULONG FileAttributes;
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_DIRECTORY_INFORMATION, *PFILE_DIRECTORY_INFORMATION;
typedef struct _FILE_FULL_DIR_INFORMATION {
ULONG NextEntryOffset;
ULONG FileIndex;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER EndOfFile;
LARGE_INTEGER AllocationSize;
ULONG FileAttributes;
ULONG FileNameLength;
ULONG EaSize;
WCHAR FileName[1];
} FILE_FULL_DIR_INFORMATION, *PFILE_FULL_DIR_INFORMATION;
typedef struct _FILE_ID_FULL_DIR_INFORMATION {
ULONG NextEntryOffset;
ULONG FileIndex;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER EndOfFile;
LARGE_INTEGER AllocationSize;
ULONG FileAttributes;
ULONG FileNameLength;
ULONG EaSize;
LARGE_INTEGER FileId;
WCHAR FileName[1];
} FILE_ID_FULL_DIR_INFORMATION, *PFILE_ID_FULL_DIR_INFORMATION;
typedef struct _FILE_BOTH_DIR_INFORMATION {
ULONG NextEntryOffset;
ULONG FileIndex;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER EndOfFile;
LARGE_INTEGER AllocationSize;
ULONG FileAttributes;
ULONG FileNameLength;
ULONG EaSize;
CHAR ShortNameLength;
WCHAR ShortName[12];
WCHAR FileName[1];
} FILE_BOTH_DIR_INFORMATION, *PFILE_BOTH_DIR_INFORMATION;
typedef struct _FILE_ID_BOTH_DIR_INFORMATION {
ULONG NextEntryOffset;
ULONG FileIndex;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER EndOfFile;
LARGE_INTEGER AllocationSize;
ULONG FileAttributes;
ULONG FileNameLength;
ULONG EaSize;
CHAR ShortNameLength;
WCHAR ShortName[12];
LARGE_INTEGER FileId;
WCHAR FileName[1];
} FILE_ID_BOTH_DIR_INFORMATION, *PFILE_ID_BOTH_DIR_INFORMATION;
typedef struct _FILE_FULL_DIR_INFORMATION
FILE_FULL_DIRECTORY_INFORMATION, *PFILE_FULL_DIRECTORY_INFORMATION;
typedef struct _FILE_ID_FULL_DIR_INFORMATION
FILE_ID_FULL_DIRECTORY_INFORMATION, *PFILE_ID_FULL_DIRECTORY_INFORMATION;
typedef struct _FILE_BOTH_DIR_INFORMATION
FILE_BOTH_DIRECTORY_INFORMATION, *PFILE_BOTH_DIRECTORY_INFORMATION;
typedef struct _FILE_ID_BOTH_DIR_INFORMATION
FILE_ID_BOTH_DIRECTORY_INFORMATION, *PFILE_ID_BOTH_DIRECTORY_INFORMATION;
typedef struct _FILE_BASIC_INFORMATION {
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
ULONG FileAttributes;
} FILE_BASIC_INFORMATION, *PFILE_BASIC_INFORMATION;
typedef struct _FILE_STANDARD_INFORMATION {
LARGE_INTEGER AllocationSize;
LARGE_INTEGER EndOfFile;
ULONG NumberOfLinks;
BOOLEAN DeletePending;
BOOLEAN Directory;
} FILE_STANDARD_INFORMATION, *PFILE_STANDARD_INFORMATION;
typedef struct _FILE_INTERNAL_INFORMATION {
LARGE_INTEGER IndexNumber;
} FILE_INTERNAL_INFORMATION, *PFILE_INTERNAL_INFORMATION;
typedef struct _FILE_EA_INFORMATION {
ULONG EaSize;
} FILE_EA_INFORMATION, *PFILE_EA_INFORMATION;
typedef struct _FILE_ACCESS_INFORMATION {
ACCESS_MASK AccessFlags;
} FILE_ACCESS_INFORMATION, *PFILE_ACCESS_INFORMATION;
typedef struct _FILE_LINK_INFORMATION {
BOOLEAN ReplaceIfExists;
HANDLE RootDirectory;
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_LINK_INFORMATION, *PFILE_LINK_INFORMATION;
typedef struct _FILE_NAME_INFORMATION {
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_NAME_INFORMATION, *PFILE_NAME_INFORMATION;
typedef struct _FILE_RENAME_INFORMATION {
BOOLEAN ReplaceIfExists;
HANDLE RootDirectory;
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_RENAME_INFORMATION, *PFILE_RENAME_INFORMATION;
typedef struct _FILE_NAMES_INFORMATION {
ULONG NextEntryOffset;
ULONG FileIndex;
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_NAMES_INFORMATION, *PFILE_NAMES_INFORMATION;
typedef struct _FILE_DISPOSITION_INFORMATION {
BOOLEAN DoDeleteFile;
} FILE_DISPOSITION_INFORMATION, *PFILE_DISPOSITION_INFORMATION;
typedef struct _FILE_POSITION_INFORMATION {
LARGE_INTEGER CurrentByteOffset;
} FILE_POSITION_INFORMATION, *PFILE_POSITION_INFORMATION;
typedef struct _FILE_ALIGNMENT_INFORMATION {
ULONG AlignmentRequirement;
} FILE_ALIGNMENT_INFORMATION, *PFILE_ALIGNMENT_INFORMATION;
typedef struct _FILE_ALLOCATION_INFORMATION {
LARGE_INTEGER AllocationSize;
} FILE_ALLOCATION_INFORMATION, *PFILE_ALLOCATION_INFORMATION;
typedef struct _FILE_END_OF_FILE_INFORMATION {
LARGE_INTEGER EndOfFile;
} FILE_END_OF_FILE_INFORMATION, *PFILE_END_OF_FILE_INFORMATION;
typedef struct _FILE_NETWORK_OPEN_INFORMATION {
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER AllocationSize;
LARGE_INTEGER EndOfFile;
ULONG FileAttributes;
} FILE_NETWORK_OPEN_INFORMATION, *PFILE_NETWORK_OPEN_INFORMATION;
typedef struct _FILE_FULL_EA_INFORMATION {
ULONG NextEntryOffset;
UCHAR Flags;
UCHAR EaNameLength;
USHORT EaValueLength;
CHAR EaName[1];
} FILE_FULL_EA_INFORMATION, *PFILE_FULL_EA_INFORMATION;
typedef struct _FILE_MODE_INFORMATION {
ULONG Mode;
} FILE_MODE_INFORMATION, *PFILE_MODE_INFORMATION;
typedef struct _FILE_STREAM_INFORMATION {
ULONG NextEntryOffset;
ULONG StreamNameLength;
LARGE_INTEGER StreamSize;
LARGE_INTEGER StreamAllocationSize;
WCHAR StreamName[1];
} FILE_STREAM_INFORMATION, *PFILE_STREAM_INFORMATION;
typedef struct _FILE_ATTRIBUTE_TAG_INFORMATION {
ULONG FileAttributes;
ULONG ReparseTag;
} FILE_ATTRIBUTE_TAG_INFORMATION, *PFILE_ATTRIBUTE_TAG_INFORMATION;
typedef struct _FILE_MAILSLOT_QUERY_INFORMATION {
ULONG MaximumMessageSize;
ULONG MailslotQuota;
ULONG NextMessageSize;
ULONG MessagesAvailable;
LARGE_INTEGER ReadTimeout;
} FILE_MAILSLOT_QUERY_INFORMATION, *PFILE_MAILSLOT_QUERY_INFORMATION;
typedef struct _FILE_MAILSLOT_SET_INFORMATION {
LARGE_INTEGER ReadTimeout;
} FILE_MAILSLOT_SET_INFORMATION, *PFILE_MAILSLOT_SET_INFORMATION;
typedef struct _FILE_PIPE_LOCAL_INFORMATION {
ULONG NamedPipeType;
ULONG NamedPipeConfiguration;
ULONG MaximumInstances;
ULONG CurrentInstances;
ULONG InboundQuota;
ULONG ReadDataAvailable;
ULONG OutboundQuota;
ULONG WriteQuotaAvailable;
ULONG NamedPipeState;
ULONG NamedPipeEnd;
} FILE_PIPE_LOCAL_INFORMATION, *PFILE_PIPE_LOCAL_INFORMATION;
typedef struct _FILE_ALL_INFORMATION {
FILE_BASIC_INFORMATION BasicInformation;
FILE_STANDARD_INFORMATION StandardInformation;
FILE_INTERNAL_INFORMATION InternalInformation;
FILE_EA_INFORMATION EaInformation;
FILE_ACCESS_INFORMATION AccessInformation;
FILE_POSITION_INFORMATION PositionInformation;
FILE_MODE_INFORMATION ModeInformation;
FILE_ALIGNMENT_INFORMATION AlignmentInformation;
FILE_NAME_INFORMATION NameInformation;
} FILE_ALL_INFORMATION, *PFILE_ALL_INFORMATION;
typedef enum _FSINFOCLASS {
FileFsVolumeInformation = 1,
FileFsLabelInformation,
FileFsSizeInformation,
FileFsDeviceInformation,
FileFsAttributeInformation,
FileFsControlInformation,
FileFsFullSizeInformation,
FileFsObjectIdInformation,
FileFsDriverPathInformation,
FileFsVolumeFlagsInformation,
FileFsMaximumInformation
} FS_INFORMATION_CLASS, *PFS_INFORMATION_CLASS;
typedef struct _FILE_FS_VOLUME_INFORMATION {
LARGE_INTEGER VolumeCreationTime;
ULONG VolumeSerialNumber;
ULONG VolumeLabelLength;
BOOLEAN SupportsObjects;
WCHAR VolumeLabel[1];
} FILE_FS_VOLUME_INFORMATION, *PFILE_FS_VOLUME_INFORMATION;
typedef struct _FILE_FS_LABEL_INFORMATION {
ULONG VolumeLabelLength;
WCHAR VolumeLabel[1];
} FILE_FS_LABEL_INFORMATION, *PFILE_FS_LABEL_INFORMATION;
typedef struct _FILE_FS_SIZE_INFORMATION {
LARGE_INTEGER TotalAllocationUnits;
LARGE_INTEGER AvailableAllocationUnits;
ULONG SectorsPerAllocationUnit;
ULONG BytesPerSector;
} FILE_FS_SIZE_INFORMATION, *PFILE_FS_SIZE_INFORMATION;
typedef struct _FILE_FS_DEVICE_INFORMATION {
DWORD DeviceType;
ULONG Characteristics;
} FILE_FS_DEVICE_INFORMATION, *PFILE_FS_DEVICE_INFORMATION;
typedef struct _FILE_FS_ATTRIBUTE_INFORMATION {
ULONG FileSystemAttributes;
ULONG MaximumComponentNameLength;
ULONG FileSystemNameLength;
WCHAR FileSystemName[1];
} FILE_FS_ATTRIBUTE_INFORMATION, *PFILE_FS_ATTRIBUTE_INFORMATION;
typedef struct _FILE_FS_FULL_SIZE_INFORMATION {
LARGE_INTEGER TotalAllocationUnits;
LARGE_INTEGER CallerAvailableAllocationUnits;
LARGE_INTEGER ActualAvailableAllocationUnits;
ULONG SectorsPerAllocationUnit;
ULONG BytesPerSector;
} FILE_FS_FULL_SIZE_INFORMATION, *PFILE_FS_FULL_SIZE_INFORMATION;
typedef struct _FILE_FS_OBJECTID_INFORMATION {
UCHAR ObjectId[16];
UCHAR ExtendedInfo[48];
} FILE_FS_OBJECTID_INFORMATION, *PFILE_FS_OBJECTID_INFORMATION;
typedef struct _IO_STATUS_BLOCK {
__extension__ union {
NTSTATUS Status;
PVOID Pointer;
};
ULONG_PTR Information;
} IO_STATUS_BLOCK,*PIO_STATUS_BLOCK;
typedef void (__attribute__((__stdcall__)) *PIO_APC_ROUTINE)(PVOID ApcContext,PIO_STATUS_BLOCK IoStatusBlock,ULONG Reserved);
typedef struct _VM_COUNTERS {
SIZE_T PeakVirtualSize;
SIZE_T VirtualSize;
ULONG PageFaultCount;
SIZE_T PeakWorkingSetSize;
SIZE_T WorkingSetSize;
SIZE_T QuotaPeakPagedPoolUsage;
SIZE_T QuotaPagedPoolUsage;
SIZE_T QuotaPeakNonPagedPoolUsage;
SIZE_T QuotaNonPagedPoolUsage;
SIZE_T PagefileUsage;
SIZE_T PeakPagefileUsage;
} VM_COUNTERS, *PVM_COUNTERS;
typedef enum _THREAD_STATE {
StateInitialized = 0,
StateReady, StateRunning, StateStandby, StateTerminated,
StateWait, StateTransition,
StateUnknown
} THREAD_STATE;
typedef struct _CLIENT_ID {
HANDLE UniqueProcess;
HANDLE UniqueThread;
} CLIENT_ID, *PCLIENT_ID;
typedef LONG KPRIORITY;
typedef enum _KWAIT_REASON {
Executive = 0,
FreePage, PageIn, PoolAllocation, DelayExecution,
Suspended, UserRequest, WrExecutive, WrFreePage, WrPageIn,
WrPoolAllocation, WrDelayExecution, WrSuspended,
WrUserRequest, WrEventPair, WrQueue, WrLpcReceive,
WrLpcReply, WrVirtualMemory, WrPageOut, WrRendezvous,
Spare2, Spare3, Spare4, Spare5, Spare6, WrKernel,
MaximumWaitReason
} KWAIT_REASON;
typedef struct _SYSTEM_THREADS
{
LARGE_INTEGER KernelTime;
LARGE_INTEGER UserTime;
LARGE_INTEGER CreateTime;
ULONG WaitTime;
PVOID StartAddress;
CLIENT_ID ClientId;
KPRIORITY Priority;
KPRIORITY BasePriority;
ULONG ContextSwitchCount;
THREAD_STATE State;
KWAIT_REASON WaitReason;
} SYSTEM_THREADS, *PSYSTEM_THREADS;
typedef struct _PROCESS_BASIC_INFORMATION {
NTSTATUS ExitStatus;
PPEB PebBaseAddress;
KAFFINITY AffinityMask;
KPRIORITY BasePriority;
ULONG_PTR UniqueProcessId;
ULONG_PTR InheritedFromUniqueProcessId;
} PROCESS_BASIC_INFORMATION, *PPROCESS_BASIC_INFORMATION;
typedef struct _KERNEL_USER_TIMES {
FILETIME CreateTime;
FILETIME ExitTime;
LARGE_INTEGER KernelTime;
LARGE_INTEGER UserTime;
} KERNEL_USER_TIMES, *PKERNEL_USER_TIMES;
typedef struct _SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION {
LARGE_INTEGER IdleTime;
LARGE_INTEGER KernelTime;
LARGE_INTEGER UserTime;
LARGE_INTEGER Reserved1[2];
ULONG Reserved2;
} SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION,*PSYSTEM_PROCESSOR_PERFORMANCE_INFORMATION;
typedef struct _SYSTEM_PROCESS_INFORMATION {
ULONG NextEntryOffset;
ULONG NumberOfThreads;
LARGE_INTEGER Reserved[3];
LARGE_INTEGER CreateTime;
LARGE_INTEGER UserTime;
LARGE_INTEGER KernelTime;
UNICODE_STRING ImageName;
KPRIORITY BasePriority;
HANDLE UniqueProcessId;
HANDLE InheritedFromUniqueProcessId;
ULONG HandleCount;
ULONG SessionId;
ULONG PageDirectoryBase;
VM_COUNTERS VirtualMemoryCounters;
SIZE_T PrivatePageCount;
IO_COUNTERS IoCounters;
} SYSTEM_PROCESS_INFORMATION,*PSYSTEM_PROCESS_INFORMATION;
typedef struct _SYSTEM_THREAD_INFORMATION {
LARGE_INTEGER Reserved1[3];
ULONG Reserved2;
PVOID StartAddress;
CLIENT_ID ClientId;
KPRIORITY Priority;
LONG BasePriority;
ULONG Reserved3;
ULONG ThreadState;
ULONG WaitReason;
} SYSTEM_THREAD_INFORMATION, *PSYSTEM_THREAD_INFORMATION;
typedef struct _SYSTEM_REGISTRY_QUOTA_INFORMATION {
ULONG RegistryQuotaAllowed;
ULONG RegistryQuotaUsed;
PVOID Reserved1;
} SYSTEM_REGISTRY_QUOTA_INFORMATION,*PSYSTEM_REGISTRY_QUOTA_INFORMATION;
typedef struct _SYSTEM_BASIC_INFORMATION {
BYTE Reserved1[4];
ULONG MaximumIncrement;
ULONG PhysicalPageSize;
ULONG NumberOfPhysicalPages;
ULONG LowestPhysicalPage;
ULONG HighestPhysicalPage;
ULONG AllocationGranularity;
ULONG_PTR LowestUserAddress;
ULONG_PTR HighestUserAddress;
ULONG_PTR ActiveProcessors;
CCHAR NumberOfProcessors;
} SYSTEM_BASIC_INFORMATION,*PSYSTEM_BASIC_INFORMATION;
typedef struct _SYSTEM_PROCESSOR_INFORMATION {
USHORT ProcessorArchitecture;
USHORT ProcessorLevel;
USHORT ProcessorRevision;
USHORT Unknown;
ULONG FeatureBits;
} SYSTEM_PROCESSOR_INFORMATION, *PSYSTEM_PROCESSOR_INFORMATION;
typedef struct _SYSTEM_TIMEOFDAY_INFORMATION {
LARGE_INTEGER BootTime;
LARGE_INTEGER CurrentTime;
LARGE_INTEGER TimeZoneBias;
ULONG CurrentTimeZoneId;
BYTE Reserved1[20];
} SYSTEM_TIMEOFDAY_INFORMATION,*PSYSTEM_TIMEOFDAY_INFORMATION;
typedef struct _SYSTEM_PERFORMANCE_INFORMATION {
LARGE_INTEGER IdleTime;
LARGE_INTEGER ReadTransferCount;
LARGE_INTEGER WriteTransferCount;
LARGE_INTEGER OtherTransferCount;
ULONG ReadOperationCount;
ULONG WriteOperationCount;
ULONG OtherOperationCount;
ULONG AvailablePages;
ULONG TotalCommittedPages;
ULONG TotalCommitLimit;
ULONG PeakCommitment;
ULONG PageFaults;
ULONG WriteCopyFaults;
ULONG TransitionFaults;
ULONG CacheTransitionFaults;
ULONG DemandZeroFaults;
ULONG PagesRead;
ULONG PageReadIos;
ULONG CacheReads;
ULONG CacheIos;
ULONG PagefilePagesWritten;
ULONG PagefilePageWriteIos;
ULONG MappedFilePagesWritten;
ULONG MappedFilePageWriteIos;
ULONG PagedPoolUsage;
ULONG NonPagedPoolUsage;
ULONG PagedPoolAllocs;
ULONG PagedPoolFrees;
ULONG NonPagedPoolAllocs;
ULONG NonPagedPoolFrees;
ULONG TotalFreeSystemPtes;
ULONG SystemCodePage;
ULONG TotalSystemDriverPages;
ULONG TotalSystemCodePages;
ULONG SmallNonPagedLookasideListAllocateHits;
ULONG SmallPagedLookasideListAllocateHits;
ULONG Reserved3;
ULONG MmSystemCachePage;
ULONG PagedPoolPage;
ULONG SystemDriverPage;
ULONG FastReadNoWait;
ULONG FastReadWait;
ULONG FastReadResourceMiss;
ULONG FastReadNotPossible;
ULONG FastMdlReadNoWait;
ULONG FastMdlReadWait;
ULONG FastMdlReadResourceMiss;
ULONG FastMdlReadNotPossible;
ULONG MapDataNoWait;
ULONG MapDataWait;
ULONG MapDataNoWaitMiss;
ULONG MapDataWaitMiss;
ULONG PinMappedDataCount;
ULONG PinReadNoWait;
ULONG PinReadWait;
ULONG PinReadNoWaitMiss;
ULONG PinReadWaitMiss;
ULONG CopyReadNoWait;
ULONG CopyReadWait;
ULONG CopyReadNoWaitMiss;
ULONG CopyReadWaitMiss;
ULONG MdlReadNoWait;
ULONG MdlReadWait;
ULONG MdlReadNoWaitMiss;
ULONG MdlReadWaitMiss;
ULONG ReadAheadIos;
ULONG LazyWriteIos;
ULONG LazyWritePages;
ULONG DataFlushes;
ULONG DataPages;
ULONG ContextSwitches;
ULONG FirstLevelTbFills;
ULONG SecondLevelTbFills;
ULONG SystemCalls;
} SYSTEM_PERFORMANCE_INFORMATION, *PSYSTEM_PERFORMANCE_INFORMATION;
typedef struct _SYSTEM_EXCEPTION_INFORMATION {
BYTE Reserved1[16];
} SYSTEM_EXCEPTION_INFORMATION,*PSYSTEM_EXCEPTION_INFORMATION;
typedef struct _SYSTEM_LOOKASIDE_INFORMATION {
BYTE Reserved1[32];
} SYSTEM_LOOKASIDE_INFORMATION,*PSYSTEM_LOOKASIDE_INFORMATION;
typedef struct _SYSTEM_INTERRUPT_INFORMATION {
BYTE Reserved1[24];
} SYSTEM_INTERRUPT_INFORMATION,*PSYSTEM_INTERRUPT_INFORMATION;
typedef struct _SYSTEM_POLICY_INFORMATION {
PVOID Reserved1[2];
ULONG Reserved2[3];
} SYSTEM_POLICY_INFORMATION, *PSYSTEM_POLICY_INFORMATION;
typedef struct _SYSTEM_HANDLE_ENTRY {
ULONG OwnerPid;
BYTE ObjectType;
BYTE HandleFlags;
USHORT HandleValue;
PVOID ObjectPointer;
ULONG AccessMask;
} SYSTEM_HANDLE_ENTRY, *PSYSTEM_HANDLE_ENTRY;
typedef struct _SYSTEM_HANDLE_INFORMATION {
ULONG Count;
SYSTEM_HANDLE_ENTRY Handle[1];
} SYSTEM_HANDLE_INFORMATION, *PSYSTEM_HANDLE_INFORMATION;
typedef struct _SYSTEM_PAGEFILE_INFORMATION {
ULONG NextEntryOffset;
ULONG CurrentSize;
ULONG TotalUsed;
ULONG PeakUsed;
UNICODE_STRING FileName;
} SYSTEM_PAGEFILE_INFORMATION, *PSYSTEM_PAGEFILE_INFORMATION;
typedef struct _PUBLIC_OBJECT_BASIC_INFORMATION {
ULONG Attributes;
ACCESS_MASK GrantedAccess;
ULONG HandleCount;
ULONG PointerCount;
ULONG Reserved[10];
} PUBLIC_OBJECT_BASIC_INFORMATION, *PPUBLIC_OBJECT_BASIC_INFORMATION;
typedef struct __PUBLIC_OBJECT_TYPE_INFORMATION {
UNICODE_STRING TypeName;
ULONG Reserved[22];
} PUBLIC_OBJECT_TYPE_INFORMATION, *PPUBLIC_OBJECT_TYPE_INFORMATION;
typedef enum _PROCESSINFOCLASS {
ProcessBasicInformation,
ProcessQuotaLimits,
ProcessIoCounters,
ProcessVmCounters,
ProcessTimes,
ProcessBasePriority,
ProcessRaisePriority,
ProcessDebugPort,
ProcessExceptionPort,
ProcessAccessToken,
ProcessLdtInformation,
ProcessLdtSize,
ProcessDefaultHardErrorMode,
ProcessIoPortHandlers,
ProcessPooledUsageAndLimits,
ProcessWorkingSetWatch,
ProcessUserModeIOPL,
ProcessEnableAlignmentFaultFixup,
ProcessPriorityClass,
ProcessWx86Information,
ProcessHandleCount,
ProcessAffinityMask,
ProcessPriorityBoost,
ProcessDeviceMap,
ProcessSessionInformation,
ProcessForegroundInformation,
ProcessWow64Information,
ProcessImageFileName,
ProcessLUIDDeviceMapsEnabled,
ProcessBreakOnTermination,
ProcessDebugObjectHandle,
ProcessDebugFlags,
ProcessHandleTracing,
ProcessIoPriority,
ProcessExecuteFlags,
ProcessTlsInformation,
ProcessCookie,
ProcessImageInformation,
ProcessCycleTime,
ProcessPagePriority,
ProcessInstrumentationCallback,
ProcessThreadStackAllocation,
ProcessWorkingSetWatchEx,
ProcessImageFileNameWin32,
ProcessImageFileMapping,
ProcessAffinityUpdateMode,
ProcessMemoryAllocationMode,
ProcessGroupInformation,
ProcessTokenVirtualizationEnabled,
ProcessConsoleHostProcess,
ProcessWindowInformation,
MaxProcessInfoClass
} PROCESSINFOCLASS;
typedef enum _THREADINFOCLASS {
ThreadBasicInformation,
ThreadTimes,
ThreadPriority,
ThreadBasePriority,
ThreadAffinityMask,
ThreadImpersonationToken,
ThreadDescriptorTableEntry,
ThreadEnableAlignmentFaultFixup,
ThreadEventPair,
ThreadQuerySetWin32StartAddress,
ThreadZeroTlsCell,
ThreadPerformanceCount,
ThreadAmILastThread,
ThreadIdealProcessor,
ThreadPriorityBoost,
ThreadSetTlsArrayAddress,
ThreadIsIoPending,
ThreadHideFromDebugger
} THREADINFOCLASS;
typedef struct _SYSTEM_CODEINTEGRITY_INFORMATION {
ULONG Length;
ULONG CodeIntegrityOptions;
} SYSTEM_CODEINTEGRITY_INFORMATION, *PSYSTEM_CODEINTEGRITY_INFORMATION;
typedef enum _SYSTEM_INFORMATION_CLASS {
SystemBasicInformation = 0,
SystemProcessorInformation = 1,
SystemPerformanceInformation = 2,
SystemTimeOfDayInformation = 3,
SystemProcessInformation = 5,
SystemProcessorPerformanceInformation = 8,
SystemHandleInformation = 16,
SystemPagefileInformation = 18,
SystemInterruptInformation = 23,
SystemExceptionInformation = 33,
SystemRegistryQuotaInformation = 37,
SystemLookasideInformation = 45
} SYSTEM_INFORMATION_CLASS;
typedef enum _OBJECT_INFORMATION_CLASS {
ObjectBasicInformation,
ObjectNameInformation,
ObjectTypeInformation,
ObjectAllInformation,
ObjectDataInformation
} OBJECT_INFORMATION_CLASS, *POBJECT_INFORMATION_CLASS;
typedef struct _KEY_VALUE_ENTRY {
PUNICODE_STRING ValueName;
ULONG DataLength;
ULONG DataOffset;
ULONG Type;
} KEY_VALUE_ENTRY, *PKEY_VALUE_ENTRY;
typedef enum _KEY_SET_INFORMATION_CLASS {
KeyWriteTimeInformation,
KeyWow64FlagsInformation,
KeyControlFlagsInformation,
KeySetVirtualizationInformation,
KeySetDebugInformation,
KeySetHandleTagsInformation,
MaxKeySetInfoClass
} KEY_SET_INFORMATION_CLASS;
NTSTATUS __attribute__((__stdcall__)) NtClose(HANDLE Handle);
NTSTATUS __attribute__((__stdcall__)) NtCreateFile(PHANDLE FileHandle,ACCESS_MASK DesiredAccess,POBJECT_ATTRIBUTES ObjectAttributes,PIO_STATUS_BLOCK IoStatusBlock,PLARGE_INTEGER AllocationSize,ULONG FileAttributes,ULONG ShareAccess,ULONG CreateDisposition,ULONG CreateOptions,PVOID EaBuffer,ULONG EaLength);
NTSTATUS __attribute__((__stdcall__)) NtOpenFile(PHANDLE FileHandle,ACCESS_MASK DesiredAccess,POBJECT_ATTRIBUTES ObjectAttributes,PIO_STATUS_BLOCK IoStatusBlock,ULONG ShareAccess,ULONG OpenOptions);
NTSTATUS __attribute__((__stdcall__)) NtRenameKey(HANDLE KeyHandle, PUNICODE_STRING NewName);
NTSTATUS __attribute__((__stdcall__)) NtNotifyChangeMultipleKeys(HANDLE MasterKeyHandle, ULONG Count, OBJECT_ATTRIBUTES SubordinateObjects[], HANDLE Event, PIO_APC_ROUTINE ApcRoutine, PVOID ApcContext, PIO_STATUS_BLOCK IoStatusBlock, ULONG CompletionFilter, BOOLEAN WatchTree, PVOID Buffer, ULONG BufferSize, BOOLEAN Asynchronous);
NTSTATUS __attribute__((__stdcall__)) NtQueryMultipleValueKey(HANDLE KeyHandle, PKEY_VALUE_ENTRY ValueEntries, ULONG EntryCount, PVOID ValueBuffer, PULONG BufferLength, PULONG RequiredBufferLength);
NTSTATUS __attribute__((__stdcall__)) NtSetInformationKey(HANDLE KeyHandle, KEY_SET_INFORMATION_CLASS KeySetInformationClass, PVOID KeySetInformation, ULONG KeySetInformationLength);
NTSTATUS __attribute__((__stdcall__)) NtFsControlFile(HANDLE FileHandle,HANDLE Event,PIO_APC_ROUTINE ApcRoutine,PVOID ApcContext,PIO_STATUS_BLOCK IoStatusBlock,ULONG IoControlCode,PVOID InputBuffer,ULONG InputBufferLength,PVOID OutputBuffer,ULONG OutputBufferLength);
NTSTATUS __attribute__((__stdcall__)) NtDeviceIoControlFile(HANDLE FileHandle,HANDLE Event,PIO_APC_ROUTINE ApcRoutine,PVOID ApcContext,PIO_STATUS_BLOCK IoStatusBlock,ULONG IoControlCode,PVOID InputBuffer,ULONG InputBufferLength,PVOID OutputBuffer,ULONG OutputBufferLength);
NTSTATUS __attribute__((__stdcall__)) NtWaitForSingleObject(HANDLE Handle,BOOLEAN Alertable,PLARGE_INTEGER Timeout);
BOOLEAN __attribute__((__stdcall__)) RtlIsNameLegalDOS8Dot3(PUNICODE_STRING Name,POEM_STRING OemName,PBOOLEAN NameContainsSpaces);
ULONG __attribute__((__stdcall__)) RtlNtStatusToDosError (NTSTATUS Status);
NTSTATUS __attribute__((__stdcall__)) NtQueryInformationProcess(HANDLE ProcessHandle,PROCESSINFOCLASS ProcessInformationClass,PVOID ProcessInformation,ULONG ProcessInformationLength,PULONG ReturnLength);
NTSTATUS __attribute__((__stdcall__)) NtQueryInformationThread(HANDLE ThreadHandle,THREADINFOCLASS ThreadInformationClass,PVOID ThreadInformation,ULONG ThreadInformationLength,PULONG ReturnLength);
NTSTATUS __attribute__((__stdcall__)) NtQueryInformationFile(HANDLE hFile,PIO_STATUS_BLOCK io,PVOID ptr,ULONG len,FILE_INFORMATION_CLASS FileInformationClass);
NTSTATUS __attribute__((__stdcall__)) NtQueryObject(HANDLE Handle,OBJECT_INFORMATION_CLASS ObjectInformationClass,PVOID ObjectInformation,ULONG ObjectInformationLength,PULONG ReturnLength);
NTSTATUS __attribute__((__stdcall__)) NtQuerySystemInformation(SYSTEM_INFORMATION_CLASS SystemInformationClass,PVOID SystemInformation,ULONG SystemInformationLength,PULONG ReturnLength);
NTSTATUS __attribute__((__stdcall__)) NtQuerySystemTime(PLARGE_INTEGER SystemTime);
NTSTATUS __attribute__((__stdcall__)) NtQueryVolumeInformationFile(HANDLE hFile,PIO_STATUS_BLOCK io,PVOID ptr,ULONG len,FS_INFORMATION_CLASS FsInformationClass);
NTSTATUS __attribute__((__stdcall__)) NtSetInformationFile(HANDLE hFile,PIO_STATUS_BLOCK io,PVOID ptr,ULONG len,FILE_INFORMATION_CLASS FileInformationClass);
NTSTATUS __attribute__((__stdcall__)) NtSetInformationProcess(HANDLE ProcessHandle, PROCESSINFOCLASS ProcessInformationClass, PVOID ProcessInformation, ULONG ProcessInformationLength);
NTSTATUS __attribute__((__stdcall__)) NtSetVolumeInformationFile(HANDLE hFile,PIO_STATUS_BLOCK io,PVOID ptr,ULONG len,FILE_INFORMATION_CLASS FileInformationClass);
NTSTATUS __attribute__((__stdcall__)) RtlLocalTimeToSystemTime(PLARGE_INTEGER LocalTime,PLARGE_INTEGER SystemTime);
BOOLEAN __attribute__((__stdcall__)) RtlTimeToSecondsSince1970(PLARGE_INTEGER Time,PULONG ElapsedSeconds);
void __attribute__((__stdcall__)) RtlFreeAnsiString(PANSI_STRING AnsiString);
void __attribute__((__stdcall__)) RtlFreeUnicodeString(PUNICODE_STRING UnicodeString);
void __attribute__((__stdcall__)) RtlFreeOemString(POEM_STRING OemString);
void __attribute__((__stdcall__)) RtlInitString (PSTRING DestinationString,PCSZ SourceString);
NTSTATUS __attribute__((__stdcall__)) RtlInitStringEx(PSTRING DestinationString, PCSZ SourceString);
void __attribute__((__stdcall__)) RtlInitAnsiString(PANSI_STRING DestinationString,PCSZ SourceString);
NTSTATUS __attribute__((__stdcall__)) RtlInitAnsiStringEx(PANSI_STRING DestinationString, PCSZ SourceString);
void __attribute__((__stdcall__)) RtlInitUnicodeString(PUNICODE_STRING DestinationString,PCWSTR SourceString);
NTSTATUS __attribute__((__stdcall__)) RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString,PCANSI_STRING SourceString,BOOLEAN AllocateDestinationString);
NTSTATUS __attribute__((__stdcall__)) RtlUnicodeStringToAnsiString(PANSI_STRING DestinationString,PCUNICODE_STRING SourceString,BOOLEAN AllocateDestinationString);
NTSTATUS __attribute__((__stdcall__)) RtlUnicodeStringToOemString(POEM_STRING DestinationString,PCUNICODE_STRING SourceString,BOOLEAN AllocateDestinationString);
NTSTATUS __attribute__((__stdcall__)) RtlUnicodeToMultiByteSize(PULONG BytesInMultiByteString,PWCH UnicodeString,ULONG BytesInUnicodeString);
NTSTATUS __attribute__((__stdcall__)) RtlCharToInteger (PCSZ String,ULONG Base,PULONG Value);
NTSTATUS __attribute__((__stdcall__)) RtlConvertSidToUnicodeString(PUNICODE_STRING UnicodeString,PSID Sid,BOOLEAN AllocateDestinationString);
ULONG __attribute__((__stdcall__)) RtlUniform(PULONG Seed);
void __attribute__((__stdcall__)) RtlUnwind (PVOID TargetFrame,PVOID TargetIp,PEXCEPTION_RECORD ExceptionRecord,PVOID ReturnValue);
BOOL __attribute__((__stdcall__)) RtlDosPathNameToNtPathName_U(PCWSTR DosPathName, PUNICODE_STRING NtPathName, PCWSTR *NtFileNamePart, void *DirectoryInfo);
BOOLEAN __attribute__((__stdcall__)) RtlPrefixUnicodeString(PCUNICODE_STRING String1, PCUNICODE_STRING String2, BOOLEAN CaseInSensitive);
BOOLEAN __attribute__((__stdcall__)) RtlCreateUnicodeStringFromAsciiz(PUNICODE_STRING target, LPCSTR src);
typedef NTSTATUS (__attribute__((__stdcall__)) *PRTL_HEAP_COMMIT_ROUTINE) (PVOID Base, PVOID *CommitAddress, PSIZE_T CommitSize);
typedef struct _RTL_HEAP_PARAMETERS {
ULONG Length;
SIZE_T SegmentReserve;
SIZE_T SegmentCommit;
SIZE_T DeCommitFreeBlockThreshold;
SIZE_T DeCommitTotalFreeThreshold;
SIZE_T MaximumAllocationSize;
SIZE_T VirtualMemoryThreshold;
SIZE_T InitialCommit;
SIZE_T InitialReserve;
PRTL_HEAP_COMMIT_ROUTINE CommitRoutine;
SIZE_T Reserved[ 2 ];
} RTL_HEAP_PARAMETERS, *PRTL_HEAP_PARAMETERS;
BOOLEAN __attribute__((__stdcall__)) RtlFreeHeap(PVOID HeapHandle, ULONG Flags, PVOID HeapBase);
PVOID __attribute__((__stdcall__)) RtlAllocateHeap(PVOID HeapHandle, ULONG Flags, SIZE_T Size);
PVOID __attribute__((__stdcall__)) RtlCreateHeap(ULONG Flags, PVOID HeapBase, SIZE_T ReserveSize, SIZE_T CommitSize, PVOID Lock, PRTL_HEAP_PARAMETERS Parameters);
PVOID __attribute__((__stdcall__)) RtlDestroyHeap(PVOID HeapHandle);
typedef enum _WINSTATIONINFOCLASS {
WinStationInformation = 8
} WINSTATIONINFOCLASS;
typedef struct _WINSTATIONINFORMATIONW {
BYTE Reserved2[70];
ULONG LogonId;
BYTE Reserved3[1140];
} WINSTATIONINFORMATIONW,*PWINSTATIONINFORMATIONW;
typedef BOOLEAN (__attribute__((__stdcall__)) *PWINSTATIONQUERYINFORMATIONW)(HANDLE,ULONG,WINSTATIONINFOCLASS,PVOID,ULONG,PULONG);
#pragma pack(push,8)
extern const GUID IID_IPropertyFrame;
extern const GUID CLSID_CFontPropPage;
extern const GUID CLSID_CColorPropPage;
extern const GUID CLSID_CPicturePropPage;
extern const GUID CLSID_PersistPropset;
extern const GUID CLSID_ConvertVBX;
extern const GUID CLSID_StdFont;
extern const GUID CLSID_StdPicture;
extern const GUID GUID_HIMETRIC;
extern const GUID GUID_COLOR;
extern const GUID GUID_XPOSPIXEL;
extern const GUID GUID_YPOSPIXEL;
extern const GUID GUID_XSIZEPIXEL;
extern const GUID GUID_YSIZEPIXEL;
extern const GUID GUID_XPOS;
extern const GUID GUID_YPOS;
extern const GUID GUID_XSIZE;
extern const GUID GUID_YSIZE;
extern const GUID GUID_OPTIONVALUEEXCLUSIVE;
extern const GUID GUID_CHECKVALUEEXCLUSIVE;
extern const GUID GUID_FONTNAME;
extern const GUID GUID_FONTSIZE;
extern const GUID GUID_FONTBOLD;
extern const GUID GUID_FONTITALIC;
extern const GUID GUID_FONTUNDERSCORE;
extern const GUID GUID_FONTSTRIKETHROUGH;
extern const GUID GUID_HANDLE;
typedef struct tagOCPFIPARAMS {
ULONG cbStructSize;
HWND hWndOwner;
int x;
int y;
LPCOLESTR lpszCaption;
ULONG cObjects;
LPUNKNOWN *lplpUnk;
ULONG cPages;
CLSID *lpPages;
LCID lcid;
DISPID dispidInitialProperty;
} OCPFIPARAMS,*LPOCPFIPARAMS;
typedef struct tagFONTDESC {
UINT cbSizeofstruct;
LPOLESTR lpstrName;
CY cySize;
SHORT sWeight;
SHORT sCharset;
WINBOOL fItalic;
WINBOOL fUnderline;
WINBOOL fStrikethrough;
} FONTDESC,*LPFONTDESC;
typedef struct tagPICTDESC {
UINT cbSizeofstruct;
UINT picType;
__extension__ union {
struct {
HBITMAP hbitmap;
HPALETTE hpal;
} bmp;
struct {
HMETAFILE hmeta;
int xExt;
int yExt;
} wmf;
struct {
HICON hicon;
} icon;
struct {
HENHMETAFILE hemf;
} emf;
} ;
} PICTDESC,*LPPICTDESC;
typedef long OLE_XPOS_PIXELS;
typedef long OLE_YPOS_PIXELS;
typedef long OLE_XSIZE_PIXELS;
typedef long OLE_YSIZE_PIXELS;
typedef float OLE_XPOS_CONTAINER;
typedef float OLE_YPOS_CONTAINER;
typedef float OLE_XSIZE_CONTAINER;
typedef float OLE_YSIZE_CONTAINER;
typedef enum {
triUnchecked = 0,triChecked = 1,triGray = 2
} OLE_TRISTATE;
typedef VARIANT_BOOL OLE_OPTEXCLUSIVE;
typedef VARIANT_BOOL OLE_CANCELBOOL;
typedef VARIANT_BOOL OLE_ENABLEDEFAULTBOOL;
extern HRESULT __attribute__((__stdcall__)) DllRegisterServer(void);
extern HRESULT __attribute__((__stdcall__)) DllUnregisterServer(void);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreatePropertyFrame(HWND hwndOwner,UINT x,UINT y,LPCOLESTR lpszCaption,ULONG cObjects,LPUNKNOWN *ppUnk,ULONG cPages,LPCLSID pPageClsID,LCID lcid,DWORD dwReserved,LPVOID pvReserved);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreatePropertyFrameIndirect(LPOCPFIPARAMS lpParams);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleTranslateColor(OLE_COLOR clr,HPALETTE hpal,COLORREF *lpcolorref);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreateFontIndirect(LPFONTDESC lpFontDesc,const IID *const riid,LPVOID *lplpvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleCreatePictureIndirect(LPPICTDESC lpPictDesc,const IID *const riid,WINBOOL fOwn,LPVOID *lplpvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleLoadPicture(LPSTREAM lpstream,LONG lSize,WINBOOL fRunmode,const IID *const riid,LPVOID *lplpvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleLoadPictureEx(LPSTREAM lpstream,LONG lSize,WINBOOL fRunmode,const IID *const riid,DWORD xSizeDesired,DWORD ySizeDesired,DWORD dwFlags,LPVOID *lplpvObj);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleLoadPicturePath(LPOLESTR szURLorPath,LPUNKNOWN punkCaller,DWORD dwReserved,OLE_COLOR clrReserved,const IID *const riid,LPVOID *ppvRet);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleLoadPictureFile(VARIANT varFileName,LPDISPATCH *lplpdispPicture);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleLoadPictureFileEx(VARIANT varFileName,DWORD xSizeDesired,DWORD ySizeDesired,DWORD dwFlags,LPDISPATCH *lplpdispPicture);
extern __attribute__((dllimport)) HRESULT __attribute__((__stdcall__)) OleSavePictureFile(LPDISPATCH lpdispPicture,BSTR bstrFileName);
extern __attribute__((dllimport)) HCURSOR __attribute__((__stdcall__)) OleIconToCursor(HINSTANCE hinstExe,HICON hIcon);
#pragma pack(pop)