File Annotation

Not logged in
c2b7a98c21 2011-02-23        kinaba: module win32.winnt;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // Translated from Microsoft Platform SDK August 2001 Edition
c2b7a98c21 2011-02-23        kinaba: // by Y.Tomino (demoonlit@inter7.jp)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: import win32.windef;
c2b7a98c21 2011-02-23        kinaba: alias void _TEB;
c2b7a98c21 2011-02-23        kinaba: alias void _EXCEPTION_REGISTRATION_RECORD;
c2b7a98c21 2011-02-23        kinaba: private extern(C) {
c2b7a98c21 2011-02-23        kinaba:   int memcmp(void*, void*, uint);
c2b7a98c21 2011-02-23        kinaba:   void* memmove(void*, void*, uint);
c2b7a98c21 2011-02-23        kinaba:   void* memcpy(void*, void*, uint);
c2b7a98c21 2011-02-23        kinaba:   void* memset(void*, uint, uint);
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _WINNT_
c2b7a98c21 2011-02-23        kinaba: // #define _WINNT_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef __cplusplus
c2b7a98c21 2011-02-23        kinaba: // extern "C" {
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #include <ctype.h>
c2b7a98c21 2011-02-23        kinaba: enum : uint { ANYSIZE_ARRAY = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_MRX000) && !(defined(MIDL_PASS) || defined(RC_INVOKED)) && defined(ENABLE_RESTRICTED)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #define RESTRICTED_POINTER
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_MRX000) || defined(_M_ALPHA) || defined(_M_PPC) || defined(_M_IA64) || defined(_M_AMD64)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #if defined(_WIN64)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #define UNALIGNED
c2b7a98c21 2011-02-23        kinaba: // #define UNALIGNED64
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_WIN64) || defined(_M_ALPHA)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: const uint MAX_NATURAL_ALIGNMENT = DWORD.sizeof;
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEMORY_ALLOCATION_ALIGNMENT = 8 }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef __cplusplus
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1300
c2b7a98c21 2011-02-23        kinaba: // #define TYPE_ALIGNMENT( t ) __alignof(t)
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_WIN64)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define PROBE_ALIGNMENT( _s ) TYPE_ALIGNMENT( DWORD )
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define C_ASSERT(e) typedef char __C_ASSERT__[(e)?1:-1]
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(_MAC) && (defined(_M_MRX000) || defined(_M_AMD64) || defined(_M_IA64)) && (_MSC_VER >= 1100) && !(defined(MIDL_PASS) || defined(RC_INVOKED))
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #if defined(_WIN64)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #if defined(_MAC) && defined(_MAC_INT_64)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #define POINTER_64
c2b7a98c21 2011-02-23        kinaba: alias uint POINTER_64_INT;
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: alias void* POINTER_32;
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_IA64_) || defined(_AMD64_)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: alias POINTER_32 FIRMWARE_PTR;
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #include <basetsd.h>
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if (defined(_M_IX86) || defined(_M_IA64) || defined(_M_AMD64)) && !defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_IMPORT __declspec(dllimport)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECLSPEC_NORETURN
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1200) && !defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_NORETURN __declspec(noreturn)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECLSPEC_ALIGN
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1300) && !defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_ALIGN(x) __declspec(align(x))
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECLSPEC_CACHEALIGN
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_CACHEALIGN DECLSPEC_ALIGN(128)
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECLSPEC_UUID
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1100) && defined (__cplusplus)
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_UUID(x) __declspec(uuid(x))
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECLSPEC_NOVTABLE
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1100) && defined(__cplusplus)
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_NOVTABLE __declspec(novtable)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECLSPEC_SELECTANY
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1100)
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_SELECTANY __declspec(selectany)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef NOP_FUNCTION
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1210)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECLSPEC_ADDRSAFE
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1200) && (defined(_M_ALPHA) || defined(_M_AXP64))
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_ADDRSAFE
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef FORCEINLINE
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1200)
c2b7a98c21 2011-02-23        kinaba: // #define FORCEINLINE __forceinline
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECLSPEC_DEPRECATED
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER >= 1300) && !defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: // #define DECLSPEC_DEPRECATED __declspec(deprecated)
c2b7a98c21 2011-02-23        kinaba: // #define DEPRECATE_SUPPORTED
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias void* PVOID;
c2b7a98c21 2011-02-23        kinaba: deprecated alias void* PVOID64; /* warning: 64-bit */
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if ((_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)) && !defined(_M_AMD64)
c2b7a98c21 2011-02-23        kinaba: // #define NTAPI __stdcall
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(_NTSYSTEM_)
c2b7a98c21 2011-02-23        kinaba: // #define NTSYSAPI DECLSPEC_IMPORT
c2b7a98c21 2011-02-23        kinaba: // #define NTSYSCALLAPI DECLSPEC_IMPORT
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #if defined(_NTDLLBUILD_)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef VOID
c2b7a98c21 2011-02-23        kinaba: alias void VOID;
c2b7a98c21 2011-02-23        kinaba: alias char CHAR;
c2b7a98c21 2011-02-23        kinaba: alias short SHORT;
c2b7a98c21 2011-02-23        kinaba: alias int LONG;
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _MAC
c2b7a98c21 2011-02-23        kinaba: alias wchar WCHAR;
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PWCHAR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* LPWCH;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PWCH;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* LPCWCH;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PCWCH;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* NWPSTR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* LPWSTR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PWSTR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* LPUWSTR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PUWSTR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* LPCWSTR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PCWSTR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* LPCUWSTR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PCUWSTR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias CHAR* PCHAR;
c2b7a98c21 2011-02-23        kinaba: alias CHAR* LPCH;
c2b7a98c21 2011-02-23        kinaba: alias CHAR* PCH;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias CHAR* LPCCH;
c2b7a98c21 2011-02-23        kinaba: alias CHAR* PCCH;
c2b7a98c21 2011-02-23        kinaba: alias CHAR* NPSTR;
c2b7a98c21 2011-02-23        kinaba: alias CHAR* LPSTR;
c2b7a98c21 2011-02-23        kinaba: alias CHAR* PSTR;
c2b7a98c21 2011-02-23        kinaba: alias CHAR* LPCSTR;
c2b7a98c21 2011-02-23        kinaba: alias CHAR* PCSTR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef  UNICODE                     // r_winnt
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _TCHAR_DEFINED
c2b7a98c21 2011-02-23        kinaba: alias WCHAR TCHAR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PTCHAR;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR TBYTE;
c2b7a98c21 2011-02-23        kinaba: alias WCHAR* PTBYTE;
c2b7a98c21 2011-02-23        kinaba: // #define _TCHAR_DEFINED
c2b7a98c21 2011-02-23        kinaba: // #endif /* !_TCHAR_DEFINED */
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias LPWSTR LPTCH;
c2b7a98c21 2011-02-23        kinaba: alias LPWSTR PTCH;
c2b7a98c21 2011-02-23        kinaba: alias LPWSTR PTSTR;
c2b7a98c21 2011-02-23        kinaba: alias LPWSTR LPTSTR;
c2b7a98c21 2011-02-23        kinaba: alias LPCWSTR PCTSTR;
c2b7a98c21 2011-02-23        kinaba: alias LPCWSTR LPCTSTR;
c2b7a98c21 2011-02-23        kinaba: alias LPUWSTR PUTSTR;
c2b7a98c21 2011-02-23        kinaba: alias LPUWSTR LPUTSTR;
c2b7a98c21 2011-02-23        kinaba: alias LPCUWSTR PCUTSTR;
c2b7a98c21 2011-02-23        kinaba: alias LPCUWSTR LPCUTSTR;
c2b7a98c21 2011-02-23        kinaba: alias LPWSTR LP;
c2b7a98c21 2011-02-23        kinaba: // #define __TEXT(quote) L##quote
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else   /* UNICODE */               // r_winnt
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _TCHAR_DEFINED
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif /* !_TCHAR_DEFINED */
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif /* UNICODE */                // r_winnt
c2b7a98c21 2011-02-23        kinaba: TCHAR[] TEXT(TCHAR[] quote){ return quote; }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias SHORT* PSHORT;
c2b7a98c21 2011-02-23        kinaba: alias LONG* PLONG;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef STRICT
c2b7a98c21 2011-02-23        kinaba: alias void* HANDLE;
c2b7a98c21 2011-02-23        kinaba: // #define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: alias HANDLE* PHANDLE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias BYTE FCHAR;
c2b7a98c21 2011-02-23        kinaba: alias WORD FSHORT;
c2b7a98c21 2011-02-23        kinaba: alias DWORD FLONG;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _HRESULT_DEFINED
c2b7a98c21 2011-02-23        kinaba: // #define _HRESULT_DEFINED
c2b7a98c21 2011-02-23        kinaba: alias LONG HRESULT;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // !_HRESULT_DEFINED
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef __cplusplus
c2b7a98c21 2011-02-23        kinaba: //     #define EXTERN_C extern "C"
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_WIN32) || defined(_MPPC_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _68K_
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #define STDMETHODCALLTYPE __stdcall
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #define STDMETHODVCALLTYPE __cdecl
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define STDAPICALLTYPE __stdcall
c2b7a98c21 2011-02-23        kinaba: // #define STDAPIVCALLTYPE __cdecl
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define STDAPI EXTERN_C HRESULT STDAPICALLTYPE
c2b7a98c21 2011-02-23        kinaba: // #define STDAPI_(type) EXTERN_C type STDAPICALLTYPE
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define STDMETHODIMP HRESULT STDMETHODCALLTYPE
c2b7a98c21 2011-02-23        kinaba: // #define STDMETHODIMP_(type) type STDMETHODCALLTYPE
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define STDAPIV EXTERN_C HRESULT STDAPIVCALLTYPE
c2b7a98c21 2011-02-23        kinaba: // #define STDAPIV_(type) EXTERN_C type STDAPIVCALLTYPE
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define STDMETHODIMPV HRESULT STDMETHODVCALLTYPE
c2b7a98c21 2011-02-23        kinaba: // #define STDMETHODIMPV_(type) type STDMETHODVCALLTYPE
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias char CCHAR;
c2b7a98c21 2011-02-23        kinaba: alias DWORD LCID;
c2b7a98c21 2011-02-23        kinaba: alias PDWORD PLCID;
c2b7a98c21 2011-02-23        kinaba: alias WORD LANGID;
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_ERROR_MASK = 0x20000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ERROR_SEVERITY_SUCCESS = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ERROR_SEVERITY_INFORMATIONAL = 0x40000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ERROR_SEVERITY_WARNING = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ERROR_SEVERITY_ERROR = 0xC0000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_IA64) && !defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: struct _FLOAT128 {
c2b7a98c21 2011-02-23        kinaba:   __int64 LowPart;
c2b7a98c21 2011-02-23        kinaba:   __int64 HighPart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _FLOAT128 FLOAT128;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias FLOAT128* PFLOAT128;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define _ULONGLONG_
c2b7a98c21 2011-02-23        kinaba: // #if (!defined (_MAC) && (!defined(MIDL_PASS) || defined(__midl)) && (!defined(_M_IX86) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64)))
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_MAC) && defined(_MAC_INT_64)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: alias double LONGLONG;
c2b7a98c21 2011-02-23        kinaba: alias double ULONGLONG;
c2b7a98c21 2011-02-23        kinaba: // #endif //_MAC and int64
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias LONGLONG* PLONGLONG;
c2b7a98c21 2011-02-23        kinaba: alias ULONGLONG* PULONGLONG;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias LONGLONG USN;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #else // MIDL_PASS
c2b7a98c21 2011-02-23        kinaba: union _LARGE_INTEGER {
c2b7a98c21 2011-02-23        kinaba: struct _0 {
c2b7a98c21 2011-02-23        kinaba:   DWORD LowPart;
c2b7a98c21 2011-02-23        kinaba:   LONG HighPart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: _0 _;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _1 {
c2b7a98c21 2011-02-23        kinaba:   DWORD LowPart;
c2b7a98c21 2011-02-23        kinaba:   LONG HighPart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: _1 u;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif //MIDL_PASS
c2b7a98c21 2011-02-23        kinaba:   LONGLONG QuadPart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _LARGE_INTEGER LARGE_INTEGER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias LARGE_INTEGER* PLARGE_INTEGER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #else // MIDL_PASS
c2b7a98c21 2011-02-23        kinaba: union _ULARGE_INTEGER {
c2b7a98c21 2011-02-23        kinaba: struct _2 {
c2b7a98c21 2011-02-23        kinaba:   DWORD LowPart;
c2b7a98c21 2011-02-23        kinaba:   DWORD HighPart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: _2 _;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _3 {
c2b7a98c21 2011-02-23        kinaba:   DWORD LowPart;
c2b7a98c21 2011-02-23        kinaba:   DWORD HighPart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: _3 u;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif //MIDL_PASS
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG QuadPart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ULARGE_INTEGER ULARGE_INTEGER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ULARGE_INTEGER* PULARGE_INTEGER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _LUID {
c2b7a98c21 2011-02-23        kinaba:   DWORD LowPart;
c2b7a98c21 2011-02-23        kinaba:   LONG HighPart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _LUID LUID;
c2b7a98c21 2011-02-23        kinaba: alias _LUID* PLUID;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define _DWORDLONG_
c2b7a98c21 2011-02-23        kinaba: alias ULONGLONG DWORDLONG;
c2b7a98c21 2011-02-23        kinaba: alias DWORDLONG* PDWORDLONG;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(MIDL_PASS) || defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_M_MRX000)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined (__cplusplus)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined (__cplusplus)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_M_IX86)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: long Int32x32To64(int a, int b) { return (cast(long)a) * b; }
c2b7a98c21 2011-02-23        kinaba: ulong UInt32x32To64(uint a, uint b) { return (cast(ulong)a) * b; }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export ULONGLONG Int64ShllMod32(
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG Value,
c2b7a98c21 2011-02-23        kinaba:   DWORD ShiftCount);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export LONGLONG Int64ShraMod32(
c2b7a98c21 2011-02-23        kinaba:   LONGLONG Value,
c2b7a98c21 2011-02-23        kinaba:   DWORD ShiftCount);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export ULONGLONG Int64ShrlMod32(
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG Value,
c2b7a98c21 2011-02-23        kinaba:   DWORD ShiftCount);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1200
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(push)
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(disable:4035)               // re-enable below
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // __inline ULONGLONG Int64ShllMod32(     ULONGLONG Value,     DWORD ShiftCount     );
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // __inline LONGLONG Int64ShraMod32(     LONGLONG Value,     DWORD ShiftCount     );
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // __inline ULONGLONG Int64ShrlMod32(     ULONGLONG Value,     DWORD ShiftCount     );
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1200
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(pop)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_M_ALPHA)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_M_PPC)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_68K_) || defined(_MPPC_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_M_IA64) || defined(_M_AMD64)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : CHAR { ANSI_NULL = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : WCHAR { UNICODE_NULL = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : WORD { UNICODE_STRING_MAX_BYTES = 65534 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { UNICODE_STRING_MAX_CHARS = 32767 }
c2b7a98c21 2011-02-23        kinaba: alias BYTE BOOLEAN;
c2b7a98c21 2011-02-23        kinaba: alias BOOLEAN* PBOOLEAN;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _LIST_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   _LIST_ENTRY *Flink;
c2b7a98c21 2011-02-23        kinaba:   _LIST_ENTRY *Blink;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _LIST_ENTRY LIST_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _LIST_ENTRY* PLIST_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _LIST_ENTRY* RESTRICTED_POINTERPRLIST_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SINGLE_LIST_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   _SINGLE_LIST_ENTRY *Next;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SINGLE_LIST_ENTRY SINGLE_LIST_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _SINGLE_LIST_ENTRY* PSINGLE_LIST_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct LIST_ENTRY32 {
c2b7a98c21 2011-02-23        kinaba:   DWORD Flink;
c2b7a98c21 2011-02-23        kinaba:   DWORD Blink;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias LIST_ENTRY32* PLIST_ENTRY32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct LIST_ENTRY64 {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG Flink;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG Blink;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias LIST_ENTRY64* PLIST_ENTRY64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: import win32.guiddef;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef __OBJECTID_DEFINED
c2b7a98c21 2011-02-23        kinaba: // #define __OBJECTID_DEFINED
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _OBJECTID {
c2b7a98c21 2011-02-23        kinaba:   GUID Lineage;
c2b7a98c21 2011-02-23        kinaba:   DWORD Uniquifier;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _OBJECTID OBJECTID;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // !_OBJECTID_DEFINED
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MINCHAR = 0x80 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXCHAR = 0x7f }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MINSHORT = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXSHORT = 0x7fff }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MINLONG = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXLONG = 0x7fffffff }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXBYTE = 0xff }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXWORD = 0xffff }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXDWORD = 0xffffffff }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define FIELD_OFFSET(type, field) ((LONG)(LONG_PTR)&(((type *)0)->field))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if(_WIN32_WINNT > 0x0500)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_FIELD_SIZE(type, field) (sizeof(((type *)0)->field))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_SIZEOF_THROUGH_FIELD(type, field) (FIELD_OFFSET(type, field) + RTL_FIELD_SIZE(type, field))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_CONTAINS_FIELD(Struct, Size, Field) ( (((PCHAR)(&(Struct)->Field)) + sizeof((Struct)->Field)) <= (((PCHAR)(Struct))+(Size)) )
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_NUMBER_OF(A) (sizeof(A)/sizeof((A)[0]))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_FIELD_TYPE(type, field) (((type*)0)->field)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_NUMBER_OF_FIELD(type, field) (RTL_NUMBER_OF(RTL_FIELD_TYPE(type, field)))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_PADDING_BETWEEN_FIELDS(T, F1, F2) ((FIELD_OFFSET(T, F2) > FIELD_OFFSET(T, F1)) ? (FIELD_OFFSET(T, F2) - FIELD_OFFSET(T, F1) - RTL_FIELD_SIZE(T, F1)) : (FIELD_OFFSET(T, F1) - FIELD_OFFSET(T, F2) - RTL_FIELD_SIZE(T, F2)))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(__cplusplus)
c2b7a98c21 2011-02-23        kinaba: // #define RTL_CONST_CAST(type) const_cast<type>
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_BITS_OF(sizeOfArg) (sizeof(sizeOfArg) * 8)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define RTL_BITS_OF_FIELD(type, field) (RTL_BITS_OF(RTL_FIELD_TYPE(type, field)))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif /* _WIN32_WINNT > 0x0500 */
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define CONTAINING_RECORD(address, type, field) ((type *)( (PCHAR)(address) - (ULONG_PTR)(&((type *)0)->field)))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SERVER_NT = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_WORKSTATION_NT = 0x40000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_SMALLBUSINESS = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_ENTERPRISE = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_BACKOFFICE = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_COMMUNICATIONS = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_TERMINAL = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_SMALLBUSINESS_RESTRICTED = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_EMBEDDEDNT = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_DATACENTER = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_SINGLEUSERTS = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_PERSONAL = 0x00000200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITE_BLADE = 0x00000400 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_NEUTRAL = 0x00 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_INVARIANT = 0x7f }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_AFRIKAANS = 0x36 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ALBANIAN = 0x1c }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ARABIC = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ARMENIAN = 0x2b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ASSAMESE = 0x4d }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_AZERI = 0x2c }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_BASQUE = 0x2d }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_BELARUSIAN = 0x23 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_BENGALI = 0x45 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_BULGARIAN = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_CATALAN = 0x03 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_CHINESE = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_CROATIAN = 0x1a }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_CZECH = 0x05 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_DANISH = 0x06 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_DIVEHI = 0x65 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_DUTCH = 0x13 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ENGLISH = 0x09 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ESTONIAN = 0x25 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_FAEROESE = 0x38 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_FARSI = 0x29 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_FINNISH = 0x0b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_FRENCH = 0x0c }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_GALICIAN = 0x56 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_GEORGIAN = 0x37 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_GERMAN = 0x07 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_GREEK = 0x08 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_GUJARATI = 0x47 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_HEBREW = 0x0d }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_HINDI = 0x39 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_HUNGARIAN = 0x0e }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ICELANDIC = 0x0f }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_INDONESIAN = 0x21 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ITALIAN = 0x10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_JAPANESE = 0x11 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_KANNADA = 0x4b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_KASHMIRI = 0x60 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_KAZAK = 0x3f }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_KONKANI = 0x57 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_KOREAN = 0x12 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_KYRGYZ = 0x40 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_LATVIAN = 0x26 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_LITHUANIAN = 0x27 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_MACEDONIAN = 0x2f }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_MALAY = 0x3e }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_MALAYALAM = 0x4c }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_MANIPURI = 0x58 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_MARATHI = 0x4e }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_MONGOLIAN = 0x50 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_NEPALI = 0x61 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_NORWEGIAN = 0x14 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ORIYA = 0x48 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_POLISH = 0x15 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_PORTUGUESE = 0x16 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_PUNJABI = 0x46 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_ROMANIAN = 0x18 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_RUSSIAN = 0x19 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SANSKRIT = 0x4f }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SERBIAN = 0x1a }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SINDHI = 0x59 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SLOVAK = 0x1b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SLOVENIAN = 0x24 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SPANISH = 0x0a }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SWAHILI = 0x41 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SWEDISH = 0x1d }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SYRIAC = 0x5a }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_TAMIL = 0x49 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_TATAR = 0x44 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_TELUGU = 0x4a }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_THAI = 0x1e }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_TURKISH = 0x1f }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_UKRAINIAN = 0x22 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_URDU = 0x20 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_UZBEK = 0x43 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_VIETNAMESE = 0x2a }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_NEUTRAL = 0x00 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_DEFAULT = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SYS_DEFAULT = 0x02 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_SAUDI_ARABIA = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_IRAQ = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_EGYPT = 0x03 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_LIBYA = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_ALGERIA = 0x05 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_MOROCCO = 0x06 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_TUNISIA = 0x07 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_OMAN = 0x08 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_YEMEN = 0x09 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_SYRIA = 0x0a }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_JORDAN = 0x0b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_LEBANON = 0x0c }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_KUWAIT = 0x0d }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_UAE = 0x0e }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_BAHRAIN = 0x0f }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ARABIC_QATAR = 0x10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_AZERI_LATIN = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_AZERI_CYRILLIC = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_CHINESE_TRADITIONAL = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_CHINESE_SIMPLIFIED = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_CHINESE_HONGKONG = 0x03 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_CHINESE_SINGAPORE = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_CHINESE_MACAU = 0x05 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_DUTCH = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_DUTCH_BELGIAN = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_US = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_UK = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_AUS = 0x03 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_CAN = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_NZ = 0x05 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_EIRE = 0x06 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_SOUTH_AFRICA = 0x07 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_JAMAICA = 0x08 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_CARIBBEAN = 0x09 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_BELIZE = 0x0a }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_TRINIDAD = 0x0b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_ZIMBABWE = 0x0c }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ENGLISH_PHILIPPINES = 0x0d }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_FRENCH = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_FRENCH_BELGIAN = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_FRENCH_CANADIAN = 0x03 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_FRENCH_SWISS = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_FRENCH_LUXEMBOURG = 0x05 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_FRENCH_MONACO = 0x06 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_GERMAN = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_GERMAN_SWISS = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_GERMAN_AUSTRIAN = 0x03 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_GERMAN_LUXEMBOURG = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_GERMAN_LIECHTENSTEIN = 0x05 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ITALIAN = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_ITALIAN_SWISS = 0x02 }
c2b7a98c21 2011-02-23        kinaba: // #if _WIN32_WINNT >= 0x0501
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_KASHMIRI_SASIA = 0x02 }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_KASHMIRI_INDIA = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_KOREAN = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_LITHUANIAN = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_MALAY_MALAYSIA = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_MALAY_BRUNEI_DARUSSALAM = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_NEPALI_INDIA = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_NORWEGIAN_BOKMAL = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_NORWEGIAN_NYNORSK = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_PORTUGUESE = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_PORTUGUESE_BRAZILIAN = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SERBIAN_LATIN = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SERBIAN_CYRILLIC = 0x03 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_MEXICAN = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_MODERN = 0x03 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_GUATEMALA = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_COSTA_RICA = 0x05 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_PANAMA = 0x06 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_DOMINICAN_REPUBLIC = 0x07 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_VENEZUELA = 0x08 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_COLOMBIA = 0x09 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_PERU = 0x0a }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_ARGENTINA = 0x0b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_ECUADOR = 0x0c }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_CHILE = 0x0d }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_URUGUAY = 0x0e }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_PARAGUAY = 0x0f }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_BOLIVIA = 0x10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_EL_SALVADOR = 0x11 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_HONDURAS = 0x12 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_NICARAGUA = 0x13 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SPANISH_PUERTO_RICO = 0x14 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SWEDISH = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_SWEDISH_FINLAND = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_URDU_PAKISTAN = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_URDU_INDIA = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_UZBEK_LATIN = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUBLANG_UZBEK_CYRILLIC = 0x02 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_DEFAULT = 0x0 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_JAPANESE_XJIS = 0x0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_JAPANESE_UNICODE = 0x1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_CHINESE_BIG5 = 0x0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_CHINESE_PRCP = 0x0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_CHINESE_UNICODE = 0x1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_CHINESE_PRC = 0x2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_CHINESE_BOPOMOFO = 0x3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_KOREAN_KSC = 0x0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_KOREAN_UNICODE = 0x1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_GERMAN_PHONE_BOOK = 0x1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_HUNGARIAN_DEFAULT = 0x0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_HUNGARIAN_TECHNICAL = 0x1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_GEORGIAN_TRADITIONAL = 0x0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SORT_GEORGIAN_MODERN = 0x1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: WORD MAKELANGID(USHORT p, USHORT s) { return (((cast(WORD)(s)) << 10) | cast(WORD)(p)); }
c2b7a98c21 2011-02-23        kinaba: WORD PRIMARYLANGID(WORD lgid) { return lgid & 0x3ff; }
c2b7a98c21 2011-02-23        kinaba: WORD SUBLANGID(WORD lgid) { return lgid >>> 10; }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { NLS_VALID_LOCALE_MASK = 0x000fffff }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: DWORD MAKELCID(WORD lgid, WORD srtid) { return ((cast(DWORD)srtid) << 16) | (cast(DWORD)lgid); }
c2b7a98c21 2011-02-23        kinaba: DWORD MAKESORTLCID(WORD lgid, WORD srtid, WORD ver) { return (MAKELCID(lgid, srtid)) | ((cast(DWORD)ver) << 20); }
c2b7a98c21 2011-02-23        kinaba: WORD LANGIDFROMLCID(LCID lcid) { return lcid; }
c2b7a98c21 2011-02-23        kinaba: WORD SORTIDFROMLCID(LCID lcid) { return (cast(DWORD)lcid >>> 16) & 0xf; }
c2b7a98c21 2011-02-23        kinaba: WORD SORTVERSIONFROMLCID(LCID lcid) { return (cast(DWORD)lcid >>> 20) & 0xf; }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_SYSTEM_DEFAULT = (SUBLANG_SYS_DEFAULT << 10) | LANG_NEUTRAL }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LANG_USER_DEFAULT = (SUBLANG_DEFAULT << 10) | LANG_NEUTRAL }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { LOCALE_SYSTEM_DEFAULT = (SORT_DEFAULT << 16) | LANG_SYSTEM_DEFAULT }
c2b7a98c21 2011-02-23        kinaba: enum : uint { LOCALE_USER_DEFAULT = (SORT_DEFAULT << 16) | LANG_USER_DEFAULT }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { LOCALE_NEUTRAL = (SORT_DEFAULT << 16) | (SUBLANG_NEUTRAL << 10) | LANG_NEUTRAL }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { LOCALE_INVARIANT = (SORT_DEFAULT << 16) | (SUBLANG_NEUTRAL << 10) | LANG_INVARIANT }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if ! defined(lint)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else // lint
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define UNREFERENCED_PARAMETER(P) { (P) = (P); }
c2b7a98c21 2011-02-23        kinaba: // #define DBG_UNREFERENCED_PARAMETER(P) { (P) = (P); }
c2b7a98c21 2011-02-23        kinaba: // #define DBG_UNREFERENCED_LOCAL_VARIABLE(V) { (V) = (V); }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // lint
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if (_MSC_VER > 1200)
c2b7a98c21 2011-02-23        kinaba: // #define DEFAULT_UNREACHABLE default: __assume(0)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef WIN32_NO_STATUS
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_WAIT_0 = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_ABANDONED_WAIT_0 = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_USER_APC = 0x000000C0 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_TIMEOUT = 0x00000102 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_PENDING = 0x00000103 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { DBG_EXCEPTION_HANDLED = 0x00010001 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { DBG_CONTINUE = 0x00010002 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_SEGMENT_NOTIFICATION = 0x40000005 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { DBG_TERMINATE_THREAD = 0x40010003 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { DBG_TERMINATE_PROCESS = 0x40010004 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { DBG_CONTROL_C = 0x40010005 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { DBG_CONTROL_BREAK = 0x40010008 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_GUARD_PAGE_VIOLATION = 0x80000001 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_DATATYPE_MISALIGNMENT = 0x80000002 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_BREAKPOINT = 0x80000003 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_SINGLE_STEP = 0x80000004 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { DBG_EXCEPTION_NOT_HANDLED = 0x80010001 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_ACCESS_VIOLATION = 0xC0000005 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_IN_PAGE_ERROR = 0xC0000006 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_INVALID_HANDLE = 0xC0000008 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_NO_MEMORY = 0xC0000017 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_ILLEGAL_INSTRUCTION = 0xC000001D }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_NONCONTINUABLE_EXCEPTION = 0xC0000025 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_INVALID_DISPOSITION = 0xC0000026 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_ARRAY_BOUNDS_EXCEEDED = 0xC000008C }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_DENORMAL_OPERAND = 0xC000008D }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_DIVIDE_BY_ZERO = 0xC000008E }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_INEXACT_RESULT = 0xC000008F }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_INVALID_OPERATION = 0xC0000090 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_OVERFLOW = 0xC0000091 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_STACK_CHECK = 0xC0000092 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_UNDERFLOW = 0xC0000093 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_INTEGER_DIVIDE_BY_ZERO = 0xC0000094 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_INTEGER_OVERFLOW = 0xC0000095 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_PRIVILEGED_INSTRUCTION = 0xC0000096 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_STACK_OVERFLOW = 0xC00000FD }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_CONTROL_C_EXIT = 0xC000013A }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_MULTIPLE_FAULTS = 0xC00002B4 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_FLOAT_MULTIPLE_TRAPS = 0xC00002B5 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_REG_NAT_CONSUMPTION = 0xC00002C9 }
c2b7a98c21 2011-02-23        kinaba: // #if defined(STATUS_SUCCESS) || (_WIN32_WINNT > 0x0500) || (_WIN32_FUSION >= 0x0100)
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_SXS_EARLY_DEACTIVATION = 0xC015000F }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { STATUS_SXS_INVALID_DEACTIVATION = 0xC0150010 }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXIMUM_WAIT_OBJECTS = 64 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias MAXCHAR MAXIMUM_SUSPEND_COUNT;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ULONG_PTR KSPIN_LOCK;
c2b7a98c21 2011-02-23        kinaba: alias KSPIN_LOCK* PKSPIN_LOCK;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_AMD64_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_AMD64) && !defined(RC_INVOKED) && !defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // defined(_M_AMD64) && !defined(RC_INVOKED) && !defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // _AMD64_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _ALPHA_                          // winnt
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_ALPHA)                   // winnt
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif                                  // winnt
c2b7a98c21 2011-02-23        kinaba: // #endif                                  // winnt
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_ALPHA)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export _TEB NtCurrentTeb();
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _ALPHA_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _PORTABLE_32BIT_CONTEXT
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // _PORTABLE_32BIT_CONTEXT
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // _ALPHA_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _ALPHA_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // _ALPHA_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _X86_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(MIDL_PASS)
c2b7a98c21 2011-02-23        kinaba: // #if !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1200
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(push)
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(disable:4164)   // disable C4164 warning so that apps that
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _M_IX86
c2b7a98c21 2011-02-23        kinaba: // #pragma function(_enable)
c2b7a98c21 2011-02-23        kinaba: // #pragma function(_disable)
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1200
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(pop)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(MIDL_PASS) && defined(_M_IX86)
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1200
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(push)
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #pragma warning (disable:4035)        // disable 4035 (function must return something)
c2b7a98c21 2011-02-23        kinaba: PVOID GetFiberData() { asm { mov EAX, FS:[0x10]; mov EAX, [EAX]; } }
c2b7a98c21 2011-02-23        kinaba: PVOID GetCurrentFiber() { asm { mov EAX, FS:[0x10]; } }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1200
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(pop)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SIZE_OF_80387_REGISTERS = 80 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_i386 = 0x00010000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_i486 = 0x00010000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_CONTROL = CONTEXT_i386 | 0x00000001L }
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_INTEGER = CONTEXT_i386 | 0x00000002L }
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_SEGMENTS = CONTEXT_i386 | 0x00000004L }
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_FLOATING_POINT = CONTEXT_i386 | 0x00000008L }
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_DEBUG_REGISTERS = CONTEXT_i386 | 0x00000010L }
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_EXTENDED_REGISTERS = CONTEXT_i386 | 0x00000020L }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTEXT_FULL = CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_SEGMENTS }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXIMUM_SUPPORTED_EXTENSION = 512 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _FLOATING_SAVE_AREA {
c2b7a98c21 2011-02-23        kinaba:   DWORD ControlWord;
c2b7a98c21 2011-02-23        kinaba:   DWORD StatusWord;
c2b7a98c21 2011-02-23        kinaba:   DWORD TagWord;
c2b7a98c21 2011-02-23        kinaba:   DWORD ErrorOffset;
c2b7a98c21 2011-02-23        kinaba:   DWORD ErrorSelector;
c2b7a98c21 2011-02-23        kinaba:   DWORD DataOffset;
c2b7a98c21 2011-02-23        kinaba:   DWORD DataSelector;
c2b7a98c21 2011-02-23        kinaba:   BYTE RegisterArea[SIZE_OF_80387_REGISTERS];
c2b7a98c21 2011-02-23        kinaba:   DWORD Cr0NpxState;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _FLOATING_SAVE_AREA FLOATING_SAVE_AREA;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias FLOATING_SAVE_AREA* PFLOATING_SAVE_AREA;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _CONTEXT {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD ContextFlags;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD Dr0;
c2b7a98c21 2011-02-23        kinaba:   DWORD Dr1;
c2b7a98c21 2011-02-23        kinaba:   DWORD Dr2;
c2b7a98c21 2011-02-23        kinaba:   DWORD Dr3;
c2b7a98c21 2011-02-23        kinaba:   DWORD Dr6;
c2b7a98c21 2011-02-23        kinaba:   DWORD Dr7;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   FLOATING_SAVE_AREA FloatSave;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD SegGs;
c2b7a98c21 2011-02-23        kinaba:   DWORD SegFs;
c2b7a98c21 2011-02-23        kinaba:   DWORD SegEs;
c2b7a98c21 2011-02-23        kinaba:   DWORD SegDs;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD Edi;
c2b7a98c21 2011-02-23        kinaba:   DWORD Esi;
c2b7a98c21 2011-02-23        kinaba:   DWORD Ebx;
c2b7a98c21 2011-02-23        kinaba:   DWORD Edx;
c2b7a98c21 2011-02-23        kinaba:   DWORD Ecx;
c2b7a98c21 2011-02-23        kinaba:   DWORD Eax;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD Ebp;
c2b7a98c21 2011-02-23        kinaba:   DWORD Eip;
c2b7a98c21 2011-02-23        kinaba:   DWORD SegCs;
c2b7a98c21 2011-02-23        kinaba:   DWORD EFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD Esp;
c2b7a98c21 2011-02-23        kinaba:   DWORD SegSs;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   BYTE ExtendedRegisters[MAXIMUM_SUPPORTED_EXTENSION];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _CONTEXT CONTEXT;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias CONTEXT* PCONTEXT;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif //_X86_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _LDT_ENTRY_DEFINED
c2b7a98c21 2011-02-23        kinaba: // #define _LDT_ENTRY_DEFINED
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _LDT_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   WORD LimitLow;
c2b7a98c21 2011-02-23        kinaba:   WORD BaseLow;
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   BYTE BaseMid;
c2b7a98c21 2011-02-23        kinaba:   BYTE Flags1;
c2b7a98c21 2011-02-23        kinaba:   BYTE Flags2;
c2b7a98c21 2011-02-23        kinaba:   BYTE BaseHi;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba: // DWORD   BaseMid : 8;
c2b7a98c21 2011-02-23        kinaba: // DWORD   Type : 5;
c2b7a98c21 2011-02-23        kinaba: // DWORD   Dpl : 2;
c2b7a98c21 2011-02-23        kinaba: // DWORD   Pres : 1;
c2b7a98c21 2011-02-23        kinaba: // DWORD   LimitHi : 4;
c2b7a98c21 2011-02-23        kinaba: // DWORD   Sys : 1;
c2b7a98c21 2011-02-23        kinaba: // DWORD   Reserved_0 : 1;
c2b7a98c21 2011-02-23        kinaba: // DWORD   Default_Big : 1;
c2b7a98c21 2011-02-23        kinaba: // DWORD   Granularity : 1;
c2b7a98c21 2011-02-23        kinaba: // DWORD   BaseHi : 8;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _LDT_ENTRY LDT_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _LDT_ENTRY* PLDT_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_MIPS_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // MIPS
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_MIPS_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // MIPS
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_PPC_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_PPC) && defined(_MSC_VER) && (_MSC_VER>=1000)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_M_PPC)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // defined(_PPC_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_MPPC_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_PPC) && defined(_MSC_VER) && (_MSC_VER>=1000)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_M_PPC)
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // defined(_MPPC_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(__midl) && !defined(GENUTIL) && !defined(_GENIA64_) && defined(_IA64_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_IA64)                    // winnt
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif                                  // winnt
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_IA64)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif  // !defined(__midl) && !defined(GENUTIL) && !defined(_GENIA64_) && defined(_M_IA64)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _IA64_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // !defined(RC_INVOKED)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // _IA64_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _IA64_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // _IA64_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EXCEPTION_NONCONTINUABLE = 0x1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EXCEPTION_MAXIMUM_PARAMETERS = 15 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _EXCEPTION_RECORD {
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionFlags;
c2b7a98c21 2011-02-23        kinaba:   _EXCEPTION_RECORD *ExceptionRecord;
c2b7a98c21 2011-02-23        kinaba:   PVOID ExceptionAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberParameters;
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _EXCEPTION_RECORD EXCEPTION_RECORD;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias EXCEPTION_RECORD* PEXCEPTION_RECORD;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _EXCEPTION_RECORD32 {
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionRecord;
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberParameters;
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _EXCEPTION_RECORD32 EXCEPTION_RECORD32;
c2b7a98c21 2011-02-23        kinaba: alias _EXCEPTION_RECORD32* PEXCEPTION_RECORD32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _EXCEPTION_RECORD64 {
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD64 ExceptionRecord;
c2b7a98c21 2011-02-23        kinaba:   DWORD64 ExceptionAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberParameters;
c2b7a98c21 2011-02-23        kinaba:   DWORD __unusedAlignment;
c2b7a98c21 2011-02-23        kinaba:   DWORD64 ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _EXCEPTION_RECORD64 EXCEPTION_RECORD64;
c2b7a98c21 2011-02-23        kinaba: alias _EXCEPTION_RECORD64* PEXCEPTION_RECORD64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _EXCEPTION_POINTERS {
c2b7a98c21 2011-02-23        kinaba:   PEXCEPTION_RECORD ExceptionRecord;
c2b7a98c21 2011-02-23        kinaba:   PCONTEXT ContextRecord;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _EXCEPTION_POINTERS EXCEPTION_POINTERS;
c2b7a98c21 2011-02-23        kinaba: alias _EXCEPTION_POINTERS* PEXCEPTION_POINTERS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias PVOID PACCESS_TOKEN;
c2b7a98c21 2011-02-23        kinaba: alias PVOID PSECURITY_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: alias PVOID PSID;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias DWORD ACCESS_MASK;
c2b7a98c21 2011-02-23        kinaba: alias ACCESS_MASK* PACCESS_MASK;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { DELETE = 0x00010000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { READ_CONTROL = 0x00020000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WRITE_DAC = 0x00040000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WRITE_OWNER = 0x00080000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYNCHRONIZE = 0x00100000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { STANDARD_RIGHTS_REQUIRED = 0x000F0000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { STANDARD_RIGHTS_READ = READ_CONTROL }
c2b7a98c21 2011-02-23        kinaba: enum : uint { STANDARD_RIGHTS_WRITE = READ_CONTROL }
c2b7a98c21 2011-02-23        kinaba: enum : uint { STANDARD_RIGHTS_EXECUTE = READ_CONTROL }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { STANDARD_RIGHTS_ALL = 0x001F0000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SPECIFIC_RIGHTS_ALL = 0x0000FFFF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_SYSTEM_SECURITY = 0x01000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXIMUM_ALLOWED = 0x02000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { GENERIC_READ = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { GENERIC_WRITE = 0x40000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { GENERIC_EXECUTE = 0x20000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { GENERIC_ALL = 0x10000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _GENERIC_MAPPING {
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK GenericRead;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK GenericWrite;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK GenericExecute;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK GenericAll;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _GENERIC_MAPPING GENERIC_MAPPING;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias GENERIC_MAPPING* PGENERIC_MAPPING;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align(4):
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _LUID_AND_ATTRIBUTES {
c2b7a98c21 2011-02-23        kinaba:   LUID Luid;
c2b7a98c21 2011-02-23        kinaba:   DWORD Attributes;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES;
c2b7a98c21 2011-02-23        kinaba: alias _LUID_AND_ATTRIBUTES* PLUID_AND_ATTRIBUTES;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY];
c2b7a98c21 2011-02-23        kinaba: alias LUID_AND_ATTRIBUTES_ARRAY* PLUID_AND_ATTRIBUTES_ARRAY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align:
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef SID_IDENTIFIER_AUTHORITY_DEFINED
c2b7a98c21 2011-02-23        kinaba: // #define SID_IDENTIFIER_AUTHORITY_DEFINED
c2b7a98c21 2011-02-23        kinaba: struct _SID_IDENTIFIER_AUTHORITY {
c2b7a98c21 2011-02-23        kinaba:   BYTE Value[6];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SID_IDENTIFIER_AUTHORITY SID_IDENTIFIER_AUTHORITY;
c2b7a98c21 2011-02-23        kinaba: alias _SID_IDENTIFIER_AUTHORITY* PSID_IDENTIFIER_AUTHORITY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef SID_DEFINED
c2b7a98c21 2011-02-23        kinaba: // #define SID_DEFINED
c2b7a98c21 2011-02-23        kinaba: struct _SID {
c2b7a98c21 2011-02-23        kinaba:   BYTE Revision;
c2b7a98c21 2011-02-23        kinaba:   BYTE SubAuthorityCount;
c2b7a98c21 2011-02-23        kinaba:   SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
c2b7a98c21 2011-02-23        kinaba: // #ifdef MIDL_PASS
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #else // MIDL_PASS
c2b7a98c21 2011-02-23        kinaba:   DWORD SubAuthority[ANYSIZE_ARRAY];
c2b7a98c21 2011-02-23        kinaba: // #endif // MIDL_PASS
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SID SID;
c2b7a98c21 2011-02-23        kinaba: alias _SID* PISID;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SID_REVISION = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SID_MAX_SUB_AUTHORITIES = 15 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SID_RECOMMENDED_SUB_AUTHORITIES = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef MIDL_PASS
c2b7a98c21 2011-02-23        kinaba: const uint SECURITY_MAX_SID_SIZE = SID.sizeof - DWORD.sizeof + (SID_MAX_SUB_AUTHORITIES * DWORD.sizeof);
c2b7a98c21 2011-02-23        kinaba: // #endif // MIDL_PASS
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _SID_NAME_USE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   SidTypeUser = 1,
c2b7a98c21 2011-02-23        kinaba:   SidTypeGroup,
c2b7a98c21 2011-02-23        kinaba:   SidTypeDomain,
c2b7a98c21 2011-02-23        kinaba:   SidTypeAlias,
c2b7a98c21 2011-02-23        kinaba:   SidTypeWellKnownGroup,
c2b7a98c21 2011-02-23        kinaba:   SidTypeDeletedAccount,
c2b7a98c21 2011-02-23        kinaba:   SidTypeInvalid,
c2b7a98c21 2011-02-23        kinaba:   SidTypeUnknown,
c2b7a98c21 2011-02-23        kinaba:   SidTypeComputer,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SID_NAME_USE SID_NAME_USE;
c2b7a98c21 2011-02-23        kinaba: alias _SID_NAME_USE* PSID_NAME_USE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SID_AND_ATTRIBUTES {
c2b7a98c21 2011-02-23        kinaba:   PSID Sid;
c2b7a98c21 2011-02-23        kinaba:   DWORD Attributes;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES;
c2b7a98c21 2011-02-23        kinaba: alias _SID_AND_ATTRIBUTES* PSID_AND_ATTRIBUTES;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY];
c2b7a98c21 2011-02-23        kinaba: alias SID_AND_ATTRIBUTES_ARRAY* PSID_AND_ATTRIBUTES_ARRAY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define SECURITY_NULL_SID_AUTHORITY {0,0,0,0,0,0}
c2b7a98c21 2011-02-23        kinaba: // #define SECURITY_WORLD_SID_AUTHORITY {0,0,0,0,0,1}
c2b7a98c21 2011-02-23        kinaba: // #define SECURITY_LOCAL_SID_AUTHORITY {0,0,0,0,0,2}
c2b7a98c21 2011-02-23        kinaba: // #define SECURITY_CREATOR_SID_AUTHORITY {0,0,0,0,0,3}
c2b7a98c21 2011-02-23        kinaba: // #define SECURITY_NON_UNIQUE_AUTHORITY {0,0,0,0,0,4}
c2b7a98c21 2011-02-23        kinaba: // #define SECURITY_RESOURCE_MANAGER_AUTHORITY {0,0,0,0,0,9}
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_NULL_RID = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_WORLD_RID = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_LOCAL_RID = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_CREATOR_OWNER_RID = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_CREATOR_GROUP_RID = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_CREATOR_OWNER_SERVER_RID = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_CREATOR_GROUP_SERVER_RID = 0x00000003 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define SECURITY_NT_AUTHORITY {0,0,0,0,0,5}
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_DIALUP_RID = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_NETWORK_RID = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_BATCH_RID = 0x00000003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_INTERACTIVE_RID = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_SERVICE_RID = 0x00000006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_ANONYMOUS_LOGON_RID = 0x00000007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_PROXY_RID = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_ENTERPRISE_CONTROLLERS_RID = 0x00000009 }
c2b7a98c21 2011-02-23        kinaba: alias SECURITY_ENTERPRISE_CONTROLLERS_RID SECURITY_SERVER_LOGON_RID;
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_PRINCIPAL_SELF_RID = 0x0000000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_AUTHENTICATED_USER_RID = 0x0000000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_RESTRICTED_CODE_RID = 0x0000000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_TERMINAL_SERVER_RID = 0x0000000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_REMOTE_LOGON_RID = 0x0000000E }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_LOGON_IDS_RID = 0x00000005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_LOGON_IDS_RID_COUNT = 3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_LOCAL_SYSTEM_RID = 0x00000012 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_LOCAL_SERVICE_RID = 0x00000013 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_NETWORK_SERVICE_RID = 0x00000014 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_NT_NON_UNIQUE = 0x00000015 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_NT_NON_UNIQUE_SUB_AUTH_COUNT = 3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_BUILTIN_DOMAIN_RID = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_USER_RID_ADMIN = 0x000001F4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_USER_RID_GUEST = 0x000001F5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_USER_RID_KRBTGT = 0x000001F6 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_ADMINS = 0x00000200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_USERS = 0x00000201 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_GUESTS = 0x00000202 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_COMPUTERS = 0x00000203 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_CONTROLLERS = 0x00000204 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_CERT_ADMINS = 0x00000205 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_SCHEMA_ADMINS = 0x00000206 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_ENTERPRISE_ADMINS = 0x00000207 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_GROUP_RID_POLICY_ADMINS = 0x00000208 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_ADMINS = 0x00000220 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_USERS = 0x00000221 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_GUESTS = 0x00000222 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_POWER_USERS = 0x00000223 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_ACCOUNT_OPS = 0x00000224 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_SYSTEM_OPS = 0x00000225 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_PRINT_OPS = 0x00000226 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_BACKUP_OPS = 0x00000227 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_REPLICATOR = 0x00000228 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_RAS_SERVERS = 0x00000229 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_PREW2KCOMPACCESS = 0x0000022A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_REMOTE_DESKTOP_USERS = 0x0000022B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DOMAIN_ALIAS_RID_NETWORK_CONFIGURATION_OPS = 0x0000022C }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: const LUID SYSTEM_LUID = {LowPart: 0x3e7, HighPart: 0x0};
c2b7a98c21 2011-02-23        kinaba: const LUID ANONYMOUS_LOGON_LUID = {LowPart: 0x3e6, HighPart: 0x0};
c2b7a98c21 2011-02-23        kinaba: const LUID LOCALSERVICE_LUID = {LowPart: 0x3e5, HighPart: 0x0};
c2b7a98c21 2011-02-23        kinaba: const LUID NETWORKSERVICE_LUID = {LowPart: 0x3e4, HighPart: 0x0};
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_GROUP_MANDATORY = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_GROUP_ENABLED_BY_DEFAULT = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_GROUP_ENABLED = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_GROUP_OWNER = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_GROUP_USE_FOR_DENY_ONLY = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_GROUP_LOGON_ID = 0xC0000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_GROUP_RESOURCE = 0x20000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACL_REVISION = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACL_REVISION_DS = 4 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACL_REVISION1 = 1 }
c2b7a98c21 2011-02-23        kinaba: enum { MIN_ACL_REVISION = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACL_REVISION2 = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACL_REVISION3 = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACL_REVISION4 = 4 }
c2b7a98c21 2011-02-23        kinaba: alias ACL_REVISION4 MAX_ACL_REVISION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACL {
c2b7a98c21 2011-02-23        kinaba:   BYTE AclRevision;
c2b7a98c21 2011-02-23        kinaba:   BYTE Sbz1;
c2b7a98c21 2011-02-23        kinaba:   WORD AclSize;
c2b7a98c21 2011-02-23        kinaba:   WORD AceCount;
c2b7a98c21 2011-02-23        kinaba:   WORD Sbz2;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACL ACL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ACL* PACL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACE_HEADER {
c2b7a98c21 2011-02-23        kinaba:   BYTE AceType;
c2b7a98c21 2011-02-23        kinaba:   BYTE AceFlags;
c2b7a98c21 2011-02-23        kinaba:   WORD AceSize;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACE_HEADER ACE_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ACE_HEADER* PACE_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MIN_MS_ACE_TYPE = 0x0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_ALLOWED_ACE_TYPE = 0x0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_DENIED_ACE_TYPE = 0x1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYSTEM_AUDIT_ACE_TYPE = 0x2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYSTEM_ALARM_ACE_TYPE = 0x3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MAX_MS_V2_ACE_TYPE = 0x3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_ALLOWED_COMPOUND_ACE_TYPE = 0x4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MAX_MS_V3_ACE_TYPE = 0x4 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MIN_MS_OBJECT_ACE_TYPE = 0x5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_ALLOWED_OBJECT_ACE_TYPE = 0x5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_DENIED_OBJECT_ACE_TYPE = 0x6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYSTEM_AUDIT_OBJECT_ACE_TYPE = 0x7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYSTEM_ALARM_OBJECT_ACE_TYPE = 0x8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MAX_MS_OBJECT_ACE_TYPE = 0x8 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MAX_MS_V4_ACE_TYPE = 0x8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MAX_MS_ACE_TYPE = 0x8 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_ALLOWED_CALLBACK_ACE_TYPE = 0x9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_DENIED_CALLBACK_ACE_TYPE = 0xA }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_ALLOWED_CALLBACK_OBJECT_ACE_TYPE = 0xB }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_DENIED_CALLBACK_OBJECT_ACE_TYPE = 0xC }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYSTEM_AUDIT_CALLBACK_ACE_TYPE = 0xD }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYSTEM_ALARM_CALLBACK_ACE_TYPE = 0xE }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE = 0xF }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SYSTEM_ALARM_CALLBACK_OBJECT_ACE_TYPE = 0x10 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MAX_MS_V5_ACE_TYPE = 0x10 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { OBJECT_INHERIT_ACE = 0x1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { CONTAINER_INHERIT_ACE = 0x2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { NO_PROPAGATE_INHERIT_ACE = 0x4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { INHERIT_ONLY_ACE = 0x8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { INHERITED_ACE = 0x10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VALID_INHERIT_FLAGS = 0x1F }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SUCCESSFUL_ACCESS_ACE_FLAG = 0x40 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FAILED_ACCESS_ACE_FLAG = 0x80 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACCESS_ALLOWED_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_ALLOWED_ACE ACCESS_ALLOWED_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ACCESS_ALLOWED_ACE* PACCESS_ALLOWED_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACCESS_DENIED_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_DENIED_ACE ACCESS_DENIED_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ACCESS_DENIED_ACE* PACCESS_DENIED_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_AUDIT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_AUDIT_ACE SYSTEM_AUDIT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias SYSTEM_AUDIT_ACE* PSYSTEM_AUDIT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_ALARM_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_ALARM_ACE SYSTEM_ALARM_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias SYSTEM_ALARM_ACE* PSYSTEM_ALARM_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACCESS_ALLOWED_OBJECT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   GUID ObjectType;
c2b7a98c21 2011-02-23        kinaba:   GUID InheritedObjectType;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_ALLOWED_OBJECT_ACE ACCESS_ALLOWED_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_ALLOWED_OBJECT_ACE* PACCESS_ALLOWED_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACCESS_DENIED_OBJECT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   GUID ObjectType;
c2b7a98c21 2011-02-23        kinaba:   GUID InheritedObjectType;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_DENIED_OBJECT_ACE ACCESS_DENIED_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_DENIED_OBJECT_ACE* PACCESS_DENIED_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_AUDIT_OBJECT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   GUID ObjectType;
c2b7a98c21 2011-02-23        kinaba:   GUID InheritedObjectType;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_AUDIT_OBJECT_ACE SYSTEM_AUDIT_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_AUDIT_OBJECT_ACE* PSYSTEM_AUDIT_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_ALARM_OBJECT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   GUID ObjectType;
c2b7a98c21 2011-02-23        kinaba:   GUID InheritedObjectType;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_ALARM_OBJECT_ACE SYSTEM_ALARM_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_ALARM_OBJECT_ACE* PSYSTEM_ALARM_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACCESS_ALLOWED_CALLBACK_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_ALLOWED_CALLBACK_ACE ACCESS_ALLOWED_CALLBACK_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_ALLOWED_CALLBACK_ACE* PACCESS_ALLOWED_CALLBACK_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACCESS_DENIED_CALLBACK_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_DENIED_CALLBACK_ACE ACCESS_DENIED_CALLBACK_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_DENIED_CALLBACK_ACE* PACCESS_DENIED_CALLBACK_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_AUDIT_CALLBACK_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_AUDIT_CALLBACK_ACE SYSTEM_AUDIT_CALLBACK_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_AUDIT_CALLBACK_ACE* PSYSTEM_AUDIT_CALLBACK_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_ALARM_CALLBACK_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_ALARM_CALLBACK_ACE SYSTEM_ALARM_CALLBACK_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_ALARM_CALLBACK_ACE* PSYSTEM_ALARM_CALLBACK_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   GUID ObjectType;
c2b7a98c21 2011-02-23        kinaba:   GUID InheritedObjectType;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE ACCESS_ALLOWED_CALLBACK_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE* PACCESS_ALLOWED_CALLBACK_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACCESS_DENIED_CALLBACK_OBJECT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   GUID ObjectType;
c2b7a98c21 2011-02-23        kinaba:   GUID InheritedObjectType;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_DENIED_CALLBACK_OBJECT_ACE ACCESS_DENIED_CALLBACK_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _ACCESS_DENIED_CALLBACK_OBJECT_ACE* PACCESS_DENIED_CALLBACK_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   GUID ObjectType;
c2b7a98c21 2011-02-23        kinaba:   GUID InheritedObjectType;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE SYSTEM_AUDIT_CALLBACK_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE* PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_ALARM_CALLBACK_OBJECT_ACE {
c2b7a98c21 2011-02-23        kinaba:   ACE_HEADER Header;
c2b7a98c21 2011-02-23        kinaba:   ACCESS_MASK Mask;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   GUID ObjectType;
c2b7a98c21 2011-02-23        kinaba:   GUID InheritedObjectType;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidStart;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_ALARM_CALLBACK_OBJECT_ACE SYSTEM_ALARM_CALLBACK_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_ALARM_CALLBACK_OBJECT_ACE* PSYSTEM_ALARM_CALLBACK_OBJECT_ACE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACE_OBJECT_TYPE_PRESENT = 0x1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACE_INHERITED_OBJECT_TYPE_PRESENT = 0x2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _ACL_INFORMATION_CLASS;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   AclRevisionInformation = 1,
c2b7a98c21 2011-02-23        kinaba:   AclSizeInformation,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACL_INFORMATION_CLASS ACL_INFORMATION_CLASS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACL_REVISION_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD AclRevision;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACL_REVISION_INFORMATION ACL_REVISION_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ACL_REVISION_INFORMATION* PACL_REVISION_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACL_SIZE_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD AceCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD AclBytesInUse;
c2b7a98c21 2011-02-23        kinaba:   DWORD AclBytesFree;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACL_SIZE_INFORMATION ACL_SIZE_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ACL_SIZE_INFORMATION* PACL_SIZE_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_DESCRIPTOR_REVISION = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_DESCRIPTOR_REVISION1 = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: const uint SECURITY_DESCRIPTOR_MIN_LENGTH = SECURITY_DESCRIPTOR.sizeof;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias WORD SECURITY_DESCRIPTOR_CONTROL;
c2b7a98c21 2011-02-23        kinaba: alias WORD* PSECURITY_DESCRIPTOR_CONTROL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_OWNER_DEFAULTED = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_GROUP_DEFAULTED = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_DACL_PRESENT = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_DACL_DEFAULTED = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_SACL_PRESENT = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_SACL_DEFAULTED = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_DACL_AUTO_INHERIT_REQ = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_SACL_AUTO_INHERIT_REQ = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_DACL_AUTO_INHERITED = 0x0400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_SACL_AUTO_INHERITED = 0x0800 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_DACL_PROTECTED = 0x1000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_SACL_PROTECTED = 0x2000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_RM_CONTROL_VALID = 0x4000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_SELF_RELATIVE = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SECURITY_DESCRIPTOR_RELATIVE {
c2b7a98c21 2011-02-23        kinaba:   BYTE Revision;
c2b7a98c21 2011-02-23        kinaba:   BYTE Sbz1;
c2b7a98c21 2011-02-23        kinaba:   SECURITY_DESCRIPTOR_CONTROL Control;
c2b7a98c21 2011-02-23        kinaba:   DWORD Owner;
c2b7a98c21 2011-02-23        kinaba:   DWORD Group;
c2b7a98c21 2011-02-23        kinaba:   DWORD Sacl;
c2b7a98c21 2011-02-23        kinaba:   DWORD Dacl;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SECURITY_DESCRIPTOR_RELATIVE SECURITY_DESCRIPTOR_RELATIVE;
c2b7a98c21 2011-02-23        kinaba: alias _SECURITY_DESCRIPTOR_RELATIVE* PISECURITY_DESCRIPTOR_RELATIVE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SECURITY_DESCRIPTOR {
c2b7a98c21 2011-02-23        kinaba:   BYTE Revision;
c2b7a98c21 2011-02-23        kinaba:   BYTE Sbz1;
c2b7a98c21 2011-02-23        kinaba:   SECURITY_DESCRIPTOR_CONTROL Control;
c2b7a98c21 2011-02-23        kinaba:   PSID Owner;
c2b7a98c21 2011-02-23        kinaba:   PSID Group;
c2b7a98c21 2011-02-23        kinaba:   PACL Sacl;
c2b7a98c21 2011-02-23        kinaba:   PACL Dacl;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SECURITY_DESCRIPTOR SECURITY_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: alias _SECURITY_DESCRIPTOR* PISECURITY_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _OBJECT_TYPE_LIST {
c2b7a98c21 2011-02-23        kinaba:   WORD Level;
c2b7a98c21 2011-02-23        kinaba:   WORD Sbz;
c2b7a98c21 2011-02-23        kinaba:   GUID *ObjectType;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _OBJECT_TYPE_LIST OBJECT_TYPE_LIST;
c2b7a98c21 2011-02-23        kinaba: alias _OBJECT_TYPE_LIST* POBJECT_TYPE_LIST;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_OBJECT_GUID = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_PROPERTY_SET_GUID = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_PROPERTY_GUID = 2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACCESS_MAX_LEVEL = 4 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _AUDIT_EVENT_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   AuditEventObjectAccess,
c2b7a98c21 2011-02-23        kinaba:   AuditEventDirectoryServiceAccess,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _AUDIT_EVENT_TYPE AUDIT_EVENT_TYPE;
c2b7a98c21 2011-02-23        kinaba: alias _AUDIT_EVENT_TYPE* PAUDIT_EVENT_TYPE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { AUDIT_ALLOW_NO_PRIVILEGE = 0x1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: const char[] ACCESS_DS_SOURCE_A = "DS";
c2b7a98c21 2011-02-23        kinaba: const wchar[] ACCESS_DS_SOURCE_W = "DS";
c2b7a98c21 2011-02-23        kinaba: const char[] ACCESS_DS_OBJECT_TYPE_NAME_A = "Directory Service Object";
c2b7a98c21 2011-02-23        kinaba: const wchar[] ACCESS_DS_OBJECT_TYPE_NAME_W = "Directory Service Object";
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_PRIVILEGE_ENABLED_BY_DEFAULT = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_PRIVILEGE_ENABLED = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SE_PRIVILEGE_USED_FOR_ACCESS = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PRIVILEGE_SET_ALL_NECESSARY = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _PRIVILEGE_SET {
c2b7a98c21 2011-02-23        kinaba:   DWORD PrivilegeCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD Control;
c2b7a98c21 2011-02-23        kinaba:   LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _PRIVILEGE_SET PRIVILEGE_SET;
c2b7a98c21 2011-02-23        kinaba: alias _PRIVILEGE_SET* PPRIVILEGE_SET;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_CREATE_TOKEN_NAME = "SeCreateTokenPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_ASSIGNPRIMARYTOKEN_NAME = "SeAssignPrimaryTokenPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_LOCK_MEMORY_NAME = "SeLockMemoryPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_INCREASE_QUOTA_NAME = "SeIncreaseQuotaPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_UNSOLICITED_INPUT_NAME = "SeUnsolicitedInputPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_MACHINE_ACCOUNT_NAME = "SeMachineAccountPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_TCB_NAME = "SeTcbPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_SECURITY_NAME = "SeSecurityPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_TAKE_OWNERSHIP_NAME = "SeTakeOwnershipPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_LOAD_DRIVER_NAME = "SeLoadDriverPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_SYSTEM_PROFILE_NAME = "SeSystemProfilePrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_SYSTEMTIME_NAME = "SeSystemtimePrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_PROF_SINGLE_PROCESS_NAME = "SeProfileSingleProcessPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_INC_BASE_PRIORITY_NAME = "SeIncreaseBasePriorityPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_CREATE_PAGEFILE_NAME = "SeCreatePagefilePrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_CREATE_PERMANENT_NAME = "SeCreatePermanentPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_BACKUP_NAME = "SeBackupPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_RESTORE_NAME = "SeRestorePrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_SHUTDOWN_NAME = "SeShutdownPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_DEBUG_NAME = "SeDebugPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_AUDIT_NAME = "SeAuditPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_SYSTEM_ENVIRONMENT_NAME = "SeSystemEnvironmentPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_CHANGE_NOTIFY_NAME = "SeChangeNotifyPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_REMOTE_SHUTDOWN_NAME = "SeRemoteShutdownPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_UNDOCK_NAME = "SeUndockPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_SYNC_AGENT_NAME = "SeSyncAgentPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_ENABLE_DELEGATION_NAME = "SeEnableDelegationPrivilege";
c2b7a98c21 2011-02-23        kinaba: const TCHAR[] SE_MANAGE_VOLUME_NAME = "SeManageVolumePrivilege";
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _SECURITY_IMPERSONATION_LEVEL;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   SecurityAnonymous,
c2b7a98c21 2011-02-23        kinaba:   SecurityIdentification,
c2b7a98c21 2011-02-23        kinaba:   SecurityImpersonation,
c2b7a98c21 2011-02-23        kinaba:   SecurityDelegation,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SECURITY_IMPERSONATION_LEVEL SECURITY_IMPERSONATION_LEVEL;
c2b7a98c21 2011-02-23        kinaba: alias _SECURITY_IMPERSONATION_LEVEL* PSECURITY_IMPERSONATION_LEVEL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias SecurityDelegation SECURITY_MAX_IMPERSONATION_LEVEL;
c2b7a98c21 2011-02-23        kinaba: alias SecurityAnonymous SECURITY_MIN_IMPERSONATION_LEVEL;
c2b7a98c21 2011-02-23        kinaba: alias SecurityImpersonation DEFAULT_IMPERSONATION_LEVEL;
c2b7a98c21 2011-02-23        kinaba: bit VALID_IMPERSONATION_LEVEL(SECURITY_IMPERSONATION_LEVEL L){ return (L >= SECURITY_MIN_IMPERSONATION_LEVEL) && (L <= SECURITY_MAX_IMPERSONATION_LEVEL); }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_ASSIGN_PRIMARY = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_DUPLICATE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_IMPERSONATE = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_QUERY = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_QUERY_SOURCE = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_ADJUST_PRIVILEGES = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_ADJUST_GROUPS = 0x0040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_ADJUST_DEFAULT = 0x0080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_ADJUST_SESSIONID = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_ALL_ACCESS_P = STANDARD_RIGHTS_REQUIRED | TOKEN_ASSIGN_PRIMARY | TOKEN_DUPLICATE | TOKEN_IMPERSONATE | TOKEN_QUERY | TOKEN_QUERY_SOURCE | TOKEN_ADJUST_PRIVILEGES | TOKEN_ADJUST_GROUPS | TOKEN_ADJUST_DEFAULT  }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if ((defined(_WIN32_WINNT) && (_WIN32_WINNT > 0x0400)) || (!defined(_WIN32_WINNT)))
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_ALL_ACCESS = TOKEN_ALL_ACCESS_P | TOKEN_ADJUST_SESSIONID  }
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_READ = STANDARD_RIGHTS_READ | TOKEN_QUERY }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_WRITE = STANDARD_RIGHTS_WRITE | TOKEN_ADJUST_PRIVILEGES | TOKEN_ADJUST_GROUPS | TOKEN_ADJUST_DEFAULT }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_EXECUTE = STANDARD_RIGHTS_EXECUTE }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _TOKEN_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   TokenPrimary = 1,
c2b7a98c21 2011-02-23        kinaba:   TokenImpersonation,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_TYPE TOKEN_TYPE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias TOKEN_TYPE* PTOKEN_TYPE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _TOKEN_INFORMATION_CLASS;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   TokenUser = 1,
c2b7a98c21 2011-02-23        kinaba:   TokenGroups,
c2b7a98c21 2011-02-23        kinaba:   TokenPrivileges,
c2b7a98c21 2011-02-23        kinaba:   TokenOwner,
c2b7a98c21 2011-02-23        kinaba:   TokenPrimaryGroup,
c2b7a98c21 2011-02-23        kinaba:   TokenDefaultDacl,
c2b7a98c21 2011-02-23        kinaba:   TokenSource,
c2b7a98c21 2011-02-23        kinaba:   TokenType,
c2b7a98c21 2011-02-23        kinaba:   TokenImpersonationLevel,
c2b7a98c21 2011-02-23        kinaba:   TokenStatistics,
c2b7a98c21 2011-02-23        kinaba:   TokenRestrictedSids,
c2b7a98c21 2011-02-23        kinaba:   TokenSessionId,
c2b7a98c21 2011-02-23        kinaba:   TokenGroupsAndPrivileges,
c2b7a98c21 2011-02-23        kinaba:   TokenSessionReference,
c2b7a98c21 2011-02-23        kinaba:   TokenSandBoxInert,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_INFORMATION_CLASS TOKEN_INFORMATION_CLASS;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_INFORMATION_CLASS* PTOKEN_INFORMATION_CLASS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_USER {
c2b7a98c21 2011-02-23        kinaba:   SID_AND_ATTRIBUTES User;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_USER TOKEN_USER;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_USER* PTOKEN_USER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_GROUPS {
c2b7a98c21 2011-02-23        kinaba:   DWORD GroupCount;
c2b7a98c21 2011-02-23        kinaba:   SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_GROUPS TOKEN_GROUPS;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_GROUPS* PTOKEN_GROUPS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_PRIVILEGES {
c2b7a98c21 2011-02-23        kinaba:   DWORD PrivilegeCount;
c2b7a98c21 2011-02-23        kinaba:   LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_PRIVILEGES TOKEN_PRIVILEGES;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_PRIVILEGES* PTOKEN_PRIVILEGES;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_OWNER {
c2b7a98c21 2011-02-23        kinaba:   PSID Owner;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_OWNER TOKEN_OWNER;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_OWNER* PTOKEN_OWNER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_PRIMARY_GROUP {
c2b7a98c21 2011-02-23        kinaba:   PSID PrimaryGroup;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_PRIMARY_GROUP TOKEN_PRIMARY_GROUP;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_PRIMARY_GROUP* PTOKEN_PRIMARY_GROUP;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_DEFAULT_DACL {
c2b7a98c21 2011-02-23        kinaba:   PACL DefaultDacl;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_DEFAULT_DACL TOKEN_DEFAULT_DACL;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_DEFAULT_DACL* PTOKEN_DEFAULT_DACL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_GROUPS_AND_PRIVILEGES {
c2b7a98c21 2011-02-23        kinaba:   DWORD SidCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD SidLength;
c2b7a98c21 2011-02-23        kinaba:   PSID_AND_ATTRIBUTES Sids;
c2b7a98c21 2011-02-23        kinaba:   DWORD RestrictedSidCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD RestrictedSidLength;
c2b7a98c21 2011-02-23        kinaba:   PSID_AND_ATTRIBUTES RestrictedSids;
c2b7a98c21 2011-02-23        kinaba:   DWORD PrivilegeCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD PrivilegeLength;
c2b7a98c21 2011-02-23        kinaba:   PLUID_AND_ATTRIBUTES Privileges;
c2b7a98c21 2011-02-23        kinaba:   LUID AuthenticationId;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_GROUPS_AND_PRIVILEGES TOKEN_GROUPS_AND_PRIVILEGES;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_GROUPS_AND_PRIVILEGES* PTOKEN_GROUPS_AND_PRIVILEGES;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TOKEN_SOURCE_LENGTH = 8 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_SOURCE {
c2b7a98c21 2011-02-23        kinaba:   CHAR SourceName[TOKEN_SOURCE_LENGTH];
c2b7a98c21 2011-02-23        kinaba:   LUID SourceIdentifier;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_SOURCE TOKEN_SOURCE;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_SOURCE* PTOKEN_SOURCE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_STATISTICS {
c2b7a98c21 2011-02-23        kinaba:   LUID TokenId;
c2b7a98c21 2011-02-23        kinaba:   LUID AuthenticationId;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER ExpirationTime;
c2b7a98c21 2011-02-23        kinaba:   TOKEN_TYPE TokenType;
c2b7a98c21 2011-02-23        kinaba:   SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
c2b7a98c21 2011-02-23        kinaba:   DWORD DynamicCharged;
c2b7a98c21 2011-02-23        kinaba:   DWORD DynamicAvailable;
c2b7a98c21 2011-02-23        kinaba:   DWORD GroupCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD PrivilegeCount;
c2b7a98c21 2011-02-23        kinaba:   LUID ModifiedId;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_STATISTICS TOKEN_STATISTICS;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_STATISTICS* PTOKEN_STATISTICS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TOKEN_CONTROL {
c2b7a98c21 2011-02-23        kinaba:   LUID TokenId;
c2b7a98c21 2011-02-23        kinaba:   LUID AuthenticationId;
c2b7a98c21 2011-02-23        kinaba:   LUID ModifiedId;
c2b7a98c21 2011-02-23        kinaba:   TOKEN_SOURCE TokenSource;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_CONTROL TOKEN_CONTROL;
c2b7a98c21 2011-02-23        kinaba: alias _TOKEN_CONTROL* PTOKEN_CONTROL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_DYNAMIC_TRACKING = TRUE }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECURITY_STATIC_TRACKING = FALSE }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias BOOLEAN SECURITY_CONTEXT_TRACKING_MODE;
c2b7a98c21 2011-02-23        kinaba: alias BOOLEAN* PSECURITY_CONTEXT_TRACKING_MODE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SECURITY_QUALITY_OF_SERVICE {
c2b7a98c21 2011-02-23        kinaba:   DWORD Length;
c2b7a98c21 2011-02-23        kinaba:   SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
c2b7a98c21 2011-02-23        kinaba:   SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN EffectiveOnly;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SECURITY_QUALITY_OF_SERVICE SECURITY_QUALITY_OF_SERVICE;
c2b7a98c21 2011-02-23        kinaba: alias _SECURITY_QUALITY_OF_SERVICE* PSECURITY_QUALITY_OF_SERVICE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SE_IMPERSONATION_STATE {
c2b7a98c21 2011-02-23        kinaba:   PACCESS_TOKEN Token;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN CopyOnOpen;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN EffectiveOnly;
c2b7a98c21 2011-02-23        kinaba:   SECURITY_IMPERSONATION_LEVEL Level;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SE_IMPERSONATION_STATE SE_IMPERSONATION_STATE;
c2b7a98c21 2011-02-23        kinaba: alias _SE_IMPERSONATION_STATE* PSE_IMPERSONATION_STATE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { DISABLE_MAX_PRIVILEGE = 0x1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SANDBOX_INERT = 0x2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias DWORD SECURITY_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias DWORD* PSECURITY_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { OWNER_SECURITY_INFORMATION = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { GROUP_SECURITY_INFORMATION = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DACL_SECURITY_INFORMATION = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SACL_SECURITY_INFORMATION = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROTECTED_DACL_SECURITY_INFORMATION = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROTECTED_SACL_SECURITY_INFORMATION = 0x40000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { UNPROTECTED_DACL_SECURITY_INFORMATION = 0x20000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { UNPROTECTED_SACL_SECURITY_INFORMATION = 0x10000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_TERMINATE = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_CREATE_THREAD = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_SET_SESSIONID = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_VM_OPERATION = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_VM_READ = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_VM_WRITE = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_DUP_HANDLE = 0x0040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_CREATE_PROCESS = 0x0080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_SET_QUOTA = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_SET_INFORMATION = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_QUERY_INFORMATION = 0x0400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_SUSPEND_RESUME = 0x0800 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESS_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xFFF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_WIN64)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXIMUM_PROCESSORS = 32 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_TERMINATE = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_SUSPEND_RESUME = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_GET_CONTEXT = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_SET_CONTEXT = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_SET_INFORMATION = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_QUERY_INFORMATION = 0x0040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_SET_THREAD_TOKEN = 0x0080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_IMPERSONATE = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_DIRECT_IMPERSONATION = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x3FF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_ASSIGN_PROCESS = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_SET_ATTRIBUTES = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_QUERY = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_TERMINATE = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_SET_SECURITY_ATTRIBUTES = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1F  }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOB_SET_ARRAY {
c2b7a98c21 2011-02-23        kinaba:   HANDLE JobHandle;
c2b7a98c21 2011-02-23        kinaba:   DWORD MemberLevel;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOB_SET_ARRAY JOB_SET_ARRAY;
c2b7a98c21 2011-02-23        kinaba: alias _JOB_SET_ARRAY* PJOB_SET_ARRAY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TLS_MINIMUM_AVAILABLE = 64 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _NT_TIB {
c2b7a98c21 2011-02-23        kinaba:   _EXCEPTION_REGISTRATION_RECORD *ExceptionList;
c2b7a98c21 2011-02-23        kinaba:   PVOID StackBase;
c2b7a98c21 2011-02-23        kinaba:   PVOID StackLimit;
c2b7a98c21 2011-02-23        kinaba:   PVOID SubSystemTib;
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   PVOID FiberData;
c2b7a98c21 2011-02-23        kinaba:   DWORD Version;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   PVOID ArbitraryUserPointer;
c2b7a98c21 2011-02-23        kinaba:   _NT_TIB *Self;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _NT_TIB NT_TIB;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias NT_TIB* PNT_TIB;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _NT_TIB32 {
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionList;
c2b7a98c21 2011-02-23        kinaba:   DWORD StackBase;
c2b7a98c21 2011-02-23        kinaba:   DWORD StackLimit;
c2b7a98c21 2011-02-23        kinaba:   DWORD SubSystemTib;
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   DWORD FiberData;
c2b7a98c21 2011-02-23        kinaba:   DWORD Version;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD ArbitraryUserPointer;
c2b7a98c21 2011-02-23        kinaba:   DWORD Self;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _NT_TIB32 NT_TIB32;
c2b7a98c21 2011-02-23        kinaba: alias _NT_TIB32* PNT_TIB32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _NT_TIB64 {
c2b7a98c21 2011-02-23        kinaba:   DWORD64 ExceptionList;
c2b7a98c21 2011-02-23        kinaba:   DWORD64 StackBase;
c2b7a98c21 2011-02-23        kinaba:   DWORD64 StackLimit;
c2b7a98c21 2011-02-23        kinaba:   DWORD64 SubSystemTib;
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   DWORD64 FiberData;
c2b7a98c21 2011-02-23        kinaba:   DWORD Version;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD64 ArbitraryUserPointer;
c2b7a98c21 2011-02-23        kinaba:   DWORD64 Self;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _NT_TIB64 NT_TIB64;
c2b7a98c21 2011-02-23        kinaba: alias _NT_TIB64* PNT_TIB64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(_X86_) && !defined(_IA64_) && !defined(_AMD64_)
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_BASE_PRIORITY_LOWRT = 15 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { THREAD_BASE_PRIORITY_MAX = 2 }
c2b7a98c21 2011-02-23        kinaba: enum { THREAD_BASE_PRIORITY_MIN = -2 }
c2b7a98c21 2011-02-23        kinaba: enum { THREAD_BASE_PRIORITY_IDLE = -15 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _QUOTA_LIMITS {
c2b7a98c21 2011-02-23        kinaba:   SIZE_T PagedPoolLimit;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T NonPagedPoolLimit;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T MinimumWorkingSetSize;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T MaximumWorkingSetSize;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T PagefileLimit;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER TimeLimit;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _QUOTA_LIMITS QUOTA_LIMITS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias QUOTA_LIMITS* PQUOTA_LIMITS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IO_COUNTERS {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ReadOperationCount;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG WriteOperationCount;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG OtherOperationCount;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ReadTransferCount;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG WriteTransferCount;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG OtherTransferCount;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IO_COUNTERS IO_COUNTERS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IO_COUNTERS* PIO_COUNTERS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER TotalUserTime;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER TotalKernelTime;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER ThisPeriodTotalUserTime;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER ThisPeriodTotalKernelTime;
c2b7a98c21 2011-02-23        kinaba:   DWORD TotalPageFaultCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD TotalProcesses;
c2b7a98c21 2011-02-23        kinaba:   DWORD ActiveProcesses;
c2b7a98c21 2011-02-23        kinaba:   DWORD TotalTerminatedProcesses;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION JOBOBJECT_BASIC_ACCOUNTING_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION* PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_BASIC_LIMIT_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER PerProcessUserTimeLimit;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER PerJobUserTimeLimit;
c2b7a98c21 2011-02-23        kinaba:   DWORD LimitFlags;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T MinimumWorkingSetSize;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T MaximumWorkingSetSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD ActiveProcessLimit;
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR Affinity;
c2b7a98c21 2011-02-23        kinaba:   DWORD PriorityClass;
c2b7a98c21 2011-02-23        kinaba:   DWORD SchedulingClass;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_LIMIT_INFORMATION JOBOBJECT_BASIC_LIMIT_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_LIMIT_INFORMATION* PJOBOBJECT_BASIC_LIMIT_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_EXTENDED_LIMIT_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation;
c2b7a98c21 2011-02-23        kinaba:   IO_COUNTERS IoInfo;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T ProcessMemoryLimit;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T JobMemoryLimit;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T PeakProcessMemoryUsed;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T PeakJobMemoryUsed;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_EXTENDED_LIMIT_INFORMATION JOBOBJECT_EXTENDED_LIMIT_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_EXTENDED_LIMIT_INFORMATION* PJOBOBJECT_EXTENDED_LIMIT_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_BASIC_PROCESS_ID_LIST {
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfAssignedProcesses;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfProcessIdsInList;
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR ProcessIdList[1];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_PROCESS_ID_LIST JOBOBJECT_BASIC_PROCESS_ID_LIST;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_PROCESS_ID_LIST* PJOBOBJECT_BASIC_PROCESS_ID_LIST;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_BASIC_UI_RESTRICTIONS {
c2b7a98c21 2011-02-23        kinaba:   DWORD UIRestrictionsClass;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_UI_RESTRICTIONS JOBOBJECT_BASIC_UI_RESTRICTIONS;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_UI_RESTRICTIONS* PJOBOBJECT_BASIC_UI_RESTRICTIONS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_SECURITY_LIMIT_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD SecurityLimitFlags ;
c2b7a98c21 2011-02-23        kinaba:   HANDLE JobToken ;
c2b7a98c21 2011-02-23        kinaba:   PTOKEN_GROUPS SidsToDisable ;
c2b7a98c21 2011-02-23        kinaba:   PTOKEN_PRIVILEGES PrivilegesToDelete ;
c2b7a98c21 2011-02-23        kinaba:   PTOKEN_GROUPS RestrictedSids ;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_SECURITY_LIMIT_INFORMATION JOBOBJECT_SECURITY_LIMIT_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_SECURITY_LIMIT_INFORMATION* PJOBOBJECT_SECURITY_LIMIT_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_END_OF_JOB_TIME_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD EndOfJobTimeAction;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_END_OF_JOB_TIME_INFORMATION JOBOBJECT_END_OF_JOB_TIME_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_END_OF_JOB_TIME_INFORMATION* PJOBOBJECT_END_OF_JOB_TIME_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_ASSOCIATE_COMPLETION_PORT {
c2b7a98c21 2011-02-23        kinaba:   PVOID CompletionKey;
c2b7a98c21 2011-02-23        kinaba:   HANDLE CompletionPort;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_ASSOCIATE_COMPLETION_PORT JOBOBJECT_ASSOCIATE_COMPLETION_PORT;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_ASSOCIATE_COMPLETION_PORT* PJOBOBJECT_ASSOCIATE_COMPLETION_PORT;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   JOBOBJECT_BASIC_ACCOUNTING_INFORMATION BasicInfo;
c2b7a98c21 2011-02-23        kinaba:   IO_COUNTERS IoInfo;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION* PJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _JOBOBJECT_JOBSET_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD MemberLevel;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_JOBSET_INFORMATION JOBOBJECT_JOBSET_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECT_JOBSET_INFORMATION* PJOBOBJECT_JOBSET_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_TERMINATE_AT_END_OF_JOB = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_POST_AT_END_OF_JOB = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_END_OF_JOB_TIME = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_END_OF_PROCESS_TIME = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_ACTIVE_PROCESS_LIMIT = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_ACTIVE_PROCESS_ZERO = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_NEW_PROCESS = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_EXIT_PROCESS = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_ABNORMAL_EXIT_PROCESS = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_PROCESS_MEMORY_LIMIT = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_MSG_JOB_MEMORY_LIMIT = 10 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_WORKINGSET = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_PROCESS_TIME = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_JOB_TIME = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_ACTIVE_PROCESS = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_AFFINITY = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_PRIORITY_CLASS = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_PRESERVE_JOB_TIME = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_SCHEDULING_CLASS = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_PROCESS_MEMORY = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_JOB_MEMORY = 0x00000200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION = 0x00000400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_BREAKAWAY_OK = 0x00000800 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_SILENT_BREAKAWAY_OK = 0x00001000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE = 0x00002000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_RESERVED2 = 0x00004000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_RESERVED3 = 0x00008000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_RESERVED4 = 0x00010000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_RESERVED5 = 0x00020000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_RESERVED6 = 0x00040000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_LIMIT_VALID_FLAGS = 0x0007ffff }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_BASIC_LIMIT_VALID_FLAGS = 0x000000ff }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_EXTENDED_LIMIT_VALID_FLAGS = 0x00003fff }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_RESERVED_LIMIT_VALID_FLAGS = 0x0007ffff }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_NONE = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_HANDLES = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_READCLIPBOARD = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_WRITECLIPBOARD = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_SYSTEMPARAMETERS = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_DISPLAYSETTINGS = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_GLOBALATOMS = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_DESKTOP = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_EXITWINDOWS = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UILIMIT_ALL = 0x000000FF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_UI_VALID_FLAGS = 0x000000FF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_SECURITY_NO_ADMIN = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_SECURITY_RESTRICTED_TOKEN = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_SECURITY_ONLY_TOKEN = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_SECURITY_FILTER_TOKENS = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { JOB_OBJECT_SECURITY_VALID_FLAGS = 0x0000000f }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _JOBOBJECTINFOCLASS;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   JobObjectBasicAccountingInformation = 1,
c2b7a98c21 2011-02-23        kinaba:   JobObjectBasicLimitInformation,
c2b7a98c21 2011-02-23        kinaba:   JobObjectBasicProcessIdList,
c2b7a98c21 2011-02-23        kinaba:   JobObjectBasicUIRestrictions,
c2b7a98c21 2011-02-23        kinaba:   JobObjectSecurityLimitInformation,
c2b7a98c21 2011-02-23        kinaba:   JobObjectEndOfJobTimeInformation,
c2b7a98c21 2011-02-23        kinaba:   JobObjectAssociateCompletionPortInformation,
c2b7a98c21 2011-02-23        kinaba:   JobObjectBasicAndIoAccountingInformation,
c2b7a98c21 2011-02-23        kinaba:   JobObjectExtendedLimitInformation,
c2b7a98c21 2011-02-23        kinaba:   JobObjectJobSetInformation,
c2b7a98c21 2011-02-23        kinaba:   MaxJobObjectInfoClass,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _JOBOBJECTINFOCLASS JOBOBJECTINFOCLASS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENT_MODIFY_STATE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENT_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MUTANT_QUERY_STATE = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MUTANT_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE| MUTANT_QUERY_STATE }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEMAPHORE_MODIFY_STATE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEMAPHORE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TIMER_QUERY_STATE = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TIMER_MODIFY_STATE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TIMER_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE| TIMER_QUERY_STATE|TIMER_MODIFY_STATE }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TIME_ZONE_ID_UNKNOWN = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TIME_ZONE_ID_STANDARD = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TIME_ZONE_ID_DAYLIGHT = 2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXIMUM_NUMA_NODES = 16 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_NUMA_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD HighestNodeNumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD Reserved;
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ActiveProcessorsAffinityMask[MAXIMUM_NUMA_NODES];
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG AvailableMemory[MAXIMUM_NUMA_NODES];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_NUMA_INFORMATION SYSTEM_NUMA_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_NUMA_INFORMATION* PSYSTEM_NUMA_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_INTEL_386 = 386 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_INTEL_486 = 486 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_INTEL_PENTIUM = 586 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_INTEL_IA64 = 2200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_MIPS_R4000 = 4000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ALPHA_21064 = 21064 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_PPC_601 = 601 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_PPC_603 = 603 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_PPC_604 = 604 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_PPC_620 = 620 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_HITACHI_SH3 = 10003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_HITACHI_SH3E = 10004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_HITACHI_SH4 = 10005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_MOTOROLA_821 = 821 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_SHx_SH3 = 103 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_SHx_SH4 = 104 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_STRONGARM = 2577 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARM720 = 1824 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARM820 = 2080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARM920 = 2336 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARM_7TDMI = 70001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_OPTIL = 0x494f }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_INTEL = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_MIPS = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_ALPHA = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_PPC = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_SHX = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_ARM = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_IA64 = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_ALPHA64 = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_MSIL = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_AMD64 = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 = 10 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PROCESSOR_ARCHITECTURE_UNKNOWN = 0xFFFF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_FLOATING_POINT_PRECISION_ERRATA = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_FLOATING_POINT_EMULATED = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_COMPARE_EXCHANGE_DOUBLE = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_MMX_INSTRUCTIONS_AVAILABLE = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_PPC_MOVEMEM_64BIT_OK = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_ALPHA_BYTE_INSTRUCTIONS = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_XMMI_INSTRUCTIONS_AVAILABLE = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_3DNOW_INSTRUCTIONS_AVAILABLE = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_RDTSC_INSTRUCTION_AVAILABLE = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_PAE_ENABLED = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PF_XMMI64_INSTRUCTIONS_AVAILABLE = 10 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _MEMORY_BASIC_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   PVOID BaseAddress;
c2b7a98c21 2011-02-23        kinaba:   PVOID AllocationBase;
c2b7a98c21 2011-02-23        kinaba:   DWORD AllocationProtect;
c2b7a98c21 2011-02-23        kinaba:   SIZE_T RegionSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD State;
c2b7a98c21 2011-02-23        kinaba:   DWORD Protect;
c2b7a98c21 2011-02-23        kinaba:   DWORD Type;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _MEMORY_BASIC_INFORMATION MEMORY_BASIC_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _MEMORY_BASIC_INFORMATION* PMEMORY_BASIC_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _MEMORY_BASIC_INFORMATION32 {
c2b7a98c21 2011-02-23        kinaba:   DWORD BaseAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD AllocationBase;
c2b7a98c21 2011-02-23        kinaba:   DWORD AllocationProtect;
c2b7a98c21 2011-02-23        kinaba:   DWORD RegionSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD State;
c2b7a98c21 2011-02-23        kinaba:   DWORD Protect;
c2b7a98c21 2011-02-23        kinaba:   DWORD Type;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _MEMORY_BASIC_INFORMATION32 MEMORY_BASIC_INFORMATION32;
c2b7a98c21 2011-02-23        kinaba: alias _MEMORY_BASIC_INFORMATION32* PMEMORY_BASIC_INFORMATION32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _MEMORY_BASIC_INFORMATION64 {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG BaseAddress;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG AllocationBase;
c2b7a98c21 2011-02-23        kinaba:   DWORD AllocationProtect;
c2b7a98c21 2011-02-23        kinaba:   DWORD __alignment1;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG RegionSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD State;
c2b7a98c21 2011-02-23        kinaba:   DWORD Protect;
c2b7a98c21 2011-02-23        kinaba:   DWORD Type;
c2b7a98c21 2011-02-23        kinaba:   DWORD __alignment2;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _MEMORY_BASIC_INFORMATION64 MEMORY_BASIC_INFORMATION64;
c2b7a98c21 2011-02-23        kinaba: alias _MEMORY_BASIC_INFORMATION64* PMEMORY_BASIC_INFORMATION64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECTION_QUERY = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECTION_MAP_WRITE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECTION_MAP_READ = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECTION_MAP_EXECUTE = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECTION_EXTEND_SIZE = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SECTION_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED|SECTION_QUERY| SECTION_MAP_WRITE | SECTION_MAP_READ | SECTION_MAP_EXECUTE | SECTION_EXTEND_SIZE }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_NOACCESS = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_READONLY = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_READWRITE = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_WRITECOPY = 0x08 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_EXECUTE = 0x10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_EXECUTE_READ = 0x20 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_EXECUTE_READWRITE = 0x40 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_EXECUTE_WRITECOPY = 0x80 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_GUARD = 0x100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_NOCACHE = 0x200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PAGE_WRITECOMBINE = 0x400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_COMMIT = 0x1000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_RESERVE = 0x2000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_DECOMMIT = 0x4000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_RELEASE = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_FREE = 0x10000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_PRIVATE = 0x20000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_MAPPED = 0x40000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_RESET = 0x80000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_TOP_DOWN = 0x100000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_WRITE_WATCH = 0x200000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_PHYSICAL = 0x400000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { MEM_4MB_PAGES = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEC_FILE = 0x800000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEC_IMAGE = 0x1000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEC_RESERVE = 0x4000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEC_COMMIT = 0x8000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEC_NOCACHE = 0x10000000 }
c2b7a98c21 2011-02-23        kinaba: alias SEC_IMAGE MEM_IMAGE;
c2b7a98c21 2011-02-23        kinaba: enum : uint { WRITE_WATCH_FLAG_RESET = 0x01 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_READ_DATA = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_LIST_DIRECTORY = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_WRITE_DATA = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ADD_FILE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_APPEND_DATA = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ADD_SUBDIRECTORY = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_CREATE_PIPE_INSTANCE = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_READ_EA = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_WRITE_EA = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_EXECUTE = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_TRAVERSE = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_DELETE_CHILD = 0x0040 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_READ_ATTRIBUTES = 0x0080 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_WRITE_ATTRIBUTES = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1FF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_GENERIC_READ = STANDARD_RIGHTS_READ | FILE_READ_DATA | FILE_READ_ATTRIBUTES | FILE_READ_EA | SYNCHRONIZE }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_GENERIC_WRITE = STANDARD_RIGHTS_WRITE | FILE_WRITE_DATA | FILE_WRITE_ATTRIBUTES | FILE_WRITE_EA | FILE_APPEND_DATA | SYNCHRONIZE }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_GENERIC_EXECUTE = STANDARD_RIGHTS_EXECUTE | FILE_READ_ATTRIBUTES | FILE_EXECUTE | SYNCHRONIZE }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_SHARE_READ = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_SHARE_WRITE = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_SHARE_DELETE = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_READONLY = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_HIDDEN = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_SYSTEM = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_DIRECTORY = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_ARCHIVE = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_DEVICE = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_NORMAL = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_TEMPORARY = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_SPARSE_FILE = 0x00000200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_REPARSE_POINT = 0x00000400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_COMPRESSED = 0x00000800 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_OFFLINE = 0x00001000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 0x00002000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ATTRIBUTE_ENCRYPTED = 0x00004000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NOTIFY_CHANGE_FILE_NAME = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NOTIFY_CHANGE_DIR_NAME = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NOTIFY_CHANGE_ATTRIBUTES = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NOTIFY_CHANGE_SIZE = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NOTIFY_CHANGE_LAST_WRITE = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NOTIFY_CHANGE_LAST_ACCESS = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NOTIFY_CHANGE_CREATION = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NOTIFY_CHANGE_SECURITY = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ACTION_ADDED = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ACTION_REMOVED = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ACTION_MODIFIED = 0x00000003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ACTION_RENAMED_OLD_NAME = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_ACTION_RENAMED_NEW_NAME = 0x00000005 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { MAILSLOT_NO_MESSAGE = cast(DWORD)-1 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { MAILSLOT_WAIT_FOREVER = cast(DWORD)-1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_CASE_SENSITIVE_SEARCH = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_CASE_PRESERVED_NAMES = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_UNICODE_ON_DISK = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_PERSISTENT_ACLS = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_FILE_COMPRESSION = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_VOLUME_QUOTAS = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_SUPPORTS_SPARSE_FILES = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_SUPPORTS_REPARSE_POINTS = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_SUPPORTS_REMOTE_STORAGE = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_VOLUME_IS_COMPRESSED = 0x00008000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_SUPPORTS_OBJECT_IDS = 0x00010000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_SUPPORTS_ENCRYPTION = 0x00020000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_NAMED_STREAMS = 0x00040000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FILE_READ_ONLY_VOLUME = 0x00080000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _FILE_NOTIFY_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD NextEntryOffset;
c2b7a98c21 2011-02-23        kinaba:   DWORD Action;
c2b7a98c21 2011-02-23        kinaba:   DWORD FileNameLength;
c2b7a98c21 2011-02-23        kinaba:   WCHAR FileName[1];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _FILE_NOTIFY_INFORMATION FILE_NOTIFY_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _FILE_NOTIFY_INFORMATION* PFILE_NOTIFY_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: union _FILE_SEGMENT_ELEMENT {
c2b7a98c21 2011-02-23        kinaba:   PVOID64 Buffer;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG Alignment;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _FILE_SEGMENT_ELEMENT FILE_SEGMENT_ELEMENT;
c2b7a98c21 2011-02-23        kinaba: alias _FILE_SEGMENT_ELEMENT* PFILE_SEGMENT_ELEMENT;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _REPARSE_GUID_DATA_BUFFER {
c2b7a98c21 2011-02-23        kinaba:   DWORD ReparseTag;
c2b7a98c21 2011-02-23        kinaba:   WORD ReparseDataLength;
c2b7a98c21 2011-02-23        kinaba:   WORD Reserved;
c2b7a98c21 2011-02-23        kinaba:   GUID ReparseGuid;
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   BYTE DataBuffer[1];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _REPARSE_GUID_DATA_BUFFER REPARSE_GUID_DATA_BUFFER;
c2b7a98c21 2011-02-23        kinaba: alias _REPARSE_GUID_DATA_BUFFER* PREPARSE_GUID_DATA_BUFFER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define REPARSE_GUID_DATA_BUFFER_HEADER_SIZE FIELD_OFFSET(REPARSE_GUID_DATA_BUFFER, GenericReparseBuffer)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXIMUM_REPARSE_DATA_BUFFER_SIZE =  16 * 1024  }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IO_REPARSE_TAG_RESERVED_ZERO = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IO_REPARSE_TAG_RESERVED_ONE = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IO_REPARSE_TAG_RESERVED_ONE IO_REPARSE_TAG_RESERVED_RANGE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define IsReparseTagMicrosoft(_tag) ( ((_tag) & 0x80000000) )
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define IsReparseTagNameSurrogate(_tag) ( ((_tag) & 0x20000000) )
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IO_REPARSE_TAG_MOUNT_POINT = 0xA0000003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IO_REPARSE_TAG_HSM = 0xC0000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IO_REPARSE_TAG_SIS = 0x80000007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IO_REPARSE_TAG_FILTER_MANAGER = 0x8000000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IO_COMPLETION_MODIFY_STATE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IO_COMPLETION_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DUPLICATE_CLOSE_SOURCE = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DUPLICATE_SAME_ACCESS = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _SYSTEM_POWER_STATE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   PowerSystemUnspecified = 0,
c2b7a98c21 2011-02-23        kinaba:   PowerSystemWorking = 1,
c2b7a98c21 2011-02-23        kinaba:   PowerSystemSleeping1 = 2,
c2b7a98c21 2011-02-23        kinaba:   PowerSystemSleeping2 = 3,
c2b7a98c21 2011-02-23        kinaba:   PowerSystemSleeping3 = 4,
c2b7a98c21 2011-02-23        kinaba:   PowerSystemHibernate = 5,
c2b7a98c21 2011-02-23        kinaba:   PowerSystemShutdown = 6,
c2b7a98c21 2011-02-23        kinaba:   PowerSystemMaximum = 7,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_POWER_STATE SYSTEM_POWER_STATE;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_POWER_STATE* PSYSTEM_POWER_STATE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_SYSTEM_MAXIMUM = 7 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum _4 {
c2b7a98c21 2011-02-23        kinaba:   PowerActionNone = 0,
c2b7a98c21 2011-02-23        kinaba:   PowerActionReserved,
c2b7a98c21 2011-02-23        kinaba:   PowerActionSleep,
c2b7a98c21 2011-02-23        kinaba:   PowerActionHibernate,
c2b7a98c21 2011-02-23        kinaba:   PowerActionShutdown,
c2b7a98c21 2011-02-23        kinaba:   PowerActionShutdownReset,
c2b7a98c21 2011-02-23        kinaba:   PowerActionShutdownOff,
c2b7a98c21 2011-02-23        kinaba:   PowerActionWarmEject,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _4 POWER_ACTION;
c2b7a98c21 2011-02-23        kinaba: alias _4* PPOWER_ACTION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _DEVICE_POWER_STATE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   PowerDeviceUnspecified = 0,
c2b7a98c21 2011-02-23        kinaba:   PowerDeviceD0,
c2b7a98c21 2011-02-23        kinaba:   PowerDeviceD1,
c2b7a98c21 2011-02-23        kinaba:   PowerDeviceD2,
c2b7a98c21 2011-02-23        kinaba:   PowerDeviceD3,
c2b7a98c21 2011-02-23        kinaba:   PowerDeviceMaximum,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _DEVICE_POWER_STATE DEVICE_POWER_STATE;
c2b7a98c21 2011-02-23        kinaba: alias _DEVICE_POWER_STATE* PDEVICE_POWER_STATE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { ES_SYSTEM_REQUIRED = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { ES_DISPLAY_REQUIRED = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { ES_USER_PRESENT = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : DWORD { ES_CONTINUOUS = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias DWORD EXECUTION_STATE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum _5 {
c2b7a98c21 2011-02-23        kinaba:   LT_DONT_CARE,
c2b7a98c21 2011-02-23        kinaba:   LT_LOWEST_LATENCY,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _5 LATENCY_TIME;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_D0_SUPPORTED = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_D1_SUPPORTED = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_D2_SUPPORTED = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_D3_SUPPORTED = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_WAKE_FROM_D0_SUPPORTED = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_WAKE_FROM_D1_SUPPORTED = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_WAKE_FROM_D2_SUPPORTED = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_WAKE_FROM_D3_SUPPORTED = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PDCAP_WARM_EJECT_SUPPORTED = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct CM_Power_Data_s {
c2b7a98c21 2011-02-23        kinaba:   DWORD PD_Size;
c2b7a98c21 2011-02-23        kinaba:   DEVICE_POWER_STATE PD_MostRecentPowerState;
c2b7a98c21 2011-02-23        kinaba:   DWORD PD_Capabilities;
c2b7a98c21 2011-02-23        kinaba:   DWORD PD_D1Latency;
c2b7a98c21 2011-02-23        kinaba:   DWORD PD_D2Latency;
c2b7a98c21 2011-02-23        kinaba:   DWORD PD_D3Latency;
c2b7a98c21 2011-02-23        kinaba:   DEVICE_POWER_STATE PD_PowerStateMapping[POWER_SYSTEM_MAXIMUM];
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE PD_DeepestSystemWake;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias CM_Power_Data_s CM_POWER_DATA;
c2b7a98c21 2011-02-23        kinaba: alias CM_Power_Data_s* PCM_POWER_DATA;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum _6 {
c2b7a98c21 2011-02-23        kinaba:   SystemPowerPolicyAc,
c2b7a98c21 2011-02-23        kinaba:   SystemPowerPolicyDc,
c2b7a98c21 2011-02-23        kinaba:   VerifySystemPolicyAc,
c2b7a98c21 2011-02-23        kinaba:   VerifySystemPolicyDc,
c2b7a98c21 2011-02-23        kinaba:   SystemPowerCapabilities,
c2b7a98c21 2011-02-23        kinaba:   SystemBatteryState,
c2b7a98c21 2011-02-23        kinaba:   SystemPowerStateHandler,
c2b7a98c21 2011-02-23        kinaba:   ProcessorStateHandler,
c2b7a98c21 2011-02-23        kinaba:   SystemPowerPolicyCurrent,
c2b7a98c21 2011-02-23        kinaba:   AdministratorPowerPolicy,
c2b7a98c21 2011-02-23        kinaba:   SystemReserveHiberFile,
c2b7a98c21 2011-02-23        kinaba:   ProcessorInformation,
c2b7a98c21 2011-02-23        kinaba:   SystemPowerInformation,
c2b7a98c21 2011-02-23        kinaba:   ProcessorStateHandler2,
c2b7a98c21 2011-02-23        kinaba:   LastWakeTime,
c2b7a98c21 2011-02-23        kinaba:   LastSleepTime,
c2b7a98c21 2011-02-23        kinaba:   SystemExecutionState,
c2b7a98c21 2011-02-23        kinaba:   SystemPowerStateNotifyHandler,
c2b7a98c21 2011-02-23        kinaba:   ProcessorPowerPolicyAc,
c2b7a98c21 2011-02-23        kinaba:   ProcessorPowerPolicyDc,
c2b7a98c21 2011-02-23        kinaba:   VerifyProcessorPowerPolicyAc,
c2b7a98c21 2011-02-23        kinaba:   VerifyProcessorPowerPolicyDc,
c2b7a98c21 2011-02-23        kinaba:   ProcessorPowerPolicyCurrent,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _6 POWER_INFORMATION_LEVEL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _7 {
c2b7a98c21 2011-02-23        kinaba:   DWORD Granularity;
c2b7a98c21 2011-02-23        kinaba:   DWORD Capacity;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _7 BATTERY_REPORTING_SCALE;
c2b7a98c21 2011-02-23        kinaba: alias _7* PBATTERY_REPORTING_SCALE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _8 {
c2b7a98c21 2011-02-23        kinaba:   POWER_ACTION Action;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   DWORD EventCode;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _8 POWER_ACTION_POLICY;
c2b7a98c21 2011-02-23        kinaba: alias _8* PPOWER_ACTION_POLICY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_ACTION_QUERY_ALLOWED = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_ACTION_UI_ALLOWED = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_ACTION_OVERRIDE_APPS = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_ACTION_LIGHTEST_FIRST = 0x10000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_ACTION_LOCK_CONSOLE = 0x20000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_ACTION_DISABLE_WAKES = 0x40000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_ACTION_CRITICAL = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_LEVEL_USER_NOTIFY_TEXT = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_LEVEL_USER_NOTIFY_SOUND = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_LEVEL_USER_NOTIFY_EXEC = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_USER_NOTIFY_BUTTON = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_USER_NOTIFY_SHUTDOWN = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { POWER_FORCE_TRIGGER_RESET = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _9 {
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Enable;
c2b7a98c21 2011-02-23        kinaba:   BYTE Spare[3];
c2b7a98c21 2011-02-23        kinaba:   DWORD BatteryLevel;
c2b7a98c21 2011-02-23        kinaba:   POWER_ACTION_POLICY PowerPolicy;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE MinSystemState;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _9 SYSTEM_POWER_LEVEL;
c2b7a98c21 2011-02-23        kinaba: alias _9* PSYSTEM_POWER_LEVEL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { NUM_DISCHARGE_POLICIES = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DISCHARGE_POLICY_CRITICAL = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DISCHARGE_POLICY_LOW = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { PO_THROTTLE_NONE = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PO_THROTTLE_CONSTANT = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PO_THROTTLE_DEGRADE = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PO_THROTTLE_ADAPTIVE = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { PO_THROTTLE_MAXIMUM = 4 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _SYSTEM_POWER_POLICY {
c2b7a98c21 2011-02-23        kinaba:   DWORD Revision;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   POWER_ACTION_POLICY PowerButton;
c2b7a98c21 2011-02-23        kinaba:   POWER_ACTION_POLICY SleepButton;
c2b7a98c21 2011-02-23        kinaba:   POWER_ACTION_POLICY LidClose;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE LidOpenWake;
c2b7a98c21 2011-02-23        kinaba:   DWORD Reserved;
c2b7a98c21 2011-02-23        kinaba:   POWER_ACTION_POLICY Idle;
c2b7a98c21 2011-02-23        kinaba:   DWORD IdleTimeout;
c2b7a98c21 2011-02-23        kinaba:   BYTE IdleSensitivity;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   BYTE DynamicThrottle;
c2b7a98c21 2011-02-23        kinaba:   BYTE Spare2[2];
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE MinSleep;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE MaxSleep;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE ReducedLatencySleep;
c2b7a98c21 2011-02-23        kinaba:   DWORD WinLogonFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD Spare3;
c2b7a98c21 2011-02-23        kinaba:   DWORD DozeS4Timeout;
c2b7a98c21 2011-02-23        kinaba:   DWORD BroadcastCapacityResolution;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_LEVEL DischargePolicy[NUM_DISCHARGE_POLICIES];
c2b7a98c21 2011-02-23        kinaba:   DWORD VideoTimeout;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN VideoDimDisplay;
c2b7a98c21 2011-02-23        kinaba:   DWORD VideoReserved[3];
c2b7a98c21 2011-02-23        kinaba:   DWORD SpindownTimeout;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN OptimizeForPower;
c2b7a98c21 2011-02-23        kinaba:   BYTE FanThrottleTolerance;
c2b7a98c21 2011-02-23        kinaba:   BYTE ForcedThrottle;
c2b7a98c21 2011-02-23        kinaba:   BYTE MinThrottle;
c2b7a98c21 2011-02-23        kinaba:   POWER_ACTION_POLICY OverThrottled;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_POWER_POLICY SYSTEM_POWER_POLICY;
c2b7a98c21 2011-02-23        kinaba: alias _SYSTEM_POWER_POLICY* PSYSTEM_POWER_POLICY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _PROCESSOR_POWER_POLICY_INFO {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeCheck;
c2b7a98c21 2011-02-23        kinaba:   DWORD DemoteLimit;
c2b7a98c21 2011-02-23        kinaba:   DWORD PromoteLimit;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   BYTE DemotePercent;
c2b7a98c21 2011-02-23        kinaba:   BYTE PromotePercent;
c2b7a98c21 2011-02-23        kinaba:   BYTE Spare[2];
c2b7a98c21 2011-02-23        kinaba: // DWORD                   AllowDemotion:1;
c2b7a98c21 2011-02-23        kinaba: // DWORD                   AllowPromotion:1;
c2b7a98c21 2011-02-23        kinaba: // DWORD                   Reserved:30;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _PROCESSOR_POWER_POLICY_INFO PROCESSOR_POWER_POLICY_INFO;
c2b7a98c21 2011-02-23        kinaba: alias _PROCESSOR_POWER_POLICY_INFO* PPROCESSOR_POWER_POLICY_INFO;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _PROCESSOR_POWER_POLICY {
c2b7a98c21 2011-02-23        kinaba:   DWORD Revision;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   BYTE DynamicThrottle;
c2b7a98c21 2011-02-23        kinaba:   BYTE Spare[3];
c2b7a98c21 2011-02-23        kinaba:   DWORD Reserved;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD PolicyCount;
c2b7a98c21 2011-02-23        kinaba:   PROCESSOR_POWER_POLICY_INFO Policy[3];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _PROCESSOR_POWER_POLICY PROCESSOR_POWER_POLICY;
c2b7a98c21 2011-02-23        kinaba: alias _PROCESSOR_POWER_POLICY* PPROCESSOR_POWER_POLICY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ADMINISTRATOR_POWER_POLICY {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE MinSleep;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE MaxSleep;
c2b7a98c21 2011-02-23        kinaba:   DWORD MinVideoTimeout;
c2b7a98c21 2011-02-23        kinaba:   DWORD MaxVideoTimeout;
c2b7a98c21 2011-02-23        kinaba:   DWORD MinSpindownTimeout;
c2b7a98c21 2011-02-23        kinaba:   DWORD MaxSpindownTimeout;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ADMINISTRATOR_POWER_POLICY ADMINISTRATOR_POWER_POLICY;
c2b7a98c21 2011-02-23        kinaba: alias _ADMINISTRATOR_POWER_POLICY* PADMINISTRATOR_POWER_POLICY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _10 {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN PowerButtonPresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN SleepButtonPresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN LidPresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN SystemS1;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN SystemS2;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN SystemS3;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN SystemS4;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN SystemS5;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN HiberFilePresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN FullWake;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN VideoDimPresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN ApmPresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN UpsPresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN ThermalControl;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN ProcessorThrottle;
c2b7a98c21 2011-02-23        kinaba:   BYTE ProcessorMinThrottle;
c2b7a98c21 2011-02-23        kinaba:   BYTE ProcessorMaxThrottle;
c2b7a98c21 2011-02-23        kinaba:   BYTE spare2[4];
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN DiskSpinDown;
c2b7a98c21 2011-02-23        kinaba:   BYTE spare3[8];
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN SystemBatteriesPresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN BatteriesAreShortTerm;
c2b7a98c21 2011-02-23        kinaba:   BATTERY_REPORTING_SCALE BatteryScale[3];
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE AcOnLineWake;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE SoftLidWake;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE RtcWake;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE MinDeviceWakeState;
c2b7a98c21 2011-02-23        kinaba:   SYSTEM_POWER_STATE DefaultLowLatencyWake;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _10 SYSTEM_POWER_CAPABILITIES;
c2b7a98c21 2011-02-23        kinaba: alias _10* PSYSTEM_POWER_CAPABILITIES;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _11 {
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN AcOnLine;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN BatteryPresent;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Charging;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Discharging;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Spare1[4];
c2b7a98c21 2011-02-23        kinaba:   DWORD MaxCapacity;
c2b7a98c21 2011-02-23        kinaba:   DWORD RemainingCapacity;
c2b7a98c21 2011-02-23        kinaba:   DWORD Rate;
c2b7a98c21 2011-02-23        kinaba:   DWORD EstimatedTime;
c2b7a98c21 2011-02-23        kinaba:   DWORD DefaultAlert1;
c2b7a98c21 2011-02-23        kinaba:   DWORD DefaultAlert2;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _11 SYSTEM_BATTERY_STATE;
c2b7a98c21 2011-02-23        kinaba: alias _11* PSYSTEM_BATTERY_STATE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _MAC
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align(4):
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DOS_SIGNATURE = 0x5A4D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_OS2_SIGNATURE = 0x454E }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_OS2_SIGNATURE_LE = 0x454C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_VXD_SIGNATURE = 0x454C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_NT_SIGNATURE = 0x00004550 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align(2):
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_DOS_HEADER {
c2b7a98c21 2011-02-23        kinaba:   WORD e_magic;
c2b7a98c21 2011-02-23        kinaba:   WORD e_cblp;
c2b7a98c21 2011-02-23        kinaba:   WORD e_cp;
c2b7a98c21 2011-02-23        kinaba:   WORD e_crlc;
c2b7a98c21 2011-02-23        kinaba:   WORD e_cparhdr;
c2b7a98c21 2011-02-23        kinaba:   WORD e_minalloc;
c2b7a98c21 2011-02-23        kinaba:   WORD e_maxalloc;
c2b7a98c21 2011-02-23        kinaba:   WORD e_ss;
c2b7a98c21 2011-02-23        kinaba:   WORD e_sp;
c2b7a98c21 2011-02-23        kinaba:   WORD e_csum;
c2b7a98c21 2011-02-23        kinaba:   WORD e_ip;
c2b7a98c21 2011-02-23        kinaba:   WORD e_cs;
c2b7a98c21 2011-02-23        kinaba:   WORD e_lfarlc;
c2b7a98c21 2011-02-23        kinaba:   WORD e_ovno;
c2b7a98c21 2011-02-23        kinaba:   WORD e_res[4];
c2b7a98c21 2011-02-23        kinaba:   WORD e_oemid;
c2b7a98c21 2011-02-23        kinaba:   WORD e_oeminfo;
c2b7a98c21 2011-02-23        kinaba:   WORD e_res2[10];
c2b7a98c21 2011-02-23        kinaba:   LONG e_lfanew;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_DOS_HEADER IMAGE_DOS_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_DOS_HEADER* PIMAGE_DOS_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_OS2_HEADER {
c2b7a98c21 2011-02-23        kinaba:   WORD ne_magic;
c2b7a98c21 2011-02-23        kinaba:   CHAR ne_ver;
c2b7a98c21 2011-02-23        kinaba:   CHAR ne_rev;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_enttab;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_cbenttab;
c2b7a98c21 2011-02-23        kinaba:   LONG ne_crc;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_flags;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_autodata;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_heap;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_stack;
c2b7a98c21 2011-02-23        kinaba:   LONG ne_csip;
c2b7a98c21 2011-02-23        kinaba:   LONG ne_sssp;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_cseg;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_cmod;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_cbnrestab;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_segtab;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_rsrctab;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_restab;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_modtab;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_imptab;
c2b7a98c21 2011-02-23        kinaba:   LONG ne_nrestab;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_cmovent;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_align;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_cres;
c2b7a98c21 2011-02-23        kinaba:   BYTE ne_exetyp;
c2b7a98c21 2011-02-23        kinaba:   BYTE ne_flagsothers;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_pretthunks;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_psegrefbytes;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_swaparea;
c2b7a98c21 2011-02-23        kinaba:   WORD ne_expver;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_OS2_HEADER IMAGE_OS2_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_OS2_HEADER* PIMAGE_OS2_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_VXD_HEADER {
c2b7a98c21 2011-02-23        kinaba:   WORD e32_magic;
c2b7a98c21 2011-02-23        kinaba:   BYTE e32_border;
c2b7a98c21 2011-02-23        kinaba:   BYTE e32_worder;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_level;
c2b7a98c21 2011-02-23        kinaba:   WORD e32_cpu;
c2b7a98c21 2011-02-23        kinaba:   WORD e32_os;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_ver;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_mflags;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_mpages;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_startobj;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_eip;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_stackobj;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_esp;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_pagesize;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_lastpagesize;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_fixupsize;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_fixupsum;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_ldrsize;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_ldrsum;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_objtab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_objcnt;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_objmap;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_itermap;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_rsrctab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_rsrccnt;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_restab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_enttab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_dirtab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_dircnt;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_fpagetab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_frectab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_impmod;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_impmodcnt;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_impproc;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_pagesum;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_datapage;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_preload;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_nrestab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_cbnrestab;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_nressum;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_autodata;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_debuginfo;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_debuglen;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_instpreload;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_instdemand;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_heapsize;
c2b7a98c21 2011-02-23        kinaba:   BYTE e32_res3[12];
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_winresoff;
c2b7a98c21 2011-02-23        kinaba:   DWORD e32_winreslen;
c2b7a98c21 2011-02-23        kinaba:   WORD e32_devid;
c2b7a98c21 2011-02-23        kinaba:   WORD e32_ddkver;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_VXD_HEADER IMAGE_VXD_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_VXD_HEADER* PIMAGE_VXD_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _MAC
c2b7a98c21 2011-02-23        kinaba: align:
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_FILE_HEADER {
c2b7a98c21 2011-02-23        kinaba:   WORD Machine;
c2b7a98c21 2011-02-23        kinaba:   WORD NumberOfSections;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   DWORD PointerToSymbolTable;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfSymbols;
c2b7a98c21 2011-02-23        kinaba:   WORD SizeOfOptionalHeader;
c2b7a98c21 2011-02-23        kinaba:   WORD Characteristics;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_FILE_HEADER IMAGE_FILE_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_FILE_HEADER* PIMAGE_FILE_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_FILE_HEADER = 20 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_RELOCS_STRIPPED = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_EXECUTABLE_IMAGE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_LINE_NUMS_STRIPPED = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_LOCAL_SYMS_STRIPPED = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_AGGRESIVE_WS_TRIM = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_LARGE_ADDRESS_AWARE = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_BYTES_REVERSED_LO = 0x0080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_32BIT_MACHINE = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_DEBUG_STRIPPED = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP = 0x0400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_NET_RUN_FROM_SWAP = 0x0800 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_SYSTEM = 0x1000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_DLL = 0x2000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_UP_SYSTEM_ONLY = 0x4000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_BYTES_REVERSED_HI = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_UNKNOWN = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_I386 = 0x014c }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_R3000 = 0x0162 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_R4000 = 0x0166 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_R10000 = 0x0168 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_WCEMIPSV2 = 0x0169 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_ALPHA = 0x0184 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_SH3 = 0x01a2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_SH3DSP = 0x01a3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_SH3E = 0x01a4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_SH4 = 0x01a6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_SH5 = 0x01a8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_ARM = 0x01c0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_THUMB = 0x01c2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_AM33 = 0x01d3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_POWERPC = 0x01F0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_POWERPCFP = 0x01f1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_IA64 = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_MIPS16 = 0x0266 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_ALPHA64 = 0x0284 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_MIPSFPU = 0x0366 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_MIPSFPU16 = 0x0466 }
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_FILE_MACHINE_ALPHA64 IMAGE_FILE_MACHINE_AXP64;
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_TRICORE = 0x0520 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_CEF = 0x0CEF }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_EBC = 0x0EBC }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_AMD64 = 0x8664 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_M32R = 0x9041 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_FILE_MACHINE_CEE = 0xC0EE }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_DATA_DIRECTORY {
c2b7a98c21 2011-02-23        kinaba:   DWORD VirtualAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD Size;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_DATA_DIRECTORY IMAGE_DATA_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_DATA_DIRECTORY* PIMAGE_DATA_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_NUMBEROF_DIRECTORY_ENTRIES = 16 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_OPTIONAL_HEADER {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   WORD Magic;
c2b7a98c21 2011-02-23        kinaba:   BYTE MajorLinkerVersion;
c2b7a98c21 2011-02-23        kinaba:   BYTE MinorLinkerVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfInitializedData;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfUninitializedData;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfEntryPoint;
c2b7a98c21 2011-02-23        kinaba:   DWORD BaseOfCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD BaseOfData;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD ImageBase;
c2b7a98c21 2011-02-23        kinaba:   DWORD SectionAlignment;
c2b7a98c21 2011-02-23        kinaba:   DWORD FileAlignment;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorOperatingSystemVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorOperatingSystemVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorImageVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorImageVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorSubsystemVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorSubsystemVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD Win32VersionValue;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfImage;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfHeaders;
c2b7a98c21 2011-02-23        kinaba:   DWORD CheckSum;
c2b7a98c21 2011-02-23        kinaba:   WORD Subsystem;
c2b7a98c21 2011-02-23        kinaba:   WORD DllCharacteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfStackReserve;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfStackCommit;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfHeapReserve;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfHeapCommit;
c2b7a98c21 2011-02-23        kinaba:   DWORD LoaderFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfRvaAndSizes;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_OPTIONAL_HEADER IMAGE_OPTIONAL_HEADER32;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_OPTIONAL_HEADER* PIMAGE_OPTIONAL_HEADER32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_ROM_OPTIONAL_HEADER {
c2b7a98c21 2011-02-23        kinaba:   WORD Magic;
c2b7a98c21 2011-02-23        kinaba:   BYTE MajorLinkerVersion;
c2b7a98c21 2011-02-23        kinaba:   BYTE MinorLinkerVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfInitializedData;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfUninitializedData;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfEntryPoint;
c2b7a98c21 2011-02-23        kinaba:   DWORD BaseOfCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD BaseOfData;
c2b7a98c21 2011-02-23        kinaba:   DWORD BaseOfBss;
c2b7a98c21 2011-02-23        kinaba:   DWORD GprMask;
c2b7a98c21 2011-02-23        kinaba:   DWORD CprMask[4];
c2b7a98c21 2011-02-23        kinaba:   DWORD GpValue;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ROM_OPTIONAL_HEADER IMAGE_ROM_OPTIONAL_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ROM_OPTIONAL_HEADER* PIMAGE_ROM_OPTIONAL_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_OPTIONAL_HEADER64 {
c2b7a98c21 2011-02-23        kinaba:   WORD Magic;
c2b7a98c21 2011-02-23        kinaba:   BYTE MajorLinkerVersion;
c2b7a98c21 2011-02-23        kinaba:   BYTE MinorLinkerVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfInitializedData;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfUninitializedData;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfEntryPoint;
c2b7a98c21 2011-02-23        kinaba:   DWORD BaseOfCode;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ImageBase;
c2b7a98c21 2011-02-23        kinaba:   DWORD SectionAlignment;
c2b7a98c21 2011-02-23        kinaba:   DWORD FileAlignment;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorOperatingSystemVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorOperatingSystemVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorImageVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorImageVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorSubsystemVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorSubsystemVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD Win32VersionValue;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfImage;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfHeaders;
c2b7a98c21 2011-02-23        kinaba:   DWORD CheckSum;
c2b7a98c21 2011-02-23        kinaba:   WORD Subsystem;
c2b7a98c21 2011-02-23        kinaba:   WORD DllCharacteristics;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG SizeOfStackReserve;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG SizeOfStackCommit;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG SizeOfHeapReserve;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG SizeOfHeapCommit;
c2b7a98c21 2011-02-23        kinaba:   DWORD LoaderFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfRvaAndSizes;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_OPTIONAL_HEADER64 IMAGE_OPTIONAL_HEADER64;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_OPTIONAL_HEADER64* PIMAGE_OPTIONAL_HEADER64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_ROM_OPTIONAL_HEADER = 56 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_STD_OPTIONAL_HEADER = 28 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_NT_OPTIONAL32_HEADER = 224 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_NT_OPTIONAL64_HEADER = 240 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_NT_OPTIONAL_HDR32_MAGIC = 0x10b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_NT_OPTIONAL_HDR64_MAGIC = 0x20b }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_ROM_OPTIONAL_HDR_MAGIC = 0x107 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _WIN64
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_OPTIONAL_HEADER32 IMAGE_OPTIONAL_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias PIMAGE_OPTIONAL_HEADER32 PIMAGE_OPTIONAL_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_SIZEOF_NT_OPTIONAL32_HEADER IMAGE_SIZEOF_NT_OPTIONAL_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_NT_OPTIONAL_HDR32_MAGIC IMAGE_NT_OPTIONAL_HDR_MAGIC;
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_NT_HEADERS64 {
c2b7a98c21 2011-02-23        kinaba:   DWORD Signature;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_FILE_HEADER FileHeader;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_OPTIONAL_HEADER64 OptionalHeader;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_NT_HEADERS64 IMAGE_NT_HEADERS64;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_NT_HEADERS64* PIMAGE_NT_HEADERS64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_NT_HEADERS {
c2b7a98c21 2011-02-23        kinaba:   DWORD Signature;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_FILE_HEADER FileHeader;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_OPTIONAL_HEADER32 OptionalHeader;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_NT_HEADERS IMAGE_NT_HEADERS32;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_NT_HEADERS* PIMAGE_NT_HEADERS32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_ROM_HEADERS {
c2b7a98c21 2011-02-23        kinaba:   IMAGE_FILE_HEADER FileHeader;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_ROM_OPTIONAL_HEADER OptionalHeader;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ROM_HEADERS IMAGE_ROM_HEADERS;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ROM_HEADERS* PIMAGE_ROM_HEADERS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _WIN64
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_NT_HEADERS32 IMAGE_NT_HEADERS;
c2b7a98c21 2011-02-23        kinaba: alias PIMAGE_NT_HEADERS32 PIMAGE_NT_HEADERS;
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define IMAGE_FIRST_SECTION( ntheader ) ((PIMAGE_SECTION_HEADER) ((ULONG_PTR)ntheader + FIELD_OFFSET( IMAGE_NT_HEADERS, OptionalHeader ) + ((PIMAGE_NT_HEADERS)(ntheader))->FileHeader.SizeOfOptionalHeader ))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_UNKNOWN = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_NATIVE = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_WINDOWS_GUI = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_WINDOWS_CUI = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_OS2_CUI = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_POSIX_CUI = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_NATIVE_WINDOWS = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_WINDOWS_CE_GUI = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_EFI_APPLICATION = 10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER = 11 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER = 12 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_EFI_ROM = 13 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SUBSYSTEM_XBOX = 14 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DLLCHARACTERISTICS_NO_BIND = 0x0800 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DLLCHARACTERISTICS_WDM_DRIVER = 0x2000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_EXPORT = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_IMPORT = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_RESOURCE = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_EXCEPTION = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_SECURITY = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_BASERELOC = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_DEBUG = 6 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_ARCHITECTURE = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_GLOBALPTR = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_TLS = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG = 10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT = 11 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_IAT = 12 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT = 13 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR = 14 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct ANON_OBJECT_HEADER {
c2b7a98c21 2011-02-23        kinaba:   WORD Sig1;
c2b7a98c21 2011-02-23        kinaba:   WORD Sig2;
c2b7a98c21 2011-02-23        kinaba:   WORD Version;
c2b7a98c21 2011-02-23        kinaba:   WORD Machine;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   CLSID ClassID;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfData;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_SHORT_NAME = 8 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_SECTION_HEADER {
c2b7a98c21 2011-02-23        kinaba:   BYTE Name[IMAGE_SIZEOF_SHORT_NAME];
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   DWORD PhysicalAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD VirtualSize;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD VirtualAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfRawData;
c2b7a98c21 2011-02-23        kinaba:   DWORD PointerToRawData;
c2b7a98c21 2011-02-23        kinaba:   DWORD PointerToRelocations;
c2b7a98c21 2011-02-23        kinaba:   DWORD PointerToLinenumbers;
c2b7a98c21 2011-02-23        kinaba:   WORD NumberOfRelocations;
c2b7a98c21 2011-02-23        kinaba:   WORD NumberOfLinenumbers;
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_SECTION_HEADER IMAGE_SECTION_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_SECTION_HEADER* PIMAGE_SECTION_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_SECTION_HEADER = 40 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_TYPE_NO_PAD = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_CNT_CODE = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_CNT_INITIALIZED_DATA = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_CNT_UNINITIALIZED_DATA = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_LNK_OTHER = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_LNK_INFO = 0x00000200 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_LNK_REMOVE = 0x00000800 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_LNK_COMDAT = 0x00001000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_NO_DEFER_SPEC_EXC = 0x00004000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_GPREL = 0x00008000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_FARDATA = 0x00008000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_PURGEABLE = 0x00020000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_16BIT = 0x00020000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_LOCKED = 0x00040000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_PRELOAD = 0x00080000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_1BYTES = 0x00100000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_2BYTES = 0x00200000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_4BYTES = 0x00300000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_8BYTES = 0x00400000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_16BYTES = 0x00500000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_32BYTES = 0x00600000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_64BYTES = 0x00700000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_128BYTES = 0x00800000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_256BYTES = 0x00900000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_512BYTES = 0x00A00000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_1024BYTES = 0x00B00000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_2048BYTES = 0x00C00000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_4096BYTES = 0x00D00000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_8192BYTES = 0x00E00000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_ALIGN_MASK = 0x00F00000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_LNK_NRELOC_OVFL = 0x01000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_DISCARDABLE = 0x02000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_NOT_CACHED = 0x04000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_NOT_PAGED = 0x08000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_SHARED = 0x10000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_EXECUTE = 0x20000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_READ = 0x40000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_MEM_WRITE = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SCN_SCALE_INDEX = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _MAC
c2b7a98c21 2011-02-23        kinaba: align(2):
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_SYMBOL {
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   BYTE ShortName[8];
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   DWORD Short;
c2b7a98c21 2011-02-23        kinaba:   DWORD Long;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD LongName[2];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD Value;
c2b7a98c21 2011-02-23        kinaba:   SHORT SectionNumber;
c2b7a98c21 2011-02-23        kinaba:   WORD Type;
c2b7a98c21 2011-02-23        kinaba:   BYTE StorageClass;
c2b7a98c21 2011-02-23        kinaba:   BYTE NumberOfAuxSymbols;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_SYMBOL IMAGE_SYMBOL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_SYMBOL* PIMAGE_SYMBOL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_SYMBOL = 18 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : SHORT { IMAGE_SYM_UNDEFINED = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : SHORT { IMAGE_SYM_ABSOLUTE = -1 }
c2b7a98c21 2011-02-23        kinaba: enum : SHORT { IMAGE_SYM_DEBUG = -2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_SECTION_MAX = 0xFEFF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_NULL = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_VOID = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_CHAR = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_SHORT = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_INT = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_LONG = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_FLOAT = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_DOUBLE = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_STRUCT = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_UNION = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_ENUM = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_MOE = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_BYTE = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_WORD = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_UINT = 0x000E }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_DWORD = 0x000F }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_TYPE_PCODE = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_DTYPE_NULL = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_DTYPE_POINTER = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_DTYPE_FUNCTION = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_DTYPE_ARRAY = 3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : BYTE { IMAGE_SYM_CLASS_END_OF_FUNCTION = cast(BYTE)-1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_NULL = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_AUTOMATIC = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_EXTERNAL = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_STATIC = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_REGISTER = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_EXTERNAL_DEF = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_LABEL = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_UNDEFINED_LABEL = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_MEMBER_OF_STRUCT = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_ARGUMENT = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_STRUCT_TAG = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_MEMBER_OF_UNION = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_UNION_TAG = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_TYPE_DEFINITION = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_UNDEFINED_STATIC = 0x000E }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_ENUM_TAG = 0x000F }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_MEMBER_OF_ENUM = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_REGISTER_PARAM = 0x0011 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_BIT_FIELD = 0x0012 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_FAR_EXTERNAL = 0x0044 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_BLOCK = 0x0064 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_FUNCTION = 0x0065 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_END_OF_STRUCT = 0x0066 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_FILE = 0x0067 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_SECTION = 0x0068 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_WEAK_EXTERNAL = 0x0069 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SYM_CLASS_CLR_TOKEN = 0x006B }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { N_BTMASK = 0x000F }
c2b7a98c21 2011-02-23        kinaba: enum : uint { N_TMASK = 0x0030 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { N_TMASK1 = 0x00C0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { N_TMASK2 = 0x00F0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { N_BTSHFT = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { N_TSHIFT = 2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: BYTE BTYPE(BYTE x){ return x & N_BTMASK; }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef ISPTR
c2b7a98c21 2011-02-23        kinaba: bit ISPTR(uint x){ return (x & N_TMASK) == (IMAGE_SYM_DTYPE_POINTER << N_BTSHFT); }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef ISFCN
c2b7a98c21 2011-02-23        kinaba: bit ISFCN(uint x){ return (x & N_TMASK) == (IMAGE_SYM_DTYPE_FUNCTION << N_BTSHFT); }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef ISARY
c2b7a98c21 2011-02-23        kinaba: bit ISARY(uint x){ return (x & N_TMASK) == (IMAGE_SYM_DTYPE_ARRAY << N_BTSHFT); }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef ISTAG
c2b7a98c21 2011-02-23        kinaba: bit ISTAG(uint x){ return x == IMAGE_SYM_CLASS_STRUCT_TAG || x == IMAGE_SYM_CLASS_UNION_TAG || x == IMAGE_SYM_CLASS_ENUM_TAG; }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef INCREF
c2b7a98c21 2011-02-23        kinaba: uint INCREF(uint x){ return ((x&~N_BTMASK)<<N_TSHIFT)|(IMAGE_SYM_DTYPE_POINTER<<N_BTSHFT)|(x&N_BTMASK); }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #ifndef DECREF
c2b7a98c21 2011-02-23        kinaba: uint DECREF(uint x){ return ((x >>> N_TSHIFT) & ~N_BTMASK)|(x & N_BTMASK); }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: union _IMAGE_AUX_SYMBOL {
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   DWORD TagIndex;
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   WORD Linenumber;
c2b7a98c21 2011-02-23        kinaba:   WORD Size;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD TotalSize;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   DWORD PointerToLinenumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD PointerToNextFunction;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   WORD Dimension[4];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   WORD TvIndex;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   BYTE Name[IMAGE_SIZEOF_SYMBOL];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   DWORD Length;
c2b7a98c21 2011-02-23        kinaba:   WORD NumberOfRelocations;
c2b7a98c21 2011-02-23        kinaba:   WORD NumberOfLinenumbers;
c2b7a98c21 2011-02-23        kinaba:   DWORD CheckSum;
c2b7a98c21 2011-02-23        kinaba:   SHORT Number;
c2b7a98c21 2011-02-23        kinaba:   BYTE Selection;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_AUX_SYMBOL IMAGE_AUX_SYMBOL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_AUX_SYMBOL* PIMAGE_AUX_SYMBOL;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_AUX_SYMBOL = 18 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int IMAGE_AUX_SYMBOL_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF = 1,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align(2):
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct IMAGE_AUX_SYMBOL_TOKEN_DEF {
c2b7a98c21 2011-02-23        kinaba:   BYTE bAuxType;
c2b7a98c21 2011-02-23        kinaba:   BYTE bReserved;
c2b7a98c21 2011-02-23        kinaba:   DWORD SymbolTableIndex;
c2b7a98c21 2011-02-23        kinaba:   BYTE rgbReserved[12];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_AUX_SYMBOL_TOKEN_DEF* PIMAGE_AUX_SYMBOL_TOKEN_DEF;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align:
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_COMDAT_SELECT_NODUPLICATES = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_COMDAT_SELECT_ANY = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_COMDAT_SELECT_SAME_SIZE = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_COMDAT_SELECT_EXACT_MATCH = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_COMDAT_SELECT_ASSOCIATIVE = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_COMDAT_SELECT_LARGEST = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_COMDAT_SELECT_NEWEST = 7 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_WEAK_EXTERN_SEARCH_LIBRARY = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_WEAK_EXTERN_SEARCH_ALIAS = 3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_RELOCATION {
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   DWORD VirtualAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD RelocCount;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD SymbolTableIndex;
c2b7a98c21 2011-02-23        kinaba:   WORD Type;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RELOCATION IMAGE_RELOCATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_RELOCATION* PIMAGE_RELOCATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_RELOCATION = 10 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_DIR16 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_REL16 = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_DIR32 = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_DIR32NB = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_SEG12 = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_SECTION = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_SECREL = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_TOKEN = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_SECREL7 = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_I386_REL32 = 0x0014 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_REFHALF = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_REFWORD = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_JMPADDR = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_REFHI = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_REFLO = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_GPREL = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_LITERAL = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_SECTION = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_SECREL = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_SECRELLO = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_SECRELHI = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_TOKEN = 0x000E }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_JMPADDR16 = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_REFWORDNB = 0x0022 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_MIPS_PAIR = 0x0025 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_REFLONG = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_REFQUAD = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_GPREL32 = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_LITERAL = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_LITUSE = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_GPDISP = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_BRADDR = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_HINT = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_INLINE_REFLONG = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_REFHI = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_REFLO = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_PAIR = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_MATCH = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_SECTION = 0x000E }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_SECREL = 0x000F }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_REFLONGNB = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_SECRELLO = 0x0011 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_SECRELHI = 0x0012 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_REFQ3 = 0x0013 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_REFQ2 = 0x0014 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_REFQ1 = 0x0015 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_GPRELLO = 0x0016 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ALPHA_GPRELHI = 0x0017 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_ADDR64 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_ADDR32 = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_ADDR24 = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_ADDR16 = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_ADDR14 = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_REL24 = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_REL14 = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_TOCREL16 = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_TOCREL14 = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_ADDR32NB = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_SECREL = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_SECTION = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_IFGLUE = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_IMGLUE = 0x000E }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_SECREL16 = 0x000F }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_REFHI = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_REFLO = 0x0011 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_PAIR = 0x0012 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_SECRELLO = 0x0013 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_SECRELHI = 0x0014 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_GPREL = 0x0015 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_TOKEN = 0x0016 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_TYPEMASK = 0x00FF }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_NEG = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_BRTAKEN = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_BRNTAKEN = 0x0400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_PPC_TOCDEFN = 0x0800 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT16 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT32 = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT8 = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT8_WORD = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT8_LONG = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT4 = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT4_WORD = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT4_LONG = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_PCREL8_WORD = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_PCREL8_LONG = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_PCREL12_WORD = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_STARTOF_SECTION = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_SIZEOF_SECTION = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_SECTION = 0x000E }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_SECREL = 0x000F }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_DIRECT32_NB = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_GPREL4_LONG = 0x0011 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_SH3_TOKEN = 0x0012 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_ADDR32 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_ADDR32NB = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_BRANCH24 = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_BRANCH11 = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_TOKEN = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_GPREL12 = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_GPREL7 = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_BLX24 = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_BLX11 = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_SECTION = 0x000E }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_ARM_SECREL = 0x000F }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_ADDR32 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_ADDR32NB = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_CALL32 = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_FUNCINFO = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_REL32_1 = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_REL32_2 = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_SECREL = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_SECTION = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AM_TOKEN = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_ADDR64 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_ADDR32 = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_ADDR32NB = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_REL32 = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_REL32_1 = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_REL32_2 = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_REL32_3 = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_REL32_4 = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_REL32_5 = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_SECTION = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_SECREL = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_SECREL7 = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_AMD64_TOKEN = 0x000D }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_IMM14 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_IMM22 = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_IMM64 = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_DIR32 = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_DIR64 = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_PCREL21B = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_PCREL21M = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_PCREL21F = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_GPREL22 = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_LTOFF22 = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_SECTION = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_SECREL22 = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_SECREL64I = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_SECREL32 = 0x000E }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_DIR32NB = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_SREL14 = 0x0011 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_SREL22 = 0x0012 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_SREL32 = 0x0013 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_UREL32 = 0x0014 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_PCREL60X = 0x0015 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_PCREL60B = 0x0016 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_PCREL60F = 0x0017 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_PCREL60I = 0x0018 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_PCREL60M = 0x0019 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_IMMGPREL64 = 0x001A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_TOKEN = 0x001B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_GPREL32 = 0x001C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_IA64_ADDEND = 0x001F }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEF_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEF_ADDR32 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEF_ADDR64 = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEF_ADDR32NB = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEF_SECTION = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEF_SECREL = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEF_TOKEN = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEE_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEE_ADDR32 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEE_ADDR64 = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEE_ADDR32NB = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEE_SECTION = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEE_SECREL = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_CEE_TOKEN = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_ABSOLUTE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_ADDR32 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_ADDR32NB = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_ADDR24 = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_GPREL16 = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_PCREL24 = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_PCREL16 = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_PCREL8 = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_REFHALF = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_REFHI = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_REFLO = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_PAIR = 0x000B }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_SECTION = 0x000C }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_SECREL32 = 0x000D }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_M32R_TOKEN = 0x000E }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define EXT_IMM64(Value, Address, Size, InstPos, ValPos) Value |= (((ULONGLONG)((*(Address) >> InstPos) & (((ULONGLONG)1 << Size) - 1))) << ValPos)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define INS_IMM64(Value, Address, Size, InstPos, ValPos) *(PDWORD)Address = (*(PDWORD)Address & ~(((1 << Size) - 1) << InstPos)) | ((DWORD)((((ULONGLONG)Value >> ValPos) & (((ULONGLONG)1 << Size) - 1))) << InstPos)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM7B_INST_WORD_X = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM7B_SIZE_X = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM7B_INST_WORD_POS_X = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM7B_VAL_POS_X = 0 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM9D_INST_WORD_X = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM9D_SIZE_X = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM9D_INST_WORD_POS_X = 18 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM9D_VAL_POS_X = 7 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM5C_INST_WORD_X = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM5C_SIZE_X = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM5C_INST_WORD_POS_X = 13 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM5C_VAL_POS_X = 16 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IC_INST_WORD_X = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IC_SIZE_X = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IC_INST_WORD_POS_X = 12 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IC_VAL_POS_X = 21 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41a_INST_WORD_X = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41a_SIZE_X = 10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41a_INST_WORD_POS_X = 14 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41a_VAL_POS_X = 22 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41b_INST_WORD_X = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41b_SIZE_X = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41b_INST_WORD_POS_X = 24 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41b_VAL_POS_X = 32 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41c_INST_WORD_X = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41c_SIZE_X = 23 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41c_INST_WORD_POS_X = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_IMM41c_VAL_POS_X = 40 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_SIGN_INST_WORD_X = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_SIGN_SIZE_X = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_SIGN_INST_WORD_POS_X = 27 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EMARCH_ENC_I17_SIGN_VAL_POS_X = 63 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_LINENUMBER {
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   DWORD SymbolTableIndex;
c2b7a98c21 2011-02-23        kinaba:   DWORD VirtualAddress;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   WORD Linenumber;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_LINENUMBER IMAGE_LINENUMBER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_LINENUMBER* PIMAGE_LINENUMBER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_LINENUMBER = 6 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _MAC
c2b7a98c21 2011-02-23        kinaba: align:
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_BASE_RELOCATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD VirtualAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfBlock;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_BASE_RELOCATION IMAGE_BASE_RELOCATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_BASE_RELOCATION* PIMAGE_BASE_RELOCATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_BASE_RELOCATION = 8 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_ABSOLUTE = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_HIGH = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_LOW = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_HIGHLOW = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_HIGHADJ = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_MIPS_JMPADDR = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_MIPS_JMPADDR16 = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_IA64_IMM64 = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_REL_BASED_DIR64 = 10 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_ARCHIVE_START_SIZE = 8 }
c2b7a98c21 2011-02-23        kinaba: const char[] IMAGE_ARCHIVE_START = "!<arch>\n";
c2b7a98c21 2011-02-23        kinaba: const char[] IMAGE_ARCHIVE_END = "`\n";
c2b7a98c21 2011-02-23        kinaba: const char[] IMAGE_ARCHIVE_PAD = "\n";
c2b7a98c21 2011-02-23        kinaba: const char[] IMAGE_ARCHIVE_LINKER_MEMBER = "/ ";
c2b7a98c21 2011-02-23        kinaba: const char[] IMAGE_ARCHIVE_LONGNAMES_MEMBER = "// ";
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_ARCHIVE_MEMBER_HEADER {
c2b7a98c21 2011-02-23        kinaba:   BYTE Name[16];
c2b7a98c21 2011-02-23        kinaba:   BYTE Date[12];
c2b7a98c21 2011-02-23        kinaba:   BYTE UserID[6];
c2b7a98c21 2011-02-23        kinaba:   BYTE GroupID[6];
c2b7a98c21 2011-02-23        kinaba:   BYTE Mode[8];
c2b7a98c21 2011-02-23        kinaba:   BYTE Size[10];
c2b7a98c21 2011-02-23        kinaba:   BYTE EndHeader[2];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ARCHIVE_MEMBER_HEADER IMAGE_ARCHIVE_MEMBER_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ARCHIVE_MEMBER_HEADER* PIMAGE_ARCHIVE_MEMBER_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR = 60 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_EXPORT_DIRECTORY {
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD Name;
c2b7a98c21 2011-02-23        kinaba:   DWORD Base;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfFunctions;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfNames;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfFunctions;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfNames;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfNameOrdinals;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_EXPORT_DIRECTORY IMAGE_EXPORT_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_EXPORT_DIRECTORY* PIMAGE_EXPORT_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_IMPORT_BY_NAME {
c2b7a98c21 2011-02-23        kinaba:   WORD Hint;
c2b7a98c21 2011-02-23        kinaba:   BYTE Name[1];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_IMPORT_BY_NAME IMAGE_IMPORT_BY_NAME;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_IMPORT_BY_NAME* PIMAGE_IMPORT_BY_NAME;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align(8):
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_THUNK_DATA64 {
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ForwarderString;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG Function;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG Ordinal;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG AddressOfData;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_THUNK_DATA64 IMAGE_THUNK_DATA64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_THUNK_DATA64* PIMAGE_THUNK_DATA64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align:
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_THUNK_DATA32 {
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   DWORD ForwarderString;
c2b7a98c21 2011-02-23        kinaba:   DWORD Function;
c2b7a98c21 2011-02-23        kinaba:   DWORD Ordinal;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfData;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_THUNK_DATA32 IMAGE_THUNK_DATA32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_THUNK_DATA32* PIMAGE_THUNK_DATA32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: const ulong IMAGE_ORDINAL_FLAG64 = 0x8000000000000000;
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_ORDINAL_FLAG32 = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: ulong IMAGE_ORDINAL64(ulong Ordinal){ return Ordinal & 0xffff; }
c2b7a98c21 2011-02-23        kinaba: uint IMAGE_ORDINAL32(uint Ordinal){ return Ordinal & 0xffff; }
c2b7a98c21 2011-02-23        kinaba: bit IMAGE_SNAP_BY_ORDINAL64(ulong Ordinal){ return (Ordinal & IMAGE_ORDINAL_FLAG64) != 0; }
c2b7a98c21 2011-02-23        kinaba: bit IMAGE_SNAP_BY_ORDINAL32(uint Ordinal){ return (Ordinal & IMAGE_ORDINAL_FLAG32) != 0; }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) alias VOID function( PVOID DllHandle, DWORD Reason, PVOID Reserved ) PIMAGE_TLS_CALLBACK;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_TLS_DIRECTORY64 {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG StartAddressOfRawData;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG EndAddressOfRawData;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG AddressOfIndex;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG AddressOfCallBacks;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfZeroFill;
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_TLS_DIRECTORY64 IMAGE_TLS_DIRECTORY64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_TLS_DIRECTORY64* PIMAGE_TLS_DIRECTORY64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_TLS_DIRECTORY32 {
c2b7a98c21 2011-02-23        kinaba:   DWORD StartAddressOfRawData;
c2b7a98c21 2011-02-23        kinaba:   DWORD EndAddressOfRawData;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfIndex;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfCallBacks;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfZeroFill;
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_TLS_DIRECTORY32 IMAGE_TLS_DIRECTORY32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_TLS_DIRECTORY32* PIMAGE_TLS_DIRECTORY32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _WIN64
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_ORDINAL_FLAG32 IMAGE_ORDINAL_FLAG;
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_ORDINAL32 IMAGE_ORDINAL;
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_THUNK_DATA32 IMAGE_THUNK_DATA;
c2b7a98c21 2011-02-23        kinaba: alias PIMAGE_THUNK_DATA32 PIMAGE_THUNK_DATA;
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_SNAP_BY_ORDINAL32 IMAGE_SNAP_BY_ORDINAL;
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_TLS_DIRECTORY32 IMAGE_TLS_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: alias PIMAGE_TLS_DIRECTORY32 PIMAGE_TLS_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_IMPORT_DESCRIPTOR {
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD OriginalFirstThunk;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD ForwarderChain;
c2b7a98c21 2011-02-23        kinaba:   DWORD Name;
c2b7a98c21 2011-02-23        kinaba:   DWORD FirstThunk;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_IMPORT_DESCRIPTOR IMAGE_IMPORT_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_IMPORT_DESCRIPTOR* PIMAGE_IMPORT_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_BOUND_IMPORT_DESCRIPTOR {
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   WORD OffsetModuleName;
c2b7a98c21 2011-02-23        kinaba:   WORD NumberOfModuleForwarderRefs;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_BOUND_IMPORT_DESCRIPTOR IMAGE_BOUND_IMPORT_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_BOUND_IMPORT_DESCRIPTOR* PIMAGE_BOUND_IMPORT_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_BOUND_FORWARDER_REF {
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   WORD OffsetModuleName;
c2b7a98c21 2011-02-23        kinaba:   WORD Reserved;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_BOUND_FORWARDER_REF IMAGE_BOUND_FORWARDER_REF;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_BOUND_FORWARDER_REF* PIMAGE_BOUND_FORWARDER_REF;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_RESOURCE_DIRECTORY {
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD NumberOfNamedEntries;
c2b7a98c21 2011-02-23        kinaba:   WORD NumberOfIdEntries;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DIRECTORY IMAGE_RESOURCE_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DIRECTORY* PIMAGE_RESOURCE_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_RESOURCE_NAME_IS_STRING = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_RESOURCE_DATA_IS_DIRECTORY = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_RESOURCE_DIRECTORY_ENTRY {
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba: // DWORD NameOffset:31;
c2b7a98c21 2011-02-23        kinaba: // DWORD NameIsString:1;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD Name;
c2b7a98c21 2011-02-23        kinaba:   WORD Id;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   DWORD OffsetToData;
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba: // DWORD   OffsetToDirectory:31;
c2b7a98c21 2011-02-23        kinaba: // DWORD   DataIsDirectory:1;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DIRECTORY_ENTRY IMAGE_RESOURCE_DIRECTORY_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DIRECTORY_ENTRY* PIMAGE_RESOURCE_DIRECTORY_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_RESOURCE_DIRECTORY_STRING {
c2b7a98c21 2011-02-23        kinaba:   WORD Length;
c2b7a98c21 2011-02-23        kinaba:   CHAR NameString[ 1 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DIRECTORY_STRING IMAGE_RESOURCE_DIRECTORY_STRING;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DIRECTORY_STRING* PIMAGE_RESOURCE_DIRECTORY_STRING;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_RESOURCE_DIR_STRING_U {
c2b7a98c21 2011-02-23        kinaba:   WORD Length;
c2b7a98c21 2011-02-23        kinaba:   WCHAR NameString[ 1 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DIR_STRING_U IMAGE_RESOURCE_DIR_STRING_U;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DIR_STRING_U* PIMAGE_RESOURCE_DIR_STRING_U;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_RESOURCE_DATA_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   DWORD OffsetToData;
c2b7a98c21 2011-02-23        kinaba:   DWORD Size;
c2b7a98c21 2011-02-23        kinaba:   DWORD CodePage;
c2b7a98c21 2011-02-23        kinaba:   DWORD Reserved;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DATA_ENTRY IMAGE_RESOURCE_DATA_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RESOURCE_DATA_ENTRY* PIMAGE_RESOURCE_DATA_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _12 {
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD GlobalFlagsClear;
c2b7a98c21 2011-02-23        kinaba:   DWORD GlobalFlagsSet;
c2b7a98c21 2011-02-23        kinaba:   DWORD CriticalSectionDefaultTimeout;
c2b7a98c21 2011-02-23        kinaba:   DWORD DeCommitFreeBlockThreshold;
c2b7a98c21 2011-02-23        kinaba:   DWORD DeCommitTotalFreeThreshold;
c2b7a98c21 2011-02-23        kinaba:   DWORD LockPrefixTable;
c2b7a98c21 2011-02-23        kinaba:   DWORD MaximumAllocationSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD VirtualMemoryThreshold;
c2b7a98c21 2011-02-23        kinaba:   DWORD ProcessHeapFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD ProcessAffinityMask;
c2b7a98c21 2011-02-23        kinaba:   WORD CSDVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD Reserved1;
c2b7a98c21 2011-02-23        kinaba:   DWORD EditList;
c2b7a98c21 2011-02-23        kinaba:   DWORD Reserved[ 1 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _12 IMAGE_LOAD_CONFIG_DIRECTORY32;
c2b7a98c21 2011-02-23        kinaba: alias _12* PIMAGE_LOAD_CONFIG_DIRECTORY32;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _13 {
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD GlobalFlagsClear;
c2b7a98c21 2011-02-23        kinaba:   DWORD GlobalFlagsSet;
c2b7a98c21 2011-02-23        kinaba:   DWORD CriticalSectionDefaultTimeout;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG DeCommitFreeBlockThreshold;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG DeCommitTotalFreeThreshold;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG LockPrefixTable;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG MaximumAllocationSize;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG VirtualMemoryThreshold;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ProcessAffinityMask;
c2b7a98c21 2011-02-23        kinaba:   DWORD ProcessHeapFlags;
c2b7a98c21 2011-02-23        kinaba:   WORD CSDVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD Reserved1;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG EditList;
c2b7a98c21 2011-02-23        kinaba:   DWORD Reserved[ 2 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _13 IMAGE_LOAD_CONFIG_DIRECTORY64;
c2b7a98c21 2011-02-23        kinaba: alias _13* PIMAGE_LOAD_CONFIG_DIRECTORY64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _WIN64
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_LOAD_CONFIG_DIRECTORY32 IMAGE_LOAD_CONFIG_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: alias PIMAGE_LOAD_CONFIG_DIRECTORY32 PIMAGE_LOAD_CONFIG_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_CE_RUNTIME_FUNCTION_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   DWORD FuncStart;
c2b7a98c21 2011-02-23        kinaba: // DWORD PrologLen : 8;
c2b7a98c21 2011-02-23        kinaba: // DWORD FuncLen : 22;
c2b7a98c21 2011-02-23        kinaba: // DWORD ThirtyTwoBit : 1;
c2b7a98c21 2011-02-23        kinaba: // DWORD ExceptionFlag : 1;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_CE_RUNTIME_FUNCTION_ENTRY IMAGE_CE_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_CE_RUNTIME_FUNCTION_ENTRY* PIMAGE_CE_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG BeginAddress;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG EndAddress;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ExceptionHandler;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG HandlerData;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG PrologEndAddress;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY* PIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   DWORD BeginAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD EndAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD ExceptionHandler;
c2b7a98c21 2011-02-23        kinaba:   DWORD HandlerData;
c2b7a98c21 2011-02-23        kinaba:   DWORD PrologEndAddress;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY* PIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_RUNTIME_FUNCTION_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   DWORD BeginAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD EndAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD UnwindInfoAddress;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RUNTIME_FUNCTION_ENTRY* _PIMAGE_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RUNTIME_FUNCTION_ENTRY IMAGE_IA64_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _PIMAGE_RUNTIME_FUNCTION_ENTRY PIMAGE_IA64_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_AXP64_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #elif defined(_ALPHA_)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_RUNTIME_FUNCTION_ENTRY IMAGE_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _PIMAGE_RUNTIME_FUNCTION_ENTRY PIMAGE_RUNTIME_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_DEBUG_DIRECTORY {
c2b7a98c21 2011-02-23        kinaba:   DWORD Characteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD Type;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfData;
c2b7a98c21 2011-02-23        kinaba:   DWORD AddressOfRawData;
c2b7a98c21 2011-02-23        kinaba:   DWORD PointerToRawData;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_DEBUG_DIRECTORY IMAGE_DEBUG_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_DEBUG_DIRECTORY* PIMAGE_DEBUG_DIRECTORY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_UNKNOWN = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_COFF = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_CODEVIEW = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_FPO = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_MISC = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_EXCEPTION = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_FIXUP = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_OMAP_TO_SRC = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_OMAP_FROM_SRC = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_BORLAND = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_RESERVED10 = 10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_TYPE_CLSID = 11 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_COFF_SYMBOLS_HEADER {
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfSymbols;
c2b7a98c21 2011-02-23        kinaba:   DWORD LvaToFirstSymbol;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfLinenumbers;
c2b7a98c21 2011-02-23        kinaba:   DWORD LvaToFirstLinenumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD RvaToFirstByteOfCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD RvaToLastByteOfCode;
c2b7a98c21 2011-02-23        kinaba:   DWORD RvaToFirstByteOfData;
c2b7a98c21 2011-02-23        kinaba:   DWORD RvaToLastByteOfData;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_COFF_SYMBOLS_HEADER IMAGE_COFF_SYMBOLS_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_COFF_SYMBOLS_HEADER* PIMAGE_COFF_SYMBOLS_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { FRAME_FPO = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FRAME_TRAP = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FRAME_TSS = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { FRAME_NONFPO = 3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _FPO_DATA {
c2b7a98c21 2011-02-23        kinaba:   DWORD ulOffStart;
c2b7a98c21 2011-02-23        kinaba:   DWORD cbProcSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD cdwLocals;
c2b7a98c21 2011-02-23        kinaba:   WORD cdwParams;
c2b7a98c21 2011-02-23        kinaba: // WORD        cbProlog : 8;
c2b7a98c21 2011-02-23        kinaba: // WORD        cbRegs   : 3;
c2b7a98c21 2011-02-23        kinaba: // WORD        fHasSEH  : 1;
c2b7a98c21 2011-02-23        kinaba: // WORD        fUseBP   : 1;
c2b7a98c21 2011-02-23        kinaba: // WORD        reserved : 1;
c2b7a98c21 2011-02-23        kinaba: // WORD        cbFrame  : 2;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _FPO_DATA FPO_DATA;
c2b7a98c21 2011-02-23        kinaba: alias _FPO_DATA* PFPO_DATA;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SIZEOF_RFPO_DATA = 16 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_DEBUG_MISC_EXENAME = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_DEBUG_MISC {
c2b7a98c21 2011-02-23        kinaba:   DWORD DataType;
c2b7a98c21 2011-02-23        kinaba:   DWORD Length;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Unicode;
c2b7a98c21 2011-02-23        kinaba:   BYTE Reserved[ 3 ];
c2b7a98c21 2011-02-23        kinaba:   BYTE Data[ 1 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_DEBUG_MISC IMAGE_DEBUG_MISC;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_DEBUG_MISC* PIMAGE_DEBUG_MISC;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_FUNCTION_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   DWORD StartingAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD EndingAddress;
c2b7a98c21 2011-02-23        kinaba:   DWORD EndOfPrologue;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_FUNCTION_ENTRY IMAGE_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_FUNCTION_ENTRY* PIMAGE_FUNCTION_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_FUNCTION_ENTRY64 {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG StartingAddress;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG EndingAddress;
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG EndOfPrologue;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG UnwindInfoAddress;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_FUNCTION_ENTRY64 IMAGE_FUNCTION_ENTRY64;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_FUNCTION_ENTRY64* PIMAGE_FUNCTION_ENTRY64;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _IMAGE_SEPARATE_DEBUG_HEADER {
c2b7a98c21 2011-02-23        kinaba:   WORD Signature;
c2b7a98c21 2011-02-23        kinaba:   WORD Flags;
c2b7a98c21 2011-02-23        kinaba:   WORD Machine;
c2b7a98c21 2011-02-23        kinaba:   WORD Characteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   DWORD CheckSum;
c2b7a98c21 2011-02-23        kinaba:   DWORD ImageBase;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfImage;
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfSections;
c2b7a98c21 2011-02-23        kinaba:   DWORD ExportedNamesSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD DebugDirectorySize;
c2b7a98c21 2011-02-23        kinaba:   DWORD SectionAlignment;
c2b7a98c21 2011-02-23        kinaba:   DWORD Reserved[2];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_SEPARATE_DEBUG_HEADER IMAGE_SEPARATE_DEBUG_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _IMAGE_SEPARATE_DEBUG_HEADER* PIMAGE_SEPARATE_DEBUG_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _NON_PAGED_DEBUG_INFO {
c2b7a98c21 2011-02-23        kinaba:   WORD Signature;
c2b7a98c21 2011-02-23        kinaba:   WORD Flags;
c2b7a98c21 2011-02-23        kinaba:   DWORD Size;
c2b7a98c21 2011-02-23        kinaba:   WORD Machine;
c2b7a98c21 2011-02-23        kinaba:   WORD Characteristics;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   DWORD CheckSum;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfImage;
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ImageBase;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _NON_PAGED_DEBUG_INFO NON_PAGED_DEBUG_INFO;
c2b7a98c21 2011-02-23        kinaba: alias _NON_PAGED_DEBUG_INFO* PNON_PAGED_DEBUG_INFO;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _MAC
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SEPARATE_DEBUG_SIGNATURE = 0x4944 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { NON_PAGED_DEBUG_SIGNATURE = 0x494E }
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SEPARATE_DEBUG_FLAGS_MASK = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMAGE_SEPARATE_DEBUG_MISMATCH = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ImageArchitectureHeader {
c2b7a98c21 2011-02-23        kinaba: // unsigned int AmaskValue: 1;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // int :7;
c2b7a98c21 2011-02-23        kinaba: // unsigned int AmaskShift: 8;
c2b7a98c21 2011-02-23        kinaba: // int :16;
c2b7a98c21 2011-02-23        kinaba:   DWORD FirstEntryRVA;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ImageArchitectureHeader IMAGE_ARCHITECTURE_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _ImageArchitectureHeader* PIMAGE_ARCHITECTURE_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ImageArchitectureEntry {
c2b7a98c21 2011-02-23        kinaba:   DWORD FixupInstRVA;
c2b7a98c21 2011-02-23        kinaba:   DWORD NewInst;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ImageArchitectureEntry IMAGE_ARCHITECTURE_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _ImageArchitectureEntry* PIMAGE_ARCHITECTURE_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: align:
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IMPORT_OBJECT_HDR_SIG2 = 0xffff }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct IMPORT_OBJECT_HEADER {
c2b7a98c21 2011-02-23        kinaba:   WORD Sig1;
c2b7a98c21 2011-02-23        kinaba:   WORD Sig2;
c2b7a98c21 2011-02-23        kinaba:   WORD Version;
c2b7a98c21 2011-02-23        kinaba:   WORD Machine;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeDateStamp;
c2b7a98c21 2011-02-23        kinaba:   DWORD SizeOfData;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: union {
c2b7a98c21 2011-02-23        kinaba:   WORD Ordinal;
c2b7a98c21 2011-02-23        kinaba:   WORD Hint;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // WORD    Type : 2;
c2b7a98c21 2011-02-23        kinaba: // WORD    NameType : 3;
c2b7a98c21 2011-02-23        kinaba: // WORD    Reserved : 11;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int IMPORT_OBJECT_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   IMPORT_OBJECT_CODE = 0,
c2b7a98c21 2011-02-23        kinaba:   IMPORT_OBJECT_DATA = 1,
c2b7a98c21 2011-02-23        kinaba:   IMPORT_OBJECT_CONST = 2,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int IMPORT_OBJECT_NAME_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   IMPORT_OBJECT_ORDINAL = 0,
c2b7a98c21 2011-02-23        kinaba:   IMPORT_OBJECT_NAME = 1,
c2b7a98c21 2011-02-23        kinaba:   IMPORT_OBJECT_NAME_NO_PREFIX = 2,
c2b7a98c21 2011-02-23        kinaba:   IMPORT_OBJECT_NAME_UNDECORATE = 3,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef __IMAGE_COR20_HEADER_DEFINED__
c2b7a98c21 2011-02-23        kinaba: // #define __IMAGE_COR20_HEADER_DEFINED__
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int ReplacesCorHdrNumericDefines;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   COMIMAGE_FLAGS_ILONLY = 0x00000001,
c2b7a98c21 2011-02-23        kinaba:   COMIMAGE_FLAGS_32BITREQUIRED = 0x00000002,
c2b7a98c21 2011-02-23        kinaba:   COMIMAGE_FLAGS_IL_LIBRARY = 0x00000004,
c2b7a98c21 2011-02-23        kinaba:   COMIMAGE_FLAGS_TRACKDEBUGDATA = 0x00010000,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   COR_VERSION_MAJOR_V2 = 2,
c2b7a98c21 2011-02-23        kinaba:   COR_VERSION_MAJOR = COR_VERSION_MAJOR_V2,
c2b7a98c21 2011-02-23        kinaba:   COR_VERSION_MINOR = 0,
c2b7a98c21 2011-02-23        kinaba:   COR_DELETED_NAME_LENGTH = 8,
c2b7a98c21 2011-02-23        kinaba:   COR_VTABLEGAP_NAME_LENGTH = 8,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   NATIVE_TYPE_MAX_CB = 1,
c2b7a98c21 2011-02-23        kinaba:   COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = 0xFF,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   IMAGE_COR_MIH_METHODRVA = 0x01,
c2b7a98c21 2011-02-23        kinaba:   IMAGE_COR_MIH_EHRVA = 0x02,
c2b7a98c21 2011-02-23        kinaba:   IMAGE_COR_MIH_BASICBLOCK = 0x08,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   COR_VTABLE_32BIT = 0x01,
c2b7a98c21 2011-02-23        kinaba:   COR_VTABLE_64BIT = 0x02,
c2b7a98c21 2011-02-23        kinaba:   COR_VTABLE_FROM_UNMANAGED = 0x04,
c2b7a98c21 2011-02-23        kinaba:   COR_VTABLE_CALL_MOST_DERIVED = 0x10,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   IMAGE_COR_EATJ_THUNK_SIZE = 32,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   MAX_CLASS_NAME = 1024,
c2b7a98c21 2011-02-23        kinaba:   MAX_PACKAGE_NAME = 1024,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct IMAGE_COR20_HEADER {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD cb;
c2b7a98c21 2011-02-23        kinaba:   WORD MajorRuntimeVersion;
c2b7a98c21 2011-02-23        kinaba:   WORD MinorRuntimeVersion;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY MetaData;
c2b7a98c21 2011-02-23        kinaba:   DWORD Flags;
c2b7a98c21 2011-02-23        kinaba:   DWORD EntryPointToken;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY Resources;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY StrongNameSignature;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY CodeManagerTable;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY VTableFixups;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY ExportAddressTableJumps;
c2b7a98c21 2011-02-23        kinaba:   IMAGE_DATA_DIRECTORY ManagedNativeHeader;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias IMAGE_COR20_HEADER* PIMAGE_COR20_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // __IMAGE_COR20_HEADER_DEFINED__
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef _MAC
c2b7a98c21 2011-02-23        kinaba: // #ifndef _INC_STRING
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif /* _INC_STRING */
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #include <string.h>
c2b7a98c21 2011-02-23        kinaba: // #endif // _MAC
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifndef _SLIST_HEADER_
c2b7a98c21 2011-02-23        kinaba: // #define _SLIST_HEADER_
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias SINGLE_LIST_ENTRY SLIST_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _SINGLE_LIST_ENTRY _SLIST_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias PSINGLE_LIST_ENTRY PSLIST_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_WIN64)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: union _SLIST_HEADER {
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG Alignment;
c2b7a98c21 2011-02-23        kinaba: struct {
c2b7a98c21 2011-02-23        kinaba:   SLIST_ENTRY Next;
c2b7a98c21 2011-02-23        kinaba:   WORD Depth;
c2b7a98c21 2011-02-23        kinaba:   WORD Sequence;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _SLIST_HEADER SLIST_HEADER;
c2b7a98c21 2011-02-23        kinaba: alias _SLIST_HEADER* PSLIST_HEADER;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export VOID RtlInitializeSListHead(
c2b7a98c21 2011-02-23        kinaba:   PSLIST_HEADER ListHead);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export PSLIST_ENTRY RtlFirstEntrySList(
c2b7a98c21 2011-02-23        kinaba:   SLIST_HEADER *ListHead);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export PSLIST_ENTRY RtlInterlockedPopEntrySList(
c2b7a98c21 2011-02-23        kinaba:   PSLIST_HEADER ListHead);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export PSLIST_ENTRY RtlInterlockedPushEntrySList(
c2b7a98c21 2011-02-23        kinaba:   PSLIST_HEADER ListHead,
c2b7a98c21 2011-02-23        kinaba:   PSLIST_ENTRY ListEntry);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export PSLIST_ENTRY RtlInterlockedFlushSList(
c2b7a98c21 2011-02-23        kinaba:   PSLIST_HEADER ListHead);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export WORD RtlQueryDepthSList(
c2b7a98c21 2011-02-23        kinaba:   PSLIST_HEADER ListHead);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_NO_SERIALIZE = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_GROWABLE = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_GENERATE_EXCEPTIONS = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_ZERO_MEMORY = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_REALLOC_IN_PLACE_ONLY = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_TAIL_CHECKING_ENABLED = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_FREE_CHECKING_ENABLED = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_DISABLE_COALESCE_ON_FREE = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_CREATE_ALIGN_16 = 0x00010000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_CREATE_ENABLE_TRACING = 0x00020000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_MAXIMUM_TAG = 0x0FFF }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_PSEUDO_TAG_FLAG = 0x8000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { HEAP_TAG_SHIFT = 18 }
c2b7a98c21 2011-02-23        kinaba: uint HEAP_MAKE_TAG_FLAGS(uint b, uint o){ return b + (o << 18); }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_ASCII16 = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_REVERSE_ASCII16 = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_STATISTICS = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_REVERSE_STATISTICS = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_CONTROLS = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_REVERSE_CONTROLS = 0x0040 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_SIGNATURE = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_REVERSE_SIGNATURE = 0x0080 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_ILLEGAL_CHARS = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_ODD_LENGTH = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_DBCS_LEADBYTE = 0x0400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_NULL_BYTES = 0x1000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_UNICODE_MASK = 0x000F }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_REVERSE_MASK = 0x00F0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_NOT_UNICODE_MASK = 0x0F00 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { IS_TEXT_UNICODE_NOT_ASCII_MASK = 0xF000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { COMPRESSION_FORMAT_NONE = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { COMPRESSION_FORMAT_DEFAULT = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { COMPRESSION_FORMAT_LZNT1 = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { COMPRESSION_ENGINE_STANDARD = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { COMPRESSION_ENGINE_MAXIMUM = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { COMPRESSION_ENGINE_HIBER = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export SIZE_T RtlCompareMemory(
c2b7a98c21 2011-02-23        kinaba:   VOID *Source1,
c2b7a98c21 2011-02-23        kinaba:   VOID *Source2,
c2b7a98c21 2011-02-23        kinaba:   SIZE_T Length);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_AMD64) || defined(_M_IA64)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if !defined(_M_AMD64)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: bit RtlEqualMemory(void* x, void* y, uint len){ return memcmp(x, y, len) == 0; }
c2b7a98c21 2011-02-23        kinaba: void RtlMoveMemory(void* d, void* s, uint len){ memmove(d, s, len); }
c2b7a98c21 2011-02-23        kinaba: void RtlCopyMemory(void* d, void* s, uint len){ memcpy(d, s, len); }
c2b7a98c21 2011-02-23        kinaba: void RtlFillMemory(void* d, uint len, ubyte f){ memset(d, f, len); }
c2b7a98c21 2011-02-23        kinaba: void RtlZeroMemory(void* d, uint len){ memset(d, 0, len); }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _MESSAGE_RESOURCE_ENTRY {
c2b7a98c21 2011-02-23        kinaba:   WORD Length;
c2b7a98c21 2011-02-23        kinaba:   WORD Flags;
c2b7a98c21 2011-02-23        kinaba:   BYTE Text[ 1 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _MESSAGE_RESOURCE_ENTRY MESSAGE_RESOURCE_ENTRY;
c2b7a98c21 2011-02-23        kinaba: alias _MESSAGE_RESOURCE_ENTRY* PMESSAGE_RESOURCE_ENTRY;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MESSAGE_RESOURCE_UNICODE = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _MESSAGE_RESOURCE_BLOCK {
c2b7a98c21 2011-02-23        kinaba:   DWORD LowId;
c2b7a98c21 2011-02-23        kinaba:   DWORD HighId;
c2b7a98c21 2011-02-23        kinaba:   DWORD OffsetToEntries;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _MESSAGE_RESOURCE_BLOCK MESSAGE_RESOURCE_BLOCK;
c2b7a98c21 2011-02-23        kinaba: alias _MESSAGE_RESOURCE_BLOCK* PMESSAGE_RESOURCE_BLOCK;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _MESSAGE_RESOURCE_DATA {
c2b7a98c21 2011-02-23        kinaba:   DWORD NumberOfBlocks;
c2b7a98c21 2011-02-23        kinaba:   MESSAGE_RESOURCE_BLOCK Blocks[ 1 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _MESSAGE_RESOURCE_DATA MESSAGE_RESOURCE_DATA;
c2b7a98c21 2011-02-23        kinaba: alias _MESSAGE_RESOURCE_DATA* PMESSAGE_RESOURCE_DATA;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _OSVERSIONINFOA {
c2b7a98c21 2011-02-23        kinaba:   DWORD dwOSVersionInfoSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwMajorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwMinorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwBuildNumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwPlatformId;
c2b7a98c21 2011-02-23        kinaba:   CHAR szCSDVersion[ 128 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOA OSVERSIONINFOA;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOA* POSVERSIONINFOA;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOA* LPOSVERSIONINFOA;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _OSVERSIONINFOW {
c2b7a98c21 2011-02-23        kinaba:   DWORD dwOSVersionInfoSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwMajorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwMinorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwBuildNumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwPlatformId;
c2b7a98c21 2011-02-23        kinaba:   WCHAR szCSDVersion[ 128 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOW OSVERSIONINFOW;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOW* POSVERSIONINFOW;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOW* LPOSVERSIONINFOW;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOW RTL_OSVERSIONINFOW;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOW* PRTL_OSVERSIONINFOW;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef UNICODE
c2b7a98c21 2011-02-23        kinaba: alias OSVERSIONINFOW OSVERSIONINFO;
c2b7a98c21 2011-02-23        kinaba: alias POSVERSIONINFOW POSVERSIONINFO;
c2b7a98c21 2011-02-23        kinaba: alias LPOSVERSIONINFOW LPOSVERSIONINFO;
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #endif // UNICODE
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _OSVERSIONINFOEXA {
c2b7a98c21 2011-02-23        kinaba:   DWORD dwOSVersionInfoSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwMajorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwMinorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwBuildNumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwPlatformId;
c2b7a98c21 2011-02-23        kinaba:   CHAR szCSDVersion[ 128 ];
c2b7a98c21 2011-02-23        kinaba:   WORD wServicePackMajor;
c2b7a98c21 2011-02-23        kinaba:   WORD wServicePackMinor;
c2b7a98c21 2011-02-23        kinaba:   WORD wSuiteMask;
c2b7a98c21 2011-02-23        kinaba:   BYTE wProductType;
c2b7a98c21 2011-02-23        kinaba:   BYTE wReserved;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOEXA OSVERSIONINFOEXA;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOEXA* POSVERSIONINFOEXA;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOEXA* LPOSVERSIONINFOEXA;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _OSVERSIONINFOEXW {
c2b7a98c21 2011-02-23        kinaba:   DWORD dwOSVersionInfoSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwMajorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwMinorVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwBuildNumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD dwPlatformId;
c2b7a98c21 2011-02-23        kinaba:   WCHAR szCSDVersion[ 128 ];
c2b7a98c21 2011-02-23        kinaba:   WORD wServicePackMajor;
c2b7a98c21 2011-02-23        kinaba:   WORD wServicePackMinor;
c2b7a98c21 2011-02-23        kinaba:   WORD wSuiteMask;
c2b7a98c21 2011-02-23        kinaba:   BYTE wProductType;
c2b7a98c21 2011-02-23        kinaba:   BYTE wReserved;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOEXW OSVERSIONINFOEXW;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOEXW* POSVERSIONINFOEXW;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOEXW* LPOSVERSIONINFOEXW;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOEXW RTL_OSVERSIONINFOEXW;
c2b7a98c21 2011-02-23        kinaba: alias _OSVERSIONINFOEXW* PRTL_OSVERSIONINFOEXW;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef UNICODE
c2b7a98c21 2011-02-23        kinaba: alias OSVERSIONINFOEXW OSVERSIONINFOEX;
c2b7a98c21 2011-02-23        kinaba: alias POSVERSIONINFOEXW POSVERSIONINFOEX;
c2b7a98c21 2011-02-23        kinaba: alias LPOSVERSIONINFOEXW LPOSVERSIONINFOEX;
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: // #endif // UNICODE
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_EQUAL = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_GREATER = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_GREATER_EQUAL = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_LESS = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_LESS_EQUAL = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_AND = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_OR = 7 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_CONDITION_MASK = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_NUM_BITS_PER_CONDITION_MASK = 3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_MINORVERSION = 0x0000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_MAJORVERSION = 0x0000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_BUILDNUMBER = 0x0000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_PLATFORMID = 0x0000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SERVICEPACKMINOR = 0x0000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SERVICEPACKMAJOR = 0x0000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_SUITENAME = 0x0000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_PRODUCT_TYPE = 0x0000080 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_NT_WORKSTATION = 0x0000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_NT_DOMAIN_CONTROLLER = 0x0000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_NT_SERVER = 0x0000003 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_PLATFORM_WIN32s = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_PLATFORM_WIN32_WINDOWS = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { VER_PLATFORM_WIN32_NT = 2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define VER_SET_CONDITION(_m_,_t_,_c_) ((_m_)=VerSetConditionMask((_m_),(_t_),(_c_)))
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export ULONGLONG VerSetConditionMask(
c2b7a98c21 2011-02-23        kinaba:   ULONGLONG ConditionMask,
c2b7a98c21 2011-02-23        kinaba:   DWORD TypeMask,
c2b7a98c21 2011-02-23        kinaba:   BYTE Condition);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _RTL_CRITICAL_SECTION_DEBUG {
c2b7a98c21 2011-02-23        kinaba:   WORD Type;
c2b7a98c21 2011-02-23        kinaba:   WORD CreatorBackTraceIndex;
c2b7a98c21 2011-02-23        kinaba:   _RTL_CRITICAL_SECTION *CriticalSection;
c2b7a98c21 2011-02-23        kinaba:   LIST_ENTRY ProcessLocksList;
c2b7a98c21 2011-02-23        kinaba:   DWORD EntryCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD ContentionCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD Spare[ 2 ];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _RTL_CRITICAL_SECTION_DEBUG RTL_CRITICAL_SECTION_DEBUG;
c2b7a98c21 2011-02-23        kinaba: alias _RTL_CRITICAL_SECTION_DEBUG* PRTL_CRITICAL_SECTION_DEBUG;
c2b7a98c21 2011-02-23        kinaba: alias _RTL_CRITICAL_SECTION_DEBUG RTL_RESOURCE_DEBUG;
c2b7a98c21 2011-02-23        kinaba: alias _RTL_CRITICAL_SECTION_DEBUG* PRTL_RESOURCE_DEBUG;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { RTL_CRITSECT_TYPE = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { RTL_RESOURCE_TYPE = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _RTL_CRITICAL_SECTION {
c2b7a98c21 2011-02-23        kinaba:   PRTL_CRITICAL_SECTION_DEBUG DebugInfo;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   LONG LockCount;
c2b7a98c21 2011-02-23        kinaba:   LONG RecursionCount;
c2b7a98c21 2011-02-23        kinaba:   HANDLE OwningThread;
c2b7a98c21 2011-02-23        kinaba:   HANDLE LockSemaphore;
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR SpinCount;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _RTL_CRITICAL_SECTION RTL_CRITICAL_SECTION;
c2b7a98c21 2011-02-23        kinaba: alias _RTL_CRITICAL_SECTION* PRTL_CRITICAL_SECTION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) alias VOID function( PWSTR DllName, PVOID DllBase, SIZE_T DllSize, PVOID Reserved ) RTL_VERIFIER_DLL_LOAD_CALLBACK;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) alias VOID function( PWSTR DllName, PVOID DllBase, SIZE_T DllSize, PVOID Reserved ) RTL_VERIFIER_DLL_UNLOAD_CALLBACK;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _RTL_VERIFIER_THUNK_DESCRIPTOR {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   PCHAR ThunkName;
c2b7a98c21 2011-02-23        kinaba:   PVOID ThunkOldAddress;
c2b7a98c21 2011-02-23        kinaba:   PVOID ThunkNewAddress;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _RTL_VERIFIER_THUNK_DESCRIPTOR RTL_VERIFIER_THUNK_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: alias _RTL_VERIFIER_THUNK_DESCRIPTOR* PRTL_VERIFIER_THUNK_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _RTL_VERIFIER_DLL_DESCRIPTOR {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   PWCHAR DllName;
c2b7a98c21 2011-02-23        kinaba:   DWORD DllFlags;
c2b7a98c21 2011-02-23        kinaba:   PVOID DllAddress;
c2b7a98c21 2011-02-23        kinaba:   PRTL_VERIFIER_THUNK_DESCRIPTOR DllThunks;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _RTL_VERIFIER_DLL_DESCRIPTOR RTL_VERIFIER_DLL_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: alias _RTL_VERIFIER_DLL_DESCRIPTOR* PRTL_VERIFIER_DLL_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _RTL_VERIFIER_PROVIDER_DESCRIPTOR {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   DWORD Length;
c2b7a98c21 2011-02-23        kinaba:   PRTL_VERIFIER_DLL_DESCRIPTOR ProviderDlls;
c2b7a98c21 2011-02-23        kinaba:   RTL_VERIFIER_DLL_LOAD_CALLBACK ProviderDllLoadCallback;
c2b7a98c21 2011-02-23        kinaba:   RTL_VERIFIER_DLL_UNLOAD_CALLBACK ProviderDllUnloadCallback;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   PWSTR VerifierImage;
c2b7a98c21 2011-02-23        kinaba:   DWORD VerifierFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD VerifierDebug;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _RTL_VERIFIER_PROVIDER_DESCRIPTOR RTL_VERIFIER_PROVIDER_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: alias _RTL_VERIFIER_PROVIDER_DESCRIPTOR* PRTL_VERIFIER_PROVIDER_DESCRIPTOR;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { RTL_VRF_FLG_FULL_PAGE_HEAP = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { RTL_VRF_FLG_LOCK_CHECKS = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { RTL_VRF_FLG_HANDLE_CHECKS = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { RTL_VRF_FLG_STACK_CHECKS = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { RTL_VRF_FLG_APPCOMPAT_CHECKS = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_INTERNAL_ERROR = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_INTERNAL_WARNING = 0x40000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_NO_BREAK = 0x20000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_RESERVED_BIT_28 = 0x10000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_UNKNOWN_ERROR = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_ACCESS_VIOLATION = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_UNSYNCHRONIZED_ACCESS = 0x0003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_EXTREME_SIZE_REQUEST = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_BAD_HEAP_HANDLE = 0x0005 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_SWITCHED_HEAP_HANDLE = 0x0006 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_DOUBLE_FREE = 0x0007 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_DESTROY_PROCESS_HEAP = 0x0009 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_UNEXPECTED_EXCEPTION = 0x000A }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_STACK_OVERFLOW = 0x000B }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_TERMINATE_THREAD_CALL = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_EXIT_THREAD_OWNS_LOCK = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_IN_UNLOADED_DLL = 0x0201 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_IN_FREED_HEAP = 0x0202 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_DOUBLE_INITIALIZE = 0x0203 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_IN_FREED_MEMORY = 0x0204 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_CORRUPTED = 0x0205 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_INVALID_OWNER = 0x0206 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_INVALID_RECURSION_COUNT = 0x0207 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_INVALID_LOCK_COUNT = 0x0208 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_OVER_RELEASED = 0x0209 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_LOCK_NOT_INITIALIZED = 0x0210 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { APPLICATION_VERIFIER_INVALID_HANDLE = 0x0300 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #define VERIFIER_STOP(Code, Msg, P1, S1, P2, S2, P3, S3, P4, S4) { RtlApplicationVerifierStop ((Code), (Msg), (ULONG_PTR)(P1),(S1), (ULONG_PTR)(P2),(S2), (ULONG_PTR)(P3),(S3), (ULONG_PTR)(P4),(S4)); }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export VOID RtlApplicationVerifierStop(
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR Code,
c2b7a98c21 2011-02-23        kinaba:   PCHAR Message,
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR Param1, PCHAR Description1,
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR Param2, PCHAR Description2,
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR Param3, PCHAR Description3,
c2b7a98c21 2011-02-23        kinaba:   ULONG_PTR Param4, PCHAR Description4);
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) alias LONG function(  _EXCEPTION_POINTERS *ExceptionInfo ) PVECTORED_EXCEPTION_HANDLER;
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEF_DACL_AUTO_INHERIT = 0x01 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEF_SACL_AUTO_INHERIT = 0x02 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEF_DEFAULT_DESCRIPTOR_FOR_OBJECT = 0x04 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEF_AVOID_PRIVILEGE_CHECK = 0x08 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEF_AVOID_OWNER_CHECK = 0x10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEF_DEFAULT_OWNER_FROM_PARENT = 0x20 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SEF_DEFAULT_GROUP_FROM_PARENT = 0x40 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _HEAP_INFORMATION_CLASS;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   HeapCompatibilityInformation,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _HEAP_INFORMATION_CLASS HEAP_INFORMATION_CLASS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export DWORD RtlSetHeapInformation(
c2b7a98c21 2011-02-23        kinaba:   PVOID HeapHandle,
c2b7a98c21 2011-02-23        kinaba:   HEAP_INFORMATION_CLASS HeapInformationClass,
c2b7a98c21 2011-02-23        kinaba:   PVOID HeapInformation ,
c2b7a98c21 2011-02-23        kinaba:   SIZE_T HeapInformationLength );
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: extern(Windows) export DWORD RtlQueryHeapInformation(
c2b7a98c21 2011-02-23        kinaba:   PVOID HeapHandle,
c2b7a98c21 2011-02-23        kinaba:   HEAP_INFORMATION_CLASS HeapInformationClass,
c2b7a98c21 2011-02-23        kinaba:   PVOID HeapInformation ,
c2b7a98c21 2011-02-23        kinaba:   SIZE_T HeapInformationLength ,
c2b7a98c21 2011-02-23        kinaba:   PSIZE_T ReturnLength );
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEDEFAULT = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEINIOTHREAD = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEINUITHREAD = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEINWAITTHREAD = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEONLYONCE = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEINTIMERTHREAD = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTELONGFUNCTION = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEINPERSISTENTIOTHREAD = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEINPERSISTENTTHREAD = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: // #define WT_SET_MAX_THREADPOOL_THREADS(Flags, Limit) ((Flags) |= (Limit)<<16)
c2b7a98c21 2011-02-23        kinaba: extern(Windows) alias VOID function(PVOID, BOOLEAN ) WAITORTIMERCALLBACKFUNC;
c2b7a98c21 2011-02-23        kinaba: extern(Windows) alias VOID function(PVOID ) WORKERCALLBACKFUNC;
c2b7a98c21 2011-02-23        kinaba: extern(Windows) alias VOID function(DWORD , PVOID, PVOID) APC_CALLBACK_FUNCTION;
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEINLONGTHREAD = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { WT_EXECUTEDELETEWAIT = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _ACTIVATION_CONTEXT_INFO_CLASS;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   ActivationContextBasicInformation = 1,
c2b7a98c21 2011-02-23        kinaba:   ActivationContextDetailedInformation = 2,
c2b7a98c21 2011-02-23        kinaba:   AssemblyDetailedInformationInActivationContext = 3,
c2b7a98c21 2011-02-23        kinaba:   FileInformationInAssemblyOfAssemblyInActivationContext = 4,
c2b7a98c21 2011-02-23        kinaba:   MaxActivationContextInfoClass,
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   AssemblyDetailedInformationInActivationContxt = 3,
c2b7a98c21 2011-02-23        kinaba:   FileInformationInAssemblyOfAssemblyInActivationContxt = 4,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_INFO_CLASS ACTIVATION_CONTEXT_INFO_CLASS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ACTIVATION_CONTEXT_INFO_CLASS ACTIVATIONCONTEXTINFOCLASS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACTIVATION_CONTEXT_QUERY_INDEX {
c2b7a98c21 2011-02-23        kinaba:   DWORD ulAssemblyIndex;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulFileIndexInAssembly;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_QUERY_INDEX ACTIVATION_CONTEXT_QUERY_INDEX;
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_QUERY_INDEX* PACTIVATION_CONTEXT_QUERY_INDEX;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_QUERY_INDEX* PCACTIVATION_CONTEXT_QUERY_INDEX;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_PATH_TYPE_NONE = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_PATH_TYPE_URL = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_PATH_TYPE_ASSEMBLYREF = 4 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ASSEMBLY_FILE_DETAILED_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD ulFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulFilenameLength;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulPathLength;
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpFileName;
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpFilePath;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ASSEMBLY_FILE_DETAILED_INFORMATION ASSEMBLY_FILE_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _ASSEMBLY_FILE_DETAILED_INFORMATION* PASSEMBLY_FILE_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias ASSEMBLY_FILE_DETAILED_INFORMATION* PCASSEMBLY_FILE_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias _ASSEMBLY_FILE_DETAILED_INFORMATION _ASSEMBLY_DLL_REDIRECTION_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias ASSEMBLY_FILE_DETAILED_INFORMATION ASSEMBLY_DLL_REDIRECTION_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias PASSEMBLY_FILE_DETAILED_INFORMATION PASSEMBLY_DLL_REDIRECTION_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias PCASSEMBLY_FILE_DETAILED_INFORMATION PCASSEMBLY_DLL_REDIRECTION_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD ulFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulEncodedAssemblyIdentityLength;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulManifestPathType;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulManifestPathLength;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER liManifestLastWriteTime;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulPolicyPathType;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulPolicyPathLength;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER liPolicyLastWriteTime;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulMetadataSatelliteRosterIndex;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulManifestVersionMajor;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulManifestVersionMinor;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulPolicyVersionMajor;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulPolicyVersionMinor;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulAssemblyDirectoryNameLength;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpAssemblyEncodedAssemblyIdentity;
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpAssemblyManifestPath;
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpAssemblyPolicyPath;
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpAssemblyDirectoryName;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulFileCount;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION* PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION* PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION {
c2b7a98c21 2011-02-23        kinaba:   DWORD dwFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulFormatVersion;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulAssemblyCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulRootManifestPathType;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulRootManifestPathChars;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulRootConfigurationPathType;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulRootConfigurationPathChars;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulAppDirPathType;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulAppDirPathChars;
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpRootManifestPath;
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpRootConfigurationPath;
c2b7a98c21 2011-02-23        kinaba:   PCWSTR lpAppDirPath;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_DETAILED_INFORMATION ACTIVATION_CONTEXT_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_DETAILED_INFORMATION* PACTIVATION_CONTEXT_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias _ACTIVATION_CONTEXT_DETAILED_INFORMATION* PCACTIVATION_CONTEXT_DETAILED_INFORMATION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { DLL_PROCESS_ATTACH = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DLL_THREAD_ATTACH = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DLL_THREAD_DETACH = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DLL_PROCESS_DETACH = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { DLL_PROCESS_VERIFIER = 4 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_SEQUENTIAL_READ = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_SEEK_READ = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_FORWARDS_READ = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_BACKWARDS_READ = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_SUCCESS = 0x0000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_ERROR_TYPE = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_WARNING_TYPE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_INFORMATION_TYPE = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_AUDIT_SUCCESS = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_AUDIT_FAILURE = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_START_PAIRED_EVENT = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_END_PAIRED_EVENT = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_END_ALL_PAIRED_EVENTS = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_PAIRED_EVENT_ACTIVE = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { EVENTLOG_PAIRED_EVENT_INACTIVE = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _EVENTLOGRECORD {
c2b7a98c21 2011-02-23        kinaba:   DWORD Length;
c2b7a98c21 2011-02-23        kinaba:   DWORD Reserved;
c2b7a98c21 2011-02-23        kinaba:   DWORD RecordNumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeGenerated;
c2b7a98c21 2011-02-23        kinaba:   DWORD TimeWritten;
c2b7a98c21 2011-02-23        kinaba:   DWORD EventID;
c2b7a98c21 2011-02-23        kinaba:   WORD EventType;
c2b7a98c21 2011-02-23        kinaba:   WORD NumStrings;
c2b7a98c21 2011-02-23        kinaba:   WORD EventCategory;
c2b7a98c21 2011-02-23        kinaba:   WORD ReservedFlags;
c2b7a98c21 2011-02-23        kinaba:   DWORD ClosingRecordNumber;
c2b7a98c21 2011-02-23        kinaba:   DWORD StringOffset;
c2b7a98c21 2011-02-23        kinaba:   DWORD UserSidLength;
c2b7a98c21 2011-02-23        kinaba:   DWORD UserSidOffset;
c2b7a98c21 2011-02-23        kinaba:   DWORD DataLength;
c2b7a98c21 2011-02-23        kinaba:   DWORD DataOffset;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _EVENTLOGRECORD EVENTLOGRECORD;
c2b7a98c21 2011-02-23        kinaba: alias _EVENTLOGRECORD* PEVENTLOGRECORD;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { MAXLOGICALLOGNAMESIZE = 256 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1200
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(push)
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(disable : 4200)
c2b7a98c21 2011-02-23        kinaba: struct _EVENTSFORLOGFILE {
c2b7a98c21 2011-02-23        kinaba:   DWORD ulSize;
c2b7a98c21 2011-02-23        kinaba:   WCHAR szLogicalLogFile[MAXLOGICALLOGNAMESIZE];
c2b7a98c21 2011-02-23        kinaba:   DWORD ulNumRecords;
c2b7a98c21 2011-02-23        kinaba:   EVENTLOGRECORD pEventLogRecords[];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _EVENTSFORLOGFILE EVENTSFORLOGFILE;
c2b7a98c21 2011-02-23        kinaba: alias _EVENTSFORLOGFILE* PEVENTSFORLOGFILE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _PACKEDEVENTINFO {
c2b7a98c21 2011-02-23        kinaba:   DWORD ulSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulNumEventsForLogFile;
c2b7a98c21 2011-02-23        kinaba:   DWORD ulOffsets[];
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _PACKEDEVENTINFO PACKEDEVENTINFO;
c2b7a98c21 2011-02-23        kinaba: alias _PACKEDEVENTINFO* PPACKEDEVENTINFO;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if _MSC_VER >= 1200
c2b7a98c21 2011-02-23        kinaba: // #pragma warning(pop)
c2b7a98c21 2011-02-23        kinaba: // #else
c2b7a98c21 2011-02-23        kinaba: // #...
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_QUERY_VALUE = 0x0001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_SET_VALUE = 0x0002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_CREATE_SUB_KEY = 0x0004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_ENUMERATE_SUB_KEYS = 0x0008 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_NOTIFY = 0x0010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_CREATE_LINK = 0x0020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_WOW64_32KEY = 0x0200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_WOW64_64KEY = 0x0100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_WOW64_RES = 0x0300 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_READ = (STANDARD_RIGHTS_READ | KEY_QUERY_VALUE | KEY_ENUMERATE_SUB_KEYS | KEY_NOTIFY) & (~SYNCHRONIZE) }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_WRITE = (STANDARD_RIGHTS_WRITE | KEY_SET_VALUE | KEY_CREATE_SUB_KEY) & (~SYNCHRONIZE) }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_EXECUTE = KEY_READ & ~SYNCHRONIZE }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { KEY_ALL_ACCESS = (STANDARD_RIGHTS_ALL | KEY_QUERY_VALUE | KEY_SET_VALUE | KEY_CREATE_SUB_KEY | KEY_ENUMERATE_SUB_KEYS | KEY_NOTIFY | KEY_CREATE_LINK) & (~SYNCHRONIZE) }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_OPTION_RESERVED = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_OPTION_NON_VOLATILE = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_OPTION_VOLATILE = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_OPTION_CREATE_LINK = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_OPTION_BACKUP_RESTORE = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_OPTION_OPEN_LINK = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_LEGAL_OPTION = REG_OPTION_RESERVED | REG_OPTION_NON_VOLATILE | REG_OPTION_VOLATILE | REG_OPTION_CREATE_LINK | REG_OPTION_BACKUP_RESTORE | REG_OPTION_OPEN_LINK }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_CREATED_NEW_KEY = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_OPENED_EXISTING_KEY = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_STANDARD_FORMAT = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_LATEST_FORMAT = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_NO_COMPRESSION = 4 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_WHOLE_HIVE_VOLATILE = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_REFRESH_HIVE = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_NO_LAZY_FLUSH = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_FORCE_RESTORE = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_NOTIFY_CHANGE_NAME = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_NOTIFY_CHANGE_ATTRIBUTES = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_NOTIFY_CHANGE_LAST_SET = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_NOTIFY_CHANGE_SECURITY = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_LEGAL_CHANGE_FILTER = REG_NOTIFY_CHANGE_NAME | REG_NOTIFY_CHANGE_ATTRIBUTES | REG_NOTIFY_CHANGE_LAST_SET | REG_NOTIFY_CHANGE_SECURITY }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_NONE = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_SZ = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_EXPAND_SZ = 2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_BINARY = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_DWORD = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_DWORD_LITTLE_ENDIAN = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_DWORD_BIG_ENDIAN = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_LINK = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_MULTI_SZ = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_RESOURCE_LIST = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_FULL_RESOURCE_DESCRIPTOR = 9 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_RESOURCE_REQUIREMENTS_LIST = 10 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_QWORD = 11 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { REG_QWORD_LITTLE_ENDIAN = 11 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_KERNEL_DRIVER = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_FILE_SYSTEM_DRIVER = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_ADAPTER = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_RECOGNIZER_DRIVER = 0x00000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_DRIVER = SERVICE_KERNEL_DRIVER | SERVICE_FILE_SYSTEM_DRIVER | SERVICE_RECOGNIZER_DRIVER }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_WIN32_OWN_PROCESS = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_WIN32_SHARE_PROCESS = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_WIN32 = SERVICE_WIN32_OWN_PROCESS | SERVICE_WIN32_SHARE_PROCESS }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_INTERACTIVE_PROCESS = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_TYPE_ALL = SERVICE_WIN32 | SERVICE_ADAPTER | SERVICE_DRIVER | SERVICE_INTERACTIVE_PROCESS }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_BOOT_START = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_SYSTEM_START = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_AUTO_START = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_DEMAND_START = 0x00000003 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_DISABLED = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_ERROR_IGNORE = 0x00000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_ERROR_NORMAL = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_ERROR_SEVERE = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { SERVICE_ERROR_CRITICAL = 0x00000003 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _CM_SERVICE_NODE_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   DriverType = SERVICE_KERNEL_DRIVER,
c2b7a98c21 2011-02-23        kinaba:   FileSystemType = SERVICE_FILE_SYSTEM_DRIVER,
c2b7a98c21 2011-02-23        kinaba:   Win32ServiceOwnProcess = SERVICE_WIN32_OWN_PROCESS,
c2b7a98c21 2011-02-23        kinaba:   Win32ServiceShareProcess = SERVICE_WIN32_SHARE_PROCESS,
c2b7a98c21 2011-02-23        kinaba:   AdapterType = SERVICE_ADAPTER,
c2b7a98c21 2011-02-23        kinaba:   RecognizerType = SERVICE_RECOGNIZER_DRIVER,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _CM_SERVICE_NODE_TYPE SERVICE_NODE_TYPE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _CM_SERVICE_LOAD_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   BootLoad = SERVICE_BOOT_START,
c2b7a98c21 2011-02-23        kinaba:   SystemLoad = SERVICE_SYSTEM_START,
c2b7a98c21 2011-02-23        kinaba:   AutoLoad = SERVICE_AUTO_START,
c2b7a98c21 2011-02-23        kinaba:   DemandLoad = SERVICE_DEMAND_START,
c2b7a98c21 2011-02-23        kinaba:   DisableLoad = SERVICE_DISABLED,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _CM_SERVICE_LOAD_TYPE SERVICE_LOAD_TYPE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _CM_ERROR_CONTROL_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   IgnoreError = SERVICE_ERROR_IGNORE,
c2b7a98c21 2011-02-23        kinaba:   NormalError = SERVICE_ERROR_NORMAL,
c2b7a98c21 2011-02-23        kinaba:   SevereError = SERVICE_ERROR_SEVERE,
c2b7a98c21 2011-02-23        kinaba:   CriticalError = SERVICE_ERROR_CRITICAL,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _CM_ERROR_CONTROL_TYPE SERVICE_ERROR_TYPE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_ERASE_SHORT = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_ERASE_LONG = 1 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_ERASE {
c2b7a98c21 2011-02-23        kinaba:   DWORD Type;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Immediate;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_ERASE TAPE_ERASE;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_ERASE* PTAPE_ERASE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_LOAD = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_UNLOAD = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_TENSION = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_LOCK = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_UNLOCK = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_FORMAT = 5 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_PREPARE {
c2b7a98c21 2011-02-23        kinaba:   DWORD Operation;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Immediate;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_PREPARE TAPE_PREPARE;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_PREPARE* PTAPE_PREPARE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SETMARKS = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_FILEMARKS = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SHORT_FILEMARKS = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_LONG_FILEMARKS = 3 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_WRITE_MARKS {
c2b7a98c21 2011-02-23        kinaba:   DWORD Type;
c2b7a98c21 2011-02-23        kinaba:   DWORD Count;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Immediate;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_WRITE_MARKS TAPE_WRITE_MARKS;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_WRITE_MARKS* PTAPE_WRITE_MARKS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_ABSOLUTE_POSITION = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_LOGICAL_POSITION = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_PSEUDO_LOGICAL_POSITION = 2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_GET_POSITION {
c2b7a98c21 2011-02-23        kinaba:   DWORD Type;
c2b7a98c21 2011-02-23        kinaba:   DWORD Partition;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER Offset;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_GET_POSITION TAPE_GET_POSITION;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_GET_POSITION* PTAPE_GET_POSITION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_REWIND = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_ABSOLUTE_BLOCK = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_LOGICAL_BLOCK = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_PSEUDO_LOGICAL_BLOCK = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SPACE_END_OF_DATA = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SPACE_RELATIVE_BLOCKS = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SPACE_FILEMARKS = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SPACE_SEQUENTIAL_FMKS = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SPACE_SETMARKS = 8 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SPACE_SEQUENTIAL_SMKS = 9 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_SET_POSITION {
c2b7a98c21 2011-02-23        kinaba:   DWORD Method;
c2b7a98c21 2011-02-23        kinaba:   DWORD Partition;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER Offset;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Immediate;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_SET_POSITION TAPE_SET_POSITION;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_SET_POSITION* PTAPE_SET_POSITION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_FIXED = 0x00000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SELECT = 0x00000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_INITIATOR = 0x00000004 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_ERASE_SHORT = 0x00000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_ERASE_LONG = 0x00000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_ERASE_BOP_ONLY = 0x00000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_ERASE_IMMEDIATE = 0x00000080 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_TAPE_CAPACITY = 0x00000100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_TAPE_REMAINING = 0x00000200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_FIXED_BLOCK = 0x00000400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_VARIABLE_BLOCK = 0x00000800 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_WRITE_PROTECT = 0x00001000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_EOT_WZ_SIZE = 0x00002000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_ECC = 0x00010000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_COMPRESSION = 0x00020000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_PADDING = 0x00040000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_REPORT_SMKS = 0x00080000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_GET_ABSOLUTE_BLK = 0x00100000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_GET_LOGICAL_BLK = 0x00200000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SET_EOT_WZ_SIZE = 0x00400000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_EJECT_MEDIA = 0x01000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_CLEAN_REQUESTS = 0x02000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SET_CMP_BOP_ONLY = 0x04000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_RESERVED_BIT = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_LOAD_UNLOAD = 0x80000001 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_TENSION = 0x80000002 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_LOCK_UNLOCK = 0x80000004 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_REWIND_IMMEDIATE = 0x80000008 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SET_BLOCK_SIZE = 0x80000010 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_LOAD_UNLD_IMMED = 0x80000020 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_TENSION_IMMED = 0x80000040 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_LOCK_UNLK_IMMED = 0x80000080 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SET_ECC = 0x80000100 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SET_COMPRESSION = 0x80000200 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SET_PADDING = 0x80000400 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SET_REPORT_SMKS = 0x80000800 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_ABSOLUTE_BLK = 0x80001000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_ABS_BLK_IMMED = 0x80002000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_LOGICAL_BLK = 0x80004000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_LOG_BLK_IMMED = 0x80008000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_END_OF_DATA = 0x80010000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_RELATIVE_BLKS = 0x80020000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_FILEMARKS = 0x80040000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SEQUENTIAL_FMKS = 0x80080000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SETMARKS = 0x80100000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SEQUENTIAL_SMKS = 0x80200000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_REVERSE_POSITION = 0x80400000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_SPACE_IMMEDIATE = 0x80800000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_WRITE_SETMARKS = 0x81000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_WRITE_FILEMARKS = 0x82000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_WRITE_SHORT_FMKS = 0x84000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_WRITE_LONG_FMKS = 0x88000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_WRITE_MARK_IMMED = 0x90000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_FORMAT = 0xA0000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_FORMAT_IMMEDIATE = 0xC0000000 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_DRIVE_HIGH_FEATURES = 0x80000000 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_GET_DRIVE_PARAMETERS {
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN ECC;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Compression;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN DataPadding;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN ReportSetmarks;
c2b7a98c21 2011-02-23        kinaba:   DWORD DefaultBlockSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD MaximumBlockSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD MinimumBlockSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD MaximumPartitionCount;
c2b7a98c21 2011-02-23        kinaba:   DWORD FeaturesLow;
c2b7a98c21 2011-02-23        kinaba:   DWORD FeaturesHigh;
c2b7a98c21 2011-02-23        kinaba:   DWORD EOTWarningZoneSize;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_GET_DRIVE_PARAMETERS TAPE_GET_DRIVE_PARAMETERS;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_GET_DRIVE_PARAMETERS* PTAPE_GET_DRIVE_PARAMETERS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_SET_DRIVE_PARAMETERS {
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN ECC;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN Compression;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN DataPadding;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN ReportSetmarks;
c2b7a98c21 2011-02-23        kinaba:   DWORD EOTWarningZoneSize;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_SET_DRIVE_PARAMETERS TAPE_SET_DRIVE_PARAMETERS;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_SET_DRIVE_PARAMETERS* PTAPE_SET_DRIVE_PARAMETERS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_GET_MEDIA_PARAMETERS {
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER Capacity;
c2b7a98c21 2011-02-23        kinaba:   LARGE_INTEGER Remaining;
c2b7a98c21 2011-02-23        kinaba:   DWORD BlockSize;
c2b7a98c21 2011-02-23        kinaba:   DWORD PartitionCount;
c2b7a98c21 2011-02-23        kinaba:   BOOLEAN WriteProtected;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_GET_MEDIA_PARAMETERS TAPE_GET_MEDIA_PARAMETERS;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_GET_MEDIA_PARAMETERS* PTAPE_GET_MEDIA_PARAMETERS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_SET_MEDIA_PARAMETERS {
c2b7a98c21 2011-02-23        kinaba:   DWORD BlockSize;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_SET_MEDIA_PARAMETERS TAPE_SET_MEDIA_PARAMETERS;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_SET_MEDIA_PARAMETERS* PTAPE_SET_MEDIA_PARAMETERS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_FIXED_PARTITIONS = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_SELECT_PARTITIONS = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_INITIATOR_PARTITIONS = 2 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_CREATE_PARTITION {
c2b7a98c21 2011-02-23        kinaba:   DWORD Method;
c2b7a98c21 2011-02-23        kinaba:   DWORD Count;
c2b7a98c21 2011-02-23        kinaba:   DWORD Size;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_CREATE_PARTITION TAPE_CREATE_PARTITION;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_CREATE_PARTITION* PTAPE_CREATE_PARTITION;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_QUERY_DRIVE_PARAMETERS = 0 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_QUERY_MEDIA_CAPACITY = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_CHECK_FOR_DRIVE_PROBLEM = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_QUERY_IO_ERROR_DATA = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { TAPE_QUERY_DEVICE_ERROR_DATA = 4 }
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: struct _TAPE_WMI_OPERATIONS {
c2b7a98c21 2011-02-23        kinaba:   DWORD Method;
c2b7a98c21 2011-02-23        kinaba:   DWORD DataBufferSize;
c2b7a98c21 2011-02-23        kinaba:   PVOID DataBuffer;
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_WMI_OPERATIONS TAPE_WMI_OPERATIONS;
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_WMI_OPERATIONS* PTAPE_WMI_OPERATIONS;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: alias int _TAPE_DRIVE_PROBLEM_TYPE;
c2b7a98c21 2011-02-23        kinaba: enum {
c2b7a98c21 2011-02-23        kinaba:   TapeDriveProblemNone,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveReadWriteWarning,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveReadWriteError,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveReadWarning,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveWriteWarning,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveReadError,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveWriteError,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveHardwareError,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveUnsupportedMedia,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveScsiConnectionError,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveTimetoClean,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveCleanDriveNow,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveMediaLifeExpired,
c2b7a98c21 2011-02-23        kinaba:   TapeDriveSnappedTape,
c2b7a98c21 2011-02-23        kinaba: }
c2b7a98c21 2011-02-23        kinaba: alias _TAPE_DRIVE_PROBLEM_TYPE TAPE_DRIVE_PROBLEM_TYPE;
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if defined(_M_AMD64) && !defined(__midl)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // ...
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif // _M_AMD64 && !defined(__midl)
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #if (_WIN32_WINNT > 0x0500) || (_WIN32_FUSION >= 0x0100) || ISOLATION_AWARE_ENABLED // winnt_only
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION = 1 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION = 2 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION = 3 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_SECTION_COM_SERVER_REDIRECTION = 4 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_SECTION_COM_INTERFACE_REDIRECTION = 5 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_SECTION_COM_TYPE_LIBRARY_REDIRECTION = 6 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_SECTION_COM_PROGID_REDIRECTION = 7 }
c2b7a98c21 2011-02-23        kinaba: enum : uint { ACTIVATION_CONTEXT_SECTION_GLOBAL_OBJECT_RENAME_TABLE = 8 }
c2b7a98c21 2011-02-23        kinaba: // #endif // winnt_only
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #ifdef __cplusplus
c2b7a98c21 2011-02-23        kinaba: // }
c2b7a98c21 2011-02-23        kinaba: // #endif
c2b7a98c21 2011-02-23        kinaba: 
c2b7a98c21 2011-02-23        kinaba: // #endif /* _WINNT_ */
c2b7a98c21 2011-02-23        kinaba: