Skip to content

Embed URL

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
windows.h.js INFINITY
var ffi = require('ffi'),
ref = require('ref'),
Struct = require('ref-struct'),
Library = require('./Library'),
Type = ref.Type,
NULL = ref.NULL,
isNull = ref.isNull;
var groups = ['libs', 'types', 'structs', 'callbacks', 'enums'];
module.exports = lookup;
function lookup(name){
if (name == null || name.toLowerCase() === 'null') {
return NULL;
}
var i = groups.length;
while (i--) {
if (name in lookup[groups[i]]) {
return lookup[groups[i]][name];
}
}
for (var k in lookup.libs) {
if (name in lookup.libs[k]) {
return lookup.libs[k][name];
}
if ((name + 'A') in lookup.libs[k]) {
return lookup.libs[k][name + 'A'];
}
}
}
lookup.NULL = ref.NULL;
lookup.isNull = ref.isNull;
groups.forEach(function(name){
lookup[name] = {};
});
var types = lookup.types;
var
VOID = types.void = ffi.types.void,
bool = types.bool = ffi.types.bool,
int8 = types.int8 = ffi.types.int8,
uint8 = types.uint8 = ffi.types.uint8,
int16 = types.int16 = ffi.types.int16,
uint16 = types.uint16 = ffi.types.uint16,
int32 = types.int32 = ffi.types.int32,
uint32 = types.uint32 = ffi.types.uint32,
int64 = types.int64 = ffi.types.int64,
uint64 = types.uint64 = ffi.types.uint64,
float = types.float = ffi.types.float,
double = types.double = ffi.types.double,
byte = types.byte = ffi.types.byte,
char = types.char = ffi.types.char,
uchar = types.uchar = ffi.types.uchar,
short = types.short = ffi.types.short,
ushort = types.ushort = ffi.types.ushort,
int = types.int = ffi.types.int,
uint = types.uint = ffi.types.uint,
long = types.long = ffi.types.long,
ulong = types.ulong = ffi.types.ulong,
longlong = types.longlong = ffi.types.longlong,
ulonglong = types.ulonglong = ffi.types.ulonglong,
size_t = types.size_t = ffi.types.size_t,
string = types.CString = ffi.types.CString,
VOIDPTR = TYPEDEF('VOIDPTR', PTR(VOID));
function PTR(type){
return ref.refType(type);
}
function TYPEDEF(name, type){
return type.typedef(name);
}
function CALLBACK(name, ret, args){
var f = new Function('cb', 'ret', 'args', 'return function '+name+'(f){ return cb(ret, args, f) }')(ffi.Callback, ret, args);
lookup.callbacks[name] = f;
return TYPEDEF(name, VOIDPTR);
}
function STRUCT(name, fields){
return lookup.structs[name] = new Struct(name, fields);
}
function ENUM(name, values){
var enumeration = lookup.enums[name] = new Enumeration(values);
enumeration.name = name;
return enumeration;
}
function LIBRARY(name, functions){
return lookup.libs[name] = new Library(name, functions);
}
function ARRAY(type, length){
var fields = {};
Array.apply(null, new Array(length)).forEach(function(x, i){
fields[i] = type;
});
return STRUCT(type.name+'x'+length, fields);
}
function Enumeration(values){
this._keys = new Map;
this._values = new Map;
Object.keys(values).forEach(function(key){
this._keys.set(key, values[key]);
this._values.set(values[key], key);
this[key] = values[key];
}, this);
}
Enumeration.prototype.toKey = function toKey(v){
if (this._keys.has(v)) {
return v;
} else {
return this._values.get(v);
}
};
Enumeration.prototype.toValue = function toValue(v){
if (this._values.has(v)) {
return v;
} else {
return this._keys.get(v);
}
};
var
uintptr_t = TYPEDEF('uintptr_t', uint),
va_list = TYPEDEF('va_list', PTR(int8)),
size_t = TYPEDEF('size_t', uint),
rsize_t = TYPEDEF('rsize_t', uint),
wchar_t = TYPEDEF('wchar_t', ushort),
wint_t = TYPEDEF('wint_t', ushort),
wctype_t = TYPEDEF('wctype_t', ushort),
errno_t = TYPEDEF('errno_t', int),
ULONG = TYPEDEF('ULONG', ulong),
PULONG = TYPEDEF('PULONG', PTR(ulong)),
USHORT = TYPEDEF('USHORT', ushort),
PUSHORT = TYPEDEF('PUSHORT', PTR(ushort)),
UCHAR = TYPEDEF('UCHAR', uchar),
PUCHAR = TYPEDEF('PUCHAR', PTR(uchar)),
DWORD = TYPEDEF('DWORD', ulong),
BOOL = TYPEDEF('BOOL', int),
BYTE = TYPEDEF('BYTE', uchar),
WORD = TYPEDEF('WORD', ushort),
FLOAT = TYPEDEF('FLOAT', float),
PFLOAT = TYPEDEF('PFLOAT', PTR(float)),
PBOOL = TYPEDEF('PBOOL', PTR(int)),
LPBOOL = TYPEDEF('LPBOOL', PTR(int)),
PBYTE = TYPEDEF('PBYTE', PTR(uchar)),
LPBYTE = TYPEDEF('LPBYTE', PTR(uchar)),
LPINT = TYPEDEF('LPINT', PTR(int)),
PWORD = TYPEDEF('PWORD', PTR(ushort)),
LPWORD = TYPEDEF('LPWORD', PTR(ushort)),
LPLONG = TYPEDEF('LPLONG', PTR(long)),
PDWORD = TYPEDEF('PDWORD', PTR(ulong)),
LPDWORD = TYPEDEF('LPDWORD', PTR(ulong)),
LPVOID = TYPEDEF('LPVOID', PTR(VOID)),
LPCVOID = TYPEDEF('LPCVOID', PTR(VOID)),
INT = TYPEDEF('INT', int),
UINT = TYPEDEF('UINT', uint),
PUINT = TYPEDEF('PUINT', PTR(uint)),
UINT16 = TYPEDEF('UINT16', ushort),
UINT32 = TYPEDEF('UINT32', uint),
UINT64 = TYPEDEF('UINT64', ulonglong),
INT_PTR = TYPEDEF('INT_PTR', int),
UINT_PTR = TYPEDEF('UINT_PTR', uint),
PUINT_PTR = TYPEDEF('PUINT_PTR', PTR(uint)),
LONG_PTR = TYPEDEF('LONG_PTR', long),
ULONG_PTR = TYPEDEF('ULONG_PTR', ulong),
PULONG_PTR = TYPEDEF('PULONG_PTR', PTR(ulong)),
SIZE_T = TYPEDEF('SIZE_T', ulong),
PSIZE_T = TYPEDEF('PSIZE_T', PTR(ulong)),
DWORD_PTR = TYPEDEF('DWORD_PTR', ulong),
PDWORD_PTR = TYPEDEF('PDWORD_PTR', PTR(ulong)),
LONG64 = TYPEDEF('LONG64', longlong),
ULONG64 = TYPEDEF('ULONG64', ulonglong),
PULONG64 = TYPEDEF('PULONG64', PTR(ulonglong)),
DWORD64 = TYPEDEF('DWORD64', ulonglong),
KAFFINITY = TYPEDEF('KAFFINITY', ulong),
PVOID = TYPEDEF('PVOID', PTR(VOID)),
PVOID64 = TYPEDEF('PVOID64', PTR(VOID)),
CHAR = TYPEDEF('CHAR', int8),
SHORT = TYPEDEF('SHORT', short),
LONG = TYPEDEF('LONG', long),
WCHAR = TYPEDEF('WCHAR', ushort),
PWCHAR = TYPEDEF('PWCHAR', PTR(ushort)),
LPWCH = TYPEDEF('LPWCH', PTR(ushort)),
LPWSTR = TYPEDEF('LPWSTR', PTR(ushort)),
PWSTR = TYPEDEF('PWSTR', PTR(ushort)),
PUWSTR = TYPEDEF('PUWSTR', PTR(ushort)),
LPCWSTR = TYPEDEF('LPCWSTR', PTR(ushort)),
PCWSTR = TYPEDEF('PCWSTR', PTR(ushort)),
PCUWSTR = TYPEDEF('PCUWSTR', PTR(ushort)),
PZZWSTR = TYPEDEF('PZZWSTR', PTR(ushort)),
PCZZWSTR = TYPEDEF('PCZZWSTR', PTR(ushort)),
PCNZWCH = TYPEDEF('PCNZWCH', PTR(ushort)),
LPCH = TYPEDEF('LPCH', PTR(int8)),
LPCCH = TYPEDEF('LPCCH', PTR(int8)),
LPSTR = TYPEDEF('LPSTR', PTR(int8)),
PSTR = TYPEDEF('PSTR', PTR(int8)),
LPCSTR = TYPEDEF('LPCSTR', PTR(int8)),
PCNZCH = TYPEDEF('PCNZCH', PTR(int8)),
PLONG = TYPEDEF('PLONG', PTR(long)),
HANDLE = TYPEDEF('HANDLE', PTR(VOID)),
HRESULT = TYPEDEF('HRESULT', long),
CCHAR = TYPEDEF('CCHAR', int8),
LCID = TYPEDEF('LCID', ulong),
LANGID = TYPEDEF('LANGID', ushort),
LONGLONG = TYPEDEF('LONGLONG', longlong),
ULONGLONG = TYPEDEF('ULONGLONG', ulonglong),
PULONGLONG = TYPEDEF('PULONGLONG', PTR(ulonglong)),
USN = TYPEDEF('USN', longlong),
DWORDLONG = TYPEDEF('DWORDLONG', ulonglong),
BOOLEAN = TYPEDEF('BOOLEAN', uchar),
PBOOLEAN = TYPEDEF('PBOOLEAN', PTR(uchar)),
PACCESS_TOKEN = TYPEDEF('PACCESS_TOKEN', PTR(VOID)),
PSECURITY_DESCRIPTOR = TYPEDEF('PSECURITY_DESCRIPTOR', PTR(VOID)),
PSID = TYPEDEF('PSID', PTR(VOID)),
ACCESS_MASK = TYPEDEF('ACCESS_MASK', ulong),
PACCESS_MASK = TYPEDEF('PACCESS_MASK', PTR(ulong)),
SID_HASH_ENTRY = TYPEDEF('SID_HASH_ENTRY', ulong),
SECURITY_DESCRIPTOR_CONTROL = TYPEDEF('SECURITY_DESCRIPTOR_CONTROL', ushort),
PSECURITY_DESCRIPTOR_CONTROL = TYPEDEF('PSECURITY_DESCRIPTOR_CONTROL', PTR(ushort)),
ACCESS_REASON = TYPEDEF('ACCESS_REASON', ulong),
SECURITY_CONTEXT_TRACKING_MODE = TYPEDEF('SECURITY_CONTEXT_TRACKING_MODE', uchar),
SECURITY_INFORMATION = TYPEDEF('SECURITY_INFORMATION', ulong),
PSECURITY_INFORMATION = TYPEDEF('PSECURITY_INFORMATION', PTR(ulong)),
EXECUTION_STATE = TYPEDEF('EXECUTION_STATE', ulong),
SAVEPOINT_ID = TYPEDEF('SAVEPOINT_ID', ulong),
TP_VERSION = TYPEDEF('TP_VERSION', ulong),
WPARAM = TYPEDEF('WPARAM', uint),
LPARAM = TYPEDEF('LPARAM', long),
LRESULT = TYPEDEF('LRESULT', long),
ATOM = TYPEDEF('ATOM', ushort),
HGLOBAL = TYPEDEF('HGLOBAL', PTR(VOID)),
HLOCAL = TYPEDEF('HLOCAL', PTR(VOID)),
HGDIOBJ = TYPEDEF('HGDIOBJ', PTR(VOID)),
HFILE = TYPEDEF('HFILE', int),
COLORREF = TYPEDEF('COLORREF', ulong),
PUMS_CONTEXT = TYPEDEF('PUMS_CONTEXT', PTR(VOID)),
PUMS_COMPLETION_LIST = TYPEDEF('PUMS_COMPLETION_LIST', PTR(VOID)),
LCSCSTYPE = TYPEDEF('LCSCSTYPE', long),
LCSGAMUTMATCH = TYPEDEF('LCSGAMUTMATCH', long),
FXPT2DOT30 = TYPEDEF('FXPT2DOT30', long),
COLOR16 = TYPEDEF('COLOR16', ushort),
HDWP = TYPEDEF('HDWP', PTR(VOID)),
HDEVNOTIFY = TYPEDEF('HDEVNOTIFY', PTR(VOID)),
HPOWERNOTIFY = TYPEDEF('HPOWERNOTIFY', PTR(VOID)),
LGRPID = TYPEDEF('LGRPID', ulong),
LCTYPE = TYPEDEF('LCTYPE', ulong),
CALTYPE = TYPEDEF('CALTYPE', ulong),
CALID = TYPEDEF('CALID', ulong),
NLS_FUNCTION = TYPEDEF('NLS_FUNCTION', ulong),
GEOID = TYPEDEF('GEOID', long),
GEOTYPE = TYPEDEF('GEOTYPE', ulong),
GEOCLASS = TYPEDEF('GEOCLASS', ulong),
REGSAM = TYPEDEF('REGSAM', ulong),
LSTATUS = TYPEDEF('LSTATUS', long),
MMVERSION = TYPEDEF('MMVERSION', uint),
MMRESULT = TYPEDEF('MMRESULT', uint),
LPUINT = TYPEDEF('LPUINT', PTR(uint)),
FOURCC = TYPEDEF('FOURCC', ulong),
HPSTR = TYPEDEF('HPSTR', PTR(int8)),
MCIERROR = TYPEDEF('MCIERROR', ulong),
MCIDEVICEID = TYPEDEF('MCIDEVICEID', uint),
RPC_STATUS = TYPEDEF('RPC_STATUS', long),
RPC_CSTR = TYPEDEF('RPC_CSTR', PTR(uchar)),
RPC_WSTR = TYPEDEF('RPC_WSTR', PTR(ushort)),
RPC_BINDING_HANDLE = TYPEDEF('RPC_BINDING_HANDLE', PTR(VOID)),
handle_t = TYPEDEF('handle_t', PTR(VOID)),
RPC_IF_HANDLE = TYPEDEF('RPC_IF_HANDLE', PTR(VOID)),
RPC_AUTH_IDENTITY_HANDLE = TYPEDEF('RPC_AUTH_IDENTITY_HANDLE', PTR(VOID)),
RPC_ADDRESS_CHANGE_FN = TYPEDEF('RPC_ADDRESS_CHANGE_FN', CALLBACK(VOID, [PTR(VOID)])),
I_RPC_MUTEX = TYPEDEF('I_RPC_MUTEX', PTR(VOID)),
RPC_NS_HANDLE = TYPEDEF('RPC_NS_HANDLE', PTR(VOID)),
FILEOP_FLAGS = TYPEDEF('FILEOP_FLAGS', ushort),
u_short = TYPEDEF('u_short', ushort),
u_int = TYPEDEF('u_int', uint),
u_long = TYPEDEF('u_long', ulong),
SOCKET = TYPEDEF('SOCKET', uint),
ALG_ID = TYPEDEF('ALG_ID', uint),
HCRYPTPROV = TYPEDEF('HCRYPTPROV', ulong),
HCRYPTKEY = TYPEDEF('HCRYPTKEY', ulong),
HCRYPTHASH = TYPEDEF('HCRYPTHASH', ulong),
NTSTATUS = TYPEDEF('NTSTATUS', long),
BCRYPT_HANDLE = TYPEDEF('BCRYPT_HANDLE', PTR(VOID)),
BCRYPT_ALG_HANDLE = TYPEDEF('BCRYPT_ALG_HANDLE', PTR(VOID)),
BCRYPT_KEY_HANDLE = TYPEDEF('BCRYPT_KEY_HANDLE', PTR(VOID)),
BCRYPT_HASH_HANDLE = TYPEDEF('BCRYPT_HASH_HANDLE', PTR(VOID)),
BCRYPT_SECRET_HANDLE = TYPEDEF('BCRYPT_SECRET_HANDLE', PTR(VOID)),
SECURITY_STATUS = TYPEDEF('SECURITY_STATUS', long),
NCRYPT_HANDLE = TYPEDEF('NCRYPT_HANDLE', ulong),
NCRYPT_PROV_HANDLE = TYPEDEF('NCRYPT_PROV_HANDLE', ulong),
NCRYPT_KEY_HANDLE = TYPEDEF('NCRYPT_KEY_HANDLE', ulong),
NCRYPT_SECRET_HANDLE = TYPEDEF('NCRYPT_SECRET_HANDLE', ulong),
HCRYPTPROV_OR_NCRYPT_KEY_HANDLE = TYPEDEF('HCRYPTPROV_OR_NCRYPT_KEY_HANDLE', ulong),
HCRYPTPROV_LEGACY = TYPEDEF('HCRYPTPROV_LEGACY', ulong),
HCRYPTOIDFUNCSET = TYPEDEF('HCRYPTOIDFUNCSET', PTR(VOID)),
HCRYPTOIDFUNCADDR = TYPEDEF('HCRYPTOIDFUNCADDR', PTR(VOID)),
HCRYPTMSG = TYPEDEF('HCRYPTMSG', PTR(VOID)),
HCERTSTORE = TYPEDEF('HCERTSTORE', PTR(VOID)),
HCERTSTOREPROV = TYPEDEF('HCERTSTOREPROV', PTR(VOID)),
HCRYPTDEFAULTCONTEXT = TYPEDEF('HCRYPTDEFAULTCONTEXT', PTR(VOID)),
HCRYPTASYNC = TYPEDEF('HCRYPTASYNC', PTR(VOID)),
HCERTCHAINENGINE = TYPEDEF('HCERTCHAINENGINE', PTR(VOID)),
HCERT_SERVER_OCSP_RESPONSE = TYPEDEF('HCERT_SERVER_OCSP_RESPONSE', PTR(VOID)),
byte = TYPEDEF('byte', uchar),
NDR_CCONTEXT = TYPEDEF('NDR_CCONTEXT', PTR(VOID)),
PFORMAT_STRING = TYPEDEF('PFORMAT_STRING', PTR(uchar)),
RPC_SS_THREAD_HANDLE = TYPEDEF('RPC_SS_THREAD_HANDLE', PTR(VOID)),
OLECHAR = TYPEDEF('OLECHAR', ushort),
LPOLESTR = TYPEDEF('LPOLESTR', PTR(ushort)),
LPCOLESTR = TYPEDEF('LPCOLESTR', PTR(ushort)),
DOUBLE = TYPEDEF('DOUBLE', double),
SCODE = TYPEDEF('SCODE', long),
CLIPFORMAT = TYPEDEF('CLIPFORMAT', ushort),
HMETAFILEPICT = TYPEDEF('HMETAFILEPICT', PTR(VOID)),
DATE = TYPEDEF('DATE', double),
BSTR = TYPEDEF('BSTR', PTR(ushort)),
VARIANT_BOOL = TYPEDEF('VARIANT_BOOL', short),
VARTYPE = TYPEDEF('VARTYPE', ushort),
PROPID = TYPEDEF('PROPID', ulong),
DEVICE_DATA_MANAGEMENT_SET_ACTION = TYPEDEF('DEVICE_DATA_MANAGEMENT_SET_ACTION', ulong),
LPCBYTE = TYPEDEF('LPCBYTE', PTR(uchar)),
SCARDCONTEXT = TYPEDEF('SCARDCONTEXT', ulong),
LPSCARDCONTEXT = TYPEDEF('LPSCARDCONTEXT', PTR(ulong)),
SCARDHANDLE = TYPEDEF('SCARDHANDLE', ulong),
LPSCARDHANDLE = TYPEDEF('LPSCARDHANDLE', PTR(ulong)),
RPCOLEDATAREP = TYPEDEF('RPCOLEDATAREP', ulong),
HOLEMENU = TYPEDEF('HOLEMENU', PTR(VOID)),
DISPID = TYPEDEF('DISPID', long),
MEMBERID = TYPEDEF('MEMBERID', long),
HREFTYPE = TYPEDEF('HREFTYPE', ulong),
PROPVAR_PAD1 = TYPEDEF('PROPVAR_PAD1', ushort),
PROPVAR_PAD2 = TYPEDEF('PROPVAR_PAD2', ushort),
PROPVAR_PAD3 = TYPEDEF('PROPVAR_PAD3', ushort),
SC_LOCK = TYPEDEF('SC_LOCK', PTR(VOID)),
HWND = TYPEDEF('HWND', HANDLE),
HHOOK = TYPEDEF('HHOOK', HANDLE),
HKEY = TYPEDEF('HKEY', HANDLE),
HACCEL = TYPEDEF('HACCEL', HANDLE),
HBITMAP = TYPEDEF('HBITMAP', HANDLE),
HBRUSH = TYPEDEF('HBRUSH', HANDLE),
HCOLORSPACE = TYPEDEF('HCOLORSPACE', HANDLE),
HDC = TYPEDEF('HDC', HANDLE),
HGLRC = TYPEDEF('HGLRC', HANDLE),
HDESK = TYPEDEF('HDESK', HANDLE),
HENHMETAFILE = TYPEDEF('HENHMETAFILE', HANDLE),
HFONT = TYPEDEF('HFONT', HANDLE),
HICON = TYPEDEF('HICON', HANDLE),
HMENU = TYPEDEF('HMENU', HANDLE),
HMETAFILE = TYPEDEF('HMETAFILE', HANDLE),
HINSTANCE = TYPEDEF('HINSTANCE', HANDLE),
HPALETTE = TYPEDEF('HPALETTE', HANDLE),
HPEN = TYPEDEF('HPEN', HANDLE),
HRGN = TYPEDEF('HRGN', HANDLE),
HRSRC = TYPEDEF('HRSRC', HANDLE),
HSPRITE = TYPEDEF('HSPRITE', HANDLE),
HLSURF = TYPEDEF('HLSURF', HANDLE),
HSTR = TYPEDEF('HSTR', HANDLE),
HTASK = TYPEDEF('HTASK', HANDLE),
HWINSTA = TYPEDEF('HWINSTA', HANDLE),
HKL = TYPEDEF('HKL', HANDLE),
HWINEVENTHOOK = TYPEDEF('HWINEVENTHOOK', HANDLE),
HMONITOR = TYPEDEF('HMONITOR', HANDLE),
HUMPD = TYPEDEF('HUMPD', HANDLE);
var EXCEPTION_DISPOSITION = ENUM('EXCEPTION_DISPOSITION', {
ContinueExecution: 0,
ContinueSearch: 1,
NestedException: 2,
CollidedUnwind: 3
});
var SID_NAME_USE = ENUM('SID_NAME_USE', {
TypeUser: 1,
TypeGroup: 1,
TypeDomain: 2,
TypeAlias: 3,
TypeWellKnownGroup: 4,
TypeDeletedAccount: 5,
TypeInvalid: 6,
TypeUnknown: 7,
TypeComputer: 8,
TypeLabel: 9
});
var WELL_KNOWN_SID_TYPE = ENUM('WELL_KNOWN_SID_TYPE', {
WinNullSid: 0,
WinWorldSid: 1,
WinLocalSid: 2,
WinCreatorOwnerSid: 3,
WinCreatorGroupSid: 4,
WinCreatorOwnerServerSid: 5,
WinCreatorGroupServerSid: 6,
WinNtAuthoritySid: 7,
WinDialupSid: 8,
WinNetworkSid: 9,
WinBatchSid: 10,
WinInteractiveSid: 11,
WinServiceSid: 12,
WinAnonymousSid: 13,
WinProxySid: 14,
WinEnterpriseControllersSid: 15,
WinSelfSid: 16,
WinAuthenticatedUserSid: 17,
WinRestrictedCodeSid: 18,
WinTerminalServerSid: 19,
WinRemoteLogonSid: 20,
WinLogonIdsSid: 21,
WinLocalSystemSid: 22,
WinLocalServiceSid: 23,
WinNetworkServiceSid: 24,
WinBuiltinDomainSid: 25,
WinBuiltinAdministratorsSid: 26,
WinBuiltinUsersSid: 27,
WinBuiltinGuestsSid: 28,
WinBuiltinPowerUsersSid: 29,
WinBuiltinAccountOperatorsSid: 30,
WinBuiltinSystemOperatorsSid: 31,
WinBuiltinPrintOperatorsSid: 32,
WinBuiltinBackupOperatorsSid: 33,
WinBuiltinReplicatorSid: 34,
WinBuiltinPreWindows2000CompatibleAccessSid: 35,
WinBuiltinRemoteDesktopUsersSid: 36,
WinBuiltinNetworkConfigurationOperatorsSid: 37,
WinAccountAdministratorSid: 38,
WinAccountGuestSid: 39,
WinAccountKrbtgtSid: 40,
WinAccountDomainAdminsSid: 41,
WinAccountDomainUsersSid: 42,
WinAccountDomainGuestsSid: 43,
WinAccountComputersSid: 44,
WinAccountControllersSid: 45,
WinAccountCertAdminsSid: 46,
WinAccountSchemaAdminsSid: 47,
WinAccountEnterpriseAdminsSid: 48,
WinAccountPolicyAdminsSid: 49,
WinAccountRasAndIasServersSid: 50,
WinNtlmAuthenticationSid: 51,
WinDigestAuthenticationSid: 52,
WinChannelAuthenticationSid: 53,
WinThisOrganizationSid: 54,
WinOtherOrganizationSid: 55,
WinBuiltinIncomingForestTrustBuildersSid: 56,
WinBuiltinPerfMonitoringUsersSid: 57,
WinBuiltinPerfLoggingUsersSid: 58,
WinBuiltinAuthorizationAccessSid: 59,
WinBuiltinTerminalServerLicenseServersSid: 60,
WinBuiltinDcomUsersSid: 61,
WinBuiltinUsersSid: 62,
WinUserSid: 63,
WinBuiltinCryptoOperatorsSid: 64,
WinUntrustedLabelSid: 65,
WinLowLabelSid: 66,
WinMediumLabelSid: 67,
WinHighLabelSid: 68,
WinSystemLabelSid: 69,
WinWriteRestrictedCodeSid: 70,
WinCreatorOwnerRightsSid: 71,
WinCacheablePrincipalsGroupSid: 72,
WinNonCacheablePrincipalsGroupSid: 73,
WinEnterpriseReadonlyControllersSid: 74,
WinAccountReadonlyControllersSid: 75,
WinBuiltinEventLogReadersGroup: 76,
WinNewEnterpriseReadonlyControllersSid: 77,
WinBuiltinCertSvcComAccessGroup: 78,
WinMediumPlusLabelSid: 79,
WinLocalLogonSid: 80,
WinConsoleLogonSid: 81,
WinThisOrganizationCertificateSid: 82
});
var ACL_INFORMATION_CLASS = ENUM('ACL_INFORMATION_CLASS', {
RevisionInformation: 1,
SizeInformation: 1
});
var AUDIT_EVENT_TYPE = ENUM('AUDIT_EVENT_TYPE', {
ObjectAccess: 0,
DirectoryServiceAccess: 1
});
var ACCESS_REASON_TYPE = ENUM('ACCESS_REASON_TYPE', {
None: 0x00000000,
AllowedAce: 0x00010000,
DeniedAce: 0x00020000,
AllowedParentAce: 0x00030000,
DeniedParentAce: 0x00040000,
MissingPrivilege: 0x00100000,
FromPrivilege: 0x00200000,
IntegrityLevel: 0x00300000,
Ownership: 0x00400000,
NullDacl: 0x00500000,
EmptyDacl: 0x00600000,
NoSd: 0x00700000,
NoGrant: 0x00800000
});
var SECURITY_IMPERSONATION_LEVEL = ENUM('SECURITY_IMPERSONATION_LEVEL', {
Anonymous: 0,
Identification: 1,
Impersonation: 2,
Delegation: 3
});
var TOKEN_TYPE = ENUM('TOKEN_TYPE', {
Primary: 1,
Impersonation: 1
});
var TOKEN_ELEVATION_TYPE = ENUM('TOKEN_ELEVATION_TYPE', {
Default: 1,
Full: 1,
Limited: 2
});
var TOKEN_INFORMATION_CLASS = ENUM('TOKEN_INFORMATION_CLASS', {
User: 1,
Groups: 1,
Privileges: 2,
Owner: 3,
PrimaryGroup: 4,
DefaultDacl: 5,
Source: 6,
Type: 7,
ImpersonationLevel: 8,
Statistics: 9,
RestrictedSids: 10,
SessionId: 11,
GroupsAndPrivileges: 12,
SessionReference: 13,
SandBoxInert: 14,
AuditPolicy: 15,
Origin: 16,
ElevationType: 17,
LinkedToken: 18,
Elevation: 19,
HasRestrictions: 20,
AccessInformation: 21,
VirtualizationAllowed: 22,
VirtualizationEnabled: 23,
IntegrityLevel: 24,
UiAccess: 25,
MandatoryPolicy: 26,
LogonSid: 27,
MaxClass: 28
});
var MANDATORY_LEVEL = ENUM('MANDATORY_LEVEL', {
Untrusted: 0,
Low: 1,
Medium: 2,
High: 3,
System: 4,
SecureProcess: 5,
Count: 6
});
var HARDWARE_COUNTER_TYPE = ENUM('HARDWARE_COUNTER_TYPE', {
PmcCounter: 0,
MaxType: 1
});
var JOBOBJECTINFOCLASS = ENUM('JOBOBJECTINFOCLASS', {
BasicAccountingInformation: 1,
BasicLimitInformation: 1,
BasicProcessIdList: 2,
BasicUiRestrictions: 3,
SecurityLimitInformation: 4,
EndOfTimeInformation: 5,
AssociateCompletionPortInformation: 6,
BasicAndIoAccountingInformation: 7,
ExtendedLimitInformation: 8,
SetInformation: 9,
GroupInformation: 10,
MaxClass: 11
});
var LOGICAL_PROCESSOR_RELATIONSHIP = ENUM('LOGICAL_PROCESSOR_RELATIONSHIP', {
Core: 0,
NumaNode: 1,
Cache: 2,
Package: 3,
Group: 4,
All: 0xffff
});
var PROCESSOR_CACHE_TYPE = ENUM('PROCESSOR_CACHE_TYPE', {
Unified: 0,
Instruction: 1,
Data: 2,
Trace: 3
});
var SYSTEM_POWER_STATE = ENUM('SYSTEM_POWER_STATE', {
Unspecified: 0,
Working: 1,
Sleeping1: 2,
Sleeping2: 3,
Sleeping3: 4,
Hibernate: 5,
Shutdown: 6,
Maximum: 7
});
var POWER_ACTION = ENUM('POWER_ACTION', {
None: 0,
Reserved: 1,
Sleep: 2,
Hibernate: 3,
Shutdown: 4,
ShutdownReset: 5,
ShutdownOff: 6,
WarmEject: 7
});
var DEVICE_POWER_STATE = ENUM('DEVICE_POWER_STATE', {
Unspecified: 0,
D0: 1,
D1: 2,
D2: 3,
D3: 4,
Maximum: 5
});
var MONITOR_DISPLAY_STATE = ENUM('MONITOR_DISPLAY_STATE', {
PowerOff: 0,
PowerOn: 1,
PowerDim: 2
});
var LATENCY_TIME = ENUM('LATENCY_TIME', {
LtDontCare: 0,
LtLowestLatency: 1
});
var POWER_REQUEST_TYPE = ENUM('POWER_REQUEST_TYPE', {
DisplayRequired: 0,
SystemRequired: 1,
AwayModeRequired: 2
});
var POWER_INFORMATION_LEVEL = ENUM('POWER_INFORMATION_LEVEL', {
SystemPolicyAc: 0,
SystemPolicyDc: 1,
VerifySystemPolicyAc: 2,
VerifySystemPolicyDc: 3,
SystemCapabilities: 4,
SystemBatteryState: 5,
SystemStateHandler: 6,
ProcessorStateHandler: 7,
SystemPolicyCurrent: 8,
AdministratorPolicy: 9,
SystemReserveHiberFile: 10,
ProcessorInformation: 11,
SystemInformation: 12,
ProcessorStateHandler2: 13,
LastWakeTime: 14,
LastSleepTime: 15,
SystemExecutionState: 16,
SystemStateNotifyHandler: 17,
ProcessorPolicyAc: 18,
ProcessorPolicyDc: 19,
VerifyProcessorPolicyAc: 20,
VerifyProcessorPolicyDc: 21,
ProcessorPolicyCurrent: 22,
SystemStateLogging: 23,
SystemLoggingEntry: 24,
SetSettingValue: 25,
NotifyUserSetting: 26,
Unused0: 27,
Unused1: 28,
SystemVideoState: 29,
TraceApplicationMessage: 30,
TraceApplicationMessageEnd: 31,
ProcessorPerfStates: 32,
ProcessorIdleStates: 33,
ProcessorCap: 34,
SystemWakeSource: 35,
SystemHiberFileInformation: 36,
TraceServiceMessage: 37,
ProcessorLoad: 38,
ShutdownNotification: 39,
MonitorCapabilities: 40,
SessionInit: 41,
SessionDisplayState: 42,
RequestCreate: 43,
RequestAction: 44,
GetRequestList: 45,
ProcessorEx: 46,
NotifyUserModeLegacyEvent: 47,
GroupPark: 48,
ProcessorIdleDomains: 49,
WakeTimerList: 50,
SystemHiberFileSize: 51,
Maximum: 52
});
var SYSTEM_POWER_CONDITION = ENUM('SYSTEM_POWER_CONDITION', {
Ac: 0,
Dc: 1,
Hot: 2,
Maximum: 3
});
var POWER_PLATFORM_ROLE = ENUM('POWER_PLATFORM_ROLE', {
Unspecified: 0,
Desktop: 1,
Mobile: 2,
Workstation: 3,
EnterpriseServer: 4,
SohoServer: 5,
AppliancePc: 6,
PerformanceServer: 7,
Maximum: 8
});
var IMAGE_AUX_SYMBOL_TYPE = ENUM('IMAGE_AUX_SYMBOL_TYPE', {
TokenDef: 1
});
var IMPORT_OBJECT_TYPE = ENUM('IMPORT_OBJECT_TYPE', {
Code: 0,
Data: 1,
Const: 2
});
var IMPORT_OBJECT_NAME_TYPE = ENUM('IMPORT_OBJECT_NAME_TYPE', {
Ordinal: 0,
Name: 1,
NoPrefix: 2,
Undecorate: 3
});
var ReplacesCorHdrNumericDefines = ENUM('ReplacesCorHdrNumericDefines', {
ComimageFlagsIlonly: 0x00000001,
ComimageFlags32bitrequired: 0x00000002,
ComimageFlagsIlLibrary: 0x00000004,
ComimageFlagsStrongnamesigned: 0x00000008,
ComimageFlagsNativeEntrypoint: 0x00000010,
ComimageFlagsTrackdebugdata: 0x00010000,
VersionMajorV2: 2,
VersionMajor: 7,
VersionMinor: 0,
DeletedNameLength: 8,
VtablegapNameLength: 8,
NativeTypeMaxCb: 1,
IlmethodSectSmallMaxDatasize: 0xFF,
ImageMihMethodrva: 0x01,
ImageMihEhrva: 0x02,
ImageMihBasicblock: 0x08,
Vtable32bit: 0x01,
Vtable64bit: 0x02,
VtableFromUnmanaged: 0x04,
VtableFromUnmanagedRetainAppdomain: 0x08,
VtableCallMostDerived: 0x10,
ImageEatjThunkSize: 32,
MaxClassName: 1024,
MaxPackageName: 1024
});
var UMS_THREAD_INFO_CLASS = ENUM('UMS_THREAD_INFO_CLASS', {
InvalidClass: 0,
UserContext: 1,
Priority: 2,
Affinity: 3,
Teb: 4,
IsSuspended: 5,
IsTerminated: 6,
MaxClass: 7
});
var UMS_SCHEDULER_REASON = ENUM('UMS_SCHEDULER_REASON', {
Startup: 0,
ThreadBlocked: 1,
ThreadYield: 2
});
var HEAP_INFORMATION_CLASS = ENUM('HEAP_INFORMATION_CLASS', {
CompatibilityInformation: 0,
EnableTerminationCorruption: 1
});
var ACTIVATION_CONTEXT_INFO_CLASS = ENUM('ACTIVATION_CONTEXT_INFO_CLASS', {
BasicInformation: 1,
DetailedInformation: 2,
AssemblyDetailedInformationContext: 3,
FileInformationAssemblyOfAssemblyContext: 4,
RunlevelInformationContext: 5,
CompatibilityInformationContext: 6,
ManifestResourceName: 7,
MaxClass: 7,
AssemblyDetailedInformationContxt: 3,
FileInformationAssemblyOfAssemblyContxt: 4
});
var ACTCTX_REQUESTED_RUN_LEVEL = ENUM('ACTCTX_REQUESTED_RUN_LEVEL', {
Unspecified: 0,
AsInvoker: 1,
HighestAvailable: 2,
RequireAdmin: 3,
Numbers: 4
});
var ACTCTX_COMPATIBILITY_ELEMENT_TYPE = ENUM('ACTCTX_COMPATIBILITY_ELEMENT_TYPE', {
Unknown: 0,
Os: 1,
Mitigation: 2
});
var SERVICE_NODE_TYPE = ENUM('SERVICE_NODE_TYPE', {
DriverType: SERVICE_KERNEL_DRIVER,
FileSystemType: SERVICE_FILE_SYSTEM_DRIVER,
Win32OwnProcess: SERVICE_WIN32_OWN_PROCESS,
Win32ShareProcess: SERVICE_WIN32_SHARE_PROCESS,
AdapterType: SERVICE_ADAPTER,
RecognizerType: SERVICE_RECOGNIZER_DRIVER
});
var SERVICE_LOAD_TYPE = ENUM('SERVICE_LOAD_TYPE', {
BootLoad: SERVICE_BOOT_START,
SystemLoad: SERVICE_SYSTEM_START,
AutoLoad: SERVICE_AUTO_START,
DemandLoad: SERVICE_DEMAND_START,
DisableLoad: SERVICE_DISABLED
});
var SERVICE_ERROR_TYPE = ENUM('SERVICE_ERROR_TYPE', {
IgnoreError: SERVICE_ERROR_IGNORE,
NormalError: SERVICE_ERROR_NORMAL,
SevereError: SERVICE_ERROR_SEVERE,
CriticalError: SERVICE_ERROR_CRITICAL
});
var TAPE_DRIVE_PROBLEM_TYPE = ENUM('TAPE_DRIVE_PROBLEM_TYPE', {
None: 0,
ReadWriteWarning: 1,
ReadWriteError: 2,
ReadWarning: 3,
WriteWarning: 4,
ReadError: 5,
WriteError: 6,
HardwareError: 7,
UnsupportedMedia: 8,
ScsiConnectionError: 9,
TimetoClean: 10,
CleanNow: 11,
MediaLifeExpired: 12,
SnappedTape: 13
});
var TRANSACTION_OUTCOME = ENUM('TRANSACTION_OUTCOME', {
Undetermined: 1,
Committed: 1,
Aborted: 2
});
var TRANSACTION_STATE = ENUM('TRANSACTION_STATE', {
Normal: 1,
Indoubt: 1,
CommittedNotify: 2
});
var TRANSACTION_INFORMATION_CLASS = ENUM('TRANSACTION_INFORMATION_CLASS', {
BasicInformation: 0,
PropertiesInformation: 1,
EnlistmentInformation: 2,
SuperiorEnlistmentInformation: 3,
BindInformation: 4,
DtcPrivateInformation: 5
});
var TRANSACTIONMANAGER_INFORMATION_CLASS = ENUM('TRANSACTIONMANAGER_INFORMATION_CLASS', {
BasicInformation: 0,
LogInformation: 1,
LogPathInformation: 2,
RecoveryInformation: 4,
OnlineProbeInformation: 3,
OldestInformation: 5
});
var RESOURCEMANAGER_INFORMATION_CLASS = ENUM('RESOURCEMANAGER_INFORMATION_CLASS', {
BasicInformation: 0,
CompletionInformation: 1
});
var ENLISTMENT_INFORMATION_CLASS = ENUM('ENLISTMENT_INFORMATION_CLASS', {
BasicInformation: 0,
RecoveryInformation: 1,
CrmInformation: 2
});
var KTMOBJECT_TYPE = ENUM('KTMOBJECT_TYPE', {
Transaction: 0,
TransactionManager: 1,
ResourceManager: 2,
Enlistment: 3,
Invalid: 4
});
var TP_CALLBACK_PRIORITY = ENUM('TP_CALLBACK_PRIORITY', {
High: 0,
Normal: 1,
Low: 2,
Invalid: 3
});
var DEP_SYSTEM_POLICY_TYPE = ENUM('DEP_SYSTEM_POLICY_TYPE', {
AlwaysOff: 0,
AlwaysOn: 1,
OptIn: 2,
OptOut: 3,
TotalCount: 4
});
var MEMORY_RESOURCE_NOTIFICATION_TYPE = ENUM('MEMORY_RESOURCE_NOTIFICATION_TYPE', {
LowNotification: 0,
HighNotification: 1
});
var PROC_THREAD_ATTRIBUTE_NUM = ENUM('PROC_THREAD_ATTRIBUTE_NUM', {
ParentProcess: 0,
ExtendedFlags: 1,
HandleList: 2,
GroupAffinity: 3,
PreferredNode: 4,
IdealProcessor: 5,
UmsThread: 6,
MitigationPolicy: 7,
Max: 8
});
var GET_FILEEX_INFO_LEVELS = ENUM('GET_FILEEX_INFO_LEVELS', {
Standard: 0,
MaxLevel: 1
});
var FINDEX_INFO_LEVELS = ENUM('FINDEX_INFO_LEVELS', {
Standard: 0,
Basic: 1,
MaxLevel: 2
});
var FINDEX_SEARCH_OPS = ENUM('FINDEX_SEARCH_OPS', {
NameMatch: 0,
LimitToDirectories: 1,
LimitToDevices: 2,
MaxOp: 3
});
var STREAM_INFO_LEVELS = ENUM('STREAM_INFO_LEVELS', {
FindStandard: 0,
FindMaxLevel: 1
});
var PIPE_ATTRIBUTE_TYPE = ENUM('PIPE_ATTRIBUTE_TYPE', {
Attribute: 0,
ConnectionAttribute: 1,
HandleAttribute: 2
});
var COMPUTER_NAME_FORMAT = ENUM('COMPUTER_NAME_FORMAT', {
NetBios: 0,
DnsHostname: 1,
DnsDomain: 2,
DnsFullyQualified: 3,
PhysicalNetBios: 4,
PhysicalDnsHostname: 5,
PhysicalDnsDomain: 6,
PhysicalDnsFullyQualified: 7,
Max: 8
});
var FILE_INFO_BY_HANDLE_CLASS = ENUM('FILE_INFO_BY_HANDLE_CLASS', {
BasicInfo: 0,
StandardInfo: 1,
NameInfo: 2,
RenameInfo: 3,
DispositionInfo: 4,
AllocationInfo: 5,
EndOfInfo: 6,
StreamInfo: 7,
CompressionInfo: 8,
AttributeTagInfo: 9,
IdBothDirectoryInfo: 10,
IdBothDirectoryRestartInfo: 11,
IoPriorityHintInfo: 12,
RemoteProtocolInfo: 13,
MaximumClass: 14
});
var PRIORITY_HINT = ENUM('PRIORITY_HINT', {
VeryLow: 0,
Low: 1,
Normal: 2,
MaximumType: 3
});
var FILE_ID_TYPE = ENUM('FILE_ID_TYPE', {
Type: 0,
ObjectType: 1,
MaximumType: 2
});
var DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY = ENUM('DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY', {
Other: 0,
Hd15: 0,
Svideo: 1,
CompositeVideo: 2,
ComponentVideo: 3,
Dvi: 4,
Hdmi: 5,
Lvds: 6,
Jpn: 8,
Sdi: 9,
DisplayportExternal: 10,
DisplayportEmbedded: 11,
UdiExternal: 12,
UdiEmbedded: 13,
Sdtvdongle: 14,
Internal: 15,
ForceUint32: 16
});
var DISPLAYCONFIG_SCANLINE_ORDERING = ENUM('DISPLAYCONFIG_SCANLINE_ORDERING', {
Unspecified: 0,
Progressive: 1,
Interlaced: 2,
InterlacedUpperfieldfirst: 3,
InterlacedLowerfieldfirst: 3,
ForceUint32: 5
});
var DISPLAYCONFIG_SCALING = ENUM('DISPLAYCONFIG_SCALING', {
Identity: 1,
Centered: 2,
Stretched: 3,
Aspectratiocenteredmax: 4,
Custom: 5,
Preferred: 128,
ForceUint32: 6
});
var DISPLAYCONFIG_ROTATION = ENUM('DISPLAYCONFIG_ROTATION', {
Identity: 1,
Rotate90: 2,
Rotate180: 3,
Rotate270: 4,
ForceUint32: 4
});
var DISPLAYCONFIG_MODE_INFO_TYPE = ENUM('DISPLAYCONFIG_MODE_INFO_TYPE', {
Source: 1,
Target: 2,
ForceUint32: 2
});
var DISPLAYCONFIG_PIXELFORMAT = ENUM('DISPLAYCONFIG_PIXELFORMAT', {
8bpp: 1,
16bpp: 2,
24bpp: 3,
32bpp: 4,
Nongdi: 5,
ForceUint32: 5
});
var DISPLAYCONFIG_TOPOLOGY_ID = ENUM('DISPLAYCONFIG_TOPOLOGY_ID', {
Internal: 0x00000001,
Clone: 0x00000002,
Extend: 0x00000004,
External: 0x00000008,
ForceUint32: 4
});
var DISPLAYCONFIG_DEVICE_INFO_TYPE = ENUM('DISPLAYCONFIG_DEVICE_INFO_TYPE', {
GetSourceName: 1,
GetTargetName: 2,
GetTargetPreferredMode: 3,
GetAdapterName: 4,
SetTargetPersistence: 5,
ForceUint32: 5
});
var SYSNLS_FUNCTION = ENUM('SYSNLS_FUNCTION', {
CompareString: 0x0001
});
var SYSGEOTYPE = ENUM('SYSGEOTYPE', {
Nation: 0x0001,
Latitude: 0x0002,
Longitude: 0x0003,
Iso2: 0x0004,
Iso3: 0x0005,
Rfc1766: 0x0006,
Lcid: 0x0007,
Friendlyname: 0x0008,
Officialname: 0x0009,
Timezones: 0x000A,
Officiallanguages: 0x000B
});
var SYSGEOCLASS = ENUM('SYSGEOCLASS', {
Nation: 16,
Region: 14
});
var NORM_FORM = ENUM('NORM_FORM', {
NormalizationOther: 0,
NormalizationC: 0x1,
NormalizationD: 0x2,
NormalizationKc: 0x5,
NormalizationKd: 0x6
});
var RPC_HTTP_REDIRECTOR_STAGE = ENUM('RPC_HTTP_REDIRECTOR_STAGE', {
Redirect: 1,
Access1: 1,
Session: 2,
Access2: 3,
Interface: 4
});
var RPC_ADDRESS_CHANGE_TYPE = ENUM('RPC_ADDRESS_CHANGE_TYPE', {
ProtocolNotLoaded: 1,
ProtocolLoaded: 1,
ProtocolChange: 2
});
var RpcPerfCounters = ENUM('RpcPerfCounters', {
CurrentUniqueUser: 1,
BackEndConnectionAttempts: 1,
BackEndConnectionFailed: 2,
RequestsSecond: 3,
IncomingConnections: 4,
IncomingBandwidth: 5,
OutgoingBandwidth: 6,
AttemptedLbsDecisions: 7,
FailedLbsDecisions: 8,
AttemptedLbsMessages: 9,
FailedLbsMessages: 10,
LastCounter: 11
});
var RPC_NOTIFICATION_TYPES = ENUM('RPC_NOTIFICATION_TYPES', {
None: 0,
Event: 1,
Apc: 2,
Ioc: 3,
Hwnd: 4,
Callback: 5
});
var RPC_ASYNC_EVENT = ENUM('RPC_ASYNC_EVENT', {
CallComplete: 0,
SendComplete: 1,
ReceiveComplete: 2,
ClientDisconnect: 3,
ClientCancel: 4
});
var ExtendedErrorParamTypes = ENUM('ExtendedErrorParamTypes', {
EeptAnsiString: 1,
EeptUnicodeString: 1,
EeptLongVal: 2,
EeptShortVal: 3,
EeptPointerVal: 4,
EeptNone: 5,
EeptBinary: 6
});
var RpcLocalAddressFormat = ENUM('RpcLocalAddressFormat', {
RlafInvalid: 0,
RlafiPv4: 1,
RlafiPv6: 2
});
var RpcCallType = ENUM('RpcCallType', {
RctInvalid: 0,
RctNormal: 1,
RctTraining: 2,
RctGuaranteed: 3
});
var RpcCallClientLocality = ENUM('RpcCallClientLocality', {
RcclInvalid: 0,
RcclLocal: 1,
RcclRemote: 2,
RcclUnknownLocality: 3
});
var RPC_NOTIFICATIONS = ENUM('RPC_NOTIFICATIONS', {
CallNone: 0,
ClientDisconnect: 1,
CallCancel: 2
});
var ASSOCCLASS = ENUM('ASSOCCLASS', {
ShellKey: 0,
ProgidKey: 1,
ProgidStr: 2,
ClsidKey: 3,
ClsidStr: 4,
AppKey: 5,
AppStr: 6,
SystemStr: 7,
Folder: 8,
Star: 9
});
var QUERY_USER_NOTIFICATION_STATE = ENUM('QUERY_USER_NOTIFICATION_STATE', {
QunsPresent: 1,
QunsBusy: 2,
QunsRunningD3dFullScreen: 3,
QunsPresentationMode: 4,
QunsAcceptsNotifications: 5,
QunsQuietTime: 6
});
var SHSTOCKICONID = ENUM('SHSTOCKICONID', {
SiidDocnoassoc: 0,
SiidDocassoc: 1,
SiidApplication: 2,
SiidFolder: 3,
SiidFolderopen: 4,
SiidDrive525: 5,
SiidDrive35: 6,
SiidDriveremove: 7,
SiidDrivefixed: 8,
SiidDrivenet: 9,
SiidDrivenetdisabled: 10,
SiidDrivecd: 11,
SiidDriveram: 12,
SiidWorld: 13,
SiidServer: 15,
SiidPrinter: 16,
SiidMynetwork: 17,
SiidFind: 22,
SiidHelp: 23,
SiidShare: 28,
SiidLink: 29,
SiidSlowfile: 30,
SiidRecycler: 31,
SiidRecyclerfull: 32,
SiidMediacdaudio: 40,
SiidLock: 47,
SiidAutolist: 49,
SiidPrinternet: 50,
SiidServershare: 51,
SiidPrinterfax: 52,
SiidPrinterfaxnet: 53,
SiidPrinterfile: 54,
SiidStack: 55,
SiidMediasvcd: 56,
SiidStuffedfolder: 57,
SiidDriveunknown: 58,
SiidDrivedvd: 59,
SiidMediadvd: 60,
SiidMediadvdram: 61,
SiidMediadvdrw: 62,
SiidMediadvdr: 63,
SiidMediadvdrom: 64,
SiidMediacdaudioplus: 65,
SiidMediacdrw: 66,
SiidMediacdr: 67,
SiidMediacdburn: 68,
SiidMediablankcd: 69,
SiidMediacdrom: 70,
SiidAudiofiles: 71,
SiidImagefiles: 72,
SiidVideofiles: 73,
SiidMixedfiles: 74,
SiidFolderback: 75,
SiidFolderfront: 76,
SiidShield: 77,
SiidWarning: 78,
SiidInfo: 79,
SiidError: 80,
SiidKey: 81,
SiidSoftware: 82,
SiidRename: 83,
SiidDelete: 84,
SiidMediaaudiodvd: 85,
SiidMediamoviedvd: 86,
SiidMediaenhancedcd: 87,
SiidMediaenhanceddvd: 88,
SiidMediahddvd: 89,
SiidMediabluray: 90,
SiidMediavcd: 91,
SiidMediadvdplusr: 92,
SiidMediadvdplusrw: 93,
SiidDesktoppc: 94,
SiidMobilepc: 95,
SiidUsers: 96,
SiidMediasmartmedia: 97,
SiidMediacompactflash: 98,
SiidDevicecellphone: 99,
SiidDevicecamera: 100,
SiidDevicevideocamera: 101,
SiidDeviceaudioplayer: 102,
SiidNetworkconnect: 103,
SiidInternet: 104,
SiidZipfile: 105,
SiidSettings: 106,
SiidDrivehddvd: 132,
SiidDrivebd: 133,
SiidMediahddvdrom: 134,
SiidMediahddvdr: 135,
SiidMediahddvdram: 136,
SiidMediabdrom: 137,
SiidMediabdr: 138,
SiidMediabdre: 139,
SiidClustereddrive: 140,
SiidMaxIcons: 174
});
var USER_MARSHAL_CB_TYPE = ENUM('USER_MARSHAL_CB_TYPE', {
BufferSize: 0,
Marshall: 1,
Unmarshall: 2,
Free: 3
});
var IDL_CS_CONVERT = ENUM('IDL_CS_CONVERT', {
NoConvert: 0,
InPlaceConvert: 1,
NewBufferConvert: 2
});
var XLAT_SIDE = ENUM('XLAT_SIDE', {
Server: 1,
Client: 1
});
var STUB_PHASE = ENUM('STUB_PHASE', {
Unmarshal: 0,
CallServer: 1,
Marshal: 2,
CallServerNoHresult: 3
});
var PROXY_PHASE = ENUM('PROXY_PHASE', {
Calcsize: 0,
Getbuffer: 1,
Marshal: 2,
Sendreceive: 3,
Unmarshal: 4
});
var MEMCTX = ENUM('MEMCTX', {
Task: 1,
Shared: 2,
Macsystem: 3,
Unknown: 3,
Same: 4
});
var CLSCTX = ENUM('CLSCTX', {
InprocServer: 0x1,
InprocHandler: 0x2,
LocalServer: 0x4,
InprocServer16: 0x8,
RemoteServer: 0x10,
InprocHandler16: 0x20,
Reserved1: 0x40,
Reserved2: 0x80,
Reserved3: 0x100,
Reserved4: 0x200,
NoCodeDownload: 0x400,
Reserved5: 0x800,
NoCustomMarshal: 0x1000,
EnableCodeDownload: 0x2000,
NoFailureLog: 0x4000,
DisableAaa: 0x8000,
EnableAaa: 0x10000,
FromDefaultContext: 0x20000,
Activate32BitServer: 0x40000,
Activate64BitServer: 0x80000,
EnableCloaking: 0x100000,
PsDll: 21
});
var MSHLFLAGS = ENUM('MSHLFLAGS', {
Normal: 0,
Tablestrong: 1,
Tableweak: 2,
Noping: 4,
Reserved1: 8,
Reserved2: 16,
Reserved3: 32,
Reserved4: 64
});
var MSHCTX = ENUM('MSHCTX', {
Local: 0,
Nosharedmem: 1,
Differentmachine: 2,
Inproc: 3,
Crossctx: 4
});
var DVASPECT = ENUM('DVASPECT', {
Content: 1,
Thumbnail: 2,
Icon: 4,
Docprint: 8
});
var STGC = ENUM('STGC', {
Default: 0,
Overwrite: 1,
Onlyifcurrent: 2,
Dangerouslycommitmerelytodiskcache: 4,
Consolidate: 8
});
var STGMOVE = ENUM('STGMOVE', {
Move: 0,
Copy: 1,
Shallowcopy: 2
});
var STATFLAG = ENUM('STATFLAG', {
Default: 0,
Noname: 1,
Noopen: 2
});
var VARENUM = ENUM('VARENUM', {
VtEmpty: 0,
VtNull: 1,
VtI2: 2,
VtI4: 3,
VtR4: 4,
VtR8: 5,
VtCy: 6,
VtDate: 7,
VtBstr: 8,
VtDispatch: 9,
VtError: 10,
VtBool: 11,
VtVariant: 12,
VtUnknown: 13,
VtDecimal: 14,
VtI1: 16,
VtUi1: 17,
VtUi2: 18,
VtUi4: 19,
VtI8: 20,
VtUi8: 21,
VtInt: 22,
VtUint: 23,
VtVoid: 24,
VtHresult: 25,
VtPtr: 26,
VtSafearray: 27,
VtCarray: 28,
VtUserdefined: 29,
VtLpstr: 30,
VtLpwstr: 31,
VtRecord: 36,
VtIntPtr: 37,
VtUintPtr: 38,
VtFiletime: 64,
VtBlob: 65,
VtStream: 66,
VtStorage: 67,
VtStreamedObject: 68,
VtStoredObject: 69,
VtBlobObject: 70,
VtCf: 71,
VtClsid: 72,
VtVersionedStream: 73,
VtBstrBlob: 0xfff,
VtVector: 0x1000,
VtArray: 0x2000,
VtByref: 0x4000,
VtReserved: 0x8000,
VtIllegal: 0xffff,
VtIllegalmasked: 0xfff,
VtTypemask: 0xfff
});
var TYSPEC = ENUM('TYSPEC', {
Clsid: 0,
Fileext: 1,
Mimetype: 2,
Filename: 3,
Progid: 4,
Packagename: 5,
Objectid: 6
});
var STORAGE_MEDIA_TYPE = ENUM('STORAGE_MEDIA_TYPE', {
Dds4mm: 0x20,
MiniQic: 1,
Travan: 2,
Qic: 3,
Mp8mm: 4,
Ame8mm: 5,
Ait18mm: 6,
Dlt: 7,
Nctp: 8,
Ibm3480: 9,
Ibm3490e: 10,
IbmMagstar3590: 11,
IbmMagstarMp: 12,
StkDataD3: 13,
SonyDtf: 14,
Dv6mm: 15,
Dmi: 16,
SonyD2: 17,
CleanerCartridge: 18,
CdRom: 19,
CdR: 20,
CdRw: 21,
DvdRom: 22,
DvdR: 23,
DvdRw: 24,
Mo3Rw: 25,
Mo5Wo: 26,
Mo5Rw: 27,
Mo5Limdow: 28,
Pc5Wo: 29,
Pc5Rw: 30,
Pd5Rw: 31,
Abl5Wo: 32,
PinnacleApex5Rw: 33,
Sony12Wo: 34,
Philips12Wo: 35,
Hitachi12Wo: 36,
Cygnet12Wo: 37,
Kodak14Wo: 38,
MoNfr525: 39,
Nikon12Rw: 40,
IomegaZip: 41,
IomegaJaz: 42,
SyquestEz135: 43,
SyquestEzflyer: 44,
SyquestSyjet: 45,
AvatarF2: 46,
Mp28mm: 47,
DstS: 48,
DstM: 49,
DstL: 50,
VxaTape1: 51,
VxaTape2: 52,
Stk9840: 53,
LtoUltrium: 54,
LtoAccelis: 55,
DvdRam: 56,
Ait8mm: 57,
Adr1: 58,
Adr2: 59,
Stk9940: 60,
Sait: 61,
VxaTape: 62
});
var STORAGE_BUS_TYPE = ENUM('STORAGE_BUS_TYPE', {
Unknown: 0x00,
Scsi: 1,
Atapi: 2,
Ata: 3,
1394: 4,
Ssa: 5,
Fibre: 6,
Usb: 7,
Raid: 8,
TypeiScsi: 9,
Sas: 10,
Sata: 11,
Sd: 12,
Mmc: 13,
Virtual: 14,
FileBackedVirtual: 15,
Max: 16,
MaxReserved: 0x7F
});
var STORAGE_QUERY_TYPE = ENUM('STORAGE_QUERY_TYPE', {
PropertyStandardQuery: 0,
PropertyExistsQuery: 1,
PropertyMaskQuery: 2,
PropertyMaxDefined: 3
});
var STORAGE_PROPERTY_ID = ENUM('STORAGE_PROPERTY_ID', {
DeviceProperty: 0,
AdapterProperty: 1,
DeviceProperty: 2,
DeviceUniqueProperty: 3,
DeviceWriteCacheProperty: 4,
MiniportProperty: 5,
AccessAlignmentProperty: 6,
DeviceSeekPenaltyProperty: 7,
DeviceTrimProperty: 8,
DeviceWriteAggregationProperty: 9
});
var STORAGE_PORT_CODE_SET = ENUM('STORAGE_PORT_CODE_SET', {
Reserved: 0,
Storport: 1,
ScsIport: 2
});
var STORAGE_IDENTIFIER_CODE_SET = ENUM('STORAGE_IDENTIFIER_CODE_SET', {
Reserved: 0,
Binary: 1,
Ascii: 2,
Utf8: 3
});
var STORAGE_IDENTIFIER_TYPE = ENUM('STORAGE_IDENTIFIER_TYPE', {
VendorSpecific: 0,
VendorId: 1,
Eui64: 2,
FcphName: 3,
PortRelative: 4,
TargetPortGroup: 5,
LogicalUnitGroup: 6,
Md5LogicalUnitIdentifier: 7,
ScsiNameString: 8
});
var STORAGE_ID_NAA_FORMAT = ENUM('STORAGE_ID_NAA_FORMAT', {
IeeeExtended: 2,
IeeeRegistered: 3,
IeeeeRegisteredExtended: 5
});
var STORAGE_ASSOCIATION_TYPE = ENUM('STORAGE_ASSOCIATION_TYPE', {
IdDevice: 0,
IdPort: 1,
IdTarget: 2
});
var WRITE_CACHE_TYPE = ENUM('WRITE_CACHE_TYPE', {
Unknown: 0,
None: 1,
Back: 2,
Through: 3
});
var WRITE_CACHE_ENABLE = ENUM('WRITE_CACHE_ENABLE', {
Unknown: 0,
Disabled: 1,
Enabled: 2
});
var WRITE_CACHE_CHANGE = ENUM('WRITE_CACHE_CHANGE', {
Unknown: 0,
NotChangeable: 1,
Changeable: 2
});
var WRITE_THROUGH = ENUM('WRITE_THROUGH', {
Unknown: 0,
NotSupported: 1,
Supported: 2
});
var MEDIA_TYPE = ENUM('MEDIA_TYPE', {
Unknown: 0,
F51Pt2512: 1,
F31Pt44512: 2,
F32Pt88512: 3,
F320Pt8512: 4,
F3720512: 5,
F5360512: 6,
F5320512: 7,
F53201024: 8,
F5180512: 9,
F5160512: 10,
RemovableMedia: 11,
FixedMedia: 12,
F3120m512: 13,
F3640512: 14,
F5640512: 15,
F5720512: 16,
F31Pt2512: 17,
F31Pt231024: 18,
F51Pt231024: 19,
F3128Mb512: 20,
F3230Mb512: 21,
F8256128: 22,
F3200Mb512: 23,
F3240m512: 24,
F332m512: 25
});
var PARTITION_STYLE = ENUM('PARTITION_STYLE', {
Mbr: 0,
Gpt: 1,
Raw: 2
});
var DETECTION_TYPE = ENUM('DETECTION_TYPE', {
None: 0,
Int13: 1,
ExInt13: 2
});
var DISK_CACHE_RETENTION_PRIORITY = ENUM('DISK_CACHE_RETENTION_PRIORITY', {
EqualPriority: 0,
KeepPrefetchedData: 1,
KeepReadData: 2
});
var BIN_TYPES = ENUM('BIN_TYPES', {
RequestSize: 0,
RequestLocation: 1
});
var ELEMENT_TYPE = ENUM('ELEMENT_TYPE', {
AllElements: 0,
ChangerTransport: 1,
ChangerSlot: 2,
ChangerIePort: 3,
ChangerDrive: 4,
ChangerDoor: 5,
ChangerKeypad: 6,
ChangerMaxElement: 7
});
var CHANGER_DEVICE_PROBLEM_TYPE = ENUM('CHANGER_DEVICE_PROBLEM_TYPE', {
None: 0,
Hardware: 1,
ChmError: 2,
DoorOpen: 3,
CalibrationError: 4,
TargetFailure: 5,
ChmMoveError: 6,
ChmZeroError: 7,
CartridgeInsertError: 8,
PositionError: 9,
SensorError: 10,
CartridgeEjectError: 11,
GripperError: 12,
DriveError: 13
});
var SHRINK_VOLUME_REQUEST_TYPES = ENUM('SHRINK_VOLUME_REQUEST_TYPES', {
Prepare: 1,
Commit: 1,
Abort: 2
});
var BIDI_TYPE = ENUM('BIDI_TYPE', {
Null: 0,
Int: 1,
Float: 2,
Bool: 3,
String: 4,
Text: 5,
Enum: 6,
Blob: 7
});
var PRINTER_OPTION_FLAGS = ENUM('PRINTER_OPTION_FLAGS', {
NoCache: 0,
Cache: 1,
ClientChange: 2,
NoClientData: 3
});
var EPrintPropertyType = ENUM('EPrintPropertyType', {
KString: 1,
K32: 1,
K64: 2,
KByte: 3,
KTime: 4,
KDevMode: 5,
KSd: 6,
KNotificationReply: 7,
KNotificationOptions: 8,
KBuffer: 9
});
var EPrintXPSJobProgress = ENUM('EPrintXPSJobProgress', {
KAddingDocumentSequence: 0,
KDocumentSequenceAdded: 1,
KAddingFixedDocument: 2,
KFixedDocumentAdded: 3,
KAddingFixedPage: 4,
KFixedPageAdded: 5,
KResourceAdded: 6,
KFontAdded: 7,
KImageAdded: 8,
KDocumentCommitted: 9
});
var EPrintXPSJobOperation = ENUM('EPrintXPSJobOperation', {
KProduction: 1,
KConsumption: 1
});
var PRINT_EXECUTION_CONTEXT = ENUM('PRINT_EXECUTION_CONTEXT', {
Application: 0,
SpoolerService: 1,
SpoolerIsolationHost: 2,
FilterPipeline: 3,
Wow64: 4
});
var REGCLS = ENUM('REGCLS', {
Singleuse: 0,
Multipleuse: 1,
MultiSeparate: 2,
Suspended: 4,
Surrogate: 8
});
var EXTCONN = ENUM('EXTCONN', {
Strong: 0x1,
Weak: 0x2,
Callable: 0x4
});
var BIND_FLAGS = ENUM('BIND_FLAGS', {
Maybotheruser: 1,
Justtestexistence: 2
});
var MKSYS = ENUM('MKSYS', {
None: 0,
Genericcomposite: 1,
Filemoniker: 2,
Antimoniker: 3,
Itemmoniker: 4,
Pointermoniker: 5,
Classmoniker: 7,
Objrefmoniker: 8,
Sessionmoniker: 9,
Luamoniker: 10
});
var MKRREDUCE = ENUM('MKRREDUCE', {
One: 0,
Touser: 1,
Throughuser: 2,
All: 0
});
var STGTY = ENUM('STGTY', {
Storage: 1,
Stream: 2,
Lockbytes: 3,
Property: 4
});
var STREAM_SEEK = ENUM('STREAM_SEEK', {
Set: 0,
Cur: 1,
End: 2
});
var LOCKTYPE = ENUM('LOCKTYPE', {
Write: 1,
Exclusive: 2,
Onlyonce: 4
});
var ADVF = ENUM('ADVF', {
Nodata: 1,
Primefirst: 2,
Onlyonce: 4,
Dataonstop: 64,
AdvfcacheNohandler: 8,
AdvfcacheForcebuiltin: 16,
AdvfcacheOnsave: 32
});
var TYMED = ENUM('TYMED', {
Hglobal: 1,
File: 2,
Istream: 4,
Istorage: 8,
Gdi: 16,
Mfpict: 32,
Enhmf: 64,
Null: 0
});
var DATADIR = ENUM('DATADIR', {
Get: 1,
Set: 2
});
var CALLTYPE = ENUM('CALLTYPE', {
Toplevel: 1,
Nested: 2,
Async: 3,
ToplevelCallpending: 4,
AsyncCallpending: 5
});
var SERVERCALL = ENUM('SERVERCALL', {
Ishandled: 0,
Rejected: 1,
Retrylater: 2
});
var PENDINGTYPE = ENUM('PENDINGTYPE', {
Toplevel: 1,
Nested: 2
});
var PENDINGMSG = ENUM('PENDINGMSG', {
Cancelcall: 0,
Waitnoprocess: 1,
Waitdefprocess: 2
});
var EOLE_AUTHENTICATION_CAPABILITIES = ENUM('EOLE_AUTHENTICATION_CAPABILITIES', {
EoacNone: 0,
EoacMutualAuth: 0x1,
EoacStaticCloaking: 0x20,
EoacDynamicCloaking: 0x40,
EoacAnyAuthority: 0x80,
EoacMakeFullsic: 0x100,
EoacDefault: 0x800,
EoacSecureRefs: 0x2,
EoacAccessControl: 0x4,
EoacAppid: 0x8,
EoacDynamic: 0x10,
EoacRequireFullsic: 0x200,
EoacAutoImpersonate: 0x400,
EoacNoCustomMarshal: 0x2000,
EoacDisableAaa: 0x1000
});
var RPCOPT_PROPERTIES = ENUM('RPCOPT_PROPERTIES', {
CombndRpctimeout: 0x1,
CombndServerLocality: 0x2
});
var RPCOPT_SERVER_LOCALITY_VALUES = ENUM('RPCOPT_SERVER_LOCALITY_VALUES', {
ProcessLocal: 0,
MachineLocal: 1,
Remote: 2
});
var GLOBALOPT_PROPERTIES = ENUM('GLOBALOPT_PROPERTIES', {
ComglbExceptionHandling: 1,
ComglbAppid: 2,
ComglbRpcThreadpoolSetting: 3
});
var GLOBALOPT_EH_VALUES = ENUM('GLOBALOPT_EH_VALUES', {
ComglbExceptionHandle: 0,
ComglbExceptionDonotHandleFatal: 1,
ComglbExceptionDonotHandle: 2,
ComglbExceptionDonotHandleAny: 2
});
var GLOBALOPT_RPCTP_VALUES = ENUM('GLOBALOPT_RPCTP_VALUES', {
ComglbThreadpoolSettingDefaultPool: 0,
ComglbThreadpoolSettingPrivatePool: 1
});
var DCOM_CALL_STATE = ENUM('DCOM_CALL_STATE', {
None: 0,
Complete: 0x1,
Canceled: 0x2
});
var ApplicationType = ENUM('ApplicationType', {
ServerApplication: 0,
LibraryApplication: 1
});
var ShutdownType = ENUM('ShutdownType', {
IdleShutdown: 0,
ForcedShutdown: 1
});
var APTTYPEQUALIFIER = ENUM('APTTYPEQUALIFIER', {
None: 0,
ImplicitMta: 1,
NaOnMta: 2,
NaOnSta: 3,
NaOnImplicitMta: 4,
NaOnMainsta: 5
});
var APTTYPE = ENUM('APTTYPE', {
Current: 0,
Sta: 0,
Mta: 1,
Na: 2,
Mainsta: 3
});
var THDTYPE = ENUM('THDTYPE', {
Blockmessages: 0,
Processmessages: 1
});
var COINIT = ENUM('COINIT', {
Apartmentthreaded: 0x2,
Multithreaded: 0x0,
DisableOle1dde: 0x4,
SpeedOverMemory: 0x8
});
var COMSD = ENUM('COMSD', {
Launchpermissions: 0,
Accesspermissions: 1,
Launchrestrictions: 2,
Accessrestrictions: 3
});
var STDMSHLFLAGS = ENUM('STDMSHLFLAGS', {
SmexfServer: 0x01,
SmexfHandler: 0x02
});
var COWAIT_FLAGS = ENUM('COWAIT_FLAGS', {
Waitall: 1,
Alertable: 2,
Inputavailable: 4
});
var DISCARDCACHE = ENUM('DISCARDCACHE', {
Saveifdirty: 0,
Nosave: 1
});
var OLEGETMONIKER = ENUM('OLEGETMONIKER', {
Onlyifthere: 1,
Forceassign: 2,
Unassign: 3,
Tempforuser: 4
});
var OLEWHICHMK = ENUM('OLEWHICHMK', {
Container: 1,
Objrel: 2,
Objfull: 3
});
var USERCLASSTYPE = ENUM('USERCLASSTYPE', {
Full: 1,
Short: 2,
Appname: 3
});
var OLEMISC = ENUM('OLEMISC', {
Recomposeonresize: 0x1,
Onlyiconic: 0x2,
Insertnotreplace: 0x4,
Static: 0x8,
Cantlinkinside: 0x10,
Canlinkbyole1: 0x20,
Islinkobject: 0x40,
Insideout: 0x80,
Activatewhenvisible: 0x100,
Renderingisdeviceindependent: 0x200,
Invisibleatruntime: 0x400,
Alwaysrun: 0x800,
Actslikebutton: 0x1000,
Actslikelabel: 0x2000,
Nouiactivate: 0x4000,
Alignable: 0x8000,
Simpleframe: 0x10000,
Setclientsitefirst: 0x20000,
Imemode: 0x40000,
Ignoreactivatewhenvisible: 0x80000,
Wantstomenumerge: 0x100000,
Supportsmultilevelundo: 0x200000
});
var OLECLOSE = ENUM('OLECLOSE', {
Saveifdirty: 0,
Nosave: 1,
Promptsave: 2
});
var OLERENDER = ENUM('OLERENDER', {
None: 0,
Draw: 1,
Format: 2,
Asis: 3
});
var OLEUPDATE = ENUM('OLEUPDATE', {
Always: 1,
Oncall: 3
});
var OLELINKBIND = ENUM('OLELINKBIND', {
Evenifclassdiff: 1
});
var BINDSPEED = ENUM('BINDSPEED', {
Indefinite: 1,
Moderate: 2,
Immediate: 3
});
var OLECONTF = ENUM('OLECONTF', {
Embeddings: 1,
Links: 2,
Others: 4,
Onlyuser: 8,
Onlyifrunning: 16
});
var OLEVERBATTRIB = ENUM('OLEVERBATTRIB', {
Neverdirties: 1,
Oncontainermenu: 2
});
var SF_TYPE = ENUM('SF_TYPE', {
Error: 0,
I1: 1,
I2: 2,
I4: 3,
I8: 4,
Bstr: 5,
Unknown: 6,
Dispatch: 7,
Variant: 8,
Record: 9,
Haveiid: 10
});
var TYPEKIND = ENUM('TYPEKIND', {
TkindEnum: 0,
TkindRecord: 1,
TkindModule: 2,
TkindInterface: 3,
TkindDispatch: 4,
TkindCoclass: 5,
TkindAlias: 6,
TkindUnion: 7,
TkindMax: 8
});
var CALLCONV = ENUM('CALLCONV', {
CcFastcall: 0,
CcCdecl: 1,
CcMscpascal: 2,
CcPascal: 3,
CcMacpascal: 4,
CcStdcall: 5,
CcFpfastcall: 6,
CcSyscall: 7,
CcMpwcdecl: 8,
CcMpwpascal: 9,
CcMax: 10
});
var FUNCKIND = ENUM('FUNCKIND', {
Virtual: 0,
Purevirtual: 1,
Nonvirtual: 2,
Static: 3,
Dispatch: 4
});
var INVOKEKIND = ENUM('INVOKEKIND', {
Func: 1,
Propertyget: 2,
Propertyput: 4,
Propertyputref: 8
});
var VARKIND = ENUM('VARKIND', {
Perinstance: 0,
Static: 1,
Const: 2,
Dispatch: 3
});
var TYPEFLAGS = ENUM('TYPEFLAGS', {
Fappobject: 0x1,
Fcancreate: 0x2,
Flicensed: 0x4,
Fpredeclid: 0x8,
Fhidden: 0x10,
Fcontrol: 0x20,
Fdual: 0x40,
Fnonextensible: 0x80,
Foleautomation: 0x100,
Frestricted: 0x200,
Faggregatable: 0x400,
Freplaceable: 0x800,
Fdispatchable: 0x1000,
Freversebind: 0x2000,
Fproxy: 0x4000
});
var FUNCFLAGS = ENUM('FUNCFLAGS', {
Frestricted: 0x1,
Fsource: 0x2,
Fbindable: 0x4,
Frequestedit: 0x8,
Fdisplaybind: 0x10,
Fdefaultbind: 0x20,
Fhidden: 0x40,
Fusesgetlasterror: 0x80,
Fdefaultcollelem: 0x100,
Fuidefault: 0x200,
Fnonbrowsable: 0x400,
Freplaceable: 0x800,
Fimmediatebind: 0x1000
});
var VARFLAGS = ENUM('VARFLAGS', {
Freadonly: 0x1,
Fsource: 0x2,
Fbindable: 0x4,
Frequestedit: 0x8,
Fdisplaybind: 0x10,
Fdefaultbind: 0x20,
Fhidden: 0x40,
Frestricted: 0x80,
Fdefaultcollelem: 0x100,
Fuidefault: 0x200,
Fnonbrowsable: 0x400,
Freplaceable: 0x800,
Fimmediatebind: 0x1000
});
var DESCKIND = ENUM('DESCKIND', {
None: 0,
Funcdesc: 1,
Vardesc: 2,
Typecomp: 3,
Implicitappobj: 4,
Max: 5
});
var SYSKIND = ENUM('SYSKIND', {
Win16: 0,
Win32: 1,
Mac: 2,
Win64: 3
});
var LIBFLAGS = ENUM('LIBFLAGS', {
Frestricted: 0x1,
Fcontrol: 0x2,
Fhidden: 0x4,
Fhasdiskimage: 0x8
});
var CHANGEKIND = ENUM('CHANGEKIND', {
Addmember: 0,
Deletemember: 1,
Setnames: 2,
Setdocumentation: 3,
General: 4,
Invalidate: 5,
Changefailed: 6,
Max: 7
});
var DOMNodeType = ENUM('DOMNodeType', {
Invalid: 0,
Element: 1,
Attribute: 2,
Text: 3,
CdataSection: 4,
EntityReference: 5,
Entity: 6,
ProcessingInstruction: 7,
Comment: 8,
Document: 9,
DocumentType: 10,
DocumentFragment: 11,
Notation: 12
});
var XMLELEM_TYPE = ENUM('XMLELEM_TYPE', {
Element: 0,
Text: 1,
Comment: 2,
Document: 3,
Dtd: 4,
Pi: 5,
Other: 6
});
var MONIKERPROPERTY = ENUM('MONIKERPROPERTY', {
Mimetypeprop: 0,
UseSrcUrl: 0x1,
Classidprop: 0x2,
Trusteddownloadprop: 0x3,
Popuplevelprop: 0x4
});
var BINDVERB = ENUM('BINDVERB', {
Get: 0,
Post: 0x1,
Put: 0x2,
Custom: 0x3,
Reserved1: 0x4
});
var BINDINFOF = ENUM('BINDINFOF', {
Urlencodestgmeddata: 0x1,
Urlencodedextrainfo: 0x2
});
var BINDF = ENUM('BINDF', {
Asynchronous: 0x1,
Asyncstorage: 0x2,
Noprogressiverendering: 0x4,
Offlineoperation: 0x8,
Getnewestversion: 0x10,
Nowritecache: 0x20,
Needfile: 0x40,
Pulldata: 0x80,
Ignoresecurityproblem: 0x100,
Resynchronize: 0x200,
Hyperlink: 0x400,
NoUi: 0x800,
Silentoperation: 0x1000,
PragmaNoCache: 0x2000,
Getclassobject: 0x4000,
Reserved1: 0x8000,
FreeThreaded: 0x10000,
DirectRead: 0x20000,
FormsSubmit: 0x40000,
GetfromcacheIfNetFail: 0x80000,
Fromurlmon: 0x100000,
FwdBack: 0x200000,
Preferdefaulthandler: 0x400000,
Enforcerestricted: 0x800000
});
var URL_ENCODING = ENUM('URL_ENCODING', {
None: 0,
EnableUtf8: 0x10000000,
DisableUtf8: 0x20000000
});
var BINDINFO_OPTIONS = ENUM('BINDINFO_OPTIONS', {
Wininetflag: 0x10000,
EnableUtf8: 0x20000,
DisableUtf8: 0x40000,
UseIeEncoding: 0x80000,
Bindtoobject: 0x100000,
Securityoptout: 0x200000,
Ignoremimetextplain: 0x400000,
Usebindstringcreds: 0x800000,
Ignorehttphttpsredirects: 0x1000000,
IgnoreSslerrorsOnce: 0x2000000,
WpcDownloadblocked: 0x8000000,
WpcLoggingEnabled: 0x10000000,
Allowconnectdata: 0x20000000,
Disableautoredirects: 0x40000000,
ShdocvwNavigate: 14
});
var BSCF = ENUM('BSCF', {
Firstdatanotification: 0x1,
Intermediatedatanotification: 0x2,
Lastdatanotification: 0x4,
Datafullyavailable: 0x8,
Availabledatasizeunknown: 0x10,
Skipdraindataforfileurls: 0x20,
64bitlengthdownload: 0x40
});
var BINDSTATUS = ENUM('BINDSTATUS', {
Findingresource: 1,
Connecting: 1,
Redirecting: 2,
Begindownloaddata: 3,
Downloadingdata: 4,
Enddownloaddata: 5,
Begindownloadcomponents: 6,
Installingcomponents: 7,
Enddownloadcomponents: 8,
Usingcachedcopy: 9,
Sendingrequest: 10,
Classidavailable: 11,
Mimetypeavailable: 12,
Cachefilenameavailable: 13,
Beginsyncoperation: 14,
Endsyncoperation: 15,
Beginuploaddata: 16,
Uploadingdata: 17,
Enduploaddata: 18,
Protocolclassid: 19,
Encoding: 20,
Verifiedmimetypeavailable: 21,
Classinstalllocation: 22,
Decoding: 23,
Loadingmimehandler: 24,
Contentdispositionattach: 25,
Filterreportmimetype: 26,
Clsidcaninstantiate: 27,
Iunknownavailable: 28,
Directbind: 29,
Rawmimetype: 30,
Proxydetecting: 31,
Acceptranges: 32,
CookieSent: 33,
CompactPolicyReceived: 34,
CookieSuppressed: 35,
CookieStateUnknown: 36,
CookieStateAccept: 37,
CookieStateReject: 38,
CookieStatePrompt: 39,
CookieStateLeash: 40,
CookieStateDowngrade: 41,
PolicyHref: 42,
P3pHeader: 43,
SessionCookieReceived: 44,
PersistentCookieReceived: 45,
SessionCookiesAllowed: 46,
Cachecontrol: 47,
Contentdispositionfilename: 48,
Mimetextplainmismatch: 49,
Publisheravailable: 50,
Displaynameavailable: 51,
SsluxNavblocked: 52,
ServerMimetypeavailable: 53,
SniffedClassidavailable: 54,
64bitProgress: 55
});
var BINDF2 = ENUM('BINDF2', {
Disablebasicoverhttp: 0x1,
Disableautocookiehandling: 0x2,
ReadDataGreaterThan4gb: 0x4,
DisableHttpRedirectXsecurityid: 0x8,
Reserved3: 0x20000000,
Reserved2: 0x40000000,
Reserved1: 6
});
var AUTHENTICATEF = ENUM('AUTHENTICATEF', {
Proxy: 0x1,
Basic: 0x2,
Http: 0x4
});
var CIP_STATUS = ENUM('CIP_STATUS', {
DiskFull: 0,
AccessDenied: 1,
NewerVersionExists: 2,
OlderVersionExists: 3,
NameConflict: 4,
TrustVerificationComponentMissing: 5,
ExeSelfRegisterationTimeout: 6,
UnsafeToAbort: 7,
NeedReboot: 8,
NeedRebootUiPermission: 9
});
var Uri_PROPERTY = ENUM('Uri_PROPERTY', {
AbsoluteUri: 0,
StringStart: 1,
Authority: 1,
DisplayUri: 2,
Domain: 3,
Extension: 4,
Fragment: 5,
Host: 6,
Password: 7,
Path: 8,
PathAndQuery: 9,
Query: 10,
RawUri: 11,
SchemeName: 12,
UserInfo: 13,
UserName: 14,
StringLast: 16,
HostType: 15,
DwordStart: 18,
Port: 16,
Scheme: 17,
Zone: 18,
DwordLast: 22
});
var Uri_HOST_TYPE = ENUM('Uri_HOST_TYPE', {
Unknown: 0,
Dns: 1,
Ipv4: 2,
Ipv6: 3,
Idn: 4
});
var BINDSTRING = ENUM('BINDSTRING', {
Headers: 1,
AcceptMimes: 1,
ExtraUrl: 2,
Language: 3,
Username: 4,
Password: 5,
UaPixels: 6,
UaColor: 7,
Os: 8,
UserAgent: 9,
AcceptEncodings: 10,
PostCookie: 11,
PostDataMime: 12,
Url: 13,
Iid: 14,
FlagToObject: 15,
PtrContext: 16,
XdrOrigin: 17
});
var PI_FLAGS = ENUM('PI_FLAGS', {
ParseUrl: 0x1,
FilterMode: 0x2,
ForceAsync: 0x4,
UseWorkerthread: 0x8,
Mimeverification: 0x10,
Clsidlookup: 0x20,
Dataprogress: 0x40,
Synchronous: 0x80,
Apartmentthreaded: 0x100,
Classinstall: 0x200,
Passonbindctx: 0x2000,
Nomimehandler: 0x8000,
Loadappdirect: 0x4000,
PdForceSwitch: 0x10000,
Preferdefaulthandler: 0x20000
});
var OIBDG_FLAGS = ENUM('OIBDG_FLAGS', {
Apartmentthreaded: 0x100,
Dataonly: 0x1000
});
var PARSEACTION = ENUM('PARSEACTION', {
Canonicalize: 1,
Friendly: 1,
SecurityUrl: 2,
Rootdocument: 3,
Document: 4,
Anchor: 5,
EncodeIsUnescape: 6,
DecodeIsEscape: 7,
PathFromUrl: 8,
UrlFromPath: 9,
Mime: 10,
Server: 11,
Schema: 12,
Site: 13,
Domain: 14,
Location: 15,
SecurityDomain: 16,
Escape: 17,
Unescape: 18
});
var PSUACTION = ENUM('PSUACTION', {
Default: 1,
SecurityUrlOnly: 1
});
var QUERYOPTION = ENUM('QUERYOPTION', {
ExpirationDate: 1,
TimeOfLastChange: 1,
ContentEncoding: 2,
ContentType: 3,
Refresh: 4,
Recombine: 5,
CanNavigate: 6,
UsesNetwork: 7,
IsCached: 8,
IsInstalledentry: 9,
IsCachedOrMapped: 10,
UsesCache: 11,
IsSecure: 12,
IsSafe: 13,
UsesHistoryfolder: 14
});
var INTERNETFEATURELIST = ENUM('INTERNETFEATURELIST', {
ObjectCaching: 0,
ZoneElevation: 1,
MimeHandling: 2,
MimeSniffing: 3,
WindowRestrictions: 4,
WebocPopupmanagement: 5,
Behaviors: 6,
DisableMkProtocol: 7,
LocalmachineLockdown: 8,
Securityband: 9,
RestrictActivexinstall: 10,
ValidateNavigateUrl: 11,
RestrictFiledownload: 12,
AddonManagement: 13,
ProtocolLockdown: 14,
HttpUsernamePasswordDisable: 15,
SafeBindtoobject: 16,
UncSavedfilecheck: 17,
GetUrlDomFilepathUnencoded: 18,
TabbedBrowsing: 19,
Sslux: 20,
DisableNavigationSounds: 21,
DisableLegacyCompression: 22,
ForceAddrAndStatus: 23,
Xmlhttp: 24,
DisableTelnetProtocol: 25,
Feeds: 26,
BlockInputPrompts: 27,
EntryCount: 28
});
var PUAF = ENUM('PUAF', {
Default: 0,
Noui: 0x1,
Isfile: 0x2,
WarnIfDenied: 0x4,
ForceuiForeground: 0x8,
CheckTifs: 0x10,
Dontcheckboxindialog: 0x20,
Trusted: 0x40,
AcceptWildcardScheme: 0x80,
Enforcerestricted: 0x100,
Nosavedfilecheck: 0x200,
Requiresavedfilecheck: 0x400,
DontUseCache: 0x1000,
Reserved1: 0x2000,
Reserved2: 0x4000,
LmzUnlocked: 0x10000,
LmzLocked: 0x20000,
Defaultzonepol: 0x40000,
NplUseLockedIfRestricted: 0x80000,
Nouiiflocked: 0x100000,
Dragprotocolcheck: 0x200000
});
var PUAFOUT = ENUM('PUAFOUT', {
Default: 0,
Islockzonepolicy: 0x1
});
var SZM_FLAGS = ENUM('SZM_FLAGS', {
Create: 0,
Delete: 0x1
});
var URLZONE = ENUM('URLZONE', {
Invalid: 0,
PredefinedMin: 0,
LocalMachine: 0,
Intranet: 3,
Trusted: 4,
Internet: 5,
Untrusted: 6,
PredefinedMax: 999,
UserMin: 1000,
UserMax: 10000
});
var URLTEMPLATE = ENUM('URLTEMPLATE', {
Custom: 0,
PredefinedMin: 0x10000,
Low: 0x10000,
Medlow: 0x10500,
Medium: 0x11000,
Medhigh: 0x11500,
High: 0x12000,
PredefinedMax: 0x20000
});
var __MIDL_IInternetZoneManager_0001 = ENUM('__MIDL_IInternetZoneManager_0001', {
MaxPath: 260,
MaxDescription: 200
});
var ZAFLAGS = ENUM('ZAFLAGS', {
CustomEdit: 0x1,
AddSites: 0x2,
RequireVerification: 0x4,
IncludeProxyOverride: 0x8,
IncludeIntranetSites: 0x10,
NoUi: 0x20,
SupportsVerification: 0x40,
UncAsIntranet: 0x80,
DetectIntranet: 0x100,
UseLockedZones: 0x10000,
VerifyTemplateSettings: 0x20000,
NoCache: 0x40000
});
var URLZONEREG = ENUM('URLZONEREG', {
Default: 0,
Hklm: 1,
Hkcu: 2
});
var PIDMSI_STATUS_VALUE = ENUM('PIDMSI_STATUS_VALUE', {
Normal: 0,
New: 1,
Prelim: 2,
Draft: 3,
Inprogress: 4,
Edit: 5,
Review: 6,
Proof: 7,
Final: 8,
Other: 0x7fff
});
var REGKIND = ENUM('REGKIND', {
Default: 0,
Register: 1,
None: 2
});
var SC_ACTION_TYPE = ENUM('SC_ACTION_TYPE', {
None: 0,
Restart: 1,
Reboot: 2,
RunCommand: 3
});
var SC_STATUS_TYPE = ENUM('SC_STATUS_TYPE', {
ProcessInfo: 0
});
var SC_ENUM_TYPE = ENUM('SC_ENUM_TYPE', {
ProcessInfo: 0
});
var PEXCEPTION_ROUTINE = CALLBACK('PEXCEPTION_ROUTINE', EXCEPTION_DISPOSITION, [PTR(_EXCEPTION_RECORD), PTR(VOID), PTR(_CONTEXT), PTR(VOID)]);
var PIMAGE_TLS_CALLBACK = CALLBACK('PIMAGE_TLS_CALLBACK', VOID, [PTR(VOID), ulong, PTR(VOID)]);
var PRTL_RUN_ONCE_INIT_FN = CALLBACK('PRTL_RUN_ONCE_INIT_FN', ulong, [PTR(_RTL_RUN_ONCE), PTR(VOID), PTR(PTR(VOID))]);
var PRTL_UMS_SCHEDULER_ENTRY_POINT = CALLBACK('PRTL_UMS_SCHEDULER_ENTRY_POINT', VOID, [RTL_UMS_SCHEDULER_REASON, ulong, PTR(VOID)]);
var PAPCFUNC = CALLBACK('PAPCFUNC', VOID, [ulong]);
var PVECTORED_EXCEPTION_HANDLER = CALLBACK('PVECTORED_EXCEPTION_HANDLER', long, [PTR(EXCEPTION_POINTERS)]);
var WAITORTIMERCALLBACKFUNC = CALLBACK('WAITORTIMERCALLBACKFUNC', VOID, [PTR(VOID), uchar]);
var WORKERCALLBACKFUNC = CALLBACK('WORKERCALLBACKFUNC', VOID, [PTR(VOID)]);
var APC_CALLBACK_FUNCTION = CALLBACK('APC_CALLBACK_FUNCTION', VOID, [ulong, PTR(VOID), PTR(VOID)]);
var PFLS_CALLBACK_FUNCTION = CALLBACK('PFLS_CALLBACK_FUNCTION', VOID, [PTR(VOID)]);
var PSECURE_MEMORY_CACHE_CALLBACK = CALLBACK('PSECURE_MEMORY_CACHE_CALLBACK', uchar, [PTR(VOID), ulong]);
var PTP_SIMPLE_CALLBACK = CALLBACK('PTP_SIMPLE_CALLBACK', VOID, [PTR(TP_CALLBACK_INSTANCE), PTR(VOID)]);
var PTP_CLEANUP_GROUP_CANCEL_CALLBACK = CALLBACK('PTP_CLEANUP_GROUP_CANCEL_CALLBACK', VOID, [PTR(VOID), PTR(VOID)]);
var PTP_WORK_CALLBACK = CALLBACK('PTP_WORK_CALLBACK', VOID, [PTR(TP_CALLBACK_INSTANCE), PTR(VOID), PTR(TP_WORK)]);
var PTP_TIMER_CALLBACK = CALLBACK('PTP_TIMER_CALLBACK', VOID, [PTR(TP_CALLBACK_INSTANCE), PTR(VOID), PTR(TP_TIMER)]);
var PTP_WAIT_CALLBACK = CALLBACK('PTP_WAIT_CALLBACK', VOID, [PTR(TP_CALLBACK_INSTANCE), PTR(VOID), PTR(TP_WAIT), ulong]);
var PTHREAD_START_ROUTINE = CALLBACK('PTHREAD_START_ROUTINE', ulong, [PTR(VOID)]);
var LPTHREAD_START_ROUTINE = CALLBACK('LPTHREAD_START_ROUTINE', ulong, [PTR(VOID)]);
var PFIBER_START_ROUTINE = CALLBACK('PFIBER_START_ROUTINE', VOID, [PTR(VOID)]);
var LPFIBER_START_ROUTINE = CALLBACK('LPFIBER_START_ROUTINE', VOID, [PTR(VOID)]);
var PINIT_ONCE_FN = CALLBACK('PINIT_ONCE_FN', int, [PTR(_RTL_RUN_ONCE), PTR(VOID), PTR(PTR(VOID))]);
var PTOP_LEVEL_EXCEPTION_FILTER = CALLBACK('PTOP_LEVEL_EXCEPTION_FILTER', long, [PTR(EXCEPTION_POINTERS)]);
var LPTOP_LEVEL_EXCEPTION_FILTER = CALLBACK('LPTOP_LEVEL_EXCEPTION_FILTER', long, [PTR(EXCEPTION_POINTERS)]);
var PUMS_SCHEDULER_ENTRY_POINT = CALLBACK('PUMS_SCHEDULER_ENTRY_POINT', VOID, [UMS_SCHEDULER_REASON, ulong, PTR(VOID)]);
var PFE_EXPORT_FUNC = CALLBACK('PFE_EXPORT_FUNC', ulong, [PTR(uchar), PTR(VOID), ulong]);
var PFE_IMPORT_FUNC = CALLBACK('PFE_IMPORT_FUNC', ulong, [PTR(uchar), PTR(VOID), PTR(ulong)]);
var LPOVERLAPPED_COMPLETION_ROUTINE = CALLBACK('LPOVERLAPPED_COMPLETION_ROUTINE', VOID, [ulong, ulong, PTR(OVERLAPPED)]);
var PTIMERAPCROUTINE = CALLBACK('PTIMERAPCROUTINE', VOID, [PTR(VOID), ulong, ulong]);
var PGET_MODULE_HANDLE_EXA = CALLBACK('PGET_MODULE_HANDLE_EXA', int, [ulong, PTR(int8), PTR(HINSTANCE)]);
var PGET_MODULE_HANDLE_EXW = CALLBACK('PGET_MODULE_HANDLE_EXW', int, [ulong, PTR(ushort), PTR(HINSTANCE)]);
var ENUMRESTYPEPROCA = CALLBACK('ENUMRESTYPEPROCA', int, [HINSTANCE, PTR(int8), long]);
var ENUMRESTYPEPROCW = CALLBACK('ENUMRESTYPEPROCW', int, [HINSTANCE, PTR(ushort), long]);
var ENUMRESNAMEPROCA = CALLBACK('ENUMRESNAMEPROCA', int, [HINSTANCE, PTR(int8), PTR(int8), long]);
var ENUMRESNAMEPROCW = CALLBACK('ENUMRESNAMEPROCW', int, [HINSTANCE, PTR(ushort), PTR(ushort), long]);
var ENUMRESLANGPROCA = CALLBACK('ENUMRESLANGPROCA', int, [HINSTANCE, PTR(int8), PTR(int8), ushort, long]);
var ENUMRESLANGPROCW = CALLBACK('ENUMRESLANGPROCW', int, [HINSTANCE, PTR(ushort), PTR(ushort), ushort, long]);
var PGET_SYSTEM_WOW64_DIRECTORY_A = CALLBACK('PGET_SYSTEM_WOW64_DIRECTORY_A', uint, [PTR(int8), uint]);
var PGET_SYSTEM_WOW64_DIRECTORY_W = CALLBACK('PGET_SYSTEM_WOW64_DIRECTORY_W', uint, [PTR(ushort), uint]);
var LPPROGRESS_ROUTINE = CALLBACK('LPPROGRESS_ROUTINE', ulong, [_LARGE_INTEGER, _LARGE_INTEGER, _LARGE_INTEGER, _LARGE_INTEGER, ulong, ulong, PTR(VOID), PTR(VOID), PTR(VOID)]);
var WAITORTIMERCALLBACK = CALLBACK('WAITORTIMERCALLBACK', VOID, [PTR(VOID), uchar]);
var PTP_WIN32_IO_CALLBACK = CALLBACK('PTP_WIN32_IO_CALLBACK', VOID, [PTR(TP_CALLBACK_INSTANCE), PTR(VOID), PTR(VOID), ulong, ulong, PTR(TP_IO)]);
var PQUERYACTCTXW_FUNC = CALLBACK('PQUERYACTCTXW_FUNC', int, [ulong, PTR(VOID), PTR(VOID), ulong, PTR(VOID), ulong, PTR(ulong)]);
var APPLICATION_RECOVERY_CALLBACK = CALLBACK('APPLICATION_RECOVERY_CALLBACK', ulong, [PTR(VOID)]);
var OLDFONTENUMPROCA = CALLBACK('OLDFONTENUMPROCA', int, [PTR(LOGFONT), PTR(TEXTMETRIC), ulong, long]);
var OLDFONTENUMPROCW = CALLBACK('OLDFONTENUMPROCW', int, [PTR(LOGFONTW), PTR(TEXTMETRICW), ulong, long]);
var FONTENUMPROCA = CALLBACK('FONTENUMPROCA', int, [PTR(LOGFONT), PTR(TEXTMETRIC), ulong, long]);
var FONTENUMPROCW = CALLBACK('FONTENUMPROCW', int, [PTR(LOGFONTW), PTR(TEXTMETRICW), ulong, long]);
var FONTENUMPROC = CALLBACK('FONTENUMPROC', int, [PTR(LOGFONT), PTR(TEXTMETRIC), ulong, long]);
var GOBJENUMPROC = CALLBACK('GOBJENUMPROC', int, [PTR(VOID), long]);
var LINEDDAPROC = CALLBACK('LINEDDAPROC', VOID, [int, int, long]);
var LPFNDEVMODE = CALLBACK('LPFNDEVMODE', uint, [HWND, HINSTANCE, PTR(DEVMODE), PTR(int8), PTR(int8), PTR(DEVMODE), PTR(int8), uint]);
var LPFNDEVCAPS = CALLBACK('LPFNDEVCAPS', ulong, [PTR(int8), PTR(int8), uint, PTR(int8), PTR(DEVMODE)]);
var MFENUMPROC = CALLBACK('MFENUMPROC', int, [HDC, PTR(HANDLETABLE), PTR(METARECORD), int, long]);
var ENHMFENUMPROC = CALLBACK('ENHMFENUMPROC', int, [HDC, PTR(HANDLETABLE), PTR(ENHMETARECORD), int, long]);
var ABORTPROC = CALLBACK('ABORTPROC', int, [HDC, int]);
var ICMENUMPROCA = CALLBACK('ICMENUMPROCA', int, [PTR(int8), long]);
var ICMENUMPROCW = CALLBACK('ICMENUMPROCW', int, [PTR(ushort), long]);
var WNDPROC = CALLBACK('WNDPROC', long, [HWND, uint, uint, long]);
var DLGPROC = CALLBACK('DLGPROC', int, [HWND, uint, uint, long]);
var TIMERPROC = CALLBACK('TIMERPROC', VOID, [HWND, uint, uint, ulong]);
var GRAYSTRINGPROC = CALLBACK('GRAYSTRINGPROC', int, [HDC, long, int]);
var WNDENUMPROC = CALLBACK('WNDENUMPROC', int, [HWND, long]);
var HOOKPROC = CALLBACK('HOOKPROC', long, [int, uint, long]);
var SENDASYNCPROC = CALLBACK('SENDASYNCPROC', VOID, [HWND, uint, ulong, long]);
var PROPENUMPROCA = CALLBACK('PROPENUMPROCA', int, [HWND, PTR(int8), PTR(VOID)]);
var PROPENUMPROCW = CALLBACK('PROPENUMPROCW', int, [HWND, PTR(ushort), PTR(VOID)]);
var PROPENUMPROCEXA = CALLBACK('PROPENUMPROCEXA', int, [HWND, PTR(int8), PTR(VOID), ulong]);
var PROPENUMPROCEXW = CALLBACK('PROPENUMPROCEXW', int, [HWND, PTR(ushort), PTR(VOID), ulong]);
var EDITWORDBREAKPROCA = CALLBACK('EDITWORDBREAKPROCA', int, [PTR(int8), int, int, int]);
var EDITWORDBREAKPROCW = CALLBACK('EDITWORDBREAKPROCW', int, [PTR(ushort), int, int, int]);
var DRAWSTATEPROC = CALLBACK('DRAWSTATEPROC', int, [HDC, long, uint, int, int]);
var PROPENUMPROC = CALLBACK('PROPENUMPROC', int, [HWND, PTR(int8), PTR(VOID)]);
var PROPENUMPROCEX = CALLBACK('PROPENUMPROCEX', int, [HWND, PTR(int8), PTR(VOID), ulong]);
var EDITWORDBREAKPROC = CALLBACK('EDITWORDBREAKPROC', int, [PTR(int8), int, int, int]);
var NAMEENUMPROCA = CALLBACK('NAMEENUMPROCA', int, [PTR(int8), long]);
var NAMEENUMPROCW = CALLBACK('NAMEENUMPROCW', int, [PTR(ushort), long]);
var WINSTAENUMPROCA = CALLBACK('WINSTAENUMPROCA', int, [PTR(int8), long]);
var DESKTOPENUMPROCA = CALLBACK('DESKTOPENUMPROCA', int, [PTR(int8), long]);
var WINSTAENUMPROCW = CALLBACK('WINSTAENUMPROCW', int, [PTR(ushort), long]);
var DESKTOPENUMPROCW = CALLBACK('DESKTOPENUMPROCW', int, [PTR(ushort), long]);
var WINSTAENUMPROC = CALLBACK('WINSTAENUMPROC', int, [PTR(int8), long]);
var DESKTOPENUMPROC = CALLBACK('DESKTOPENUMPROC', int, [PTR(int8), long]);
var PREGISTERCLASSNAMEW = CALLBACK('PREGISTERCLASSNAMEW', uchar, [PTR(ushort)]);
var MSGBOXCALLBACK = CALLBACK('MSGBOXCALLBACK', VOID, [PTR(HELPINFO)]);
var MONITORENUMPROC = CALLBACK('MONITORENUMPROC', int, [HMONITOR, HDC, PTR(RECT), long]);
var WINEVENTPROC = CALLBACK('WINEVENTPROC', VOID, [HWINEVENTHOOK, ulong, HWND, long, long, ulong, ulong]);
var LANGUAGEGROUP_ENUMPROCA = CALLBACK('LANGUAGEGROUP_ENUMPROCA', int, [ulong, PTR(int8), PTR(int8), ulong, long]);
var LANGGROUPLOCALE_ENUMPROCA = CALLBACK('LANGGROUPLOCALE_ENUMPROCA', int, [ulong, ulong, PTR(int8), long]);
var UILANGUAGE_ENUMPROCA = CALLBACK('UILANGUAGE_ENUMPROCA', int, [PTR(int8), long]);
var LOCALE_ENUMPROCA = CALLBACK('LOCALE_ENUMPROCA', int, [PTR(int8)]);
var CODEPAGE_ENUMPROCA = CALLBACK('CODEPAGE_ENUMPROCA', int, [PTR(int8)]);
var DATEFMT_ENUMPROCA = CALLBACK('DATEFMT_ENUMPROCA', int, [PTR(int8)]);
var DATEFMT_ENUMPROCEXA = CALLBACK('DATEFMT_ENUMPROCEXA', int, [PTR(int8), ulong]);
var TIMEFMT_ENUMPROCA = CALLBACK('TIMEFMT_ENUMPROCA', int, [PTR(int8)]);
var CALINFO_ENUMPROCA = CALLBACK('CALINFO_ENUMPROCA', int, [PTR(int8)]);
var CALINFO_ENUMPROCEXA = CALLBACK('CALINFO_ENUMPROCEXA', int, [PTR(int8), ulong]);
var LANGUAGEGROUP_ENUMPROCW = CALLBACK('LANGUAGEGROUP_ENUMPROCW', int, [ulong, PTR(ushort), PTR(ushort), ulong, long]);
var LANGGROUPLOCALE_ENUMPROCW = CALLBACK('LANGGROUPLOCALE_ENUMPROCW', int, [ulong, ulong, PTR(ushort), long]);
var UILANGUAGE_ENUMPROCW = CALLBACK('UILANGUAGE_ENUMPROCW', int, [PTR(ushort), long]);
var LOCALE_ENUMPROCW = CALLBACK('LOCALE_ENUMPROCW', int, [PTR(ushort)]);
var CODEPAGE_ENUMPROCW = CALLBACK('CODEPAGE_ENUMPROCW', int, [PTR(ushort)]);
var DATEFMT_ENUMPROCW = CALLBACK('DATEFMT_ENUMPROCW', int, [PTR(ushort)]);
var DATEFMT_ENUMPROCEXW = CALLBACK('DATEFMT_ENUMPROCEXW', int, [PTR(ushort), ulong]);
var TIMEFMT_ENUMPROCW = CALLBACK('TIMEFMT_ENUMPROCW', int, [PTR(ushort)]);
var CALINFO_ENUMPROCW = CALLBACK('CALINFO_ENUMPROCW', int, [PTR(ushort)]);
var CALINFO_ENUMPROCEXW = CALLBACK('CALINFO_ENUMPROCEXW', int, [PTR(ushort), ulong]);
var GEO_ENUMPROC = CALLBACK('GEO_ENUMPROC', int, [long]);
var CALINFO_ENUMPROCEXEX = CALLBACK('CALINFO_ENUMPROCEXEX', int, [PTR(ushort), ulong, PTR(ushort), long]);
var DATEFMT_ENUMPROCEXEX = CALLBACK('DATEFMT_ENUMPROCEXEX', int, [PTR(ushort), ulong, long]);
var TIMEFMT_ENUMPROCEX = CALLBACK('TIMEFMT_ENUMPROCEX', int, [PTR(ushort), long]);
var LOCALE_ENUMPROCEX = CALLBACK('LOCALE_ENUMPROCEX', int, [PTR(ushort), ulong, long]);
var PHANDLER_ROUTINE = CALLBACK('PHANDLER_ROUTINE', int, [ulong]);
var PQUERYHANDLER = CALLBACK('PQUERYHANDLER', ulong, [PTR(VOID), PTR(val_context), ulong, PTR(VOID), PTR(ulong), ulong]);
var PFNCALLBACK = CALLBACK('PFNCALLBACK', HDDEDATA, [uint, uint, HCONV, HSZ, HSZ, HDDEDATA, ulong, ulong]);
var DRIVERPROC = CALLBACK('DRIVERPROC', long, [ulong, HDRVR, uint, long, long]);
var LPDRVCALLBACK = CALLBACK('LPDRVCALLBACK', VOID, [HDRVR, uint, ulong, ulong, ulong]);
var PDRVCALLBACK = CALLBACK('PDRVCALLBACK', VOID, [HDRVR, uint, ulong, ulong, ulong]);
var LPWAVECALLBACK = CALLBACK('LPWAVECALLBACK', VOID, [HDRVR, uint, ulong, ulong, ulong]);
var LPMIDICALLBACK = CALLBACK('LPMIDICALLBACK', VOID, [HDRVR, uint, ulong, ulong, ulong]);
var LPTIMECALLBACK = CALLBACK('LPTIMECALLBACK', VOID, [uint, uint, ulong, ulong, ulong]);
var LPMMIOPROC = CALLBACK('LPMMIOPROC', long, [PTR(int8), uint, long, long]);
var YIELDPROC = CALLBACK('YIELDPROC', uint, [uint, ulong]);
var RPC_NEW_HTTP_PROXY_CHANNEL = CALLBACK('RPC_NEW_HTTP_PROXY_CHANNEL', long, [RPC_HTTP_REDIRECTOR_STAGE, PTR(ushort), PTR(ushort), PTR(ushort), PTR(ushort), PTR(VOID), PTR(VOID), PTR(VOID), PTR(VOID), ulong, PTR(PTR(ushort)), PTR(PTR(ushort))]);
var RPC_HTTP_PROXY_FREE_STRING = CALLBACK('RPC_HTTP_PROXY_FREE_STRING', VOID, [PTR(ushort)]);
var RPC_AUTH_KEY_RETRIEVAL_FN = CALLBACK('RPC_AUTH_KEY_RETRIEVAL_FN', VOID, [PTR(VOID), PTR(ushort), ulong, PTR(PTR(VOID)), PTR(long)]);
var RPC_MGMT_AUTHORIZATION_FN = CALLBACK('RPC_MGMT_AUTHORIZATION_FN', int, [PTR(VOID), ulong, PTR(long)]);
var RPC_DISPATCH_FUNCTION = CALLBACK('RPC_DISPATCH_FUNCTION', VOID, [PTR(RPC_MESSAGE)]);
var PRPC_RUNDOWN = CALLBACK('PRPC_RUNDOWN', VOID, [PTR(VOID)]);
var RPCLT_PDU_FILTER_FUNC = CALLBACK('RPCLT_PDU_FILTER_FUNC', VOID, [PTR(VOID), uint, int]);
var RPC_SETFILTER_FUNC = CALLBACK('RPC_SETFILTER_FUNC', VOID, [PTR(CALLBACK(VOID, [PTR(VOID), uint, int]))]);
var RPC_BLOCKING_FN = CALLBACK('RPC_BLOCKING_FN', long, [PTR(VOID), PTR(VOID), PTR(VOID)]);
var I_RpcProxyIsValidMachineFn = CALLBACK('I_RpcProxyIsValidMachineFn', long, [PTR(ushort), PTR(ushort), ulong]);
var I_RpcProxyGetClientAddressFn = CALLBACK('I_RpcProxyGetClientAddressFn', long, [PTR(VOID), PTR(int8), PTR(ulong)]);
var I_RpcProxyGetConnectionTimeoutFn = CALLBACK('I_RpcProxyGetConnectionTimeoutFn', long, [PTR(ulong)]);
var I_RpcPerformCalloutFn = CALLBACK('I_RpcPerformCalloutFn', long, [PTR(VOID), PTR(RDR_CALLOUT_STATE), RPC_HTTP_REDIRECTOR_STAGE]);
var I_RpcFreeCalloutStateFn = CALLBACK('I_RpcFreeCalloutStateFn', VOID, [PTR(RDR_CALLOUT_STATE)]);
var I_RpcProxyGetClientSessionAndResourceUUID = CALLBACK('I_RpcProxyGetClientSessionAndResourceUUID', long, [PTR(VOID), PTR(int), PTR(UUID), PTR(int), PTR(UUID)]);
var I_RpcProxyFilterIfFn = CALLBACK('I_RpcProxyFilterIfFn', long, [PTR(VOID), PTR(UUID), ushort, PTR(int)]);
var I_RpcProxyUpdatePerfCounterFn = CALLBACK('I_RpcProxyUpdatePerfCounterFn', VOID, [RpcPerfCounters, int, ulong]);
var I_RpcProxyUpdatePerfCounterBackendServerFn = CALLBACK('I_RpcProxyUpdatePerfCounterBackendServerFn', VOID, [PTR(ushort), int]);
var PFN_RPCNOTIFICATION_ROUTINE = CALLBACK('PFN_RPCNOTIFICATION_ROUTINE', VOID, [PTR(_RPC_ASYNC_STATE), PTR(VOID), RPC_ASYNC_EVENT]);
var PFNCANSHAREFOLDERW = CALLBACK('PFNCANSHAREFOLDERW', long, [PTR(ushort)]);
var PFNSHOWSHAREFOLDERUIW = CALLBACK('PFNSHOWSHAREFOLDERUIW', long, [HWND, PTR(ushort)]);
var PCRYPT_DECRYPT_PRIVATE_KEY_FUNC = CALLBACK('PCRYPT_DECRYPT_PRIVATE_KEY_FUNC', int, [CRYPT_ALGORITHM_IDENTIFIER, CRYPT_ATTR_BLOB, PTR(uchar), PTR(ulong), PTR(VOID)]);
var PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC = CALLBACK('PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC', int, [PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(CRYPT_ATTR_BLOB), PTR(uchar), PTR(ulong), PTR(VOID)]);
var PCRYPT_RESOLVE_HCRYPTPROV_FUNC = CALLBACK('PCRYPT_RESOLVE_HCRYPTPROV_FUNC', int, [PTR(CRYPT_PRIVATE_KEY_INFO), PTR(ulong), PTR(VOID)]);
var PFN_CRYPT_ALLOC = CALLBACK('PFN_CRYPT_ALLOC', PTR(VOID), [uint]);
var PFN_CRYPT_FREE = CALLBACK('PFN_CRYPT_FREE', VOID, [PTR(VOID)]);
var PFN_CRYPT_ENUM_OID_FUNC = CALLBACK('PFN_CRYPT_ENUM_OID_FUNC', int, [ulong, PTR(int8), PTR(int8), ulong, PTR(ulong), PTR(PTR(ushort)), PTR(PTR(uchar)), PTR(ulong), PTR(VOID)]);
var PFN_CRYPT_ENUM_OID_INFO = CALLBACK('PFN_CRYPT_ENUM_OID_INFO', int, [PTR(CCRYPT_OID_INFO), PTR(VOID)]);
var PFN_CMSG_STREAM_OUTPUT = CALLBACK('PFN_CMSG_STREAM_OUTPUT', int, [PTR(VOID), PTR(uchar), ulong, int]);
var PFN_CMSG_ALLOC = CALLBACK('PFN_CMSG_ALLOC', PTR(VOID), [uint]);
var PFN_CMSG_FREE = CALLBACK('PFN_CMSG_FREE', VOID, [PTR(VOID)]);
var PFN_CMSG_GEN_ENCRYPT_KEY = CALLBACK('PFN_CMSG_GEN_ENCRYPT_KEY', int, [PTR(ulong), PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(VOID), PTR(CERT_PUBLIC_KEY_INFO), PTR(CALLBACK(PTR(VOID), [uint])), PTR(ulong), PTR(PTR(uchar)), PTR(ulong)]);
var PFN_CMSG_EXPORT_ENCRYPT_KEY = CALLBACK('PFN_CMSG_EXPORT_ENCRYPT_KEY', int, [ulong, ulong, PTR(CERT_PUBLIC_KEY_INFO), PTR(uchar), PTR(ulong)]);
var PFN_CMSG_IMPORT_ENCRYPT_KEY = CALLBACK('PFN_CMSG_IMPORT_ENCRYPT_KEY', int, [ulong, ulong, PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(uchar), ulong, PTR(ulong)]);
var PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY = CALLBACK('PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY', int, [PTR(CMSG_CONTENT_ENCRYPT_INFO), ulong, PTR(VOID)]);
var PFN_CMSG_EXPORT_KEY_TRANS = CALLBACK('PFN_CMSG_EXPORT_KEY_TRANS', int, [PTR(CMSG_CONTENT_ENCRYPT_INFO), PTR(CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO), PTR(CMSG_KEY_TRANS_ENCRYPT_INFO), ulong, PTR(VOID)]);
var PFN_CMSG_EXPORT_KEY_AGREE = CALLBACK('PFN_CMSG_EXPORT_KEY_AGREE', int, [PTR(CMSG_CONTENT_ENCRYPT_INFO), PTR(CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO), PTR(CMSG_KEY_AGREE_ENCRYPT_INFO), ulong, PTR(VOID)]);
var PFN_CMSG_EXPORT_MAIL_LIST = CALLBACK('PFN_CMSG_EXPORT_MAIL_LIST', int, [PTR(CMSG_CONTENT_ENCRYPT_INFO), PTR(CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO), PTR(CMSG_MAIL_LIST_ENCRYPT_INFO), ulong, PTR(VOID)]);
var PFN_CMSG_IMPORT_KEY_TRANS = CALLBACK('PFN_CMSG_IMPORT_KEY_TRANS', int, [PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(CMSG_CTRL_KEY_TRANS_DECRYPT_PARA), ulong, PTR(VOID), PTR(ulong)]);
var PFN_CMSG_IMPORT_KEY_AGREE = CALLBACK('PFN_CMSG_IMPORT_KEY_AGREE', int, [PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(CMSG_CTRL_KEY_AGREE_DECRYPT_PARA), ulong, PTR(VOID), PTR(ulong)]);
var PFN_CMSG_IMPORT_MAIL_LIST = CALLBACK('PFN_CMSG_IMPORT_MAIL_LIST', int, [PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(CMSG_CTRL_MAIL_LIST_DECRYPT_PARA), ulong, PTR(VOID), PTR(ulong)]);
var PFN_CMSG_CNG_IMPORT_KEY_TRANS = CALLBACK('PFN_CMSG_CNG_IMPORT_KEY_TRANS', int, [PTR(CMSG_CNG_CONTENT_DECRYPT_INFO), PTR(CMSG_CTRL_KEY_TRANS_DECRYPT_PARA), ulong, PTR(VOID)]);
var PFN_CMSG_CNG_IMPORT_KEY_AGREE = CALLBACK('PFN_CMSG_CNG_IMPORT_KEY_AGREE', int, [PTR(CMSG_CNG_CONTENT_DECRYPT_INFO), PTR(CMSG_CTRL_KEY_AGREE_DECRYPT_PARA), ulong, PTR(VOID)]);
var PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY = CALLBACK('PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY', int, [PTR(CMSG_CNG_CONTENT_DECRYPT_INFO), ulong, PTR(VOID)]);
var PFN_CERT_DLL_OPEN_STORE_PROV_FUNC = CALLBACK('PFN_CERT_DLL_OPEN_STORE_PROV_FUNC', int, [PTR(int8), ulong, ulong, ulong, PTR(VOID), PTR(VOID), PTR(CERT_STORE_PROV_INFO)]);
var PFN_CERT_STORE_PROV_CLOSE = CALLBACK('PFN_CERT_STORE_PROV_CLOSE', VOID, [PTR(VOID), ulong]);
var PFN_CERT_STORE_PROV_READ_CERT = CALLBACK('PFN_CERT_STORE_PROV_READ_CERT', int, [PTR(VOID), PTR(CERT_CONTEXT), ulong, PTR(PTR(CERT_CONTEXT))]);
var PFN_CERT_STORE_PROV_WRITE_CERT = CALLBACK('PFN_CERT_STORE_PROV_WRITE_CERT', int, [PTR(VOID), PTR(CERT_CONTEXT), ulong]);
var PFN_CERT_STORE_PROV_DELETE_CERT = CALLBACK('PFN_CERT_STORE_PROV_DELETE_CERT', int, [PTR(VOID), PTR(CERT_CONTEXT), ulong]);
var PFN_CERT_STORE_PROV_SET_CERT_PROPERTY = CALLBACK('PFN_CERT_STORE_PROV_SET_CERT_PROPERTY', int, [PTR(VOID), PTR(CERT_CONTEXT), ulong, ulong, PTR(VOID)]);
var PFN_CERT_STORE_PROV_READ_CRL = CALLBACK('PFN_CERT_STORE_PROV_READ_CRL', int, [PTR(VOID), PTR(CRL_CONTEXT), ulong, PTR(PTR(CRL_CONTEXT))]);
var PFN_CERT_STORE_PROV_WRITE_CRL = CALLBACK('PFN_CERT_STORE_PROV_WRITE_CRL', int, [PTR(VOID), PTR(CRL_CONTEXT), ulong]);
var PFN_CERT_STORE_PROV_DELETE_CRL = CALLBACK('PFN_CERT_STORE_PROV_DELETE_CRL', int, [PTR(VOID), PTR(CRL_CONTEXT), ulong]);
var PFN_CERT_STORE_PROV_SET_CRL_PROPERTY = CALLBACK('PFN_CERT_STORE_PROV_SET_CRL_PROPERTY', int, [PTR(VOID), PTR(CRL_CONTEXT), ulong, ulong, PTR(VOID)]);
var PFN_CERT_STORE_PROV_READ_CTL = CALLBACK('PFN_CERT_STORE_PROV_READ_CTL', int, [PTR(VOID), PTR(CTL_CONTEXT), ulong, PTR(PTR(CTL_CONTEXT))]);
var PFN_CERT_STORE_PROV_WRITE_CTL = CALLBACK('PFN_CERT_STORE_PROV_WRITE_CTL', int, [PTR(VOID), PTR(CTL_CONTEXT), ulong]);
var PFN_CERT_STORE_PROV_DELETE_CTL = CALLBACK('PFN_CERT_STORE_PROV_DELETE_CTL', int, [PTR(VOID), PTR(CTL_CONTEXT), ulong]);
var PFN_CERT_STORE_PROV_SET_CTL_PROPERTY = CALLBACK('PFN_CERT_STORE_PROV_SET_CTL_PROPERTY', int, [PTR(VOID), PTR(CTL_CONTEXT), ulong, ulong, PTR(VOID)]);
var PFN_CERT_STORE_PROV_CONTROL = CALLBACK('PFN_CERT_STORE_PROV_CONTROL', int, [PTR(VOID), ulong, ulong, PTR(VOID)]);
var PFN_CERT_STORE_PROV_FIND_CERT = CALLBACK('PFN_CERT_STORE_PROV_FIND_CERT', int, [PTR(VOID), PTR(CCERT_STORE_PROV_FIND_INFO), PTR(CERT_CONTEXT), ulong, PTR(PTR(VOID)), PTR(PTR(CERT_CONTEXT))]);
var PFN_CERT_STORE_PROV_FREE_FIND_CERT = CALLBACK('PFN_CERT_STORE_PROV_FREE_FIND_CERT', int, [PTR(VOID), PTR(CERT_CONTEXT), PTR(VOID), ulong]);
var PFN_CERT_STORE_PROV_GET_CERT_PROPERTY = CALLBACK('PFN_CERT_STORE_PROV_GET_CERT_PROPERTY', int, [PTR(VOID), PTR(CERT_CONTEXT), ulong, ulong, PTR(VOID), PTR(ulong)]);
var PFN_CERT_STORE_PROV_FIND_CRL = CALLBACK('PFN_CERT_STORE_PROV_FIND_CRL', int, [PTR(VOID), PTR(CCERT_STORE_PROV_FIND_INFO), PTR(CRL_CONTEXT), ulong, PTR(PTR(VOID)), PTR(PTR(CRL_CONTEXT))]);
var PFN_CERT_STORE_PROV_FREE_FIND_CRL = CALLBACK('PFN_CERT_STORE_PROV_FREE_FIND_CRL', int, [PTR(VOID), PTR(CRL_CONTEXT), PTR(VOID), ulong]);
var PFN_CERT_STORE_PROV_GET_CRL_PROPERTY = CALLBACK('PFN_CERT_STORE_PROV_GET_CRL_PROPERTY', int, [PTR(VOID), PTR(CRL_CONTEXT), ulong, ulong, PTR(VOID), PTR(ulong)]);
var PFN_CERT_STORE_PROV_FIND_CTL = CALLBACK('PFN_CERT_STORE_PROV_FIND_CTL', int, [PTR(VOID), PTR(CCERT_STORE_PROV_FIND_INFO), PTR(CTL_CONTEXT), ulong, PTR(PTR(VOID)), PTR(PTR(CTL_CONTEXT))]);
var PFN_CERT_STORE_PROV_FREE_FIND_CTL = CALLBACK('PFN_CERT_STORE_PROV_FREE_FIND_CTL', int, [PTR(VOID), PTR(CTL_CONTEXT), PTR(VOID), ulong]);
var PFN_CERT_STORE_PROV_GET_CTL_PROPERTY = CALLBACK('PFN_CERT_STORE_PROV_GET_CTL_PROPERTY', int, [PTR(VOID), PTR(CTL_CONTEXT), ulong, ulong, PTR(VOID), PTR(ulong)]);
var PFN_CERT_CREATE_CONTEXT_SORT_FUNC = CALLBACK('PFN_CERT_CREATE_CONTEXT_SORT_FUNC', int, [ulong, ulong, ulong, PTR(VOID)]);
var PFN_CERT_ENUM_SYSTEM_STORE_LOCATION = CALLBACK('PFN_CERT_ENUM_SYSTEM_STORE_LOCATION', int, [PTR(ushort), ulong, PTR(VOID), PTR(VOID)]);
var PFN_CERT_ENUM_SYSTEM_STORE = CALLBACK('PFN_CERT_ENUM_SYSTEM_STORE', int, [PTR(VOID), ulong, PTR(CERT_SYSTEM_STORE_INFO), PTR(VOID), PTR(VOID)]);
var PFN_CERT_ENUM_PHYSICAL_STORE = CALLBACK('PFN_CERT_ENUM_PHYSICAL_STORE', int, [PTR(VOID), ulong, PTR(ushort), PTR(CERT_PHYSICAL_STORE_INFO), PTR(VOID), PTR(VOID)]);
var PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC = CALLBACK('PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC', int, [ulong, PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(PTR(VOID)), PTR(PTR(ushort))]);
var PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC = CALLBACK('PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC', int, [ulong, ulong, PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(VOID), PTR(ushort), PTR(ushort), PTR(uchar), ulong, PTR(uchar), PTR(ulong)]);
var PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC = CALLBACK('PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC', int, [ulong, PTR(CERT_PUBLIC_KEY_INFO), PTR(CRYPT_ALGORITHM_IDENTIFIER), PTR(VOID), PTR(ushort), PTR(ushort), PTR(uchar), ulong, PTR(uchar), ulong]);
var PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC = CALLBACK('PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC', int, [ulong, ulong, PTR(int8), ulong, PTR(VOID), PTR(CERT_PUBLIC_KEY_INFO), PTR(ulong)]);
var PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_FROM_BCRYPT_HANDLE_FUNC = CALLBACK('PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_FROM_BCRYPT_HANDLE_FUNC', int, [PTR(VOID), ulong, PTR(int8), ulong, PTR(VOID), PTR(CERT_PUBLIC_KEY_INFO), PTR(ulong)]);
var PFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC = CALLBACK('PFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC', int, [ulong, PTR(CERT_PUBLIC_KEY_INFO), ulong, PTR(VOID), PTR(PTR(VOID))]);
var PFN_IMPORT_PRIV_KEY_FUNC = CALLBACK('PFN_IMPORT_PRIV_KEY_FUNC', int, [ulong, PTR(CRYPT_PRIVATE_KEY_INFO), ulong, PTR(VOID)]);
var PFN_EXPORT_PRIV_KEY_FUNC = CALLBACK('PFN_EXPORT_PRIV_KEY_FUNC', int, [ulong, ulong, PTR(int8), ulong, PTR(VOID), PTR(CRYPT_PRIVATE_KEY_INFO), PTR(ulong)]);
var PFN_CRYPT_GET_SIGNER_CERTIFICATE = CALLBACK('PFN_CRYPT_GET_SIGNER_CERTIFICATE', PTR(CERT_CONTEXT), [PTR(VOID), ulong, PTR(CERT_INFO), PTR(VOID)]);
var PFN_CRYPT_ASYNC_PARAM_FREE_FUNC = CALLBACK('PFN_CRYPT_ASYNC_PARAM_FREE_FUNC', VOID, [PTR(int8), PTR(VOID)]);
var PFN_FREE_ENCODED_OBJECT_FUNC = CALLBACK('PFN_FREE_ENCODED_OBJECT_FUNC', VOID, [PTR(int8), PTR(CRYPT_BLOB_ARRAY), PTR(VOID)]);
var PFN_CRYPT_CANCEL_RETRIEVAL = CALLBACK('PFN_CRYPT_CANCEL_RETRIEVAL', int, [ulong, PTR(VOID)]);
var PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC = CALLBACK('PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC', VOID, [PTR(VOID), ulong, PTR(int8), PTR(int8), PTR(VOID)]);
var PFN_CANCEL_ASYNC_RETRIEVAL_FUNC = CALLBACK('PFN_CANCEL_ASYNC_RETRIEVAL_FUNC', int, [PTR(VOID)]);
var PFN_CRYPT_ENUM_KEYID_PROP = CALLBACK('PFN_CRYPT_ENUM_KEYID_PROP', int, [PTR(CRYPT_ATTR_BLOB), ulong, PTR(VOID), PTR(VOID), ulong, PTR(ulong), PTR(PTR(VOID)), PTR(ulong)]);
var PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK = CALLBACK('PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK', int, [PTR(CERT_CONTEXT), PTR(VOID)]);
var NDR_RUNDOWN = CALLBACK('NDR_RUNDOWN', VOID, [PTR(VOID)]);
var NDR_NOTIFY_ROUTINE = CALLBACK('NDR_NOTIFY_ROUTINE', VOID, []);
var NDR_NOTIFY2_ROUTINE = CALLBACK('NDR_NOTIFY2_ROUTINE', VOID, [uchar]);
var EXPR_EVAL = CALLBACK('EXPR_EVAL', VOID, [PTR(_MIDL_STUB_MESSAGE)]);
var GENERIC_BINDING_ROUTINE = CALLBACK('GENERIC_BINDING_ROUTINE', PTR(VOID), [PTR(VOID)]);
var GENERIC_UNBIND_ROUTINE = CALLBACK('GENERIC_UNBIND_ROUTINE', VOID, [PTR(VOID), PTR(uchar)]);
var XMIT_HELPER_ROUTINE = CALLBACK('XMIT_HELPER_ROUTINE', VOID, [PTR(MIDL_STUB_MESSAGE)]);
var USER_MARSHAL_SIZING_ROUTINE = CALLBACK('USER_MARSHAL_SIZING_ROUTINE', ulong, [PTR(ulong), ulong, PTR(VOID)]);
var USER_MARSHAL_MARSHALLING_ROUTINE = CALLBACK('USER_MARSHAL_MARSHALLING_ROUTINE', PTR(uchar), [PTR(ulong), PTR(uchar), PTR(VOID)]);
var USER_MARSHAL_UNMARSHALLING_ROUTINE = CALLBACK('USER_MARSHAL_UNMARSHALLING_ROUTINE', PTR(uchar), [PTR(ulong), PTR(uchar), PTR(VOID)]);
var USER_MARSHAL_FREEING_ROUTINE = CALLBACK('USER_MARSHAL_FREEING_ROUTINE', VOID, [PTR(ulong), PTR(VOID)]);
var CS_TYPE_NET_SIZE_ROUTINE = CALLBACK('CS_TYPE_NET_SIZE_ROUTINE', VOID, [PTR(VOID), ulong, ulong, PTR(IDL_CS_CONVERT), PTR(ulong), PTR(ulong)]);
var CS_TYPE_LOCAL_SIZE_ROUTINE = CALLBACK('CS_TYPE_LOCAL_SIZE_ROUTINE', VOID, [PTR(VOID), ulong, ulong, PTR(IDL_CS_CONVERT), PTR(ulong), PTR(ulong)]);
var CS_TYPE_TO_NETCS_ROUTINE = CALLBACK('CS_TYPE_TO_NETCS_ROUTINE', VOID, [PTR(VOID), ulong, PTR(VOID), ulong, PTR(uchar), PTR(ulong), PTR(ulong)]);
var CS_TYPE_FROM_NETCS_ROUTINE = CALLBACK('CS_TYPE_FROM_NETCS_ROUTINE', VOID, [PTR(VOID), ulong, PTR(uchar), ulong, ulong, PTR(VOID), PTR(ulong), PTR(ulong)]);
var CS_TAG_GETTING_ROUTINE = CALLBACK('CS_TAG_GETTING_ROUTINE', VOID, [PTR(VOID), int, PTR(ulong), PTR(ulong), PTR(ulong), PTR(ulong)]);
var STUB_THUNK = CALLBACK('STUB_THUNK', VOID, [PTR(MIDL_STUB_MESSAGE)]);
var LPOCNCONNPROCA = CALLBACK('LPOCNCONNPROCA', ulong, [ulong, PTR(int8), PTR(int8), PTR(VOID)]);
var LPOCNCONNPROCW = CALLBACK('LPOCNCONNPROCW', ulong, [ulong, PTR(ushort), PTR(ushort), PTR(VOID)]);
var LPOCNCHKPROC = CALLBACK('LPOCNCHKPROC', int, [ulong, ulong, PTR(VOID)]);
var LPOCNDSCPROC = CALLBACK('LPOCNDSCPROC', VOID, [ulong, ulong, PTR(VOID)]);
var LPFNPSPCALLBACKA = CALLBACK('LPFNPSPCALLBACKA', uint, [HWND, uint, PTR(_PROPSHEETPAGEA)]);
var LPFNPSPCALLBACKW = CALLBACK('LPFNPSPCALLBACKW', uint, [HWND, uint, PTR(_PROPSHEETPAGEW)]);
var PFNPROPSHEETCALLBACK = CALLBACK('PFNPROPSHEETCALLBACK', int, [HWND, uint, long]);
var LPFNADDPROPSHEETPAGE = CALLBACK('LPFNADDPROPSHEETPAGE', int, [PTR(_PSP), long]);
var LPFNADDPROPSHEETPAGES = CALLBACK('LPFNADDPROPSHEETPAGES', int, [PTR(VOID), PTR(CALLBACK(int, [PTR(_PSP), long])), long]);
var _onexit_t = CALLBACK('_onexit_t', int, []);
var _purecall_handler = CALLBACK('_purecall_handler', VOID, []);
var _invalid_parameter_handler = CALLBACK('_invalid_parameter_handler', VOID, [PTR(ushort), PTR(ushort), PTR(ushort), uint, uint]);
var LPFNGETCLASSOBJECT = CALLBACK('LPFNGETCLASSOBJECT', long, [PTR(UUID), PTR(UUID), PTR(PTR(VOID))]);
var LPFNCANUNLOADNOW = CALLBACK('LPFNCANUNLOADNOW', long, []);
var LPOFNHOOKPROC = CALLBACK('LPOFNHOOKPROC', uint, [HWND, uint, uint, long]);
var LPCCHOOKPROC = CALLBACK('LPCCHOOKPROC', uint, [HWND, uint, uint, long]);
var LPFRHOOKPROC = CALLBACK('LPFRHOOKPROC', uint, [HWND, uint, uint, long]);
var LPCFHOOKPROC = CALLBACK('LPCFHOOKPROC', uint, [HWND, uint, uint, long]);
var LPPRINTHOOKPROC = CALLBACK('LPPRINTHOOKPROC', uint, [HWND, uint, uint, long]);
var LPSETUPHOOKPROC = CALLBACK('LPSETUPHOOKPROC', uint, [HWND, uint, uint, long]);
var LPPAGEPAINTHOOK = CALLBACK('LPPAGEPAINTHOOK', uint, [HWND, uint, uint, long]);
var LPPAGESETUPHOOK = CALLBACK('LPPAGESETUPHOOK', uint, [HWND, uint, uint, long]);
var LPSERVICE_MAIN_FUNCTIONW = CALLBACK('LPSERVICE_MAIN_FUNCTIONW', VOID, [ulong, PTR(PTR(ushort))]);
var LPSERVICE_MAIN_FUNCTIONA = CALLBACK('LPSERVICE_MAIN_FUNCTIONA', VOID, [ulong, PTR(PTR(int8))]);
var LPHANDLER_FUNCTION = CALLBACK('LPHANDLER_FUNCTION', VOID, [ulong]);
var LPHANDLER_FUNCTION_EX = CALLBACK('LPHANDLER_FUNCTION_EX', ulong, [ulong, ulong, PTR(VOID), PTR(VOID)]);
var PFN_SC_NOTIFY_CALLBACK = CALLBACK('PFN_SC_NOTIFY_CALLBACK', VOID, [PTR(VOID)]);
var IMCENUMPROC = CALLBACK('IMCENUMPROC', int, [HIMC, long]);
var REGISTERWORDENUMPROCA = CALLBACK('REGISTERWORDENUMPROCA', int, [PTR(int8), ulong, PTR(int8), PTR(VOID)]);
var REGISTERWORDENUMPROCW = CALLBACK('REGISTERWORDENUMPROCW', int, [PTR(ushort), ulong, PTR(ushort), PTR(VOID)]);
var threadlocinfo = STRUCT('threadlocinfo', {
refcount: int,
lc_codepage: uint,
lc_collate_cp: uint,
lc_handle: ARRAY(undefined, 6),
lc_id: ARRAY(LC_ID, 6),
lc_category: ARRAY(undefined, 6),
lc_clike: int,
mb_cur_max: int,
lconv_intl_refcount: PTR(int),
lconv_num_refcount: PTR(int),
lconv_mon_refcount: PTR(int),
lconv: PTR(lconv),
ctype1_refcount: PTR(int),
ctype1: PTR(ushort),
pctype: PTR(ushort),
pclmap: PTR(uchar),
pcumap: PTR(uchar),
lc_time_curr: PTR(__lc_time_data)
});
var _locale_tstruct = STRUCT('_locale_tstruct', {
locinfo: pthreadlocinfo,
mbcinfo: pthreadmbcinfo
});
var LC_ID = STRUCT('LC_ID', {
wLanguage: ushort,
wCountry: ushort,
wCodePage: ushort
});
var undefined = STRUCT('undefined', {
locale: PTR(int8),
wlocale: PTR(ushort),
refcount: PTR(int),
wrefcount: PTR(int)
});
var EXCEPTION_RECORD = STRUCT('EXCEPTION_RECORD', {
ExceptionCode: DWORD,
ExceptionFlags: DWORD,
ExceptionRecord: PTR(_EXCEPTION_RECORD),
ExceptionAddress: PVOID,
NumberParameters: DWORD,
ExceptionInformation: ARRAY(ULONG_PTR, EXCEPTION_MAXIMUM_PARAMETERS)
});
var CONTEXT = STRUCT('CONTEXT', {
ContextFlags: