// Code generated by modernc.org/undup from the per-target sqlite_*.go files; DO NOT EDIT. //go:build (windows && (amd64 || arm64)) || (windows && 386) package sqlite3 import ( "unsafe" "modernc.org/libc" ) type ABC = TABC type ABCFLOAT = TABCFLOAT const ABE_BOTTOM = 3 const ABE_LEFT = 0 const ABE_RIGHT = 2 const ABE_TOP = 1 const ABM_ACTIVATE = 6 const ABM_GETAUTOHIDEBAR = 7 const ABM_GETAUTOHIDEBAREX = 11 const ABM_GETSTATE = 4 const ABM_GETTASKBARPOS = 5 const ABM_NEW = 0 const ABM_QUERYPOS = 2 const ABM_REMOVE = 1 const ABM_SETAUTOHIDEBAR = 8 const ABM_SETAUTOHIDEBAREX = 12 const ABM_SETPOS = 3 const ABM_SETSTATE = 10 const ABM_WINDOWPOSCHANGED = 9 const ABN_FULLSCREENAPP = 2 const ABN_POSCHANGED = 1 const ABN_STATECHANGE = 0 const ABN_WINDOWARRANGE = 3 const ABORTDOC = 2 type ABORTPROC = TABORTPROC const ABOVE_NORMAL_PRIORITY_CLASS = 32768 const ABSOLUTE = 1 const ABS_ALWAYSONTOP = 2 const ABS_AUTOHIDE = 1 type ACCEL = TACCEL type ACCESSTIMEOUT = TACCESSTIMEOUT type ACCESS_ALLOWED_ACE = TACCESS_ALLOWED_ACE const ACCESS_ALLOWED_ACE_TYPE = 0 type ACCESS_ALLOWED_CALLBACK_ACE = TACCESS_ALLOWED_CALLBACK_ACE const ACCESS_ALLOWED_CALLBACK_ACE_TYPE = 9 type ACCESS_ALLOWED_CALLBACK_OBJECT_ACE = TACCESS_ALLOWED_CALLBACK_OBJECT_ACE const ACCESS_ALLOWED_CALLBACK_OBJECT_ACE_TYPE = 11 const ACCESS_ALLOWED_COMPOUND_ACE_TYPE = 4 type ACCESS_ALLOWED_OBJECT_ACE = TACCESS_ALLOWED_OBJECT_ACE const ACCESS_ALLOWED_OBJECT_ACE_TYPE = 5 type ACCESS_DENIED_ACE = TACCESS_DENIED_ACE const ACCESS_DENIED_ACE_TYPE = 1 type ACCESS_DENIED_CALLBACK_ACE = TACCESS_DENIED_CALLBACK_ACE const ACCESS_DENIED_CALLBACK_ACE_TYPE = 10 type ACCESS_DENIED_CALLBACK_OBJECT_ACE = TACCESS_DENIED_CALLBACK_OBJECT_ACE const ACCESS_DENIED_CALLBACK_OBJECT_ACE_TYPE = 12 type ACCESS_DENIED_OBJECT_ACE = TACCESS_DENIED_OBJECT_ACE const ACCESS_DENIED_OBJECT_ACE_TYPE = 6 const ACCESS_DS_OBJECT_TYPE_NAME_A = "Directory Service Object" const ACCESS_DS_OBJECT_TYPE_NAME_W = "Directory Service Object" const ACCESS_DS_SOURCE_A = "DS" const ACCESS_DS_SOURCE_W = "DS" const ACCESS_FILTERKEYS = 2 type ACCESS_MASK = TACCESS_MASK const ACCESS_MAX_LEVEL = 4 const ACCESS_MAX_MS_ACE_TYPE = 8 const ACCESS_MAX_MS_OBJECT_ACE_TYPE = 8 const ACCESS_MAX_MS_V2_ACE_TYPE = 3 const ACCESS_MAX_MS_V3_ACE_TYPE = 4 const ACCESS_MAX_MS_V4_ACE_TYPE = 8 const ACCESS_MAX_MS_V5_ACE_TYPE = 19 const ACCESS_MIN_MS_ACE_TYPE = 0 const ACCESS_MIN_MS_OBJECT_ACE_TYPE = 5 const ACCESS_MOUSEKEYS = 3 const ACCESS_OBJECT_GUID = 0 const ACCESS_PROPERTY_GUID = 2 const ACCESS_PROPERTY_SET_GUID = 1 type ACCESS_REASON = TACCESS_REASON type ACCESS_REASONS = TACCESS_REASONS const ACCESS_REASON_DATA_MASK = 65535 const ACCESS_REASON_EXDATA_MASK = 2130706432 const ACCESS_REASON_STAGING_MASK = 2147483648 type ACCESS_REASON_TYPE = TACCESS_REASON_TYPE const ACCESS_REASON_TYPE_MASK = 16711680 const ACCESS_STICKYKEYS = 1 const ACCESS_SYSTEM_SECURITY = 16777216 type ACE_HEADER = TACE_HEADER const ACE_INHERITED_OBJECT_TYPE_PRESENT = 2 const ACE_OBJECT_TYPE_PRESENT = 1 type ACL = TACL type ACL_INFORMATION_CLASS = TACL_INFORMATION_CLASS const ACL_REVISION = 2 const ACL_REVISION1 = 1 const ACL_REVISION2 = 2 const ACL_REVISION3 = 3 const ACL_REVISION4 = 4 const ACL_REVISION_DS = 4 type ACL_REVISION_INFORMATION = TACL_REVISION_INFORMATION type ACL_SIZE_INFORMATION = TACL_SIZE_INFORMATION const ACPI_PPM_HARDWARE_ALL = 254 const ACPI_PPM_SOFTWARE_ALL = 252 const ACPI_PPM_SOFTWARE_ANY = 253 type ACTCTX = TACTCTX type ACTCTXA = TACTCTXA type ACTCTXW = TACTCTXW type ACTCTX_COMPATIBILITY_ELEMENT_TYPE = TACTCTX_COMPATIBILITY_ELEMENT_TYPE const ACTCTX_FLAG_APPLICATION_NAME_VALID = 32 const ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID = 4 const ACTCTX_FLAG_HMODULE_VALID = 128 const ACTCTX_FLAG_LANGID_VALID = 2 const ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID = 1 const ACTCTX_FLAG_RESOURCE_NAME_VALID = 8 const ACTCTX_FLAG_SET_PROCESS_DEFAULT = 16 const ACTCTX_FLAG_SOURCE_IS_ASSEMBLYREF = 64 type ACTCTX_REQUESTED_RUN_LEVEL = TACTCTX_REQUESTED_RUN_LEVEL type ACTCTX_SECTION_KEYED_DATA = TACTCTX_SECTION_KEYED_DATA type ACTCTX_SECTION_KEYED_DATA_2600 = TACTCTX_SECTION_KEYED_DATA_2600 type ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = TACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA type ACTION_HEADER = TACTION_HEADER const ACTIVATIONCONTEXTINFOCLASS = 0 type ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = TACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION type ACTIVATION_CONTEXT_BASIC_INFORMATION = TACTIVATION_CONTEXT_BASIC_INFORMATION const ACTIVATION_CONTEXT_BASIC_INFORMATION_DEFINED = 1 type ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = TACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION type ACTIVATION_CONTEXT_DETAILED_INFORMATION = TACTIVATION_CONTEXT_DETAILED_INFORMATION type ACTIVATION_CONTEXT_INFO_CLASS = TACTIVATION_CONTEXT_INFO_CLASS const ACTIVATION_CONTEXT_PATH_TYPE_ASSEMBLYREF = 4 const ACTIVATION_CONTEXT_PATH_TYPE_NONE = 1 const ACTIVATION_CONTEXT_PATH_TYPE_URL = 3 const ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE = 2 type ACTIVATION_CONTEXT_QUERY_INDEX = TACTIVATION_CONTEXT_QUERY_INDEX type ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = TACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION const ACTIVATION_CONTEXT_SECTION_APPLICATION_SETTINGS = 10 const ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION = 1 const ACTIVATION_CONTEXT_SECTION_CLR_SURROGATES = 9 const ACTIVATION_CONTEXT_SECTION_COMPATIBILITY_INFO = 11 const ACTIVATION_CONTEXT_SECTION_COM_INTERFACE_REDIRECTION = 5 const ACTIVATION_CONTEXT_SECTION_COM_PROGID_REDIRECTION = 7 const ACTIVATION_CONTEXT_SECTION_COM_SERVER_REDIRECTION = 4 const ACTIVATION_CONTEXT_SECTION_COM_TYPE_LIBRARY_REDIRECTION = 6 const ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION = 2 const ACTIVATION_CONTEXT_SECTION_GLOBAL_OBJECT_RENAME_TABLE = 8 const ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION = 3 const ACTIVEOBJECT_STRONG = 0 const ACTIVEOBJECT_WEAK = 1 const AC_LINE_BACKUP_POWER = 2 const AC_LINE_OFFLINE = 0 const AC_LINE_ONLINE = 1 const AC_LINE_UNKNOWN = 255 const AC_SRC_ALPHA = 1 const AC_SRC_OVER = 0 type ADAPTER_STATUS = TADAPTER_STATUS type ADDJOB_INFO_1 = TADDJOB_INFO_1 type ADDJOB_INFO_1A = TADDJOB_INFO_1A type ADDJOB_INFO_1W = TADDJOB_INFO_1W type ADMINISTRATOR_POWER_POLICY = TADMINISTRATOR_POWER_POLICY type ADVF = TADVF const AD_CLOCKWISE = 2 const AD_COUNTERCLOCKWISE = 1 const AF_BAN = 21 const AF_FIREFOX = 19 const AF_IPX = 6 const AF_MAX = 22 const AF_NETBIOS = 17 const AF_UNKNOWN1 = 20 const AF_VOICEVIEW = 18 const ALERT_SYSTEM_CRITICAL = 5 const ALERT_SYSTEM_ERROR = 3 const ALERT_SYSTEM_INFORMATIONAL = 1 const ALERT_SYSTEM_QUERY = 4 const ALERT_SYSTEM_WARNING = 2 const ALG_CLASS_ALL = 57344 const ALG_CLASS_ANY = 0 const ALG_CLASS_DATA_ENCRYPT = 24576 const ALG_CLASS_HASH = 32768 const ALG_CLASS_KEY_EXCHANGE = 40960 const ALG_CLASS_MSG_ENCRYPT = 16384 const ALG_CLASS_SIGNATURE = 8192 type ALG_ID = TALG_ID const ALG_SID_3DES = 3 const ALG_SID_3DES_112 = 9 const ALG_SID_AES = 17 const ALG_SID_AES_128 = 14 const ALG_SID_AES_192 = 15 const ALG_SID_AES_256 = 16 const ALG_SID_AGREED_KEY_ANY = 3 const ALG_SID_ANY = 0 const ALG_SID_CAST = 6 const ALG_SID_CYLINK_MEK = 12 const ALG_SID_DES = 1 const ALG_SID_DESX = 4 const ALG_SID_DH_EPHEM = 2 const ALG_SID_DH_SANDF = 1 const ALG_SID_DSS_ANY = 0 const ALG_SID_DSS_DMS = 2 const ALG_SID_DSS_PKCS = 1 const ALG_SID_ECDH = 5 const ALG_SID_ECDH_EPHEM = 6 const ALG_SID_ECDSA = 3 const ALG_SID_ECMQV = 1 const ALG_SID_EXAMPLE = 80 const ALG_SID_HASH_REPLACE_OWF = 11 const ALG_SID_HMAC = 9 const ALG_SID_IDEA = 5 const ALG_SID_KEA = 4 const ALG_SID_MAC = 5 const ALG_SID_MD2 = 1 const ALG_SID_MD4 = 2 const ALG_SID_MD5 = 3 const ALG_SID_PCT1_MASTER = 4 const ALG_SID_RC2 = 2 const ALG_SID_RC4 = 1 const ALG_SID_RC5 = 13 const ALG_SID_RIPEMD = 6 const ALG_SID_RIPEMD160 = 7 const ALG_SID_RSA_ANY = 0 const ALG_SID_RSA_ENTRUST = 3 const ALG_SID_RSA_MSATWORK = 2 const ALG_SID_RSA_PGP = 4 const ALG_SID_RSA_PKCS = 1 const ALG_SID_SAFERSK128 = 8 const ALG_SID_SAFERSK64 = 7 const ALG_SID_SCHANNEL_ENC_KEY = 7 const ALG_SID_SCHANNEL_MAC_KEY = 3 const ALG_SID_SCHANNEL_MASTER_HASH = 2 const ALG_SID_SEAL = 2 const ALG_SID_SHA = 4 const ALG_SID_SHA1 = 4 const ALG_SID_SHA_256 = 12 const ALG_SID_SHA_384 = 13 const ALG_SID_SHA_512 = 14 const ALG_SID_SKIPJACK = 10 const ALG_SID_SSL2_MASTER = 5 const ALG_SID_SSL3SHAMD5 = 8 const ALG_SID_SSL3_MASTER = 1 const ALG_SID_TEK = 11 const ALG_SID_TLS1PRF = 10 const ALG_SID_TLS1_MASTER = 6 const ALG_TYPE_ANY = 0 const ALG_TYPE_BLOCK = 1536 const ALG_TYPE_DH = 2560 const ALG_TYPE_DSS = 512 const ALG_TYPE_ECDH = 3584 const ALG_TYPE_RSA = 1024 const ALG_TYPE_SECURECHANNEL = 3072 const ALG_TYPE_STREAM = 2048 const ALL_PROCESSOR_GROUPS = 65535 const ALL_TRANSPORTS = "M\\0\\0\\0" const ALTERNATE = 1 const ALTNUMPAD_BIT = 67108864 type ALTTABINFO = TALTTABINFO type ANIMATIONINFO = TANIMATIONINFO type ANON_OBJECT_HEADER = TANON_OBJECT_HEADER type ANON_OBJECT_HEADER_BIGOBJ = TANON_OBJECT_HEADER_BIGOBJ type ANON_OBJECT_HEADER_V2 = TANON_OBJECT_HEADER_V2 const ANSI_CHARSET = 0 const ANSI_FIXED_FONT = 11 const ANSI_VAR_FONT = 12 const ANTIALIASED_QUALITY = 4 const ANYSIZE_ARRAY = 1 type APARTMENTID = TAPARTMENTID type APC_CALLBACK_FUNCTION = TAPC_CALLBACK_FUNCTION const APD_COPY_ALL_FILES = 4 const APD_COPY_FROM_DIRECTORY = 16 const APD_COPY_NEW_FILES = 8 const APD_STRICT_DOWNGRADE = 2 const APD_STRICT_UPGRADE = 1 const API_SET_EXTENSION_NAME_A = "EXT-" const API_SET_EXTENSION_NAME_U = "EXT-" const API_SET_HELPER_NAME = 0 const API_SET_LOAD_SCHEMA_ORDINAL = 1 const API_SET_LOOKUP_ORDINAL = 2 const API_SET_PREFIX_NAME_A = "API-" const API_SET_PREFIX_NAME_U = "API-" const API_SET_RELEASE_SCHEMA_ORDINAL = 3 const API_SET_SCHEMA_NAME = 0 const API_SET_SCHEMA_SUFFIX = ".sys" const API_SET_SCHEMA_VERSION = 2 const API_SET_SECTION_NAME = ".apiset" type APPBARDATA = TAPPBARDATA const APPCLASS_MASK = 15 const APPCLASS_MONITOR = 1 const APPCLASS_STANDARD = 0 const APPCMD_CLIENTONLY = 16 const APPCMD_FILTERINITS = 32 const APPCMD_MASK = 4080 const APPCOMMAND_BASS_BOOST = 20 const APPCOMMAND_BASS_DOWN = 19 const APPCOMMAND_BASS_UP = 21 const APPCOMMAND_BROWSER_BACKWARD = 1 const APPCOMMAND_BROWSER_FAVORITES = 6 const APPCOMMAND_BROWSER_FORWARD = 2 const APPCOMMAND_BROWSER_HOME = 7 const APPCOMMAND_BROWSER_REFRESH = 3 const APPCOMMAND_BROWSER_SEARCH = 5 const APPCOMMAND_BROWSER_STOP = 4 const APPCOMMAND_CLOSE = 31 const APPCOMMAND_COPY = 36 const APPCOMMAND_CORRECTION_LIST = 45 const APPCOMMAND_CUT = 37 const APPCOMMAND_DELETE = 53 const APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE = 43 const APPCOMMAND_DWM_FLIP3D = 54 const APPCOMMAND_FIND = 28 const APPCOMMAND_FORWARD_MAIL = 40 const APPCOMMAND_HELP = 27 const APPCOMMAND_LAUNCH_APP1 = 17 const APPCOMMAND_LAUNCH_APP2 = 18 const APPCOMMAND_LAUNCH_MAIL = 15 const APPCOMMAND_LAUNCH_MEDIA_SELECT = 16 const APPCOMMAND_MEDIA_CHANNEL_DOWN = 52 const APPCOMMAND_MEDIA_CHANNEL_UP = 51 const APPCOMMAND_MEDIA_FAST_FORWARD = 49 const APPCOMMAND_MEDIA_NEXTTRACK = 11 const APPCOMMAND_MEDIA_PAUSE = 47 const APPCOMMAND_MEDIA_PLAY = 46 const APPCOMMAND_MEDIA_PLAY_PAUSE = 14 const APPCOMMAND_MEDIA_PREVIOUSTRACK = 12 const APPCOMMAND_MEDIA_RECORD = 48 const APPCOMMAND_MEDIA_REWIND = 50 const APPCOMMAND_MEDIA_STOP = 13 const APPCOMMAND_MICROPHONE_VOLUME_DOWN = 25 const APPCOMMAND_MICROPHONE_VOLUME_MUTE = 24 const APPCOMMAND_MICROPHONE_VOLUME_UP = 26 const APPCOMMAND_MIC_ON_OFF_TOGGLE = 44 const APPCOMMAND_NEW = 29 const APPCOMMAND_OPEN = 30 const APPCOMMAND_PASTE = 38 const APPCOMMAND_PRINT = 33 const APPCOMMAND_REDO = 35 const APPCOMMAND_REPLY_TO_MAIL = 39 const APPCOMMAND_SAVE = 32 const APPCOMMAND_SEND_MAIL = 41 const APPCOMMAND_SPELL_CHECK = 42 const APPCOMMAND_TREBLE_DOWN = 22 const APPCOMMAND_TREBLE_UP = 23 const APPCOMMAND_UNDO = 34 const APPCOMMAND_VOLUME_DOWN = 9 const APPCOMMAND_VOLUME_MUTE = 8 const APPCOMMAND_VOLUME_UP = 10 const APPIDREGFLAGS_ACTIVATE_IUSERVER_INDESKTOP = 1 const APPIDREGFLAGS_ISSUE_ACTIVATION_RPC_AT_IDENTIFY = 4 const APPIDREGFLAGS_IUSERVER_ACTIVATE_IN_CLIENT_SESSION_ONLY = 32 const APPIDREGFLAGS_IUSERVER_SELF_SID_IN_LAUNCH_PERMISSION = 16 const APPIDREGFLAGS_IUSERVER_UNMODIFIED_LOGON_TOKEN = 8 const APPIDREGFLAGS_RESERVED1 = 64 const APPIDREGFLAGS_SECURE_SERVER_PROCESS_SD_AND_BIND = 2 type APPLICATIONLAUNCH_SETTING_VALUE = TAPPLICATIONLAUNCH_SETTING_VALUE const APPLICATION_ERROR_MASK = 536870912 type APPLICATION_RECOVERY_CALLBACK = TAPPLICATION_RECOVERY_CALLBACK const APPLICATION_VERIFIER_ACCESS_VIOLATION = 2 const APPLICATION_VERIFIER_BAD_HEAP_HANDLE = 5 const APPLICATION_VERIFIER_COM_API_IN_DLLMAIN = 1025 const APPLICATION_VERIFIER_COM_CF_SUCCESS_WITH_NULL = 1034 const APPLICATION_VERIFIER_COM_ERROR = 1024 const APPLICATION_VERIFIER_COM_GCO_SUCCESS_WITH_NULL = 1035 const APPLICATION_VERIFIER_COM_HOLDING_LOCKS_ON_CALL = 1040 const APPLICATION_VERIFIER_COM_NULL_DACL = 1030 const APPLICATION_VERIFIER_COM_OBJECT_IN_FREED_MEMORY = 1036 const APPLICATION_VERIFIER_COM_OBJECT_IN_UNLOADED_DLL = 1037 const APPLICATION_VERIFIER_COM_SMUGGLED_PROXY = 1033 const APPLICATION_VERIFIER_COM_SMUGGLED_WRAPPER = 1032 const APPLICATION_VERIFIER_COM_UNBALANCED_COINIT = 1027 const APPLICATION_VERIFIER_COM_UNBALANCED_OLEINIT = 1028 const APPLICATION_VERIFIER_COM_UNBALANCED_SWC = 1029 const APPLICATION_VERIFIER_COM_UNHANDLED_EXCEPTION = 1026 const APPLICATION_VERIFIER_COM_UNSAFE_IMPERSONATION = 1031 const APPLICATION_VERIFIER_COM_VTBL_IN_FREED_MEMORY = 1038 const APPLICATION_VERIFIER_COM_VTBL_IN_UNLOADED_DLL = 1039 const APPLICATION_VERIFIER_CONTINUABLE_BREAK = 268435456 const APPLICATION_VERIFIER_CORRUPTED_FREED_HEAP_BLOCK = 14 const APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK = 8 const APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK_END_STAMP = 17 const APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK_EXCEPTION_RAISED_FOR_HEADER = 11 const APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK_EXCEPTION_RAISED_FOR_PROBING = 12 const APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK_HEADER = 13 const APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK_PREFIX = 18 const APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK_START_STAMP = 16 const APPLICATION_VERIFIER_CORRUPTED_HEAP_BLOCK_SUFFIX = 15 const APPLICATION_VERIFIER_CORRUPTED_HEAP_LIST = 20 const APPLICATION_VERIFIER_DESTROY_PROCESS_HEAP = 9 const APPLICATION_VERIFIER_DOUBLE_FREE = 7 const APPLICATION_VERIFIER_EXIT_THREAD_OWNS_LOCK = 512 const APPLICATION_VERIFIER_EXTREME_SIZE_REQUEST = 4 const APPLICATION_VERIFIER_FIRST_CHANCE_ACCESS_VIOLATION = 19 const APPLICATION_VERIFIER_INCORRECT_WAIT_CALL = 770 const APPLICATION_VERIFIER_INTERNAL_ERROR = 2147483648 const APPLICATION_VERIFIER_INTERNAL_WARNING = 1073741824 const APPLICATION_VERIFIER_INVALID_ALLOCMEM = 1537 const APPLICATION_VERIFIER_INVALID_EXIT_PROCESS_CALL = 258 const APPLICATION_VERIFIER_INVALID_FREEMEM = 1536 const APPLICATION_VERIFIER_INVALID_HANDLE = 768 const APPLICATION_VERIFIER_INVALID_MAPVIEW = 1538 const APPLICATION_VERIFIER_INVALID_TLS_VALUE = 769 const APPLICATION_VERIFIER_LOCK_ALREADY_INITIALIZED = 529 const APPLICATION_VERIFIER_LOCK_CORRUPTED = 517 const APPLICATION_VERIFIER_LOCK_DOUBLE_INITIALIZE = 515 const APPLICATION_VERIFIER_LOCK_INVALID_LOCK_COUNT = 520 const APPLICATION_VERIFIER_LOCK_INVALID_OWNER = 518 const APPLICATION_VERIFIER_LOCK_INVALID_RECURSION_COUNT = 519 const APPLICATION_VERIFIER_LOCK_IN_FREED_HEAP = 514 const APPLICATION_VERIFIER_LOCK_IN_FREED_MEMORY = 516 const APPLICATION_VERIFIER_LOCK_IN_FREED_VMEM = 530 const APPLICATION_VERIFIER_LOCK_IN_UNLOADED_DLL = 513 const APPLICATION_VERIFIER_LOCK_IN_UNMAPPED_MEM = 531 const APPLICATION_VERIFIER_LOCK_NOT_INITIALIZED = 528 const APPLICATION_VERIFIER_LOCK_OVER_RELEASED = 521 const APPLICATION_VERIFIER_NO_BREAK = 536870912 const APPLICATION_VERIFIER_NULL_HANDLE = 771 const APPLICATION_VERIFIER_PROBE_FREE_MEM = 1540 const APPLICATION_VERIFIER_PROBE_GUARD_PAGE = 1541 const APPLICATION_VERIFIER_PROBE_INVALID_ADDRESS = 1539 const APPLICATION_VERIFIER_PROBE_INVALID_START_OR_SIZE = 1543 const APPLICATION_VERIFIER_PROBE_NULL = 1542 const APPLICATION_VERIFIER_RPC_ERROR = 1280 const APPLICATION_VERIFIER_SIZE_HEAP_UNEXPECTED_EXCEPTION = 1560 const APPLICATION_VERIFIER_STACK_OVERFLOW = 257 const APPLICATION_VERIFIER_SWITCHED_HEAP_HANDLE = 6 const APPLICATION_VERIFIER_TERMINATE_THREAD_CALL = 256 const APPLICATION_VERIFIER_THREAD_NOT_LOCK_OWNER = 532 const APPLICATION_VERIFIER_UNEXPECTED_EXCEPTION = 10 const APPLICATION_VERIFIER_UNKNOWN_ERROR = 1 const APPLICATION_VERIFIER_UNSYNCHRONIZED_ACCESS = 3 const APPLICATION_VERIFIER_WAIT_IN_DLLMAIN = 772 type APPLY_SNAPSHOT_VHDSET_FLAG = TAPPLY_SNAPSHOT_VHDSET_FLAG type APPLY_SNAPSHOT_VHDSET_PARAMETERS = TAPPLY_SNAPSHOT_VHDSET_PARAMETERS type APPLY_SNAPSHOT_VHDSET_VERSION = TAPPLY_SNAPSHOT_VHDSET_VERSION const APPMODEL_ERROR_NO_APPLICATION = 15703 const APPMODEL_ERROR_NO_PACKAGE = 15700 const APPMODEL_ERROR_PACKAGE_IDENTITY_CORRUPT = 15702 const APPMODEL_ERROR_PACKAGE_RUNTIME_CORRUPT = 15701 type APP_LOCAL_DEVICE_ID = TAPP_LOCAL_DEVICE_ID const APP_LOCAL_DEVICE_ID_SIZE = 32 type APP_MEMORY_INFORMATION = TAPP_MEMORY_INFORMATION type APTTYPE = TAPTTYPE type APTTYPEQUALIFIER = TAPTTYPEQUALIFIER const ARABIC_CHARSET = 178 type ARRAYDESC = TARRAYDESC type ARRAY_INFO = TARRAY_INFO const ARW_BOTTOMLEFT = 0 const ARW_BOTTOMRIGHT = 1 const ARW_DOWN = 4 const ARW_HIDE = 8 const ARW_LEFT = 0 const ARW_RIGHT = 0 const ARW_STARTMASK = 3 const ARW_STARTRIGHT = 1 const ARW_STARTTOP = 2 const ARW_TOPLEFT = 2 const ARW_TOPRIGHT = 3 const ARW_UP = 4 type AR_STATE = TAR_STATE const ASFW_ANY = -1 const ASPECTX = 40 const ASPECTXY = 44 const ASPECTY = 42 const ASPECT_FILTERING = 1 const ASSEMBLY_DLL_REDIRECTION_DETAILED_INFORMATION = 0 type ASSEMBLY_FILE_DETAILED_INFORMATION = TASSEMBLY_FILE_DETAILED_INFORMATION const ASSERT_ALTERNATE = 9 const ASSERT_PRIMARY = 8 type ASSOCCLASS = TASSOCCLASS type ASSOCIATIONELEMENT = TASSOCIATIONELEMENT const ASYNCH = 128 const ASYNC_MODE_COMPATIBILITY = 1 const ASYNC_MODE_DEFAULT = 0 type ASYNC_STGMEDIUM = TASYNC_STGMEDIUM const ATAPI_ID_CMD = 161 const ATF_ONOFFFEEDBACK = 2 const ATF_TIMEOUTON = 1 type ATOM = TATOM const ATOM_FLAG_GLOBAL = 2 const ATTACH_PARENT_PROCESS = -1 type ATTACH_VIRTUAL_DISK_FLAG = TATTACH_VIRTUAL_DISK_FLAG type ATTACH_VIRTUAL_DISK_PARAMETERS = TATTACH_VIRTUAL_DISK_PARAMETERS type ATTACH_VIRTUAL_DISK_VERSION = TATTACH_VIRTUAL_DISK_VERSION const ATTRIBUTE_SECURITY_INFORMATION = 32 const ATTR_CONVERTED = 2 const ATTR_FIXEDCONVERTED = 5 const ATTR_INPUT = 0 const ATTR_INPUT_ERROR = 4 const ATTR_TARGET_CONVERTED = 1 const ATTR_TARGET_NOTCONVERTED = 3 const AT_KEYEXCHANGE = 1 const AT_SIGNATURE = 2 type AUDIODESCRIPTION = TAUDIODESCRIPTION const AUDIT_ALLOW_NO_PRIVILEGE = 1 type AUDIT_EVENT_TYPE = TAUDIT_EVENT_TYPE type AUTHENTICATEF = TAUTHENTICATEF type AUTHENTICATEINFO = TAUTHENTICATEINFO type AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA = TAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA type AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS = TAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS type AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA = TAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA const AUTHTYPE_CLIENT = 1 const AUTHTYPE_SERVER = 2 type AUXCAPS = TAUXCAPS type AUXCAPS2 = TAUXCAPS2 type AUXCAPS2A = TAUXCAPS2A type AUXCAPS2W = TAUXCAPS2W type AUXCAPSA = TAUXCAPSA type AUXCAPSW = TAUXCAPSW const AUXCAPS_AUXIN = 2 const AUXCAPS_CDAUDIO = 1 const AUXCAPS_LRVOLUME = 2 const AUXCAPS_VOLUME = 1 const AUX_MAPPER = -1 const AW_ACTIVATE = 131072 const AW_BLEND = 524288 const AW_CENTER = 16 const AW_HIDE = 65536 const AW_HOR_NEGATIVE = 2 const AW_HOR_POSITIVE = 1 const AW_SLIDE = 262144 const AW_VER_NEGATIVE = 8 const AW_VER_POSITIVE = 4 type AXESLIST = TAXESLIST type AXESLISTA = TAXESLISTA type AXESLISTW = TAXESLISTW type AXISINFO = TAXISINFO type AXISINFOA = TAXISINFOA type AXISINFOW = TAXISINFOW const AbnormalTermination = 0 const AbortSystemShutdown = 0 const AccessCheckAndAuditAlarm = 0 const AccessCheckByTypeAndAuditAlarm = 0 const AccessCheckByTypeResultListAndAuditAlarm = 0 const AccessCheckByTypeResultListAndAuditAlarmByHandle = 0 const AddAtom = 0 const AddConsoleAlias = 0 const AddFontResource = 0 const AddFontResourceEx = 0 const AddForm = 0 const AddJob = 0 const AddMonitor = 0 const AddPort = 0 const AddPrintProcessor = 0 const AddPrintProvidor = 0 const AddPrinter = 0 const AddPrinterConnection = 0 const AddPrinterConnection2 = 0 const AddPrinterDriver = 0 const AddPrinterDriverEx = 0 const AdvancedDocumentProperties = 0 const AnsiLower = 0 const AnsiLowerBuff = 0 const AnsiNext = 0 const AnsiPrev = 0 const AnsiToOem = 0 const AnsiToOemBuff = 0 const AnsiUpper = 0 const AnsiUpperBuff = 0 const AppendMenu = 0 type ApplicationType = TApplicationType type AsyncIAdviseSink = TAsyncIAdviseSink type AsyncIAdviseSink2 = TAsyncIAdviseSink2 type AsyncIAdviseSink2Vtbl = TAsyncIAdviseSink2Vtbl type AsyncIAdviseSinkVtbl = TAsyncIAdviseSinkVtbl type AsyncIMultiQI = TAsyncIMultiQI type AsyncIMultiQIVtbl = TAsyncIMultiQIVtbl type AsyncIUnknown = TAsyncIUnknown type AsyncIUnknownVtbl = TAsyncIUnknownVtbl const BACKGROUND_BLUE = 16 const BACKGROUND_GREEN = 32 const BACKGROUND_INTENSITY = 128 const BACKGROUND_RED = 64 const BACKUP_ALTERNATE_DATA = 4 const BACKUP_DATA = 1 const BACKUP_EA_DATA = 2 const BACKUP_GHOSTED_FILE_EXTENTS = 11 const BACKUP_INVALID = 0 const BACKUP_LINK = 5 const BACKUP_OBJECT_ID = 7 const BACKUP_PROPERTY_DATA = 6 const BACKUP_REPARSE_DATA = 8 const BACKUP_SECURITY_DATA = 3 const BACKUP_SECURITY_INFORMATION = 65536 const BACKUP_SPARSE_BLOCK = 9 const BACKUP_TXFS_DATA = 10 type BAD_TRACK_NUMBER = TBAD_TRACK_NUMBER const BALTIC_CHARSET = 186 const BANDINFO = 24 const BASE_SEARCH_PATH_DISABLE_SAFE_SEARCHMODE = 65536 const BASE_SEARCH_PATH_ENABLE_SAFE_SEARCHMODE = 1 const BASE_SEARCH_PATH_INVALID_FLAGS = -98306 const BASE_SEARCH_PATH_PERMANENT = 32768 const BASIC_CONSTRAINTS_CERT_CHAIN_POLICY_CA_FLAG = 2147483648 const BASIC_CONSTRAINTS_CERT_CHAIN_POLICY_END_ENTITY_FLAG = 1073741824 const BATTERY_DISCHARGE_FLAGS_ENABLE = 2147483648 const BATTERY_DISCHARGE_FLAGS_EVENTCODE_MASK = 7 const BATTERY_FLAG_CHARGING = 8 const BATTERY_FLAG_CRITICAL = 4 const BATTERY_FLAG_HIGH = 1 const BATTERY_FLAG_LOW = 2 const BATTERY_FLAG_NO_BATTERY = 128 const BATTERY_FLAG_UNKNOWN = 255 const BATTERY_LIFE_UNKNOWN = 4294967295 const BATTERY_PERCENTAGE_UNKNOWN = 255 type BATTERY_REPORTING_SCALE = TBATTERY_REPORTING_SCALE type BCHAR = TBCHAR const BCRYPTBUFFER_VERSION = 0 const BCRYPT_3DES_112_ALGORITHM = "3DES_112" const BCRYPT_3DES_ALGORITHM = "3DES" const BCRYPT_AES_ALGORITHM = "AES" const BCRYPT_AES_CMAC_ALGORITHM = "AES-CMAC" const BCRYPT_AES_GMAC_ALGORITHM = "AES-GMAC" const BCRYPT_AES_WRAP_KEY_BLOB = "Rfc3565KeyWrapBlob" type BCRYPT_ALGORITHM_IDENTIFIER = TBCRYPT_ALGORITHM_IDENTIFIER const BCRYPT_ALGORITHM_NAME = "AlgorithmName" type BCRYPT_ALG_HANDLE = TBCRYPT_ALG_HANDLE const BCRYPT_ALG_HANDLE_HMAC_FLAG = 8 const BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE = 3 const BCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 4 type BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO = TBCRYPT_AUTHENTICATED_CIPHER_MODE_INFO const BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO_VERSION = 1 const BCRYPT_AUTH_MODE_CHAIN_CALLS_FLAG = 1 const BCRYPT_AUTH_MODE_IN_PROGRESS_FLAG = 2 const BCRYPT_AUTH_TAG_LENGTH = "AuthTagLength" type BCRYPT_AUTH_TAG_LENGTHS_STRUCT = TBCRYPT_AUTH_TAG_LENGTHS_STRUCT const BCRYPT_BLOCK_LENGTH = "BlockLength" const BCRYPT_BLOCK_PADDING = 1 const BCRYPT_BLOCK_SIZE_LIST = "BlockSizeList" const BCRYPT_BUFFERS_LOCKED_FLAG = 64 const BCRYPT_CAPI_AES_FLAG = 16 const BCRYPT_CAPI_KDF_ALGORITHM = "CAPI_KDF" const BCRYPT_CHAINING_MODE = "ChainingMode" const BCRYPT_CHAIN_MODE_CBC = "ChainingModeCBC" const BCRYPT_CHAIN_MODE_CCM = "ChainingModeCCM" const BCRYPT_CHAIN_MODE_CFB = "ChainingModeCFB" const BCRYPT_CHAIN_MODE_ECB = "ChainingModeECB" const BCRYPT_CHAIN_MODE_GCM = "ChainingModeGCM" const BCRYPT_CHAIN_MODE_NA = "ChainingModeN/A" const BCRYPT_CIPHER_INTERFACE = 1 const BCRYPT_CIPHER_OPERATION = 1 const BCRYPT_DESX_ALGORITHM = "DESX" const BCRYPT_DES_ALGORITHM = "DES" const BCRYPT_DH_ALGORITHM = "DH" type BCRYPT_DH_KEY_BLOB = TBCRYPT_DH_KEY_BLOB const BCRYPT_DH_PARAMETERS = "DHParameters" const BCRYPT_DH_PARAMETERS_MAGIC = 1297107012 type BCRYPT_DH_PARAMETER_HEADER = TBCRYPT_DH_PARAMETER_HEADER const BCRYPT_DH_PRIVATE_BLOB = "DHPRIVATEBLOB" const BCRYPT_DH_PRIVATE_MAGIC = 1448101956 const BCRYPT_DH_PUBLIC_BLOB = "DHPUBLICBLOB" const BCRYPT_DH_PUBLIC_MAGIC = 1112557636 const BCRYPT_DSA_ALGORITHM = "DSA" type BCRYPT_DSA_KEY_BLOB = TBCRYPT_DSA_KEY_BLOB type BCRYPT_DSA_KEY_BLOB_V2 = TBCRYPT_DSA_KEY_BLOB_V2 const BCRYPT_DSA_PARAMETERS = "DSAParameters" const BCRYPT_DSA_PARAMETERS_MAGIC = 1297109828 const BCRYPT_DSA_PARAMETERS_MAGIC_V2 = 843927620 type BCRYPT_DSA_PARAMETER_HEADER = TBCRYPT_DSA_PARAMETER_HEADER type BCRYPT_DSA_PARAMETER_HEADER_V2 = TBCRYPT_DSA_PARAMETER_HEADER_V2 const BCRYPT_DSA_PRIVATE_BLOB = "DSAPRIVATEBLOB" const BCRYPT_DSA_PRIVATE_MAGIC = 1448104772 const BCRYPT_DSA_PRIVATE_MAGIC_V2 = 844517444 const BCRYPT_DSA_PUBLIC_BLOB = "DSAPUBLICBLOB" const BCRYPT_DSA_PUBLIC_MAGIC = 1112560452 const BCRYPT_DSA_PUBLIC_MAGIC_V2 = 843206724 const BCRYPT_ECCFULLPRIVATE_BLOB = "ECCFULLPRIVATEBLOB" const BCRYPT_ECCFULLPUBLIC_BLOB = "ECCFULLPUBLICBLOB" type BCRYPT_ECCKEY_BLOB = TBCRYPT_ECCKEY_BLOB const BCRYPT_ECCPRIVATE_BLOB = "ECCPRIVATEBLOB" const BCRYPT_ECCPUBLIC_BLOB = "ECCPUBLICBLOB" type BCRYPT_ECC_CURVE_NAMES = TBCRYPT_ECC_CURVE_NAMES const BCRYPT_ECDH_P256_ALGORITHM = "ECDH_P256" const BCRYPT_ECDH_P384_ALGORITHM = "ECDH_P384" const BCRYPT_ECDH_P521_ALGORITHM = "ECDH_P521" const BCRYPT_ECDH_PRIVATE_GENERIC_MAGIC = 1447772997 const BCRYPT_ECDH_PRIVATE_P256_MAGIC = 843793221 const BCRYPT_ECDH_PRIVATE_P384_MAGIC = 877347653 const BCRYPT_ECDH_PRIVATE_P521_MAGIC = 910902085 const BCRYPT_ECDH_PUBLIC_GENERIC_MAGIC = 1347109701 const BCRYPT_ECDH_PUBLIC_P256_MAGIC = 827016005 const BCRYPT_ECDH_PUBLIC_P384_MAGIC = 860570437 const BCRYPT_ECDH_PUBLIC_P521_MAGIC = 894124869 const BCRYPT_ECDSA_P256_ALGORITHM = "ECDSA_P256" const BCRYPT_ECDSA_P384_ALGORITHM = "ECDSA_P384" const BCRYPT_ECDSA_P521_ALGORITHM = "ECDSA_P521" const BCRYPT_ECDSA_PRIVATE_GENERIC_MAGIC = 1447314245 const BCRYPT_ECDSA_PRIVATE_P256_MAGIC = 844317509 const BCRYPT_ECDSA_PRIVATE_P384_MAGIC = 877871941 const BCRYPT_ECDSA_PRIVATE_P521_MAGIC = 911426373 const BCRYPT_ECDSA_PUBLIC_GENERIC_MAGIC = 1346650949 const BCRYPT_ECDSA_PUBLIC_P256_MAGIC = 827540293 const BCRYPT_ECDSA_PUBLIC_P384_MAGIC = 861094725 const BCRYPT_ECDSA_PUBLIC_P521_MAGIC = 894649157 const BCRYPT_EFFECTIVE_KEY_LENGTH = "EffectiveKeyLength" const BCRYPT_GLOBAL_PARAMETERS = "SecretAgreementParam" type BCRYPT_HANDLE = TBCRYPT_HANDLE const BCRYPT_HASH_BLOCK_LENGTH = "HashBlockLength" type BCRYPT_HASH_HANDLE = TBCRYPT_HASH_HANDLE const BCRYPT_HASH_INTERFACE = 2 const BCRYPT_HASH_LENGTH = "HashDigestLength" const BCRYPT_HASH_OID_LIST = "HashOIDList" const BCRYPT_HASH_OPERATION = 2 type BCRYPT_HASH_OPERATION_TYPE = TBCRYPT_HASH_OPERATION_TYPE const BCRYPT_HASH_REUSABLE_FLAG = 32 const BCRYPT_INITIALIZATION_VECTOR = "IV" type BCRYPT_INTERFACE_VERSION = TBCRYPT_INTERFACE_VERSION const BCRYPT_IS_KEYED_HASH = "IsKeyedHash" const BCRYPT_IS_REUSABLE_HASH = "IsReusableHash" const BCRYPT_KDF_HASH = "HASH" const BCRYPT_KDF_HMAC = "HMAC" const BCRYPT_KDF_RAW_SECRET = "TRUNCATE" const BCRYPT_KDF_SP80056A_CONCAT = "SP800_56A_CONCAT" const BCRYPT_KDF_TLS_PRF = "TLS_PRF" type BCRYPT_KEY_BLOB = TBCRYPT_KEY_BLOB const BCRYPT_KEY_DATA_BLOB = "KeyDataBlob" type BCRYPT_KEY_DATA_BLOB_HEADER = TBCRYPT_KEY_DATA_BLOB_HEADER const BCRYPT_KEY_DATA_BLOB_MAGIC = 1296188491 const BCRYPT_KEY_DATA_BLOB_VERSION1 = 1 const BCRYPT_KEY_DERIVATION_INTERFACE = 7 const BCRYPT_KEY_DERIVATION_OPERATION = 64 type BCRYPT_KEY_HANDLE = TBCRYPT_KEY_HANDLE const BCRYPT_KEY_LENGTH = "KeyLength" const BCRYPT_KEY_LENGTHS = "KeyLengths" type BCRYPT_KEY_LENGTHS_STRUCT = TBCRYPT_KEY_LENGTHS_STRUCT const BCRYPT_KEY_OBJECT_LENGTH = "KeyObjectLength" const BCRYPT_KEY_STRENGTH = "KeyStrength" const BCRYPT_MD2_ALGORITHM = "MD2" const BCRYPT_MD4_ALGORITHM = "MD4" const BCRYPT_MD5_ALGORITHM = "MD5" const BCRYPT_MESSAGE_BLOCK_LENGTH = "MessageBlockLength" type BCRYPT_MULTI_HASH_OPERATION = TBCRYPT_MULTI_HASH_OPERATION const BCRYPT_MULTI_OBJECT_LENGTH = "MultiObjectLength" type BCRYPT_MULTI_OBJECT_LENGTH_STRUCT = TBCRYPT_MULTI_OBJECT_LENGTH_STRUCT type BCRYPT_MULTI_OPERATION_TYPE = TBCRYPT_MULTI_OPERATION_TYPE const BCRYPT_NO_KEY_VALIDATION = 8 type BCRYPT_OAEP_PADDING_INFO = TBCRYPT_OAEP_PADDING_INFO const BCRYPT_OBJECT_ALIGNMENT = 16 const BCRYPT_OBJECT_LENGTH = "ObjectLength" type BCRYPT_OID = TBCRYPT_OID type BCRYPT_OID_LIST = TBCRYPT_OID_LIST const BCRYPT_OPAQUE_KEY_BLOB = "OpaqueKeyBlob" const BCRYPT_PADDING_SCHEMES = "PaddingSchemes" const BCRYPT_PAD_NONE = 1 const BCRYPT_PAD_OAEP = 4 const BCRYPT_PAD_PKCS1 = 2 const BCRYPT_PAD_PKCS1_OPTIONAL_HASH_OID = 16 const BCRYPT_PAD_PSS = 8 const BCRYPT_PBKDF2_ALGORITHM = "PBKDF2" const BCRYPT_PCP_PLATFORM_TYPE_PROPERTY = "PCP_PLATFORM_TYPE" const BCRYPT_PCP_PROVIDER_VERSION_PROPERTY = "PCP_PROVIDER_VERSION" type BCRYPT_PKCS1_PADDING_INFO = TBCRYPT_PKCS1_PADDING_INFO const BCRYPT_PRIMITIVE_TYPE = "PrimitiveType" const BCRYPT_PRIVATE_KEY = "PrivKeyVal" const BCRYPT_PRIVATE_KEY_BLOB = "PRIVATEBLOB" const BCRYPT_PRIVATE_KEY_FLAG = 2 const BCRYPT_PROVIDER_HANDLE = "ProviderHandle" type BCRYPT_PROVIDER_NAME = TBCRYPT_PROVIDER_NAME const BCRYPT_PROV_DISPATCH = 1 type BCRYPT_PSS_PADDING_INFO = TBCRYPT_PSS_PADDING_INFO const BCRYPT_PUBLIC_KEY_BLOB = "PUBLICBLOB" const BCRYPT_PUBLIC_KEY_FLAG = 1 const BCRYPT_PUBLIC_KEY_LENGTH = "PublicKeyLength" const BCRYPT_RC2_ALGORITHM = "RC2" const BCRYPT_RC4_ALGORITHM = "RC4" const BCRYPT_RNG_ALGORITHM = "RNG" const BCRYPT_RNG_DUAL_EC_ALGORITHM = "DUALECRNG" const BCRYPT_RNG_FIPS186_DSA_ALGORITHM = "FIPS186DSARNG" const BCRYPT_RNG_INTERFACE = 6 const BCRYPT_RNG_OPERATION = 32 const BCRYPT_RNG_USE_ENTROPY_IN_BUFFER = 1 const BCRYPT_RSAFULLPRIVATE_BLOB = "RSAFULLPRIVATEBLOB" const BCRYPT_RSAFULLPRIVATE_MAGIC = 859919186 type BCRYPT_RSAKEY_BLOB = TBCRYPT_RSAKEY_BLOB const BCRYPT_RSAPRIVATE_BLOB = "RSAPRIVATEBLOB" const BCRYPT_RSAPRIVATE_MAGIC = 843141970 const BCRYPT_RSAPUBLIC_BLOB = "RSAPUBLICBLOB" const BCRYPT_RSAPUBLIC_MAGIC = 826364754 const BCRYPT_RSA_ALGORITHM = "RSA" const BCRYPT_RSA_SIGN_ALGORITHM = "RSA_SIGN" const BCRYPT_SECRET_AGREEMENT_INTERFACE = 4 const BCRYPT_SECRET_AGREEMENT_OPERATION = 8 type BCRYPT_SECRET_HANDLE = TBCRYPT_SECRET_HANDLE const BCRYPT_SHA1_ALGORITHM = "SHA1" const BCRYPT_SHA256_ALGORITHM = "SHA256" const BCRYPT_SHA384_ALGORITHM = "SHA384" const BCRYPT_SHA512_ALGORITHM = "SHA512" const BCRYPT_SIGNATURE_INTERFACE = 5 const BCRYPT_SIGNATURE_LENGTH = "SignatureLength" const BCRYPT_SIGNATURE_OPERATION = 16 const BCRYPT_SP800108_CTR_HMAC_ALGORITHM = "SP800_108_CTR_HMAC" const BCRYPT_SP80056A_CONCAT_ALGORITHM = "SP800_56A_CONCAT" const BCRYPT_SUPPORTED_PAD_OAEP = 8 const BCRYPT_SUPPORTED_PAD_PKCS1_ENC = 2 const BCRYPT_SUPPORTED_PAD_PKCS1_SIG = 4 const BCRYPT_SUPPORTED_PAD_PSS = 16 const BCRYPT_SUPPORTED_PAD_ROUTER = 1 const BCRYPT_USE_SYSTEM_PREFERRED_RNG = 2 type BCryptBuffer = TBCryptBuffer type BCryptBufferDesc = TBCryptBufferDesc const BDR_INNER = 12 const BDR_OUTER = 3 const BDR_RAISED = 5 const BDR_RAISEDINNER = 4 const BDR_RAISEDOUTER = 1 const BDR_SUNKEN = 10 const BDR_SUNKENINNER = 8 const BDR_SUNKENOUTER = 2 const BEGIN_PATH = 4096 const BELOW_NORMAL_PRIORITY_CLASS = 16384 type BEM_FREE_INTERFACE_CALLBACK = TBEM_FREE_INTERFACE_CALLBACK const BF_ADJUST = 8192 const BF_BOTTOM = 8 const BF_BOTTOMLEFT = 9 const BF_BOTTOMRIGHT = 12 const BF_DIAGONAL = 16 const BF_DIAGONAL_ENDBOTTOMLEFT = 25 const BF_DIAGONAL_ENDBOTTOMRIGHT = 28 const BF_DIAGONAL_ENDTOPLEFT = 19 const BF_DIAGONAL_ENDTOPRIGHT = 22 const BF_FLAT = 16384 const BF_LEFT = 1 const BF_MIDDLE = 2048 const BF_MONO = 32768 const BF_RECT = 15 const BF_RIGHT = 4 const BF_SOFT = 4096 const BF_TOP = 2 const BF_TOPLEFT = 3 const BF_TOPRIGHT = 6 const BIDI_ACCESS_ADMINISTRATOR = 1 const BIDI_ACCESS_USER = 2 const BIDI_ACTION_ENUM_SCHEMA = "EnumSchema" const BIDI_ACTION_GET = "Get" const BIDI_ACTION_GET_ALL = "GetAll" const BIDI_ACTION_SET = "Set" type BIDI_DATA = TBIDI_DATA type BIDI_REQUEST_CONTAINER = TBIDI_REQUEST_CONTAINER type BIDI_REQUEST_DATA = TBIDI_REQUEST_DATA type BIDI_RESPONSE_CONTAINER = TBIDI_RESPONSE_CONTAINER type BIDI_RESPONSE_DATA = TBIDI_RESPONSE_DATA type BIDI_TYPE = TBIDI_TYPE type BINARY_CONTAINER = TBINARY_CONTAINER type BINDF = TBINDF type BINDF2 = TBINDF2 const BINDF_DONTPUTINCACHE = 0 const BINDF_DONTUSECACHE = 0 const BINDF_NOCOPYDATA = 0 type BINDHANDLETYPES = TBINDHANDLETYPES type BINDINFO = TBINDINFO type BINDINFOF = TBINDINFOF type BINDINFO_OPTIONS = TBINDINFO_OPTIONS type BINDPTR = TBINDPTR type BINDSPEED = TBINDSPEED type BINDSTATUS = TBINDSTATUS type BINDSTRING = TBINDSTRING type BINDVERB = TBINDVERB type BIND_FLAGS = TBIND_FLAGS type BIND_OPTS = TBIND_OPTS type BIND_OPTS2 = TBIND_OPTS2 type BIND_OPTS3 = TBIND_OPTS3 type BIN_COUNT = TBIN_COUNT type BIN_RANGE = TBIN_RANGE type BIN_RESULTS = TBIN_RESULTS type BIN_TYPES = TBIN_TYPES type BITMAP = TBITMAP type BITMAPCOREHEADER = TBITMAPCOREHEADER type BITMAPCOREINFO = TBITMAPCOREINFO type BITMAPFILEHEADER = TBITMAPFILEHEADER type BITMAPINFO = TBITMAPINFO type BITMAPINFOHEADER = TBITMAPINFOHEADER type BITMAPV4HEADER = TBITMAPV4HEADER type BITMAPV5HEADER = TBITMAPV5HEADER const BITSPIXEL = 12 const BI_BITFIELDS = 3 const BI_JPEG = 4 const BI_PNG = 5 const BI_RGB = 0 const BI_RLE4 = 2 const BI_RLE8 = 1 const BKMODE_LAST = 2 const BLACKONWHITE = 1 const BLACK_BRUSH = 4 const BLACK_PEN = 7 type BLENDFUNCTION = TBLENDFUNCTION type BLOB = TBLOB type BLOBHEADER = TBLOBHEADER const BLTALIGNMENT = 119 const BM_CLICK = 245 const BM_GETCHECK = 240 const BM_GETIMAGE = 246 const BM_GETSTATE = 242 const BM_SETCHECK = 241 const BM_SETDONTCLICK = 248 const BM_SETIMAGE = 247 const BM_SETSTATE = 243 const BM_SETSTYLE = 244 const BN_CLICKED = 0 const BN_DBLCLK = 5 const BN_DISABLE = 4 const BN_DOUBLECLICKED = 5 const BN_HILITE = 2 const BN_KILLFOCUS = 7 const BN_PAINT = 1 const BN_PUSHED = 2 const BN_SETFOCUS = 6 const BN_UNHILITE = 3 const BN_UNPUSHED = 3 const BOLD_FONTTYPE = 256 type BOOL = TBOOL type BOOLEAN = TBOOLEAN type BOOT_AREA_INFO = TBOOT_AREA_INFO type BORDERWIDTHS = TBORDERWIDTHS const BROADCAST_QUERY_DENY = 1112363332 type BSCF = TBSCF const BSF_ALLOWSFW = 128 const BSF_FLUSHDISK = 4 const BSF_FORCEIFHUNG = 32 const BSF_IGNORECURRENTTASK = 2 const BSF_LUID = 1024 const BSF_NOHANG = 8 const BSF_NOTIMEOUTIFNOTHUNG = 64 const BSF_POSTMESSAGE = 16 const BSF_QUERY = 1 const BSF_RETURNHDESK = 512 const BSF_SENDNOTIFYMESSAGE = 256 type BSMINFO = TBSMINFO const BSM_ALLCOMPONENTS = 0 const BSM_ALLDESKTOPS = 16 const BSM_APPLICATIONS = 8 const BSM_INSTALLABLEDRIVERS = 4 const BSM_NETDRIVER = 2 const BSM_VXDS = 1 type BSTR = TBSTR type BSTRBLOB = TBSTRBLOB const BST_CHECKED = 1 const BST_FOCUS = 8 const BST_INDETERMINATE = 2 const BST_PUSHED = 4 const BST_UNCHECKED = 0 const BS_3STATE = 5 const BS_AUTO3STATE = 6 const BS_AUTOCHECKBOX = 3 const BS_AUTORADIOBUTTON = 9 const BS_BITMAP = 128 const BS_BOTTOM = 2048 const BS_CENTER = 768 const BS_CHECKBOX = 2 const BS_DEFPUSHBUTTON = 1 const BS_DIBPATTERN = 5 const BS_DIBPATTERN8X8 = 8 const BS_DIBPATTERNPT = 6 const BS_FLAT = 32768 const BS_GROUPBOX = 7 const BS_HATCHED = 2 const BS_HOLLOW = 1 const BS_ICON = 64 const BS_INDEXED = 4 const BS_LEFT = 256 const BS_LEFTTEXT = 32 const BS_MONOPATTERN = 9 const BS_MULTILINE = 8192 const BS_NOTIFY = 16384 const BS_NULL = 1 const BS_OWNERDRAW = 11 const BS_PATTERN = 3 const BS_PATTERN8X8 = 7 const BS_PUSHBOX = 10 const BS_PUSHBUTTON = 0 const BS_PUSHLIKE = 4096 const BS_RADIOBUTTON = 4 const BS_RIGHT = 512 const BS_RIGHTBUTTON = 32 const BS_SOLID = 0 const BS_TEXT = 0 const BS_TOP = 1024 const BS_TYPEMASK = 15 const BS_USERBUTTON = 8 const BS_VCENTER = 3072 const BUFSIZ = 512 type BULK_SECURITY_TEST_DATA = TBULK_SECURITY_TEST_DATA type BYTE = TBYTE type BYTE_BLOB = TBYTE_BLOB type BYTE_SIZEDARR = TBYTE_SIZEDARR type BY_HANDLE_FILE_INFORMATION = TBY_HANDLE_FILE_INFORMATION const BackupEventLog = 0 const BeginUpdateResource = 0 type BinaryParam = TBinaryParam const BitScanForward = 0 const BitScanReverse = 0 const BitTest = 0 const BitTestAndComplement = 0 const BitTestAndReset = 0 const BitTestAndSet = 0 const BroadcastSystemMessage = 0 const BroadcastSystemMessageEx = 0 const BuildCommDCB = 0 const BuildCommDCBAndTimeouts = 0 const C1_ALPHA = 256 const C1_BLANK = 64 const C1_CNTRL = 32 const C1_DEFINED = 512 const C1_DIGIT = 4 const C1_LOWER = 2 const C1_PUNCT = 16 const C1_SPACE = 8 const C1_UPPER = 1 const C1_XDIGIT = 128 const C2_ARABICNUMBER = 6 const C2_BLOCKSEPARATOR = 8 const C2_COMMONSEPARATOR = 7 const C2_EUROPENUMBER = 3 const C2_EUROPESEPARATOR = 4 const C2_EUROPETERMINATOR = 5 const C2_LEFTTORIGHT = 1 const C2_NOTAPPLICABLE = 0 const C2_OTHERNEUTRAL = 11 const C2_RIGHTTOLEFT = 2 const C2_SEGMENTSEPARATOR = 9 const C2_WHITESPACE = 10 const C3_ALPHA = 32768 const C3_DIACRITIC = 2 const C3_FULLWIDTH = 128 const C3_HALFWIDTH = 64 const C3_HIGHSURROGATE = 2048 const C3_HIRAGANA = 32 const C3_IDEOGRAPH = 256 const C3_KASHIDA = 512 const C3_KATAKANA = 16 const C3_LEXICAL = 1024 const C3_LOWSURROGATE = 4096 const C3_NONSPACING = 1 const C3_NOTAPPLICABLE = 0 const C3_SYMBOL = 8 const C3_VOWELMARK = 4 type CABOOL = TCABOOL type CABSTR = TCABSTR type CABSTRBLOB = TCABSTRBLOB type CAC = TCAC type CACHE_DESCRIPTOR = TCACHE_DESCRIPTOR const CACHE_E_FIRST = 2147746160 const CACHE_E_LAST = 2147746175 const CACHE_FULLY_ASSOCIATIVE = 255 type CACHE_RELATIONSHIP = TCACHE_RELATIONSHIP const CACHE_S_FIRST = 262512 const CACHE_S_LAST = 262527 type CACLIPDATA = TCACLIPDATA type CACLSID = TCACLSID type CACY = TCACY type CADATE = TCADATE type CADBL = TCADBL const CADV_LATEACK = 65535 type CAFILETIME = TCAFILETIME type CAFLT = TCAFLT type CAH = TCAH type CAI = TCAI type CAL = TCAL const CALERT_SYSTEM = 6 const CALG_3DES = 26115 const CALG_3DES_112 = 26121 const CALG_AES = 26129 const CALG_AES_128 = 26126 const CALG_AES_192 = 26127 const CALG_AES_256 = 26128 const CALG_AGREEDKEY_ANY = 43523 const CALG_CYLINK_MEK = 26124 const CALG_DES = 26113 const CALG_DESX = 26116 const CALG_DH_EPHEM = 43522 const CALG_DH_SF = 43521 const CALG_DSS_SIGN = 8704 const CALG_ECDH = 43525 const CALG_ECDH_EPHEM = 44550 const CALG_ECDSA = 8707 const CALG_ECMQV = 40961 const CALG_HASH_REPLACE_OWF = 32779 const CALG_HMAC = 32777 const CALG_HUGHES_MD5 = 40963 const CALG_KEA_KEYX = 43524 const CALG_MAC = 32773 const CALG_MD2 = 32769 const CALG_MD4 = 32770 const CALG_MD5 = 32771 const CALG_NO_SIGN = 8192 const CALG_NULLCIPHER = 24576 const CALG_OID_INFO_CNG_ONLY = 4294967295 const CALG_OID_INFO_PARAMETERS = 4294967294 const CALG_PCT1_MASTER = 19460 const CALG_RC2 = 26114 const CALG_RC4 = 26625 const CALG_RC5 = 26125 const CALG_RSA_KEYX = 41984 const CALG_RSA_SIGN = 9216 const CALG_SCHANNEL_ENC_KEY = 19463 const CALG_SCHANNEL_MAC_KEY = 19459 const CALG_SCHANNEL_MASTER_HASH = 19458 const CALG_SEAL = 26626 const CALG_SHA = 32772 const CALG_SHA1 = 32772 const CALG_SHA_256 = 32780 const CALG_SHA_384 = 32781 const CALG_SHA_512 = 32782 const CALG_SKIPJACK = 26122 const CALG_SSL2_MASTER = 19461 const CALG_SSL3_MASTER = 19457 const CALG_SSL3_SHAMD5 = 32776 const CALG_TEK = 26123 const CALG_TLS1PRF = 32778 const CALG_TLS1_MASTER = 19462 type CALID = TCALID const CALINFO_ENUMPROC = 0 type CALINFO_ENUMPROCA = TCALINFO_ENUMPROCA const CALINFO_ENUMPROCEX = 0 type CALINFO_ENUMPROCEXA = TCALINFO_ENUMPROCEXA type CALINFO_ENUMPROCEXEX = TCALINFO_ENUMPROCEXEX type CALINFO_ENUMPROCEXW = TCALINFO_ENUMPROCEXW type CALINFO_ENUMPROCW = TCALINFO_ENUMPROCW const CALLBACK_CHUNK_FINISHED = 0 const CALLBACK_EVENT = 327680 const CALLBACK_FUNCTION = 196608 const CALLBACK_NULL = 0 const CALLBACK_STREAM_SWITCH = 1 const CALLBACK_TASK = 131072 const CALLBACK_THREAD = 131072 const CALLBACK_TYPEMASK = 458752 const CALLBACK_WINDOW = 65536 type CALLCONV = TCALLCONV type CALLTYPE = TCALLTYPE const CALL_PENDING = 2 type CALPSTR = TCALPSTR type CALPWSTR = TCALPWSTR type CALTYPE = TCALTYPE const CAL_GREGORIAN = 1 const CAL_GREGORIAN_ARABIC = 10 const CAL_GREGORIAN_ME_FRENCH = 9 const CAL_GREGORIAN_US = 2 const CAL_GREGORIAN_XLIT_ENGLISH = 11 const CAL_GREGORIAN_XLIT_FRENCH = 12 const CAL_HEBREW = 8 const CAL_HIJRI = 6 const CAL_ICALINTVALUE = 1 const CAL_ITWODIGITYEARMAX = 48 const CAL_IYEAROFFSETRANGE = 3 const CAL_JAPAN = 3 const CAL_KOREA = 5 const CAL_NOUSEROVERRIDE = 2147483648 const CAL_RETURN_GENITIVE_NAMES = 268435456 const CAL_RETURN_NUMBER = 536870912 const CAL_SABBREVDAYNAME1 = 14 const CAL_SABBREVDAYNAME2 = 15 const CAL_SABBREVDAYNAME3 = 16 const CAL_SABBREVDAYNAME4 = 17 const CAL_SABBREVDAYNAME5 = 18 const CAL_SABBREVDAYNAME6 = 19 const CAL_SABBREVDAYNAME7 = 20 const CAL_SABBREVERASTRING = 57 const CAL_SABBREVMONTHNAME1 = 34 const CAL_SABBREVMONTHNAME10 = 43 const CAL_SABBREVMONTHNAME11 = 44 const CAL_SABBREVMONTHNAME12 = 45 const CAL_SABBREVMONTHNAME13 = 46 const CAL_SABBREVMONTHNAME2 = 35 const CAL_SABBREVMONTHNAME3 = 36 const CAL_SABBREVMONTHNAME4 = 37 const CAL_SABBREVMONTHNAME5 = 38 const CAL_SABBREVMONTHNAME6 = 39 const CAL_SABBREVMONTHNAME7 = 40 const CAL_SABBREVMONTHNAME8 = 41 const CAL_SABBREVMONTHNAME9 = 42 const CAL_SCALNAME = 2 const CAL_SDAYNAME1 = 7 const CAL_SDAYNAME2 = 8 const CAL_SDAYNAME3 = 9 const CAL_SDAYNAME4 = 10 const CAL_SDAYNAME5 = 11 const CAL_SDAYNAME6 = 12 const CAL_SDAYNAME7 = 13 const CAL_SERASTRING = 4 const CAL_SJAPANESEERAFIRSTYEAR = 61 const CAL_SLONGDATE = 6 const CAL_SMONTHDAY = 56 const CAL_SMONTHNAME1 = 21 const CAL_SMONTHNAME10 = 30 const CAL_SMONTHNAME11 = 31 const CAL_SMONTHNAME12 = 32 const CAL_SMONTHNAME13 = 33 const CAL_SMONTHNAME2 = 22 const CAL_SMONTHNAME3 = 23 const CAL_SMONTHNAME4 = 24 const CAL_SMONTHNAME5 = 25 const CAL_SMONTHNAME6 = 26 const CAL_SMONTHNAME7 = 27 const CAL_SMONTHNAME8 = 28 const CAL_SMONTHNAME9 = 29 const CAL_SRELATIVELONGDATE = 58 const CAL_SSHORTDATE = 5 const CAL_SSHORTESTDAYNAME1 = 49 const CAL_SSHORTESTDAYNAME2 = 50 const CAL_SSHORTESTDAYNAME3 = 51 const CAL_SSHORTESTDAYNAME4 = 52 const CAL_SSHORTESTDAYNAME5 = 53 const CAL_SSHORTESTDAYNAME6 = 54 const CAL_SSHORTESTDAYNAME7 = 55 const CAL_SYEARMONTH = 47 const CAL_TAIWAN = 4 const CAL_THAI = 7 const CAL_UMALQURA = 23 const CAL_USE_CP_ACP = 1073741824 type CANDIDATEFORM = TCANDIDATEFORM type CANDIDATELIST = TCANDIDATELIST type CAPROPVARIANT = TCAPROPVARIANT const CAPSLOCK_ON = 128 const CAP_ATAPI_ID_CMD = 2 const CAP_ATA_ID_CMD = 1 const CAP_SMART_CMD = 4 type CASCODE = TCASCODE const CAT_E_FIRST = 2147746144 const CAT_E_LAST = 2147746145 type CAUB = TCAUB type CAUH = TCAUH type CAUI = TCAUI type CAUL = TCAUL const CA_LOG_FILTER = 2 const CA_NEGATIVE = 1 const CBF_FAIL_ADVISES = 16384 const CBF_FAIL_ALLSVRXACTIONS = 258048 const CBF_FAIL_CONNECTIONS = 8192 const CBF_FAIL_EXECUTES = 32768 const CBF_FAIL_POKES = 65536 const CBF_FAIL_REQUESTS = 131072 const CBF_FAIL_SELFCONNECTIONS = 4096 const CBF_SKIP_ALLNOTIFICATIONS = 3932160 const CBF_SKIP_CONNECT_CONFIRMS = 262144 const CBF_SKIP_DISCONNECTS = 2097152 const CBF_SKIP_REGISTRATIONS = 524288 const CBF_SKIP_UNREGISTRATIONS = 1048576 const CBM_INIT = 4 const CBN_CLOSEUP = 8 const CBN_DBLCLK = 2 const CBN_DROPDOWN = 7 const CBN_EDITCHANGE = 5 const CBN_EDITUPDATE = 6 const CBN_ERRSPACE = -1 const CBN_KILLFOCUS = 4 const CBN_SELCHANGE = 1 const CBN_SELENDCANCEL = 10 const CBN_SELENDOK = 9 const CBN_SETFOCUS = 3 const CBR_110 = 110 const CBR_115200 = 115200 const CBR_1200 = 1200 const CBR_128000 = 128000 const CBR_14400 = 14400 const CBR_19200 = 19200 const CBR_2400 = 2400 const CBR_256000 = 256000 const CBR_300 = 300 const CBR_38400 = 38400 const CBR_4800 = 4800 const CBR_56000 = 56000 const CBR_57600 = 57600 const CBR_600 = 600 const CBR_9600 = 9600 const CBR_BLOCK = -1 const CBS_AUTOHSCROLL = 64 const CBS_DISABLENOSCROLL = 2048 const CBS_DROPDOWN = 2 const CBS_DROPDOWNLIST = 3 const CBS_HASSTRINGS = 512 const CBS_LOWERCASE = 16384 const CBS_NOINTEGRALHEIGHT = 1024 const CBS_OEMCONVERT = 128 const CBS_OWNERDRAWFIXED = 16 const CBS_OWNERDRAWVARIABLE = 32 const CBS_SIMPLE = 1 const CBS_SORT = 256 const CBS_UPPERCASE = 8192 type CBTACTIVATESTRUCT = TCBTACTIVATESTRUCT type CBT_CREATEWND = TCBT_CREATEWND type CBT_CREATEWNDA = TCBT_CREATEWNDA type CBT_CREATEWNDW = TCBT_CREATEWNDW const CB_ADDSTRING = 323 const CB_DELETESTRING = 324 const CB_DIR = 325 const CB_ERR = -1 const CB_ERRSPACE = -2 const CB_FINDSTRING = 332 const CB_FINDSTRINGEXACT = 344 const CB_GETCOMBOBOXINFO = 356 const CB_GETCOUNT = 326 const CB_GETCURSEL = 327 const CB_GETDROPPEDCONTROLRECT = 338 const CB_GETDROPPEDSTATE = 343 const CB_GETDROPPEDWIDTH = 351 const CB_GETEDITSEL = 320 const CB_GETEXTENDEDUI = 342 const CB_GETHORIZONTALEXTENT = 349 const CB_GETITEMDATA = 336 const CB_GETITEMHEIGHT = 340 const CB_GETLBTEXT = 328 const CB_GETLBTEXTLEN = 329 const CB_GETLOCALE = 346 const CB_GETTOPINDEX = 347 const CB_INITSTORAGE = 353 const CB_INSERTSTRING = 330 const CB_LIMITTEXT = 321 const CB_MSGMAX = 357 const CB_OKAY = 0 const CB_RESETCONTENT = 331 const CB_SELECTSTRING = 333 const CB_SETCURSEL = 334 const CB_SETDROPPEDWIDTH = 352 const CB_SETEDITSEL = 322 const CB_SETEXTENDEDUI = 341 const CB_SETHORIZONTALEXTENT = 350 const CB_SETITEMDATA = 337 const CB_SETITEMHEIGHT = 339 const CB_SETLOCALE = 345 const CB_SETTOPINDEX = 348 const CB_SHOWDROPDOWN = 335 const CCERR_CHOOSECOLORCODES = 20480 type CCERT_STORE_PROV_FIND_INFO = TCCERT_STORE_PROV_FIND_INFO type CCHAR = TCCHAR const CCHDEVICENAME = 32 const CCHFORMNAME = 32 const CCHILDREN_SCROLLBAR = 5 const CCHILDREN_TITLEBAR = 5 const CCH_MAX_PROPSTG_NAME = 31 type CCRYPT_OID_INFO = TCCRYPT_OID_INFO const CC_ANYCOLOR = 256 const CC_CHORD = 4 const CC_CIRCLES = 1 const CC_ELLIPSES = 8 const CC_ENABLEHOOK = 16 const CC_ENABLETEMPLATE = 32 const CC_ENABLETEMPLATEHANDLE = 64 const CC_FULLOPEN = 2 const CC_INTERIORS = 128 const CC_NONE = 0 const CC_PIE = 2 const CC_PREVENTFULLOPEN = 4 const CC_RGBINIT = 1 const CC_ROUNDRECT = 256 const CC_SHOWHELP = 8 const CC_SOLIDCOLOR = 128 const CC_STYLED = 32 const CC_WIDE = 16 const CC_WIDESTYLED = 64 const CDERR_DIALOGFAILURE = 65535 const CDERR_FINDRESFAILURE = 6 const CDERR_GENERALCODES = 0 const CDERR_INITIALIZATION = 2 const CDERR_LOADRESFAILURE = 7 const CDERR_LOADSTRFAILURE = 5 const CDERR_LOCKRESFAILURE = 8 const CDERR_MEMALLOCFAILURE = 9 const CDERR_MEMLOCKFAILURE = 10 const CDERR_NOHINSTANCE = 4 const CDERR_NOHOOK = 11 const CDERR_NOTEMPLATE = 3 const CDERR_REGISTERMSGFAIL = 12 const CDERR_STRUCTSIZE = 1 const CDM_FIRST = 1124 const CDM_GETFILEPATH = 1125 const CDM_GETFOLDERIDLIST = 1127 const CDM_GETFOLDERPATH = 1126 const CDM_GETSPEC = 1124 const CDM_HIDECONTROL = 1129 const CDM_LAST = 1224 const CDM_SETCONTROLTEXT = 1128 const CDM_SETDEFEXT = 1130 const CDN_FILEOK = 18446744073709551010 const CDN_FIRST = 18446744073709551015 const CDN_FOLDERCHANGE = 18446744073709551013 const CDN_HELP = 18446744073709551011 const CDN_INCLUDEITEM = 18446744073709551008 const CDN_INITDONE = 18446744073709551015 const CDN_LAST = 18446744073709550917 const CDN_SELCHANGE = 18446744073709551014 const CDN_SHAREVIOLATION = 18446744073709551012 const CDN_TYPECHANGE = 18446744073709551009 const CDS_DISABLE_UNSAFE_MODES = 512 const CDS_ENABLE_UNSAFE_MODES = 256 const CDS_FULLSCREEN = 4 const CDS_GLOBAL = 8 const CDS_NORESET = 268435456 const CDS_RESET = 1073741824 const CDS_RESET_EX = 536870912 const CDS_SET_PRIMARY = 16 const CDS_TEST = 2 const CDS_UPDATEREGISTRY = 1 const CDS_VIDEOPARAMETERS = 32 const CD_LBSELADD = 2 const CD_LBSELCHANGE = 0 const CD_LBSELNOITEMS = -1 const CD_LBSELSUB = 1 type CERT_ACCESS_DESCRIPTION = TCERT_ACCESS_DESCRIPTION const CERT_ACCESS_STATE_GP_SYSTEM_STORE_FLAG = 8 const CERT_ACCESS_STATE_LM_SYSTEM_STORE_FLAG = 4 const CERT_ACCESS_STATE_PROP_ID = 14 const CERT_ACCESS_STATE_SHARED_USER_FLAG = 16 const CERT_ACCESS_STATE_SYSTEM_STORE_FLAG = 2 const CERT_ACCESS_STATE_WRITE_PERSIST_FLAG = 1 const CERT_AIA_URL_RETRIEVED_PROP_ID = 67 const CERT_ALT_NAME_DIRECTORY_NAME = 5 const CERT_ALT_NAME_DNS_NAME = 3 const CERT_ALT_NAME_EDI_PARTY_NAME = 6 type CERT_ALT_NAME_ENTRY = TCERT_ALT_NAME_ENTRY const CERT_ALT_NAME_ENTRY_ERR_INDEX_MASK = 255 const CERT_ALT_NAME_ENTRY_ERR_INDEX_SHIFT = 16 type CERT_ALT_NAME_INFO = TCERT_ALT_NAME_INFO const CERT_ALT_NAME_IP_ADDRESS = 8 const CERT_ALT_NAME_OTHER_NAME = 1 const CERT_ALT_NAME_REGISTERED_ID = 9 const CERT_ALT_NAME_RFC822_NAME = 2 const CERT_ALT_NAME_URL = 7 const CERT_ALT_NAME_VALUE_ERR_INDEX_MASK = 65535 const CERT_ALT_NAME_VALUE_ERR_INDEX_SHIFT = 0 const CERT_ALT_NAME_X400_ADDRESS = 4 const CERT_ARCHIVED_KEY_HASH_PROP_ID = 65 const CERT_ARCHIVED_PROP_ID = 19 type CERT_AUTHORITY_INFO_ACCESS = TCERT_AUTHORITY_INFO_ACCESS const CERT_AUTHORITY_INFO_ACCESS_PROP_ID = 68 type CERT_AUTHORITY_KEY_ID2_INFO = TCERT_AUTHORITY_KEY_ID2_INFO type CERT_AUTHORITY_KEY_ID_INFO = TCERT_AUTHORITY_KEY_ID_INFO const CERT_AUTH_ROOT_AUTO_UPDATE_DISABLE_PARTIAL_CHAIN_LOGGING_FLAG = 2 const CERT_AUTH_ROOT_AUTO_UPDATE_DISABLE_UNTRUSTED_ROOT_LOGGING_FLAG = 1 const CERT_AUTH_ROOT_AUTO_UPDATE_ENCODED_CTL_VALUE_NAME = "EncodedCtl" const CERT_AUTH_ROOT_AUTO_UPDATE_FLAGS_VALUE_NAME = "Flags" const CERT_AUTH_ROOT_AUTO_UPDATE_LAST_SYNC_TIME_VALUE_NAME = "LastSyncTime" const CERT_AUTH_ROOT_AUTO_UPDATE_LOCAL_MACHINE_REGPATH = "CERT_AUTO_UPDATE_LOCAL_MACHINE_REGPATH" const CERT_AUTH_ROOT_AUTO_UPDATE_ROOT_DIR_URL_VALUE_NAME = "CERT_AUTO_UPDATE_ROOT_DIR_URL_VALUE_NAME" const CERT_AUTH_ROOT_AUTO_UPDATE_SYNC_DELTA_TIME_VALUE_NAME = "SyncDeltaTime" const CERT_AUTH_ROOT_CAB_FILENAME = "authrootstl.cab" const CERT_AUTH_ROOT_CERT_EXT = ".crt" const CERT_AUTH_ROOT_CTL_FILENAME = "authroot.stl" const CERT_AUTH_ROOT_CTL_FILENAME_A = "authroot.stl" const CERT_AUTH_ROOT_SEQ_FILENAME = "authrootseq.txt" const CERT_AUTH_ROOT_SHA256_HASH_PROP_ID = 98 const CERT_AUTO_ENROLL_PROP_ID = 21 const CERT_AUTO_ENROLL_RETRY_PROP_ID = 66 const CERT_AUTO_UPDATE_DISABLE_RANDOM_QUERY_STRING_FLAG = 4 const CERT_AUTO_UPDATE_ROOT_DIR_URL_VALUE_NAME = "RootDirUrl" const CERT_AUTO_UPDATE_SYNC_FROM_DIR_URL_VALUE_NAME = "SyncFromDirUrl" const CERT_BACKED_UP_PROP_ID = 69 type CERT_BASIC_CONSTRAINTS2_INFO = TCERT_BASIC_CONSTRAINTS2_INFO type CERT_BASIC_CONSTRAINTS_INFO = TCERT_BASIC_CONSTRAINTS_INFO type CERT_BIOMETRIC_DATA = TCERT_BIOMETRIC_DATA type CERT_BIOMETRIC_EXT_INFO = TCERT_BIOMETRIC_EXT_INFO const CERT_BIOMETRIC_OID_DATA_CHOICE = 2 const CERT_BIOMETRIC_PICTURE_TYPE = 0 const CERT_BIOMETRIC_PREDEFINED_DATA_CHOICE = 1 const CERT_BIOMETRIC_SIGNATURE_TYPE = 1 type CERT_BLOB = TCERT_BLOB const CERT_BUNDLE_CERTIFICATE = 0 const CERT_BUNDLE_CRL = 1 const CERT_CASE_INSENSITIVE_IS_RDN_ATTRS_FLAG = 2 const CERT_CA_DISABLE_CRL_PROP_ID = 82 const CERT_CA_OCSP_AUTHORITY_INFO_ACCESS_PROP_ID = 81 const CERT_CA_SUBJECT_FLAG = 128 const CERT_CEP_PROP_ID = 87 type CERT_CHAIN = TCERT_CHAIN const CERT_CHAIN_AUTO_CURRENT_USER = 1 const CERT_CHAIN_AUTO_FLAGS_VALUE_NAME = "AutoFlags" const CERT_CHAIN_AUTO_FLUSH_DISABLE_FLAG = 1 const CERT_CHAIN_AUTO_FLUSH_FIRST_DELTA_SECONDS_DEFAULT = 300 const CERT_CHAIN_AUTO_FLUSH_FIRST_DELTA_SECONDS_VALUE_NAME = "AutoFlushFirstDeltaSeconds" const CERT_CHAIN_AUTO_FLUSH_NEXT_DELTA_SECONDS_DEFAULT = 1800 const CERT_CHAIN_AUTO_FLUSH_NEXT_DELTA_SECONDS_VALUE_NAME = "AutoFlushNextDeltaSeconds" const CERT_CHAIN_AUTO_HPKP_RULE_INFO = 8 const CERT_CHAIN_AUTO_IMPERSONATED = 3 const CERT_CHAIN_AUTO_LOCAL_MACHINE = 2 const CERT_CHAIN_AUTO_LOG_CREATE_FLAG = 2 const CERT_CHAIN_AUTO_LOG_FILE_NAME_VALUE_NAME = "AutoLogFileName" const CERT_CHAIN_AUTO_LOG_FLAGS = 14 const CERT_CHAIN_AUTO_LOG_FLUSH_FLAG = 8 const CERT_CHAIN_AUTO_LOG_FREE_FLAG = 4 const CERT_CHAIN_AUTO_NETWORK_INFO = 6 const CERT_CHAIN_AUTO_PINRULE_INFO = 5 const CERT_CHAIN_AUTO_PROCESS_INFO = 4 const CERT_CHAIN_AUTO_SERIAL_LOCAL_MACHINE = 7 const CERT_CHAIN_CACHE_END_CERT = 1 const CERT_CHAIN_CACHE_ONLY_URL_RETRIEVAL = 4 const CERT_CHAIN_CACHE_RESYNC_FILETIME_VALUE_NAME = "ChainCacheResyncFiletime" const CERT_CHAIN_CONFIG_REGPATH = "Software\\\\Microsoft\\\\Cryptography\\\\OID\\\\EncodingType 0\\\\CertDllCreateCertificateChainEngine\\\\Config" type CERT_CHAIN_CONTEXT = TCERT_CHAIN_CONTEXT const CERT_CHAIN_CRL_VALIDITY_EXT_PERIOD_HOURS_DEFAULT = 12 const CERT_CHAIN_CRL_VALIDITY_EXT_PERIOD_HOURS_VALUE_NAME = "CRLValidityExtensionPeriod" const CERT_CHAIN_CROSS_CERT_DOWNLOAD_INTERVAL_HOURS_DEFAULT = 168 const CERT_CHAIN_CROSS_CERT_DOWNLOAD_INTERVAL_HOURS_VALUE_NAME = "CrossCertDownloadIntervalHours" const CERT_CHAIN_DEFAULT_CONFIG_SUBDIR = "Default" const CERT_CHAIN_DISABLE_AIA = 8192 const CERT_CHAIN_DISABLE_AIA_URL_RETRIEVAL_VALUE_NAME = "DisableAIAUrlRetrieval" const CERT_CHAIN_DISABLE_ALL_EKU_WEAK_FLAG = 65536 const CERT_CHAIN_DISABLE_AUTH_ROOT_AUTO_UPDATE = 256 const CERT_CHAIN_DISABLE_AUTO_FLUSH_PROCESS_NAME_LIST_VALUE_NAME = "DisableAutoFlushProcessNameList" const CERT_CHAIN_DISABLE_CA_NAME_CONSTRAINTS_VALUE_NAME = "DisableCANameConstraints" const CERT_CHAIN_DISABLE_CODE_SIGNING_WEAK_FLAG = 4194304 const CERT_CHAIN_DISABLE_FILE_HASH_WEAK_FLAG = 4096 const CERT_CHAIN_DISABLE_FILE_HASH_WEAK_FLAGS = 12288 const CERT_CHAIN_DISABLE_MANDATORY_BASIC_CONSTRAINTS_VALUE_NAME = "DisableMandatoryBasicConstraints" const CERT_CHAIN_DISABLE_MD2_MD4 = 4096 const CERT_CHAIN_DISABLE_MOTW_CODE_SIGNING_WEAK_FLAG = 8388608 const CERT_CHAIN_DISABLE_MOTW_FILE_HASH_WEAK_FLAG = 8192 const CERT_CHAIN_DISABLE_MOTW_TIMESTAMP_HASH_WEAK_FLAG = 32768 const CERT_CHAIN_DISABLE_MOTW_TIMESTAMP_WEAK_FLAG = 134217728 const CERT_CHAIN_DISABLE_MY_PEER_TRUST = 2048 const CERT_CHAIN_DISABLE_OPT_IN_SERVER_AUTH_WEAK_FLAG = 262144 const CERT_CHAIN_DISABLE_PASS1_QUALITY_FILTERING = 64 const CERT_CHAIN_DISABLE_SERIAL_CHAIN_VALUE_NAME = "DisableSerialChain" const CERT_CHAIN_DISABLE_SERVER_AUTH_WEAK_FLAG = 1048576 const CERT_CHAIN_DISABLE_SYNC_WITH_SSL_TIME_VALUE_NAME = "DisableSyncWithSslTime" const CERT_CHAIN_DISABLE_TIMESTAMP_HASH_WEAK_FLAG = 16384 const CERT_CHAIN_DISABLE_TIMESTAMP_HASH_WEAK_FLAGS = 49152 const CERT_CHAIN_DISABLE_TIMESTAMP_WEAK_FLAG = 67108864 const CERT_CHAIN_DISABLE_UNSUPPORTED_CRITICAL_EXTENSIONS_VALUE_NAME = "DisableUnsupportedCriticalExtensions" const CERT_CHAIN_DISABLE_WEAK_FLAGS = 215285760 type CERT_CHAIN_ELEMENT = TCERT_CHAIN_ELEMENT const CERT_CHAIN_ENABLE_ALL_EKU_HYGIENE_FLAG = 131072 const CERT_CHAIN_ENABLE_CACHE_AUTO_UPDATE = 16 const CERT_CHAIN_ENABLE_CODE_SIGNING_HYGIENE_FLAG = 16777216 const CERT_CHAIN_ENABLE_HYGIENE_FLAGS = 857866240 const CERT_CHAIN_ENABLE_MD2_MD4_FLAG = 1 const CERT_CHAIN_ENABLE_MOTW_CODE_SIGNING_HYGIENE_FLAG = 33554432 const CERT_CHAIN_ENABLE_MOTW_TIMESTAMP_HYGIENE_FLAG = 536870912 const CERT_CHAIN_ENABLE_ONLY_WEAK_LOGGING_FLAG = 8 const CERT_CHAIN_ENABLE_PEER_TRUST = 1024 const CERT_CHAIN_ENABLE_SERVER_AUTH_HYGIENE_FLAG = 2097152 const CERT_CHAIN_ENABLE_SHARE_STORE = 32 const CERT_CHAIN_ENABLE_TIMESTAMP_HYGIENE_FLAG = 268435456 const CERT_CHAIN_ENABLE_WEAK_LOGGING_FLAG = 4 const CERT_CHAIN_ENABLE_WEAK_RSA_ROOT_FLAG = 2 const CERT_CHAIN_ENABLE_WEAK_SETTINGS_FLAG = 2147483648 const CERT_CHAIN_ENABLE_WEAK_SIGNATURE_FLAGS_VALUE_NAME = "EnableWeakSignatureFlags" type CERT_CHAIN_ENGINE_CONFIG = TCERT_CHAIN_ENGINE_CONFIG const CERT_CHAIN_EXCLUSIVE_ENABLE_CA_FLAG = 1 const CERT_CHAIN_FIND_BY_ISSUER = 1 const CERT_CHAIN_FIND_BY_ISSUER_CACHE_ONLY_FLAG = 32768 const CERT_CHAIN_FIND_BY_ISSUER_CACHE_ONLY_URL_FLAG = 4 const CERT_CHAIN_FIND_BY_ISSUER_COMPARE_KEY_FLAG = 1 const CERT_CHAIN_FIND_BY_ISSUER_COMPLEX_CHAIN_FLAG = 2 const CERT_CHAIN_FIND_BY_ISSUER_LOCAL_MACHINE_FLAG = 8 const CERT_CHAIN_FIND_BY_ISSUER_NO_KEY_FLAG = 16384 type CERT_CHAIN_FIND_BY_ISSUER_PARA = TCERT_CHAIN_FIND_BY_ISSUER_PARA type CERT_CHAIN_FIND_ISSUER_PARA = TCERT_CHAIN_FIND_ISSUER_PARA const CERT_CHAIN_HAS_MOTW = 16384 const CERT_CHAIN_MAX_AIA_URL_COUNT_IN_CERT_DEFAULT = 5 const CERT_CHAIN_MAX_AIA_URL_COUNT_IN_CERT_VALUE_NAME = "MaxAIAUrlCountInCert" const CERT_CHAIN_MAX_AIA_URL_RETRIEVAL_BYTE_COUNT_DEFAULT = 100000 const CERT_CHAIN_MAX_AIA_URL_RETRIEVAL_BYTE_COUNT_VALUE_NAME = "MaxAIAUrlRetrievalByteCount" const CERT_CHAIN_MAX_AIA_URL_RETRIEVAL_CERT_COUNT_DEFAULT = 10 const CERT_CHAIN_MAX_AIA_URL_RETRIEVAL_CERT_COUNT_VALUE_NAME = "MaxAIAUrlRetrievalCertCount" const CERT_CHAIN_MAX_AIA_URL_RETRIEVAL_COUNT_PER_CHAIN_DEFAULT = 3 const CERT_CHAIN_MAX_AIA_URL_RETRIEVAL_COUNT_PER_CHAIN_VALUE_NAME = "MaxAIAUrlRetrievalCountPerChain" const CERT_CHAIN_MAX_SSL_TIME_UPDATED_EVENT_COUNT_DEFAULT = 5 const CERT_CHAIN_MAX_SSL_TIME_UPDATED_EVENT_COUNT_DISABLE = 4294967295 const CERT_CHAIN_MAX_SSL_TIME_UPDATED_EVENT_COUNT_VALUE_NAME = "MaxSslTimeUpdatedEventCount" const CERT_CHAIN_MAX_URL_RETRIEVAL_BYTE_COUNT_DEFAULT = 104857600 const CERT_CHAIN_MAX_URL_RETRIEVAL_BYTE_COUNT_VALUE_NAME = "MaxUrlRetrievalByteCount" const CERT_CHAIN_MIN_PUB_KEY_BIT_LENGTH_DISABLE = 4294967295 const CERT_CHAIN_MIN_RSA_PUB_KEY_BIT_LENGTH_DEFAULT = 1023 const CERT_CHAIN_MIN_RSA_PUB_KEY_BIT_LENGTH_DISABLE = 4294967295 const CERT_CHAIN_MIN_RSA_PUB_KEY_BIT_LENGTH_VALUE_NAME = "MinRsaPubKeyBitLength" const CERT_CHAIN_MOTW_IGNORE_AFTER_TIME_WEAK_FLAG = 1073741824 const CERT_CHAIN_MOTW_WEAK_FLAGS = 1786773504 const CERT_CHAIN_OCSP_VALIDITY_SECONDS_DEFAULT = 43200 const CERT_CHAIN_OCSP_VALIDITY_SECONDS_VALUE_NAME = "OcspValiditySeconds" const CERT_CHAIN_ONLY_ADDITIONAL_AND_AUTH_ROOT = 32768 const CERT_CHAIN_OPTIONS_VALUE_NAME = "Options" const CERT_CHAIN_OPTION_DISABLE_AIA_URL_RETRIEVAL = 2 const CERT_CHAIN_OPTION_ENABLE_SIA_URL_RETRIEVAL = 4 const CERT_CHAIN_OPT_IN_WEAK_FLAGS = 262144 const CERT_CHAIN_OPT_IN_WEAK_SIGNATURE = 65536 type CERT_CHAIN_PARA = TCERT_CHAIN_PARA const CERT_CHAIN_POLICY_ALLOW_TESTROOT_FLAG = 32768 const CERT_CHAIN_POLICY_ALLOW_UNKNOWN_CA_FLAG = 16 const CERT_CHAIN_POLICY_IGNORE_ALL_NOT_TIME_VALID_FLAGS = 7 const CERT_CHAIN_POLICY_IGNORE_ALL_REV_UNKNOWN_FLAGS = 3840 const CERT_CHAIN_POLICY_IGNORE_CA_REV_UNKNOWN_FLAG = 1024 const CERT_CHAIN_POLICY_IGNORE_CTL_NOT_TIME_VALID_FLAG = 2 const CERT_CHAIN_POLICY_IGNORE_CTL_SIGNER_REV_UNKNOWN_FLAG = 512 const CERT_CHAIN_POLICY_IGNORE_END_REV_UNKNOWN_FLAG = 256 const CERT_CHAIN_POLICY_IGNORE_INVALID_BASIC_CONSTRAINTS_FLAG = 8 const CERT_CHAIN_POLICY_IGNORE_INVALID_NAME_FLAG = 64 const CERT_CHAIN_POLICY_IGNORE_INVALID_POLICY_FLAG = 128 const CERT_CHAIN_POLICY_IGNORE_NOT_SUPPORTED_CRITICAL_EXT_FLAG = 8192 const CERT_CHAIN_POLICY_IGNORE_NOT_TIME_NESTED_FLAG = 4 const CERT_CHAIN_POLICY_IGNORE_NOT_TIME_VALID_FLAG = 1 const CERT_CHAIN_POLICY_IGNORE_PEER_TRUST_FLAG = 4096 const CERT_CHAIN_POLICY_IGNORE_ROOT_REV_UNKNOWN_FLAG = 2048 const CERT_CHAIN_POLICY_IGNORE_WRONG_USAGE_FLAG = 32 type CERT_CHAIN_POLICY_PARA = TCERT_CHAIN_POLICY_PARA const CERT_CHAIN_POLICY_SSL_F12_ERROR_LEVEL = 2 const CERT_CHAIN_POLICY_SSL_F12_NONE_CATEGORY = 0 const CERT_CHAIN_POLICY_SSL_F12_ROOT_PROGRAM_CATEGORY = 2 const CERT_CHAIN_POLICY_SSL_F12_SUCCESS_LEVEL = 0 const CERT_CHAIN_POLICY_SSL_F12_WARNING_LEVEL = 1 const CERT_CHAIN_POLICY_SSL_F12_WEAK_CRYPTO_CATEGORY = 1 const CERT_CHAIN_POLICY_SSL_KEY_PIN_MISMATCH_ERROR = -2 const CERT_CHAIN_POLICY_SSL_KEY_PIN_MISMATCH_WARNING = 2 const CERT_CHAIN_POLICY_SSL_KEY_PIN_MITM_ERROR = -1 const CERT_CHAIN_POLICY_SSL_KEY_PIN_MITM_WARNING = 1 const CERT_CHAIN_POLICY_SSL_KEY_PIN_SUCCESS = 0 type CERT_CHAIN_POLICY_STATUS = TCERT_CHAIN_POLICY_STATUS const CERT_CHAIN_POLICY_TRUST_TESTROOT_FLAG = 16384 const CERT_CHAIN_RETURN_LOWER_QUALITY_CONTEXTS = 128 const CERT_CHAIN_REVOCATION_ACCUMULATIVE_TIMEOUT = 134217728 const CERT_CHAIN_REVOCATION_CHECK_CACHE_ONLY = 2147483648 const CERT_CHAIN_REVOCATION_CHECK_CHAIN = 536870912 const CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT = 1073741824 const CERT_CHAIN_REVOCATION_CHECK_END_CERT = 268435456 const CERT_CHAIN_REVOCATION_CHECK_OCSP_CERT = 67108864 const CERT_CHAIN_REV_ACCUMULATIVE_URL_RETRIEVAL_TIMEOUT_MILLISECONDS_DEFAULT = 20000 const CERT_CHAIN_REV_ACCUMULATIVE_URL_RETRIEVAL_TIMEOUT_MILLISECONDS_VALUE_NAME = "ChainRevAccumulativeUrlRetrievalTimeoutMilliseconds" const CERT_CHAIN_SERIAL_CHAIN_LOG_FILE_NAME_VALUE_NAME = "SerialChainLogFileName" const CERT_CHAIN_SSL_HANDSHAKE_LOG_FILE_NAME_VALUE_NAME = "SslHandshakeLogFileName" const CERT_CHAIN_STRONG_SIGN_DISABLE_END_CHECK_FLAG = 1 const CERT_CHAIN_THREAD_STORE_SYNC = 2 const CERT_CHAIN_TIMESTAMP_TIME = 512 const CERT_CHAIN_URL_RETRIEVAL_TIMEOUT_MILLISECONDS_DEFAULT = 15000 const CERT_CHAIN_URL_RETRIEVAL_TIMEOUT_MILLISECONDS_VALUE_NAME = "ChainUrlRetrievalTimeoutMilliseconds" const CERT_CHAIN_USE_LOCAL_MACHINE_STORE = 8 const CERT_CHAIN_WEAK_AFTER_TIME_NAME = "AfterTime" const CERT_CHAIN_WEAK_ALL_CONFIG_NAME = "All" const CERT_CHAIN_WEAK_FILE_HASH_AFTER_TIME_NAME = "FileHashAfterTime" const CERT_CHAIN_WEAK_FLAGS_NAME = "Flags" const CERT_CHAIN_WEAK_HYGIENE_NAME = "Hygiene" const CERT_CHAIN_WEAK_MIN_BIT_LENGTH_NAME = "MinBitLength" const CERT_CHAIN_WEAK_PREFIX_NAME = "Weak" const CERT_CHAIN_WEAK_RSA_PUB_KEY_TIME_DEFAULT = 129067776000000000 const CERT_CHAIN_WEAK_RSA_PUB_KEY_TIME_VALUE_NAME = "WeakRsaPubKeyTime" const CERT_CHAIN_WEAK_SHA256_ALLOW_NAME = "Sha256Allow" const CERT_CHAIN_WEAK_SIGNATURE_LOG_DIR_VALUE_NAME = "WeakSignatureLogDir" const CERT_CHAIN_WEAK_THIRD_PARTY_CONFIG_NAME = "ThirdParty" const CERT_CHAIN_WEAK_TIMESTAMP_HASH_AFTER_TIME_NAME = "TimestampHashAfterTime" const CERT_CLOSE_STORE_CHECK_FLAG = 2 const CERT_CLOSE_STORE_FORCE_FLAG = 1 const CERT_CLR_DELETE_KEY_PROP_ID = 125 const CERT_COMPARE_ANY = 0 const CERT_COMPARE_ATTR = 3 const CERT_COMPARE_CERT_ID = 16 const CERT_COMPARE_CROSS_CERT_DIST_POINTS = 17 const CERT_COMPARE_CTL_USAGE = 10 const CERT_COMPARE_ENHKEY_USAGE = 10 const CERT_COMPARE_EXISTING = 13 const CERT_COMPARE_HASH = 1 const CERT_COMPARE_HASH_STR = 20 const CERT_COMPARE_HAS_PRIVATE_KEY = 21 const CERT_COMPARE_ISSUER_OF = 12 const CERT_COMPARE_KEY_IDENTIFIER = 15 const CERT_COMPARE_KEY_SPEC = 9 const CERT_COMPARE_MASK = 65535 const CERT_COMPARE_MD5_HASH = 4 const CERT_COMPARE_NAME = 2 const CERT_COMPARE_NAME_STR_A = 7 const CERT_COMPARE_NAME_STR_W = 8 const CERT_COMPARE_PROPERTY = 5 const CERT_COMPARE_PUBKEY_MD5_HASH = 18 const CERT_COMPARE_PUBLIC_KEY = 6 const CERT_COMPARE_SHA1_HASH = 1 const CERT_COMPARE_SHIFT = 16 const CERT_COMPARE_SIGNATURE_HASH = 14 const CERT_COMPARE_SUBJECT_CERT = 11 const CERT_COMPARE_SUBJECT_INFO_ACCESS = 19 type CERT_CONTEXT = TCERT_CONTEXT const CERT_CONTEXT_REVOCATION_TYPE = 1 const CERT_CREATE_CONTEXT_NOCOPY_FLAG = 1 const CERT_CREATE_CONTEXT_NO_ENTRY_FLAG = 8 const CERT_CREATE_CONTEXT_NO_HCRYPTMSG_FLAG = 4 type CERT_CREATE_CONTEXT_PARA = TCERT_CREATE_CONTEXT_PARA const CERT_CREATE_CONTEXT_SORTED_FLAG = 2 const CERT_CREATE_SELFSIGN_NO_KEY_INFO = 2 const CERT_CREATE_SELFSIGN_NO_SIGN = 1 type CERT_CRL_CONTEXT_PAIR = TCERT_CRL_CONTEXT_PAIR const CERT_CRL_SIGN_KEY_USAGE = 2 const CERT_CROSS_CERT_DIST_POINTS_PROP_ID = 23 const CERT_CTL_USAGE_PROP_ID = 9 const CERT_DATA_ENCIPHERMENT_KEY_USAGE = 16 const CERT_DATE_STAMP_PROP_ID = 27 const CERT_DECIPHER_ONLY_KEY_USAGE = 128 const CERT_DEFAULT_OID_PUBLIC_KEY_SIGN = "szOID_RSA_RSA" const CERT_DEFAULT_OID_PUBLIC_KEY_XCHG = "szOID_RSA_RSA" const CERT_DESCRIPTION_PROP_ID = 13 type CERT_DH_PARAMETERS = TCERT_DH_PARAMETERS const CERT_DIGITAL_SIGNATURE_KEY_USAGE = 128 const CERT_DISABLE_PIN_RULES_AUTO_UPDATE_VALUE_NAME = "DisablePinRulesAutoUpdate" const CERT_DISABLE_ROOT_AUTO_UPDATE_VALUE_NAME = "DisableRootAutoUpdate" const CERT_DISALLOWED_CERT_AUTO_UPDATE_ENCODED_CTL_VALUE_NAME = "DisallowedCertEncodedCtl" const CERT_DISALLOWED_CERT_AUTO_UPDATE_LAST_SYNC_TIME_VALUE_NAME = "DisallowedCertLastSyncTime" const CERT_DISALLOWED_CERT_AUTO_UPDATE_LIST_IDENTIFIER = "DisallowedCert_AutoUpdate_1" const CERT_DISALLOWED_CERT_AUTO_UPDATE_SYNC_DELTA_TIME_VALUE_NAME = "DisallowedCertSyncDeltaTime" const CERT_DISALLOWED_CERT_CAB_FILENAME = "disallowedcertstl.cab" const CERT_DISALLOWED_CERT_CTL_FILENAME = "disallowedcert.stl" const CERT_DISALLOWED_CERT_CTL_FILENAME_A = "disallowedcert.stl" const CERT_DISALLOWED_ENHKEY_USAGE_PROP_ID = 122 const CERT_DISALLOWED_FILETIME_PROP_ID = 104 type CERT_DSS_PARAMETERS = TCERT_DSS_PARAMETERS const CERT_DSS_R_LEN = 20 const CERT_DSS_SIGNATURE_LEN = 40 const CERT_DSS_S_LEN = 20 type CERT_ECC_SIGNATURE = TCERT_ECC_SIGNATURE const CERT_EFSBLOB_VALUE_NAME = "EFSBlob" const CERT_EFS_PROP_ID = 17 const CERT_ENABLE_DISALLOWED_CERT_AUTO_UPDATE_VALUE_NAME = "EnableDisallowedCertAutoUpdate" const CERT_ENCIPHER_ONLY_KEY_USAGE = 1 const CERT_ENCODING_TYPE_MASK = 65535 const CERT_END_ENTITY_SUBJECT_FLAG = 64 type CERT_ENHKEY_USAGE = TCERT_ENHKEY_USAGE const CERT_ENHKEY_USAGE_PROP_ID = 9 const CERT_ENROLLMENT_PROP_ID = 26 const CERT_EXCLUDED_SUBTREE_BIT = 2147483648 const CERT_EXTENDED_ERROR_INFO_PROP_ID = 30 type CERT_EXTENSION = TCERT_EXTENSION type CERT_EXTENSIONS = TCERT_EXTENSIONS const CERT_FILE_HASH_USE_TYPE = 1 const CERT_FILE_STORE_COMMIT_ENABLE_FLAG = 65536 const CERT_FIND_ANY = 0 const CERT_FIND_CERT_ID = 1048576 const CERT_FIND_CROSS_CERT_DIST_POINTS = 1114112 const CERT_FIND_CTL_USAGE = 655360 const CERT_FIND_ENHKEY_USAGE = 655360 const CERT_FIND_EXISTING = 851968 const CERT_FIND_EXT_ONLY_CTL_USAGE_FLAG = 2 const CERT_FIND_EXT_ONLY_ENHKEY_USAGE_FLAG = 2 const CERT_FIND_HASH = 65536 const CERT_FIND_HASH_STR = 1310720 const CERT_FIND_HAS_PRIVATE_KEY = 1376256 const CERT_FIND_ISSUER_ATTR = 196612 const CERT_FIND_ISSUER_NAME = 131076 const CERT_FIND_ISSUER_OF = 786432 const CERT_FIND_ISSUER_STR = 524292 const CERT_FIND_ISSUER_STR_A = 458756 const CERT_FIND_ISSUER_STR_W = 524292 const CERT_FIND_KEY_IDENTIFIER = 983040 const CERT_FIND_KEY_SPEC = 589824 const CERT_FIND_MD5_HASH = 262144 const CERT_FIND_NO_CTL_USAGE_FLAG = 8 const CERT_FIND_NO_ENHKEY_USAGE_FLAG = 8 const CERT_FIND_OPTIONAL_CTL_USAGE_FLAG = 1 const CERT_FIND_OPTIONAL_ENHKEY_USAGE_FLAG = 1 const CERT_FIND_OR_CTL_USAGE_FLAG = 16 const CERT_FIND_OR_ENHKEY_USAGE_FLAG = 16 const CERT_FIND_PROPERTY = 327680 const CERT_FIND_PROP_ONLY_CTL_USAGE_FLAG = 4 const CERT_FIND_PROP_ONLY_ENHKEY_USAGE_FLAG = 4 const CERT_FIND_PUBKEY_MD5_HASH = 1179648 const CERT_FIND_PUBLIC_KEY = 393216 const CERT_FIND_SHA1_HASH = 65536 const CERT_FIND_SIGNATURE_HASH = 917504 const CERT_FIND_SUBJECT_ATTR = 196615 const CERT_FIND_SUBJECT_CERT = 720896 const CERT_FIND_SUBJECT_INFO_ACCESS = 1245184 const CERT_FIND_SUBJECT_NAME = 131079 const CERT_FIND_SUBJECT_STR = 524295 const CERT_FIND_SUBJECT_STR_A = 458759 const CERT_FIND_SUBJECT_STR_W = 524295 const CERT_FIND_VALID_CTL_USAGE_FLAG = 32 const CERT_FIND_VALID_ENHKEY_USAGE_FLAG = 32 const CERT_FIRST_RESERVED_PROP_ID = 107 const CERT_FIRST_USER_PROP_ID = 32768 type CERT_FORTEZZA_DATA_PROP = TCERT_FORTEZZA_DATA_PROP const CERT_FORTEZZA_DATA_PROP_ID = 18 const CERT_FRIENDLY_NAME_PROP_ID = 11 type CERT_GENERAL_SUBTREE = TCERT_GENERAL_SUBTREE const CERT_GROUP_POLICY_SYSTEM_STORE_REGPATH = "Software\\\\Policies\\\\Microsoft\\\\SystemCertificates" type CERT_HASHED_URL = TCERT_HASHED_URL const CERT_HASH_PROP_ID = 3 const CERT_HCRYPTPROV_OR_NCRYPT_KEY_HANDLE_PROP_ID = 79 const CERT_HCRYPTPROV_TRANSFER_PROP_ID = 100 type CERT_ID = TCERT_ID const CERT_ID_ISSUER_SERIAL_NUMBER = 1 const CERT_ID_KEY_IDENTIFIER = 2 const CERT_ID_SHA1_HASH = 3 const CERT_IE30_RESERVED_PROP_ID = 7 const CERT_IE_DIRTY_FLAGS_REGPATH = "Software\\\\Microsoft\\\\Cryptography\\\\IEDirtyFlags" type CERT_INFO = TCERT_INFO const CERT_INFO_EXTENSION_FLAG = 11 const CERT_INFO_ISSUER_FLAG = 4 const CERT_INFO_ISSUER_UNIQUE_ID_FLAG = 9 const CERT_INFO_NOT_AFTER_FLAG = 6 const CERT_INFO_NOT_BEFORE_FLAG = 5 const CERT_INFO_SERIAL_NUMBER_FLAG = 2 const CERT_INFO_SIGNATURE_ALGORITHM_FLAG = 3 const CERT_INFO_SUBJECT_FLAG = 7 const CERT_INFO_SUBJECT_PUBLIC_KEY_INFO_FLAG = 8 const CERT_INFO_SUBJECT_UNIQUE_ID_FLAG = 10 const CERT_INFO_VERSION_FLAG = 1 const CERT_ISOLATED_KEY_PROP_ID = 118 const CERT_ISSUER_CHAIN_PUB_KEY_CNG_ALG_BIT_LENGTH_PROP_ID = 96 const CERT_ISSUER_CHAIN_SIGN_HASH_CNG_ALG_PROP_ID = 95 const CERT_ISSUER_PUBLIC_KEY_MD5_HASH_PROP_ID = 24 const CERT_ISSUER_PUB_KEY_BIT_LENGTH_PROP_ID = 94 type CERT_ISSUER_SERIAL_NUMBER = TCERT_ISSUER_SERIAL_NUMBER const CERT_ISSUER_SERIAL_NUMBER_MD5_HASH_PROP_ID = 28 type CERT_KEYGEN_REQUEST_INFO = TCERT_KEYGEN_REQUEST_INFO const CERT_KEYGEN_REQUEST_V1 = 0 const CERT_KEY_AGREEMENT_KEY_USAGE = 8 type CERT_KEY_ATTRIBUTES_INFO = TCERT_KEY_ATTRIBUTES_INFO const CERT_KEY_CERT_SIGN_KEY_USAGE = 4 const CERT_KEY_CLASSIFICATION_PROP_ID = 120 type CERT_KEY_CONTEXT = TCERT_KEY_CONTEXT const CERT_KEY_CONTEXT_PROP_ID = 5 const CERT_KEY_ENCIPHERMENT_KEY_USAGE = 32 const CERT_KEY_IDENTIFIER_PROP_ID = 20 const CERT_KEY_PROV_HANDLE_PROP_ID = 1 const CERT_KEY_PROV_INFO_PROP_ID = 2 const CERT_KEY_REPAIR_ATTEMPTED_PROP_ID = 103 const CERT_KEY_SPEC_PROP_ID = 6 type CERT_KEY_USAGE_RESTRICTION_INFO = TCERT_KEY_USAGE_RESTRICTION_INFO const CERT_LAST_RESERVED_PROP_ID = 32767 const CERT_LAST_USER_PROP_ID = 65535 const CERT_LDAP_STORE_AREC_EXCLUSIVE_FLAG = 131072 const CERT_LDAP_STORE_OPENED_FLAG = 262144 type CERT_LDAP_STORE_OPENED_PARA = TCERT_LDAP_STORE_OPENED_PARA const CERT_LDAP_STORE_SIGN_FLAG = 65536 const CERT_LDAP_STORE_UNBIND_FLAG = 524288 const CERT_LOCAL_MACHINE_SYSTEM_STORE_REGPATH = "Software\\\\Microsoft\\\\SystemCertificates" type CERT_LOGOTYPE_AUDIO = TCERT_LOGOTYPE_AUDIO type CERT_LOGOTYPE_AUDIO_INFO = TCERT_LOGOTYPE_AUDIO_INFO const CERT_LOGOTYPE_BITS_IMAGE_RESOLUTION_CHOICE = 1 const CERT_LOGOTYPE_COLOR_IMAGE_INFO_CHOICE = 2 type CERT_LOGOTYPE_DATA = TCERT_LOGOTYPE_DATA type CERT_LOGOTYPE_DETAILS = TCERT_LOGOTYPE_DETAILS const CERT_LOGOTYPE_DIRECT_INFO_CHOICE = 1 type CERT_LOGOTYPE_EXT_INFO = TCERT_LOGOTYPE_EXT_INFO const CERT_LOGOTYPE_GRAY_SCALE_IMAGE_INFO_CHOICE = 1 type CERT_LOGOTYPE_IMAGE = TCERT_LOGOTYPE_IMAGE type CERT_LOGOTYPE_IMAGE_INFO = TCERT_LOGOTYPE_IMAGE_INFO const CERT_LOGOTYPE_INDIRECT_INFO_CHOICE = 2 type CERT_LOGOTYPE_INFO = TCERT_LOGOTYPE_INFO const CERT_LOGOTYPE_NO_IMAGE_RESOLUTION_CHOICE = 0 type CERT_LOGOTYPE_REFERENCE = TCERT_LOGOTYPE_REFERENCE const CERT_LOGOTYPE_TABLE_SIZE_IMAGE_RESOLUTION_CHOICE = 2 const CERT_MAX_ASN_ENCODED_DSS_SIGNATURE_LEN = 48 const CERT_MD5_HASH_PROP_ID = 4 const CERT_NAME_ATTR_TYPE = 3 type CERT_NAME_BLOB = TCERT_NAME_BLOB type CERT_NAME_CONSTRAINTS_INFO = TCERT_NAME_CONSTRAINTS_INFO const CERT_NAME_DISABLE_IE4_UTF8_FLAG = 65536 const CERT_NAME_DNS_TYPE = 6 const CERT_NAME_EMAIL_TYPE = 1 const CERT_NAME_FRIENDLY_DISPLAY_TYPE = 5 type CERT_NAME_INFO = TCERT_NAME_INFO const CERT_NAME_ISSUER_FLAG = 1 const CERT_NAME_RDN_TYPE = 2 const CERT_NAME_SEARCH_ALL_NAMES_FLAG = 2 const CERT_NAME_SIMPLE_DISPLAY_TYPE = 4 const CERT_NAME_STR_COMMA_FLAG = 67108864 const CERT_NAME_STR_CRLF_FLAG = 134217728 const CERT_NAME_STR_DISABLE_IE4_UTF8_FLAG = 65536 const CERT_NAME_STR_DISABLE_UTF8_DIR_STR_FLAG = 1048576 const CERT_NAME_STR_ENABLE_PUNYCODE_FLAG = 2097152 const CERT_NAME_STR_ENABLE_T61_UNICODE_FLAG = 131072 const CERT_NAME_STR_ENABLE_UTF8_UNICODE_FLAG = 262144 const CERT_NAME_STR_FORCE_UTF8_DIR_STR_FLAG = 524288 const CERT_NAME_STR_FORWARD_FLAG = 16777216 const CERT_NAME_STR_NO_PLUS_FLAG = 536870912 const CERT_NAME_STR_NO_QUOTING_FLAG = 268435456 const CERT_NAME_STR_REVERSE_FLAG = 33554432 const CERT_NAME_STR_SEMICOLON_FLAG = 1073741824 const CERT_NAME_UPN_TYPE = 8 const CERT_NAME_URL_TYPE = 7 type CERT_NAME_VALUE = TCERT_NAME_VALUE const CERT_NCRYPT_KEY_HANDLE_PROP_ID = 78 const CERT_NCRYPT_KEY_HANDLE_TRANSFER_PROP_ID = 99 const CERT_NCRYPT_KEY_SPEC = 4294967295 const CERT_NEW_KEY_PROP_ID = 74 const CERT_NEXT_UPDATE_LOCATION_PROP_ID = 10 const CERT_NONCOMPLIANT_ROOT_URL_PROP_ID = 123 const CERT_NON_REPUDIATION_KEY_USAGE = 64 const CERT_NOT_BEFORE_ENHKEY_USAGE_PROP_ID = 127 const CERT_NOT_BEFORE_FILETIME_PROP_ID = 126 const CERT_NO_AUTO_EXPIRE_CHECK_PROP_ID = 77 const CERT_NO_EXPIRE_NOTIFICATION_PROP_ID = 97 const CERT_OCM_SUBCOMPONENTS_LOCAL_MACHINE_REGPATH = "SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Setup\\\\OC Manager\\\\Subcomponents" const CERT_OCM_SUBCOMPONENTS_ROOT_AUTO_UPDATE_VALUE_NAME = "RootAutoUpdate" const CERT_OCSP_CACHE_PREFIX_PROP_ID = 75 const CERT_OCSP_MUST_STAPLE_PROP_ID = 121 const CERT_OCSP_RESPONSE_PROP_ID = 70 const CERT_OFFLINE_CRL_SIGN_KEY_USAGE = 2 const CERT_OID_NAME_STR = 2 type CERT_OR_CRL_BLOB = TCERT_OR_CRL_BLOB type CERT_OR_CRL_BUNDLE = TCERT_OR_CRL_BUNDLE type CERT_OTHER_LOGOTYPE_INFO = TCERT_OTHER_LOGOTYPE_INFO type CERT_OTHER_NAME = TCERT_OTHER_NAME type CERT_PAIR = TCERT_PAIR const CERT_PHYSICAL_STORE_ADD_ENABLE_FLAG = 1 const CERT_PHYSICAL_STORE_AUTH_ROOT_NAME = ".AuthRoot" const CERT_PHYSICAL_STORE_DEFAULT_NAME = ".Default" const CERT_PHYSICAL_STORE_DS_USER_CERTIFICATE_NAME = ".UserCertificate" const CERT_PHYSICAL_STORE_ENTERPRISE_NAME = ".Enterprise" const CERT_PHYSICAL_STORE_GROUP_POLICY_NAME = ".GroupPolicy" type CERT_PHYSICAL_STORE_INFO = TCERT_PHYSICAL_STORE_INFO const CERT_PHYSICAL_STORE_INSERT_COMPUTER_NAME_ENABLE_FLAG = 8 const CERT_PHYSICAL_STORE_LOCAL_MACHINE_GROUP_POLICY_NAME = ".LocalMachineGroupPolicy" const CERT_PHYSICAL_STORE_LOCAL_MACHINE_NAME = ".LocalMachine" const CERT_PHYSICAL_STORE_OPEN_DISABLE_FLAG = 2 const CERT_PHYSICAL_STORE_PREDEFINED_ENUM_FLAG = 1 const CERT_PHYSICAL_STORE_REMOTE_OPEN_DISABLE_FLAG = 4 const CERT_PHYSICAL_STORE_SMART_CARD_NAME = ".SmartCard" const CERT_PIN_RULES_AUTO_UPDATE_ENCODED_CTL_VALUE_NAME = "PinRulesEncodedCtl" const CERT_PIN_RULES_AUTO_UPDATE_LAST_SYNC_TIME_VALUE_NAME = "PinRulesLastSyncTime" const CERT_PIN_RULES_AUTO_UPDATE_LIST_IDENTIFIER = "PinRules_AutoUpdate_1" const CERT_PIN_RULES_AUTO_UPDATE_SYNC_DELTA_TIME_VALUE_NAME = "PinRulesSyncDeltaTime" const CERT_PIN_RULES_CAB_FILENAME = "pinrulesstl.cab" const CERT_PIN_RULES_CTL_FILENAME = "pinrules.stl" const CERT_PIN_RULES_CTL_FILENAME_A = "pinrules.stl" const CERT_PIN_SHA256_HASH_PROP_ID = 124 type CERT_POLICIES_INFO = TCERT_POLICIES_INFO type CERT_POLICY95_QUALIFIER1 = TCERT_POLICY95_QUALIFIER1 type CERT_POLICY_CONSTRAINTS_INFO = TCERT_POLICY_CONSTRAINTS_INFO type CERT_POLICY_ID = TCERT_POLICY_ID type CERT_POLICY_INFO = TCERT_POLICY_INFO type CERT_POLICY_MAPPING = TCERT_POLICY_MAPPING type CERT_POLICY_MAPPINGS_INFO = TCERT_POLICY_MAPPINGS_INFO type CERT_POLICY_QUALIFIER_INFO = TCERT_POLICY_QUALIFIER_INFO type CERT_POLICY_QUALIFIER_NOTICE_REFERENCE = TCERT_POLICY_QUALIFIER_NOTICE_REFERENCE type CERT_POLICY_QUALIFIER_USER_NOTICE = TCERT_POLICY_QUALIFIER_USER_NOTICE type CERT_PRIVATE_KEY_VALIDITY = TCERT_PRIVATE_KEY_VALIDITY const CERT_PROT_ROOT_DISABLE_CURRENT_USER_FLAG = 1 const CERT_PROT_ROOT_DISABLE_LM_AUTH_FLAG = 8 const CERT_PROT_ROOT_DISABLE_NOT_DEFINED_NAME_CONSTRAINT_FLAG = 32 const CERT_PROT_ROOT_DISABLE_NT_AUTH_REQUIRED_FLAG = 16 const CERT_PROT_ROOT_DISABLE_PEER_TRUST = 65536 const CERT_PROT_ROOT_FLAGS_VALUE_NAME = "Flags" const CERT_PROT_ROOT_INHIBIT_ADD_AT_INIT_FLAG = 2 const CERT_PROT_ROOT_INHIBIT_PURGE_LM_FLAG = 4 const CERT_PROT_ROOT_ONLY_LM_GPT_FLAG = 8 const CERT_PROT_ROOT_PEER_USAGES_VALUE_NAME = "PeerUsages" const CERT_PROT_ROOT_PEER_USAGES_VALUE_NAME_A = "PeerUsages" const CERT_PUBKEY_ALG_PARA_PROP_ID = 22 const CERT_PUBKEY_HASH_RESERVED_PROP_ID = 8 type CERT_PUBLIC_KEY_INFO = TCERT_PUBLIC_KEY_INFO const CERT_PUB_KEY_CNG_ALG_BIT_LENGTH_PROP_ID = 93 const CERT_PVK_FILE_PROP_ID = 12 type CERT_QC_STATEMENT = TCERT_QC_STATEMENT type CERT_QC_STATEMENTS_EXT_INFO = TCERT_QC_STATEMENTS_EXT_INFO const CERT_QUERY_CONTENT_CERT = 1 const CERT_QUERY_CONTENT_CERT_PAIR = 13 const CERT_QUERY_CONTENT_CRL = 3 const CERT_QUERY_CONTENT_CTL = 2 const CERT_QUERY_CONTENT_FLAG_ALL = 16382 const CERT_QUERY_CONTENT_FLAG_ALL_ISSUER_CERT = 818 const CERT_QUERY_CONTENT_FLAG_CERT = 2 const CERT_QUERY_CONTENT_FLAG_CERT_PAIR = 8192 const CERT_QUERY_CONTENT_FLAG_CRL = 8 const CERT_QUERY_CONTENT_FLAG_CTL = 4 const CERT_QUERY_CONTENT_FLAG_PFX = 4096 const CERT_QUERY_CONTENT_FLAG_PFX_AND_LOAD = 16384 const CERT_QUERY_CONTENT_FLAG_PKCS10 = 2048 const CERT_QUERY_CONTENT_FLAG_PKCS7_SIGNED = 256 const CERT_QUERY_CONTENT_FLAG_PKCS7_SIGNED_EMBED = 1024 const CERT_QUERY_CONTENT_FLAG_PKCS7_UNSIGNED = 512 const CERT_QUERY_CONTENT_FLAG_SERIALIZED_CERT = 32 const CERT_QUERY_CONTENT_FLAG_SERIALIZED_CRL = 128 const CERT_QUERY_CONTENT_FLAG_SERIALIZED_CTL = 64 const CERT_QUERY_CONTENT_FLAG_SERIALIZED_STORE = 16 const CERT_QUERY_CONTENT_PFX = 12 const CERT_QUERY_CONTENT_PFX_AND_LOAD = 14 const CERT_QUERY_CONTENT_PKCS10 = 11 const CERT_QUERY_CONTENT_PKCS7_SIGNED = 8 const CERT_QUERY_CONTENT_PKCS7_SIGNED_EMBED = 10 const CERT_QUERY_CONTENT_PKCS7_UNSIGNED = 9 const CERT_QUERY_CONTENT_SERIALIZED_CERT = 5 const CERT_QUERY_CONTENT_SERIALIZED_CRL = 7 const CERT_QUERY_CONTENT_SERIALIZED_CTL = 6 const CERT_QUERY_CONTENT_SERIALIZED_STORE = 4 const CERT_QUERY_FORMAT_ASN_ASCII_HEX_ENCODED = 3 const CERT_QUERY_FORMAT_BASE64_ENCODED = 2 const CERT_QUERY_FORMAT_BINARY = 1 const CERT_QUERY_FORMAT_FLAG_ALL = 14 const CERT_QUERY_FORMAT_FLAG_ASN_ASCII_HEX_ENCODED = 8 const CERT_QUERY_FORMAT_FLAG_BASE64_ENCODED = 4 const CERT_QUERY_FORMAT_FLAG_BINARY = 2 const CERT_QUERY_OBJECT_BLOB = 2 const CERT_QUERY_OBJECT_FILE = 1 type CERT_RDN = TCERT_RDN const CERT_RDN_ANY_TYPE = 0 type CERT_RDN_ATTR = TCERT_RDN_ATTR const CERT_RDN_BMP_STRING = 12 const CERT_RDN_DISABLE_CHECK_TYPE_FLAG = 1073741824 const CERT_RDN_DISABLE_IE4_UTF8_FLAG = 16777216 const CERT_RDN_ENABLE_PUNYCODE_FLAG = 33554432 const CERT_RDN_ENABLE_T61_UNICODE_FLAG = 2147483648 const CERT_RDN_ENABLE_UTF8_UNICODE_FLAG = 536870912 const CERT_RDN_ENCODED_BLOB = 1 const CERT_RDN_FLAGS_MASK = 4278190080 const CERT_RDN_FORCE_UTF8_UNICODE_FLAG = 268435456 const CERT_RDN_GENERAL_STRING = 10 const CERT_RDN_GRAPHIC_STRING = 8 const CERT_RDN_IA5_STRING = 7 const CERT_RDN_INT4_STRING = 11 const CERT_RDN_ISO646_STRING = 9 const CERT_RDN_NUMERIC_STRING = 3 const CERT_RDN_OCTET_STRING = 2 const CERT_RDN_PRINTABLE_STRING = 4 const CERT_RDN_T61_STRING = 5 const CERT_RDN_TELETEX_STRING = 5 const CERT_RDN_TYPE_MASK = 255 const CERT_RDN_UNICODE_STRING = 12 const CERT_RDN_UNIVERSAL_STRING = 11 const CERT_RDN_UTF8_STRING = 13 type CERT_RDN_VALUE_BLOB = TCERT_RDN_VALUE_BLOB const CERT_RDN_VIDEOTEX_STRING = 6 const CERT_RDN_VISIBLE_STRING = 9 const CERT_REGISTRY_STORE_CLIENT_GPT_FLAG = 2147483648 type CERT_REGISTRY_STORE_CLIENT_GPT_PARA = TCERT_REGISTRY_STORE_CLIENT_GPT_PARA const CERT_REGISTRY_STORE_EXTERNAL_FLAG = 1048576 const CERT_REGISTRY_STORE_LM_GPT_FLAG = 16777216 const CERT_REGISTRY_STORE_MY_IE_DIRTY_FLAG = 524288 const CERT_REGISTRY_STORE_REMOTE_FLAG = 65536 const CERT_REGISTRY_STORE_ROAMING_FLAG = 262144 type CERT_REGISTRY_STORE_ROAMING_PARA = TCERT_REGISTRY_STORE_ROAMING_PARA const CERT_REGISTRY_STORE_SERIALIZED_FLAG = 131072 const CERT_RENEWAL_PROP_ID = 64 type CERT_REQUEST_INFO = TCERT_REQUEST_INFO const CERT_REQUEST_ORIGINATOR_PROP_ID = 71 const CERT_REQUEST_V1 = 0 const CERT_RETR_BEHAVIOR_FILE_VALUE_NAME = "AllowFileUrlScheme" const CERT_RETR_BEHAVIOR_INET_AUTH_VALUE_NAME = "EnableInetUnknownAuth" const CERT_RETR_BEHAVIOR_INET_STATUS_VALUE_NAME = "EnableInetLocal" const CERT_RETR_BEHAVIOR_LDAP_VALUE_NAME = "DisableLDAPSignAndEncrypt" type CERT_REVOCATION_CHAIN_PARA = TCERT_REVOCATION_CHAIN_PARA type CERT_REVOCATION_CRL_INFO = TCERT_REVOCATION_CRL_INFO type CERT_REVOCATION_INFO = TCERT_REVOCATION_INFO type CERT_REVOCATION_PARA = TCERT_REVOCATION_PARA type CERT_REVOCATION_STATUS = TCERT_REVOCATION_STATUS const CERT_ROOT_PROGRAM_CERT_POLICIES_PROP_ID = 83 const CERT_ROOT_PROGRAM_CHAIN_POLICIES_PROP_ID = 105 const CERT_ROOT_PROGRAM_FLAG_ADDRESS = 8 const CERT_ROOT_PROGRAM_FLAG_LSC = 64 const CERT_ROOT_PROGRAM_FLAG_ORG = 128 const CERT_ROOT_PROGRAM_FLAG_OU = 16 const CERT_ROOT_PROGRAM_FLAG_SUBJECT_LOGO = 32 const CERT_ROOT_PROGRAM_NAME_CONSTRAINTS_PROP_ID = 84 const CERT_RSA_PUBLIC_KEY_OBJID = "szOID_RSA_RSA" const CERT_SCARD_PIN_ID_PROP_ID = 90 const CERT_SCARD_PIN_INFO_PROP_ID = 91 const CERT_SCEP_CA_CERT_PROP_ID = 111 const CERT_SCEP_ENCRYPT_HASH_CNG_ALG_PROP_ID = 114 const CERT_SCEP_FLAGS_PROP_ID = 115 const CERT_SCEP_GUID_PROP_ID = 116 const CERT_SCEP_NONCE_PROP_ID = 113 const CERT_SCEP_RA_ENCRYPTION_CERT_PROP_ID = 110 const CERT_SCEP_RA_SIGNATURE_CERT_PROP_ID = 109 const CERT_SCEP_SERVER_CERTS_PROP_ID = 108 const CERT_SCEP_SIGNER_CERT_PROP_ID = 112 const CERT_SELECT_ALLOW_DUPLICATES = 128 const CERT_SELECT_ALLOW_EXPIRED = 1 const CERT_SELECT_BY_ENHKEY_USAGE = 1 const CERT_SELECT_BY_EXTENSION = 5 const CERT_SELECT_BY_FRIENDLYNAME = 13 const CERT_SELECT_BY_ISSUER_ATTR = 7 const CERT_SELECT_BY_ISSUER_DISPLAYNAME = 12 const CERT_SELECT_BY_ISSUER_NAME = 9 const CERT_SELECT_BY_KEY_USAGE = 2 const CERT_SELECT_BY_POLICY_OID = 3 const CERT_SELECT_BY_PROV_NAME = 4 const CERT_SELECT_BY_PUBLIC_KEY = 10 const CERT_SELECT_BY_SUBJECT_ATTR = 8 const CERT_SELECT_BY_SUBJECT_HOST_NAME = 6 const CERT_SELECT_BY_THUMBPRINT = 14 const CERT_SELECT_BY_TLS_SIGNATURES = 11 type CERT_SELECT_CHAIN_PARA = TCERT_SELECT_CHAIN_PARA type CERT_SELECT_CRITERIA = TCERT_SELECT_CRITERIA const CERT_SELECT_DISALLOW_SELFSIGNED = 4 const CERT_SELECT_HARDWARE_ONLY = 64 const CERT_SELECT_HAS_KEY_FOR_KEY_EXCHANGE = 32 const CERT_SELECT_HAS_KEY_FOR_SIGNATURE = 16 const CERT_SELECT_HAS_PRIVATE_KEY = 8 const CERT_SELECT_IGNORE_AUTOSELECT = 256 const CERT_SELECT_LAST = 11 const CERT_SELECT_MAX = 33 const CERT_SELECT_MAX_PARA = 500 const CERT_SELECT_TRUSTED_ROOT = 2 const CERT_SEND_AS_TRUSTED_ISSUER_PROP_ID = 102 const CERT_SERIALIZABLE_KEY_CONTEXT_PROP_ID = 117 const CERT_SERIAL_CHAIN_PROP_ID = 119 const CERT_SERVER_OCSP_RESPONSE_ASYNC_FLAG = 1 type CERT_SERVER_OCSP_RESPONSE_CONTEXT = TCERT_SERVER_OCSP_RESPONSE_CONTEXT type CERT_SERVER_OCSP_RESPONSE_OPEN_PARA = TCERT_SERVER_OCSP_RESPONSE_OPEN_PARA const CERT_SERVER_OCSP_RESPONSE_OPEN_PARA_READ_FLAG = 1 const CERT_SERVER_OCSP_RESPONSE_OPEN_PARA_WRITE_FLAG = 2 const CERT_SET_KEY_CONTEXT_PROP_ID = 1 const CERT_SET_KEY_PROV_HANDLE_PROP_ID = 1 const CERT_SET_PROPERTY_IGNORE_PERSIST_ERROR_FLAG = 2147483648 const CERT_SET_PROPERTY_INHIBIT_PERSIST_FLAG = 1073741824 const CERT_SHA1_HASH_PROP_ID = 3 const CERT_SHA256_HASH_PROP_ID = 107 const CERT_SIGNATURE_HASH_PROP_ID = 15 type CERT_SIGNED_CONTENT_INFO = TCERT_SIGNED_CONTENT_INFO const CERT_SIGN_HASH_CNG_ALG_PROP_ID = 89 type CERT_SIMPLE_CHAIN = TCERT_SIMPLE_CHAIN const CERT_SIMPLE_NAME_STR = 1 const CERT_SMART_CARD_DATA_PROP_ID = 16 const CERT_SMART_CARD_READER_NON_REMOVABLE_PROP_ID = 106 const CERT_SMART_CARD_READER_PROP_ID = 101 const CERT_SMART_CARD_ROOT_INFO_PROP_ID = 76 const CERT_SOURCE_LOCATION_PROP_ID = 72 const CERT_SOURCE_URL_PROP_ID = 73 const CERT_SRV_OCSP_RESP_MAX_BEFORE_NEXT_UPDATE_SECONDS_DEFAULT = 14400 const CERT_SRV_OCSP_RESP_MAX_BEFORE_NEXT_UPDATE_SECONDS_VALUE_NAME = "SrvOcspRespMaxBeforeNextUpdateSeconds" const CERT_SRV_OCSP_RESP_MAX_SYNC_CERT_FILE_SECONDS_DEFAULT = 3600 const CERT_SRV_OCSP_RESP_MAX_SYNC_CERT_FILE_SECONDS_VALUE_NAME = "SrvOcspRespMaxSyncCertFileSeconds" const CERT_SRV_OCSP_RESP_MIN_AFTER_NEXT_UPDATE_SECONDS_DEFAULT = 60 const CERT_SRV_OCSP_RESP_MIN_AFTER_NEXT_UPDATE_SECONDS_VALUE_NAME = "SrvOcspRespMinAfterNextUpdateSeconds" const CERT_SRV_OCSP_RESP_MIN_BEFORE_NEXT_UPDATE_SECONDS_DEFAULT = 120 const CERT_SRV_OCSP_RESP_MIN_BEFORE_NEXT_UPDATE_SECONDS_VALUE_NAME = "SrvOcspRespMinBeforeNextUpdateSeconds" const CERT_SRV_OCSP_RESP_MIN_SYNC_CERT_FILE_SECONDS_DEFAULT = 5 const CERT_SRV_OCSP_RESP_MIN_SYNC_CERT_FILE_SECONDS_VALUE_NAME = "SrvOcspRespMinSyncCertFileSeconds" const CERT_SRV_OCSP_RESP_MIN_VALIDITY_SECONDS_DEFAULT = 600 const CERT_SRV_OCSP_RESP_MIN_VALIDITY_SECONDS_VALUE_NAME = "SrvOcspRespMinValiditySeconds" const CERT_SRV_OCSP_RESP_URL_RETRIEVAL_TIMEOUT_MILLISECONDS_DEFAULT = 15000 const CERT_SRV_OCSP_RESP_URL_RETRIEVAL_TIMEOUT_MILLISECONDS_VALUE_NAME = "SrvOcspRespUrlRetrievalTimeoutMilliseconds" const CERT_STORE_ADD_ALWAYS = 4 const CERT_STORE_ADD_NEW = 1 const CERT_STORE_ADD_NEWER = 6 const CERT_STORE_ADD_NEWER_INHERIT_PROPERTIES = 7 const CERT_STORE_ADD_REPLACE_EXISTING = 3 const CERT_STORE_ADD_REPLACE_EXISTING_INHERIT_PROPERTIES = 5 const CERT_STORE_ADD_USE_EXISTING = 2 const CERT_STORE_ALL_CONTEXT_FLAG = 18446744073709551615 const CERT_STORE_BACKUP_RESTORE_FLAG = 2048 const CERT_STORE_BASE_CRL_FLAG = 256 const CERT_STORE_CERTIFICATE_CONTEXT = 1 const CERT_STORE_CERTIFICATE_CONTEXT_FLAG = 2 const CERT_STORE_CREATE_NEW_FLAG = 8192 const CERT_STORE_CRL_CONTEXT = 2 const CERT_STORE_CRL_CONTEXT_FLAG = 4 const CERT_STORE_CTL_CONTEXT = 3 const CERT_STORE_CTL_CONTEXT_FLAG = 8 const CERT_STORE_CTRL_AUTO_RESYNC = 4 const CERT_STORE_CTRL_CANCEL_NOTIFY = 5 const CERT_STORE_CTRL_COMMIT = 3 const CERT_STORE_CTRL_COMMIT_CLEAR_FLAG = 2 const CERT_STORE_CTRL_COMMIT_FORCE_FLAG = 1 const CERT_STORE_CTRL_INHIBIT_DUPLICATE_HANDLE_FLAG = 1 const CERT_STORE_CTRL_NOTIFY_CHANGE = 2 const CERT_STORE_CTRL_RESYNC = 1 const CERT_STORE_DEFER_CLOSE_UNTIL_LAST_FREE_FLAG = 4 const CERT_STORE_DELETE_FLAG = 16 const CERT_STORE_DELTA_CRL_FLAG = 512 const CERT_STORE_ENUM_ARCHIVED_FLAG = 512 const CERT_STORE_LOCALIZED_NAME_PROP_ID = 4096 const CERT_STORE_MANIFOLD_FLAG = 256 const CERT_STORE_MAXIMUM_ALLOWED_FLAG = 4096 const CERT_STORE_NO_CRL_FLAG = 65536 const CERT_STORE_NO_CRYPT_RELEASE_FLAG = 1 const CERT_STORE_NO_ISSUER_FLAG = 131072 const CERT_STORE_OPEN_EXISTING_FLAG = 16384 const CERT_STORE_PROV_CLOSE_FUNC = 0 const CERT_STORE_PROV_CONTROL_FUNC = 13 const CERT_STORE_PROV_DELETED_FLAG = 2 const CERT_STORE_PROV_DELETE_CERT_FUNC = 3 const CERT_STORE_PROV_DELETE_CRL_FUNC = 7 const CERT_STORE_PROV_DELETE_CTL_FUNC = 11 const CERT_STORE_PROV_EXTERNAL_FLAG = 1 const CERT_STORE_PROV_FILENAME = "CERT_STORE_PROV_FILENAME_W" const CERT_STORE_PROV_FIND_CERT_FUNC = 14 const CERT_STORE_PROV_FIND_CRL_FUNC = 17 const CERT_STORE_PROV_FIND_CTL_FUNC = 20 type CERT_STORE_PROV_FIND_INFO = TCERT_STORE_PROV_FIND_INFO const CERT_STORE_PROV_FREE_FIND_CERT_FUNC = 15 const CERT_STORE_PROV_FREE_FIND_CRL_FUNC = 18 const CERT_STORE_PROV_FREE_FIND_CTL_FUNC = 21 const CERT_STORE_PROV_GET_CERT_PROPERTY_FUNC = 16 const CERT_STORE_PROV_GET_CRL_PROPERTY_FUNC = 19 const CERT_STORE_PROV_GET_CTL_PROPERTY_FUNC = 22 const CERT_STORE_PROV_GP_SYSTEM_STORE_FLAG = 32 type CERT_STORE_PROV_INFO = TCERT_STORE_PROV_INFO const CERT_STORE_PROV_LDAP = "CERT_STORE_PROV_LDAP_W" const CERT_STORE_PROV_LM_SYSTEM_STORE_FLAG = 16 const CERT_STORE_PROV_NO_PERSIST_FLAG = 4 const CERT_STORE_PROV_PHYSICAL = "CERT_STORE_PROV_PHYSICAL_W" const CERT_STORE_PROV_READ_CERT_FUNC = 1 const CERT_STORE_PROV_READ_CRL_FUNC = 5 const CERT_STORE_PROV_READ_CTL_FUNC = 9 const CERT_STORE_PROV_SET_CERT_PROPERTY_FUNC = 4 const CERT_STORE_PROV_SET_CRL_PROPERTY_FUNC = 8 const CERT_STORE_PROV_SET_CTL_PROPERTY_FUNC = 12 const CERT_STORE_PROV_SHARED_USER_FLAG = 64 const CERT_STORE_PROV_SMART_CARD = "CERT_STORE_PROV_SMART_CARD_W" const CERT_STORE_PROV_SYSTEM = "CERT_STORE_PROV_SYSTEM_W" const CERT_STORE_PROV_SYSTEM_REGISTRY = "CERT_STORE_PROV_SYSTEM_REGISTRY_W" const CERT_STORE_PROV_SYSTEM_STORE_FLAG = 8 const CERT_STORE_PROV_WRITE_ADD_FLAG = 1 const CERT_STORE_PROV_WRITE_CERT_FUNC = 2 const CERT_STORE_PROV_WRITE_CRL_FUNC = 6 const CERT_STORE_PROV_WRITE_CTL_FUNC = 10 const CERT_STORE_READONLY_FLAG = 32768 const CERT_STORE_REVOCATION_FLAG = 4 const CERT_STORE_SAVE_AS_PKCS12 = 3 const CERT_STORE_SAVE_AS_PKCS7 = 2 const CERT_STORE_SAVE_AS_STORE = 1 const CERT_STORE_SAVE_TO_FILE = 1 const CERT_STORE_SAVE_TO_FILENAME = 4 const CERT_STORE_SAVE_TO_FILENAME_A = 3 const CERT_STORE_SAVE_TO_FILENAME_W = 4 const CERT_STORE_SAVE_TO_MEMORY = 2 const CERT_STORE_SET_LOCALIZED_NAME_FLAG = 2 const CERT_STORE_SHARE_CONTEXT_FLAG = 128 const CERT_STORE_SHARE_STORE_FLAG = 64 const CERT_STORE_SIGNATURE_FLAG = 1 const CERT_STORE_TIME_VALIDITY_FLAG = 2 const CERT_STORE_UNSAFE_PHYSICAL_FLAG = 32 const CERT_STORE_UPDATE_KEYID_FLAG = 1024 const CERT_STRONG_SIGN_ECDSA_ALGORITHM = "ECDSA" const CERT_STRONG_SIGN_ENABLE_CRL_CHECK = 1 const CERT_STRONG_SIGN_ENABLE_OCSP_CHECK = 2 const CERT_STRONG_SIGN_OID_INFO_CHOICE = 2 type CERT_STRONG_SIGN_PARA = TCERT_STRONG_SIGN_PARA type CERT_STRONG_SIGN_SERIALIZED_INFO = TCERT_STRONG_SIGN_SERIALIZED_INFO const CERT_STRONG_SIGN_SERIALIZED_INFO_CHOICE = 1 const CERT_SUBJECT_DISABLE_CRL_PROP_ID = 86 type CERT_SUBJECT_INFO_ACCESS = TCERT_SUBJECT_INFO_ACCESS const CERT_SUBJECT_INFO_ACCESS_PROP_ID = 80 const CERT_SUBJECT_NAME_MD5_HASH_PROP_ID = 29 const CERT_SUBJECT_OCSP_AUTHORITY_INFO_ACCESS_PROP_ID = 85 const CERT_SUBJECT_PUBLIC_KEY_MD5_HASH_PROP_ID = 25 const CERT_SUBJECT_PUB_KEY_BIT_LENGTH_PROP_ID = 92 type CERT_SUPPORTED_ALGORITHM_INFO = TCERT_SUPPORTED_ALGORITHM_INFO const CERT_SYSTEM_STORE_CURRENT_SERVICE = 262144 const CERT_SYSTEM_STORE_CURRENT_SERVICE_ID = 4 const CERT_SYSTEM_STORE_CURRENT_USER = 65536 const CERT_SYSTEM_STORE_CURRENT_USER_GROUP_POLICY = 458752 const CERT_SYSTEM_STORE_CURRENT_USER_GROUP_POLICY_ID = 7 const CERT_SYSTEM_STORE_CURRENT_USER_ID = 1 const CERT_SYSTEM_STORE_DEFER_READ_FLAG = 536870912 type CERT_SYSTEM_STORE_INFO = TCERT_SYSTEM_STORE_INFO const CERT_SYSTEM_STORE_LOCAL_MACHINE = 131072 const CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE = 589824 const CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE_ID = 9 const CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY = 524288 const CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY_ID = 8 const CERT_SYSTEM_STORE_LOCAL_MACHINE_ID = 2 const CERT_SYSTEM_STORE_LOCAL_MACHINE_WCOS = 655360 const CERT_SYSTEM_STORE_LOCAL_MACHINE_WCOS_ID = 10 const CERT_SYSTEM_STORE_LOCATION_MASK = 16711680 const CERT_SYSTEM_STORE_LOCATION_SHIFT = 16 const CERT_SYSTEM_STORE_MASK = 4294901760 const CERT_SYSTEM_STORE_RELOCATE_FLAG = 2147483648 type CERT_SYSTEM_STORE_RELOCATE_PARA = TCERT_SYSTEM_STORE_RELOCATE_PARA const CERT_SYSTEM_STORE_SERVICES = 327680 const CERT_SYSTEM_STORE_SERVICES_ID = 5 const CERT_SYSTEM_STORE_UNPROTECTED_FLAG = 1073741824 const CERT_SYSTEM_STORE_USERS = 393216 const CERT_SYSTEM_STORE_USERS_ID = 6 type CERT_TEMPLATE_EXT = TCERT_TEMPLATE_EXT const CERT_TIMESTAMP_HASH_USE_TYPE = 2 type CERT_TPM_SPECIFICATION_INFO = TCERT_TPM_SPECIFICATION_INFO const CERT_TRUST_AUTO_UPDATE_CA_REVOCATION = 16 const CERT_TRUST_AUTO_UPDATE_END_REVOCATION = 32 const CERT_TRUST_CTL_IS_NOT_SIGNATURE_VALID = 262144 const CERT_TRUST_CTL_IS_NOT_TIME_VALID = 131072 const CERT_TRUST_CTL_IS_NOT_VALID_FOR_USAGE = 524288 const CERT_TRUST_HAS_ALLOW_WEAK_SIGNATURE = 131072 const CERT_TRUST_HAS_AUTO_UPDATE_WEAK_SIGNATURE = 32768 const CERT_TRUST_HAS_CRL_VALIDITY_EXTENDED = 4096 const CERT_TRUST_HAS_EXACT_MATCH_ISSUER = 1 const CERT_TRUST_HAS_EXCLUDED_NAME_CONSTRAINT = 32768 const CERT_TRUST_HAS_ISSUANCE_CHAIN_POLICY = 512 const CERT_TRUST_HAS_KEY_MATCH_ISSUER = 2 const CERT_TRUST_HAS_NAME_MATCH_ISSUER = 4 const CERT_TRUST_HAS_NOT_DEFINED_NAME_CONSTRAINT = 8192 const CERT_TRUST_HAS_NOT_PERMITTED_NAME_CONSTRAINT = 16384 const CERT_TRUST_HAS_NOT_SUPPORTED_CRITICAL_EXT = 134217728 const CERT_TRUST_HAS_NOT_SUPPORTED_NAME_CONSTRAINT = 4096 const CERT_TRUST_HAS_PREFERRED_ISSUER = 256 const CERT_TRUST_HAS_VALID_NAME_CONSTRAINTS = 1024 const CERT_TRUST_HAS_WEAK_SIGNATURE = 1048576 const CERT_TRUST_INVALID_BASIC_CONSTRAINTS = 1024 const CERT_TRUST_INVALID_EXTENSION = 256 const CERT_TRUST_INVALID_NAME_CONSTRAINTS = 2048 const CERT_TRUST_INVALID_POLICY_CONSTRAINTS = 512 const CERT_TRUST_IS_CA_TRUSTED = 16384 const CERT_TRUST_IS_COMPLEX_CHAIN = 65536 const CERT_TRUST_IS_CYCLIC = 128 const CERT_TRUST_IS_EXPLICIT_DISTRUST = 67108864 const CERT_TRUST_IS_FROM_EXCLUSIVE_TRUST_STORE = 8192 const CERT_TRUST_IS_KEY_ROLLOVER = 128 const CERT_TRUST_IS_NOT_SIGNATURE_VALID = 8 const CERT_TRUST_IS_NOT_TIME_NESTED = 2 const CERT_TRUST_IS_NOT_TIME_VALID = 1 const CERT_TRUST_IS_NOT_VALID_FOR_USAGE = 16 const CERT_TRUST_IS_OFFLINE_REVOCATION = 16777216 const CERT_TRUST_IS_PARTIAL_CHAIN = 65536 const CERT_TRUST_IS_PEER_TRUSTED = 2048 const CERT_TRUST_IS_REVOKED = 4 const CERT_TRUST_IS_SELF_SIGNED = 8 const CERT_TRUST_IS_UNTRUSTED_ROOT = 32 type CERT_TRUST_LIST_INFO = TCERT_TRUST_LIST_INFO const CERT_TRUST_NO_ERROR = 0 const CERT_TRUST_NO_ISSUANCE_CHAIN_POLICY = 33554432 const CERT_TRUST_NO_OCSP_FAILOVER_TO_CRL = 64 const CERT_TRUST_NO_TIME_CHECK = 33554432 const CERT_TRUST_PUB_ALLOW_END_USER_TRUST = 0 const CERT_TRUST_PUB_ALLOW_ENTERPRISE_ADMIN_TRUST = 2 const CERT_TRUST_PUB_ALLOW_MACHINE_ADMIN_TRUST = 1 const CERT_TRUST_PUB_ALLOW_TRUST_MASK = 3 const CERT_TRUST_PUB_AUTHENTICODE_FLAGS_VALUE_NAME = "AuthenticodeFlags" const CERT_TRUST_PUB_CHECK_PUBLISHER_REV_FLAG = 256 const CERT_TRUST_PUB_CHECK_TIMESTAMP_REV_FLAG = 512 const CERT_TRUST_REVOCATION_STATUS_UNKNOWN = 64 const CERT_TRUST_SSL_HANDSHAKE_OCSP = 262144 const CERT_TRUST_SSL_RECONNECT_OCSP = 1048576 const CERT_TRUST_SSL_TIME_VALID = 16777216 const CERT_TRUST_SSL_TIME_VALID_OCSP = 524288 type CERT_TRUST_STATUS = TCERT_TRUST_STATUS const CERT_UNICODE_ATTR_ERR_INDEX_MASK = 63 const CERT_UNICODE_ATTR_ERR_INDEX_SHIFT = 16 const CERT_UNICODE_IS_RDN_ATTRS_FLAG = 1 const CERT_UNICODE_RDN_ERR_INDEX_MASK = 1023 const CERT_UNICODE_RDN_ERR_INDEX_SHIFT = 22 const CERT_UNICODE_VALUE_ERR_INDEX_MASK = 65535 const CERT_UNICODE_VALUE_ERR_INDEX_SHIFT = 0 type CERT_USAGE_MATCH = TCERT_USAGE_MATCH const CERT_V1 = 0 const CERT_V2 = 1 const CERT_V3 = 2 const CERT_VERIFY_ALLOW_MORE_USAGE_FLAG = 8 const CERT_VERIFY_CACHE_ONLY_BASED_REVOCATION = 2 const CERT_VERIFY_INHIBIT_CTL_UPDATE_FLAG = 1 const CERT_VERIFY_NO_TIME_CHECK_FLAG = 4 const CERT_VERIFY_REV_ACCUMULATIVE_TIMEOUT_FLAG = 4 const CERT_VERIFY_REV_CHAIN_FLAG = 1 const CERT_VERIFY_REV_NO_OCSP_FAILOVER_TO_CRL_FLAG = 16 const CERT_VERIFY_REV_SERVER_OCSP_FLAG = 8 const CERT_VERIFY_TRUSTED_SIGNERS_FLAG = 2 const CERT_VERIFY_UPDATED_CTL_FLAG = 1 const CERT_X500_NAME_STR = 3 type CERT_X942_DH_PARAMETERS = TCERT_X942_DH_PARAMETERS type CERT_X942_DH_VALIDATION_PARAMS = TCERT_X942_DH_VALIDATION_PARAMS const CERT_XML_NAME_STR = 4 const CE_BREAK = 16 const CE_DNS = 2048 const CE_FRAME = 8 const CE_IOE = 1024 const CE_MODE = 32768 const CE_OOP = 4096 const CE_OVERRUN = 2 const CE_PTO = 512 const CE_RXOVER = 1 const CE_RXPARITY = 4 const CE_TXFULL = 256 const CFERR_CHOOSEFONTCODES = 8192 const CFERR_MAXLESSTHANMIN = 8194 const CFERR_NOFONTS = 8193 const CFG_CALL_TARGET_CONVERT_EXPORT_SUPPRESSED_TO_VALID = 4 type CFG_CALL_TARGET_INFO = TCFG_CALL_TARGET_INFO const CFG_CALL_TARGET_PROCESSED = 2 const CFG_CALL_TARGET_VALID = 1 const CFSEPCHAR = 43 const CFSTR_MIME_NULL = "NULL" const CFS_CANDIDATEPOS = 64 const CFS_DEFAULT = 0 const CFS_EXCLUDE = 128 const CFS_FORCE_POSITION = 32 const CFS_POINT = 2 const CFS_RECT = 1 const CF_ANSIONLY = 1024 const CF_APPLY = 512 const CF_BITMAP = 2 const CF_BOTH = 3 const CF_DIB = 8 const CF_DIBV5 = 17 const CF_DIF = 5 const CF_DSPBITMAP = 130 const CF_DSPENHMETAFILE = 142 const CF_DSPMETAFILEPICT = 131 const CF_DSPTEXT = 129 const CF_EFFECTS = 256 const CF_ENABLEHOOK = 8 const CF_ENABLETEMPLATE = 16 const CF_ENABLETEMPLATEHANDLE = 32 const CF_ENHMETAFILE = 14 const CF_FIXEDPITCHONLY = 16384 const CF_FORCEFONTEXIST = 65536 const CF_GDIOBJFIRST = 768 const CF_GDIOBJLAST = 1023 const CF_HDROP = 15 const CF_INACTIVEFONTS = 33554432 const CF_INITTOLOGFONTSTRUCT = 64 const CF_LIMITSIZE = 8192 const CF_LOCALE = 16 const CF_MAX = 18 const CF_METAFILEPICT = 3 const CF_NOFACESEL = 524288 const CF_NOOEMFONTS = 2048 const CF_NOSCRIPTSEL = 8388608 const CF_NOSIMULATIONS = 4096 const CF_NOSIZESEL = 2097152 const CF_NOSTYLESEL = 1048576 const CF_NOVECTORFONTS = 2048 const CF_NOVERTFONTS = 16777216 const CF_NULL = 0 const CF_OEMTEXT = 7 const CF_OWNERDISPLAY = 128 const CF_PALETTE = 9 const CF_PENDATA = 10 const CF_PRINTERFONTS = 2 const CF_PRIVATEFIRST = 512 const CF_PRIVATELAST = 767 const CF_RIFF = 11 const CF_SCALABLEONLY = 131072 const CF_SCREENFONTS = 1 const CF_SCRIPTSONLY = 1024 const CF_SELECTSCRIPT = 4194304 const CF_SHOWHELP = 4 const CF_SYLK = 4 const CF_TEXT = 1 const CF_TIFF = 6 const CF_TTONLY = 262144 const CF_UNICODETEXT = 13 const CF_USESTYLE = 128 const CF_WAVE = 12 const CF_WYSIWYG = 32768 type CHANGEFILTERSTRUCT = TCHANGEFILTERSTRUCT type CHANGEKIND = TCHANGEKIND const CHANGER_BAR_CODE_SCANNER_INSTALLED = 1 const CHANGER_CARTRIDGE_MAGAZINE = 256 const CHANGER_CLEANER_ACCESS_NOT_VALID = 262144 const CHANGER_CLEANER_AUTODISMOUNT = 2147483652 const CHANGER_CLEANER_OPS_NOT_SUPPORTED = 2147483712 const CHANGER_CLEANER_SLOT = 64 const CHANGER_CLOSE_IEPORT = 4 type CHANGER_DEVICE_PROBLEM_TYPE = TCHANGER_DEVICE_PROBLEM_TYPE const CHANGER_DEVICE_REINITIALIZE_CAPABLE = 134217728 const CHANGER_DRIVE_CLEANING_REQUIRED = 65536 const CHANGER_DRIVE_EMPTY_ON_DOOR_ACCESS = 536870912 type CHANGER_ELEMENT = TCHANGER_ELEMENT type CHANGER_ELEMENT_LIST = TCHANGER_ELEMENT_LIST type CHANGER_ELEMENT_STATUS = TCHANGER_ELEMENT_STATUS type CHANGER_ELEMENT_STATUS_EX = TCHANGER_ELEMENT_STATUS_EX const CHANGER_EXCHANGE_MEDIA = 32 type CHANGER_EXCHANGE_MEDIUM = TCHANGER_EXCHANGE_MEDIUM const CHANGER_IEPORT_USER_CONTROL_CLOSE = 2147483904 const CHANGER_IEPORT_USER_CONTROL_OPEN = 2147483776 type CHANGER_INITIALIZE_ELEMENT_STATUS = TCHANGER_INITIALIZE_ELEMENT_STATUS const CHANGER_INIT_ELEM_STAT_WITH_RANGE = 2 const CHANGER_KEYPAD_ENABLE_DISABLE = 268435456 const CHANGER_LOCK_UNLOCK = 128 const CHANGER_MEDIUM_FLIP = 512 const CHANGER_MOVE_EXTENDS_IEPORT = 2147484160 type CHANGER_MOVE_MEDIUM = TCHANGER_MOVE_MEDIUM const CHANGER_MOVE_RETRACTS_IEPORT = 2147484672 const CHANGER_OPEN_IEPORT = 8 const CHANGER_POSITION_TO_ELEMENT = 1024 const CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE = 2147483650 const CHANGER_PREDISMOUNT_ALIGN_TO_SLOT = 2147483649 const CHANGER_PREDISMOUNT_EJECT_REQUIRED = 131072 const CHANGER_PREMOUNT_EJECT_REQUIRED = 524288 type CHANGER_PRODUCT_DATA = TCHANGER_PRODUCT_DATA type CHANGER_READ_ELEMENT_STATUS = TCHANGER_READ_ELEMENT_STATUS const CHANGER_REPORT_IEPORT_STATE = 2048 const CHANGER_RESERVED_BIT = 2147483648 const CHANGER_RTN_MEDIA_TO_ORIGINAL_ADDR = 2147483680 type CHANGER_SEND_VOLUME_TAG_INFORMATION = TCHANGER_SEND_VOLUME_TAG_INFORMATION const CHANGER_SERIAL_NUMBER_VALID = 67108864 type CHANGER_SET_ACCESS = TCHANGER_SET_ACCESS type CHANGER_SET_POSITION = TCHANGER_SET_POSITION const CHANGER_SLOTS_USE_TRAYS = 2147483664 const CHANGER_STATUS_NON_VOLATILE = 16 const CHANGER_STORAGE_DRIVE = 4096 const CHANGER_STORAGE_IEPORT = 8192 const CHANGER_STORAGE_SLOT = 16384 const CHANGER_STORAGE_TRANSPORT = 32768 const CHANGER_TO_DRIVE = 8 const CHANGER_TO_IEPORT = 4 const CHANGER_TO_SLOT = 2 const CHANGER_TO_TRANSPORT = 1 const CHANGER_TRUE_EXCHANGE_CAPABLE = 2147483656 const CHANGER_VOLUME_ASSERT = 4194304 const CHANGER_VOLUME_IDENTIFICATION = 1048576 const CHANGER_VOLUME_REPLACE = 8388608 const CHANGER_VOLUME_SEARCH = 2097152 const CHANGER_VOLUME_UNDEFINE = 16777216 type CHAR = TCHAR type CHARSETINFO = TCHARSETINFO type CHAR_INFO = TCHAR_INFO const CHECKJPEGFORMAT = 4119 const CHECKPNGFORMAT = 4120 const CHILDID_SELF = 0 const CHINESEBIG5_CHARSET = 136 type CHOOSECOLOR = TCHOOSECOLOR type CHOOSECOLORA = TCHOOSECOLORA type CHOOSECOLORW = TCHOOSECOLORW type CHOOSEFONT = TCHOOSEFONT type CHOOSEFONTA = TCHOOSEFONTA type CHOOSEFONTW = TCHOOSEFONTW type CIEXYZ = TCIEXYZ type CIEXYZTRIPLE = TCIEXYZTRIPLE type CIP_STATUS = TCIP_STATUS type CLAIM_SECURITY_ATTRIBUTES_INFORMATION = TCLAIM_SECURITY_ATTRIBUTES_INFORMATION const CLAIM_SECURITY_ATTRIBUTES_INFORMATION_VERSION = 1 const CLAIM_SECURITY_ATTRIBUTES_INFORMATION_VERSION_V1 = 1 const CLAIM_SECURITY_ATTRIBUTE_CUSTOM_FLAGS = 4294901760 const CLAIM_SECURITY_ATTRIBUTE_DISABLED = 16 const CLAIM_SECURITY_ATTRIBUTE_DISABLED_BY_DEFAULT = 8 type CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE = TCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE const CLAIM_SECURITY_ATTRIBUTE_MANDATORY = 32 const CLAIM_SECURITY_ATTRIBUTE_NON_INHERITABLE = 1 type CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = TCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE type CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = TCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 const CLAIM_SECURITY_ATTRIBUTE_TYPE_BOOLEAN = 6 const CLAIM_SECURITY_ATTRIBUTE_TYPE_FQBN = 4 const CLAIM_SECURITY_ATTRIBUTE_TYPE_INT64 = 1 const CLAIM_SECURITY_ATTRIBUTE_TYPE_INVALID = 0 const CLAIM_SECURITY_ATTRIBUTE_TYPE_OCTET_STRING = 16 const CLAIM_SECURITY_ATTRIBUTE_TYPE_SID = 5 const CLAIM_SECURITY_ATTRIBUTE_TYPE_STRING = 3 const CLAIM_SECURITY_ATTRIBUTE_TYPE_UINT64 = 2 const CLAIM_SECURITY_ATTRIBUTE_USE_FOR_DENY_ONLY = 4 type CLAIM_SECURITY_ATTRIBUTE_V1 = TCLAIM_SECURITY_ATTRIBUTE_V1 const CLAIM_SECURITY_ATTRIBUTE_VALID_FLAGS = 63 const CLAIM_SECURITY_ATTRIBUTE_VALUE_CASE_SENSITIVE = 2 const CLASSFACTORY_E_FIRST = 2147746064 const CLASSFACTORY_E_LAST = 2147746079 const CLASSFACTORY_S_FIRST = 262416 const CLASSFACTORY_S_LAST = 262431 type CLASS_MEDIA_CHANGE_CONTEXT = TCLASS_MEDIA_CHANGE_CONTEXT type CLEANLOCALSTORAGE = TCLEANLOCALSTORAGE const CLEARTYPE_NATURAL_QUALITY = 6 const CLEARTYPE_QUALITY = 5 type CLIENTCREATESTRUCT = TCLIENTCREATESTRUCT const CLIENTSITE_E_FIRST = 2147746192 const CLIENTSITE_E_LAST = 2147746207 const CLIENTSITE_S_FIRST = 262544 const CLIENTSITE_S_LAST = 262559 type CLIENT_CALL_RETURN = TCLIENT_CALL_RETURN const CLIPBRD_E_FIRST = 2147746256 const CLIPBRD_E_LAST = 2147746271 const CLIPBRD_S_FIRST = 262608 const CLIPBRD_S_LAST = 262623 const CLIPCAPS = 36 type CLIPDATA = TCLIPDATA type CLIPFORMAT = TCLIPFORMAT const CLIP_CHARACTER_PRECIS = 1 const CLIP_DEFAULT_PRECIS = 0 const CLIP_DFA_DISABLE = 64 const CLIP_EMBEDDED = 128 const CLIP_LH_ANGLES = 16 const CLIP_MASK = 15 const CLIP_STROKE_PRECIS = 2 const CLIP_TO_PATH = 4097 const CLIP_TT_ALWAYS = 32 const CLK_TCK = 1000 const CLOCKS_PER_SEC = 1000 const CLOCK_REALTIME_COARSE = 4 const CLOSECHANNEL = 4112 const CLRBREAK = 9 const CLRDTR = 6 const CLRRTS = 4 const CLR_INVALID = 4294967295 type CLSCTX = TCLSCTX const CLSCTX_ALL = 0 const CLSCTX_INPROC = 0 const CLSCTX_SERVER = 0 const CLSCTX_VALID_MASK = 0 type CLSID = TCLSID const CLSID_NULL = 0 const CMAPI = "DECLSPEC_IMPORT" type CMC_ADD_ATTRIBUTES_INFO = TCMC_ADD_ATTRIBUTES_INFO type CMC_ADD_EXTENSIONS_INFO = TCMC_ADD_EXTENSIONS_INFO type CMC_DATA_INFO = TCMC_DATA_INFO const CMC_FAIL_BAD_ALG = 0 const CMC_FAIL_BAD_CERT_ID = 4 const CMC_FAIL_BAD_IDENTITY = 7 const CMC_FAIL_BAD_MESSAGE_CHECK = 1 const CMC_FAIL_BAD_REQUEST = 2 const CMC_FAIL_BAD_TIME = 3 const CMC_FAIL_INTERNAL_CA_ERROR = 11 const CMC_FAIL_MUST_ARCHIVE_KEYS = 6 const CMC_FAIL_NO_KEY_REUSE = 10 const CMC_FAIL_POP_FAILED = 9 const CMC_FAIL_POP_REQUIRED = 8 const CMC_FAIL_TRY_LATER = 12 const CMC_FAIL_UNSUPORTED_EXT = 5 const CMC_OTHER_INFO_FAIL_CHOICE = 1 const CMC_OTHER_INFO_NO_CHOICE = 0 const CMC_OTHER_INFO_PEND_CHOICE = 2 type CMC_PEND_INFO = TCMC_PEND_INFO type CMC_RESPONSE_INFO = TCMC_RESPONSE_INFO const CMC_STATUS_CONFIRM_REQUIRED = 5 const CMC_STATUS_FAILED = 2 type CMC_STATUS_INFO = TCMC_STATUS_INFO const CMC_STATUS_NO_SUPPORT = 4 const CMC_STATUS_PENDING = 3 const CMC_STATUS_SUCCESS = 0 type CMC_TAGGED_ATTRIBUTE = TCMC_TAGGED_ATTRIBUTE type CMC_TAGGED_CERT_REQUEST = TCMC_TAGGED_CERT_REQUEST const CMC_TAGGED_CERT_REQUEST_CHOICE = 1 type CMC_TAGGED_CONTENT_INFO = TCMC_TAGGED_CONTENT_INFO type CMC_TAGGED_OTHER_MSG = TCMC_TAGGED_OTHER_MSG type CMC_TAGGED_REQUEST = TCMC_TAGGED_REQUEST const CMSG_ALL_FLAGS = 18446744073709551615 type CMSG_ATTR = TCMSG_ATTR const CMSG_ATTR_CERT_COUNT_PARAM = 31 const CMSG_ATTR_CERT_PARAM = 32 const CMSG_AUTHENTICATED_ATTRIBUTES_FLAG = 8 const CMSG_BARE_CONTENT_FLAG = 1 const CMSG_BARE_CONTENT_PARAM = 3 const CMSG_CERT_COUNT_PARAM = 11 const CMSG_CERT_PARAM = 12 const CMSG_CMS_ENCAPSULATED_CONTENT_FLAG = 64 const CMSG_CMS_ENCAPSULATED_CTL_FLAG = 32768 const CMSG_CMS_RECIPIENT_COUNT_PARAM = 33 const CMSG_CMS_RECIPIENT_ENCRYPTED_KEY_INDEX_PARAM = 35 const CMSG_CMS_RECIPIENT_INDEX_PARAM = 34 type CMSG_CMS_RECIPIENT_INFO = TCMSG_CMS_RECIPIENT_INFO const CMSG_CMS_RECIPIENT_INFO_PARAM = 36 type CMSG_CMS_SIGNER_INFO = TCMSG_CMS_SIGNER_INFO const CMSG_CMS_SIGNER_INFO_PARAM = 39 type CMSG_CNG_CONTENT_DECRYPT_INFO = TCMSG_CNG_CONTENT_DECRYPT_INFO const CMSG_COMPUTED_HASH_PARAM = 22 const CMSG_CONTENTS_OCTETS_FLAG = 16 const CMSG_CONTENT_ENCRYPT_FREE_OBJID_FLAG = 2 const CMSG_CONTENT_ENCRYPT_FREE_PARA_FLAG = 1 type CMSG_CONTENT_ENCRYPT_INFO = TCMSG_CONTENT_ENCRYPT_INFO const CMSG_CONTENT_ENCRYPT_PAD_ENCODED_LEN_FLAG = 1 const CMSG_CONTENT_ENCRYPT_RELEASE_CONTEXT_FLAG = 32768 const CMSG_CONTENT_PARAM = 2 const CMSG_CRL_COUNT_PARAM = 13 const CMSG_CRL_PARAM = 14 const CMSG_CRYPT_RELEASE_CONTEXT_FLAG = 32768 const CMSG_CTRL_ADD_ATTR_CERT = 14 const CMSG_CTRL_ADD_CERT = 10 const CMSG_CTRL_ADD_CMS_SIGNER_INFO = 20 const CMSG_CTRL_ADD_CRL = 12 const CMSG_CTRL_ADD_SIGNER = 6 const CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR = 8 type CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA = TCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA const CMSG_CTRL_DECRYPT = 2 type CMSG_CTRL_DECRYPT_PARA = TCMSG_CTRL_DECRYPT_PARA const CMSG_CTRL_DEL_ATTR_CERT = 15 const CMSG_CTRL_DEL_CERT = 11 const CMSG_CTRL_DEL_CRL = 13 const CMSG_CTRL_DEL_SIGNER = 7 const CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR = 9 type CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA = TCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA const CMSG_CTRL_ENABLE_STRONG_SIGNATURE = 21 const CMSG_CTRL_KEY_AGREE_DECRYPT = 17 type CMSG_CTRL_KEY_AGREE_DECRYPT_PARA = TCMSG_CTRL_KEY_AGREE_DECRYPT_PARA const CMSG_CTRL_KEY_TRANS_DECRYPT = 16 type CMSG_CTRL_KEY_TRANS_DECRYPT_PARA = TCMSG_CTRL_KEY_TRANS_DECRYPT_PARA const CMSG_CTRL_MAIL_LIST_DECRYPT = 18 type CMSG_CTRL_MAIL_LIST_DECRYPT_PARA = TCMSG_CTRL_MAIL_LIST_DECRYPT_PARA const CMSG_CTRL_VERIFY_HASH = 5 const CMSG_CTRL_VERIFY_SIGNATURE = 1 const CMSG_CTRL_VERIFY_SIGNATURE_EX = 19 type CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA = TCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA const CMSG_DATA = 1 const CMSG_DATA_FLAG = 2 const CMSG_DETACHED_FLAG = 4 const CMSG_ENCODED_MESSAGE = 29 const CMSG_ENCODED_SIGNER = 28 const CMSG_ENCODE_HASHED_SUBJECT_IDENTIFIER_FLAG = 2 const CMSG_ENCODE_SORTED_CTL_FLAG = 1 const CMSG_ENCODING_TYPE_MASK = 4294901760 const CMSG_ENCRYPTED = 6 const CMSG_ENCRYPTED_DIGEST = 27 type CMSG_ENCRYPTED_ENCODE_INFO = TCMSG_ENCRYPTED_ENCODE_INFO const CMSG_ENCRYPTED_FLAG = 64 const CMSG_ENCRYPT_PARAM = 26 const CMSG_ENVELOPED = 3 const CMSG_ENVELOPED_DATA_CMS_VERSION = 2 const CMSG_ENVELOPED_DATA_PKCS_1_5_VERSION = 0 const CMSG_ENVELOPED_DATA_V0 = 0 const CMSG_ENVELOPED_DATA_V2 = 2 type CMSG_ENVELOPED_ENCODE_INFO = TCMSG_ENVELOPED_ENCODE_INFO const CMSG_ENVELOPED_FLAG = 8 const CMSG_ENVELOPED_RECIPIENT_V0 = 0 const CMSG_ENVELOPED_RECIPIENT_V2 = 2 const CMSG_ENVELOPED_RECIPIENT_V3 = 3 const CMSG_ENVELOPED_RECIPIENT_V4 = 4 const CMSG_ENVELOPE_ALGORITHM_PARAM = 15 const CMSG_HASHED = 5 const CMSG_HASHED_DATA_CMS_VERSION = 2 const CMSG_HASHED_DATA_PKCS_1_5_VERSION = 0 const CMSG_HASHED_DATA_V0 = 0 const CMSG_HASHED_DATA_V2 = 2 type CMSG_HASHED_ENCODE_INFO = TCMSG_HASHED_ENCODE_INFO const CMSG_HASHED_FLAG = 32 const CMSG_HASH_ALGORITHM_PARAM = 20 const CMSG_HASH_DATA_PARAM = 21 const CMSG_INDEFINITE_LENGTH = 4294967295 const CMSG_INNER_CONTENT_TYPE_PARAM = 4 const CMSG_KEY_AGREE_ENCRYPT_FREE_MATERIAL_FLAG = 2 const CMSG_KEY_AGREE_ENCRYPT_FREE_OBJID_FLAG = 32 const CMSG_KEY_AGREE_ENCRYPT_FREE_PARA_FLAG = 1 const CMSG_KEY_AGREE_ENCRYPT_FREE_PUBKEY_ALG_FLAG = 4 const CMSG_KEY_AGREE_ENCRYPT_FREE_PUBKEY_BITS_FLAG = 16 const CMSG_KEY_AGREE_ENCRYPT_FREE_PUBKEY_PARA_FLAG = 8 type CMSG_KEY_AGREE_ENCRYPT_INFO = TCMSG_KEY_AGREE_ENCRYPT_INFO const CMSG_KEY_AGREE_EPHEMERAL_KEY_CHOICE = 1 type CMSG_KEY_AGREE_KEY_ENCRYPT_INFO = TCMSG_KEY_AGREE_KEY_ENCRYPT_INFO const CMSG_KEY_AGREE_ORIGINATOR_CERT = 1 const CMSG_KEY_AGREE_ORIGINATOR_PUBLIC_KEY = 2 const CMSG_KEY_AGREE_RECIPIENT = 2 type CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO = TCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO type CMSG_KEY_AGREE_RECIPIENT_INFO = TCMSG_KEY_AGREE_RECIPIENT_INFO const CMSG_KEY_AGREE_STATIC_KEY_CHOICE = 2 const CMSG_KEY_AGREE_VERSION = 3 const CMSG_KEY_TRANS_CMS_VERSION = 2 const CMSG_KEY_TRANS_ENCRYPT_FREE_OBJID_FLAG = 2 const CMSG_KEY_TRANS_ENCRYPT_FREE_PARA_FLAG = 1 type CMSG_KEY_TRANS_ENCRYPT_INFO = TCMSG_KEY_TRANS_ENCRYPT_INFO const CMSG_KEY_TRANS_PKCS_1_5_VERSION = 0 const CMSG_KEY_TRANS_RECIPIENT = 1 type CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO = TCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO type CMSG_KEY_TRANS_RECIPIENT_INFO = TCMSG_KEY_TRANS_RECIPIENT_INFO const CMSG_LENGTH_ONLY_FLAG = 2 const CMSG_MAIL_LIST_ENCRYPT_FREE_OBJID_FLAG = 2 const CMSG_MAIL_LIST_ENCRYPT_FREE_PARA_FLAG = 1 type CMSG_MAIL_LIST_ENCRYPT_INFO = TCMSG_MAIL_LIST_ENCRYPT_INFO const CMSG_MAIL_LIST_HANDLE_KEY_CHOICE = 1 const CMSG_MAIL_LIST_RECIPIENT = 3 type CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO = TCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO type CMSG_MAIL_LIST_RECIPIENT_INFO = TCMSG_MAIL_LIST_RECIPIENT_INFO const CMSG_MAIL_LIST_VERSION = 4 const CMSG_MAX_LENGTH_FLAG = 32 const CMSG_OID_CAPI1_EXPORT_KEY_AGREE_FUNC = "CMSG_OID_EXPORT_KEY_AGREE_FUNC" const CMSG_OID_CAPI1_EXPORT_KEY_TRANS_FUNC = "CMSG_OID_EXPORT_KEY_TRANS_FUNC" const CMSG_OID_CAPI1_EXPORT_MAIL_LIST_FUNC = "CMSG_OID_EXPORT_MAIL_LIST_FUNC" const CMSG_OID_CAPI1_GEN_CONTENT_ENCRYPT_KEY_FUNC = "CMSG_OID_GEN_CONTENT_ENCRYPT_KEY_FUNC" const CMSG_OID_CAPI1_IMPORT_KEY_AGREE_FUNC = "CMSG_OID_IMPORT_KEY_AGREE_FUNC" const CMSG_OID_CAPI1_IMPORT_KEY_TRANS_FUNC = "CMSG_OID_IMPORT_KEY_TRANS_FUNC" const CMSG_OID_CAPI1_IMPORT_MAIL_LIST_FUNC = "CMSG_OID_IMPORT_MAIL_LIST_FUNC" const CMSG_OID_CNG_EXPORT_KEY_AGREE_FUNC = "CryptMsgDllCNGExportKeyAgree" const CMSG_OID_CNG_EXPORT_KEY_TRANS_FUNC = "CryptMsgDllCNGExportKeyTrans" const CMSG_OID_CNG_GEN_CONTENT_ENCRYPT_KEY_FUNC = "CryptMsgDllCNGGenContentEncryptKey" const CMSG_OID_CNG_IMPORT_CONTENT_ENCRYPT_KEY_FUNC = "CryptMsgDllCNGImportContentEncryptKey" const CMSG_OID_CNG_IMPORT_KEY_AGREE_FUNC = "CryptMsgDllCNGImportKeyAgree" const CMSG_OID_CNG_IMPORT_KEY_TRANS_FUNC = "CryptMsgDllCNGImportKeyTrans" const CMSG_OID_EXPORT_ENCRYPT_KEY_FUNC = "CryptMsgDllExportEncryptKey" const CMSG_OID_EXPORT_KEY_AGREE_FUNC = "CryptMsgDllExportKeyAgree" const CMSG_OID_EXPORT_KEY_TRANS_FUNC = "CryptMsgDllExportKeyTrans" const CMSG_OID_EXPORT_MAIL_LIST_FUNC = "CryptMsgDllExportMailList" const CMSG_OID_GEN_CONTENT_ENCRYPT_KEY_FUNC = "CryptMsgDllGenContentEncryptKey" const CMSG_OID_GEN_ENCRYPT_KEY_FUNC = "CryptMsgDllGenEncryptKey" const CMSG_OID_IMPORT_ENCRYPT_KEY_FUNC = "CryptMsgDllImportEncryptKey" const CMSG_OID_IMPORT_KEY_AGREE_FUNC = "CryptMsgDllImportKeyAgree" const CMSG_OID_IMPORT_KEY_TRANS_FUNC = "CryptMsgDllImportKeyTrans" const CMSG_OID_IMPORT_MAIL_LIST_FUNC = "CryptMsgDllImportMailList" type CMSG_RC2_AUX_INFO = TCMSG_RC2_AUX_INFO type CMSG_RC4_AUX_INFO = TCMSG_RC4_AUX_INFO const CMSG_RC4_NO_SALT_FLAG = 1073741824 const CMSG_RECIPIENT_COUNT_PARAM = 17 type CMSG_RECIPIENT_ENCODE_INFO = TCMSG_RECIPIENT_ENCODE_INFO type CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO = TCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO type CMSG_RECIPIENT_ENCRYPTED_KEY_INFO = TCMSG_RECIPIENT_ENCRYPTED_KEY_INFO const CMSG_RECIPIENT_INDEX_PARAM = 18 const CMSG_RECIPIENT_INFO_PARAM = 19 const CMSG_SIGNED = 2 const CMSG_SIGNED_AND_ENVELOPED = 4 type CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO = TCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO const CMSG_SIGNED_AND_ENVELOPED_FLAG = 16 const CMSG_SIGNED_DATA_CMS_VERSION = 3 const CMSG_SIGNED_DATA_NO_SIGN_FLAG = 128 const CMSG_SIGNED_DATA_PKCS_1_5_VERSION = 1 const CMSG_SIGNED_DATA_V1 = 1 const CMSG_SIGNED_DATA_V3 = 3 type CMSG_SIGNED_ENCODE_INFO = TCMSG_SIGNED_ENCODE_INFO const CMSG_SIGNED_FLAG = 4 const CMSG_SIGNER_AUTH_ATTR_PARAM = 9 const CMSG_SIGNER_CERT_ID_PARAM = 38 const CMSG_SIGNER_CERT_INFO_PARAM = 7 const CMSG_SIGNER_COUNT_PARAM = 5 type CMSG_SIGNER_ENCODE_INFO = TCMSG_SIGNER_ENCODE_INFO const CMSG_SIGNER_HASH_ALGORITHM_PARAM = 8 type CMSG_SIGNER_INFO = TCMSG_SIGNER_INFO const CMSG_SIGNER_INFO_CMS_VERSION = 3 const CMSG_SIGNER_INFO_PARAM = 6 const CMSG_SIGNER_INFO_PKCS_1_5_VERSION = 1 const CMSG_SIGNER_INFO_V1 = 1 const CMSG_SIGNER_INFO_V3 = 3 const CMSG_SIGNER_ONLY_FLAG = 2 const CMSG_SIGNER_UNAUTH_ATTR_PARAM = 10 type CMSG_SP3_COMPATIBLE_AUX_INFO = TCMSG_SP3_COMPATIBLE_AUX_INFO const CMSG_SP3_COMPATIBLE_ENCRYPT_FLAG = 2147483648 type CMSG_STREAM_INFO = TCMSG_STREAM_INFO const CMSG_TRUSTED_SIGNER_FLAG = 1 const CMSG_TYPE_PARAM = 1 const CMSG_UNPROTECTED_ATTR_PARAM = 37 const CMSG_USE_SIGNER_INDEX_FLAG = 4 const CMSG_VERIFY_COUNTER_SIGN_ENABLE_STRONG_FLAG = 1 const CMSG_VERIFY_SIGNER_CERT = 2 const CMSG_VERIFY_SIGNER_CHAIN = 3 const CMSG_VERIFY_SIGNER_NULL = 4 const CMSG_VERIFY_SIGNER_PUBKEY = 1 const CMSG_VERSION_PARAM = 30 type CMS_DH_KEY_INFO = TCMS_DH_KEY_INFO type CMS_KEY_INFO = TCMS_KEY_INFO const CM_CMYK_COLOR = 4 const CM_DEVICE_ICM = 1 const CM_GAMMA_RAMP = 2 const CM_IN_GAMUT = 0 const CM_NONE = 0 const CM_OUT_OF_GAMUT = 255 type CM_POWER_DATA = TCM_POWER_DATA type CM_Power_Data_s = TCM_Power_Data_s const CM_SERVICE_MEASURED_BOOT_LOAD = 32 const CM_SERVICE_NETWORK_BOOT_LOAD = 1 const CM_SERVICE_SD_DISK_BOOT_LOAD = 8 const CM_SERVICE_USB3_DISK_BOOT_LOAD = 16 const CM_SERVICE_USB_DISK_BOOT_LOAD = 4 const CM_SERVICE_VALID_PROMOTION_MASK = 255 const CM_SERVICE_VERIFIER_BOOT_LOAD = 64 const CM_SERVICE_VIRTUAL_DISK_BOOT_LOAD = 2 const CM_SERVICE_WINPE_BOOT_LOAD = 128 type COAUTHIDENTITY = TCOAUTHIDENTITY type COAUTHINFO = TCOAUTHINFO type CODEBASEHOLD = TCODEBASEHOLD const CODEPAGE_ENUMPROC = 0 type CODEPAGE_ENUMPROCA = TCODEPAGE_ENUMPROCA type CODEPAGE_ENUMPROCW = TCODEPAGE_ENUMPROCW type COINIT = TCOINIT type COINITBASE = TCOINITBASE type COLOR16 = TCOLOR16 type COLORADJUSTMENT = TCOLORADJUSTMENT const COLORMATCHTOTARGET_EMBEDED = 1 const COLORMGMTCAPS = 121 const COLORMGMTDLGORD = 1551 const COLOROKSTRINGA = "commdlg_ColorOK" const COLOROKSTRINGW = "commdlg_ColorOK" const COLORONCOLOR = 3 type COLORREF = TCOLORREF const COLORRES = 108 const COLOR_3DDKSHADOW = 21 const COLOR_3DFACE = 15 const COLOR_3DHIGHLIGHT = 20 const COLOR_3DHILIGHT = 20 const COLOR_3DLIGHT = 22 const COLOR_3DSHADOW = 16 const COLOR_ACTIVEBORDER = 10 const COLOR_ACTIVECAPTION = 2 const COLOR_ADJ_MIN = -100 const COLOR_APPWORKSPACE = 12 const COLOR_BACKGROUND = 1 const COLOR_BTNFACE = 15 const COLOR_BTNHIGHLIGHT = 20 const COLOR_BTNHILIGHT = 20 const COLOR_BTNSHADOW = 16 const COLOR_BTNTEXT = 18 const COLOR_CAPTIONTEXT = 9 const COLOR_DESKTOP = 1 const COLOR_GRADIENTACTIVECAPTION = 27 const COLOR_GRADIENTINACTIVECAPTION = 28 const COLOR_GRAYTEXT = 17 const COLOR_HIGHLIGHT = 13 const COLOR_HIGHLIGHTTEXT = 14 const COLOR_HOTLIGHT = 26 const COLOR_INACTIVEBORDER = 11 const COLOR_INACTIVECAPTION = 3 const COLOR_INACTIVECAPTIONTEXT = 19 const COLOR_INFOBK = 24 const COLOR_INFOTEXT = 23 const COLOR_MENU = 4 const COLOR_MENUBAR = 30 const COLOR_MENUHILIGHT = 29 const COLOR_MENUTEXT = 7 const COLOR_SCROLLBAR = 0 const COLOR_WINDOW = 5 const COLOR_WINDOWFRAME = 6 const COLOR_WINDOWTEXT = 8 type COMBOBOXINFO = TCOMBOBOXINFO type COMMCONFIG = TCOMMCONFIG const COMMON_LVB_GRID_HORIZONTAL = 1024 const COMMON_LVB_GRID_LVERTICAL = 2048 const COMMON_LVB_GRID_RVERTICAL = 4096 const COMMON_LVB_LEADING_BYTE = 256 const COMMON_LVB_REVERSE_VIDEO = 16384 const COMMON_LVB_SBCSDBCS = 768 const COMMON_LVB_TRAILING_BYTE = 512 const COMMON_LVB_UNDERSCORE = 32768 type COMMPROP = TCOMMPROP type COMMTIMEOUTS = TCOMMTIMEOUTS type COMM_FAULT_OFFSETS = TCOMM_FAULT_OFFSETS type COMPACT_VIRTUAL_DISK_FLAG = TCOMPACT_VIRTUAL_DISK_FLAG type COMPACT_VIRTUAL_DISK_PARAMETERS = TCOMPACT_VIRTUAL_DISK_PARAMETERS type COMPACT_VIRTUAL_DISK_VERSION = TCOMPACT_VIRTUAL_DISK_VERSION type COMPAREITEMSTRUCT = TCOMPAREITEMSTRUCT type COMPARTMENT_ID = TCOMPARTMENT_ID type COMPATIBILITY_CONTEXT_ELEMENT = TCOMPATIBILITY_CONTEXT_ELEMENT const COMPLEXREGION = 3 type COMPONENT_FILTER = TCOMPONENT_FILTER const COMPONENT_KTM = 1 const COMPONENT_VALID_FLAGS = 1 type COMPOSITIONFORM = TCOMPOSITIONFORM const COMPRESSION_ENGINE_HIBER = 512 const COMPRESSION_ENGINE_MAXIMUM = 256 const COMPRESSION_ENGINE_STANDARD = 0 const COMPRESSION_FORMAT_DEFAULT = 1 const COMPRESSION_FORMAT_LZNT1 = 2 const COMPRESSION_FORMAT_NONE = 0 const COMPRESSION_FORMAT_SPARSE = 16384 const COMPRESSION_FORMAT_XPRESS = 3 const COMPRESSION_FORMAT_XPRESS_HUFF = 4 type COMPUTER_NAME_FORMAT = TCOMPUTER_NAME_FORMAT type COMSD = TCOMSD type COMSTAT = TCOMSTAT const COM_RIGHTS_ACTIVATE_LOCAL = 8 const COM_RIGHTS_ACTIVATE_REMOTE = 16 const COM_RIGHTS_EXECUTE = 1 const COM_RIGHTS_EXECUTE_LOCAL = 2 const COM_RIGHTS_EXECUTE_REMOTE = 4 type CONDITION_VARIABLE = TCONDITION_VARIABLE const CONDITION_VARIABLE_INIT = "RTL_CONDITION_VARIABLE_INIT" const CONDITION_VARIABLE_LOCKMODE_SHARED = 1 type CONFIRMSAFETY = TCONFIRMSAFETY const CONFIRMSAFETYACTION_LOADOBJECT = 1 const CONNDLG_CONN_POINT = 2 const CONNDLG_HIDE_BOX = 8 const CONNDLG_NOT_PERSIST = 32 const CONNDLG_PERSIST = 16 const CONNDLG_RO_PATH = 1 const CONNDLG_USE_MRU = 4 type CONNECTDLGSTRUCT = TCONNECTDLGSTRUCT type CONNECTDLGSTRUCTA = TCONNECTDLGSTRUCTA type CONNECTDLGSTRUCTW = TCONNECTDLGSTRUCTW const CONNECT_CMD_SAVECRED = 4096 const CONNECT_COMMANDLINE = 2048 const CONNECT_CRED_RESET = 8192 const CONNECT_CURRENT_MEDIA = 512 const CONNECT_DEFERRED = 1024 const CONNECT_INTERACTIVE = 8 const CONNECT_LOCALDRIVE = 256 const CONNECT_NEED_DRIVE = 32 const CONNECT_PROMPT = 16 const CONNECT_REDIRECT = 128 const CONNECT_REFCOUNT = 64 const CONNECT_RESERVED = 4278190080 const CONNECT_TEMPORARY = 4 const CONNECT_UPDATE_PROFILE = 1 const CONNECT_UPDATE_RECENT = 2 const CONSOLE_CARET_SELECTION = 1 const CONSOLE_CARET_VISIBLE = 2 type CONSOLE_CURSOR_INFO = TCONSOLE_CURSOR_INFO type CONSOLE_FONT_INFO = TCONSOLE_FONT_INFO type CONSOLE_FONT_INFOEX = TCONSOLE_FONT_INFOEX const CONSOLE_FULLSCREEN = 1 const CONSOLE_FULLSCREEN_HARDWARE = 2 const CONSOLE_FULLSCREEN_MODE = 1 type CONSOLE_HISTORY_INFO = TCONSOLE_HISTORY_INFO const CONSOLE_MOUSE_DOWN = 8 const CONSOLE_MOUSE_SELECTION = 4 const CONSOLE_NO_SELECTION = 0 type CONSOLE_READCONSOLE_CONTROL = TCONSOLE_READCONSOLE_CONTROL type CONSOLE_SCREEN_BUFFER_INFO = TCONSOLE_SCREEN_BUFFER_INFO type CONSOLE_SCREEN_BUFFER_INFOEX = TCONSOLE_SCREEN_BUFFER_INFOEX type CONSOLE_SELECTION_INFO = TCONSOLE_SELECTION_INFO const CONSOLE_SELECTION_IN_PROGRESS = 1 const CONSOLE_SELECTION_NOT_EMPTY = 2 const CONSOLE_TEXTMODE_BUFFER = 1 const CONSOLE_WINDOWED_MODE = 2 const CONST = 0 const CONTACTVISUALIZATION_OFF = 0 const CONTACTVISUALIZATION_ON = 1 const CONTACTVISUALIZATION_PRESENTATIONMODE = 2 const CONTAINER_INHERIT_ACE = 2 type CONTEXT = TCONTEXT const CONTEXT_E_FIRST = 2147803136 const CONTEXT_E_LAST = 2147803183 const CONTEXT_OID_CREATE_OBJECT_CONTEXT_FUNC = "ContextDllCreateObjectContext" const CONTEXT_S_FIRST = 319488 const CONTEXT_S_LAST = 319535 const CONTROL_C_EXIT = "STATUS_CONTROL_C_EXIT" type CONVCONTEXT = TCONVCONTEXT const CONVERT10_E_FIRST = 2147746240 const CONVERT10_E_LAST = 2147746255 const CONVERT10_S_FIRST = 262592 const CONVERT10_S_LAST = 262607 type CONVINFO = TCONVINFO type COORD = TCOORD type COPYDATASTRUCT = TCOPYDATASTRUCT type COPYFILE2_COPY_PHASE = TCOPYFILE2_COPY_PHASE type COPYFILE2_EXTENDED_PARAMETERS = TCOPYFILE2_EXTENDED_PARAMETERS type COPYFILE2_MESSAGE = TCOPYFILE2_MESSAGE type COPYFILE2_MESSAGE_ACTION = TCOPYFILE2_MESSAGE_ACTION const COPYFILE2_MESSAGE_COPY_OFFLOAD = 1 type COPYFILE2_MESSAGE_TYPE = TCOPYFILE2_MESSAGE_TYPE const COPYFILE_SIS_FLAGS = 3 const COPYFILE_SIS_LINK = 1 const COPYFILE_SIS_REPLACE = 2 const COPY_FILE_ALLOW_DECRYPTED_DESTINATION = 8 const COPY_FILE_COPY_SYMLINK = 2048 const COPY_FILE_DONT_REQUEST_DEST_WRITE_DAC = 33554432 const COPY_FILE_FAIL_IF_EXISTS = 1 const COPY_FILE_IGNORE_EDP_BLOCK = 4194304 const COPY_FILE_IGNORE_SOURCE_ENCRYPTION = 8388608 const COPY_FILE_NO_BUFFERING = 4096 const COPY_FILE_NO_OFFLOAD = 262144 const COPY_FILE_OPEN_SOURCE_FOR_WRITE = 4 const COPY_FILE_REQUEST_COMPRESSED_TRAFFIC = 268435456 const COPY_FILE_REQUEST_SECURITY_PRIVILEGES = 8192 const COPY_FILE_RESTARTABLE = 2 const COPY_FILE_RESUME_FROM_PAUSE = 16384 const CORE_PARKING_POLICY_CHANGE_IDEAL = 0 const CORE_PARKING_POLICY_CHANGE_MAX = 3 const CORE_PARKING_POLICY_CHANGE_MULTISTEP = 3 const CORE_PARKING_POLICY_CHANGE_ROCKET = 2 const CORE_PARKING_POLICY_CHANGE_SINGLE = 1 type CORE_PRINTER_DRIVER = TCORE_PRINTER_DRIVER type CORE_PRINTER_DRIVERA = TCORE_PRINTER_DRIVERA type CORE_PRINTER_DRIVERW = TCORE_PRINTER_DRIVERW type COSERVERINFO = TCOSERVERINFO type COWAIT_FLAGS = TCOWAIT_FLAGS const CO_E_FIRST = 2147746288 const CO_E_LAST = 2147746303 type CO_MARSHALING_CONTEXT_ATTRIBUTES = TCO_MARSHALING_CONTEXT_ATTRIBUTES type CO_MTA_USAGE_COOKIE = TCO_MTA_USAGE_COOKIE type CO_MTA_USAGE_COOKIE__ = TCO_MTA_USAGE_COOKIE__ const CO_S_FIRST = 262640 const CO_S_LAST = 262655 type CPINFO = TCPINFO type CPINFOEX = TCPINFOEX type CPINFOEXA = TCPINFOEXA type CPINFOEXW = TCPINFOEXW const CPS_CANCEL = 4 const CPS_COMPLETE = 1 const CPS_CONVERT = 2 const CPS_REVERT = 3 type CPS_URLS = TCPS_URLS const CP_ACP = 0 const CP_INSTALLED = 1 const CP_MACCP = 2 const CP_NONE = 0 const CP_OEMCP = 1 const CP_RECTANGLE = 1 const CP_REGION = 2 const CP_SUPPORTED = 2 const CP_SYMBOL = 42 const CP_THREAD_ACP = 3 const CP_UTF7 = 65000 const CP_UTF8 = 65001 const CP_WINANSI = 1004 const CP_WINNEUTRAL = 1004 const CP_WINUNICODE = 1200 const CREATECOLORSPACE_EMBEDED = 1 type CREATEFILE2_EXTENDED_PARAMETERS = TCREATEFILE2_EXTENDED_PARAMETERS type CREATESTRUCT = TCREATESTRUCT type CREATESTRUCTA = TCREATESTRUCTA type CREATESTRUCTW = TCREATESTRUCTW const CREATE_ALWAYS = 2 const CREATE_BOUNDARY_DESCRIPTOR_ADD_APPCONTAINER_SID = 1 const CREATE_BREAKAWAY_FROM_JOB = 16777216 const CREATE_DEFAULT_ERROR_MODE = 67108864 type CREATE_DISK = TCREATE_DISK type CREATE_DISK_GPT = TCREATE_DISK_GPT type CREATE_DISK_MBR = TCREATE_DISK_MBR const CREATE_EVENT_INITIAL_SET = 2 const CREATE_EVENT_MANUAL_RESET = 1 const CREATE_FORCEDOS = 8192 const CREATE_FOR_DIR = 2 const CREATE_FOR_IMPORT = 1 const CREATE_IGNORE_SYSTEM_DEFAULT = 2147483648 const CREATE_MUTEX_INITIAL_OWNER = 1 const CREATE_NEW = 1 const CREATE_NEW_CONSOLE = 16 const CREATE_NEW_PROCESS_GROUP = 512 const CREATE_NO_WINDOW = 134217728 const CREATE_PRESERVE_CODE_AUTHZ_LEVEL = 33554432 const CREATE_PROCESS_DEBUG_EVENT = 3 type CREATE_PROCESS_DEBUG_INFO = TCREATE_PROCESS_DEBUG_INFO const CREATE_PROTECTED_PROCESS = 262144 const CREATE_SECURE_PROCESS = 4194304 const CREATE_SEPARATE_WOW_VDM = 2048 const CREATE_SHARED_WOW_VDM = 4096 const CREATE_SUSPENDED = 4 const CREATE_THREAD_DEBUG_EVENT = 2 type CREATE_THREAD_DEBUG_INFO = TCREATE_THREAD_DEBUG_INFO const CREATE_UNICODE_ENVIRONMENT = 1024 type CREATE_USN_JOURNAL_DATA = TCREATE_USN_JOURNAL_DATA type CREATE_VIRTUAL_DISK_FLAG = TCREATE_VIRTUAL_DISK_FLAG type CREATE_VIRTUAL_DISK_PARAMETERS = TCREATE_VIRTUAL_DISK_PARAMETERS type CREATE_VIRTUAL_DISK_VERSION = TCREATE_VIRTUAL_DISK_VERSION const CREATE_WAITABLE_TIMER_MANUAL_RESET = 1 const CREDUIAPI = "DECLSPEC_IMPORT" type CRGB = TCRGB type CRITICAL_SECTION = TCRITICAL_SECTION type CRITICAL_SECTION_DEBUG = TCRITICAL_SECTION_DEBUG const CRITICAL_SECTION_NO_DEBUG_INFO = 16777216 type CRL_BLOB = TCRL_BLOB type CRL_CONTEXT = TCRL_CONTEXT type CRL_DIST_POINT = TCRL_DIST_POINT type CRL_DIST_POINTS_INFO = TCRL_DIST_POINTS_INFO const CRL_DIST_POINT_ERR_CRL_ISSUER_BIT = 2147483648 const CRL_DIST_POINT_ERR_INDEX_MASK = 127 const CRL_DIST_POINT_ERR_INDEX_SHIFT = 24 const CRL_DIST_POINT_FULL_NAME = 1 const CRL_DIST_POINT_ISSUER_RDN_NAME = 2 type CRL_DIST_POINT_NAME = TCRL_DIST_POINT_NAME const CRL_DIST_POINT_NO_NAME = 0 type CRL_ENTRY = TCRL_ENTRY const CRL_FIND_ANY = 0 const CRL_FIND_EXISTING = 2 const CRL_FIND_ISSUED_BY = 1 const CRL_FIND_ISSUED_BY_AKI_FLAG = 1 const CRL_FIND_ISSUED_BY_BASE_FLAG = 8 const CRL_FIND_ISSUED_BY_DELTA_FLAG = 4 const CRL_FIND_ISSUED_BY_SIGNATURE_FLAG = 2 const CRL_FIND_ISSUED_FOR = 3 type CRL_FIND_ISSUED_FOR_PARA = TCRL_FIND_ISSUED_FOR_PARA const CRL_FIND_ISSUED_FOR_SET_STRONG_PROPERTIES_FLAG = 16 type CRL_INFO = TCRL_INFO type CRL_ISSUING_DIST_POINT = TCRL_ISSUING_DIST_POINT const CRL_REASON_AA_COMPROMISE = 10 const CRL_REASON_AA_COMPROMISE_FLAG = 128 const CRL_REASON_AFFILIATION_CHANGED = 3 const CRL_REASON_AFFILIATION_CHANGED_FLAG = 16 const CRL_REASON_CA_COMPROMISE = 2 const CRL_REASON_CA_COMPROMISE_FLAG = 32 const CRL_REASON_CERTIFICATE_HOLD = 6 const CRL_REASON_CERTIFICATE_HOLD_FLAG = 2 const CRL_REASON_CESSATION_OF_OPERATION = 5 const CRL_REASON_CESSATION_OF_OPERATION_FLAG = 4 const CRL_REASON_KEY_COMPROMISE = 1 const CRL_REASON_KEY_COMPROMISE_FLAG = 64 const CRL_REASON_PRIVILEGE_WITHDRAWN = 9 const CRL_REASON_PRIVILEGE_WITHDRAWN_FLAG = 1 const CRL_REASON_REMOVE_FROM_CRL = 8 const CRL_REASON_SUPERSEDED = 4 const CRL_REASON_SUPERSEDED_FLAG = 8 const CRL_REASON_UNSPECIFIED = 0 const CRL_REASON_UNUSED_FLAG = 128 type CRL_REVOCATION_INFO = TCRL_REVOCATION_INFO const CRL_V1 = 0 const CRL_V2 = 1 const CRM_PROTOCOL_DYNAMIC_MARSHAL_INFO = 2 const CRM_PROTOCOL_EXPLICIT_MARSHAL_ONLY = 1 type CRM_PROTOCOL_ID = TCRM_PROTOCOL_ID const CRM_PROTOCOL_MAXIMUM_OPTION = 3 type CROSS_CERT_DIST_POINTS_INFO = TCROSS_CERT_DIST_POINTS_INFO const CROSS_CERT_DIST_POINT_ERR_INDEX_MASK = 255 const CROSS_CERT_DIST_POINT_ERR_INDEX_SHIFT = 24 const CRYPTNET_CACHED_OCSP_SWITCH_TO_CRL_COUNT_DEFAULT = 50 const CRYPTNET_CACHED_OCSP_SWITCH_TO_CRL_COUNT_VALUE_NAME = "CryptnetCachedOcspSwitchToCrlCount" const CRYPTNET_CRL_BEFORE_OCSP_ENABLE = 4294967295 const CRYPTNET_CRL_PRE_FETCH_DISABLE_INFORMATION_EVENTS_VALUE_NAME = "DisableInformationEvents" const CRYPTNET_CRL_PRE_FETCH_LOG_FILE_NAME_VALUE_NAME = "LogFileName" const CRYPTNET_CRL_PRE_FETCH_MAX_AGE_SECONDS_DEFAULT = 7200 const CRYPTNET_CRL_PRE_FETCH_MAX_AGE_SECONDS_MIN = 300 const CRYPTNET_CRL_PRE_FETCH_MAX_AGE_SECONDS_VALUE_NAME = "MaxAgeSeconds" const CRYPTNET_CRL_PRE_FETCH_MIN_AFTER_NEXT_UPDATE_SECONDS_DEFAULT = 300 const CRYPTNET_CRL_PRE_FETCH_MIN_AFTER_NEXT_UPDATE_SECONDS_VALUE_NAME = "MinAfterNextUpdateSeconds" const CRYPTNET_CRL_PRE_FETCH_MIN_BEFORE_NEXT_UPDATE_SECONDS_DEFAULT = 300 const CRYPTNET_CRL_PRE_FETCH_MIN_BEFORE_NEXT_UPDATE_SECONDS_VALUE_NAME = "MinBeforeNextUpdateSeconds" const CRYPTNET_CRL_PRE_FETCH_PROCESS_NAME_LIST_VALUE_NAME = "ProcessNameList" const CRYPTNET_CRL_PRE_FETCH_PUBLISH_BEFORE_NEXT_UPDATE_SECONDS_DEFAULT = 3600 const CRYPTNET_CRL_PRE_FETCH_PUBLISH_BEFORE_NEXT_UPDATE_SECONDS_VALUE_NAME = "PublishBeforeNextUpdateSeconds" const CRYPTNET_CRL_PRE_FETCH_PUBLISH_RANDOM_INTERVAL_SECONDS_DEFAULT = 300 const CRYPTNET_CRL_PRE_FETCH_PUBLISH_RANDOM_INTERVAL_SECONDS_VALUE_NAME = "PublishRandomIntervalSeconds" const CRYPTNET_CRL_PRE_FETCH_TIMEOUT_SECONDS_DEFAULT = 300 const CRYPTNET_CRL_PRE_FETCH_TIMEOUT_SECONDS_VALUE_NAME = "TimeoutSeconds" const CRYPTNET_CRL_PRE_FETCH_URL_LIST_VALUE_NAME = "PreFetchUrlList" const CRYPTNET_MAX_CACHED_OCSP_PER_CRL_COUNT_DEFAULT = 500 const CRYPTNET_MAX_CACHED_OCSP_PER_CRL_COUNT_VALUE_NAME = "CryptnetMaxCachedOcspPerCrlCount" const CRYPTNET_OCSP_AFTER_CRL_DISABLE = 4294967295 const CRYPTNET_PRE_FETCH_AFTER_CURRENT_TIME_PRE_FETCH_PERIOD_SECONDS_DEFAULT = 1800 const CRYPTNET_PRE_FETCH_AFTER_CURRENT_TIME_PRE_FETCH_PERIOD_SECONDS_VALUE_NAME = "CryptnetPreFetchAfterCurrentTimePreFetchPeriodSeconds" const CRYPTNET_PRE_FETCH_AFTER_PUBLISH_PRE_FETCH_DIVISOR_DEFAULT = 10 const CRYPTNET_PRE_FETCH_AFTER_PUBLISH_PRE_FETCH_DIVISOR_VALUE_NAME = "CryptnetPreFetchAfterPublishPreFetchDivisor" const CRYPTNET_PRE_FETCH_BEFORE_NEXT_UPDATE_PRE_FETCH_DIVISOR_DEFAULT = 20 const CRYPTNET_PRE_FETCH_BEFORE_NEXT_UPDATE_PRE_FETCH_DIVISOR_VALUE_NAME = "CryptnetPreFetchBeforeNextUpdatePreFetchDivisor" const CRYPTNET_PRE_FETCH_MAX_AFTER_NEXT_UPDATE_PRE_FETCH_PERIOD_SECONDS_DEFAULT = 14400 const CRYPTNET_PRE_FETCH_MAX_AFTER_NEXT_UPDATE_PRE_FETCH_PERIOD_SECONDS_VALUE_NAME = "CryptnetPreFetchMaxAfterNextUpdatePreFetchPeriodSeconds" const CRYPTNET_PRE_FETCH_MAX_MAX_AGE_SECONDS_DEFAULT = 1209600 const CRYPTNET_PRE_FETCH_MAX_MAX_AGE_SECONDS_VALUE_NAME = "CryptnetPreFetchMaxMaxAgeSeconds" const CRYPTNET_PRE_FETCH_MIN_AFTER_NEXT_UPDATE_PRE_FETCH_PERIOD_SECONDS_DEFAULT = 1800 const CRYPTNET_PRE_FETCH_MIN_AFTER_NEXT_UPDATE_PRE_FETCH_PERIOD_SECONDS_VALUE_NAME = "CryptnetPreFetchMinAfterNextUpdatePreFetchPeriodSeconds" const CRYPTNET_PRE_FETCH_MIN_BEFORE_NEXT_UPDATE_PRE_FETCH_PERIOD_SECONDS_DEFAULT = 3600 const CRYPTNET_PRE_FETCH_MIN_BEFORE_NEXT_UPDATE_PRE_FETCH_PERIOD_SECONDS_VALUE_NAME = "CryptnetPreFetchMinBeforeNextUpdatePreFetchSeconds" const CRYPTNET_PRE_FETCH_MIN_MAX_AGE_SECONDS_DEFAULT = 3600 const CRYPTNET_PRE_FETCH_MIN_MAX_AGE_SECONDS_VALUE_NAME = "CryptnetPreFetchMinMaxAgeSeconds" const CRYPTNET_PRE_FETCH_MIN_OCSP_VALIDITY_PERIOD_SECONDS_DEFAULT = 1209600 const CRYPTNET_PRE_FETCH_MIN_OCSP_VALIDITY_PERIOD_SECONDS_VALUE_NAME = "CryptnetPreFetchMinOcspValidityPeriodSeconds" const CRYPTNET_PRE_FETCH_RETRIEVAL_TIMEOUT_SECONDS_DEFAULT = 300 const CRYPTNET_PRE_FETCH_RETRIEVAL_TIMEOUT_SECONDS_VALUE_NAME = "CryptnetPreFetchRetrievalTimeoutSeconds" const CRYPTNET_PRE_FETCH_SCAN_AFTER_TRIGGER_DELAY_SECONDS_DEFAULT = 30 const CRYPTNET_PRE_FETCH_SCAN_AFTER_TRIGGER_DELAY_SECONDS_VALUE_NAME = "CryptnetPreFetchScanAfterTriggerDelaySeconds" const CRYPTNET_PRE_FETCH_TRIGGER_DISABLE = 4294967295 const CRYPTNET_PRE_FETCH_TRIGGER_PERIOD_SECONDS_DEFAULT = 600 const CRYPTNET_PRE_FETCH_TRIGGER_PERIOD_SECONDS_VALUE_NAME = "CryptnetPreFetchTriggerPeriodSeconds" const CRYPTNET_PRE_FETCH_VALIDITY_PERIOD_AFTER_NEXT_UPDATE_PRE_FETCH_DIVISOR_DEFAULT = 10 const CRYPTNET_PRE_FETCH_VALIDITY_PERIOD_AFTER_NEXT_UPDATE_PRE_FETCH_DIVISOR_VALUE_NAME = "CryptnetPreFetchValidityPeriodAfterNextUpdatePreFetchDivisor" const CRYPTNET_URL_CACHE_DEFAULT_FLUSH = 0 const CRYPTNET_URL_CACHE_DEFAULT_FLUSH_EXEMPT_SECONDS_DEFAULT = 2419200 const CRYPTNET_URL_CACHE_DEFAULT_FLUSH_EXEMPT_SECONDS_VALUE_NAME = "CryptnetDefaultFlushExemptSeconds" const CRYPTNET_URL_CACHE_DISABLE_FLUSH = 4294967295 type CRYPTNET_URL_CACHE_FLUSH_INFO = TCRYPTNET_URL_CACHE_FLUSH_INFO const CRYPTNET_URL_CACHE_PRE_FETCH_AUTOROOT_CAB = 5 const CRYPTNET_URL_CACHE_PRE_FETCH_BLOB = 1 const CRYPTNET_URL_CACHE_PRE_FETCH_CRL = 2 const CRYPTNET_URL_CACHE_PRE_FETCH_DISALLOWED_CERT_CAB = 6 type CRYPTNET_URL_CACHE_PRE_FETCH_INFO = TCRYPTNET_URL_CACHE_PRE_FETCH_INFO const CRYPTNET_URL_CACHE_PRE_FETCH_NONE = 0 const CRYPTNET_URL_CACHE_PRE_FETCH_OCSP = 3 const CRYPTNET_URL_CACHE_PRE_FETCH_PIN_RULES_CAB = 7 const CRYPTNET_URL_CACHE_RESPONSE_HTTP = 1 type CRYPTNET_URL_CACHE_RESPONSE_INFO = TCRYPTNET_URL_CACHE_RESPONSE_INFO const CRYPTNET_URL_CACHE_RESPONSE_NONE = 0 const CRYPTNET_URL_CACHE_RESPONSE_VALIDATED = 32768 const CRYPTPROTECTMEMORY_BLOCK_SIZE = 16 const CRYPTPROTECTMEMORY_CROSS_PROCESS = 1 const CRYPTPROTECTMEMORY_SAME_LOGON = 2 const CRYPTPROTECTMEMORY_SAME_PROCESS = 0 const CRYPTPROTECT_AUDIT = 16 const CRYPTPROTECT_CRED_REGENERATE = 128 const CRYPTPROTECT_CRED_SYNC = 8 const CRYPTPROTECT_FIRST_RESERVED_FLAGVAL = 268435455 const CRYPTPROTECT_LAST_RESERVED_FLAGVAL = 4294967295 const CRYPTPROTECT_LOCAL_MACHINE = 4 const CRYPTPROTECT_NO_RECOVERY = 32 type CRYPTPROTECT_PROMPTSTRUCT = TCRYPTPROTECT_PROMPTSTRUCT const CRYPTPROTECT_PROMPT_ON_PROTECT = 2 const CRYPTPROTECT_PROMPT_ON_UNPROTECT = 1 const CRYPTPROTECT_PROMPT_REQUIRE_STRONG = 16 const CRYPTPROTECT_PROMPT_RESERVED = 4 const CRYPTPROTECT_PROMPT_STRONG = 8 const CRYPTPROTECT_UI_FORBIDDEN = 1 const CRYPTPROTECT_VERIFY_PROTECTION = 64 type CRYPT_3DES_KEY_STATE = TCRYPT_3DES_KEY_STATE const CRYPT_ACCUMULATIVE_TIMEOUT = 2048 const CRYPT_ACQUIRE_ALLOW_NCRYPT_KEY_FLAG = 65536 const CRYPT_ACQUIRE_CACHE_FLAG = 1 const CRYPT_ACQUIRE_COMPARE_KEY_FLAG = 4 const CRYPT_ACQUIRE_NCRYPT_KEY_FLAGS_MASK = 458752 const CRYPT_ACQUIRE_NO_HEALING = 8 const CRYPT_ACQUIRE_ONLY_NCRYPT_KEY_FLAG = 262144 const CRYPT_ACQUIRE_PREFER_NCRYPT_KEY_FLAG = 131072 const CRYPT_ACQUIRE_SILENT_FLAG = 64 const CRYPT_ACQUIRE_USE_PROV_INFO_FLAG = 2 const CRYPT_ACQUIRE_WINDOW_HANDLE_FLAG = 128 type CRYPT_AES_128_KEY_STATE = TCRYPT_AES_128_KEY_STATE type CRYPT_AES_256_KEY_STATE = TCRYPT_AES_256_KEY_STATE const CRYPT_AIA_RETRIEVAL = 524288 type CRYPT_ALGORITHM_IDENTIFIER = TCRYPT_ALGORITHM_IDENTIFIER const CRYPT_ALL_FUNCTIONS = 1 const CRYPT_ALL_PROVIDERS = 2 const CRYPT_ANY = 4 const CRYPT_ARCHIVABLE = 16384 const CRYPT_ARCHIVE = 256 const CRYPT_ASN_ENCODING = 1 const CRYPT_ASYNC_RETRIEVAL = 16 type CRYPT_ASYNC_RETRIEVAL_COMPLETION = TCRYPT_ASYNC_RETRIEVAL_COMPLETION type CRYPT_ATTRIBUTE = TCRYPT_ATTRIBUTE type CRYPT_ATTRIBUTES = TCRYPT_ATTRIBUTES type CRYPT_ATTRIBUTE_TYPE_VALUE = TCRYPT_ATTRIBUTE_TYPE_VALUE type CRYPT_ATTR_BLOB = TCRYPT_ATTR_BLOB type CRYPT_BIT_BLOB = TCRYPT_BIT_BLOB type CRYPT_BLOB_ARRAY = TCRYPT_BLOB_ARRAY const CRYPT_BLOB_VER3 = 128 const CRYPT_CACHE_ONLY_RETRIEVAL = 2 const CRYPT_CHECK_FRESHNESS_TIME_VALIDITY = 1024 type CRYPT_CONTENT_INFO = TCRYPT_CONTENT_INFO type CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY = TCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY type CRYPT_CONTEXTS = TCRYPT_CONTEXTS type CRYPT_CONTEXT_CONFIG = TCRYPT_CONTEXT_CONFIG type CRYPT_CONTEXT_FUNCTIONS = TCRYPT_CONTEXT_FUNCTIONS type CRYPT_CONTEXT_FUNCTION_CONFIG = TCRYPT_CONTEXT_FUNCTION_CONFIG type CRYPT_CONTEXT_FUNCTION_PROVIDERS = TCRYPT_CONTEXT_FUNCTION_PROVIDERS const CRYPT_CREATE_IV = 512 const CRYPT_CREATE_NEW_FLUSH_ENTRY = 268435456 const CRYPT_CREATE_SALT = 4 type CRYPT_CREDENTIALS = TCRYPT_CREDENTIALS type CRYPT_CSP_PROVIDER = TCRYPT_CSP_PROVIDER type CRYPT_DATA_BLOB = TCRYPT_DATA_BLOB const CRYPT_DATA_KEY = 2048 const CRYPT_DECODE_ALLOC_FLAG = 32768 const CRYPT_DECODE_ENABLE_IA5CONVERSION_FLAG = 100663296 const CRYPT_DECODE_ENABLE_PUNYCODE_FLAG = 33554432 const CRYPT_DECODE_ENABLE_UTF8PERCENT_FLAG = 67108864 const CRYPT_DECODE_NOCOPY_FLAG = 1 const CRYPT_DECODE_NO_SIGNATURE_BYTE_REVERSAL_FLAG = 8 type CRYPT_DECODE_PARA = TCRYPT_DECODE_PARA const CRYPT_DECODE_SHARE_OID_STRING_FLAG = 4 const CRYPT_DECODE_TO_BE_SIGNED_FLAG = 2 const CRYPT_DECRYPT = 2 type CRYPT_DECRYPT_MESSAGE_PARA = TCRYPT_DECRYPT_MESSAGE_PARA const CRYPT_DECRYPT_RSA_NO_PADDING_CHECK = 32 const CRYPT_DEFAULT_CONTAINER_OPTIONAL = 128 const CRYPT_DEFAULT_CONTEXT = "Default" const CRYPT_DEFAULT_CONTEXT_AUTO_RELEASE_FLAG = 1 const CRYPT_DEFAULT_CONTEXT_CERT_SIGN_OID = 1 const CRYPT_DEFAULT_CONTEXT_MULTI_CERT_SIGN_OID = 2 type CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA = TCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA const CRYPT_DEFAULT_CONTEXT_PROCESS_FLAG = 2 const CRYPT_DEFAULT_OID = "DEFAULT" const CRYPT_DELETEKEYSET = 16 const CRYPT_DELETE_DEFAULT = 4 const CRYPT_DELETE_KEYSET = 16 type CRYPT_DER_BLOB = TCRYPT_DER_BLOB const CRYPT_DESTROYKEY = 4 type CRYPT_DES_KEY_STATE = TCRYPT_DES_KEY_STATE type CRYPT_DIGEST_BLOB = TCRYPT_DIGEST_BLOB const CRYPT_DOMAIN = 2 const CRYPT_DONT_CACHE_RESULT = 8 const CRYPT_DONT_CHECK_TIME_VALIDITY = 512 const CRYPT_DONT_VERIFY_SIGNATURE = 256 type CRYPT_ECC_CMS_SHARED_INFO = TCRYPT_ECC_CMS_SHARED_INFO const CRYPT_ECC_CMS_SHARED_INFO_SUPPPUBINFO_BYTE_LENGTH = 4 type CRYPT_ECC_PRIVATE_KEY_INFO = TCRYPT_ECC_PRIVATE_KEY_INFO const CRYPT_ECC_PRIVATE_KEY_INFO_v1 = 1 const CRYPT_ENABLE_FILE_RETRIEVAL = 134217728 const CRYPT_ENABLE_SSL_REVOCATION_RETRIEVAL = 8388608 const CRYPT_ENCODE_ALLOC_FLAG = 32768 const CRYPT_ENCODE_DECODE_NONE = 0 const CRYPT_ENCODE_ENABLE_IA5CONVERSION_FLAG = 393216 const CRYPT_ENCODE_ENABLE_PUNYCODE_FLAG = 131072 const CRYPT_ENCODE_ENABLE_UTF8PERCENT_FLAG = 262144 const CRYPT_ENCODE_NO_SIGNATURE_BYTE_REVERSAL_FLAG = 8 type CRYPT_ENCODE_PARA = TCRYPT_ENCODE_PARA const CRYPT_ENCRYPT = 1 type CRYPT_ENCRYPTED_PRIVATE_KEY_INFO = TCRYPT_ENCRYPTED_PRIVATE_KEY_INFO const CRYPT_ENCRYPT_ALG_OID_GROUP_ID = 2 type CRYPT_ENCRYPT_MESSAGE_PARA = TCRYPT_ENCRYPT_MESSAGE_PARA const CRYPT_ENHKEY_USAGE_OID_GROUP_ID = 7 type CRYPT_ENROLLMENT_NAME_VALUE_PAIR = TCRYPT_ENROLLMENT_NAME_VALUE_PAIR const CRYPT_EXCLUSIVE = 1 const CRYPT_EXPORT = 4 const CRYPT_EXPORTABLE = 1 const CRYPT_EXPORT_KEY = 64 const CRYPT_EXT_OR_ATTR_OID_GROUP_ID = 6 const CRYPT_FAILED = 0 const CRYPT_FASTSGC = 2 const CRYPT_FIND_MACHINE_KEYSET_FLAG = 2 const CRYPT_FIND_SILENT_KEYSET_FLAG = 64 const CRYPT_FIND_USER_KEYSET_FLAG = 1 const CRYPT_FIRST = 1 const CRYPT_FIRST_ALG_OID_GROUP_ID = 1 const CRYPT_FLAG_IPSEC = 16 const CRYPT_FLAG_PCT1 = 1 const CRYPT_FLAG_SIGNING = 32 const CRYPT_FLAG_SSL2 = 2 const CRYPT_FLAG_SSL3 = 4 const CRYPT_FLAG_TLS1 = 8 const CRYPT_FORCE_KEY_PROTECTION_HIGH = 32768 const CRYPT_FORMAT_COMMA = 4096 const CRYPT_FORMAT_CRLF = 512 const CRYPT_FORMAT_OID = 4 const CRYPT_FORMAT_RDN_CRLF = 512 const CRYPT_FORMAT_RDN_REVERSE = 2048 const CRYPT_FORMAT_RDN_SEMICOLON = 256 const CRYPT_FORMAT_RDN_UNQUOTE = 1024 const CRYPT_FORMAT_SEMICOLON = 256 const CRYPT_FORMAT_SIMPLE = 1 const CRYPT_FORMAT_STR_MULTI_LINE = 1 const CRYPT_FORMAT_STR_NO_HEX = 16 const CRYPT_FORMAT_X509 = 2 const CRYPT_GET_INSTALLED_OID_FUNC_FLAG = 1 type CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO = TCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO const CRYPT_GET_URL_FROM_AUTH_ATTRIBUTE = 8 const CRYPT_GET_URL_FROM_EXTENSION = 2 const CRYPT_GET_URL_FROM_PROPERTY = 1 const CRYPT_GET_URL_FROM_UNAUTH_ATTRIBUTE = 4 const CRYPT_HASH_ALG_OID_GROUP_ID = 1 type CRYPT_HASH_BLOB = TCRYPT_HASH_BLOB type CRYPT_HASH_INFO = TCRYPT_HASH_INFO type CRYPT_HASH_MESSAGE_PARA = TCRYPT_HASH_MESSAGE_PARA const CRYPT_HTTP_POST_RETRIEVAL = 1048576 type CRYPT_IMAGE_REF = TCRYPT_IMAGE_REF type CRYPT_IMAGE_REG = TCRYPT_IMAGE_REG const CRYPT_IMPL_HARDWARE = 1 const CRYPT_IMPL_MIXED = 3 const CRYPT_IMPL_REMOVABLE = 8 const CRYPT_IMPL_SOFTWARE = 2 const CRYPT_IMPL_UNKNOWN = 4 const CRYPT_IMPORT_KEY = 128 const CRYPT_INITIATOR = 64 const CRYPT_INSTALL_OID_FUNC_BEFORE_FLAG = 1 const CRYPT_INSTALL_OID_INFO_BEFORE_FLAG = 1 type CRYPT_INTEGER_BLOB = TCRYPT_INTEGER_BLOB type CRYPT_INTERFACE_REG = TCRYPT_INTERFACE_REG const CRYPT_IPSEC_HMAC_KEY = 256 const CRYPT_KDF_OID_GROUP_ID = 10 const CRYPT_KEEP_TIME_VALID = 128 const CRYPT_KEK = 1024 const CRYPT_KEYID_ALLOC_FLAG = 32768 const CRYPT_KEYID_DELETE_FLAG = 16 const CRYPT_KEYID_MACHINE_FLAG = 32 const CRYPT_KEYID_SET_NEW_FLAG = 8192 type CRYPT_KEY_PROV_INFO = TCRYPT_KEY_PROV_INFO type CRYPT_KEY_PROV_PARAM = TCRYPT_KEY_PROV_PARAM type CRYPT_KEY_SIGN_MESSAGE_PARA = TCRYPT_KEY_SIGN_MESSAGE_PARA type CRYPT_KEY_VERIFY_MESSAGE_PARA = TCRYPT_KEY_VERIFY_MESSAGE_PARA const CRYPT_KM = 2 const CRYPT_LAST_ALG_OID_GROUP_ID = 4 const CRYPT_LAST_OID_GROUP_ID = 10 const CRYPT_LDAP_AREC_EXCLUSIVE_RETRIEVAL = 262144 const CRYPT_LDAP_INSERT_ENTRY_ATTRIBUTE = 32768 const CRYPT_LDAP_SCOPE_BASE_ONLY_RETRIEVAL = 8192 const CRYPT_LDAP_SIGN_RETRIEVAL = 65536 const CRYPT_LITTLE_ENDIAN = 1 const CRYPT_LOCAL = 1 const CRYPT_LOCALIZED_NAME_ENCODING_TYPE = 0 const CRYPT_LOCALIZED_NAME_OID = "LocalizedNames" const CRYPT_MAC = 32 const CRYPT_MACHINE_DEFAULT = 1 const CRYPT_MACHINE_KEYSET = 32 type CRYPT_MASK_GEN_ALGORITHM = TCRYPT_MASK_GEN_ALGORITHM const CRYPT_MATCH_ANY_ENCODING_TYPE = 4294967295 const CRYPT_MESSAGE_BARE_CONTENT_OUT_FLAG = 1 const CRYPT_MESSAGE_ENCAPSULATED_CONTENT_OUT_FLAG = 2 const CRYPT_MESSAGE_KEYID_RECIPIENT_FLAG = 4 const CRYPT_MESSAGE_KEYID_SIGNER_FLAG = 4 const CRYPT_MESSAGE_SILENT_KEYSET_FLAG = 64 const CRYPT_MIN_DEPENDENCIES = 1 const CRYPT_MM = 3 const CRYPT_MODE_CBC = 1 const CRYPT_MODE_CBCI = 6 const CRYPT_MODE_CBCOFM = 9 const CRYPT_MODE_CBCOFMI = 10 const CRYPT_MODE_CFB = 4 const CRYPT_MODE_CFBP = 7 const CRYPT_MODE_CTS = 5 const CRYPT_MODE_ECB = 2 const CRYPT_MODE_OFB = 3 const CRYPT_MODE_OFBP = 8 const CRYPT_NDR_ENCODING = 2 const CRYPT_NEWKEYSET = 8 const CRYPT_NEXT = 2 const CRYPT_NOHASHOID = 1 const CRYPT_NOT_MODIFIED_RETRIEVAL = 4194304 const CRYPT_NO_AUTH_RETRIEVAL = 131072 const CRYPT_NO_OCSP_FAILOVER_TO_CRL_RETRIEVAL = 33554432 const CRYPT_NO_SALT = 16 const CRYPT_OAEP = 64 const CRYPT_OBJECT_LOCATOR_FIRST_RESERVED_USER_NAME_TYPE = 33 const CRYPT_OBJECT_LOCATOR_LAST_RESERVED_NAME_TYPE = 32 const CRYPT_OBJECT_LOCATOR_LAST_RESERVED_USER_NAME_TYPE = 65535 type CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE = TCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE const CRYPT_OBJECT_LOCATOR_RELEASE_DLL_UNLOAD = 4 const CRYPT_OBJECT_LOCATOR_RELEASE_PROCESS_EXIT = 3 const CRYPT_OBJECT_LOCATOR_RELEASE_SERVICE_STOP = 2 const CRYPT_OBJECT_LOCATOR_RELEASE_SYSTEM_SHUTDOWN = 1 const CRYPT_OBJECT_LOCATOR_SPN_NAME_TYPE = 1 type CRYPT_OBJID_BLOB = TCRYPT_OBJID_BLOB type CRYPT_OBJID_TABLE = TCRYPT_OBJID_TABLE const CRYPT_OCSP_ONLY_RETRIEVAL = 16777216 const CRYPT_OFFLINE_CHECK_RETRIEVAL = 16384 const CRYPT_OID_CREATE_COM_OBJECT_FUNC = "CryptDllCreateCOMObject" const CRYPT_OID_DECODE_OBJECT_EX_FUNC = "CryptDllDecodeObjectEx" const CRYPT_OID_DECODE_OBJECT_FUNC = "CryptDllDecodeObject" const CRYPT_OID_DISABLE_SEARCH_DS_FLAG = 2147483648 const CRYPT_OID_ENCODE_OBJECT_EX_FUNC = "CryptDllEncodeObjectEx" const CRYPT_OID_ENCODE_OBJECT_FUNC = "CryptDllEncodeObject" const CRYPT_OID_ENUM_PHYSICAL_STORE_FUNC = "CertDllEnumPhysicalStore" const CRYPT_OID_ENUM_SYSTEM_STORE_FUNC = "CertDllEnumSystemStore" const CRYPT_OID_EXPORT_PRIVATE_KEY_INFO_FUNC = "CryptDllExportPrivateKeyInfoEx" const CRYPT_OID_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC = "CryptDllExportPublicKeyInfoEx2" const CRYPT_OID_EXPORT_PUBLIC_KEY_INFO_FROM_BCRYPT_HANDLE_FUNC = "CryptDllExportPublicKeyInfoFromBCryptKeyHandle" const CRYPT_OID_EXPORT_PUBLIC_KEY_INFO_FUNC = "CryptDllExportPublicKeyInfoEx" const CRYPT_OID_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC = "CryptDllExtractEncodedSignatureParameters" const CRYPT_OID_FIND_LOCALIZED_NAME_FUNC = "CryptDllFindLocalizedName" const CRYPT_OID_FIND_OID_INFO_FUNC = "CryptDllFindOIDInfo" const CRYPT_OID_FORMAT_OBJECT_FUNC = "CryptDllFormatObject" type CRYPT_OID_FUNC_ENTRY = TCRYPT_OID_FUNC_ENTRY const CRYPT_OID_IMPORT_PRIVATE_KEY_INFO_FUNC = "CryptDllImportPrivateKeyInfoEx" const CRYPT_OID_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC = "CryptDllImportPublicKeyInfoEx2" const CRYPT_OID_IMPORT_PUBLIC_KEY_INFO_FUNC = "CryptDllImportPublicKeyInfoEx" type CRYPT_OID_INFO = TCRYPT_OID_INFO const CRYPT_OID_INFO_ALGID_KEY = 3 const CRYPT_OID_INFO_CNG_ALGID_KEY = 5 const CRYPT_OID_INFO_CNG_SIGN_KEY = 6 const CRYPT_OID_INFO_ECC_PARAMETERS_ALGORITHM = "CryptOIDInfoECCParameters" const CRYPT_OID_INFO_ECC_WRAP_PARAMETERS_ALGORITHM = "CryptOIDInfoECCWrapParameters" const CRYPT_OID_INFO_HASH_PARAMETERS_ALGORITHM = "CryptOIDInfoHashParameters" const CRYPT_OID_INFO_MGF1_PARAMETERS_ALGORITHM = "CryptOIDInfoMgf1Parameters" const CRYPT_OID_INFO_NAME_KEY = 2 const CRYPT_OID_INFO_NO_PARAMETERS_ALGORITHM = "CryptOIDInfoNoParameters" const CRYPT_OID_INFO_NO_SIGN_ALGORITHM = "CryptOIDInfoNoSign" const CRYPT_OID_INFO_OAEP_PARAMETERS_ALGORITHM = "CryptOIDInfoOAEPParameters" const CRYPT_OID_INFO_OID_GROUP_BIT_LEN_MASK = 268369920 const CRYPT_OID_INFO_OID_GROUP_BIT_LEN_SHIFT = 16 const CRYPT_OID_INFO_OID_KEY = 1 const CRYPT_OID_INFO_OID_KEY_FLAGS_MASK = 4294901760 const CRYPT_OID_INFO_PUBKEY_ENCRYPT_KEY_FLAG = 1073741824 const CRYPT_OID_INFO_PUBKEY_SIGN_KEY_FLAG = 2147483648 const CRYPT_OID_INFO_SIGN_KEY = 4 const CRYPT_OID_INHIBIT_SIGNATURE_FORMAT_FLAG = 1 const CRYPT_OID_NO_NULL_ALGORITHM_PARA_FLAG = 4 const CRYPT_OID_OPEN_STORE_PROV_FUNC = "CertDllOpenStoreProv" const CRYPT_OID_OPEN_SYSTEM_STORE_PROV_FUNC = "CertDllOpenSystemStoreProv" const CRYPT_OID_PUBKEY_ENCRYPT_ONLY_FLAG = 1073741824 const CRYPT_OID_PUBKEY_SIGN_ONLY_FLAG = 2147483648 const CRYPT_OID_REGISTER_PHYSICAL_STORE_FUNC = "CertDllRegisterPhysicalStore" const CRYPT_OID_REGISTER_SYSTEM_STORE_FUNC = "CertDllRegisterSystemStore" const CRYPT_OID_REGPATH = "Software\\\\Microsoft\\\\Cryptography\\\\OID" const CRYPT_OID_REG_DLL_VALUE_NAME = "Dll" const CRYPT_OID_REG_ENCODING_TYPE_PREFIX = "EncodingType " const CRYPT_OID_REG_FLAGS_VALUE_NAME = "CryptFlags" const CRYPT_OID_REG_FUNC_NAME_VALUE_NAME = "FuncName" const CRYPT_OID_REG_FUNC_NAME_VALUE_NAME_A = "FuncName" const CRYPT_OID_SIGN_AND_ENCODE_HASH_FUNC = "CryptDllSignAndEncodeHash" const CRYPT_OID_SYSTEM_STORE_LOCATION_VALUE_NAME = "SystemStoreLocation" const CRYPT_OID_UNREGISTER_PHYSICAL_STORE_FUNC = "CertDllUnregisterPhysicalStore" const CRYPT_OID_UNREGISTER_SYSTEM_STORE_FUNC = "CertDllUnregisterSystemStore" const CRYPT_OID_USE_CURVE_NAME_FOR_ENCODE_FLAG = 536870912 const CRYPT_OID_USE_CURVE_PARAMETERS_FOR_ENCODE_FLAG = 268435456 const CRYPT_OID_USE_PUBKEY_PARA_FOR_PKCS7_FLAG = 2 const CRYPT_OID_VERIFY_CERTIFICATE_CHAIN_POLICY_FUNC = "CertDllVerifyCertificateChainPolicy" const CRYPT_OID_VERIFY_CTL_USAGE_FUNC = "CertDllVerifyCTLUsage" const CRYPT_OID_VERIFY_ENCODED_SIGNATURE_FUNC = "CryptDllVerifyEncodedSignature" const CRYPT_OID_VERIFY_REVOCATION_FUNC = "CertDllVerifyRevocation" const CRYPT_ONLINE = 128 const CRYPT_OVERRIDE = 65536 const CRYPT_OVERWRITE = 1 const CRYPT_OWF_REPL_LM_HASH = 1 type CRYPT_PASSWORD_CREDENTIALS = TCRYPT_PASSWORD_CREDENTIALS type CRYPT_PASSWORD_CREDENTIALSA = TCRYPT_PASSWORD_CREDENTIALSA type CRYPT_PASSWORD_CREDENTIALSW = TCRYPT_PASSWORD_CREDENTIALSW type CRYPT_PKCS12_PBE_PARAMS = TCRYPT_PKCS12_PBE_PARAMS type CRYPT_PKCS8_EXPORT_PARAMS = TCRYPT_PKCS8_EXPORT_PARAMS type CRYPT_PKCS8_IMPORT_PARAMS = TCRYPT_PKCS8_IMPORT_PARAMS const CRYPT_POLICY_OID_GROUP_ID = 8 const CRYPT_PREGEN = 64 const CRYPT_PRIORITY_BOTTOM = 4294967295 const CRYPT_PRIORITY_TOP = 0 type CRYPT_PRIVATE_KEY_BLOB_AND_PARAMS = TCRYPT_PRIVATE_KEY_BLOB_AND_PARAMS type CRYPT_PRIVATE_KEY_INFO = TCRYPT_PRIVATE_KEY_INFO const CRYPT_PROCESS_ISOLATE = 65536 type CRYPT_PROPERTY_REF = TCRYPT_PROPERTY_REF type CRYPT_PROVIDERS = TCRYPT_PROVIDERS type CRYPT_PROVIDER_REF = TCRYPT_PROVIDER_REF type CRYPT_PROVIDER_REFS = TCRYPT_PROVIDER_REFS type CRYPT_PROVIDER_REG = TCRYPT_PROVIDER_REG const CRYPT_PROXY_CACHE_RETRIEVAL = 2097152 type CRYPT_PSOURCE_ALGORITHM = TCRYPT_PSOURCE_ALGORITHM const CRYPT_PSTORE = 2 const CRYPT_PUBKEY_ALG_OID_GROUP_ID = 3 const CRYPT_RANDOM_QUERY_STRING_RETRIEVAL = 67108864 const CRYPT_RC2_128BIT_VERSION = 58 const CRYPT_RC2_40BIT_VERSION = 160 const CRYPT_RC2_56BIT_VERSION = 52 const CRYPT_RC2_64BIT_VERSION = 120 type CRYPT_RC2_CBC_PARAMETERS = TCRYPT_RC2_CBC_PARAMETERS type CRYPT_RC4_KEY_STATE = TCRYPT_RC4_KEY_STATE const CRYPT_RDN_ATTR_OID_GROUP_ID = 5 const CRYPT_READ = 8 const CRYPT_RECIPIENT = 16 const CRYPT_REGISTER_FIRST_INDEX = 0 const CRYPT_REGISTER_LAST_INDEX = 4294967295 type CRYPT_RETRIEVE_AUX_INFO = TCRYPT_RETRIEVE_AUX_INFO const CRYPT_RETRIEVE_MAX_ERROR_CONTENT_LENGTH = 4096 const CRYPT_RETRIEVE_MULTIPLE_OBJECTS = 1 type CRYPT_RSAES_OAEP_PARAMETERS = TCRYPT_RSAES_OAEP_PARAMETERS type CRYPT_RSA_SSA_PSS_PARAMETERS = TCRYPT_RSA_SSA_PSS_PARAMETERS const CRYPT_SECRETDIGEST = 1 const CRYPT_SEC_DESCR = 1 type CRYPT_SEQUENCE_OF_ANY = TCRYPT_SEQUENCE_OF_ANY const CRYPT_SERVER = 1024 const CRYPT_SF = 256 const CRYPT_SGC = 1 const CRYPT_SGCKEY = 8192 const CRYPT_SGC_ENUM = 4 const CRYPT_SIGN_ALG_OID_GROUP_ID = 4 type CRYPT_SIGN_MESSAGE_PARA = TCRYPT_SIGN_MESSAGE_PARA const CRYPT_SILENT = 64 type CRYPT_SMART_CARD_ROOT_INFO = TCRYPT_SMART_CARD_ROOT_INFO type CRYPT_SMIME_CAPABILITIES = TCRYPT_SMIME_CAPABILITIES type CRYPT_SMIME_CAPABILITY = TCRYPT_SMIME_CAPABILITY const CRYPT_SORTED_CTL_ENCODE_HASHED_SUBJECT_IDENTIFIER_FLAG = 65536 const CRYPT_SSL2_FALLBACK = 2 const CRYPT_STICKY_CACHE_RETRIEVAL = 4096 const CRYPT_STRING_ANY = 7 const CRYPT_STRING_BASE64 = 1 const CRYPT_STRING_BASE64HEADER = 0 const CRYPT_STRING_BASE64REQUESTHEADER = 3 const CRYPT_STRING_BASE64URI = 13 const CRYPT_STRING_BASE64X509CRLHEADER = 9 const CRYPT_STRING_BASE64_ANY = 6 const CRYPT_STRING_BINARY = 2 const CRYPT_STRING_ENCODEMASK = 255 const CRYPT_STRING_HASHDATA = 268435456 const CRYPT_STRING_HEX = 4 const CRYPT_STRING_HEXADDR = 10 const CRYPT_STRING_HEXASCII = 5 const CRYPT_STRING_HEXASCIIADDR = 11 const CRYPT_STRING_HEXRAW = 12 const CRYPT_STRING_HEX_ANY = 8 const CRYPT_STRING_NOCR = 2147483648 const CRYPT_STRING_NOCRLF = 1073741824 const CRYPT_STRING_PERCENTESCAPE = 134217728 const CRYPT_STRING_RESERVED100 = 256 const CRYPT_STRING_RESERVED200 = 512 const CRYPT_STRING_STRICT = 536870912 const CRYPT_SUCCEED = 1 const CRYPT_TEMPLATE_OID_GROUP_ID = 9 type CRYPT_TIMESTAMP_ACCURACY = TCRYPT_TIMESTAMP_ACCURACY type CRYPT_TIMESTAMP_CONTEXT = TCRYPT_TIMESTAMP_CONTEXT type CRYPT_TIMESTAMP_INFO = TCRYPT_TIMESTAMP_INFO type CRYPT_TIMESTAMP_PARA = TCRYPT_TIMESTAMP_PARA type CRYPT_TIMESTAMP_REQUEST = TCRYPT_TIMESTAMP_REQUEST type CRYPT_TIMESTAMP_RESPONSE = TCRYPT_TIMESTAMP_RESPONSE type CRYPT_TIME_STAMP_REQUEST_INFO = TCRYPT_TIME_STAMP_REQUEST_INFO const CRYPT_TYPE2_FORMAT = 2 type CRYPT_UINT_BLOB = TCRYPT_UINT_BLOB const CRYPT_UI_PROMPT = 4 const CRYPT_UM = 1 const CRYPT_UNICODE_NAME_DECODE_DISABLE_IE4_UTF8_FLAG = 16777216 const CRYPT_UNICODE_NAME_ENCODE_DISABLE_CHECK_TYPE_FLAG = 1073741824 const CRYPT_UNICODE_NAME_ENCODE_ENABLE_T61_UNICODE_FLAG = 2147483648 const CRYPT_UNICODE_NAME_ENCODE_ENABLE_UTF8_UNICODE_FLAG = 536870912 const CRYPT_UNICODE_NAME_ENCODE_FORCE_UTF8_UNICODE_FLAG = 268435456 const CRYPT_UPDATE_KEY = 8 type CRYPT_URL_ARRAY = TCRYPT_URL_ARRAY type CRYPT_URL_INFO = TCRYPT_URL_INFO const CRYPT_USERDATA = 1 const CRYPT_USER_DEFAULT = 2 const CRYPT_USER_KEYSET = 4096 const CRYPT_USER_PROTECTED = 2 const CRYPT_USER_PROTECTED_STRONG = 1048576 const CRYPT_VERIFYCONTEXT = 4026531840 const CRYPT_VERIFY_CERT_SIGN_DISABLE_MD2_MD4_FLAG = 1 const CRYPT_VERIFY_CERT_SIGN_ISSUER_CERT = 2 const CRYPT_VERIFY_CERT_SIGN_ISSUER_CHAIN = 3 const CRYPT_VERIFY_CERT_SIGN_ISSUER_NULL = 4 const CRYPT_VERIFY_CERT_SIGN_ISSUER_PUBKEY = 1 const CRYPT_VERIFY_CERT_SIGN_RETURN_STRONG_PROPERTIES_FLAG = 4 const CRYPT_VERIFY_CERT_SIGN_SET_STRONG_PROPERTIES_FLAG = 2 type CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO = TCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO const CRYPT_VERIFY_CERT_SIGN_SUBJECT_BLOB = 1 const CRYPT_VERIFY_CERT_SIGN_SUBJECT_CERT = 2 const CRYPT_VERIFY_CERT_SIGN_SUBJECT_CRL = 3 const CRYPT_VERIFY_CERT_SIGN_SUBJECT_OCSP_BASIC_SIGNED_RESPONSE = 4 const CRYPT_VERIFY_CONTEXT_SIGNATURE = 32 const CRYPT_VERIFY_DATA_HASH = 64 type CRYPT_VERIFY_MESSAGE_PARA = TCRYPT_VERIFY_MESSAGE_PARA const CRYPT_VOLATILE = 4096 const CRYPT_WIRE_ONLY_RETRIEVAL = 4 const CRYPT_WRITE = 16 const CRYPT_X931_FORMAT = 4 const CRYPT_X942_COUNTER_BYTE_LENGTH = 4 const CRYPT_X942_KEY_LENGTH_BYTE_LENGTH = 4 type CRYPT_X942_OTHER_INFO = TCRYPT_X942_OTHER_INFO const CRYPT_X942_PUB_INFO_BYTE_LENGTH = 64 const CRYPT_Y_ONLY = 1 const CSOUND_SYSTEM = 16 type CSPLATFORM = TCSPLATFORM const CSTR_EQUAL = 2 const CSTR_GREATER_THAN = 3 const CSTR_LESS_THAN = 1 const CSV_INVALID_DEVICE_NUMBER = 4294967295 type CSV_NAMESPACE_INFO = TCSV_NAMESPACE_INFO const CSV_NAMESPACE_INFO_V1 = 0 const CS_BYTEALIGNCLIENT = 4096 const CS_BYTEALIGNWINDOW = 8192 const CS_CLASSDC = 64 const CS_DBLCLKS = 8 const CS_DELETE_TRANSFORM = 3 const CS_DISABLE = 2 const CS_DROPSHADOW = 131072 const CS_ENABLE = 1 const CS_E_FIRST = 2147746148 const CS_E_LAST = 2147746159 const CS_GLOBALCLASS = 16384 const CS_HREDRAW = 2 const CS_IME = 65536 const CS_INSERTCHAR = 8192 const CS_NOCLOSE = 512 const CS_NOMOVECARET = 16384 const CS_OWNDC = 32 const CS_PARENTDC = 128 const CS_SAVEBITS = 2048 type CS_STUB_INFO = TCS_STUB_INFO type CS_TAG_GETTING_ROUTINE = TCS_TAG_GETTING_ROUTINE type CS_TYPE_FROM_NETCS_ROUTINE = TCS_TYPE_FROM_NETCS_ROUTINE type CS_TYPE_LOCAL_SIZE_ROUTINE = TCS_TYPE_LOCAL_SIZE_ROUTINE type CS_TYPE_NET_SIZE_ROUTINE = TCS_TYPE_NET_SIZE_ROUTINE type CS_TYPE_TO_NETCS_ROUTINE = TCS_TYPE_TO_NETCS_ROUTINE const CS_VREDRAW = 1 const CTLCOLOR_BTN = 3 const CTLCOLOR_DLG = 4 const CTLCOLOR_EDIT = 1 const CTLCOLOR_LISTBOX = 2 const CTLCOLOR_MAX = 7 const CTLCOLOR_MSGBOX = 0 const CTLCOLOR_SCROLLBAR = 5 const CTLCOLOR_STATIC = 6 type CTL_ANY_SUBJECT_INFO = TCTL_ANY_SUBJECT_INFO const CTL_ANY_SUBJECT_TYPE = 1 const CTL_CERT_SUBJECT_TYPE = 2 type CTL_CONTEXT = TCTL_CONTEXT type CTL_ENTRY = TCTL_ENTRY const CTL_ENTRY_FROM_PROP_CHAIN_FLAG = 1 const CTL_FIND_ANY = 0 const CTL_FIND_EXISTING = 5 const CTL_FIND_MD5_HASH = 2 const CTL_FIND_NO_LIST_ID_CBDATA = 4294967295 const CTL_FIND_NO_SIGNER_PTR = -1 const CTL_FIND_SAME_USAGE_FLAG = 1 const CTL_FIND_SHA1_HASH = 1 const CTL_FIND_SUBJECT = 4 type CTL_FIND_SUBJECT_PARA = TCTL_FIND_SUBJECT_PARA const CTL_FIND_USAGE = 3 type CTL_FIND_USAGE_PARA = TCTL_FIND_USAGE_PARA type CTL_INFO = TCTL_INFO type CTL_USAGE = TCTL_USAGE type CTL_USAGE_MATCH = TCTL_USAGE_MATCH const CTL_V1 = 0 type CTL_VERIFY_USAGE_PARA = TCTL_VERIFY_USAGE_PARA type CTL_VERIFY_USAGE_STATUS = TCTL_VERIFY_USAGE_STATUS const CTMF_INCLUDE_APPCONTAINER = 1 const CTMF_VALID_FLAGS = 1 const CTRL_BREAK_EVENT = 1 const CTRL_CLOSE_EVENT = 2 const CTRL_C_EVENT = 0 const CTRL_LOGOFF_EVENT = 5 const CTRL_SHUTDOWN_EVENT = 6 const CTRY_ALBANIA = 355 const CTRY_ALGERIA = 213 const CTRY_ARGENTINA = 54 const CTRY_ARMENIA = 374 const CTRY_AUSTRALIA = 61 const CTRY_AUSTRIA = 43 const CTRY_AZERBAIJAN = 994 const CTRY_BAHRAIN = 973 const CTRY_BELARUS = 375 const CTRY_BELGIUM = 32 const CTRY_BELIZE = 501 const CTRY_BOLIVIA = 591 const CTRY_BRAZIL = 55 const CTRY_BRUNEI_DARUSSALAM = 673 const CTRY_BULGARIA = 359 const CTRY_CANADA = 2 const CTRY_CARIBBEAN = 1 const CTRY_CHILE = 56 const CTRY_COLOMBIA = 57 const CTRY_COSTA_RICA = 506 const CTRY_CROATIA = 385 const CTRY_CZECH = 420 const CTRY_DEFAULT = 0 const CTRY_DENMARK = 45 const CTRY_DOMINICAN_REPUBLIC = 1 const CTRY_ECUADOR = 593 const CTRY_EGYPT = 20 const CTRY_EL_SALVADOR = 503 const CTRY_ESTONIA = 372 const CTRY_FAEROE_ISLANDS = 298 const CTRY_FINLAND = 358 const CTRY_FRANCE = 33 const CTRY_GEORGIA = 995 const CTRY_GERMANY = 49 const CTRY_GREECE = 30 const CTRY_GUATEMALA = 502 const CTRY_HONDURAS = 504 const CTRY_HONG_KONG = 852 const CTRY_HUNGARY = 36 const CTRY_ICELAND = 354 const CTRY_INDIA = 91 const CTRY_INDONESIA = 62 const CTRY_IRAN = 981 const CTRY_IRAQ = 964 const CTRY_IRELAND = 353 const CTRY_ISRAEL = 972 const CTRY_ITALY = 39 const CTRY_JAMAICA = 1 const CTRY_JAPAN = 81 const CTRY_JORDAN = 962 const CTRY_KAZAKSTAN = 7 const CTRY_KENYA = 254 const CTRY_KUWAIT = 965 const CTRY_KYRGYZSTAN = 996 const CTRY_LATVIA = 371 const CTRY_LEBANON = 961 const CTRY_LIBYA = 218 const CTRY_LIECHTENSTEIN = 41 const CTRY_LITHUANIA = 370 const CTRY_LUXEMBOURG = 352 const CTRY_MACAU = 853 const CTRY_MACEDONIA = 389 const CTRY_MALAYSIA = 60 const CTRY_MALDIVES = 960 const CTRY_MEXICO = 52 const CTRY_MONACO = 33 const CTRY_MONGOLIA = 976 const CTRY_MOROCCO = 212 const CTRY_NETHERLANDS = 31 const CTRY_NEW_ZEALAND = 64 const CTRY_NICARAGUA = 505 const CTRY_NORWAY = 47 const CTRY_OMAN = 968 const CTRY_PAKISTAN = 92 const CTRY_PANAMA = 507 const CTRY_PARAGUAY = 595 const CTRY_PERU = 51 const CTRY_PHILIPPINES = 63 const CTRY_POLAND = 48 const CTRY_PORTUGAL = 351 const CTRY_PRCHINA = 86 const CTRY_PUERTO_RICO = 1 const CTRY_QATAR = 974 const CTRY_ROMANIA = 40 const CTRY_RUSSIA = 7 const CTRY_SAUDI_ARABIA = 966 const CTRY_SERBIA = 381 const CTRY_SINGAPORE = 65 const CTRY_SLOVAK = 421 const CTRY_SLOVENIA = 386 const CTRY_SOUTH_AFRICA = 27 const CTRY_SOUTH_KOREA = 82 const CTRY_SPAIN = 34 const CTRY_SWEDEN = 46 const CTRY_SWITZERLAND = 41 const CTRY_SYRIA = 963 const CTRY_TAIWAN = 886 const CTRY_TATARSTAN = 7 const CTRY_THAILAND = 66 const CTRY_TRINIDAD_Y_TOBAGO = 1 const CTRY_TUNISIA = 216 const CTRY_TURKEY = 90 const CTRY_UAE = 971 const CTRY_UKRAINE = 380 const CTRY_UNITED_KINGDOM = 44 const CTRY_UNITED_STATES = 1 const CTRY_URUGUAY = 598 const CTRY_UZBEKISTAN = 7 const CTRY_VENEZUELA = 58 const CTRY_VIET_NAM = 84 const CTRY_YEMEN = 967 const CTRY_ZIMBABWE = 263 const CT_CTYPE1 = 1 const CT_CTYPE2 = 2 const CT_CTYPE3 = 4 type CURRENCY = TCURRENCY type CURRENCYFMT = TCURRENCYFMT type CURRENCYFMTA = TCURRENCYFMTA type CURRENCYFMTW = TCURRENCYFMTW const CURRENT_IMPORT_REDIRECTION_VERSION = 1 type CURSORINFO = TCURSORINFO type CURSORSHAPE = TCURSORSHAPE const CURSOR_SHOWING = 1 const CURSOR_SUPPRESSED = 2 const CURVECAPS = 28 const CUR_BLOB_VERSION = 2 type CUSTDATA = TCUSTDATA type CUSTDATAITEM = TCUSTDATAITEM const CWCSTORAGENAME = 32 const CWF_CREATE_ONLY = 1 type CWMO_FLAGS = TCWMO_FLAGS const CWMO_MAX_HANDLES = 56 type CWPRETSTRUCT = TCWPRETSTRUCT type CWPSTRUCT = TCWPSTRUCT const CWP_ALL = 0 const CWP_SKIPDISABLED = 2 const CWP_SKIPINVISIBLE = 1 const CWP_SKIPTRANSPARENT = 4 type CY = TCY const CallMsgFilter = 0 const CallNamedPipe = 0 const CallWindowProc = 0 const CaptureStackBackTrace = 0 const CdChangerClassGuid = 0 const CdRomClassGuid = 0 const CertAddEncodedCertificateToSystemStore = 0 const CertGetNameString = 0 type CertKeyType = TCertKeyType const CertNameToStr = 0 const CertOpenSystemStore = 0 const CertRDNValueToStr = 0 const CertStrToName = 0 const ChangeDisplaySettings = 0 const ChangeDisplaySettingsEx = 0 const ChangeMenu = 0 const ChangeServiceConfig = 0 const ChangeServiceConfig2 = 0 const CharLower = 0 const CharLowerBuff = 0 const CharNext = 0 const CharPrev = 0 const CharToOem = 0 const CharToOemBuff = 0 const CharUpper = 0 const CharUpperBuff = 0 const CheckNameLegalDOS8Dot3 = 0 const ChooseColor = 0 const ChooseFont = 0 const ClearEventLog = 0 const CommConfigDialog = 0 const CommDlg_OpenSave_GetFilePath = 0 const CommDlg_OpenSave_GetFolderPath = 0 const CommDlg_OpenSave_GetSpec = 0 const CompareString = 0 const ConfigurePort = 0 const ControlServiceEx = 0 const CopyAcceleratorTable = 0 const CopyEnhMetaFile = 0 const CopyFile = 0 const CopyFileEx = 0 const CopyFileTransacted = 0 const CopyMemory = 0 const CopyMetaFile = 0 const CreateAcceleratorTable = 0 const CreateActCtx = 0 const CreateBoundaryDescriptor = 0 const CreateColorSpace = 0 const CreateDC = 0 const CreateDesktop = 0 const CreateDesktopEx = 0 const CreateDialog = 0 const CreateDialogIndirect = 0 const CreateDialogIndirectParam = 0 const CreateDialogParam = 0 const CreateDirectory = 0 const CreateDirectoryEx = 0 const CreateDirectoryTransacted = 0 const CreateEnhMetaFile = 0 const CreateEvent = 0 const CreateEventEx = 0 const CreateFile = 0 const CreateFileMapping = 0 const CreateFileMappingNuma = 0 const CreateFileTransacted = 0 const CreateFont = 0 const CreateFontIndirect = 0 const CreateFontIndirectEx = 0 const CreateHardLink = 0 const CreateHardLinkTransacted = 0 const CreateIC = 0 const CreateJobObject = 0 const CreateMDIWindow = 0 const CreateMailslot = 0 const CreateMetaFile = 0 const CreateMutex = 0 const CreateMutexEx = 0 const CreateNamedPipe = 0 const CreatePrivateNamespace = 0 const CreateProcess = 0 const CreateProcessAsUser = 0 const CreatePropertySheetPage = 0 const CreateScalableFontResource = 0 const CreateSemaphore = 0 const CreateSemaphoreEx = 0 const CreateService = 0 const CreateSymbolicLink = 0 const CreateSymbolicLinkTransacted = 0 const CreateWaitableTimer = 0 const CreateWaitableTimerEx = 0 const CreateWindow = 0 const CreateWindowEx = 0 const CreateWindowStation = 0 const CryptAcquireContext = 0 const CryptBinaryToString = 0 const CryptEnumProviderTypes = 0 const CryptEnumProviders = 0 const CryptGetDefaultProvider = 0 const CryptRetrieveObjectByUrl = 0 const CryptSetProvider = 0 const CryptSetProviderEx = 0 const CryptSignHash = 0 const CryptStringToBinary = 0 const CryptVerifySignature = 0 const DACL_SECURITY_INFORMATION = 4 type DATADIR = TDATADIR type DATAINFO = TDATAINFO type DATATYPES_INFO_1 = TDATATYPES_INFO_1 type DATATYPES_INFO_1A = TDATATYPES_INFO_1A type DATATYPES_INFO_1W = TDATATYPES_INFO_1W type DATA_BLOB = TDATA_BLOB const DATA_E_FIRST = 2147746096 const DATA_E_FORMATETC = "DV_E_FORMATETC" const DATA_E_LAST = 2147746111 const DATA_S_FIRST = 262448 const DATA_S_LAST = 262463 type DATE = TDATE const DATEFMT_ENUMPROC = 0 type DATEFMT_ENUMPROCA = TDATEFMT_ENUMPROCA const DATEFMT_ENUMPROCEX = 0 type DATEFMT_ENUMPROCEXA = TDATEFMT_ENUMPROCEXA type DATEFMT_ENUMPROCEXEX = TDATEFMT_ENUMPROCEXEX type DATEFMT_ENUMPROCEXW = TDATEFMT_ENUMPROCEXW type DATEFMT_ENUMPROCW = TDATEFMT_ENUMPROCW const DATE_AUTOLAYOUT = 64 const DATE_LONGDATE = 2 const DATE_LTRREADING = 16 const DATE_MONTHDAY = 128 const DATE_RTLREADING = 32 const DATE_SHORTDATE = 1 const DATE_USE_ALT_CALENDAR = 4 const DATE_YEARMONTH = 8 type DCB = TDCB const DCBA_FACEDOWNCENTER = 257 const DCBA_FACEDOWNLEFT = 258 const DCBA_FACEDOWNNONE = 256 const DCBA_FACEDOWNRIGHT = 259 const DCBA_FACEUPCENTER = 1 const DCBA_FACEUPLEFT = 2 const DCBA_FACEUPNONE = 0 const DCBA_FACEUPRIGHT = 3 const DCB_ACCUMULATE = 2 const DCB_DIRTY = 2 const DCB_DISABLE = 8 const DCB_ENABLE = 4 const DCB_RESET = 1 const DCB_SET = 3 const DCE_C_ERROR_STRING_LEN = 256 const DCOMSCM_ACTIVATION_DISALLOW_UNSECURE_CALL = 2 const DCOMSCM_ACTIVATION_USE_ALL_AUTHNSERVICES = 1 const DCOMSCM_PING_DISALLOW_UNSECURE_CALL = 32 const DCOMSCM_PING_USE_MID_AUTHNSERVICE = 16 const DCOMSCM_RESOLVE_DISALLOW_UNSECURE_CALL = 8 const DCOMSCM_RESOLVE_USE_ALL_AUTHNSERVICES = 4 type DCOM_CALL_STATE = TDCOM_CALL_STATE const DCTT_BITMAP = 1 const DCTT_DOWNLOAD = 2 const DCTT_DOWNLOAD_OUTLINE = 8 const DCTT_SUBDEV = 4 const DCX_CACHE = 2 const DCX_CLIPCHILDREN = 8 const DCX_CLIPSIBLINGS = 16 const DCX_EXCLUDERGN = 64 const DCX_EXCLUDEUPDATE = 256 const DCX_INTERSECTRGN = 128 const DCX_INTERSECTUPDATE = 512 const DCX_LOCKWINDOWUPDATE = 1024 const DCX_NORESETATTRS = 4 const DCX_PARENTCLIP = 32 const DCX_VALIDATE = 2097152 const DCX_WINDOW = 1 const DC_ACTIVE = 1 const DC_BINADJUST = 19 const DC_BINNAMES = 12 const DC_BINS = 6 const DC_BRUSH = 18 const DC_BUTTONS = 4096 const DC_COLLATE = 22 const DC_COLORDEVICE = 32 const DC_COPIES = 18 const DC_DATATYPE_PRODUCED = 21 const DC_DRIVER = 11 const DC_DUPLEX = 7 const DC_EMF_COMPLIANT = 20 const DC_ENUMRESOLUTIONS = 13 const DC_EXTRA = 9 const DC_FIELDS = 1 const DC_FILEDEPENDENCIES = 14 const DC_GRADIENT = 32 const DC_HASDEFID = 21323 const DC_ICON = 4 const DC_INBUTTON = 16 const DC_MANUFACTURER = 23 const DC_MAXEXTENT = 5 const DC_MEDIAREADY = 29 const DC_MEDIATYPENAMES = 34 const DC_MEDIATYPES = 35 const DC_MINEXTENT = 4 const DC_MODEL = 24 const DC_NUP = 33 const DC_ORIENTATION = 17 const DC_PAPERNAMES = 16 const DC_PAPERS = 2 const DC_PAPERSIZE = 3 const DC_PEN = 19 const DC_PERSONALITY = 25 const DC_PRINTERMEM = 28 const DC_PRINTRATE = 26 const DC_PRINTRATEPPM = 31 const DC_PRINTRATEUNIT = 27 const DC_SIZE = 8 const DC_SMALLCAP = 2 const DC_STAPLE = 30 const DC_TEXT = 8 const DC_TRUETYPE = 15 const DC_VERSION = 10 const DDD_EXACT_MATCH_ON_REMOVE = 4 const DDD_LUID_BROADCAST_DRIVE = 16 const DDD_NO_BROADCAST_SYSTEM = 8 const DDD_RAW_TARGET_PATH = 1 const DDD_REMOVE_DEFINITION = 2 type DDEACK = TDDEACK type DDEADVISE = TDDEADVISE type DDEDATA = TDDEDATA type DDELN = TDDELN type DDEML_MSG_HOOK_DATA = TDDEML_MSG_HOOK_DATA type DDEPOKE = TDDEPOKE type DDEUP = TDDEUP const DDE_FACK = 32768 const DDE_FACKREQ = 32768 const DDE_FACKRESERVED = -49408 const DDE_FADVRESERVED = -49153 const DDE_FAPPSTATUS = 255 const DDE_FBUSY = 16384 const DDE_FDATRESERVED = -45057 const DDE_FDEFERUPD = 16384 const DDE_FNOTPROCESSED = 0 const DDE_FPOKRESERVED = -8193 const DDE_FRELEASE = 8192 const DDE_FREQUESTED = 4096 const DDL_ARCHIVE = 32 const DDL_DIRECTORY = 16 const DDL_DRIVES = 16384 const DDL_EXCLUSIVE = 32768 const DDL_HIDDEN = 2 const DDL_POSTMSGS = 8192 const DDL_READONLY = 1 const DDL_READWRITE = 0 const DDL_SYSTEM = 4 const DD_DEFDRAGDELAY = 200 const DD_DEFDRAGMINDIST = 2 const DD_DEFSCROLLDELAY = 50 const DD_DEFSCROLLINSET = 11 const DD_DEFSCROLLINTERVAL = 50 const DEACTIVATE_ACTCTX_FLAG_FORCE_EARLY_DEACTIVATION = 1 type DEBUGHOOKINFO = TDEBUGHOOKINFO type DEBUG_EVENT = TDEBUG_EVENT const DEBUG_ONLY_THIS_PROCESS = 2 const DEBUG_PROCESS = 1 type DECIMAL = TDECIMAL type DECRYPTION_STATUS_BUFFER = TDECRYPTION_STATUS_BUFFER const DEFAULT_CHARSET = 1 const DEFAULT_GUI_FONT = 17 const DEFAULT_IMPERSONATION_LEVEL = 0 const DEFAULT_PALETTE = 15 const DEFAULT_PITCH = 0 const DEFAULT_QUALITY = 0 const DEF_PRIORITY = 1 const DELETE = 65536 type DELETEITEMSTRUCT = TDELETEITEMSTRUCT type DELETE_SNAPSHOT_VHDSET_FLAG = TDELETE_SNAPSHOT_VHDSET_FLAG type DELETE_SNAPSHOT_VHDSET_PARAMETERS = TDELETE_SNAPSHOT_VHDSET_PARAMETERS type DELETE_SNAPSHOT_VHDSET_VERSION = TDELETE_SNAPSHOT_VHDSET_VERSION type DELETE_USN_JOURNAL_DATA = TDELETE_USN_JOURNAL_DATA type DEPENDENT_DISK_FLAG = TDEPENDENT_DISK_FLAG type DEP_SYSTEM_POLICY_TYPE = TDEP_SYSTEM_POLICY_TYPE const DEREGISTERED = 5 type DESCKIND = TDESCKIND type DESIGNVECTOR = TDESIGNVECTOR type DESKTOPENUMPROC = TDESKTOPENUMPROC type DESKTOPENUMPROCA = TDESKTOPENUMPROCA type DESKTOPENUMPROCW = TDESKTOPENUMPROCW const DESKTOPHORZRES = 118 const DESKTOPVERTRES = 117 const DESKTOP_CREATEMENU = 4 const DESKTOP_CREATEWINDOW = 2 const DESKTOP_ENUMERATE = 64 const DESKTOP_HOOKCONTROL = 8 const DESKTOP_JOURNALPLAYBACK = 32 const DESKTOP_JOURNALRECORD = 16 const DESKTOP_READOBJECTS = 1 const DESKTOP_SWITCHDESKTOP = 256 const DESKTOP_WRITEOBJECTS = 128 const DETACHED_PROCESS = 8 type DETACH_VIRTUAL_DISK_FLAG = TDETACH_VIRTUAL_DISK_FLAG type DETECTION_TYPE = TDETECTION_TYPE const DEVICEDATA = 19 type DEVICE_COPY_OFFLOAD_DESCRIPTOR = TDEVICE_COPY_OFFLOAD_DESCRIPTOR type DEVICE_DATA_MANAGEMENT_SET_ACTION = TDEVICE_DATA_MANAGEMENT_SET_ACTION type DEVICE_DATA_SET_RANGE = TDEVICE_DATA_SET_RANGE const DEVICE_DEFAULT_FONT = 14 const DEVICE_DSM_FLAG_ENTIRE_DATA_SET_RANGE = 1 type DEVICE_DSM_NOTIFICATION_PARAMETERS = TDEVICE_DSM_NOTIFICATION_PARAMETERS const DEVICE_DSM_NOTIFY_FLAG_BEGIN = 1 const DEVICE_DSM_NOTIFY_FLAG_END = 2 const DEVICE_FONTTYPE = 2 type DEVICE_LB_PROVISIONING_DESCRIPTOR = TDEVICE_LB_PROVISIONING_DESCRIPTOR type DEVICE_MANAGE_DATA_SET_ATTRIBUTES = TDEVICE_MANAGE_DATA_SET_ATTRIBUTES type DEVICE_MEDIA_INFO = TDEVICE_MEDIA_INFO const DEVICE_NOTIFY_ALL_INTERFACE_CLASSES = 4 const DEVICE_NOTIFY_SERVICE_HANDLE = 1 const DEVICE_NOTIFY_WINDOW_HANDLE = 0 type DEVICE_POWER_DESCRIPTOR = TDEVICE_POWER_DESCRIPTOR type DEVICE_POWER_STATE = TDEVICE_POWER_STATE type DEVICE_SEEK_PENALTY_DESCRIPTOR = TDEVICE_SEEK_PENALTY_DESCRIPTOR type DEVICE_TRIM_DESCRIPTOR = TDEVICE_TRIM_DESCRIPTOR const DEVICE_TYPE = 0 type DEVICE_WRITE_AGGREGATION_DESCRIPTOR = TDEVICE_WRITE_AGGREGATION_DESCRIPTOR type DEVMODE = TDEVMODE type DEVMODEA = TDEVMODEA type DEVMODEW = TDEVMODEW type DEVNAMES = TDEVNAMES const DFCS_ADJUSTRECT = 8192 const DFCS_BUTTON3STATE = 8 const DFCS_BUTTONCHECK = 0 const DFCS_BUTTONPUSH = 16 const DFCS_BUTTONRADIO = 4 const DFCS_BUTTONRADIOIMAGE = 1 const DFCS_BUTTONRADIOMASK = 2 const DFCS_CAPTIONCLOSE = 0 const DFCS_CAPTIONHELP = 4 const DFCS_CAPTIONMAX = 2 const DFCS_CAPTIONMIN = 1 const DFCS_CAPTIONRESTORE = 3 const DFCS_CHECKED = 1024 const DFCS_FLAT = 16384 const DFCS_HOT = 4096 const DFCS_INACTIVE = 256 const DFCS_MENUARROW = 0 const DFCS_MENUARROWRIGHT = 4 const DFCS_MENUBULLET = 2 const DFCS_MENUCHECK = 1 const DFCS_MONO = 32768 const DFCS_PUSHED = 512 const DFCS_SCROLLCOMBOBOX = 5 const DFCS_SCROLLDOWN = 1 const DFCS_SCROLLLEFT = 2 const DFCS_SCROLLRIGHT = 3 const DFCS_SCROLLSIZEGRIP = 8 const DFCS_SCROLLSIZEGRIPRIGHT = 16 const DFCS_SCROLLUP = 0 const DFCS_TRANSPARENT = 2048 const DFC_BUTTON = 4 const DFC_CAPTION = 1 const DFC_MENU = 2 const DFC_POPUPMENU = 5 const DFC_SCROLL = 3 const DF_ALLOWOTHERACCOUNTHOOK = 1 type DHPRIVKEY_VER3 = TDHPRIVKEY_VER3 type DHPUBKEY = TDHPUBKEY type DHPUBKEY_VER3 = TDHPUBKEY_VER3 const DIAGNOSTIC_REASON_DETAILED_STRING = 2 const DIAGNOSTIC_REASON_INVALID_FLAGS = -2147483652 const DIAGNOSTIC_REASON_NOT_SPECIFIED = 2147483648 const DIAGNOSTIC_REASON_SIMPLE_STRING = 1 const DIAGNOSTIC_REASON_VERSION = 0 type DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS = TDIALOG_CONTROL_DPI_CHANGE_BEHAVIORS type DIALOG_DPI_CHANGE_BEHAVIORS = TDIALOG_DPI_CHANGE_BEHAVIORS const DIALOPTION_BILLING = 64 const DIALOPTION_DIALTONE = 256 const DIALOPTION_QUIET = 128 type DIBSECTION = TDIBSECTION const DIB_PAL_COLORS = 1 const DIB_RGB_COLORS = 0 const DIFFERENCE = 11 const DISABLE_MAX_PRIVILEGE = 1 const DISABLE_NEWLINE_AUTO_RETURN = 8 const DISABLE_SMART = 217 type DISCARDCACHE = TDISCARDCACHE type DISCDLGSTRUCT = TDISCDLGSTRUCT type DISCDLGSTRUCTA = TDISCDLGSTRUCTA type DISCDLGSTRUCTW = TDISCDLGSTRUCTW const DISCHARGE_POLICY_CRITICAL = 0 const DISCHARGE_POLICY_LOW = 1 const DISC_NO_FORCE = 64 const DISC_UPDATE_PROFILE = 1 const DISK_BINNING = 3 type DISK_CACHE_INFORMATION = TDISK_CACHE_INFORMATION type DISK_CACHE_RETENTION_PRIORITY = TDISK_CACHE_RETENTION_PRIORITY type DISK_CONTROLLER_NUMBER = TDISK_CONTROLLER_NUMBER type DISK_DETECTION_INFO = TDISK_DETECTION_INFO type DISK_EXTENT = TDISK_EXTENT type DISK_EX_INT13_INFO = TDISK_EX_INT13_INFO type DISK_GEOMETRY = TDISK_GEOMETRY type DISK_GEOMETRY_EX = TDISK_GEOMETRY_EX type DISK_GROW_PARTITION = TDISK_GROW_PARTITION type DISK_HISTOGRAM = TDISK_HISTOGRAM const DISK_HISTOGRAM_SIZE = 0 type DISK_INT13_INFO = TDISK_INT13_INFO type DISK_LOGGING = TDISK_LOGGING const DISK_LOGGING_DUMP = 2 const DISK_LOGGING_START = 0 const DISK_LOGGING_STOP = 1 type DISK_PARTITION_INFO = TDISK_PARTITION_INFO type DISK_PERFORMANCE = TDISK_PERFORMANCE type DISK_RECORD = TDISK_RECORD const DISPATCH_METHOD = 1 const DISPATCH_PROPERTYGET = 2 const DISPATCH_PROPERTYPUT = 4 const DISPATCH_PROPERTYPUTREF = 8 type DISPID = TDISPID const DISPID_COLLECT = -8 const DISPID_CONSTRUCTOR = -6 const DISPID_DESTRUCTOR = -7 const DISPID_EVALUATE = -5 const DISPID_NEWENUM = -4 const DISPID_PROPERTYPUT = -3 const DISPID_UNKNOWN = -1 const DISPID_VALUE = 0 type DISPLAYCONFIG_2DREGION = TDISPLAYCONFIG_2DREGION type DISPLAYCONFIG_ADAPTER_NAME = TDISPLAYCONFIG_ADAPTER_NAME type DISPLAYCONFIG_COLOR_ENCODING = TDISPLAYCONFIG_COLOR_ENCODING type DISPLAYCONFIG_DESKTOP_IMAGE_INFO = TDISPLAYCONFIG_DESKTOP_IMAGE_INFO type DISPLAYCONFIG_DEVICE_INFO_HEADER = TDISPLAYCONFIG_DEVICE_INFO_HEADER type DISPLAYCONFIG_DEVICE_INFO_TYPE = TDISPLAYCONFIG_DEVICE_INFO_TYPE type DISPLAYCONFIG_GET_ADVANCED_COLOR_INFO = TDISPLAYCONFIG_GET_ADVANCED_COLOR_INFO const DISPLAYCONFIG_MAXPATH = 1024 type DISPLAYCONFIG_MODE_INFO = TDISPLAYCONFIG_MODE_INFO type DISPLAYCONFIG_MODE_INFO_TYPE = TDISPLAYCONFIG_MODE_INFO_TYPE const DISPLAYCONFIG_PATH_ACTIVE = 1 const DISPLAYCONFIG_PATH_CLONE_GROUP_INVALID = 65535 const DISPLAYCONFIG_PATH_DESKTOP_IMAGE_IDX_INVALID = 65535 type DISPLAYCONFIG_PATH_INFO = TDISPLAYCONFIG_PATH_INFO const DISPLAYCONFIG_PATH_MODE_IDX_INVALID = 4294967295 const DISPLAYCONFIG_PATH_PREFERRED_UNSCALED = 4 type DISPLAYCONFIG_PATH_SOURCE_INFO = TDISPLAYCONFIG_PATH_SOURCE_INFO const DISPLAYCONFIG_PATH_SOURCE_MODE_IDX_INVALID = 65535 const DISPLAYCONFIG_PATH_SUPPORT_VIRTUAL_MODE = 8 type DISPLAYCONFIG_PATH_TARGET_INFO = TDISPLAYCONFIG_PATH_TARGET_INFO const DISPLAYCONFIG_PATH_TARGET_MODE_IDX_INVALID = 65535 const DISPLAYCONFIG_PATH_VALID_FLAGS = 13 type DISPLAYCONFIG_PIXELFORMAT = TDISPLAYCONFIG_PIXELFORMAT type DISPLAYCONFIG_RATIONAL = TDISPLAYCONFIG_RATIONAL type DISPLAYCONFIG_ROTATION = TDISPLAYCONFIG_ROTATION type DISPLAYCONFIG_SCALING = TDISPLAYCONFIG_SCALING type DISPLAYCONFIG_SCANLINE_ORDERING = TDISPLAYCONFIG_SCANLINE_ORDERING type DISPLAYCONFIG_SDR_WHITE_LEVEL = TDISPLAYCONFIG_SDR_WHITE_LEVEL type DISPLAYCONFIG_SET_ADVANCED_COLOR_STATE = TDISPLAYCONFIG_SET_ADVANCED_COLOR_STATE type DISPLAYCONFIG_SET_TARGET_PERSISTENCE = TDISPLAYCONFIG_SET_TARGET_PERSISTENCE type DISPLAYCONFIG_SOURCE_DEVICE_NAME = TDISPLAYCONFIG_SOURCE_DEVICE_NAME const DISPLAYCONFIG_SOURCE_IN_USE = 1 type DISPLAYCONFIG_SOURCE_MODE = TDISPLAYCONFIG_SOURCE_MODE type DISPLAYCONFIG_SUPPORT_VIRTUAL_RESOLUTION = TDISPLAYCONFIG_SUPPORT_VIRTUAL_RESOLUTION type DISPLAYCONFIG_TARGET_BASE_TYPE = TDISPLAYCONFIG_TARGET_BASE_TYPE type DISPLAYCONFIG_TARGET_DEVICE_NAME = TDISPLAYCONFIG_TARGET_DEVICE_NAME type DISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS = TDISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS const DISPLAYCONFIG_TARGET_FORCED_AVAILABILITY_BOOT = 4 const DISPLAYCONFIG_TARGET_FORCED_AVAILABILITY_PATH = 8 const DISPLAYCONFIG_TARGET_FORCED_AVAILABILITY_SYSTEM = 16 const DISPLAYCONFIG_TARGET_FORCIBLE = 2 const DISPLAYCONFIG_TARGET_IN_USE = 1 const DISPLAYCONFIG_TARGET_IS_HMD = 32 type DISPLAYCONFIG_TARGET_MODE = TDISPLAYCONFIG_TARGET_MODE type DISPLAYCONFIG_TARGET_PREFERRED_MODE = TDISPLAYCONFIG_TARGET_PREFERRED_MODE type DISPLAYCONFIG_TOPOLOGY_ID = TDISPLAYCONFIG_TOPOLOGY_ID type DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY = TDISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY type DISPLAYCONFIG_VIDEO_SIGNAL_INFO = TDISPLAYCONFIG_VIDEO_SIGNAL_INFO type DISPLAY_DEVICE = TDISPLAY_DEVICE type DISPLAY_DEVICEA = TDISPLAY_DEVICEA type DISPLAY_DEVICEW = TDISPLAY_DEVICEW const DISPLAY_DEVICE_ACC_DRIVER = 64 const DISPLAY_DEVICE_ACTIVE = 1 const DISPLAY_DEVICE_ATTACHED = 2 const DISPLAY_DEVICE_ATTACHED_TO_DESKTOP = 1 const DISPLAY_DEVICE_DISCONNECT = 33554432 const DISPLAY_DEVICE_MIRRORING_DRIVER = 8 const DISPLAY_DEVICE_MODESPRUNED = 134217728 const DISPLAY_DEVICE_MULTI_DRIVER = 2 const DISPLAY_DEVICE_PRIMARY_DEVICE = 4 const DISPLAY_DEVICE_RDPUDD = 16777216 const DISPLAY_DEVICE_REMOTE = 67108864 const DISPLAY_DEVICE_REMOVABLE = 32 const DISPLAY_DEVICE_TS_COMPATIBLE = 2097152 const DISPLAY_DEVICE_UNSAFE_MODES_ON = 524288 const DISPLAY_DEVICE_VGA_COMPATIBLE = 16 type DISPPARAMS = TDISPPARAMS const DISP_CHANGE_BADDUALVIEW = -6 const DISP_CHANGE_BADFLAGS = -4 const DISP_CHANGE_BADMODE = -2 const DISP_CHANGE_BADPARAM = -5 const DISP_CHANGE_FAILED = -1 const DISP_CHANGE_NOTUPDATED = -3 const DISP_CHANGE_RESTART = 1 const DISP_CHANGE_SUCCESSFUL = 0 const DI_APPBANDING = 1 const DI_CHANNEL = 1 const DI_COMPAT = 4 const DI_DEFAULTSIZE = 8 const DI_IMAGE = 2 const DI_MASK = 1 const DI_MEMORYMAP_WRITE = 1 const DI_NOMIRROR = 16 const DI_NORMAL = 3 const DI_READ_SPOOL_JOB = 3 const DI_ROPS_READ_DESTINATION = 2 const DKGRAY_BRUSH = 3 const DLGC_BUTTON = 8192 const DLGC_DEFPUSHBUTTON = 16 const DLGC_HASSETSEL = 8 const DLGC_RADIOBUTTON = 64 const DLGC_STATIC = 256 const DLGC_UNDEFPUSHBUTTON = 32 const DLGC_WANTALLKEYS = 4 const DLGC_WANTARROWS = 1 const DLGC_WANTCHARS = 128 const DLGC_WANTMESSAGE = 4 const DLGC_WANTTAB = 2 type DLGITEMTEMPLATE = TDLGITEMTEMPLATE type DLGPROC = TDLGPROC type DLGTEMPLATE = TDLGTEMPLATE const DLGWINDOWEXTRA = 30 type DLL_DIRECTORY_COOKIE = TDLL_DIRECTORY_COOKIE const DLL_PROCESS_ATTACH = 1 const DLL_PROCESS_DETACH = 0 const DLL_PROCESS_VERIFIER = 4 const DLL_THREAD_ATTACH = 2 const DLL_THREAD_DETACH = 3 const DMBIN_AUTO = 7 const DMBIN_CASSETTE = 14 const DMBIN_ENVELOPE = 5 const DMBIN_ENVMANUAL = 6 const DMBIN_FIRST = 1 const DMBIN_FORMSOURCE = 15 const DMBIN_LARGECAPACITY = 11 const DMBIN_LARGEFMT = 10 const DMBIN_LAST = 15 const DMBIN_LOWER = 2 const DMBIN_MANUAL = 4 const DMBIN_MIDDLE = 3 const DMBIN_ONLYONE = 1 const DMBIN_SMALLFMT = 9 const DMBIN_TRACTOR = 8 const DMBIN_UPPER = 1 const DMBIN_USER = 256 const DMCOLLATE_FALSE = 0 const DMCOLLATE_TRUE = 1 const DMCOLOR_COLOR = 2 const DMCOLOR_MONOCHROME = 1 const DMDFO_CENTER = 2 const DMDFO_DEFAULT = 0 const DMDFO_STRETCH = 1 const DMDISPLAYFLAGS_TEXTMODE = 4 const DMDITHER_COARSE = 2 const DMDITHER_ERRORDIFFUSION = 5 const DMDITHER_FINE = 3 const DMDITHER_GRAYSCALE = 10 const DMDITHER_LINEART = 4 const DMDITHER_NONE = 1 const DMDITHER_RESERVED6 = 6 const DMDITHER_RESERVED7 = 7 const DMDITHER_RESERVED8 = 8 const DMDITHER_RESERVED9 = 9 const DMDITHER_USER = 256 const DMDO_180 = 2 const DMDO_270 = 3 const DMDO_90 = 1 const DMDO_DEFAULT = 0 const DMDUP_HORIZONTAL = 3 const DMDUP_SIMPLEX = 1 const DMDUP_VERTICAL = 2 const DMICMMETHOD_DEVICE = 4 const DMICMMETHOD_DRIVER = 3 const DMICMMETHOD_NONE = 1 const DMICMMETHOD_SYSTEM = 2 const DMICMMETHOD_USER = 256 const DMICM_ABS_COLORIMETRIC = 4 const DMICM_COLORIMETRIC = 3 const DMICM_CONTRAST = 2 const DMICM_SATURATE = 1 const DMICM_USER = 256 const DMLERR_ADVACKTIMEOUT = 16384 const DMLERR_BUSY = 16385 const DMLERR_DATAACKTIMEOUT = 16386 const DMLERR_DLL_NOT_INITIALIZED = 16387 const DMLERR_DLL_USAGE = 16388 const DMLERR_EXECACKTIMEOUT = 16389 const DMLERR_FIRST = 16384 const DMLERR_INVALIDPARAMETER = 16390 const DMLERR_LAST = 16401 const DMLERR_LOW_MEMORY = 16391 const DMLERR_MEMORY_ERROR = 16392 const DMLERR_NOTPROCESSED = 16393 const DMLERR_NO_CONV_ESTABLISHED = 16394 const DMLERR_NO_ERROR = 0 const DMLERR_POKEACKTIMEOUT = 16395 const DMLERR_POSTMSG_FAILED = 16396 const DMLERR_REENTRANCY = 16397 const DMLERR_SERVER_DIED = 16398 const DMLERR_SYS_ERROR = 16399 const DMLERR_UNADVACKTIMEOUT = 16400 const DMLERR_UNFOUND_QUEUE_ID = 16401 const DMMEDIA_GLOSSY = 3 const DMMEDIA_STANDARD = 1 const DMMEDIA_TRANSPARENCY = 2 const DMMEDIA_USER = 256 const DMNUP_ONEUP = 2 const DMNUP_SYSTEM = 1 const DMORIENT_LANDSCAPE = 2 const DMORIENT_PORTRAIT = 1 const DMPAPER_10X11 = 45 const DMPAPER_10X14 = 16 const DMPAPER_11X17 = 17 const DMPAPER_12X11 = 90 const DMPAPER_15X11 = 46 const DMPAPER_9X11 = 44 const DMPAPER_A2 = 66 const DMPAPER_A3 = 8 const DMPAPER_A3_EXTRA = 63 const DMPAPER_A3_EXTRA_TRANSVERSE = 68 const DMPAPER_A3_ROTATED = 76 const DMPAPER_A3_TRANSVERSE = 67 const DMPAPER_A4 = 9 const DMPAPER_A4SMALL = 10 const DMPAPER_A4_EXTRA = 53 const DMPAPER_A4_PLUS = 60 const DMPAPER_A4_ROTATED = 77 const DMPAPER_A4_TRANSVERSE = 55 const DMPAPER_A5 = 11 const DMPAPER_A5_EXTRA = 64 const DMPAPER_A5_ROTATED = 78 const DMPAPER_A5_TRANSVERSE = 61 const DMPAPER_A6 = 70 const DMPAPER_A6_ROTATED = 83 const DMPAPER_A_PLUS = 57 const DMPAPER_B4 = 12 const DMPAPER_B4_JIS_ROTATED = 79 const DMPAPER_B5 = 13 const DMPAPER_B5_EXTRA = 65 const DMPAPER_B5_JIS_ROTATED = 80 const DMPAPER_B5_TRANSVERSE = 62 const DMPAPER_B6_JIS = 88 const DMPAPER_B6_JIS_ROTATED = 89 const DMPAPER_B_PLUS = 58 const DMPAPER_CSHEET = 24 const DMPAPER_DBL_JAPANESE_POSTCARD = 69 const DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED = 82 const DMPAPER_DSHEET = 25 const DMPAPER_ENV_10 = 20 const DMPAPER_ENV_11 = 21 const DMPAPER_ENV_12 = 22 const DMPAPER_ENV_14 = 23 const DMPAPER_ENV_9 = 19 const DMPAPER_ENV_B4 = 33 const DMPAPER_ENV_B5 = 34 const DMPAPER_ENV_B6 = 35 const DMPAPER_ENV_C3 = 29 const DMPAPER_ENV_C4 = 30 const DMPAPER_ENV_C5 = 28 const DMPAPER_ENV_C6 = 31 const DMPAPER_ENV_C65 = 32 const DMPAPER_ENV_DL = 27 const DMPAPER_ENV_INVITE = 47 const DMPAPER_ENV_ITALY = 36 const DMPAPER_ENV_MONARCH = 37 const DMPAPER_ENV_PERSONAL = 38 const DMPAPER_ESHEET = 26 const DMPAPER_EXECUTIVE = 7 const DMPAPER_FANFOLD_LGL_GERMAN = 41 const DMPAPER_FANFOLD_STD_GERMAN = 40 const DMPAPER_FANFOLD_US = 39 const DMPAPER_FIRST = 1 const DMPAPER_FOLIO = 14 const DMPAPER_ISO_B4 = 42 const DMPAPER_JAPANESE_POSTCARD = 43 const DMPAPER_JAPANESE_POSTCARD_ROTATED = 81 const DMPAPER_JENV_CHOU3 = 73 const DMPAPER_JENV_CHOU3_ROTATED = 86 const DMPAPER_JENV_CHOU4 = 74 const DMPAPER_JENV_CHOU4_ROTATED = 87 const DMPAPER_JENV_KAKU2 = 71 const DMPAPER_JENV_KAKU2_ROTATED = 84 const DMPAPER_JENV_KAKU3 = 72 const DMPAPER_JENV_KAKU3_ROTATED = 85 const DMPAPER_JENV_YOU4 = 91 const DMPAPER_JENV_YOU4_ROTATED = 92 const DMPAPER_LAST = 118 const DMPAPER_LEDGER = 4 const DMPAPER_LEGAL = 5 const DMPAPER_LEGAL_EXTRA = 51 const DMPAPER_LETTER = 1 const DMPAPER_LETTERSMALL = 2 const DMPAPER_LETTER_EXTRA = 50 const DMPAPER_LETTER_EXTRA_TRANSVERSE = 56 const DMPAPER_LETTER_PLUS = 59 const DMPAPER_LETTER_ROTATED = 75 const DMPAPER_LETTER_TRANSVERSE = 54 const DMPAPER_NOTE = 18 const DMPAPER_P16K = 93 const DMPAPER_P16K_ROTATED = 106 const DMPAPER_P32K = 94 const DMPAPER_P32KBIG = 95 const DMPAPER_P32KBIG_ROTATED = 108 const DMPAPER_P32K_ROTATED = 107 const DMPAPER_PENV_1 = 96 const DMPAPER_PENV_10 = 105 const DMPAPER_PENV_10_ROTATED = 118 const DMPAPER_PENV_1_ROTATED = 109 const DMPAPER_PENV_2 = 97 const DMPAPER_PENV_2_ROTATED = 110 const DMPAPER_PENV_3 = 98 const DMPAPER_PENV_3_ROTATED = 111 const DMPAPER_PENV_4 = 99 const DMPAPER_PENV_4_ROTATED = 112 const DMPAPER_PENV_5 = 100 const DMPAPER_PENV_5_ROTATED = 113 const DMPAPER_PENV_6 = 101 const DMPAPER_PENV_6_ROTATED = 114 const DMPAPER_PENV_7 = 102 const DMPAPER_PENV_7_ROTATED = 115 const DMPAPER_PENV_8 = 103 const DMPAPER_PENV_8_ROTATED = 116 const DMPAPER_PENV_9 = 104 const DMPAPER_PENV_9_ROTATED = 117 const DMPAPER_QUARTO = 15 const DMPAPER_RESERVED_48 = 48 const DMPAPER_RESERVED_49 = 49 const DMPAPER_STATEMENT = 6 const DMPAPER_TABLOID = 3 const DMPAPER_TABLOID_EXTRA = 52 const DMPAPER_USER = 256 const DMRES_DRAFT = -1 const DMRES_HIGH = -4 const DMRES_LOW = -2 const DMRES_MEDIUM = -3 const DMTT_BITMAP = 1 const DMTT_DOWNLOAD = 2 const DMTT_DOWNLOAD_OUTLINE = 4 const DMTT_SUBDEV = 3 const DM_BITSPERPEL = 262144 const DM_COLLATE = 32768 const DM_COLOR = 2048 const DM_COPIES = 256 const DM_COPY = 2 const DM_DEFAULTSOURCE = 512 const DM_DISPLAYFIXEDOUTPUT = 536870912 const DM_DISPLAYFLAGS = 2097152 const DM_DISPLAYFREQUENCY = 4194304 const DM_DISPLAYORIENTATION = 128 const DM_DITHERTYPE = 67108864 const DM_DUPLEX = 4096 const DM_FORMNAME = 65536 const DM_GETDEFID = 1024 const DM_ICMINTENT = 16777216 const DM_ICMMETHOD = 8388608 const DM_INTERLACED = 2 const DM_IN_BUFFER = 8 const DM_IN_PROMPT = 4 const DM_LOGPIXELS = 131072 const DM_MEDIATYPE = 33554432 const DM_MODIFY = 8 const DM_NUP = 64 const DM_ORIENTATION = 1 const DM_OUT_BUFFER = 2 const DM_OUT_DEFAULT = 1 const DM_PANNINGHEIGHT = 268435456 const DM_PANNINGWIDTH = 134217728 const DM_PAPERLENGTH = 4 const DM_PAPERSIZE = 2 const DM_PAPERWIDTH = 8 const DM_PELSHEIGHT = 1048576 const DM_PELSWIDTH = 524288 const DM_POINTERHITTEST = 592 const DM_POSITION = 32 const DM_PRINTQUALITY = 1024 const DM_PROMPT = 4 const DM_REPOSITION = 1026 const DM_SCALE = 16 const DM_SETDEFID = 1025 const DM_SPECVERSION = 1025 const DM_TTOPTION = 16384 const DM_UPDATE = 1 const DM_YRESOLUTION = 8192 const DNS_ERROR_AUTOZONE_ALREADY_EXISTS = 9610 const DNS_ERROR_AXFR = 9752 const DNS_ERROR_BAD_PACKET = 9502 const DNS_ERROR_CANNOT_FIND_ROOT_HINTS = 9564 const DNS_ERROR_CNAME_COLLISION = 9709 const DNS_ERROR_CNAME_LOOP = 9707 const DNS_ERROR_DATABASE_BASE = 9700 const DNS_ERROR_DATAFILE_BASE = 9650 const DNS_ERROR_DATAFILE_OPEN_FAILURE = 9653 const DNS_ERROR_DATAFILE_PARSING = 9655 const DNS_ERROR_DP_ALREADY_ENLISTED = 9904 const DNS_ERROR_DP_ALREADY_EXISTS = 9902 const DNS_ERROR_DP_BASE = 9900 const DNS_ERROR_DP_DOES_NOT_EXIST = 9901 const DNS_ERROR_DP_FSMO_ERROR = 9906 const DNS_ERROR_DP_NOT_AVAILABLE = 9905 const DNS_ERROR_DP_NOT_ENLISTED = 9903 const DNS_ERROR_DS_UNAVAILABLE = 9717 const DNS_ERROR_DS_ZONE_ALREADY_EXISTS = 9718 const DNS_ERROR_FILE_WRITEBACK_FAILED = 9654 const DNS_ERROR_FORWARDER_ALREADY_EXISTS = 9619 const DNS_ERROR_GENERAL_API_BASE = 9550 const DNS_ERROR_INCONSISTENT_ROOT_HINTS = 9565 const DNS_ERROR_INVALID_DATA = 13 const DNS_ERROR_INVALID_DATAFILE_NAME = 9652 const DNS_ERROR_INVALID_IP_ADDRESS = 9552 const DNS_ERROR_INVALID_NAME = 123 const DNS_ERROR_INVALID_NAME_CHAR = 9560 const DNS_ERROR_INVALID_PROPERTY = 9553 const DNS_ERROR_INVALID_TYPE = 9551 const DNS_ERROR_INVALID_ZONE_OPERATION = 9603 const DNS_ERROR_INVALID_ZONE_TYPE = 9611 const DNS_ERROR_MASK = 9000 const DNS_ERROR_NAME_DOES_NOT_EXIST = 9714 const DNS_ERROR_NAME_NOT_IN_ZONE = 9706 const DNS_ERROR_NBSTAT_INIT_FAILED = 9617 const DNS_ERROR_NEED_SECONDARY_ADDRESSES = 9614 const DNS_ERROR_NEED_WINS_SERVERS = 9616 const DNS_ERROR_NODE_CREATION_FAILED = 9703 const DNS_ERROR_NODE_IS_CNAME = 9708 const DNS_ERROR_NON_RFC_NAME = 9556 const DNS_ERROR_NOT_ALLOWED_ON_ROOT_SERVER = 9562 const DNS_ERROR_NOT_ALLOWED_UNDER_DELEGATION = 9563 const DNS_ERROR_NOT_UNIQUE = 9555 const DNS_ERROR_NO_BOOTFILE_IF_DS_ZONE = 9719 const DNS_ERROR_NO_CREATE_CACHE_DATA = 9713 const DNS_ERROR_NO_DNS_SERVERS = 9852 const DNS_ERROR_NO_MEMORY = 14 const DNS_ERROR_NO_PACKET = 9503 const DNS_ERROR_NO_TCPIP = 9851 const DNS_ERROR_NO_ZONE_INFO = 9602 const DNS_ERROR_NUMERIC_NAME = 9561 const DNS_ERROR_OPERATION_BASE = 9750 const DNS_ERROR_PACKET_FMT_BASE = 9500 const DNS_ERROR_PRIMARY_REQUIRES_DATAFILE = 9651 const DNS_ERROR_RCODE = 9504 const DNS_ERROR_RCODE_BADKEY = 9017 const DNS_ERROR_RCODE_BADSIG = 9016 const DNS_ERROR_RCODE_BADTIME = 9018 const DNS_ERROR_RCODE_FORMAT_ERROR = 9001 const DNS_ERROR_RCODE_LAST = 9018 const DNS_ERROR_RCODE_NAME_ERROR = 9003 const DNS_ERROR_RCODE_NOTAUTH = 9009 const DNS_ERROR_RCODE_NOTZONE = 9010 const DNS_ERROR_RCODE_NOT_IMPLEMENTED = 9004 const DNS_ERROR_RCODE_NO_ERROR = 0 const DNS_ERROR_RCODE_NXRRSET = 9008 const DNS_ERROR_RCODE_REFUSED = 9005 const DNS_ERROR_RCODE_SERVER_FAILURE = 9002 const DNS_ERROR_RCODE_YXDOMAIN = 9006 const DNS_ERROR_RCODE_YXRRSET = 9007 const DNS_ERROR_RECORD_ALREADY_EXISTS = 9711 const DNS_ERROR_RECORD_DOES_NOT_EXIST = 9701 const DNS_ERROR_RECORD_FORMAT = 9702 const DNS_ERROR_RECORD_ONLY_AT_ZONE_ROOT = 9710 const DNS_ERROR_RECORD_TIMED_OUT = 9705 const DNS_ERROR_RESPONSE_CODES_BASE = 9000 const DNS_ERROR_SECONDARY_DATA = 9712 const DNS_ERROR_SECONDARY_REQUIRES_MASTER_IP = 9612 const DNS_ERROR_SECURE_BASE = 9800 const DNS_ERROR_SETUP_BASE = 9850 const DNS_ERROR_SOA_DELETE_INVALID = 9618 const DNS_ERROR_TRY_AGAIN_LATER = 9554 const DNS_ERROR_UNKNOWN_RECORD_TYPE = 9704 const DNS_ERROR_UNSECURE_PACKET = 9505 const DNS_ERROR_WINS_INIT_FAILED = 9615 const DNS_ERROR_ZONE_ALREADY_EXISTS = 9609 const DNS_ERROR_ZONE_BASE = 9600 const DNS_ERROR_ZONE_CONFIGURATION_ERROR = 9604 const DNS_ERROR_ZONE_CREATION_FAILED = 9608 const DNS_ERROR_ZONE_DOES_NOT_EXIST = 9601 const DNS_ERROR_ZONE_HAS_NO_NS_RECORDS = 9606 const DNS_ERROR_ZONE_HAS_NO_SOA_RECORD = 9605 const DNS_ERROR_ZONE_IS_SHUTDOWN = 9621 const DNS_ERROR_ZONE_LOCKED = 9607 const DNS_ERROR_ZONE_NOT_SECONDARY = 9613 const DNS_ERROR_ZONE_REQUIRES_MASTER_IP = 9620 const DNS_FILTEROFF = 8 const DNS_FILTERON = 4 const DNS_INFO_ADDED_LOCAL_WINS = 9753 const DNS_INFO_AXFR_COMPLETE = 9751 const DNS_INFO_NO_RECORDS = 9501 const DNS_REGISTER = 1 const DNS_STATUS_CONTINUE_NEEDED = 9801 const DNS_STATUS_DOTTED_NAME = 9558 const DNS_STATUS_FQDN = 9557 const DNS_STATUS_PACKET_UNSECURE = 9505 const DNS_STATUS_SINGLE_PART_NAME = 9559 const DNS_UNREGISTER = 2 const DNS_WARNING_DOMAIN_UNDELETED = 9716 const DNS_WARNING_PTR_CREATE_FAILED = 9715 const DN_DEFAULTPRN = 1 type DOCINFO = TDOCINFO type DOCINFOA = TDOCINFOA type DOCINFOW = TDOCINFOW const DOCKINFO_DOCKED = 2 const DOCKINFO_UNDOCKED = 1 const DOCKINFO_USER_DOCKED = 6 const DOCKINFO_USER_SUPPLIED = 4 const DOCKINFO_USER_UNDOCKED = 5 type DOC_INFO_1 = TDOC_INFO_1 type DOC_INFO_1A = TDOC_INFO_1A type DOC_INFO_1W = TDOC_INFO_1W type DOC_INFO_2 = TDOC_INFO_2 type DOC_INFO_2A = TDOC_INFO_2A type DOC_INFO_2W = TDOC_INFO_2W type DOC_INFO_3 = TDOC_INFO_3 type DOC_INFO_3A = TDOC_INFO_3A type DOC_INFO_3W = TDOC_INFO_3W const DOF_DIRECTORY = 32771 const DOF_DOCUMENT = 32770 const DOF_EXECUTABLE = 32769 const DOF_MULTIPLE = 32772 const DOF_PROGMAN = 1 const DOF_SHELLDATA = 2 const DOMAIN_ALIAS_RID_ACCESS_CONTROL_ASSISTANCE_OPS = 579 const DOMAIN_ALIAS_RID_ACCOUNT_OPS = 548 const DOMAIN_ALIAS_RID_ADMINS = 544 const DOMAIN_ALIAS_RID_AUTHORIZATIONACCESS = 560 const DOMAIN_ALIAS_RID_BACKUP_OPS = 551 const DOMAIN_ALIAS_RID_CACHEABLE_PRINCIPALS_GROUP = 571 const DOMAIN_ALIAS_RID_CERTSVC_DCOM_ACCESS_GROUP = 574 const DOMAIN_ALIAS_RID_CRYPTO_OPERATORS = 569 const DOMAIN_ALIAS_RID_DCOM_USERS = 562 const DOMAIN_ALIAS_RID_EVENT_LOG_READERS_GROUP = 573 const DOMAIN_ALIAS_RID_GUESTS = 546 const DOMAIN_ALIAS_RID_HYPER_V_ADMINS = 578 const DOMAIN_ALIAS_RID_INCOMING_FOREST_TRUST_BUILDERS = 557 const DOMAIN_ALIAS_RID_IUSERS = 568 const DOMAIN_ALIAS_RID_LOGGING_USERS = 559 const DOMAIN_ALIAS_RID_MONITORING_USERS = 558 const DOMAIN_ALIAS_RID_NETWORK_CONFIGURATION_OPS = 556 const DOMAIN_ALIAS_RID_NON_CACHEABLE_PRINCIPALS_GROUP = 572 const DOMAIN_ALIAS_RID_POWER_USERS = 547 const DOMAIN_ALIAS_RID_PREW2KCOMPACCESS = 554 const DOMAIN_ALIAS_RID_PRINT_OPS = 550 const DOMAIN_ALIAS_RID_RAS_SERVERS = 553 const DOMAIN_ALIAS_RID_RDS_ENDPOINT_SERVERS = 576 const DOMAIN_ALIAS_RID_RDS_MANAGEMENT_SERVERS = 577 const DOMAIN_ALIAS_RID_RDS_REMOTE_ACCESS_SERVERS = 575 const DOMAIN_ALIAS_RID_REMOTE_DESKTOP_USERS = 555 const DOMAIN_ALIAS_RID_REMOTE_MANAGEMENT_USERS = 580 const DOMAIN_ALIAS_RID_REPLICATOR = 552 const DOMAIN_ALIAS_RID_SYSTEM_OPS = 549 const DOMAIN_ALIAS_RID_TS_LICENSE_SERVERS = 561 const DOMAIN_ALIAS_RID_USERS = 545 const DOMAIN_GROUP_RID_ADMINS = 512 const DOMAIN_GROUP_RID_AUTHORIZATION_DATA_CONTAINS_CLAIMS = 497 const DOMAIN_GROUP_RID_AUTHORIZATION_DATA_IS_COMPOUNDED = 496 const DOMAIN_GROUP_RID_CERT_ADMINS = 517 const DOMAIN_GROUP_RID_CLONEABLE_CONTROLLERS = 522 const DOMAIN_GROUP_RID_COMPUTERS = 515 const DOMAIN_GROUP_RID_CONTROLLERS = 516 const DOMAIN_GROUP_RID_ENTERPRISE_ADMINS = 519 const DOMAIN_GROUP_RID_ENTERPRISE_READONLY_DOMAIN_CONTROLLERS = 498 const DOMAIN_GROUP_RID_GUESTS = 514 const DOMAIN_GROUP_RID_POLICY_ADMINS = 520 const DOMAIN_GROUP_RID_READONLY_CONTROLLERS = 521 const DOMAIN_GROUP_RID_SCHEMA_ADMINS = 518 const DOMAIN_GROUP_RID_USERS = 513 const DOMAIN_USER_RID_ADMIN = 500 const DOMAIN_USER_RID_GUEST = 501 const DOMAIN_USER_RID_KRBTGT = 502 const DOMAIN_USER_RID_MAX = 999 type DOMNodeType = TDOMNodeType const DONT_RESOLVE_DLL_REFERENCES = 1 type DOUBLE = TDOUBLE const DOUBLE_CLICK = 2 const DOWNLOADFACE = 514 const DOWNLOADHEADER = 4111 const DO_DROPFILE = 1162627398 const DO_PRINTFILE = 1414419024 const DPAPI_IMP = "DECLSPEC_IMPORT" const DPD_DELETE_ALL_FILES = 4 const DPD_DELETE_SPECIFIC_VERSION = 2 const DPD_DELETE_UNUSED_FILES = 1 type DPI_AWARENESS = TDPI_AWARENESS type DPI_AWARENESS_CONTEXT = TDPI_AWARENESS_CONTEXT const DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE = -3 const DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2 = -4 const DPI_AWARENESS_CONTEXT_SYSTEM_AWARE = -2 const DPI_AWARENESS_CONTEXT_UNAWARE = -1 const DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED = -5 type DPI_AWARENESS_CONTEXT__ = TDPI_AWARENESS_CONTEXT__ type DPI_HOSTING_BEHAVIOR = TDPI_HOSTING_BEHAVIOR const DRAFTMODE = 7 const DRAFT_QUALITY = 1 const DRAGDROP_E_FIRST = 2147746048 const DRAGDROP_E_LAST = 2147746063 const DRAGDROP_S_FIRST = 262400 const DRAGDROP_S_LAST = 262415 type DRAGINFO = TDRAGINFO type DRAGINFOA = TDRAGINFOA type DRAGINFOW = TDRAGINFOW type DRAWITEMSTRUCT = TDRAWITEMSTRUCT type DRAWPATRECT = TDRAWPATRECT const DRAWPATTERNRECT = 25 type DRAWSTATEPROC = TDRAWSTATEPROC type DRAWTEXTPARAMS = TDRAWTEXTPARAMS type DRIVERPROC = TDRIVERPROC type DRIVERSTATUS = TDRIVERSTATUS const DRIVERVERSION = 0 type DRIVER_INFO_1 = TDRIVER_INFO_1 type DRIVER_INFO_1A = TDRIVER_INFO_1A type DRIVER_INFO_1W = TDRIVER_INFO_1W type DRIVER_INFO_2 = TDRIVER_INFO_2 type DRIVER_INFO_2A = TDRIVER_INFO_2A type DRIVER_INFO_2W = TDRIVER_INFO_2W type DRIVER_INFO_3 = TDRIVER_INFO_3 type DRIVER_INFO_3A = TDRIVER_INFO_3A type DRIVER_INFO_3W = TDRIVER_INFO_3W type DRIVER_INFO_4 = TDRIVER_INFO_4 type DRIVER_INFO_4A = TDRIVER_INFO_4A type DRIVER_INFO_4W = TDRIVER_INFO_4W type DRIVER_INFO_5 = TDRIVER_INFO_5 type DRIVER_INFO_5A = TDRIVER_INFO_5A type DRIVER_INFO_5W = TDRIVER_INFO_5W type DRIVER_INFO_6 = TDRIVER_INFO_6 type DRIVER_INFO_6A = TDRIVER_INFO_6A type DRIVER_INFO_6W = TDRIVER_INFO_6W type DRIVER_INFO_8 = TDRIVER_INFO_8 type DRIVER_INFO_8A = TDRIVER_INFO_8A type DRIVER_INFO_8W = TDRIVER_INFO_8W const DRIVER_KERNELMODE = 1 const DRIVER_USERMODE = 2 const DRIVE_CDROM = 5 const DRIVE_FIXED = 3 type DRIVE_LAYOUT_INFORMATION = TDRIVE_LAYOUT_INFORMATION type DRIVE_LAYOUT_INFORMATION_EX = TDRIVE_LAYOUT_INFORMATION_EX type DRIVE_LAYOUT_INFORMATION_GPT = TDRIVE_LAYOUT_INFORMATION_GPT type DRIVE_LAYOUT_INFORMATION_MBR = TDRIVE_LAYOUT_INFORMATION_MBR const DRIVE_NO_ROOT_DIR = 1 const DRIVE_RAMDISK = 6 const DRIVE_REMOTE = 4 const DRIVE_REMOVABLE = 2 const DRIVE_UNKNOWN = 0 const DROPEFFECT_COPY = 1 const DROPEFFECT_LINK = 4 const DROPEFFECT_MOVE = 2 const DROPEFFECT_NONE = 0 const DROPEFFECT_SCROLL = 2147483648 type DROPSTRUCT = TDROPSTRUCT const DRVCNF_CANCEL = 0 const DRVCNF_OK = 1 const DRVCNF_RESTART = 2 type DRVCONFIGINFO = TDRVCONFIGINFO type DRVCONFIGINFOEX = TDRVCONFIGINFOEX const DRV_CANCEL = 0 const DRV_CLOSE = 4 const DRV_CONFIGURE = 7 const DRV_DISABLE = 5 const DRV_ENABLE = 2 const DRV_EXITSESSION = 11 const DRV_FREE = 6 const DRV_INSTALL = 9 const DRV_LOAD = 1 const DRV_MCI_FIRST = 2048 const DRV_MCI_LAST = 6143 const DRV_OK = 1 const DRV_OPEN = 3 const DRV_POWER = 15 const DRV_QUERYCONFIGURE = 8 const DRV_REMOVE = 10 const DRV_RESERVED = 2048 const DRV_RESTART = 2 const DRV_USER = 16384 type DSAFIPSVERSION_ENUM = TDSAFIPSVERSION_ENUM const DSPRINT_PENDING = 2147483648 const DSPRINT_PUBLISH = 1 const DSPRINT_REPUBLISH = 8 const DSPRINT_UNPUBLISH = 4 const DSPRINT_UPDATE = 2 type DSSPRIVKEY_VER3 = TDSSPRIVKEY_VER3 type DSSPUBKEY = TDSSPUBKEY type DSSPUBKEY_VER3 = TDSSPUBKEY_VER3 type DSSSEED = TDSSSEED const DSS_DISABLED = 32 const DSS_HIDEPREFIX = 512 const DSS_MONO = 128 const DSS_NORMAL = 0 const DSS_PREFIXONLY = 1024 const DSS_RIGHT = 32768 const DSS_UNION = 16 const DST_BITMAP = 4 const DST_COMPLEX = 0 const DST_ICON = 3 const DST_PREFIXTEXT = 2 const DST_TEXT = 1 const DS_3DLOOK = 4 const DS_ABSALIGN = 1 const DS_CENTER = 2048 const DS_CENTERMOUSE = 4096 const DS_CONTEXTHELP = 8192 const DS_CONTROL = 1024 const DS_FIXEDSYS = 8 const DS_LOCALEDIT = 32 const DS_MODALFRAME = 128 const DS_NOFAILCREATE = 16 const DS_NOIDLEMSG = 256 const DS_SETFONT = 64 const DS_SETFOREGROUND = 512 const DS_SHELLFONT = 72 const DS_SYSMODAL = 2 const DS_S_SUCCESS = 0 const DTR_CONTROL_DISABLE = 0 const DTR_CONTROL_ENABLE = 1 const DTR_CONTROL_HANDSHAKE = 2 const DT_BOTTOM = 8 const DT_CALCRECT = 1024 const DT_CENTER = 1 const DT_CHARSTREAM = 4 const DT_DISPFILE = 6 const DT_EDITCONTROL = 8192 const DT_END_ELLIPSIS = 32768 const DT_EXPANDTABS = 64 const DT_EXTERNALLEADING = 512 const DT_HIDEPREFIX = 1048576 const DT_INTERNAL = 4096 const DT_LEFT = 0 const DT_METAFILE = 5 const DT_MODIFYSTRING = 65536 const DT_NOCLIP = 256 const DT_NOFULLWIDTHCHARBREAK = 524288 const DT_NOPREFIX = 2048 const DT_PATH_ELLIPSIS = 16384 const DT_PLOTTER = 0 const DT_PREFIXONLY = 2097152 const DT_RASCAMERA = 3 const DT_RASDISPLAY = 1 const DT_RASPRINTER = 2 const DT_RIGHT = 2 const DT_RTLREADING = 131072 const DT_SINGLELINE = 32 const DT_TABSTOP = 128 const DT_TOP = 0 const DT_VCENTER = 4 const DT_WORDBREAK = 16 const DT_WORD_ELLIPSIS = 262144 const DUPLICATE = 6 const DUPLICATE_CLOSE_SOURCE = 1 const DUPLICATE_DEREG = 7 const DUPLICATE_SAME_ACCESS = 2 type DVASPECT = TDVASPECT type DVTARGETDEVICE = TDVTARGETDEVICE const DWLP_DLGPROC = 0 const DWLP_MSGRESULT = 0 const DWLP_USER = 0 type DWORD = TDWORD type DWORD32 = TDWORD32 type DWORD64 = TDWORD64 type DWORDLONG = TDWORDLONG type DWORD_BLOB = TDWORD_BLOB type DWORD_PTR = TDWORD_PTR type DWORD_SIZEDARR = TDWORD_SIZEDARR const DYNAMIC_EH_CONTINUATION_TARGET_ADD = 1 const DYNAMIC_EH_CONTINUATION_TARGET_PROCESSED = 2 const DYNAMIC_ENFORCED_ADDRESS_RANGE_ADD = 1 const DYNAMIC_ENFORCED_ADDRESS_RANGE_PROCESSED = 2 type DYNAMIC_TIME_ZONE_INFORMATION = TDYNAMIC_TIME_ZONE_INFORMATION const DbgRaiseAssertionFailure = 0 const DceErrorInqText = 0 const DdeCreateStringHandle = 0 const DdeInitialize = 0 const DdeQueryString = 0 const DecryptFile = 0 const DefDlgProc = 0 const DefFrameProc = 0 const DefMDIChildProc = 0 const DefWindowProc = 0 const DefineDosDevice = 0 const DeleteFile = 0 const DeleteFileTransacted = 0 const DeleteForm = 0 const DeleteMonitor = 0 const DeletePort = 0 const DeletePrintProcessor = 0 const DeletePrintProvidor = 0 const DeletePrinterConnection = 0 const DeletePrinterData = 0 const DeletePrinterDataEx = 0 const DeletePrinterDriver = 0 const DeletePrinterDriverEx = 0 const DeletePrinterDriverPackage = 0 const DeletePrinterKey = 0 const DeleteVolumeMountPoint = 0 const DeviceCapabilities = 0 const DeviceDsmActionFlag_NonDestructive = 2147483648 const DeviceDsmAction_None = 0 const DeviceDsmAction_Notification = 2147483650 const DeviceDsmAction_Trim = 1 const DialogBox = 0 const DialogBoxIndirect = 0 const DialogBoxIndirectParam = 0 const DialogBoxParam = 0 const DiskClassGuid = 0 const DispatchMessage = 0 const DlgDirList = 0 const DlgDirListComboBox = 0 const DlgDirSelectComboBoxEx = 0 const DlgDirSelectEx = 0 const DnsHostnameToComputerName = 0 const DoEnvironmentSubst = 0 const DocumentEvent = 0 const DocumentProperties = 0 const DragQueryFile = 0 const DrawState = 0 const DrawText = 0 const DrawTextEx = 0 const EADDRINUSE = 100 const EADDRNOTAVAIL = 101 const EAFNOSUPPORT = 102 const EALREADY = 103 const EASTEUROPE_CHARSET = 238 const EBADMSG = 104 const ECANCELED = 105 const ECONNABORTED = 106 const ECONNREFUSED = 107 const ECONNRESET = 108 const EC_DISABLE = 8 const EC_ENABLEALL = 0 const EC_ENABLEONE = 128 const EC_LEFTMARGIN = 1 const EC_QUERYWAITING = 2 const EC_RIGHTMARGIN = 2 const EC_USEFONTINFO = 65535 const EDD_GET_DEVICE_INTERFACE_NAME = 1 const EDEADLK = 36 const EDEADLOCK = 36 const EDESTADDRREQ = 109 const EDGE_BUMP = 9 const EDGE_ETCHED = 6 const EDGE_RAISED = 5 const EDGE_SUNKEN = 10 type EDITWORDBREAKPROC = TEDITWORDBREAKPROC type EDITWORDBREAKPROCA = TEDITWORDBREAKPROCA type EDITWORDBREAKPROCW = TEDITWORDBREAKPROCW const EDS_RAWMODE = 2 const EDS_ROTATEDMODE = 4 const EEInfoGCCOM = 11 const EEInfoGCFRS = 12 const EEInfoNextRecordsMissing = 2 const EEInfoPreviousRecordsMissing = 1 const EEInfoUseFileTime = 4 const EFSRPC_SECURE_ONLY = 8 type EFS_CERTIFICATE_BLOB = TEFS_CERTIFICATE_BLOB const EFS_DROP_ALTERNATE_STREAMS = 16 type EFS_HASH_BLOB = TEFS_HASH_BLOB type EFS_KEY_INFO = TEFS_KEY_INFO type EFS_RPC_BLOB = TEFS_RPC_BLOB const EFS_USE_RECOVERY_KEYS = 1 const EHOSTUNREACH = 110 const EIDRM = 111 const EILSEQ = 42 const EIMES_CANCELCOMPSTRINFOCUS = 2 const EIMES_COMPLETECOMPSTRKILLFOCUS = 4 const EIMES_GETCOMPSTRATONCE = 1 const EINPROGRESS = 112 const EISCONN = 113 type ELEMDESC = TELEMDESC const ELEMENT_STATUS_ACCESS = 8 const ELEMENT_STATUS_AVOLTAG = 536870912 const ELEMENT_STATUS_EXCEPT = 4 const ELEMENT_STATUS_EXENAB = 16 const ELEMENT_STATUS_FULL = 1 const ELEMENT_STATUS_ID_VALID = 8192 const ELEMENT_STATUS_IMPEXP = 2 const ELEMENT_STATUS_INENAB = 32 const ELEMENT_STATUS_INVERT = 4194304 const ELEMENT_STATUS_LUN_VALID = 4096 const ELEMENT_STATUS_NOT_BUS = 32768 const ELEMENT_STATUS_PRODUCT_DATA = 64 const ELEMENT_STATUS_PVOLTAG = 268435456 const ELEMENT_STATUS_SVALID = 8388608 type ELEMENT_TYPE = TELEMENT_TYPE const ELF_CULTURE_LATIN = 0 const ELF_VENDOR_SIZE = 4 const ELF_VERSION = 0 const ELOOP = 114 const EMARCH_ENC_I17_IC_INST_WORD_POS_X = 12 const EMARCH_ENC_I17_IC_INST_WORD_X = 3 const EMARCH_ENC_I17_IC_SIZE_X = 1 const EMARCH_ENC_I17_IC_VAL_POS_X = 21 const EMARCH_ENC_I17_IMM41a_INST_WORD_POS_X = 14 const EMARCH_ENC_I17_IMM41a_INST_WORD_X = 1 const EMARCH_ENC_I17_IMM41a_SIZE_X = 10 const EMARCH_ENC_I17_IMM41a_VAL_POS_X = 22 const EMARCH_ENC_I17_IMM41b_INST_WORD_POS_X = 24 const EMARCH_ENC_I17_IMM41b_INST_WORD_X = 1 const EMARCH_ENC_I17_IMM41b_SIZE_X = 8 const EMARCH_ENC_I17_IMM41b_VAL_POS_X = 32 const EMARCH_ENC_I17_IMM41c_INST_WORD_POS_X = 0 const EMARCH_ENC_I17_IMM41c_INST_WORD_X = 2 const EMARCH_ENC_I17_IMM41c_SIZE_X = 23 const EMARCH_ENC_I17_IMM41c_VAL_POS_X = 40 const EMARCH_ENC_I17_IMM5C_INST_WORD_POS_X = 13 const EMARCH_ENC_I17_IMM5C_INST_WORD_X = 3 const EMARCH_ENC_I17_IMM5C_SIZE_X = 5 const EMARCH_ENC_I17_IMM5C_VAL_POS_X = 16 const EMARCH_ENC_I17_IMM7B_INST_WORD_POS_X = 4 const EMARCH_ENC_I17_IMM7B_INST_WORD_X = 3 const EMARCH_ENC_I17_IMM7B_SIZE_X = 7 const EMARCH_ENC_I17_IMM7B_VAL_POS_X = 0 const EMARCH_ENC_I17_IMM9D_INST_WORD_POS_X = 18 const EMARCH_ENC_I17_IMM9D_INST_WORD_X = 3 const EMARCH_ENC_I17_IMM9D_SIZE_X = 9 const EMARCH_ENC_I17_IMM9D_VAL_POS_X = 7 const EMARCH_ENC_I17_SIGN_INST_WORD_POS_X = 27 const EMARCH_ENC_I17_SIGN_INST_WORD_X = 3 const EMARCH_ENC_I17_SIGN_SIZE_X = 1 const EMARCH_ENC_I17_SIGN_VAL_POS_X = 63 const EMBDHLP_CREATENOW = 0 const EMBDHLP_DELAYCREATE = 65536 const EMBDHLP_INPROC_HANDLER = 0 const EMBDHLP_INPROC_SERVER = 1 type EMR = TEMR type EMRABORTPATH = TEMRABORTPATH type EMRALPHABLEND = TEMRALPHABLEND type EMRANGLEARC = TEMRANGLEARC type EMRARC = TEMRARC type EMRARCTO = TEMRARCTO type EMRBEGINPATH = TEMRBEGINPATH type EMRBITBLT = TEMRBITBLT type EMRCHORD = TEMRCHORD type EMRCLOSEFIGURE = TEMRCLOSEFIGURE type EMRCOLORCORRECTPALETTE = TEMRCOLORCORRECTPALETTE type EMRCOLORMATCHTOTARGET = TEMRCOLORMATCHTOTARGET type EMRCREATEBRUSHINDIRECT = TEMRCREATEBRUSHINDIRECT type EMRCREATECOLORSPACE = TEMRCREATECOLORSPACE type EMRCREATECOLORSPACEW = TEMRCREATECOLORSPACEW type EMRCREATEDIBPATTERNBRUSHPT = TEMRCREATEDIBPATTERNBRUSHPT type EMRCREATEMONOBRUSH = TEMRCREATEMONOBRUSH type EMRCREATEPALETTE = TEMRCREATEPALETTE type EMRCREATEPEN = TEMRCREATEPEN type EMRDELETECOLORSPACE = TEMRDELETECOLORSPACE type EMRDELETEOBJECT = TEMRDELETEOBJECT type EMRDRAWESCAPE = TEMRDRAWESCAPE type EMRELLIPSE = TEMRELLIPSE type EMRENDPATH = TEMRENDPATH type EMREOF = TEMREOF type EMREXCLUDECLIPRECT = TEMREXCLUDECLIPRECT type EMREXTCREATEFONTINDIRECTW = TEMREXTCREATEFONTINDIRECTW type EMREXTCREATEPEN = TEMREXTCREATEPEN type EMREXTESCAPE = TEMREXTESCAPE type EMREXTFLOODFILL = TEMREXTFLOODFILL type EMREXTSELECTCLIPRGN = TEMREXTSELECTCLIPRGN type EMREXTTEXTOUTA = TEMREXTTEXTOUTA type EMREXTTEXTOUTW = TEMREXTTEXTOUTW type EMRFILLPATH = TEMRFILLPATH type EMRFILLRGN = TEMRFILLRGN type EMRFLATTENPATH = TEMRFLATTENPATH type EMRFORMAT = TEMRFORMAT type EMRFRAMERGN = TEMRFRAMERGN type EMRGDICOMMENT = TEMRGDICOMMENT type EMRGLSBOUNDEDRECORD = TEMRGLSBOUNDEDRECORD type EMRGLSRECORD = TEMRGLSRECORD type EMRGRADIENTFILL = TEMRGRADIENTFILL type EMRINTERSECTCLIPRECT = TEMRINTERSECTCLIPRECT type EMRINVERTRGN = TEMRINVERTRGN type EMRLINETO = TEMRLINETO type EMRMASKBLT = TEMRMASKBLT type EMRMODIFYWORLDTRANSFORM = TEMRMODIFYWORLDTRANSFORM type EMRMOVETOEX = TEMRMOVETOEX type EMRNAMEDESCAPE = TEMRNAMEDESCAPE type EMROFFSETCLIPRGN = TEMROFFSETCLIPRGN type EMRPAINTRGN = TEMRPAINTRGN type EMRPIE = TEMRPIE type EMRPIXELFORMAT = TEMRPIXELFORMAT type EMRPLGBLT = TEMRPLGBLT type EMRPOLYBEZIER = TEMRPOLYBEZIER type EMRPOLYBEZIER16 = TEMRPOLYBEZIER16 type EMRPOLYBEZIERTO = TEMRPOLYBEZIERTO type EMRPOLYBEZIERTO16 = TEMRPOLYBEZIERTO16 type EMRPOLYDRAW = TEMRPOLYDRAW type EMRPOLYDRAW16 = TEMRPOLYDRAW16 type EMRPOLYGON = TEMRPOLYGON type EMRPOLYGON16 = TEMRPOLYGON16 type EMRPOLYLINE = TEMRPOLYLINE type EMRPOLYLINE16 = TEMRPOLYLINE16 type EMRPOLYLINETO = TEMRPOLYLINETO type EMRPOLYLINETO16 = TEMRPOLYLINETO16 type EMRPOLYPOLYGON = TEMRPOLYPOLYGON type EMRPOLYPOLYGON16 = TEMRPOLYPOLYGON16 type EMRPOLYPOLYLINE = TEMRPOLYPOLYLINE type EMRPOLYPOLYLINE16 = TEMRPOLYPOLYLINE16 type EMRPOLYTEXTOUTA = TEMRPOLYTEXTOUTA type EMRPOLYTEXTOUTW = TEMRPOLYTEXTOUTW type EMRREALIZEPALETTE = TEMRREALIZEPALETTE type EMRRECTANGLE = TEMRRECTANGLE type EMRRESIZEPALETTE = TEMRRESIZEPALETTE type EMRRESTOREDC = TEMRRESTOREDC type EMRROUNDRECT = TEMRROUNDRECT type EMRSAVEDC = TEMRSAVEDC type EMRSCALEVIEWPORTEXTEX = TEMRSCALEVIEWPORTEXTEX type EMRSCALEWINDOWEXTEX = TEMRSCALEWINDOWEXTEX type EMRSELECTCLIPPATH = TEMRSELECTCLIPPATH type EMRSELECTCOLORSPACE = TEMRSELECTCOLORSPACE type EMRSELECTOBJECT = TEMRSELECTOBJECT type EMRSELECTPALETTE = TEMRSELECTPALETTE type EMRSETARCDIRECTION = TEMRSETARCDIRECTION type EMRSETBKCOLOR = TEMRSETBKCOLOR type EMRSETBKMODE = TEMRSETBKMODE type EMRSETBRUSHORGEX = TEMRSETBRUSHORGEX type EMRSETCOLORADJUSTMENT = TEMRSETCOLORADJUSTMENT type EMRSETCOLORSPACE = TEMRSETCOLORSPACE type EMRSETDIBITSTODEVICE = TEMRSETDIBITSTODEVICE type EMRSETICMMODE = TEMRSETICMMODE type EMRSETICMPROFILE = TEMRSETICMPROFILE type EMRSETICMPROFILEA = TEMRSETICMPROFILEA type EMRSETICMPROFILEW = TEMRSETICMPROFILEW type EMRSETLAYOUT = TEMRSETLAYOUT type EMRSETMAPMODE = TEMRSETMAPMODE type EMRSETMAPPERFLAGS = TEMRSETMAPPERFLAGS type EMRSETMETARGN = TEMRSETMETARGN type EMRSETMITERLIMIT = TEMRSETMITERLIMIT type EMRSETPALETTEENTRIES = TEMRSETPALETTEENTRIES type EMRSETPIXELV = TEMRSETPIXELV type EMRSETPOLYFILLMODE = TEMRSETPOLYFILLMODE type EMRSETROP2 = TEMRSETROP2 type EMRSETSTRETCHBLTMODE = TEMRSETSTRETCHBLTMODE type EMRSETTEXTALIGN = TEMRSETTEXTALIGN type EMRSETTEXTCOLOR = TEMRSETTEXTCOLOR type EMRSETVIEWPORTEXTEX = TEMRSETVIEWPORTEXTEX type EMRSETVIEWPORTORGEX = TEMRSETVIEWPORTORGEX type EMRSETWINDOWEXTEX = TEMRSETWINDOWEXTEX type EMRSETWINDOWORGEX = TEMRSETWINDOWORGEX type EMRSETWORLDTRANSFORM = TEMRSETWORLDTRANSFORM type EMRSTRETCHBLT = TEMRSTRETCHBLT type EMRSTRETCHDIBITS = TEMRSTRETCHDIBITS type EMRSTROKEANDFILLPATH = TEMRSTROKEANDFILLPATH type EMRSTROKEPATH = TEMRSTROKEPATH type EMRTEXT = TEMRTEXT type EMRTRANSPARENTBLT = TEMRTRANSPARENTBLT type EMRWIDENPATH = TEMRWIDENPATH const EMR_ABORTPATH = 68 const EMR_ALPHABLEND = 114 const EMR_ANGLEARC = 41 const EMR_ARC = 45 const EMR_ARCTO = 55 const EMR_BEGINPATH = 59 const EMR_BITBLT = 76 const EMR_CHORD = 46 const EMR_CLOSEFIGURE = 61 const EMR_COLORCORRECTPALETTE = 111 const EMR_COLORMATCHTOTARGETW = 121 const EMR_CREATEBRUSHINDIRECT = 39 const EMR_CREATECOLORSPACE = 99 const EMR_CREATECOLORSPACEW = 122 const EMR_CREATEDIBPATTERNBRUSHPT = 94 const EMR_CREATEMONOBRUSH = 93 const EMR_CREATEPALETTE = 49 const EMR_CREATEPEN = 38 const EMR_DELETECOLORSPACE = 101 const EMR_DELETEOBJECT = 40 const EMR_ELLIPSE = 42 const EMR_ENDPATH = 60 const EMR_EOF = 14 const EMR_EXCLUDECLIPRECT = 29 const EMR_EXTCREATEFONTINDIRECTW = 82 const EMR_EXTCREATEPEN = 95 const EMR_EXTFLOODFILL = 53 const EMR_EXTSELECTCLIPRGN = 75 const EMR_EXTTEXTOUTA = 83 const EMR_EXTTEXTOUTW = 84 const EMR_FILLPATH = 62 const EMR_FILLRGN = 71 const EMR_FLATTENPATH = 65 const EMR_FRAMERGN = 72 const EMR_GDICOMMENT = 70 const EMR_GLSBOUNDEDRECORD = 103 const EMR_GLSRECORD = 102 const EMR_GRADIENTFILL = 118 const EMR_HEADER = 1 const EMR_INTERSECTCLIPRECT = 30 const EMR_INVERTRGN = 73 const EMR_LINETO = 54 const EMR_MASKBLT = 78 const EMR_MAX = 122 const EMR_MIN = 1 const EMR_MODIFYWORLDTRANSFORM = 36 const EMR_MOVETOEX = 27 const EMR_OFFSETCLIPRGN = 26 const EMR_PAINTRGN = 74 const EMR_PIE = 47 const EMR_PIXELFORMAT = 104 const EMR_PLGBLT = 79 const EMR_POLYBEZIER = 2 const EMR_POLYBEZIER16 = 85 const EMR_POLYBEZIERTO = 5 const EMR_POLYBEZIERTO16 = 88 const EMR_POLYDRAW = 56 const EMR_POLYDRAW16 = 92 const EMR_POLYGON = 3 const EMR_POLYGON16 = 86 const EMR_POLYLINE = 4 const EMR_POLYLINE16 = 87 const EMR_POLYLINETO = 6 const EMR_POLYLINETO16 = 89 const EMR_POLYPOLYGON = 8 const EMR_POLYPOLYGON16 = 91 const EMR_POLYPOLYLINE = 7 const EMR_POLYPOLYLINE16 = 90 const EMR_POLYTEXTOUTA = 96 const EMR_POLYTEXTOUTW = 97 const EMR_REALIZEPALETTE = 52 const EMR_RECTANGLE = 43 const EMR_RESERVED_105 = 105 const EMR_RESERVED_106 = 106 const EMR_RESERVED_107 = 107 const EMR_RESERVED_108 = 108 const EMR_RESERVED_109 = 109 const EMR_RESERVED_110 = 110 const EMR_RESERVED_117 = 117 const EMR_RESERVED_119 = 119 const EMR_RESERVED_120 = 120 const EMR_RESIZEPALETTE = 51 const EMR_RESTOREDC = 34 const EMR_ROUNDRECT = 44 const EMR_SAVEDC = 33 const EMR_SCALEVIEWPORTEXTEX = 31 const EMR_SCALEWINDOWEXTEX = 32 const EMR_SELECTCLIPPATH = 67 const EMR_SELECTOBJECT = 37 const EMR_SELECTPALETTE = 48 const EMR_SETARCDIRECTION = 57 const EMR_SETBKCOLOR = 25 const EMR_SETBKMODE = 18 const EMR_SETBRUSHORGEX = 13 const EMR_SETCOLORADJUSTMENT = 23 const EMR_SETCOLORSPACE = 100 const EMR_SETDIBITSTODEVICE = 80 const EMR_SETICMMODE = 98 const EMR_SETICMPROFILEA = 112 const EMR_SETICMPROFILEW = 113 const EMR_SETLAYOUT = 115 const EMR_SETMAPMODE = 17 const EMR_SETMAPPERFLAGS = 16 const EMR_SETMETARGN = 28 const EMR_SETMITERLIMIT = 58 const EMR_SETPALETTEENTRIES = 50 const EMR_SETPIXELV = 15 const EMR_SETPOLYFILLMODE = 19 const EMR_SETROP2 = 20 const EMR_SETSTRETCHBLTMODE = 21 const EMR_SETTEXTALIGN = 22 const EMR_SETTEXTCOLOR = 24 const EMR_SETVIEWPORTEXTEX = 11 const EMR_SETVIEWPORTORGEX = 12 const EMR_SETWINDOWEXTEX = 9 const EMR_SETWINDOWORGEX = 10 const EMR_SETWORLDTRANSFORM = 35 const EMR_STRETCHBLT = 77 const EMR_STRETCHDIBITS = 81 const EMR_STROKEANDFILLPATH = 63 const EMR_STROKEPATH = 64 const EMR_TRANSPARENTBLT = 116 const EMR_WIDENPATH = 66 const EMSGSIZE = 115 const EMSIS_COMPOSITIONSTRING = 1 const EM_CANUNDO = 198 const EM_CHARFROMPOS = 215 const EM_EMPTYUNDOBUFFER = 205 const EM_ENABLEFEATURE = 218 const EM_FMTLINES = 200 const EM_GETFIRSTVISIBLELINE = 206 const EM_GETHANDLE = 189 const EM_GETIMESTATUS = 217 const EM_GETLIMITTEXT = 213 const EM_GETLINE = 196 const EM_GETLINECOUNT = 186 const EM_GETMARGINS = 212 const EM_GETMODIFY = 184 const EM_GETPASSWORDCHAR = 210 const EM_GETRECT = 178 const EM_GETSEL = 176 const EM_GETTHUMB = 190 const EM_GETWORDBREAKPROC = 209 const EM_LIMITTEXT = 197 const EM_LINEFROMCHAR = 201 const EM_LINEINDEX = 187 const EM_LINELENGTH = 193 const EM_LINESCROLL = 182 const EM_POSFROMCHAR = 214 const EM_REPLACESEL = 194 const EM_SCROLL = 181 const EM_SCROLLCARET = 183 const EM_SETHANDLE = 188 const EM_SETIMESTATUS = 216 const EM_SETLIMITTEXT = 197 const EM_SETMARGINS = 211 const EM_SETMODIFY = 185 const EM_SETPASSWORDCHAR = 204 const EM_SETREADONLY = 207 const EM_SETRECT = 179 const EM_SETRECTNP = 180 const EM_SETSEL = 177 const EM_SETTABSTOPS = 203 const EM_SETWORDBREAKPROC = 208 const EM_UNDO = 199 const ENABLEDUPLEX = 28 const ENABLEPAIRKERNING = 769 const ENABLERELATIVEWIDTHS = 768 const ENABLE_AUTO_POSITION = 256 const ENABLE_DISABLE_AUTOSAVE = 210 const ENABLE_DISABLE_AUTO_OFFLINE = 219 const ENABLE_ECHO_INPUT = 4 const ENABLE_EXTENDED_FLAGS = 128 const ENABLE_INSERT_MODE = 32 const ENABLE_LINE_INPUT = 2 const ENABLE_LVB_GRID_WORLDWIDE = 16 const ENABLE_MOUSE_INPUT = 16 const ENABLE_PROCESSED_INPUT = 1 const ENABLE_PROCESSED_OUTPUT = 1 const ENABLE_QUICK_EDIT_MODE = 64 const ENABLE_SMART = 216 const ENABLE_VIRTUAL_TERMINAL_INPUT = 512 const ENABLE_VIRTUAL_TERMINAL_PROCESSING = 4 const ENABLE_WINDOW_INPUT = 8 const ENABLE_WRAP_AT_EOL_OUTPUT = 2 const ENAMETOOLONG = 38 const ENCAPSULATED_POSTSCRIPT = 4116 type ENCRYPTED_DATA_INFO = TENCRYPTED_DATA_INFO const ENCRYPTED_DATA_INFO_SPARSE_FILE = 1 type ENCRYPTION_BUFFER = TENCRYPTION_BUFFER type ENCRYPTION_CERTIFICATE = TENCRYPTION_CERTIFICATE type ENCRYPTION_CERTIFICATE_HASH = TENCRYPTION_CERTIFICATE_HASH type ENCRYPTION_CERTIFICATE_HASH_LIST = TENCRYPTION_CERTIFICATE_HASH_LIST type ENCRYPTION_CERTIFICATE_LIST = TENCRYPTION_CERTIFICATE_LIST const ENCRYPTION_FORMAT_DEFAULT = 1 const ENDDOC = 11 const ENDSESSION_CLOSEAPP = 1 const ENDSESSION_CRITICAL = 1073741824 const ENDSESSION_LOGOFF = 2147483648 const END_PATH = 4098 const ENETDOWN = 116 const ENETRESET = 117 const ENETUNREACH = 118 const ENHANCED_KEY = 256 type ENHMETAHEADER = TENHMETAHEADER type ENHMETARECORD = TENHMETARECORD const ENHMETA_SIGNATURE = 1179469088 const ENHMETA_STOCK_OBJECT = 2147483648 type ENHMFENUMPROC = TENHMFENUMPROC const ENLISTMENT_ALL_ACCESS = 983071 type ENLISTMENT_BASIC_INFORMATION = TENLISTMENT_BASIC_INFORMATION type ENLISTMENT_CRM_INFORMATION = TENLISTMENT_CRM_INFORMATION const ENLISTMENT_GENERIC_EXECUTE = 131100 const ENLISTMENT_GENERIC_READ = 131073 const ENLISTMENT_GENERIC_WRITE = 131102 type ENLISTMENT_INFORMATION_CLASS = TENLISTMENT_INFORMATION_CLASS const ENLISTMENT_MAXIMUM_OPTION = 1 const ENLISTMENT_OBJECT_NAME_LENGTH_IN_BYTES = 0 const ENLISTMENT_OBJECT_PATH = "\\\\Enlistment\\\\" const ENLISTMENT_QUERY_INFORMATION = 1 const ENLISTMENT_RECOVER = 4 const ENLISTMENT_SET_INFORMATION = 2 const ENLISTMENT_SUBORDINATE_RIGHTS = 8 const ENLISTMENT_SUPERIOR = 1 const ENLISTMENT_SUPERIOR_RIGHTS = 16 const ENOBUFS = 119 const ENODATA = 120 const ENOFILE = 2 const ENOLCK = 39 const ENOLINK = 121 const ENOMSG = 122 const ENOPROTOOPT = 123 const ENOSR = 124 const ENOSTR = 125 const ENOSYS = 40 const ENOTCONN = 126 const ENOTEMPTY = 41 const ENOTRECOVERABLE = 127 const ENOTSOCK = 128 const ENOTSUP = 129 type ENUMLOGFONT = TENUMLOGFONT type ENUMLOGFONTA = TENUMLOGFONTA type ENUMLOGFONTEX = TENUMLOGFONTEX type ENUMLOGFONTEXA = TENUMLOGFONTEXA type ENUMLOGFONTEXDV = TENUMLOGFONTEXDV type ENUMLOGFONTEXDVA = TENUMLOGFONTEXDVA type ENUMLOGFONTEXDVW = TENUMLOGFONTEXDVW type ENUMLOGFONTEXW = TENUMLOGFONTEXW type ENUMLOGFONTW = TENUMLOGFONTW const ENUMPAPERBINS = 31 const ENUMPAPERMETRICS = 34 const ENUMRESLANGPROC = 0 type ENUMRESLANGPROCA = TENUMRESLANGPROCA type ENUMRESLANGPROCW = TENUMRESLANGPROCW const ENUMRESNAMEPROC = 0 type ENUMRESNAMEPROCA = TENUMRESNAMEPROCA type ENUMRESNAMEPROCW = TENUMRESNAMEPROCW const ENUMRESTYPEPROC = 0 type ENUMRESTYPEPROCA = TENUMRESTYPEPROCA type ENUMRESTYPEPROCW = TENUMRESTYPEPROCW type ENUMTEXTMETRIC = TENUMTEXTMETRIC type ENUMTEXTMETRICA = TENUMTEXTMETRICA type ENUMTEXTMETRICW = TENUMTEXTMETRICW type ENUMUILANG = TENUMUILANG const ENUM_ALL_CALENDARS = 4294967295 const ENUM_CURRENT_SETTINGS = -1 const ENUM_E_FIRST = 2147746224 const ENUM_E_LAST = 2147746239 const ENUM_REGISTRY_SETTINGS = -2 type ENUM_SERVICE_STATUS = TENUM_SERVICE_STATUS type ENUM_SERVICE_STATUSA = TENUM_SERVICE_STATUSA type ENUM_SERVICE_STATUSW = TENUM_SERVICE_STATUSW type ENUM_SERVICE_STATUS_PROCESS = TENUM_SERVICE_STATUS_PROCESS type ENUM_SERVICE_STATUS_PROCESSA = TENUM_SERVICE_STATUS_PROCESSA type ENUM_SERVICE_STATUS_PROCESSW = TENUM_SERVICE_STATUS_PROCESSW const ENUM_S_FIRST = 262576 const ENUM_S_LAST = 262591 const EN_AFTER_PASTE = 2049 const EN_ALIGN_LTR_EC = 1792 const EN_ALIGN_RTL_EC = 1793 const EN_BEFORE_PASTE = 2048 const EN_CHANGE = 768 const EN_ERRSPACE = 1280 const EN_HSCROLL = 1537 const EN_KILLFOCUS = 512 const EN_MAXTEXT = 1281 const EN_SETFOCUS = 256 const EN_UPDATE = 1024 const EN_VSCROLL = 1538 type EOLE_AUTHENTICATION_CAPABILITIES = TEOLE_AUTHENTICATION_CAPABILITIES const EOPNOTSUPP = 130 const EOVERFLOW = 132 const EOWNERDEAD = 133 const EPROTO = 134 const EPROTONOSUPPORT = 135 const EPROTOTYPE = 136 const EPSPRINTING = 33 const EPS_SIGNATURE = 1179865157 const EPT_S_CANT_CREATE = 1899 const EPT_S_CANT_PERFORM_OP = 1752 const EPT_S_INVALID_ENTRY = 1751 const EPT_S_NOT_REGISTERED = 1753 type EPrintXPSJobOperation = TEPrintXPSJobOperation type EPrintXPSJobProgress = TEPrintXPSJobProgress const ERROR = 0 const ERROR_ABANDONED_WAIT_0 = 735 const ERROR_ABANDONED_WAIT_63 = 736 const ERROR_ACCESS_DENIED = 5 const ERROR_ACCESS_DISABLED_BY_POLICY = 1260 const ERROR_ACCESS_DISABLED_WEBBLADE = 1277 const ERROR_ACCESS_DISABLED_WEBBLADE_TAMPER = 1278 const ERROR_ACCOUNT_DISABLED = 1331 const ERROR_ACCOUNT_EXPIRED = 1793 const ERROR_ACCOUNT_LOCKED_OUT = 1909 const ERROR_ACCOUNT_RESTRICTION = 1327 const ERROR_ACTIVATION_COUNT_EXCEEDED = 7059 const ERROR_ACTIVE_CONNECTIONS = 2402 const ERROR_ADAP_HDW_ERR = 57 const ERROR_ADDRESS_ALREADY_ASSOCIATED = 1227 const ERROR_ADDRESS_NOT_ASSOCIATED = 1228 const ERROR_ADVANCED_INSTALLER_FAILED = 14099 const ERROR_ALERTED = 739 const ERROR_ALIAS_EXISTS = 1379 const ERROR_ALLOTTED_SPACE_EXCEEDED = 1344 const ERROR_ALL_NODES_NOT_AVAILABLE = 5037 const ERROR_ALL_USER_TRUST_QUOTA_EXCEEDED = 1933 const ERROR_ALREADY_ASSIGNED = 85 const ERROR_ALREADY_EXISTS = 183 const ERROR_ALREADY_FIBER = 1280 const ERROR_ALREADY_INITIALIZED = 1247 const ERROR_ALREADY_REGISTERED = 1242 const ERROR_ALREADY_RUNNING_LKG = 1074 const ERROR_ALREADY_THREAD = 1281 const ERROR_ALREADY_WAITING = 1904 const ERROR_AMBIGUOUS_SYSTEM_DEVICE = 15250 const ERROR_API_UNAVAILABLE = 15841 const ERROR_APPHELP_BLOCK = 1259 const ERROR_APPX_INTEGRITY_FAILURE_CLR_NGEN = 15624 const ERROR_APP_WRONG_OS = 1151 const ERROR_ARENA_TRASHED = 7 const ERROR_ARITHMETIC_OVERFLOW = 534 const ERROR_ATOMIC_LOCKS_NOT_SUPPORTED = 174 const ERROR_AUTHENTICATION_FIREWALL_FAILED = 1935 const ERROR_AUTHIP_FAILURE = 1469 const ERROR_AUTODATASEG_EXCEEDS_64k = 199 const ERROR_BADDB = 1009 const ERROR_BADKEY = 1010 const ERROR_BAD_ARGUMENTS = 160 const ERROR_BAD_COMMAND = 22 const ERROR_BAD_CONFIGURATION = 1610 const ERROR_BAD_DESCRIPTOR_FORMAT = 1361 const ERROR_BAD_DEVICE = 1200 const ERROR_BAD_DEV_TYPE = 66 const ERROR_BAD_DRIVER = 2001 const ERROR_BAD_DRIVER_LEVEL = 119 const ERROR_BAD_ENVIRONMENT = 10 const ERROR_BAD_EXE_FORMAT = 193 const ERROR_BAD_FILE_TYPE = 222 const ERROR_BAD_FORMAT = 11 const ERROR_BAD_IMPERSONATION_LEVEL = 1346 const ERROR_BAD_INHERITANCE_ACL = 1340 const ERROR_BAD_LENGTH = 24 const ERROR_BAD_LOGON_SESSION_STATE = 1365 const ERROR_BAD_NETPATH = 53 const ERROR_BAD_NET_NAME = 67 const ERROR_BAD_NET_RESP = 58 const ERROR_BAD_PATHNAME = 161 const ERROR_BAD_PIPE = 230 const ERROR_BAD_PROFILE = 1206 const ERROR_BAD_PROVIDER = 1204 const ERROR_BAD_QUERY_SYNTAX = 1615 const ERROR_BAD_RECOVERY_POLICY = 6012 const ERROR_BAD_REM_ADAP = 60 const ERROR_BAD_THREADID_ADDR = 159 const ERROR_BAD_TOKEN_TYPE = 1349 const ERROR_BAD_UNIT = 20 const ERROR_BAD_USERNAME = 2202 const ERROR_BAD_USER_PROFILE = 1253 const ERROR_BAD_VALIDATION_CLASS = 1348 const ERROR_BEGINNING_OF_MEDIA = 1102 const ERROR_BIDI_DEVICE_OFFLINE = 13004 const ERROR_BIDI_ERROR_BASE = 13000 const ERROR_BIDI_NOT_SUPPORTED = 50 const ERROR_BIDI_SCHEMA_NOT_SUPPORTED = 13005 const ERROR_BIDI_SCHEMA_READ_ONLY = 13002 const ERROR_BIDI_SERVER_OFFLINE = 13003 const ERROR_BIDI_STATUS_OK = 0 const ERROR_BIDI_STATUS_WARNING = 13001 const ERROR_BOOT_ALREADY_ACCEPTED = 1076 const ERROR_BROKEN_PIPE = 109 const ERROR_BUFFER_OVERFLOW = 111 const ERROR_BUSY = 170 const ERROR_BUSY_DRIVE = 142 const ERROR_BUS_RESET = 1111 const ERROR_CALLBACK_SUPPLIED_INVALID_DATA = 1273 const ERROR_CALL_NOT_IMPLEMENTED = 120 const ERROR_CANCELLED = 1223 const ERROR_CANCEL_VIOLATION = 173 const ERROR_CANNOT_COPY = 266 const ERROR_CANNOT_DETECT_DRIVER_FAILURE = 1080 const ERROR_CANNOT_DETECT_PROCESS_ABORT = 1081 const ERROR_CANNOT_FIND_WND_CLASS = 1407 const ERROR_CANNOT_IMPERSONATE = 1368 const ERROR_CANNOT_MAKE = 82 const ERROR_CANNOT_OPEN_PROFILE = 1205 const ERROR_CANNOT_SWITCH_RUNLEVEL = 15400 const ERROR_CANTOPEN = 1011 const ERROR_CANTREAD = 1012 const ERROR_CANTWRITE = 1013 const ERROR_CANT_ACCESS_DOMAIN_INFO = 1351 const ERROR_CANT_ACCESS_FILE = 1920 const ERROR_CANT_DELETE_LAST_ITEM = 4335 const ERROR_CANT_DISABLE_MANDATORY = 1310 const ERROR_CANT_EVICT_ACTIVE_NODE = 5009 const ERROR_CANT_OPEN_ANONYMOUS = 1347 const ERROR_CANT_RESOLVE_FILENAME = 1921 const ERROR_CAN_NOT_COMPLETE = 1003 const ERROR_CAN_NOT_DEL_LOCAL_WINS = 4001 const ERROR_CASE_DIFFERING_NAMES_IN_DIR = 424 const ERROR_CHECKOUT_REQUIRED = 221 const ERROR_CHILD_MUST_BE_VOLATILE = 1021 const ERROR_CHILD_NOT_COMPLETE = 129 const ERROR_CHILD_WINDOW_MENU = 1436 const ERROR_CIRCULAR_DEPENDENCY = 1059 const ERROR_CLASS_ALREADY_EXISTS = 1410 const ERROR_CLASS_DOES_NOT_EXIST = 1411 const ERROR_CLASS_HAS_WINDOWS = 1412 const ERROR_CLEANER_CARTRIDGE_INSTALLED = 4340 const ERROR_CLEANER_CARTRIDGE_SPENT = 4333 const ERROR_CLEANER_SLOT_NOT_SET = 4332 const ERROR_CLEANER_SLOT_SET = 4331 const ERROR_CLIPBOARD_NOT_OPEN = 1418 const ERROR_CLIPPING_NOT_SUPPORTED = 2005 const ERROR_CLUSCFG_ALREADY_COMMITTED = 5901 const ERROR_CLUSCFG_ROLLBACK_FAILED = 5902 const ERROR_CLUSCFG_SYSTEM_DISK_DRIVE_LETTER_CONFLICT = 5903 const ERROR_CLUSTERLOG_CHKPOINT_NOT_FOUND = 5032 const ERROR_CLUSTERLOG_CORRUPT = 5029 const ERROR_CLUSTERLOG_EXCEEDS_MAXSIZE = 5031 const ERROR_CLUSTERLOG_NOT_ENOUGH_SPACE = 5033 const ERROR_CLUSTERLOG_RECORD_EXCEEDS_MAXSIZE = 5030 const ERROR_CLUSTER_CANT_CREATE_DUP_CLUSTER_NAME = 5900 const ERROR_CLUSTER_DATABASE_SEQMISMATCH = 5083 const ERROR_CLUSTER_EVICT_WITHOUT_CLEANUP = 5896 const ERROR_CLUSTER_GUM_NOT_LOCKER = 5085 const ERROR_CLUSTER_INCOMPATIBLE_VERSIONS = 5075 const ERROR_CLUSTER_INSTANCE_ID_MISMATCH = 5893 const ERROR_CLUSTER_INVALID_NETWORK = 5054 const ERROR_CLUSTER_INVALID_NETWORK_PROVIDER = 5049 const ERROR_CLUSTER_INVALID_NODE = 5039 const ERROR_CLUSTER_INVALID_REQUEST = 5048 const ERROR_CLUSTER_IPADDR_IN_USE = 5057 const ERROR_CLUSTER_JOIN_ABORTED = 5074 const ERROR_CLUSTER_JOIN_IN_PROGRESS = 5041 const ERROR_CLUSTER_JOIN_NOT_IN_PROGRESS = 5053 const ERROR_CLUSTER_LAST_INTERNAL_NETWORK = 5066 const ERROR_CLUSTER_LOCAL_NODE_NOT_FOUND = 5043 const ERROR_CLUSTER_MAXNUM_OF_RESOURCES_EXCEEDED = 5076 const ERROR_CLUSTER_MEMBERSHIP_HALT = 5892 const ERROR_CLUSTER_MEMBERSHIP_INVALID_STATE = 5890 const ERROR_CLUSTER_MISMATCHED_COMPUTER_ACCT_NAME = 5905 const ERROR_CLUSTER_NETINTERFACE_EXISTS = 5046 const ERROR_CLUSTER_NETINTERFACE_NOT_FOUND = 5047 const ERROR_CLUSTER_NETWORK_ALREADY_OFFLINE = 5064 const ERROR_CLUSTER_NETWORK_ALREADY_ONLINE = 5063 const ERROR_CLUSTER_NETWORK_EXISTS = 5044 const ERROR_CLUSTER_NETWORK_HAS_DEPENDENTS = 5067 const ERROR_CLUSTER_NETWORK_NOT_FOUND = 5045 const ERROR_CLUSTER_NETWORK_NOT_FOUND_FOR_IP = 5894 const ERROR_CLUSTER_NETWORK_NOT_INTERNAL = 5060 const ERROR_CLUSTER_NODE_ALREADY_DOWN = 5062 const ERROR_CLUSTER_NODE_ALREADY_HAS_DFS_ROOT = 5088 const ERROR_CLUSTER_NODE_ALREADY_MEMBER = 5065 const ERROR_CLUSTER_NODE_ALREADY_UP = 5061 const ERROR_CLUSTER_NODE_DOWN = 5050 const ERROR_CLUSTER_NODE_EXISTS = 5040 const ERROR_CLUSTER_NODE_NOT_FOUND = 5042 const ERROR_CLUSTER_NODE_NOT_MEMBER = 5052 const ERROR_CLUSTER_NODE_NOT_PAUSED = 5058 const ERROR_CLUSTER_NODE_NOT_READY = 5072 const ERROR_CLUSTER_NODE_PAUSED = 5070 const ERROR_CLUSTER_NODE_SHUTTING_DOWN = 5073 const ERROR_CLUSTER_NODE_UNREACHABLE = 5051 const ERROR_CLUSTER_NODE_UP = 5056 const ERROR_CLUSTER_NO_RPC_PACKAGES_REGISTERED = 5081 const ERROR_CLUSTER_NO_SECURITY_CONTEXT = 5059 const ERROR_CLUSTER_OLD_VERSION = 5904 const ERROR_CLUSTER_OWNER_NOT_IN_PREFLIST = 5082 const ERROR_CLUSTER_PARAMETER_MISMATCH = 5897 const ERROR_CLUSTER_PROPERTY_DATA_TYPE_MISMATCH = 5895 const ERROR_CLUSTER_QUORUMLOG_NOT_FOUND = 5891 const ERROR_CLUSTER_RESNAME_NOT_FOUND = 5080 const ERROR_CLUSTER_RESOURCE_TYPE_NOT_FOUND = 5078 const ERROR_CLUSTER_RESTYPE_NOT_SUPPORTED = 5079 const ERROR_CLUSTER_SHUTTING_DOWN = 5022 const ERROR_CLUSTER_SYSTEM_CONFIG_CHANGED = 5077 const ERROR_CLUSTER_WRONG_OS_VERSION = 5899 const ERROR_COLORSPACE_MISMATCH = 2021 const ERROR_COMMITMENT_LIMIT = 1455 const ERROR_COMMITMENT_MINIMUM = 635 const ERROR_COMPRESSION_NOT_BENEFICIAL = 344 const ERROR_COM_TASK_STOP_PENDING = 15501 const ERROR_CONNECTED_OTHER_PASSWORD = 2108 const ERROR_CONNECTED_OTHER_PASSWORD_DEFAULT = 2109 const ERROR_CONNECTION_ABORTED = 1236 const ERROR_CONNECTION_ACTIVE = 1230 const ERROR_CONNECTION_COUNT_LIMIT = 1238 const ERROR_CONNECTION_INVALID = 1229 const ERROR_CONNECTION_REFUSED = 1225 const ERROR_CONNECTION_UNAVAIL = 1201 const ERROR_CONTEXT_EXPIRED = 1931 const ERROR_CONTINUE = 1246 const ERROR_CONTROLLING_IEPORT = 4329 const ERROR_CONTROL_ID_NOT_FOUND = 1421 const ERROR_CORE_RESOURCE = 5026 const ERROR_COUNTER_TIMEOUT = 1121 const ERROR_CRC = 23 const ERROR_CREATE_FAILED = 1631 const ERROR_CSCSHARE_OFFLINE = 1262 const ERROR_CTX_BAD_VIDEO_MODE = 7025 const ERROR_CTX_CANNOT_MAKE_EVENTLOG_ENTRY = 7005 const ERROR_CTX_CLIENT_LICENSE_IN_USE = 7052 const ERROR_CTX_CLIENT_LICENSE_NOT_SET = 7053 const ERROR_CTX_CLIENT_QUERY_TIMEOUT = 7040 const ERROR_CTX_CLOSE_PENDING = 7007 const ERROR_CTX_CONSOLE_CONNECT = 7042 const ERROR_CTX_CONSOLE_DISCONNECT = 7041 const ERROR_CTX_GRAPHICS_INVALID = 7035 const ERROR_CTX_INVALID_MODEMNAME = 7010 const ERROR_CTX_INVALID_PD = 7002 const ERROR_CTX_INVALID_WD = 7049 const ERROR_CTX_LICENSE_CLIENT_INVALID = 7055 const ERROR_CTX_LICENSE_EXPIRED = 7056 const ERROR_CTX_LICENSE_NOT_AVAILABLE = 7054 const ERROR_CTX_LOGON_DISABLED = 7037 const ERROR_CTX_MODEM_INF_NOT_FOUND = 7009 const ERROR_CTX_MODEM_RESPONSE_BUSY = 7015 const ERROR_CTX_MODEM_RESPONSE_ERROR = 7011 const ERROR_CTX_MODEM_RESPONSE_NO_CARRIER = 7013 const ERROR_CTX_MODEM_RESPONSE_NO_DIALTONE = 7014 const ERROR_CTX_MODEM_RESPONSE_TIMEOUT = 7012 const ERROR_CTX_MODEM_RESPONSE_VOICE = 7016 const ERROR_CTX_NOT_CONSOLE = 7038 const ERROR_CTX_NO_OUTBUF = 7008 const ERROR_CTX_PD_NOT_FOUND = 7003 const ERROR_CTX_SERVICE_NAME_COLLISION = 7006 const ERROR_CTX_SHADOW_DENIED = 7044 const ERROR_CTX_SHADOW_DISABLED = 7051 const ERROR_CTX_SHADOW_ENDED_BY_MODE_CHANGE = 7058 const ERROR_CTX_SHADOW_INVALID = 7050 const ERROR_CTX_SHADOW_NOT_RUNNING = 7057 const ERROR_CTX_TD_ERROR = 7017 const ERROR_CTX_WD_NOT_FOUND = 7004 const ERROR_CTX_WINSTATION_ACCESS_DENIED = 7045 const ERROR_CTX_WINSTATION_ALREADY_EXISTS = 7023 const ERROR_CTX_WINSTATION_BUSY = 7024 const ERROR_CTX_WINSTATION_NAME_INVALID = 7001 const ERROR_CTX_WINSTATION_NOT_FOUND = 7022 const ERROR_CURRENT_DIRECTORY = 16 const ERROR_CURRENT_DOMAIN_NOT_ALLOWED = 1399 const ERROR_DATABASE_BACKUP_CORRUPT = 5087 const ERROR_DATABASE_DOES_NOT_EXIST = 1065 const ERROR_DATABASE_FAILURE = 4313 const ERROR_DATABASE_FULL = 4314 const ERROR_DATATYPE_MISMATCH = 1629 const ERROR_DC_NOT_FOUND = 1425 const ERROR_DDE_FAIL = 1156 const ERROR_DEBUGGER_INACTIVE = 1284 const ERROR_DECRYPTION_FAILED = 6001 const ERROR_DELAY_LOAD_FAILED = 1285 const ERROR_DELETE_PENDING = 303 const ERROR_DELETING_EXISTING_APPLICATIONDATA_STORE_FAILED = 15621 const ERROR_DELETING_ICM_XFORM = 2019 const ERROR_DEPENDENCY_ALREADY_EXISTS = 5003 const ERROR_DEPENDENCY_NOT_ALLOWED = 5069 const ERROR_DEPENDENCY_NOT_FOUND = 5002 const ERROR_DEPENDENT_RESOURCE_EXISTS = 5001 const ERROR_DEPENDENT_SERVICES_RUNNING = 1051 const ERROR_DEPLOYMENT_BLOCKED_BY_POLICY = 15617 const ERROR_DESTINATION_ELEMENT_FULL = 1161 const ERROR_DESTROY_OBJECT_OF_OTHER_THREAD = 1435 const ERROR_DEVICE_ALREADY_REMEMBERED = 1202 const ERROR_DEVICE_DOOR_OPEN = 1166 const ERROR_DEVICE_IN_USE = 2404 const ERROR_DEVICE_NOT_AVAILABLE = 4319 const ERROR_DEVICE_NOT_CONNECTED = 1167 const ERROR_DEVICE_NOT_PARTITIONED = 1107 const ERROR_DEVICE_REINITIALIZATION_NEEDED = 1164 const ERROR_DEVICE_REMOVED = 1617 const ERROR_DEVICE_REQUIRES_CLEANING = 1165 const ERROR_DEV_NOT_EXIST = 55 const ERROR_DHCP_ADDRESS_CONFLICT = 4100 const ERROR_DIFFERENT_SERVICE_ACCOUNT = 1079 const ERROR_DIRECTORY = 267 const ERROR_DIRECT_ACCESS_HANDLE = 130 const ERROR_DIR_EFS_DISALLOWED = 6010 const ERROR_DIR_NOT_EMPTY = 145 const ERROR_DIR_NOT_ROOT = 144 const ERROR_DISCARDED = 157 const ERROR_DISK_CHANGE = 107 const ERROR_DISK_CORRUPT = 1393 const ERROR_DISK_FULL = 112 const ERROR_DISK_OPERATION_FAILED = 1127 const ERROR_DISK_RECALIBRATE_FAILED = 1126 const ERROR_DISK_RESET_FAILED = 1128 const ERROR_DISK_TOO_FRAGMENTED = 302 const ERROR_DLL_INIT_FAILED = 1114 const ERROR_DLL_NOT_FOUND = 1157 const ERROR_DOMAIN_CONTROLLER_EXISTS = 1250 const ERROR_DOMAIN_CONTROLLER_NOT_FOUND = 1908 const ERROR_DOMAIN_EXISTS = 1356 const ERROR_DOMAIN_LIMIT_EXCEEDED = 1357 const ERROR_DOMAIN_TRUST_INCONSISTENT = 1810 const ERROR_DOWNGRADE_DETECTED = 1265 const ERROR_DRIVER_BLOCKED = 1275 const ERROR_DRIVE_LOCKED = 108 const ERROR_DRIVE_MEDIA_MISMATCH = 4303 const ERROR_DRIVE_NOT_INSTALLED = 8 const ERROR_DS_ADD_REPLICA_INHIBITED = 8302 const ERROR_DS_ADMIN_LIMIT_EXCEEDED = 8228 const ERROR_DS_AFFECTS_MULTIPLE_DSAS = 8249 const ERROR_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER = 8578 const ERROR_DS_ALIASED_OBJ_MISSING = 8334 const ERROR_DS_ALIAS_DEREF_PROBLEM = 8244 const ERROR_DS_ALIAS_POINTS_TO_ALIAS = 8336 const ERROR_DS_ALIAS_PROBLEM = 8241 const ERROR_DS_ATTRIBUTE_OR_VALUE_EXISTS = 8205 const ERROR_DS_ATTRIBUTE_OWNED_BY_SAM = 8346 const ERROR_DS_ATTRIBUTE_TYPE_UNDEFINED = 8204 const ERROR_DS_ATT_ALREADY_EXISTS = 8318 const ERROR_DS_ATT_IS_NOT_ON_OBJ = 8310 const ERROR_DS_ATT_NOT_DEF_FOR_CLASS = 8317 const ERROR_DS_ATT_NOT_DEF_IN_SCHEMA = 8303 const ERROR_DS_ATT_SCHEMA_REQ_ID = 8399 const ERROR_DS_ATT_SCHEMA_REQ_SYNTAX = 8416 const ERROR_DS_ATT_VAL_ALREADY_EXISTS = 8323 const ERROR_DS_AUTHORIZATION_FAILED = 8599 const ERROR_DS_AUTH_METHOD_NOT_SUPPORTED = 8231 const ERROR_DS_AUTH_UNKNOWN = 8234 const ERROR_DS_AUX_CLS_TEST_FAIL = 8389 const ERROR_DS_BACKLINK_WITHOUT_LINK = 8482 const ERROR_DS_BAD_ATT_SCHEMA_SYNTAX = 8400 const ERROR_DS_BAD_HIERARCHY_FILE = 8425 const ERROR_DS_BAD_INSTANCE_TYPE = 8313 const ERROR_DS_BAD_NAME_SYNTAX = 8335 const ERROR_DS_BAD_RDN_ATT_ID_SYNTAX = 8392 const ERROR_DS_BUILD_HIERARCHY_TABLE_FAILED = 8426 const ERROR_DS_BUSY = 8206 const ERROR_DS_CANT_ACCESS_REMOTE_PART_OF_AD = 8585 const ERROR_DS_CANT_ADD_ATT_VALUES = 8320 const ERROR_DS_CANT_ADD_SYSTEM_ONLY = 8358 const ERROR_DS_CANT_ADD_TO_GC = 8550 const ERROR_DS_CANT_CACHE_ATT = 8401 const ERROR_DS_CANT_CACHE_CLASS = 8402 const ERROR_DS_CANT_CREATE_IN_NONDOMAIN_NC = 8553 const ERROR_DS_CANT_CREATE_UNDER_SCHEMA = 8510 const ERROR_DS_CANT_DELETE = 8398 const ERROR_DS_CANT_DELETE_DSA_OBJ = 8340 const ERROR_DS_CANT_DEL_MASTER_CROSSREF = 8375 const ERROR_DS_CANT_DEMOTE_WITH_WRITEABLE_NC = 8604 const ERROR_DS_CANT_DEREF_ALIAS = 8337 const ERROR_DS_CANT_DERIVE_SPN_FOR_DELETED_DOMAIN = 8603 const ERROR_DS_CANT_DERIVE_SPN_WITHOUT_SERVER_REF = 8589 const ERROR_DS_CANT_FIND_DC_FOR_SRC_DOMAIN = 8537 const ERROR_DS_CANT_FIND_DSA_OBJ = 8419 const ERROR_DS_CANT_FIND_EXPECTED_NC = 8420 const ERROR_DS_CANT_FIND_NC_IN_CACHE = 8421 const ERROR_DS_CANT_MIX_MASTER_AND_REPS = 8331 const ERROR_DS_CANT_MOD_OBJ_CLASS = 8215 const ERROR_DS_CANT_MOD_PRIMARYGROUPID = 8506 const ERROR_DS_CANT_MOD_SYSTEM_ONLY = 8369 const ERROR_DS_CANT_MOVE_ACCOUNT_GROUP = 8498 const ERROR_DS_CANT_MOVE_APP_BASIC_GROUP = 8608 const ERROR_DS_CANT_MOVE_APP_QUERY_GROUP = 8609 const ERROR_DS_CANT_MOVE_DELETED_OBJECT = 8489 const ERROR_DS_CANT_MOVE_RESOURCE_GROUP = 8499 const ERROR_DS_CANT_ON_NON_LEAF = 8213 const ERROR_DS_CANT_ON_RDN = 8214 const ERROR_DS_CANT_REMOVE_ATT_CACHE = 8403 const ERROR_DS_CANT_REMOVE_CLASS_CACHE = 8404 const ERROR_DS_CANT_REM_MISSING_ATT = 8324 const ERROR_DS_CANT_REM_MISSING_ATT_VAL = 8325 const ERROR_DS_CANT_REPLACE_HIDDEN_REC = 8424 const ERROR_DS_CANT_RETRIEVE_ATTS = 8481 const ERROR_DS_CANT_RETRIEVE_CHILD = 8422 const ERROR_DS_CANT_RETRIEVE_DN = 8405 const ERROR_DS_CANT_RETRIEVE_INSTANCE = 8407 const ERROR_DS_CANT_RETRIEVE_SD = 8526 const ERROR_DS_CANT_START = 8531 const ERROR_DS_CANT_TREE_DELETE_CRITICAL_OBJ = 8560 const ERROR_DS_CANT_WITH_ACCT_GROUP_MEMBERSHPS = 8493 const ERROR_DS_CHILDREN_EXIST = 8332 const ERROR_DS_CLASS_MUST_BE_CONCRETE = 8359 const ERROR_DS_CLASS_NOT_DSA = 8343 const ERROR_DS_CLIENT_LOOP = 8259 const ERROR_DS_CODE_INCONSISTENCY = 8408 const ERROR_DS_COMPARE_FALSE = 8229 const ERROR_DS_COMPARE_TRUE = 8230 const ERROR_DS_CONFIDENTIALITY_REQUIRED = 8237 const ERROR_DS_CONFIG_PARAM_MISSING = 8427 const ERROR_DS_CONSTRAINT_VIOLATION = 8239 const ERROR_DS_CONSTRUCTED_ATT_MOD = 8475 const ERROR_DS_CONTROL_NOT_FOUND = 8258 const ERROR_DS_COULDNT_CONTACT_FSMO = 8367 const ERROR_DS_COULDNT_IDENTIFY_OBJECTS_FOR_TREE_DELETE = 8503 const ERROR_DS_COULDNT_LOCK_TREE_FOR_DELETE = 8502 const ERROR_DS_COULDNT_UPDATE_SPNS = 8525 const ERROR_DS_COUNTING_AB_INDICES_FAILED = 8428 const ERROR_DS_CROSS_DOMAIN_CLEANUP_REQD = 8491 const ERROR_DS_CROSS_DOM_MOVE_ERROR = 8216 const ERROR_DS_CROSS_NC_DN_RENAME = 8368 const ERROR_DS_CROSS_REF_BUSY = 8602 const ERROR_DS_CROSS_REF_EXISTS = 8374 const ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE = 8495 const ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE_V2 = 8586 const ERROR_DS_DATABASE_ERROR = 8409 const ERROR_DS_DECODING_ERROR = 8253 const ERROR_DS_DESTINATION_AUDITING_NOT_ENABLED = 8536 const ERROR_DS_DESTINATION_DOMAIN_NOT_IN_FOREST = 8535 const ERROR_DS_DIFFERENT_REPL_EPOCHS = 8593 const ERROR_DS_DISALLOWED_IN_SYSTEM_CONTAINER = 8615 const ERROR_DS_DNS_LOOKUP_FAILURE = 8524 const ERROR_DS_DOMAIN_RENAME_IN_PROGRESS = 8612 const ERROR_DS_DOMAIN_VERSION_TOO_HIGH = 8564 const ERROR_DS_DOMAIN_VERSION_TOO_LOW = 8566 const ERROR_DS_DRA_ABANDON_SYNC = 8462 const ERROR_DS_DRA_ACCESS_DENIED = 8453 const ERROR_DS_DRA_BAD_DN = 8439 const ERROR_DS_DRA_BAD_INSTANCE_TYPE = 8445 const ERROR_DS_DRA_BAD_NC = 8440 const ERROR_DS_DRA_BUSY = 8438 const ERROR_DS_DRA_CONNECTION_FAILED = 8444 const ERROR_DS_DRA_DB_ERROR = 8451 const ERROR_DS_DRA_DN_EXISTS = 8441 const ERROR_DS_DRA_EARLIER_SCHEMA_CONFLICT = 8544 const ERROR_DS_DRA_EXTN_CONNECTION_FAILED = 8466 const ERROR_DS_DRA_GENERIC = 8436 const ERROR_DS_DRA_INCOMPATIBLE_PARTIAL_SET = 8464 const ERROR_DS_DRA_INCONSISTENT_DIT = 8443 const ERROR_DS_DRA_INTERNAL_ERROR = 8442 const ERROR_DS_DRA_INVALID_PARAMETER = 8437 const ERROR_DS_DRA_MAIL_PROBLEM = 8447 const ERROR_DS_DRA_MISSING_PARENT = 8460 const ERROR_DS_DRA_NAME_COLLISION = 8458 const ERROR_DS_DRA_NOT_SUPPORTED = 8454 const ERROR_DS_DRA_NO_REPLICA = 8452 const ERROR_DS_DRA_OBJ_IS_REP_SOURCE = 8450 const ERROR_DS_DRA_OBJ_NC_MISMATCH = 8545 const ERROR_DS_DRA_OUT_OF_MEM = 8446 const ERROR_DS_DRA_OUT_SCHEDULE_WINDOW = 8617 const ERROR_DS_DRA_PREEMPTED = 8461 const ERROR_DS_DRA_REF_ALREADY_EXISTS = 8448 const ERROR_DS_DRA_REF_NOT_FOUND = 8449 const ERROR_DS_DRA_REPL_PENDING = 8477 const ERROR_DS_DRA_RPC_CANCELLED = 8455 const ERROR_DS_DRA_SCHEMA_CONFLICT = 8543 const ERROR_DS_DRA_SCHEMA_INFO_SHIP = 8542 const ERROR_DS_DRA_SCHEMA_MISMATCH = 8418 const ERROR_DS_DRA_SHUTDOWN = 8463 const ERROR_DS_DRA_SINK_DISABLED = 8457 const ERROR_DS_DRA_SOURCE_DISABLED = 8456 const ERROR_DS_DRA_SOURCE_IS_PARTIAL_REPLICA = 8465 const ERROR_DS_DRA_SOURCE_REINSTALLED = 8459 const ERROR_DS_DRS_EXTENSIONS_CHANGED = 8594 const ERROR_DS_DSA_MUST_BE_INT_MASTER = 8342 const ERROR_DS_DST_DOMAIN_NOT_NATIVE = 8496 const ERROR_DS_DST_NC_MISMATCH = 8486 const ERROR_DS_DS_REQUIRED = 8478 const ERROR_DS_DUPLICATE_ID_FOUND = 8605 const ERROR_DS_DUP_LDAP_DISPLAY_NAME = 8382 const ERROR_DS_DUP_LINK_ID = 8468 const ERROR_DS_DUP_MAPI_ID = 8380 const ERROR_DS_DUP_MSDS_INTID = 8597 const ERROR_DS_DUP_OID = 8379 const ERROR_DS_DUP_RDN = 8378 const ERROR_DS_DUP_SCHEMA_ID_GUID = 8381 const ERROR_DS_ENCODING_ERROR = 8252 const ERROR_DS_EPOCH_MISMATCH = 8483 const ERROR_DS_EXISTING_AD_CHILD_NC = 8613 const ERROR_DS_EXISTS_IN_AUX_CLS = 8393 const ERROR_DS_EXISTS_IN_MAY_HAVE = 8386 const ERROR_DS_EXISTS_IN_MUST_HAVE = 8385 const ERROR_DS_EXISTS_IN_POSS_SUP = 8395 const ERROR_DS_EXISTS_IN_RDNATTID = 8598 const ERROR_DS_EXISTS_IN_SUB_CLS = 8394 const ERROR_DS_FILTER_UNKNOWN = 8254 const ERROR_DS_FILTER_USES_CONTRUCTED_ATTRS = 8555 const ERROR_DS_FOREST_VERSION_TOO_HIGH = 8563 const ERROR_DS_FOREST_VERSION_TOO_LOW = 8565 const ERROR_DS_GCVERIFY_ERROR = 8417 const ERROR_DS_GC_NOT_AVAILABLE = 8217 const ERROR_DS_GC_REQUIRED = 8547 const ERROR_DS_GENERIC_ERROR = 8341 const ERROR_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER = 8519 const ERROR_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER = 8516 const ERROR_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER = 8517 const ERROR_DS_GOVERNSID_MISSING = 8410 const ERROR_DS_GROUP_CONVERSION_ERROR = 8607 const ERROR_DS_HAVE_PRIMARY_MEMBERS = 8521 const ERROR_DS_HIERARCHY_TABLE_MALLOC_FAILED = 8429 const ERROR_DS_ILLEGAL_BASE_SCHEMA_MOD = 8507 const ERROR_DS_ILLEGAL_MOD_OPERATION = 8311 const ERROR_DS_ILLEGAL_SUPERIOR = 8345 const ERROR_DS_ILLEGAL_XDOM_MOVE_OPERATION = 8492 const ERROR_DS_INAPPROPRIATE_AUTH = 8233 const ERROR_DS_INAPPROPRIATE_MATCHING = 8238 const ERROR_DS_INCOMPATIBLE_CONTROLS_USED = 8574 const ERROR_DS_INCOMPATIBLE_VERSION = 8567 const ERROR_DS_INCORRECT_ROLE_OWNER = 8210 const ERROR_DS_INIT_FAILURE = 8532 const ERROR_DS_INIT_FAILURE_CONSOLE = 8561 const ERROR_DS_INSTALL_NO_SCH_VERSION_IN_INIFILE = 8512 const ERROR_DS_INSTALL_NO_SRC_SCH_VERSION = 8511 const ERROR_DS_INSTALL_SCHEMA_MISMATCH = 8467 const ERROR_DS_INSUFFICIENT_ATTR_TO_CREATE_OBJECT = 8606 const ERROR_DS_INSUFF_ACCESS_RIGHTS = 8344 const ERROR_DS_INTERNAL_FAILURE = 8430 const ERROR_DS_INVALID_ATTRIBUTE_SYNTAX = 8203 const ERROR_DS_INVALID_DMD = 8360 const ERROR_DS_INVALID_DN_SYNTAX = 8242 const ERROR_DS_INVALID_GROUP_TYPE = 8513 const ERROR_DS_INVALID_LDAP_DISPLAY_NAME = 8479 const ERROR_DS_INVALID_NAME_FOR_SPN = 8554 const ERROR_DS_INVALID_ROLE_OWNER = 8366 const ERROR_DS_INVALID_SCRIPT = 8600 const ERROR_DS_INVALID_SEARCH_FLAG = 8500 const ERROR_DS_IS_LEAF = 8243 const ERROR_DS_KEY_NOT_UNIQUE = 8527 const ERROR_DS_LDAP_SEND_QUEUE_FULL = 8616 const ERROR_DS_LINK_ID_NOT_AVAILABLE = 8577 const ERROR_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER = 8520 const ERROR_DS_LOCAL_ERROR = 8251 const ERROR_DS_LOCAL_MEMBER_OF_LOCAL_ONLY = 8548 const ERROR_DS_LOOP_DETECT = 8246 const ERROR_DS_LOW_DSA_VERSION = 8568 const ERROR_DS_MACHINE_ACCOUNT_CREATED_PRENT4 = 8572 const ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED = 8557 const ERROR_DS_MASTERDSA_REQUIRED = 8314 const ERROR_DS_MAX_OBJ_SIZE_EXCEEDED = 8304 const ERROR_DS_MEMBERSHIP_EVALUATED_LOCALLY = 8201 const ERROR_DS_MISSING_EXPECTED_ATT = 8411 const ERROR_DS_MISSING_FSMO_SETTINGS = 8434 const ERROR_DS_MISSING_INFRASTRUCTURE_CONTAINER = 8497 const ERROR_DS_MISSING_REQUIRED_ATT = 8316 const ERROR_DS_MISSING_SUPREF = 8406 const ERROR_DS_MODIFYDN_DISALLOWED_BY_FLAG = 8581 const ERROR_DS_MODIFYDN_DISALLOWED_BY_INSTANCE_TYPE = 8579 const ERROR_DS_MODIFYDN_WRONG_GRANDPARENT = 8582 const ERROR_DS_MUST_BE_RUN_ON_DST_DC = 8558 const ERROR_DS_NAME_ERROR_DOMAIN_ONLY = 8473 const ERROR_DS_NAME_ERROR_NOT_FOUND = 8470 const ERROR_DS_NAME_ERROR_NOT_UNIQUE = 8471 const ERROR_DS_NAME_ERROR_NO_MAPPING = 8472 const ERROR_DS_NAME_ERROR_NO_SYNTACTICAL_MAPPING = 8474 const ERROR_DS_NAME_ERROR_RESOLVING = 8469 const ERROR_DS_NAME_ERROR_TRUST_REFERRAL = 8583 const ERROR_DS_NAME_NOT_UNIQUE = 8571 const ERROR_DS_NAME_REFERENCE_INVALID = 8373 const ERROR_DS_NAME_TOO_LONG = 8348 const ERROR_DS_NAME_TOO_MANY_PARTS = 8347 const ERROR_DS_NAME_TYPE_UNKNOWN = 8351 const ERROR_DS_NAME_UNPARSEABLE = 8350 const ERROR_DS_NAME_VALUE_TOO_LONG = 8349 const ERROR_DS_NAMING_MASTER_GC = 8523 const ERROR_DS_NAMING_VIOLATION = 8247 const ERROR_DS_NCNAME_MISSING_CR_REF = 8412 const ERROR_DS_NCNAME_MUST_BE_NC = 8357 const ERROR_DS_NC_MUST_HAVE_NC_PARENT = 8494 const ERROR_DS_NC_STILL_HAS_DSAS = 8546 const ERROR_DS_NONEXISTENT_MAY_HAVE = 8387 const ERROR_DS_NONEXISTENT_MUST_HAVE = 8388 const ERROR_DS_NONEXISTENT_POSS_SUP = 8390 const ERROR_DS_NONSAFE_SCHEMA_CHANGE = 8508 const ERROR_DS_NON_BASE_SEARCH = 8480 const ERROR_DS_NOTIFY_FILTER_TOO_COMPLEX = 8377 const ERROR_DS_NOT_AN_OBJECT = 8352 const ERROR_DS_NOT_AUTHORITIVE_FOR_DST_NC = 8487 const ERROR_DS_NOT_CLOSEST = 8588 const ERROR_DS_NOT_INSTALLED = 8200 const ERROR_DS_NOT_ON_BACKLINK = 8362 const ERROR_DS_NOT_SUPPORTED = 8256 const ERROR_DS_NOT_SUPPORTED_SORT_ORDER = 8570 const ERROR_DS_NO_ATTRIBUTE_OR_VALUE = 8202 const ERROR_DS_NO_BEHAVIOR_VERSION_IN_MIXEDDOMAIN = 8569 const ERROR_DS_NO_CHAINED_EVAL = 8328 const ERROR_DS_NO_CHAINING = 8327 const ERROR_DS_NO_CHECKPOINT_WITH_PDC = 8551 const ERROR_DS_NO_CROSSREF_FOR_NC = 8363 const ERROR_DS_NO_DELETED_NAME = 8355 const ERROR_DS_NO_FPO_IN_UNIVERSAL_GROUPS = 8549 const ERROR_DS_NO_MORE_RIDS = 8209 const ERROR_DS_NO_MSDS_INTID = 8596 const ERROR_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN = 8514 const ERROR_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN = 8515 const ERROR_DS_NO_OBJECT_MOVE_IN_SCHEMA_NC = 8580 const ERROR_DS_NO_PARENT_OBJECT = 8329 const ERROR_DS_NO_PKT_PRIVACY_ON_CONNECTION = 8533 const ERROR_DS_NO_RDN_DEFINED_IN_SCHEMA = 8306 const ERROR_DS_NO_REF_DOMAIN = 8575 const ERROR_DS_NO_REQUESTED_ATTS_FOUND = 8308 const ERROR_DS_NO_RESULTS_RETURNED = 8257 const ERROR_DS_NO_RIDS_ALLOCATED = 8208 const ERROR_DS_NO_SUCH_OBJECT = 8240 const ERROR_DS_NO_TREE_DELETE_ABOVE_NC = 8501 const ERROR_DS_NTDSCRIPT_PROCESS_ERROR = 8592 const ERROR_DS_NTDSCRIPT_SYNTAX_ERROR = 8591 const ERROR_DS_OBJECT_BEING_REMOVED = 8339 const ERROR_DS_OBJECT_CLASS_REQUIRED = 8315 const ERROR_DS_OBJECT_RESULTS_TOO_LARGE = 8248 const ERROR_DS_OBJ_CLASS_NOT_DEFINED = 8371 const ERROR_DS_OBJ_CLASS_NOT_SUBCLASS = 8372 const ERROR_DS_OBJ_CLASS_VIOLATION = 8212 const ERROR_DS_OBJ_GUID_EXISTS = 8361 const ERROR_DS_OBJ_NOT_FOUND = 8333 const ERROR_DS_OBJ_STRING_NAME_EXISTS = 8305 const ERROR_DS_OBJ_TOO_LARGE = 8312 const ERROR_DS_OFFSET_RANGE_ERROR = 8262 const ERROR_DS_OPERATIONS_ERROR = 8224 const ERROR_DS_OUT_OF_SCOPE = 8338 const ERROR_DS_OUT_OF_VERSION_STORE = 8573 const ERROR_DS_PARAM_ERROR = 8255 const ERROR_DS_PARENT_IS_AN_ALIAS = 8330 const ERROR_DS_PDC_OPERATION_IN_PROGRESS = 8490 const ERROR_DS_PROTOCOL_ERROR = 8225 const ERROR_DS_RANGE_CONSTRAINT = 8322 const ERROR_DS_RDN_DOESNT_MATCH_SCHEMA = 8307 const ERROR_DS_RECALCSCHEMA_FAILED = 8396 const ERROR_DS_REFERRAL = 8235 const ERROR_DS_REFERRAL_LIMIT_EXCEEDED = 8260 const ERROR_DS_REFUSING_FSMO_ROLES = 8433 const ERROR_DS_REMOTE_CROSSREF_OP_FAILED = 8601 const ERROR_DS_REPLICATOR_ONLY = 8370 const ERROR_DS_REPLICA_SET_CHANGE_NOT_ALLOWED_ON_DISABLED_CR = 8595 const ERROR_DS_REPL_LIFETIME_EXCEEDED = 8614 const ERROR_DS_RESERVED_LINK_ID = 8576 const ERROR_DS_RIDMGR_INIT_ERROR = 8211 const ERROR_DS_ROLE_NOT_VERIFIED = 8610 const ERROR_DS_ROOT_CANT_BE_SUBREF = 8326 const ERROR_DS_ROOT_MUST_BE_NC = 8301 const ERROR_DS_ROOT_REQUIRES_CLASS_TOP = 8432 const ERROR_DS_SAM_INIT_FAILURE = 8504 const ERROR_DS_SAM_INIT_FAILURE_CONSOLE = 8562 const ERROR_DS_SAM_NEED_BOOTKEY_FLOPPY = 8530 const ERROR_DS_SAM_NEED_BOOTKEY_PASSWORD = 8529 const ERROR_DS_SCHEMA_ALLOC_FAILED = 8415 const ERROR_DS_SCHEMA_NOT_LOADED = 8414 const ERROR_DS_SCHEMA_UPDATE_DISALLOWED = 8509 const ERROR_DS_SECURITY_CHECKING_ERROR = 8413 const ERROR_DS_SECURITY_ILLEGAL_MODIFY = 8423 const ERROR_DS_SEC_DESC_INVALID = 8354 const ERROR_DS_SEC_DESC_TOO_SHORT = 8353 const ERROR_DS_SEMANTIC_ATT_TEST = 8383 const ERROR_DS_SENSITIVE_GROUP_VIOLATION = 8505 const ERROR_DS_SERVER_DOWN = 8250 const ERROR_DS_SHUTTING_DOWN = 8364 const ERROR_DS_SINGLE_USER_MODE_FAILED = 8590 const ERROR_DS_SINGLE_VALUE_CONSTRAINT = 8321 const ERROR_DS_SIZELIMIT_EXCEEDED = 8227 const ERROR_DS_SORT_CONTROL_MISSING = 8261 const ERROR_DS_SOURCE_AUDITING_NOT_ENABLED = 8552 const ERROR_DS_SOURCE_DOMAIN_IN_FOREST = 8534 const ERROR_DS_SRC_AND_DST_NC_IDENTICAL = 8485 const ERROR_DS_SRC_AND_DST_OBJECT_CLASS_MISMATCH = 8540 const ERROR_DS_SRC_DC_MUST_BE_SP4_OR_GREATER = 8559 const ERROR_DS_SRC_GUID_MISMATCH = 8488 const ERROR_DS_SRC_NAME_MISMATCH = 8484 const ERROR_DS_SRC_OBJ_NOT_GROUP_OR_USER = 8538 const ERROR_DS_SRC_SID_EXISTS_IN_FOREST = 8539 const ERROR_DS_STRING_SD_CONVERSION_FAILED = 8522 const ERROR_DS_STRONG_AUTH_REQUIRED = 8232 const ERROR_DS_SUBREF_MUST_HAVE_PARENT = 8356 const ERROR_DS_SUBTREE_NOTIFY_NOT_NC_HEAD = 8376 const ERROR_DS_SUB_CLS_TEST_FAIL = 8391 const ERROR_DS_SYNTAX_MISMATCH = 8384 const ERROR_DS_THREAD_LIMIT_EXCEEDED = 8587 const ERROR_DS_TIMELIMIT_EXCEEDED = 8226 const ERROR_DS_TREE_DELETE_NOT_FINISHED = 8397 const ERROR_DS_UNABLE_TO_SURRENDER_ROLES = 8435 const ERROR_DS_UNAVAILABLE = 8207 const ERROR_DS_UNAVAILABLE_CRIT_EXTENSION = 8236 const ERROR_DS_UNICODEPWD_NOT_IN_QUOTES = 8556 const ERROR_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER = 8518 const ERROR_DS_UNKNOWN_ERROR = 8431 const ERROR_DS_UNKNOWN_OPERATION = 8365 const ERROR_DS_UNWILLING_TO_PERFORM = 8245 const ERROR_DS_USER_BUFFER_TO_SMALL = 8309 const ERROR_DS_WKO_CONTAINER_CANNOT_BE_SPECIAL = 8611 const ERROR_DS_WRONG_LINKED_ATT_SYNTAX = 8528 const ERROR_DS_WRONG_OM_OBJ_CLASS = 8476 const ERROR_DUPLICATE_SERVICE_NAME = 1078 const ERROR_DUPLICATE_TAG = 2014 const ERROR_DUP_DOMAINNAME = 1221 const ERROR_DUP_NAME = 52 const ERROR_DYNLINK_FROM_INVALID_RING = 196 const ERROR_EAS_DIDNT_FIT = 275 const ERROR_EAS_NOT_SUPPORTED = 282 const ERROR_EA_ACCESS_DENIED = 994 const ERROR_EA_FILE_CORRUPT = 276 const ERROR_EA_LIST_INCONSISTENT = 255 const ERROR_EA_TABLE_FULL = 277 const ERROR_EC_CIRCULAR_FORWARDING = 15082 const ERROR_EC_CREDSTORE_FULL = 15083 const ERROR_EC_CRED_NOT_FOUND = 15084 const ERROR_EC_LOG_DISABLED = 15081 const ERROR_EC_NO_ACTIVE_CHANNEL = 15085 const ERROR_EC_SUBSCRIPTION_CANNOT_ACTIVATE = 15080 const ERROR_EFS_ALG_BLOB_TOO_BIG = 6013 const ERROR_EFS_DISABLED = 6015 const ERROR_EFS_SERVER_NOT_TRUSTED = 6011 const ERROR_EFS_VERSION_NOT_SUPPORT = 6016 const ERROR_EMPTY = 4306 const ERROR_ENCRYPTION_FAILED = 6000 const ERROR_END_OF_MEDIA = 1100 const ERROR_ENVVAR_NOT_FOUND = 203 const ERROR_EOM_OVERFLOW = 1129 const ERROR_EVENTLOG_CANT_START = 1501 const ERROR_EVENTLOG_FILE_CHANGED = 1503 const ERROR_EVENTLOG_FILE_CORRUPT = 1500 const ERROR_EVT_CANNOT_OPEN_CHANNEL_OF_QUERY = 15036 const ERROR_EVT_CHANNEL_CANNOT_ACTIVATE = 15025 const ERROR_EVT_CHANNEL_NOT_FOUND = 15007 const ERROR_EVT_CONFIGURATION_ERROR = 15010 const ERROR_EVT_EVENT_DEFINITION_NOT_FOUND = 15032 const ERROR_EVT_EVENT_TEMPLATE_NOT_FOUND = 15003 const ERROR_EVT_FILTER_ALREADYSCOPED = 15014 const ERROR_EVT_FILTER_INVARG = 15016 const ERROR_EVT_FILTER_INVTEST = 15017 const ERROR_EVT_FILTER_INVTYPE = 15018 const ERROR_EVT_FILTER_NOTELTSET = 15015 const ERROR_EVT_FILTER_OUT_OF_RANGE = 15038 const ERROR_EVT_FILTER_PARSEERR = 15019 const ERROR_EVT_FILTER_TOO_COMPLEX = 15026 const ERROR_EVT_FILTER_UNEXPECTEDTOKEN = 15021 const ERROR_EVT_FILTER_UNSUPPORTEDOP = 15020 const ERROR_EVT_INVALID_CHANNEL_PATH = 15000 const ERROR_EVT_INVALID_CHANNEL_PROPERTY_VALUE = 15023 const ERROR_EVT_INVALID_EVENT_DATA = 15005 const ERROR_EVT_INVALID_OPERATION_OVER_ENABLED_DIRECT_CHANNEL = 15022 const ERROR_EVT_INVALID_PUBLISHER_NAME = 15004 const ERROR_EVT_INVALID_PUBLISHER_PROPERTY_VALUE = 15024 const ERROR_EVT_INVALID_QUERY = 15001 const ERROR_EVT_MALFORMED_XML_TEXT = 15008 const ERROR_EVT_MAX_INSERTS_REACHED = 15031 const ERROR_EVT_MESSAGE_ID_NOT_FOUND = 15028 const ERROR_EVT_MESSAGE_LOCALE_NOT_FOUND = 15033 const ERROR_EVT_MESSAGE_NOT_FOUND = 15027 const ERROR_EVT_NON_VALIDATING_MSXML = 15013 const ERROR_EVT_PUBLISHER_DISABLED = 15037 const ERROR_EVT_PUBLISHER_METADATA_NOT_FOUND = 15002 const ERROR_EVT_QUERY_RESULT_INVALID_POSITION = 15012 const ERROR_EVT_QUERY_RESULT_STALE = 15011 const ERROR_EVT_SUBSCRIPTION_TO_DIRECT_CHANNEL = 15009 const ERROR_EVT_UNRESOLVED_PARAMETER_INSERT = 15030 const ERROR_EVT_UNRESOLVED_VALUE_INSERT = 15029 const ERROR_EVT_VERSION_TOO_NEW = 15035 const ERROR_EVT_VERSION_TOO_OLD = 15034 const ERROR_EXCEPTION_IN_SERVICE = 1064 const ERROR_EXCL_SEM_ALREADY_OWNED = 101 const ERROR_EXE_CANNOT_MODIFY_SIGNED_BINARY = 217 const ERROR_EXE_CANNOT_MODIFY_STRONG_SIGNED_BINARY = 218 const ERROR_EXE_MACHINE_TYPE_MISMATCH = 216 const ERROR_EXE_MARKED_INVALID = 192 const ERROR_EXTENDED_ERROR = 1208 const ERROR_EXTERNAL_BACKING_PROVIDER_UNKNOWN = 343 const ERROR_FAILED_SERVICE_CONTROLLER_CONNECT = 1063 const ERROR_FAIL_I24 = 83 const ERROR_FILEMARK_DETECTED = 1101 const ERROR_FILENAME_EXCED_RANGE = 206 const ERROR_FILE_CHECKED_OUT = 220 const ERROR_FILE_CORRUPT = 1392 const ERROR_FILE_ENCRYPTED = 6002 const ERROR_FILE_EXISTS = 80 const ERROR_FILE_INVALID = 1006 const ERROR_FILE_NOT_ENCRYPTED = 6007 const ERROR_FILE_NOT_FOUND = 2 const ERROR_FILE_OFFLINE = 4350 const ERROR_FILE_READ_ONLY = 6009 const ERROR_FILE_TOO_LARGE = 223 const ERROR_FLOPPY_BAD_REGISTERS = 1125 const ERROR_FLOPPY_ID_MARK_NOT_FOUND = 1122 const ERROR_FLOPPY_UNKNOWN_ERROR = 1124 const ERROR_FLOPPY_WRONG_CYLINDER = 1123 const ERROR_FORMS_AUTH_REQUIRED = 224 const ERROR_FULLSCREEN_MODE = 1007 const ERROR_FULL_BACKUP = 4004 const ERROR_FUNCTION_FAILED = 1627 const ERROR_FUNCTION_NOT_CALLED = 1626 const ERROR_GENERIC_COMMAND_FAILED = 14109 const ERROR_GENERIC_NOT_MAPPED = 1360 const ERROR_GEN_FAILURE = 31 const ERROR_GLOBAL_ONLY_HOOK = 1429 const ERROR_GPIO_CLIENT_INFORMATION_INVALID = 15322 const ERROR_GPIO_INCOMPATIBLE_CONNECT_MODE = 15326 const ERROR_GPIO_INTERRUPT_ALREADY_UNMASKED = 15327 const ERROR_GPIO_INVALID_REGISTRATION_PACKET = 15324 const ERROR_GPIO_OPERATION_DENIED = 15325 const ERROR_GPIO_VERSION_NOT_SUPPORTED = 15323 const ERROR_GRACEFUL_DISCONNECT = 1226 const ERROR_GROUP_EXISTS = 1318 const ERROR_GROUP_NOT_AVAILABLE = 5012 const ERROR_GROUP_NOT_FOUND = 5013 const ERROR_GROUP_NOT_ONLINE = 5014 const ERROR_HANDLE_DISK_FULL = 39 const ERROR_HANDLE_EOF = 38 const ERROR_HASH_NOT_PRESENT = 15301 const ERROR_HASH_NOT_SUPPORTED = 15300 const ERROR_HOOK_NEEDS_HMOD = 1428 const ERROR_HOOK_NOT_INSTALLED = 1431 const ERROR_HOOK_TYPE_NOT_ALLOWED = 1458 const ERROR_HOST_DOWN = 1256 const ERROR_HOST_NODE_NOT_AVAILABLE = 5005 const ERROR_HOST_NODE_NOT_GROUP_OWNER = 5016 const ERROR_HOST_NODE_NOT_RESOURCE_OWNER = 5015 const ERROR_HOST_UNREACHABLE = 1232 const ERROR_HOTKEY_ALREADY_REGISTERED = 1409 const ERROR_HOTKEY_NOT_REGISTERED = 1419 const ERROR_HWNDS_HAVE_DIFF_PARENT = 1441 const ERROR_ICM_NOT_ENABLED = 2018 const ERROR_IEPORT_FULL = 4341 const ERROR_ILLEGAL_ELEMENT_ADDRESS = 1162 const ERROR_ILL_FORMED_PASSWORD = 1324 const ERROR_INCORRECT_ADDRESS = 1241 const ERROR_INCORRECT_SIZE = 1462 const ERROR_INC_BACKUP = 4003 const ERROR_INDEX_ABSENT = 1611 const ERROR_INDIGENOUS_TYPE = 4338 const ERROR_INFLOOP_IN_RELOC_CHAIN = 202 const ERROR_INIT_STATUS_NEEDED = 17 const ERROR_INSTALL_ALREADY_RUNNING = 1618 const ERROR_INSTALL_CANCEL = 15608 const ERROR_INSTALL_DEREGISTRATION_FAILURE = 15607 const ERROR_INSTALL_FAILED = 15609 const ERROR_INSTALL_FAILURE = 1603 const ERROR_INSTALL_FIREWALL_SERVICE_NOT_RUNNING = 15626 const ERROR_INSTALL_INVALID_PACKAGE = 15602 const ERROR_INSTALL_LANGUAGE_UNSUPPORTED = 1623 const ERROR_INSTALL_LOG_FAILURE = 1622 const ERROR_INSTALL_NETWORK_FAILURE = 15605 const ERROR_INSTALL_NOTUSED = 1634 const ERROR_INSTALL_OPEN_PACKAGE_FAILED = 15600 const ERROR_INSTALL_OUT_OF_DISK_SPACE = 15604 const ERROR_INSTALL_PACKAGE_DOWNGRADE = 15622 const ERROR_INSTALL_PACKAGE_INVALID = 1620 const ERROR_INSTALL_PACKAGE_NOT_FOUND = 15601 const ERROR_INSTALL_PACKAGE_OPEN_FAILED = 1619 const ERROR_INSTALL_PACKAGE_REJECTED = 1625 const ERROR_INSTALL_PACKAGE_VERSION = 1613 const ERROR_INSTALL_PLATFORM_UNSUPPORTED = 1633 const ERROR_INSTALL_POLICY_FAILURE = 15615 const ERROR_INSTALL_PREREQUISITE_FAILED = 15613 const ERROR_INSTALL_REGISTRATION_FAILURE = 15606 const ERROR_INSTALL_REMOTE_DISALLOWED = 1640 const ERROR_INSTALL_REMOTE_PROHIBITED = 1645 const ERROR_INSTALL_RESOLVE_DEPENDENCY_FAILED = 15603 const ERROR_INSTALL_SERVICE_FAILURE = 1601 const ERROR_INSTALL_SOURCE_ABSENT = 1612 const ERROR_INSTALL_SUSPEND = 1604 const ERROR_INSTALL_TEMP_UNWRITABLE = 1632 const ERROR_INSTALL_TRANSFORM_FAILURE = 1624 const ERROR_INSTALL_TRANSFORM_REJECTED = 1644 const ERROR_INSTALL_UI_FAILURE = 1621 const ERROR_INSTALL_USEREXIT = 1602 const ERROR_INSUFFICIENT_BUFFER = 122 const ERROR_INTERNAL_DB_CORRUPTION = 1358 const ERROR_INTERNAL_DB_ERROR = 1383 const ERROR_INTERNAL_ERROR = 1359 const ERROR_INVALID_ACCEL_HANDLE = 1403 const ERROR_INVALID_ACCESS = 12 const ERROR_INVALID_ACCOUNT_NAME = 1315 const ERROR_INVALID_ACL = 1336 const ERROR_INVALID_ADDRESS = 487 const ERROR_INVALID_AT_INTERRUPT_TIME = 104 const ERROR_INVALID_BLOCK = 9 const ERROR_INVALID_BLOCK_LENGTH = 1106 const ERROR_INVALID_CATEGORY = 117 const ERROR_INVALID_CLEANER = 4310 const ERROR_INVALID_CMM = 2010 const ERROR_INVALID_COLORINDEX = 2022 const ERROR_INVALID_COLORSPACE = 2017 const ERROR_INVALID_COMBOBOX_MESSAGE = 1422 const ERROR_INVALID_COMMAND_LINE = 1639 const ERROR_INVALID_COMPUTERNAME = 1210 const ERROR_INVALID_CURSOR_HANDLE = 1402 const ERROR_INVALID_DATA = 13 const ERROR_INVALID_DATATYPE = 1804 const ERROR_INVALID_DLL = 1154 const ERROR_INVALID_DOMAINNAME = 1212 const ERROR_INVALID_DOMAIN_ROLE = 1354 const ERROR_INVALID_DOMAIN_STATE = 1353 const ERROR_INVALID_DRIVE = 15 const ERROR_INVALID_DRIVE_OBJECT = 4321 const ERROR_INVALID_DWP_HANDLE = 1405 const ERROR_INVALID_EA_HANDLE = 278 const ERROR_INVALID_EA_NAME = 254 const ERROR_INVALID_EDIT_HEIGHT = 1424 const ERROR_INVALID_ENVIRONMENT = 1805 const ERROR_INVALID_EVENTNAME = 1211 const ERROR_INVALID_EVENT_COUNT = 151 const ERROR_INVALID_EXE_SIGNATURE = 191 const ERROR_INVALID_FIELD = 1616 const ERROR_INVALID_FILTER_PROC = 1427 const ERROR_INVALID_FLAGS = 1004 const ERROR_INVALID_FLAG_NUMBER = 186 const ERROR_INVALID_FORM_NAME = 1902 const ERROR_INVALID_FORM_SIZE = 1903 const ERROR_INVALID_FUNCTION = 1 const ERROR_INVALID_GROUPNAME = 1209 const ERROR_INVALID_GROUP_ATTRIBUTES = 1345 const ERROR_INVALID_GW_COMMAND = 1443 const ERROR_INVALID_HANDLE = 6 const ERROR_INVALID_HANDLE_STATE = 1609 const ERROR_INVALID_HOOK_FILTER = 1426 const ERROR_INVALID_HOOK_HANDLE = 1404 const ERROR_INVALID_ICON_HANDLE = 1414 const ERROR_INVALID_ID_AUTHORITY = 1343 const ERROR_INVALID_IMPORT_OF_NON_DLL = 1276 const ERROR_INVALID_INDEX = 1413 const ERROR_INVALID_KEYBOARD_HANDLE = 1457 const ERROR_INVALID_LB_MESSAGE = 1432 const ERROR_INVALID_LEVEL = 124 const ERROR_INVALID_LIBRARY = 4301 const ERROR_INVALID_LIST_FORMAT = 153 const ERROR_INVALID_LOGON_HOURS = 1328 const ERROR_INVALID_LOGON_TYPE = 1367 const ERROR_INVALID_MEDIA = 4300 const ERROR_INVALID_MEDIA_POOL = 4302 const ERROR_INVALID_MEMBER = 1388 const ERROR_INVALID_MENU_HANDLE = 1401 const ERROR_INVALID_MESSAGE = 1002 const ERROR_INVALID_MESSAGEDEST = 1218 const ERROR_INVALID_MESSAGENAME = 1217 const ERROR_INVALID_MINALLOCSIZE = 195 const ERROR_INVALID_MODULETYPE = 190 const ERROR_INVALID_MONITOR_HANDLE = 1461 const ERROR_INVALID_MSGBOX_STYLE = 1438 const ERROR_INVALID_NAME = 123 const ERROR_INVALID_NETNAME = 1214 const ERROR_INVALID_OPERATION = 4317 const ERROR_INVALID_OPERATION_ON_QUORUM = 5068 const ERROR_INVALID_OPLOCK_PROTOCOL = 301 const ERROR_INVALID_ORDINAL = 182 const ERROR_INVALID_OWNER = 1307 const ERROR_INVALID_PARAMETER = 87 const ERROR_INVALID_PASSWORD = 86 const ERROR_INVALID_PASSWORDNAME = 1216 const ERROR_INVALID_PIXEL_FORMAT = 2000 const ERROR_INVALID_PRIMARY_GROUP = 1308 const ERROR_INVALID_PRINTER_COMMAND = 1803 const ERROR_INVALID_PRINTER_NAME = 1801 const ERROR_INVALID_PRINTER_STATE = 1906 const ERROR_INVALID_PRINT_MONITOR = 3007 const ERROR_INVALID_PRIORITY = 1800 const ERROR_INVALID_PROFILE = 2011 const ERROR_INVALID_REPARSE_DATA = 4392 const ERROR_INVALID_RUNLEVEL_SETTING = 15401 const ERROR_INVALID_SCROLLBAR_RANGE = 1448 const ERROR_INVALID_SECURITY_DESCR = 1338 const ERROR_INVALID_SEGDPL = 198 const ERROR_INVALID_SEGMENT_NUMBER = 180 const ERROR_INVALID_SEPARATOR_FILE = 1799 const ERROR_INVALID_SERVER_STATE = 1352 const ERROR_INVALID_SERVICENAME = 1213 const ERROR_INVALID_SERVICE_ACCOUNT = 1057 const ERROR_INVALID_SERVICE_CONTROL = 1052 const ERROR_INVALID_SERVICE_LOCK = 1071 const ERROR_INVALID_SHARENAME = 1215 const ERROR_INVALID_SHOWWIN_COMMAND = 1449 const ERROR_INVALID_SID = 1337 const ERROR_INVALID_SIGNAL_NUMBER = 209 const ERROR_INVALID_SPI_VALUE = 1439 const ERROR_INVALID_STACKSEG = 189 const ERROR_INVALID_STAGED_SIGNATURE = 15620 const ERROR_INVALID_STARTING_CODESEG = 188 const ERROR_INVALID_STATE = 5023 const ERROR_INVALID_SUB_AUTHORITY = 1335 const ERROR_INVALID_TABLE = 1628 const ERROR_INVALID_TARGET_HANDLE = 114 const ERROR_INVALID_THREAD_ID = 1444 const ERROR_INVALID_TIME = 1901 const ERROR_INVALID_TOKEN = 315 const ERROR_INVALID_TRANSFORM = 2020 const ERROR_INVALID_USER_BUFFER = 1784 const ERROR_INVALID_VERIFY_SWITCH = 118 const ERROR_INVALID_WINDOW_HANDLE = 1400 const ERROR_INVALID_WINDOW_STYLE = 2002 const ERROR_INVALID_WORKSTATION = 1329 const ERROR_IOPL_NOT_ENABLED = 197 const ERROR_IO_DEVICE = 1117 const ERROR_IO_INCOMPLETE = 996 const ERROR_IO_PENDING = 997 const ERROR_IPSEC_AUTH_FIREWALL_DROP = 13917 const ERROR_IPSEC_BAD_SPI = 13910 const ERROR_IPSEC_CLEAR_TEXT_DROP = 13916 const ERROR_IPSEC_DEFAULT_MM_AUTH_NOT_FOUND = 13014 const ERROR_IPSEC_DEFAULT_MM_POLICY_NOT_FOUND = 13013 const ERROR_IPSEC_DEFAULT_QM_POLICY_NOT_FOUND = 13015 const ERROR_IPSEC_DOSP_BLOCK = 13925 const ERROR_IPSEC_DOSP_INVALID_PACKET = 13927 const ERROR_IPSEC_DOSP_KEYMOD_NOT_ALLOWED = 13930 const ERROR_IPSEC_DOSP_MAX_ENTRIES = 13929 const ERROR_IPSEC_DOSP_MAX_PER_IP_RATELIMIT_QUEUES = 13932 const ERROR_IPSEC_DOSP_NOT_INSTALLED = 13931 const ERROR_IPSEC_DOSP_RECEIVED_MULTICAST = 13926 const ERROR_IPSEC_DOSP_STATE_LOOKUP_FAILED = 13928 const ERROR_IPSEC_IKE_ADD_UPDATE_KEY_FAILED = 13860 const ERROR_IPSEC_IKE_ATTRIB_FAIL = 13802 const ERROR_IPSEC_IKE_AUTHORIZATION_FAILURE = 13905 const ERROR_IPSEC_IKE_AUTHORIZATION_FAILURE_WITH_OPTIONAL_RETRY = 13907 const ERROR_IPSEC_IKE_AUTH_FAIL = 13801 const ERROR_IPSEC_IKE_BENIGN_REINIT = 13878 const ERROR_IPSEC_IKE_CERT_CHAIN_POLICY_MISMATCH = 13887 const ERROR_IPSEC_IKE_CGA_AUTH_FAILED = 13892 const ERROR_IPSEC_IKE_COEXISTENCE_SUPPRESS = 13902 const ERROR_IPSEC_IKE_CRL_FAILED = 13817 const ERROR_IPSEC_IKE_DECRYPT = 13867 const ERROR_IPSEC_IKE_DH_FAIL = 13822 const ERROR_IPSEC_IKE_DH_FAILURE = 13864 const ERROR_IPSEC_IKE_DOS_COOKIE_SENT = 13890 const ERROR_IPSEC_IKE_DROP_NO_RESPONSE = 13813 const ERROR_IPSEC_IKE_ENCRYPT = 13866 const ERROR_IPSEC_IKE_ERROR = 13816 const ERROR_IPSEC_IKE_FAILQUERYSSP = 13854 const ERROR_IPSEC_IKE_FAILSSPINIT = 13853 const ERROR_IPSEC_IKE_GENERAL_PROCESSING_ERROR = 13804 const ERROR_IPSEC_IKE_GETSPIFAIL = 13857 const ERROR_IPSEC_IKE_INNER_IP_ASSIGNMENT_FAILURE = 13899 const ERROR_IPSEC_IKE_INVALID_AUTH_ALG = 13874 const ERROR_IPSEC_IKE_INVALID_AUTH_PAYLOAD = 13889 const ERROR_IPSEC_IKE_INVALID_CERT_KEYLEN = 13881 const ERROR_IPSEC_IKE_INVALID_CERT_TYPE = 13819 const ERROR_IPSEC_IKE_INVALID_COOKIE = 13846 const ERROR_IPSEC_IKE_INVALID_ENCRYPT_ALG = 13873 const ERROR_IPSEC_IKE_INVALID_FILTER = 13858 const ERROR_IPSEC_IKE_INVALID_GROUP = 13865 const ERROR_IPSEC_IKE_INVALID_HASH = 13870 const ERROR_IPSEC_IKE_INVALID_HASH_ALG = 13871 const ERROR_IPSEC_IKE_INVALID_HASH_SIZE = 13872 const ERROR_IPSEC_IKE_INVALID_HEADER = 13824 const ERROR_IPSEC_IKE_INVALID_KEY_USAGE = 13818 const ERROR_IPSEC_IKE_INVALID_MM_FOR_QM = 13894 const ERROR_IPSEC_IKE_INVALID_PAYLOAD = 13843 const ERROR_IPSEC_IKE_INVALID_POLICY = 13861 const ERROR_IPSEC_IKE_INVALID_RESPONDER_LIFETIME_NOTIFY = 13879 const ERROR_IPSEC_IKE_INVALID_SIG = 13875 const ERROR_IPSEC_IKE_INVALID_SIGNATURE = 13826 const ERROR_IPSEC_IKE_INVALID_SITUATION = 13863 const ERROR_IPSEC_IKE_KERBEROS_ERROR = 13827 const ERROR_IPSEC_IKE_KILL_DUMMY_NAP_TUNNEL = 13898 const ERROR_IPSEC_IKE_LOAD_FAILED = 13876 const ERROR_IPSEC_IKE_LOAD_SOFT_SA = 13844 const ERROR_IPSEC_IKE_MM_ACQUIRE_DROP = 13809 const ERROR_IPSEC_IKE_MM_DELAY_DROP = 13814 const ERROR_IPSEC_IKE_MM_EXPIRED = 13885 const ERROR_IPSEC_IKE_MM_LIMIT = 13882 const ERROR_IPSEC_IKE_NEGOTIATION_DISABLED = 13883 const ERROR_IPSEC_IKE_NEGOTIATION_PENDING = 13803 const ERROR_IPSEC_IKE_NEG_STATUS_BEGIN = 13800 const ERROR_IPSEC_IKE_NEG_STATUS_END = 13897 const ERROR_IPSEC_IKE_NEG_STATUS_EXTENDED_END = 13909 const ERROR_IPSEC_IKE_NOTCBPRIV = 13851 const ERROR_IPSEC_IKE_NO_CERT = 13806 const ERROR_IPSEC_IKE_NO_MM_POLICY = 13850 const ERROR_IPSEC_IKE_NO_PEER_CERT = 13847 const ERROR_IPSEC_IKE_NO_POLICY = 13825 const ERROR_IPSEC_IKE_NO_PRIVATE_KEY = 13820 const ERROR_IPSEC_IKE_NO_PUBLIC_KEY = 13828 const ERROR_IPSEC_IKE_OUT_OF_MEMORY = 13859 const ERROR_IPSEC_IKE_PEER_CRL_FAILED = 13848 const ERROR_IPSEC_IKE_PEER_DOESNT_SUPPORT_MOBIKE = 13904 const ERROR_IPSEC_IKE_PEER_MM_ASSUMED_INVALID = 13886 const ERROR_IPSEC_IKE_POLICY_CHANGE = 13849 const ERROR_IPSEC_IKE_POLICY_MATCH = 13868 const ERROR_IPSEC_IKE_PROCESS_ERR = 13829 const ERROR_IPSEC_IKE_PROCESS_ERR_CERT = 13835 const ERROR_IPSEC_IKE_PROCESS_ERR_CERT_REQ = 13836 const ERROR_IPSEC_IKE_PROCESS_ERR_DELETE = 13841 const ERROR_IPSEC_IKE_PROCESS_ERR_HASH = 13837 const ERROR_IPSEC_IKE_PROCESS_ERR_ID = 13834 const ERROR_IPSEC_IKE_PROCESS_ERR_KE = 13833 const ERROR_IPSEC_IKE_PROCESS_ERR_NATOA = 13893 const ERROR_IPSEC_IKE_PROCESS_ERR_NONCE = 13839 const ERROR_IPSEC_IKE_PROCESS_ERR_NOTIFY = 13840 const ERROR_IPSEC_IKE_PROCESS_ERR_PROP = 13831 const ERROR_IPSEC_IKE_PROCESS_ERR_SA = 13830 const ERROR_IPSEC_IKE_PROCESS_ERR_SIG = 13838 const ERROR_IPSEC_IKE_PROCESS_ERR_TRANS = 13832 const ERROR_IPSEC_IKE_PROCESS_ERR_VENDOR = 13842 const ERROR_IPSEC_IKE_QM_ACQUIRE_DROP = 13810 const ERROR_IPSEC_IKE_QM_DELAY_DROP = 13815 const ERROR_IPSEC_IKE_QM_EXPIRED = 13895 const ERROR_IPSEC_IKE_QM_LIMIT = 13884 const ERROR_IPSEC_IKE_QUEUE_DROP_MM = 13811 const ERROR_IPSEC_IKE_QUEUE_DROP_NO_MM = 13812 const ERROR_IPSEC_IKE_RATELIMIT_DROP = 13903 const ERROR_IPSEC_IKE_REQUIRE_CP_PAYLOAD_MISSING = 13900 const ERROR_IPSEC_IKE_RPC_DELETE = 13877 const ERROR_IPSEC_IKE_SA_DELETED = 13807 const ERROR_IPSEC_IKE_SA_REAPED = 13808 const ERROR_IPSEC_IKE_SECLOADFAIL = 13852 const ERROR_IPSEC_IKE_SHUTTING_DOWN = 13891 const ERROR_IPSEC_IKE_SOFT_SA_TORN_DOWN = 13845 const ERROR_IPSEC_IKE_SRVACQFAIL = 13855 const ERROR_IPSEC_IKE_SRVQUERYCRED = 13856 const ERROR_IPSEC_IKE_STRONG_CRED_AUTHORIZATION_AND_CERTMAP_FAILURE = 13908 const ERROR_IPSEC_IKE_STRONG_CRED_AUTHORIZATION_FAILURE = 13906 const ERROR_IPSEC_IKE_TIMED_OUT = 13805 const ERROR_IPSEC_IKE_TOO_MANY_FILTERS = 13896 const ERROR_IPSEC_IKE_UNEXPECTED_MESSAGE_ID = 13888 const ERROR_IPSEC_IKE_UNKNOWN_DOI = 13862 const ERROR_IPSEC_IKE_UNSUPPORTED_ID = 13869 const ERROR_IPSEC_INTEGRITY_CHECK_FAILED = 13915 const ERROR_IPSEC_INVALID_PACKET = 13914 const ERROR_IPSEC_KEY_MODULE_IMPERSONATION_NEGOTIATION_PENDING = 13901 const ERROR_IPSEC_MM_AUTH_EXISTS = 13010 const ERROR_IPSEC_MM_AUTH_IN_USE = 13012 const ERROR_IPSEC_MM_AUTH_NOT_FOUND = 13011 const ERROR_IPSEC_MM_AUTH_PENDING_DELETION = 13022 const ERROR_IPSEC_MM_FILTER_EXISTS = 13006 const ERROR_IPSEC_MM_FILTER_NOT_FOUND = 13007 const ERROR_IPSEC_MM_FILTER_PENDING_DELETION = 13018 const ERROR_IPSEC_MM_POLICY_EXISTS = 13003 const ERROR_IPSEC_MM_POLICY_IN_USE = 13005 const ERROR_IPSEC_MM_POLICY_NOT_FOUND = 13004 const ERROR_IPSEC_MM_POLICY_PENDING_DELETION = 13021 const ERROR_IPSEC_QM_POLICY_EXISTS = 13000 const ERROR_IPSEC_QM_POLICY_IN_USE = 13002 const ERROR_IPSEC_QM_POLICY_NOT_FOUND = 13001 const ERROR_IPSEC_QM_POLICY_PENDING_DELETION = 13023 const ERROR_IPSEC_REPLAY_CHECK_FAILED = 13913 const ERROR_IPSEC_SA_LIFETIME_EXPIRED = 13911 const ERROR_IPSEC_THROTTLE_DROP = 13918 const ERROR_IPSEC_TRANSPORT_FILTER_EXISTS = 13008 const ERROR_IPSEC_TRANSPORT_FILTER_NOT_FOUND = 13009 const ERROR_IPSEC_TRANSPORT_FILTER_PENDING_DELETION = 13019 const ERROR_IPSEC_TUNNEL_FILTER_EXISTS = 13016 const ERROR_IPSEC_TUNNEL_FILTER_NOT_FOUND = 13017 const ERROR_IPSEC_TUNNEL_FILTER_PENDING_DELETION = 13020 const ERROR_IPSEC_WRONG_SA = 13912 const ERROR_IRQ_BUSY = 1119 const ERROR_IS_JOINED = 134 const ERROR_IS_JOIN_PATH = 147 const ERROR_IS_JOIN_TARGET = 133 const ERROR_IS_SUBSTED = 135 const ERROR_IS_SUBST_PATH = 146 const ERROR_IS_SUBST_TARGET = 149 const ERROR_ITERATED_DATA_EXCEEDS_64k = 194 const ERROR_JOIN_TO_JOIN = 138 const ERROR_JOIN_TO_SUBST = 140 const ERROR_JOURNAL_DELETE_IN_PROGRESS = 1178 const ERROR_JOURNAL_ENTRY_DELETED = 1181 const ERROR_JOURNAL_HOOK_SET = 1430 const ERROR_JOURNAL_NOT_ACTIVE = 1179 const ERROR_KERNEL_APC = 738 const ERROR_KEY_DELETED = 1018 const ERROR_KEY_HAS_CHILDREN = 1020 const ERROR_KM_DRIVER_BLOCKED = 1930 const ERROR_LABEL_QUESTIONABLE = 2 const ERROR_LABEL_TOO_LONG = 154 const ERROR_LABEL_UNREADABLE = 1 const ERROR_LAST_ADMIN = 1322 const ERROR_LB_WITHOUT_TABSTOPS = 1434 const ERROR_LIBRARY_FULL = 4322 const ERROR_LIBRARY_OFFLINE = 4305 const ERROR_LICENSE_QUOTA_EXCEEDED = 1395 const ERROR_LISTBOX_ID_NOT_FOUND = 1416 const ERROR_LM_CROSS_ENCRYPTION_REQUIRED = 1390 const ERROR_LOCAL_USER_SESSION_KEY = 1303 const ERROR_LOCKED = 212 const ERROR_LOCK_FAILED = 167 const ERROR_LOCK_VIOLATION = 33 const ERROR_LOGIN_TIME_RESTRICTION = 1239 const ERROR_LOGIN_WKSTA_RESTRICTION = 1240 const ERROR_LOGON_FAILURE = 1326 const ERROR_LOGON_NOT_GRANTED = 1380 const ERROR_LOGON_SESSION_COLLISION = 1366 const ERROR_LOGON_SESSION_EXISTS = 1363 const ERROR_LOGON_TYPE_NOT_GRANTED = 1385 const ERROR_LOG_FILE_FULL = 1502 const ERROR_LUIDS_EXHAUSTED = 1334 const ERROR_MACHINE_LOCKED = 1271 const ERROR_MAGAZINE_NOT_PRESENT = 1163 const ERROR_MALFORMED_SUBSTITUTION_STRING = 14094 const ERROR_MAPPED_ALIGNMENT = 1132 const ERROR_MAX_THRDS_REACHED = 164 const ERROR_MCA_INTERNAL_ERROR = 15205 const ERROR_MCA_INVALID_CAPABILITIES_STRING = 15200 const ERROR_MCA_INVALID_TECHNOLOGY_TYPE_RETURNED = 15206 const ERROR_MCA_INVALID_VCP_VERSION = 15201 const ERROR_MCA_MCCS_VERSION_MISMATCH = 15203 const ERROR_MCA_MONITOR_VIOLATES_MCCS_SPECIFICATION = 15202 const ERROR_MCA_UNSUPPORTED_COLOR_TEMPERATURE = 15207 const ERROR_MCA_UNSUPPORTED_MCCS_VERSION = 15204 const ERROR_MEDIA_CHANGED = 1110 const ERROR_MEDIA_INCOMPATIBLE = 4315 const ERROR_MEDIA_NOT_AVAILABLE = 4318 const ERROR_MEDIA_OFFLINE = 4304 const ERROR_MEDIA_UNAVAILABLE = 4308 const ERROR_MEDIUM_NOT_ACCESSIBLE = 4323 const ERROR_MEMBERS_PRIMARY_GROUP = 1374 const ERROR_MEMBER_IN_ALIAS = 1378 const ERROR_MEMBER_IN_GROUP = 1320 const ERROR_MEMBER_NOT_IN_ALIAS = 1377 const ERROR_MEMBER_NOT_IN_GROUP = 1321 const ERROR_MENU_ITEM_NOT_FOUND = 1456 const ERROR_MESSAGE_EXCEEDS_MAX_SIZE = 4336 const ERROR_MESSAGE_SYNC_ONLY = 1159 const ERROR_METAFILE_NOT_SUPPORTED = 2003 const ERROR_META_EXPANSION_TOO_LONG = 208 const ERROR_MOD_NOT_FOUND = 126 const ERROR_MORE_DATA = 234 const ERROR_MORE_WRITES = 1120 const ERROR_MRM_AUTOMERGE_ENABLED = 15139 const ERROR_MRM_DUPLICATE_ENTRY = 15119 const ERROR_MRM_DUPLICATE_MAP_NAME = 15118 const ERROR_MRM_FILEPATH_TOO_LONG = 15121 const ERROR_MRM_INDETERMINATE_QUALIFIER_VALUE = 15138 const ERROR_MRM_INVALID_FILE_TYPE = 15112 const ERROR_MRM_INVALID_PRICONFIG = 15111 const ERROR_MRM_INVALID_PRI_FILE = 15126 const ERROR_MRM_INVALID_QUALIFIER_OPERATOR = 15137 const ERROR_MRM_INVALID_QUALIFIER_VALUE = 15114 const ERROR_MRM_INVALID_RESOURCE_IDENTIFIER = 15120 const ERROR_MRM_MAP_NOT_FOUND = 15135 const ERROR_MRM_NAMED_RESOURCE_NOT_FOUND = 15127 const ERROR_MRM_NO_CANDIDATE = 15115 const ERROR_MRM_NO_MATCH_OR_DEFAULT_CANDIDATE = 15116 const ERROR_MRM_RESOURCE_TYPE_MISMATCH = 15117 const ERROR_MRM_RUNTIME_NO_DEFAULT_OR_NEUTRAL_RESOURCE = 15110 const ERROR_MRM_TOO_MANY_RESOURCES = 15140 const ERROR_MRM_UNKNOWN_QUALIFIER = 15113 const ERROR_MRM_UNSUPPORTED_DIRECTORY_TYPE = 15122 const ERROR_MRM_UNSUPPORTED_PROFILE_TYPE = 15136 const ERROR_MR_MID_NOT_FOUND = 317 const ERROR_MUI_FILE_NOT_FOUND = 15100 const ERROR_MUI_FILE_NOT_LOADED = 15105 const ERROR_MUI_INTLSETTINGS_INVALID_LOCALE_NAME = 15108 const ERROR_MUI_INTLSETTINGS_UILANG_NOT_INSTALLED = 15107 const ERROR_MUI_INVALID_FILE = 15101 const ERROR_MUI_INVALID_LOCALE_NAME = 15103 const ERROR_MUI_INVALID_RC_CONFIG = 15102 const ERROR_MUI_INVALID_ULTIMATEFALLBACK_NAME = 15104 const ERROR_MUTUAL_AUTH_FAILED = 1397 const ERROR_NEEDS_REMEDIATION = 15612 const ERROR_NEGATIVE_SEEK = 131 const ERROR_NESTING_NOT_ALLOWED = 215 const ERROR_NETLOGON_NOT_STARTED = 1792 const ERROR_NETNAME_DELETED = 64 const ERROR_NETWORK_ACCESS_DENIED = 65 const ERROR_NETWORK_BUSY = 54 const ERROR_NETWORK_NOT_AVAILABLE = 5035 const ERROR_NETWORK_UNREACHABLE = 1231 const ERROR_NET_WRITE_FAULT = 88 const ERROR_NOACCESS = 998 const ERROR_NODE_CANNOT_BE_CLUSTERED = 5898 const ERROR_NODE_CANT_HOST_RESOURCE = 5071 const ERROR_NODE_NOT_AVAILABLE = 5036 const ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT = 1807 const ERROR_NOLOGON_SERVER_TRUST_ACCOUNT = 1809 const ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT = 1808 const ERROR_NONE_MAPPED = 1332 const ERROR_NONPAGED_SYSTEM_RESOURCES = 1451 const ERROR_NON_ACCOUNT_SID = 1257 const ERROR_NON_DOMAIN_SID = 1258 const ERROR_NON_MDICHILD_WINDOW = 1445 const ERROR_NOTIFY_ENUM_DIR = 1022 const ERROR_NOT_ALL_ASSIGNED = 1300 const ERROR_NOT_AUTHENTICATED = 1244 const ERROR_NOT_A_REPARSE_POINT = 4390 const ERROR_NOT_CHILD_WINDOW = 1442 const ERROR_NOT_CONNECTED = 2250 const ERROR_NOT_CONTAINER = 1207 const ERROR_NOT_DOS_DISK = 26 const ERROR_NOT_EMPTY = 4307 const ERROR_NOT_ENOUGH_MEMORY = 8 const ERROR_NOT_ENOUGH_QUOTA = 1816 const ERROR_NOT_ENOUGH_SERVER_MEMORY = 1130 const ERROR_NOT_EXPORT_FORMAT = 6008 const ERROR_NOT_FOUND = 1168 const ERROR_NOT_GUI_PROCESS = 1471 const ERROR_NOT_JOINED = 136 const ERROR_NOT_LOCKED = 158 const ERROR_NOT_LOGGED_ON = 1245 const ERROR_NOT_LOGON_PROCESS = 1362 const ERROR_NOT_OWNER = 288 const ERROR_NOT_QUORUM_CAPABLE = 5021 const ERROR_NOT_QUORUM_CLASS = 5025 const ERROR_NOT_READY = 21 const ERROR_NOT_REGISTRY_FILE = 1017 const ERROR_NOT_SAFEBOOT_SERVICE = 1084 const ERROR_NOT_SAME_DEVICE = 17 const ERROR_NOT_SUBSTED = 137 const ERROR_NOT_SUPPORTED = 50 const ERROR_NOT_SUPPORTED_ON_SBS = 1254 const ERROR_NOT_SUPPORTED_ON_STANDARD_SERVER = 8584 const ERROR_NO_ASSOCIATION = 1155 const ERROR_NO_BROWSER_SERVERS_FOUND = 6118 const ERROR_NO_DATA = 232 const ERROR_NO_DATA_DETECTED = 1104 const ERROR_NO_EFS = 6004 const ERROR_NO_IMPERSONATION_TOKEN = 1309 const ERROR_NO_INHERITANCE = 1391 const ERROR_NO_LOGON_SERVERS = 1311 const ERROR_NO_LOG_SPACE = 1019 const ERROR_NO_MATCH = 1169 const ERROR_NO_MEDIA_IN_DRIVE = 1112 const ERROR_NO_MORE_DEVICES = 1248 const ERROR_NO_MORE_FILES = 18 const ERROR_NO_MORE_ITEMS = 259 const ERROR_NO_MORE_SEARCH_HANDLES = 113 const ERROR_NO_MORE_USER_HANDLES = 1158 const ERROR_NO_NETWORK = 1222 const ERROR_NO_NET_OR_BAD_PATH = 1203 const ERROR_NO_NVRAM_RESOURCES = 1470 const ERROR_NO_PROC_SLOTS = 89 const ERROR_NO_PROMOTION_ACTIVE = 8222 const ERROR_NO_QUOTAS_FOR_ACCOUNT = 1302 const ERROR_NO_RECOVERY_POLICY = 6003 const ERROR_NO_RECOVERY_PROGRAM = 1082 const ERROR_NO_SCROLLBARS = 1447 const ERROR_NO_SECURITY_ON_OBJECT = 1350 const ERROR_NO_SHUTDOWN_IN_PROGRESS = 1116 const ERROR_NO_SIGNAL_SENT = 205 const ERROR_NO_SITENAME = 1919 const ERROR_NO_SPOOL_SPACE = 62 const ERROR_NO_SUCH_ALIAS = 1376 const ERROR_NO_SUCH_DOMAIN = 1355 const ERROR_NO_SUCH_GROUP = 1319 const ERROR_NO_SUCH_LOGON_SESSION = 1312 const ERROR_NO_SUCH_MEMBER = 1387 const ERROR_NO_SUCH_PACKAGE = 1364 const ERROR_NO_SUCH_PRIVILEGE = 1313 const ERROR_NO_SUCH_SITE = 1249 const ERROR_NO_SUCH_USER = 1317 const ERROR_NO_SUPPORTING_DRIVES = 4339 const ERROR_NO_SYSTEM_MENU = 1437 const ERROR_NO_SYSTEM_RESOURCES = 1450 const ERROR_NO_TOKEN = 1008 const ERROR_NO_TRACKING_SERVICE = 1172 const ERROR_NO_TRUST_LSA_SECRET = 1786 const ERROR_NO_TRUST_SAM_ACCOUNT = 1787 const ERROR_NO_UNICODE_TRANSLATION = 1113 const ERROR_NO_USER_KEYS = 6006 const ERROR_NO_USER_SESSION_KEY = 1394 const ERROR_NO_VOLUME_ID = 1173 const ERROR_NO_VOLUME_LABEL = 125 const ERROR_NO_WILDCARD_CHARACTERS = 1417 const ERROR_NT_CROSS_ENCRYPTION_REQUIRED = 1386 const ERROR_NULL_LM_PASSWORD = 1304 const ERROR_OBJECT_ALREADY_EXISTS = 5010 const ERROR_OBJECT_IN_LIST = 5011 const ERROR_OBJECT_NOT_EXTERNALLY_BACKED = 342 const ERROR_OBJECT_NOT_FOUND = 4312 const ERROR_OLD_WIN_VERSION = 1150 const ERROR_ONLY_IF_CONNECTED = 1251 const ERROR_OPEN_FAILED = 110 const ERROR_OPEN_FILES = 2401 const ERROR_OPERATION_ABORTED = 995 const ERROR_OPLOCK_NOT_GRANTED = 300 const ERROR_OUTOFMEMORY = 14 const ERROR_OUT_OF_PAPER = 28 const ERROR_OUT_OF_STRUCTURES = 84 const ERROR_OVERRIDE_NOCHANGES = 1252 const ERROR_PACKAGES_IN_USE = 15618 const ERROR_PACKAGE_ALREADY_EXISTS = 15611 const ERROR_PACKAGE_REPOSITORY_CORRUPTED = 15614 const ERROR_PACKAGE_UPDATING = 15616 const ERROR_PAGED_SYSTEM_RESOURCES = 1452 const ERROR_PAGEFILE_QUOTA = 1454 const ERROR_PARAMETER_QUOTA_EXCEEDED = 1283 const ERROR_PARTIAL_COPY = 299 const ERROR_PARTITION_FAILURE = 1105 const ERROR_PASSWORD_EXPIRED = 1330 const ERROR_PASSWORD_MUST_CHANGE = 1907 const ERROR_PASSWORD_RESTRICTION = 1325 const ERROR_PATCH_PACKAGE_INVALID = 1636 const ERROR_PATCH_PACKAGE_OPEN_FAILED = 1635 const ERROR_PATCH_PACKAGE_REJECTED = 1643 const ERROR_PATCH_PACKAGE_UNSUPPORTED = 1637 const ERROR_PATCH_TARGET_NOT_FOUND = 1642 const ERROR_PATH_BUSY = 148 const ERROR_PATH_NOT_FOUND = 3 const ERROR_PER_USER_TRUST_QUOTA_EXCEEDED = 1932 const ERROR_PIPE_BUSY = 231 const ERROR_PIPE_CONNECTED = 535 const ERROR_PIPE_LISTENING = 536 const ERROR_PIPE_LOCAL = 229 const ERROR_PIPE_NOT_CONNECTED = 233 const ERROR_PKINIT_FAILURE = 1263 const ERROR_POINT_NOT_FOUND = 1171 const ERROR_POLICY_OBJECT_NOT_FOUND = 8219 const ERROR_POLICY_ONLY_IN_DS = 8220 const ERROR_POPUP_ALREADY_ACTIVE = 1446 const ERROR_PORT_UNREACHABLE = 1234 const ERROR_POSSIBLE_DEADLOCK = 1131 const ERROR_POTENTIAL_FILE_FOUND = 1180 const ERROR_PRINTER_ALREADY_EXISTS = 1802 const ERROR_PRINTER_DELETED = 1905 const ERROR_PRINTER_DRIVER_ALREADY_INSTALLED = 1795 const ERROR_PRINTER_DRIVER_BLOCKED = 3014 const ERROR_PRINTER_DRIVER_IN_USE = 3001 const ERROR_PRINTER_DRIVER_WARNED = 3013 const ERROR_PRINTER_HAS_JOBS_QUEUED = 3009 const ERROR_PRINTER_NOT_FOUND = 3012 const ERROR_PRINTQ_FULL = 61 const ERROR_PRINT_CANCELLED = 63 const ERROR_PRINT_MONITOR_ALREADY_INSTALLED = 3006 const ERROR_PRINT_MONITOR_IN_USE = 3008 const ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED = 3005 const ERROR_PRIVATE_DIALOG_INDEX = 1415 const ERROR_PRIVILEGE_NOT_HELD = 1314 const ERROR_PROCESS_ABORTED = 1067 const ERROR_PROC_NOT_FOUND = 127 const ERROR_PRODUCT_UNINSTALLED = 1614 const ERROR_PRODUCT_VERSION = 1638 const ERROR_PROFILE_NOT_ASSOCIATED_WITH_DEVICE = 2015 const ERROR_PROFILE_NOT_FOUND = 2016 const ERROR_PROMOTION_ACTIVE = 8221 const ERROR_PROTOCOL_UNREACHABLE = 1233 const ERROR_QUORUMLOG_OPEN_FAILED = 5028 const ERROR_QUORUM_DISK_NOT_FOUND = 5086 const ERROR_QUORUM_OWNER_ALIVE = 5034 const ERROR_QUORUM_RESOURCE = 5020 const ERROR_QUORUM_RESOURCE_ONLINE_FAILED = 5027 const ERROR_READ_FAULT = 30 const ERROR_RECOVERY_FAILURE = 1279 const ERROR_RECOVERY_FILE_CORRUPT = 15619 const ERROR_REC_NON_EXISTENT = 4005 const ERROR_REDIRECTOR_HAS_OPEN_HANDLES = 1794 const ERROR_REDIR_PAUSED = 72 const ERROR_REGISTRY_CORRUPT = 1015 const ERROR_REGISTRY_IO_FAILED = 1016 const ERROR_REGISTRY_RECOVERED = 1014 const ERROR_REG_NAT_CONSUMPTION = 1261 const ERROR_RELOC_CHAIN_XEEDS_SEGLIM = 201 const ERROR_REMOTE_PRINT_CONNECTIONS_BLOCKED = 1936 const ERROR_REMOTE_SESSION_LIMIT_EXCEEDED = 1220 const ERROR_REMOTE_STORAGE_MEDIA_ERROR = 4352 const ERROR_REMOTE_STORAGE_NOT_ACTIVE = 4351 const ERROR_REMOVE_FAILED = 15610 const ERROR_REM_NOT_LIST = 51 const ERROR_REPARSE_ATTRIBUTE_CONFLICT = 4391 const ERROR_REPARSE_TAG_INVALID = 4393 const ERROR_REPARSE_TAG_MISMATCH = 4394 const ERROR_REQUEST_ABORTED = 1235 const ERROR_REQUEST_REFUSED = 4320 const ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION = 1459 const ERROR_REQ_NOT_ACCEP = 71 const ERROR_RESILIENCY_FILE_CORRUPT = 15625 const ERROR_RESMON_CREATE_FAILED = 5017 const ERROR_RESMON_INVALID_STATE = 5084 const ERROR_RESMON_ONLINE_FAILED = 5018 const ERROR_RESOURCE_DATA_NOT_FOUND = 1812 const ERROR_RESOURCE_DISABLED = 4309 const ERROR_RESOURCE_ENUM_USER_STOP = 15106 const ERROR_RESOURCE_FAILED = 5038 const ERROR_RESOURCE_LANG_NOT_FOUND = 1815 const ERROR_RESOURCE_NAME_NOT_FOUND = 1814 const ERROR_RESOURCE_NOT_AVAILABLE = 5006 const ERROR_RESOURCE_NOT_FOUND = 5007 const ERROR_RESOURCE_NOT_ONLINE = 5004 const ERROR_RESOURCE_NOT_PRESENT = 4316 const ERROR_RESOURCE_ONLINE = 5019 const ERROR_RESOURCE_PROPERTIES_STORED = 5024 const ERROR_RESOURCE_PROPERTY_UNCHANGEABLE = 5089 const ERROR_RESOURCE_TYPE_NOT_FOUND = 1813 const ERROR_RESTART_APPLICATION = 1467 const ERROR_RETRY = 1237 const ERROR_REVISION_MISMATCH = 1306 const ERROR_RING2SEG_MUST_BE_MOVABLE = 200 const ERROR_RING2_STACK_IN_USE = 207 const ERROR_RMODE_APP = 1153 const ERROR_RPL_NOT_ALLOWED = 4006 const ERROR_RUNLEVEL_SWITCH_AGENT_TIMEOUT = 15403 const ERROR_RUNLEVEL_SWITCH_IN_PROGRESS = 15404 const ERROR_RUNLEVEL_SWITCH_TIMEOUT = 15402 const ERROR_RXACT_COMMIT_FAILURE = 1370 const ERROR_RXACT_INVALID_STATE = 1369 const ERROR_SAME_DRIVE = 143 const ERROR_SAM_INIT_FAILURE = 8541 const ERROR_SCOPE_NOT_FOUND = 318 const ERROR_SCREEN_ALREADY_LOCKED = 1440 const ERROR_SECONDARY_IC_PROVIDER_NOT_REGISTERED = 15321 const ERROR_SECRET_TOO_LONG = 1382 const ERROR_SECTOR_NOT_FOUND = 27 const ERROR_SEEK = 25 const ERROR_SEEK_ON_DEVICE = 132 const ERROR_SEM_IS_SET = 102 const ERROR_SEM_NOT_FOUND = 187 const ERROR_SEM_OWNER_DIED = 105 const ERROR_SEM_TIMEOUT = 121 const ERROR_SEM_USER_LIMIT = 106 const ERROR_SERIAL_NO_DEVICE = 1118 const ERROR_SERVER_DISABLED = 1341 const ERROR_SERVER_HAS_OPEN_HANDLES = 1811 const ERROR_SERVER_NOT_DISABLED = 1342 const ERROR_SERVER_SHUTDOWN_IN_PROGRESS = 1255 const ERROR_SERVICES_FAILED_AUTOSTART = 15405 const ERROR_SERVICE_ALREADY_RUNNING = 1056 const ERROR_SERVICE_CANNOT_ACCEPT_CTRL = 1061 const ERROR_SERVICE_DATABASE_LOCKED = 1055 const ERROR_SERVICE_DEPENDENCY_DELETED = 1075 const ERROR_SERVICE_DEPENDENCY_FAIL = 1068 const ERROR_SERVICE_DISABLED = 1058 const ERROR_SERVICE_DOES_NOT_EXIST = 1060 const ERROR_SERVICE_EXISTS = 1073 const ERROR_SERVICE_LOGON_FAILED = 1069 const ERROR_SERVICE_MARKED_FOR_DELETE = 1072 const ERROR_SERVICE_NEVER_STARTED = 1077 const ERROR_SERVICE_NOT_ACTIVE = 1062 const ERROR_SERVICE_NOT_FOUND = 1243 const ERROR_SERVICE_NOT_IN_EXE = 1083 const ERROR_SERVICE_NO_THREAD = 1054 const ERROR_SERVICE_REQUEST_TIMEOUT = 1053 const ERROR_SERVICE_SPECIFIC_ERROR = 1066 const ERROR_SERVICE_START_HANG = 1070 const ERROR_SESSION_CREDENTIAL_CONFLICT = 1219 const ERROR_SETCOUNT_ON_BAD_LB = 1433 const ERROR_SETMARK_DETECTED = 1103 const ERROR_SET_NOT_FOUND = 1170 const ERROR_SET_POWER_STATE_FAILED = 1141 const ERROR_SET_POWER_STATE_VETOED = 1140 const ERROR_SEVERITY_ERROR = 3221225472 const ERROR_SEVERITY_INFORMATIONAL = 1073741824 const ERROR_SEVERITY_SUCCESS = 0 const ERROR_SEVERITY_WARNING = 2147483648 const ERROR_SHARED_POLICY = 8218 const ERROR_SHARING_BUFFER_EXCEEDED = 36 const ERROR_SHARING_PAUSED = 70 const ERROR_SHARING_VIOLATION = 32 const ERROR_SHUTDOWN_CLUSTER = 5008 const ERROR_SHUTDOWN_IN_PROGRESS = 1115 const ERROR_SIGNAL_PENDING = 162 const ERROR_SIGNAL_REFUSED = 156 const ERROR_SINGLE_INSTANCE_APP = 1152 const ERROR_SLOT_NOT_PRESENT = 4 const ERROR_SMARTCARD_SUBSYSTEM_FAILURE = 1264 const ERROR_SMI_PRIMITIVE_INSTALLER_FAILED = 14108 const ERROR_SOME_NOT_MAPPED = 1301 const ERROR_SOURCE_ELEMENT_EMPTY = 1160 const ERROR_SPECIAL_ACCOUNT = 1371 const ERROR_SPECIAL_GROUP = 1372 const ERROR_SPECIAL_USER = 1373 const ERROR_SPL_NO_ADDJOB = 3004 const ERROR_SPL_NO_STARTDOC = 3003 const ERROR_SPOOL_FILE_NOT_FOUND = 3002 const ERROR_STACK_BUFFER_OVERRUN = 1282 const ERROR_STACK_OVERFLOW = 1001 const ERROR_STATE_COMPOSITE_SETTING_VALUE_SIZE_LIMIT_EXCEEDED = 15815 const ERROR_STATE_CONTAINER_NAME_SIZE_LIMIT_EXCEEDED = 15818 const ERROR_STATE_CREATE_CONTAINER_FAILED = 15805 const ERROR_STATE_DELETE_CONTAINER_FAILED = 15806 const ERROR_STATE_DELETE_SETTING_FAILED = 15809 const ERROR_STATE_ENUMERATE_CONTAINER_FAILED = 15813 const ERROR_STATE_ENUMERATE_SETTINGS_FAILED = 15814 const ERROR_STATE_GET_VERSION_FAILED = 15801 const ERROR_STATE_LOAD_STORE_FAILED = 15800 const ERROR_STATE_OPEN_CONTAINER_FAILED = 15804 const ERROR_STATE_QUERY_SETTING_FAILED = 15810 const ERROR_STATE_READ_COMPOSITE_SETTING_FAILED = 15811 const ERROR_STATE_READ_SETTING_FAILED = 15807 const ERROR_STATE_SETTING_NAME_SIZE_LIMIT_EXCEEDED = 15817 const ERROR_STATE_SETTING_VALUE_SIZE_LIMIT_EXCEEDED = 15816 const ERROR_STATE_SET_VERSION_FAILED = 15802 const ERROR_STATE_STRUCTURED_RESET_FAILED = 15803 const ERROR_STATE_WRITE_COMPOSITE_SETTING_FAILED = 15812 const ERROR_STATE_WRITE_SETTING_FAILED = 15808 const ERROR_STATIC_INIT = 4002 const ERROR_SUBST_TO_JOIN = 141 const ERROR_SUBST_TO_SUBST = 139 const ERROR_SUCCESS = 0 const ERROR_SUCCESS_REBOOT_INITIATED = 1641 const ERROR_SUCCESS_REBOOT_REQUIRED = 3010 const ERROR_SUCCESS_RESTART_REQUIRED = 3011 const ERROR_SWAPERROR = 999 const ERROR_SXS_ACTIVATION_CONTEXT_DISABLED = 14006 const ERROR_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT = 14103 const ERROR_SXS_ASSEMBLY_MISSING = 14081 const ERROR_SXS_ASSEMBLY_NOT_FOUND = 14003 const ERROR_SXS_ASSEMBLY_NOT_LOCKED = 14097 const ERROR_SXS_CANT_GEN_ACTCTX = 14001 const ERROR_SXS_COMPONENT_STORE_CORRUPT = 14098 const ERROR_SXS_CORRUPTION = 14083 const ERROR_SXS_CORRUPT_ACTIVATION_STACK = 14082 const ERROR_SXS_DUPLICATE_ASSEMBLY_NAME = 14027 const ERROR_SXS_DUPLICATE_CLSID = 14023 const ERROR_SXS_DUPLICATE_DLL_NAME = 14021 const ERROR_SXS_DUPLICATE_IID = 14024 const ERROR_SXS_DUPLICATE_PROGID = 14026 const ERROR_SXS_DUPLICATE_TLBID = 14025 const ERROR_SXS_DUPLICATE_WINDOWCLASS_NAME = 14022 const ERROR_SXS_EARLY_DEACTIVATION = 14084 const ERROR_SXS_FILE_HASH_MISMATCH = 14028 const ERROR_SXS_FILE_HASH_MISSING = 14110 const ERROR_SXS_FILE_NOT_PART_OF_ASSEMBLY = 14104 const ERROR_SXS_IDENTITIES_DIFFERENT = 14102 const ERROR_SXS_IDENTITY_DUPLICATE_ATTRIBUTE = 14092 const ERROR_SXS_IDENTITY_PARSE_ERROR = 14093 const ERROR_SXS_INCORRECT_PUBLIC_KEY_TOKEN = 14095 const ERROR_SXS_INVALID_ACTCTXDATA_FORMAT = 14002 const ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE = 14017 const ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME = 14080 const ERROR_SXS_INVALID_DEACTIVATION = 14085 const ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME = 14091 const ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE = 14090 const ERROR_SXS_INVALID_XML_NAMESPACE_URI = 14014 const ERROR_SXS_KEY_NOT_FOUND = 14007 const ERROR_SXS_LEAF_MANIFEST_DEPENDENCY_NOT_INSTALLED = 14016 const ERROR_SXS_MANIFEST_FORMAT_ERROR = 14004 const ERROR_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT = 14101 const ERROR_SXS_MANIFEST_INVALID_REQUIRED_DEFAULT_NAMESPACE = 14019 const ERROR_SXS_MANIFEST_MISSING_REQUIRED_DEFAULT_NAMESPACE = 14018 const ERROR_SXS_MANIFEST_PARSE_ERROR = 14005 const ERROR_SXS_MANIFEST_TOO_BIG = 14105 const ERROR_SXS_MISSING_ASSEMBLY_IDENTITY_ATTRIBUTE = 14079 const ERROR_SXS_MULTIPLE_DEACTIVATION = 14086 const ERROR_SXS_POLICY_PARSE_ERROR = 14029 const ERROR_SXS_PRIVATE_MANIFEST_CROSS_PATH_WITH_REPARSE_POINT = 14020 const ERROR_SXS_PROCESS_DEFAULT_ALREADY_SET = 14011 const ERROR_SXS_PROCESS_TERMINATION_REQUESTED = 14087 const ERROR_SXS_PROTECTION_CATALOG_FILE_MISSING = 14078 const ERROR_SXS_PROTECTION_CATALOG_NOT_VALID = 14076 const ERROR_SXS_PROTECTION_PUBLIC_KEY_TOO_SHORT = 14075 const ERROR_SXS_PROTECTION_RECOVERY_FAILED = 14074 const ERROR_SXS_RELEASE_ACTIVATION_CONTEXT = 14088 const ERROR_SXS_ROOT_MANIFEST_DEPENDENCY_NOT_INSTALLED = 14015 const ERROR_SXS_SECTION_NOT_FOUND = 14000 const ERROR_SXS_SETTING_NOT_REGISTERED = 14106 const ERROR_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY = 14089 const ERROR_SXS_THREAD_QUERIES_DISABLED = 14010 const ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE = 14107 const ERROR_SXS_UNKNOWN_ENCODING = 14013 const ERROR_SXS_UNKNOWN_ENCODING_GROUP = 14012 const ERROR_SXS_UNTRANSLATABLE_HRESULT = 14077 const ERROR_SXS_VERSION_CONFLICT = 14008 const ERROR_SXS_WRONG_SECTION_TYPE = 14009 const ERROR_SXS_XML_E_BADCHARDATA = 14036 const ERROR_SXS_XML_E_BADCHARINSTRING = 14034 const ERROR_SXS_XML_E_BADNAMECHAR = 14033 const ERROR_SXS_XML_E_BADPEREFINSUBSET = 14059 const ERROR_SXS_XML_E_BADSTARTNAMECHAR = 14032 const ERROR_SXS_XML_E_BADXMLCASE = 14069 const ERROR_SXS_XML_E_BADXMLDECL = 14056 const ERROR_SXS_XML_E_COMMENTSYNTAX = 14031 const ERROR_SXS_XML_E_DUPLICATEATTRIBUTE = 14053 const ERROR_SXS_XML_E_EXPECTINGCLOSEQUOTE = 14045 const ERROR_SXS_XML_E_EXPECTINGTAGEND = 14038 const ERROR_SXS_XML_E_INCOMPLETE_ENCODING = 14043 const ERROR_SXS_XML_E_INTERNALERROR = 14041 const ERROR_SXS_XML_E_INVALIDATROOTLEVEL = 14055 const ERROR_SXS_XML_E_INVALIDENCODING = 14067 const ERROR_SXS_XML_E_INVALIDSWITCH = 14068 const ERROR_SXS_XML_E_INVALID_DECIMAL = 14047 const ERROR_SXS_XML_E_INVALID_HEXIDECIMAL = 14048 const ERROR_SXS_XML_E_INVALID_STANDALONE = 14070 const ERROR_SXS_XML_E_INVALID_UNICODE = 14049 const ERROR_SXS_XML_E_INVALID_VERSION = 14072 const ERROR_SXS_XML_E_MISSINGEQUALS = 14073 const ERROR_SXS_XML_E_MISSINGQUOTE = 14030 const ERROR_SXS_XML_E_MISSINGROOT = 14057 const ERROR_SXS_XML_E_MISSINGSEMICOLON = 14039 const ERROR_SXS_XML_E_MISSINGWHITESPACE = 14037 const ERROR_SXS_XML_E_MISSING_PAREN = 14044 const ERROR_SXS_XML_E_MULTIPLEROOTS = 14054 const ERROR_SXS_XML_E_MULTIPLE_COLONS = 14046 const ERROR_SXS_XML_E_RESERVEDNAMESPACE = 14066 const ERROR_SXS_XML_E_UNBALANCEDPAREN = 14040 const ERROR_SXS_XML_E_UNCLOSEDCDATA = 14065 const ERROR_SXS_XML_E_UNCLOSEDCOMMENT = 14063 const ERROR_SXS_XML_E_UNCLOSEDDECL = 14064 const ERROR_SXS_XML_E_UNCLOSEDENDTAG = 14061 const ERROR_SXS_XML_E_UNCLOSEDSTARTTAG = 14060 const ERROR_SXS_XML_E_UNCLOSEDSTRING = 14062 const ERROR_SXS_XML_E_UNCLOSEDTAG = 14052 const ERROR_SXS_XML_E_UNEXPECTEDENDTAG = 14051 const ERROR_SXS_XML_E_UNEXPECTEDEOF = 14058 const ERROR_SXS_XML_E_UNEXPECTED_STANDALONE = 14071 const ERROR_SXS_XML_E_UNEXPECTED_WHITESPACE = 14042 const ERROR_SXS_XML_E_WHITESPACEORQUESTIONMARK = 14050 const ERROR_SXS_XML_E_XMLDECLSYNTAX = 14035 const ERROR_SYMLINK_CLASS_DISABLED = 1463 const ERROR_SYMLINK_NOT_SUPPORTED = 1464 const ERROR_SYNC_FOREGROUND_REFRESH_REQUIRED = 1274 const ERROR_SYSTEM_DEVICE_NOT_FOUND = 15299 const ERROR_SYSTEM_NEEDS_REMEDIATION = 15623 const ERROR_SYSTEM_TRACE = 150 const ERROR_TAG_NOT_FOUND = 2012 const ERROR_TAG_NOT_PRESENT = 2013 const ERROR_THREAD_1_INACTIVE = 210 const ERROR_TIMEOUT = 1460 const ERROR_TIME_SKEW = 1398 const ERROR_TLW_WITH_WSCHILD = 1406 const ERROR_TOKEN_ALREADY_IN_USE = 1375 const ERROR_TOO_MANY_CMDS = 56 const ERROR_TOO_MANY_CONTEXT_IDS = 1384 const ERROR_TOO_MANY_LINKS = 1142 const ERROR_TOO_MANY_LUIDS_REQUESTED = 1333 const ERROR_TOO_MANY_MODULES = 214 const ERROR_TOO_MANY_MUXWAITERS = 152 const ERROR_TOO_MANY_NAMES = 68 const ERROR_TOO_MANY_OPEN_FILES = 4 const ERROR_TOO_MANY_POSTS = 298 const ERROR_TOO_MANY_SECRETS = 1381 const ERROR_TOO_MANY_SEMAPHORES = 100 const ERROR_TOO_MANY_SEM_REQUESTS = 103 const ERROR_TOO_MANY_SESS = 69 const ERROR_TOO_MANY_SIDS = 1389 const ERROR_TOO_MANY_TCBS = 155 const ERROR_TRANSFORM_NOT_SUPPORTED = 2004 const ERROR_TRANSPORT_FULL = 4328 const ERROR_TRAY_MALFUNCTION = 16 const ERROR_TRUSTED_DOMAIN_FAILURE = 1788 const ERROR_TRUSTED_RELATIONSHIP_FAILURE = 1789 const ERROR_TRUST_FAILURE = 1790 const ERROR_UNABLE_TO_CLEAN = 4311 const ERROR_UNABLE_TO_EJECT_MOUNTED_MEDIA = 4330 const ERROR_UNABLE_TO_INVENTORY_DRIVE = 4325 const ERROR_UNABLE_TO_INVENTORY_SLOT = 4326 const ERROR_UNABLE_TO_INVENTORY_TRANSPORT = 4327 const ERROR_UNABLE_TO_LOAD_MEDIUM = 4324 const ERROR_UNABLE_TO_LOCK_MEDIA = 1108 const ERROR_UNABLE_TO_MOVE_REPLACEMENT = 1176 const ERROR_UNABLE_TO_MOVE_REPLACEMENT_2 = 1177 const ERROR_UNABLE_TO_REMOVE_REPLACED = 1175 const ERROR_UNABLE_TO_UNLOAD_MEDIA = 1109 const ERROR_UNEXPECTED_OMID = 4334 const ERROR_UNEXP_NET_ERR = 59 const ERROR_UNHANDLED_ERROR = 4294967295 const ERROR_UNIDENTIFIED_ERROR = 1287 const ERROR_UNKNOWN_COMPONENT = 1607 const ERROR_UNKNOWN_FEATURE = 1606 const ERROR_UNKNOWN_PORT = 1796 const ERROR_UNKNOWN_PRINTER_DRIVER = 1797 const ERROR_UNKNOWN_PRINTPROCESSOR = 1798 const ERROR_UNKNOWN_PRINT_MONITOR = 3000 const ERROR_UNKNOWN_PRODUCT = 1605 const ERROR_UNKNOWN_PROPERTY = 1608 const ERROR_UNKNOWN_REVISION = 1305 const ERROR_UNMAPPED_SUBSTITUTION_STRING = 14096 const ERROR_UNRECOGNIZED_MEDIA = 1785 const ERROR_UNRECOGNIZED_VOLUME = 1005 const ERROR_UNSUPPORTED_TYPE = 1630 const ERROR_USER_APC = 737 const ERROR_USER_DELETE_TRUST_QUOTA_EXCEEDED = 1934 const ERROR_USER_EXISTS = 1316 const ERROR_USER_MAPPED_FILE = 1224 const ERROR_VC_DISCONNECTED = 240 const ERROR_VDM_DISALLOWED = 1286 const ERROR_VOLUME_CONTAINS_SYS_FILES = 4337 const ERROR_VOLUME_NOT_SIS_ENABLED = 4500 const ERROR_VOLUME_NOT_SUPPORT_EFS = 6014 const ERROR_WAIT_1 = 731 const ERROR_WAIT_2 = 732 const ERROR_WAIT_3 = 733 const ERROR_WAIT_63 = 734 const ERROR_WAIT_NO_CHILDREN = 128 const ERROR_WAKE_SYSTEM = 730 const ERROR_WINDOW_NOT_COMBOBOX = 1423 const ERROR_WINDOW_NOT_DIALOG = 1420 const ERROR_WINDOW_OF_OTHER_THREAD = 1408 const ERROR_WINS_INTERNAL = 4000 const ERROR_WMI_ALREADY_DISABLED = 4212 const ERROR_WMI_ALREADY_ENABLED = 4206 const ERROR_WMI_DP_FAILED = 4209 const ERROR_WMI_DP_NOT_FOUND = 4204 const ERROR_WMI_GUID_DISCONNECTED = 4207 const ERROR_WMI_GUID_NOT_FOUND = 4200 const ERROR_WMI_INSTANCE_NOT_FOUND = 4201 const ERROR_WMI_INVALID_MOF = 4210 const ERROR_WMI_INVALID_REGINFO = 4211 const ERROR_WMI_ITEMID_NOT_FOUND = 4202 const ERROR_WMI_READ_ONLY = 4213 const ERROR_WMI_SERVER_UNAVAILABLE = 4208 const ERROR_WMI_SET_FAILURE = 4214 const ERROR_WMI_TRY_AGAIN = 4203 const ERROR_WMI_UNRESOLVED_INSTANCE_REF = 4205 const ERROR_WORKING_SET_QUOTA = 1453 const ERROR_WRITE_FAULT = 29 const ERROR_WRITE_PROTECT = 19 const ERROR_WRONG_COMPARTMENT = 1468 const ERROR_WRONG_DISK = 34 const ERROR_WRONG_EFS = 6005 const ERROR_WRONG_PASSWORD = 1323 const ERROR_WRONG_TARGET_NAME = 1396 const ERROR_XMLDSIG_ERROR = 1466 const ERROR_XML_ENCODING_MISMATCH = 14100 const ERROR_XML_PARSE_ERROR = 1465 const ESB_DISABLE_BOTH = 3 const ESB_DISABLE_DOWN = 2 const ESB_DISABLE_LEFT = 1 const ESB_DISABLE_LTUP = 1 const ESB_DISABLE_RIGHT = 2 const ESB_DISABLE_RTDN = 2 const ESB_DISABLE_UP = 1 const ESB_ENABLE_BOTH = 0 const ES_AUTOHSCROLL = 128 const ES_AUTOVSCROLL = 64 const ES_CENTER = 1 const ES_LEFT = 0 const ES_LOWERCASE = 16 const ES_MULTILINE = 4 const ES_NOHIDESEL = 256 const ES_NUMBER = 8192 const ES_OEMCONVERT = 1024 const ES_PASSWORD = 32 const ES_READONLY = 2048 const ES_RIGHT = 2 const ES_UPPERCASE = 8 const ES_WANTRETURN = 4096 const ETIME = 137 const ETIMEDOUT = 138 const ETO_CLIPPED = 4 const ETO_GLYPH_INDEX = 16 const ETO_IGNORELANGUAGE = 4096 const ETO_NUMERICSLATIN = 2048 const ETO_NUMERICSLOCAL = 1024 const ETO_OPAQUE = 2 const ETO_PDY = 8192 const ETO_REVERSE_INDEX_MAP = 65536 const ETO_RTLREADING = 128 const ETXTBSY = 139 const EVENPARITY = 2 type EVENTLOGRECORD = TEVENTLOGRECORD const EVENTLOG_AUDIT_FAILURE = 16 const EVENTLOG_AUDIT_SUCCESS = 8 const EVENTLOG_BACKWARDS_READ = 8 const EVENTLOG_END_ALL_PAIRED_EVENTS = 4 const EVENTLOG_END_PAIRED_EVENT = 2 const EVENTLOG_ERROR_TYPE = 1 const EVENTLOG_FORWARDS_READ = 4 const EVENTLOG_FULL_INFO = 0 type EVENTLOG_FULL_INFORMATION = TEVENTLOG_FULL_INFORMATION const EVENTLOG_INFORMATION_TYPE = 4 const EVENTLOG_PAIRED_EVENT_ACTIVE = 8 const EVENTLOG_PAIRED_EVENT_INACTIVE = 16 const EVENTLOG_SEEK_READ = 2 const EVENTLOG_SEQUENTIAL_READ = 1 const EVENTLOG_START_PAIRED_EVENT = 1 const EVENTLOG_SUCCESS = 0 const EVENTLOG_WARNING_TYPE = 2 type EVENTMSG = TEVENTMSG type EVENTSFORLOGFILE = TEVENTSFORLOGFILE const EVENT_AIA_END = 45055 const EVENT_AIA_START = 40960 const EVENT_ALL_ACCESS = 2031619 const EVENT_CONSOLE_CARET = 16385 const EVENT_CONSOLE_END = 16639 const EVENT_CONSOLE_END_APPLICATION = 16391 const EVENT_CONSOLE_LAYOUT = 16389 const EVENT_CONSOLE_START_APPLICATION = 16390 const EVENT_CONSOLE_UPDATE_REGION = 16386 const EVENT_CONSOLE_UPDATE_SCROLL = 16388 const EVENT_CONSOLE_UPDATE_SIMPLE = 16387 const EVENT_E_FIRST = 2147746304 const EVENT_E_LAST = 2147746335 const EVENT_MAX = 2147483647 const EVENT_MIN = 1 const EVENT_MODIFY_STATE = 2 const EVENT_OBJECT_ACCELERATORCHANGE = 32786 const EVENT_OBJECT_CLOAKED = 32791 const EVENT_OBJECT_CONTENTSCROLLED = 32789 const EVENT_OBJECT_CREATE = 32768 const EVENT_OBJECT_DEFACTIONCHANGE = 32785 const EVENT_OBJECT_DESCRIPTIONCHANGE = 32781 const EVENT_OBJECT_DESTROY = 32769 const EVENT_OBJECT_DRAGCANCEL = 32802 const EVENT_OBJECT_DRAGCOMPLETE = 32803 const EVENT_OBJECT_DRAGDROPPED = 32806 const EVENT_OBJECT_DRAGENTER = 32804 const EVENT_OBJECT_DRAGLEAVE = 32805 const EVENT_OBJECT_DRAGSTART = 32801 const EVENT_OBJECT_END = 33023 const EVENT_OBJECT_FOCUS = 32773 const EVENT_OBJECT_HELPCHANGE = 32784 const EVENT_OBJECT_HIDE = 32771 const EVENT_OBJECT_HOSTEDOBJECTSINVALIDATED = 32800 const EVENT_OBJECT_IME_CHANGE = 32809 const EVENT_OBJECT_IME_HIDE = 32808 const EVENT_OBJECT_IME_SHOW = 32807 const EVENT_OBJECT_INVOKED = 32787 const EVENT_OBJECT_LIVEREGIONCHANGED = 32793 const EVENT_OBJECT_LOCATIONCHANGE = 32779 const EVENT_OBJECT_NAMECHANGE = 32780 const EVENT_OBJECT_PARENTCHANGE = 32783 const EVENT_OBJECT_REORDER = 32772 const EVENT_OBJECT_SELECTION = 32774 const EVENT_OBJECT_SELECTIONADD = 32775 const EVENT_OBJECT_SELECTIONREMOVE = 32776 const EVENT_OBJECT_SELECTIONWITHIN = 32777 const EVENT_OBJECT_SHOW = 32770 const EVENT_OBJECT_STATECHANGE = 32778 const EVENT_OBJECT_TEXTSELECTIONCHANGED = 32788 const EVENT_OBJECT_UNCLOAKED = 32792 const EVENT_OBJECT_VALUECHANGE = 32782 const EVENT_OEM_DEFINED_END = 511 const EVENT_OEM_DEFINED_START = 257 const EVENT_SYSTEM_ALERT = 2 const EVENT_SYSTEM_ARRANGMENTPREVIEW = 32790 const EVENT_SYSTEM_CAPTUREEND = 9 const EVENT_SYSTEM_CAPTURESTART = 8 const EVENT_SYSTEM_CONTEXTHELPEND = 13 const EVENT_SYSTEM_CONTEXTHELPSTART = 12 const EVENT_SYSTEM_DESKTOPSWITCH = 32 const EVENT_SYSTEM_DIALOGEND = 17 const EVENT_SYSTEM_DIALOGSTART = 16 const EVENT_SYSTEM_DRAGDROPEND = 15 const EVENT_SYSTEM_DRAGDROPSTART = 14 const EVENT_SYSTEM_END = 255 const EVENT_SYSTEM_FOREGROUND = 3 const EVENT_SYSTEM_IME_KEY_NOTIFICATION = 41 const EVENT_SYSTEM_MENUEND = 5 const EVENT_SYSTEM_MENUPOPUPEND = 7 const EVENT_SYSTEM_MENUPOPUPSTART = 6 const EVENT_SYSTEM_MENUSTART = 4 const EVENT_SYSTEM_MINIMIZEEND = 23 const EVENT_SYSTEM_MINIMIZESTART = 22 const EVENT_SYSTEM_MOVESIZEEND = 11 const EVENT_SYSTEM_MOVESIZESTART = 10 const EVENT_SYSTEM_SCROLLINGEND = 19 const EVENT_SYSTEM_SCROLLINGSTART = 18 const EVENT_SYSTEM_SOUND = 1 const EVENT_SYSTEM_SWITCHEND = 21 const EVENT_SYSTEM_SWITCHER_APPDROPPED = 38 const EVENT_SYSTEM_SWITCHER_APPGRABBED = 36 const EVENT_SYSTEM_SWITCHER_APPOVERTARGET = 37 const EVENT_SYSTEM_SWITCHER_CANCELLED = 39 const EVENT_SYSTEM_SWITCHSTART = 20 const EVENT_S_FIRST = 262656 const EVENT_S_LAST = 262687 const EVENT_UIA_EVENTID_END = 20223 const EVENT_UIA_EVENTID_START = 19968 const EVENT_UIA_PROPID_END = 30207 const EVENT_UIA_PROPID_START = 29952 const EV_BREAK = 64 const EV_CTS = 8 const EV_DSR = 16 const EV_ERR = 128 const EV_EVENT1 = 2048 const EV_EVENT2 = 4096 type EV_EXTRA_CERT_CHAIN_POLICY_PARA = TEV_EXTRA_CERT_CHAIN_POLICY_PARA type EV_EXTRA_CERT_CHAIN_POLICY_STATUS = TEV_EXTRA_CERT_CHAIN_POLICY_STATUS const EV_PERR = 512 const EV_RING = 256 const EV_RLSD = 32 const EV_RX80FULL = 1024 const EV_RXCHAR = 1 const EV_RXFLAG = 2 const EV_TXEMPTY = 4 const EWOULDBLOCK = 140 const EWX_ARSO = 67108864 const EWX_BOOTOPTIONS = 16777216 const EWX_CHECK_SAFE_FOR_SERVER = 134217728 const EWX_FORCE = 4 const EWX_FORCEIFHUNG = 16 const EWX_HYBRID_SHUTDOWN = 4194304 const EWX_LOGOFF = 0 const EWX_POWEROFF = 8 const EWX_QUICKRESOLVE = 32 const EWX_REBOOT = 2 const EWX_RESTARTAPPS = 64 const EWX_SHUTDOWN = 1 type EXCEPINFO = TEXCEPINFO const EXCEPTION_ACCESS_VIOLATION = "STATUS_ACCESS_VIOLATION" const EXCEPTION_ARRAY_BOUNDS_EXCEEDED = "STATUS_ARRAY_BOUNDS_EXCEEDED" const EXCEPTION_BREAKPOINT = "STATUS_BREAKPOINT" const EXCEPTION_COLLIDED_UNWIND = 64 const EXCEPTION_CONTINUE_EXECUTION = -1 const EXCEPTION_CONTINUE_SEARCH = 0 const EXCEPTION_DATATYPE_MISALIGNMENT = "STATUS_DATATYPE_MISALIGNMENT" const EXCEPTION_DEBUG_EVENT = 1 type EXCEPTION_DEBUG_INFO = TEXCEPTION_DEBUG_INFO const EXCEPTION_DISPOSITION = 0 const EXCEPTION_EXECUTE_FAULT = 8 const EXCEPTION_EXECUTE_HANDLER = 1 const EXCEPTION_EXIT_UNWIND = 4 const EXCEPTION_FLT_DENORMAL_OPERAND = "STATUS_FLOAT_DENORMAL_OPERAND" const EXCEPTION_FLT_DIVIDE_BY_ZERO = "STATUS_FLOAT_DIVIDE_BY_ZERO" const EXCEPTION_FLT_INEXACT_RESULT = "STATUS_FLOAT_INEXACT_RESULT" const EXCEPTION_FLT_INVALID_OPERATION = "STATUS_FLOAT_INVALID_OPERATION" const EXCEPTION_FLT_OVERFLOW = "STATUS_FLOAT_OVERFLOW" const EXCEPTION_FLT_STACK_CHECK = "STATUS_FLOAT_STACK_CHECK" const EXCEPTION_FLT_UNDERFLOW = "STATUS_FLOAT_UNDERFLOW" const EXCEPTION_GUARD_PAGE = "STATUS_GUARD_PAGE_VIOLATION" const EXCEPTION_ILLEGAL_INSTRUCTION = "STATUS_ILLEGAL_INSTRUCTION" const EXCEPTION_INT_DIVIDE_BY_ZERO = "STATUS_INTEGER_DIVIDE_BY_ZERO" const EXCEPTION_INT_OVERFLOW = "STATUS_INTEGER_OVERFLOW" const EXCEPTION_INVALID_DISPOSITION = "STATUS_INVALID_DISPOSITION" const EXCEPTION_INVALID_HANDLE = "STATUS_INVALID_HANDLE" const EXCEPTION_IN_PAGE_ERROR = "STATUS_IN_PAGE_ERROR" const EXCEPTION_MAXIMUM_PARAMETERS = 15 const EXCEPTION_NESTED_CALL = 16 const EXCEPTION_NONCONTINUABLE = 1 const EXCEPTION_NONCONTINUABLE_EXCEPTION = "STATUS_NONCONTINUABLE_EXCEPTION" type EXCEPTION_POINTERS = TEXCEPTION_POINTERS const EXCEPTION_POSSIBLE_DEADLOCK = 0 const EXCEPTION_PRIV_INSTRUCTION = "STATUS_PRIVILEGED_INSTRUCTION" const EXCEPTION_READ_FAULT = 0 type EXCEPTION_RECORD = TEXCEPTION_RECORD type EXCEPTION_RECORD32 = TEXCEPTION_RECORD32 type EXCEPTION_RECORD64 = TEXCEPTION_RECORD64 type EXCEPTION_REGISTRATION = TEXCEPTION_REGISTRATION type EXCEPTION_REGISTRATION_RECORD = TEXCEPTION_REGISTRATION_RECORD const EXCEPTION_SINGLE_STEP = "STATUS_SINGLE_STEP" const EXCEPTION_STACK_INVALID = 8 const EXCEPTION_STACK_OVERFLOW = "STATUS_STACK_OVERFLOW" const EXCEPTION_TARGET_UNWIND = 32 const EXCEPTION_UNWIND = 102 const EXCEPTION_UNWINDING = 2 const EXCEPTION_WRITE_FAULT = 1 const EXECUTE_OFFLINE_DIAGS = 212 type EXECUTION_STATE = TEXECUTION_STATE type EXFAT_STATISTICS = TEXFAT_STATISTICS const EXIT_PROCESS_DEBUG_EVENT = 5 type EXIT_PROCESS_DEBUG_INFO = TEXIT_PROCESS_DEBUG_INFO const EXIT_THREAD_DEBUG_EVENT = 4 type EXIT_THREAD_DEBUG_INFO = TEXIT_THREAD_DEBUG_INFO type EXPAND_VIRTUAL_DISK_FLAG = TEXPAND_VIRTUAL_DISK_FLAG type EXPAND_VIRTUAL_DISK_PARAMETERS = TEXPAND_VIRTUAL_DISK_PARAMETERS type EXPAND_VIRTUAL_DISK_VERSION = TEXPAND_VIRTUAL_DISK_VERSION const EXPORT_PRIVATE_KEYS = 4 const EXPO_OFFLOAD_FUNC_NAME = "OffloadModExpo" const EXPO_OFFLOAD_REG_VALUE = "ExpoOffload" type EXPR_EVAL = TEXPR_EVAL type EXTCONN = TEXTCONN type EXTENDED_ENCRYPTED_DATA_INFO = TEXTENDED_ENCRYPTED_DATA_INFO const EXTENDED_STARTUPINFO_PRESENT = 524288 const EXTEND_IEPORT = 2 const EXTERN_C = 0 type EXTLOGFONT = TEXTLOGFONT type EXTLOGFONTA = TEXTLOGFONTA type EXTLOGFONTW = TEXTLOGFONTW type EXTLOGPEN = TEXTLOGPEN type EXTLOGPEN32 = TEXTLOGPEN32 const EXTTEXTOUT = 512 const EXT_DEVICE_CAPS = 4099 const E_DRAW = "VIEW_E_DRAW" const EncryptFile = 0 const EndUpdateResource = 0 type EntropyGatherer = TEntropyGatherer const EnumCalendarInfo = 0 const EnumCalendarInfoEx = 0 const EnumDateFormats = 0 const EnumDateFormatsEx = 0 const EnumDependentServices = 0 const EnumDesktops = 0 const EnumDisplayDevices = 0 const EnumDisplaySettings = 0 const EnumDisplaySettingsEx = 0 const EnumFontFamilies = 0 const EnumFontFamiliesEx = 0 const EnumFonts = 0 const EnumForms = 0 const EnumICMProfiles = 0 const EnumJobs = 0 const EnumLanguageGroupLocales = 0 const EnumMonitors = 0 const EnumPorts = 0 const EnumPrintProcessorDatatypes = 0 const EnumPrintProcessors = 0 const EnumPrinterData = 0 const EnumPrinterDataEx = 0 const EnumPrinterDrivers = 0 const EnumPrinterKey = 0 const EnumPrinters = 0 const EnumProps = 0 const EnumPropsEx = 0 const EnumResourceLanguages = 0 const EnumResourceLanguagesEx = 0 const EnumResourceNames = 0 const EnumResourceNamesEx = 0 const EnumResourceTypes = 0 const EnumResourceTypesEx = 0 const EnumServicesStatus = 0 const EnumServicesStatusEx = 0 const EnumSystemCodePages = 0 const EnumSystemLanguageGroups = 0 const EnumSystemLocales = 0 const EnumTimeFormats = 0 const EnumUILanguages = 0 const EnumWindowStations = 0 const ExceptionCollidedUnwind = 3 const ExceptionContinueExecution = 0 const ExceptionContinueSearch = 1 const ExceptionExecuteHandler = 4 const ExceptionNestedException = 2 const ExpandEnvironmentStrings = 0 const ExpungeConsoleCommandHistory = 0 const ExtTextOut = 0 type ExtendedErrorParamTypes = TExtendedErrorParamTypes const ExtractAssociatedIcon = 0 const ExtractAssociatedIconEx = 0 const ExtractIcon = 0 const ExtractIconEx = 0 const FACILITY_AAF = 18 const FACILITY_ACS = 20 const FACILITY_AUDCLNT = 2185 const FACILITY_BACKGROUNDCOPY = 32 const FACILITY_CERT = 11 const FACILITY_COMPLUS = 17 const FACILITY_CONFIGURATION = 33 const FACILITY_CONTROL = 10 const FACILITY_DIRECTORYSERVICE = 37 const FACILITY_DISPATCH = 2 const FACILITY_DPLAY = 21 const FACILITY_HTTP = 25 const FACILITY_INTERNET = 12 const FACILITY_ITF = 4 const FACILITY_MEDIASERVER = 13 const FACILITY_METADIRECTORY = 35 const FACILITY_MSMQ = 14 const FACILITY_NT_BIT = 268435456 const FACILITY_NULL = 0 const FACILITY_RPC = 1 const FACILITY_SCARD = 16 const FACILITY_SECURITY = 9 const FACILITY_SETUPAPI = 15 const FACILITY_SSPI = 9 const FACILITY_STATE_MANAGEMENT = 34 const FACILITY_STORAGE = 3 const FACILITY_SXS = 23 const FACILITY_UMI = 22 const FACILITY_URT = 19 const FACILITY_USERMODE_FILTER_MANAGER = 31 const FACILITY_WIN32 = 7 const FACILITY_WINDOWS = 8 const FACILITY_WINDOWSUPDATE = 36 const FACILITY_WINDOWS_CE = 24 const FADF_AUTO = 1 const FADF_BSTR = 256 const FADF_DISPATCH = 1024 const FADF_EMBEDDED = 4 const FADF_FIXEDSIZE = 16 const FADF_HAVEIID = 64 const FADF_HAVEVARTYPE = 128 const FADF_RECORD = 32 const FADF_RESERVED = 61448 const FADF_STATIC = 2 const FADF_UNKNOWN = 512 const FADF_VARIANT = 2048 const FAILED_ACCESS_ACE_FLAG = 128 const FAIL_FAST_GENERATE_EXCEPTION_ADDRESS = 1 const FAIL_FAST_NO_HARD_ERROR_DLG = 2 const FALT = 16 const FAPPCOMMAND_KEY = 0 const FAPPCOMMAND_MASK = 61440 const FAPPCOMMAND_MOUSE = 32768 const FAPPCOMMAND_OEM = 4096 type FARPROC = TFARPROC const FAST_FAIL_CORRUPT_LIST_ENTRY = 3 const FAST_FAIL_FATAL_APP_EXIT = 7 const FAST_FAIL_GS_COOKIE_INIT = 6 const FAST_FAIL_INCORRECT_STACK = 4 const FAST_FAIL_INVALID_ARG = 5 const FAST_FAIL_INVALID_FAST_FAIL_CODE = 4294967295 const FAST_FAIL_LEGACY_GS_VIOLATION = 0 const FAST_FAIL_RANGE_CHECK_FAILURE = 8 const FAST_FAIL_STACK_COOKIE_CHECK_FAILURE = 2 const FAST_FAIL_UNSAFE_REGISTRY_ACCESS = 9 const FAST_FAIL_VTGUARD_CHECK_FAILURE = 1 type FAT_STATISTICS = TFAT_STATISTICS type FCHAR = TFCHAR const FCONTROL = 8 const FD_ACCEPT = 8 const FD_CLOSE = 32 const FD_CONNECT = 16 const FD_OOB = 4 const FD_READ = 1 type FD_SET = TFD_SET const FD_SETSIZE = 64 const FD_WRITE = 2 const FEATURESETTING_CUSTPAPER = 3 const FEATURESETTING_MIRROR = 4 const FEATURESETTING_NEGATIVE = 5 const FEATURESETTING_NUP = 0 const FEATURESETTING_OUTPUT = 1 const FEATURESETTING_PRIVATE_BEGIN = 4096 const FEATURESETTING_PRIVATE_END = 8191 const FEATURESETTING_PROTOCOL = 6 const FEATURESETTING_PSLEVEL = 2 type FEEDBACK_TYPE = TFEEDBACK_TYPE const FE_FONTSMOOTHINGCLEARTYPE = 2 const FE_FONTSMOOTHINGDOCKING = 32768 const FE_FONTSMOOTHINGORIENTATIONBGR = 0 const FE_FONTSMOOTHINGORIENTATIONRGB = 1 const FE_FONTSMOOTHINGSTANDARD = 1 const FF_DECORATIVE = 80 const FF_DONTCARE = 0 const FF_MODERN = 48 const FF_ROMAN = 16 const FF_SCRIPT = 64 const FF_SWISS = 32 const FIBER_FLAG_FLOAT_SWITCH = 1 const FIEF_FLAG_FORCE_JITUI = 1 const FIEF_FLAG_PEEK = 2 const FIEF_FLAG_SKIP_INSTALLED_VERSION_CHECK = 4 type FILEMUIINFO = TFILEMUIINFO const FILENAME_MAX = 260 const FILEOKSTRINGA = "commdlg_FileNameOK" const FILEOKSTRINGW = "commdlg_FileNameOK" const FILEOPENORD = 1536 type FILEOP_FLAGS = TFILEOP_FLAGS type FILESYSTEM_STATISTICS = TFILESYSTEM_STATISTICS const FILESYSTEM_STATISTICS_TYPE_EXFAT = 3 const FILESYSTEM_STATISTICS_TYPE_FAT = 2 const FILESYSTEM_STATISTICS_TYPE_NTFS = 1 type FILETIME = TFILETIME const FILE_ACTION_ADDED = 1 const FILE_ACTION_MODIFIED = 3 const FILE_ACTION_REMOVED = 2 const FILE_ACTION_RENAMED_NEW_NAME = 5 const FILE_ACTION_RENAMED_OLD_NAME = 4 const FILE_ADD_FILE = 2 const FILE_ADD_SUBDIRECTORY = 4 type FILE_ALIGNMENT_INFO = TFILE_ALIGNMENT_INFO type FILE_ALLOCATED_RANGE_BUFFER = TFILE_ALLOCATED_RANGE_BUFFER type FILE_ALLOCATION_INFO = TFILE_ALLOCATION_INFO const FILE_ALL_ACCESS = 2032127 const FILE_ANY_ACCESS = 0 const FILE_APPEND_DATA = 4 const FILE_ATTRIBUTE_ARCHIVE = 32 const FILE_ATTRIBUTE_COMPRESSED = 2048 const FILE_ATTRIBUTE_DEVICE = 64 const FILE_ATTRIBUTE_DIRECTORY = 16 const FILE_ATTRIBUTE_ENCRYPTED = 16384 const FILE_ATTRIBUTE_HIDDEN = 2 const FILE_ATTRIBUTE_MASK = 262135 const FILE_ATTRIBUTE_NORMAL = 128 const FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 8192 const FILE_ATTRIBUTE_OFFLINE = 4096 const FILE_ATTRIBUTE_READONLY = 1 const FILE_ATTRIBUTE_REPARSE_POINT = 1024 const FILE_ATTRIBUTE_SPARSE_FILE = 512 const FILE_ATTRIBUTE_SYSTEM = 4 type FILE_ATTRIBUTE_TAG_INFO = TFILE_ATTRIBUTE_TAG_INFO const FILE_ATTRIBUTE_TEMPORARY = 256 const FILE_ATTRIBUTE_VIRTUAL = 65536 type FILE_BASIC_INFO = TFILE_BASIC_INFO const FILE_BEGIN = 0 const FILE_CACHE_MAX_HARD_DISABLE = 2 const FILE_CACHE_MAX_HARD_ENABLE = 1 const FILE_CACHE_MIN_HARD_DISABLE = 8 const FILE_CACHE_MIN_HARD_ENABLE = 4 const FILE_CASE_PRESERVED_NAMES = 2 type FILE_CASE_SENSITIVE_INFO = TFILE_CASE_SENSITIVE_INFO const FILE_CASE_SENSITIVE_SEARCH = 1 const FILE_CLEAR_ENCRYPTION = 2 const FILE_COMPLETE_IF_OPLOCKED = 256 type FILE_COMPRESSION_INFO = TFILE_COMPRESSION_INFO const FILE_CREATE = 2 const FILE_CREATE_PIPE_INSTANCE = 4 const FILE_CREATE_TREE_CONNECTION = 128 const FILE_CURRENT = 1 const FILE_DELETE_CHILD = 64 const FILE_DELETE_ON_CLOSE = 4096 const FILE_DEVICE_8042_PORT = 39 const FILE_DEVICE_ACPI = 50 const FILE_DEVICE_BATTERY = 41 const FILE_DEVICE_BEEP = 1 const FILE_DEVICE_BIOMETRIC = 68 const FILE_DEVICE_BLUETOOTH = 65 const FILE_DEVICE_BUS_EXTENDER = 42 const FILE_DEVICE_CD_ROM = 2 const FILE_DEVICE_CD_ROM_FILE_SYSTEM = 3 const FILE_DEVICE_CHANGER = 48 const FILE_DEVICE_CONSOLE = 80 const FILE_DEVICE_CONTROLLER = 4 const FILE_DEVICE_CRYPT_PROVIDER = 63 const FILE_DEVICE_DATALINK = 5 const FILE_DEVICE_DEVAPI = 71 const FILE_DEVICE_DFS = 6 const FILE_DEVICE_DFS_FILE_SYSTEM = 53 const FILE_DEVICE_DFS_VOLUME = 54 const FILE_DEVICE_DISK = 7 const FILE_DEVICE_DISK_FILE_SYSTEM = 8 const FILE_DEVICE_DVD = 51 const FILE_DEVICE_EHSTOR = 70 const FILE_DEVICE_EVENT_COLLECTOR = 95 const FILE_DEVICE_FILE_SYSTEM = 9 const FILE_DEVICE_FIPS = 58 const FILE_DEVICE_FULLSCREEN_VIDEO = 52 const FILE_DEVICE_GPIO = 72 const FILE_DEVICE_HOLOGRAPHIC = 91 const FILE_DEVICE_INFINIBAND = 59 const FILE_DEVICE_INPORT_PORT = 10 const FILE_DEVICE_KEYBOARD = 11 const FILE_DEVICE_KS = 47 const FILE_DEVICE_KSEC = 57 const FILE_DEVICE_MAILSLOT = 12 const FILE_DEVICE_MASS_STORAGE = 45 const FILE_DEVICE_MIDI_IN = 13 const FILE_DEVICE_MIDI_OUT = 14 const FILE_DEVICE_MODEM = 43 const FILE_DEVICE_MOUSE = 15 const FILE_DEVICE_MT_COMPOSITE = 66 const FILE_DEVICE_MT_TRANSPORT = 67 const FILE_DEVICE_MULTI_UNC_PROVIDER = 16 const FILE_DEVICE_NAMED_PIPE = 17 const FILE_DEVICE_NETWORK = 18 const FILE_DEVICE_NETWORK_BROWSER = 19 const FILE_DEVICE_NETWORK_FILE_SYSTEM = 20 const FILE_DEVICE_NETWORK_REDIRECTOR = 40 const FILE_DEVICE_NFP = 81 const FILE_DEVICE_NULL = 21 const FILE_DEVICE_NVDIMM = 90 const FILE_DEVICE_PARALLEL_PORT = 22 const FILE_DEVICE_PERSISTENT_MEMORY = 89 const FILE_DEVICE_PHYSICAL_NETCARD = 23 const FILE_DEVICE_PMI = 69 const FILE_DEVICE_POINT_OF_SERVICE = 84 const FILE_DEVICE_PRINTER = 24 const FILE_DEVICE_PRM = 94 const FILE_DEVICE_SCANNER = 25 const FILE_DEVICE_SCREEN = 28 const FILE_DEVICE_SDFXHCI = 92 const FILE_DEVICE_SERENUM = 55 const FILE_DEVICE_SERIAL_MOUSE_PORT = 26 const FILE_DEVICE_SERIAL_PORT = 27 const FILE_DEVICE_SMARTCARD = 49 const FILE_DEVICE_SMB = 46 const FILE_DEVICE_SOUND = 29 const FILE_DEVICE_SOUNDWIRE = 97 const FILE_DEVICE_STORAGE_REPLICATION = 85 const FILE_DEVICE_STREAMS = 30 const FILE_DEVICE_SYSENV = 82 const FILE_DEVICE_TAPE = 31 const FILE_DEVICE_TAPE_FILE_SYSTEM = 32 const FILE_DEVICE_TERMSRV = 56 const FILE_DEVICE_TRANSPORT = 33 const FILE_DEVICE_TRUST_ENV = 86 const FILE_DEVICE_UCM = 87 const FILE_DEVICE_UCMTCPCI = 88 const FILE_DEVICE_UCMUCSI = 93 const FILE_DEVICE_UNKNOWN = 34 const FILE_DEVICE_USB4 = 96 const FILE_DEVICE_USBEX = 73 const FILE_DEVICE_VDM = 44 const FILE_DEVICE_VIDEO = 35 const FILE_DEVICE_VIRTUAL_BLOCK = 83 const FILE_DEVICE_VIRTUAL_DISK = 36 const FILE_DEVICE_VMBUS = 62 const FILE_DEVICE_WAVE_IN = 37 const FILE_DEVICE_WAVE_OUT = 38 const FILE_DEVICE_WPD = 64 const FILE_DIRECTORY_FILE = 1 const FILE_DIR_DISALLOWED = 9 const FILE_DISALLOW_EXCLUSIVE = 131072 const FILE_DISPOSITION_FLAG_DELETE = 1 const FILE_DISPOSITION_FLAG_DO_NOT_DELETE = 0 const FILE_DISPOSITION_FLAG_FORCE_IMAGE_SECTION_CHECK = 4 const FILE_DISPOSITION_FLAG_IGNORE_READONLY_ATTRIBUTE = 16 const FILE_DISPOSITION_FLAG_ON_CLOSE = 8 const FILE_DISPOSITION_FLAG_POSIX_SEMANTICS = 2 type FILE_DISPOSITION_INFO = TFILE_DISPOSITION_INFO type FILE_DISPOSITION_INFO_EX = TFILE_DISPOSITION_INFO_EX const FILE_ENCRYPTABLE = 0 const FILE_END = 2 type FILE_END_OF_FILE_INFO = TFILE_END_OF_FILE_INFO const FILE_EXECUTE = 32 const FILE_FILE_COMPRESSION = 16 const FILE_FLAG_BACKUP_SEMANTICS = 33554432 const FILE_FLAG_DELETE_ON_CLOSE = 67108864 const FILE_FLAG_FIRST_PIPE_INSTANCE = 524288 const FILE_FLAG_MASK = 4282122240 const FILE_FLAG_NO_BUFFERING = 536870912 const FILE_FLAG_OPEN_NO_RECALL = 1048576 const FILE_FLAG_OPEN_REPARSE_POINT = 2097152 const FILE_FLAG_OPEN_REQUIRING_OPLOCK = 262144 const FILE_FLAG_OVERLAPPED = 1073741824 const FILE_FLAG_POSIX_SEMANTICS = 16777216 const FILE_FLAG_RANDOM_ACCESS = 268435456 const FILE_FLAG_SEQUENTIAL_SCAN = 134217728 const FILE_FLAG_SESSION_AWARE = 8388608 const FILE_FLAG_WRITE_THROUGH = 2147483648 type FILE_FS_PERSISTENT_VOLUME_INFORMATION = TFILE_FS_PERSISTENT_VOLUME_INFORMATION type FILE_FULL_DIR_INFO = TFILE_FULL_DIR_INFO const FILE_GENERIC_EXECUTE = 1179808 const FILE_GENERIC_READ = 1179785 const FILE_GENERIC_WRITE = 1179926 type FILE_ID_128 = TFILE_ID_128 type FILE_ID_BOTH_DIR_INFO = TFILE_ID_BOTH_DIR_INFO type FILE_ID_DESCRIPTOR = TFILE_ID_DESCRIPTOR type FILE_ID_EXTD_DIR_INFO = TFILE_ID_EXTD_DIR_INFO type FILE_ID_INFO = TFILE_ID_INFO type FILE_ID_TYPE = TFILE_ID_TYPE type FILE_INFO_BY_HANDLE_CLASS = TFILE_INFO_BY_HANDLE_CLASS type FILE_IO_PRIORITY_HINT_INFO = TFILE_IO_PRIORITY_HINT_INFO const FILE_IS_ENCRYPTED = 1 const FILE_LIST_DIRECTORY = 1 type FILE_MAKE_COMPATIBLE_BUFFER = TFILE_MAKE_COMPATIBLE_BUFFER const FILE_MAP_ALL_ACCESS = 983071 const FILE_MAP_COPY = 1 const FILE_MAP_EXECUTE = 32 const FILE_MAP_LARGE_PAGES = 536870912 const FILE_MAP_READ = 4 const FILE_MAP_RESERVE = 2147483648 const FILE_MAP_TARGETS_INVALID = 1073741824 const FILE_MAP_WRITE = 2 const FILE_MAXIMUM_DISPOSITION = 5 const FILE_NAMED_STREAMS = 262144 type FILE_NAME_INFO = TFILE_NAME_INFO const FILE_NAME_NORMALIZED = 0 const FILE_NAME_OPENED = 8 const FILE_NON_DIRECTORY_FILE = 64 const FILE_NOTIFY_CHANGE_ATTRIBUTES = 4 const FILE_NOTIFY_CHANGE_CREATION = 64 const FILE_NOTIFY_CHANGE_DIR_NAME = 2 const FILE_NOTIFY_CHANGE_FILE_NAME = 1 const FILE_NOTIFY_CHANGE_LAST_ACCESS = 32 const FILE_NOTIFY_CHANGE_LAST_WRITE = 16 const FILE_NOTIFY_CHANGE_SECURITY = 256 const FILE_NOTIFY_CHANGE_SIZE = 8 type FILE_NOTIFY_INFORMATION = TFILE_NOTIFY_INFORMATION const FILE_NO_COMPRESSION = 32768 const FILE_NO_EA_KNOWLEDGE = 512 const FILE_NO_INTERMEDIATE_BUFFERING = 8 type FILE_OBJECTID_BUFFER = TFILE_OBJECTID_BUFFER const FILE_OPEN = 1 const FILE_OPEN_BY_FILE_ID = 8192 const FILE_OPEN_FOR_BACKUP_INTENT = 16384 const FILE_OPEN_FOR_FREE_SPACE_QUERY = 8388608 const FILE_OPEN_IF = 3 const FILE_OPEN_NO_RECALL = 4194304 const FILE_OPEN_REMOTE_INSTANCE = 1024 const FILE_OPEN_REPARSE_POINT = 2097152 const FILE_OPEN_REQUIRING_OPLOCK = 65536 const FILE_OVERWRITE = 4 const FILE_OVERWRITE_IF = 5 const FILE_PERSISTENT_ACLS = 8 type FILE_PREFETCH = TFILE_PREFETCH type FILE_PREFETCH_EX = TFILE_PREFETCH_EX const FILE_PREFETCH_TYPE_FOR_CREATE = 1 const FILE_PREFETCH_TYPE_FOR_CREATE_EX = 3 const FILE_PREFETCH_TYPE_FOR_DIRENUM = 2 const FILE_PREFETCH_TYPE_FOR_DIRENUM_EX = 4 const FILE_PREFETCH_TYPE_MAX = 4 const FILE_PROVIDER_COMPRESSION_LZX = 1 const FILE_PROVIDER_COMPRESSION_XPRESS16K = 3 const FILE_PROVIDER_COMPRESSION_XPRESS4K = 0 const FILE_PROVIDER_COMPRESSION_XPRESS8K = 2 const FILE_PROVIDER_CURRENT_VERSION = 1 type FILE_PROVIDER_EXTERNAL_INFO_V0 = TFILE_PROVIDER_EXTERNAL_INFO_V0 type FILE_PROVIDER_EXTERNAL_INFO_V1 = TFILE_PROVIDER_EXTERNAL_INFO_V1 type FILE_QUERY_ON_DISK_VOL_INFO_BUFFER = TFILE_QUERY_ON_DISK_VOL_INFO_BUFFER type FILE_QUERY_SPARING_BUFFER = TFILE_QUERY_SPARING_BUFFER const FILE_RANDOM_ACCESS = 2048 const FILE_READ_ACCESS = 1 const FILE_READ_ATTRIBUTES = 128 const FILE_READ_DATA = 1 const FILE_READ_EA = 8 const FILE_READ_ONLY = 8 const FILE_READ_ONLY_VOLUME = 524288 type FILE_REMOTE_PROTOCOL_INFO = TFILE_REMOTE_PROTOCOL_INFO const FILE_RENAME_FLAG_POSIX_SEMANTICS = 2 const FILE_RENAME_FLAG_REPLACE_IF_EXISTS = 1 const FILE_RENAME_FLAG_SUPPRESS_PIN_STATE_INHERITANCE = 4 type FILE_RENAME_INFO = TFILE_RENAME_INFO const FILE_RESERVE_OPFILTER = 1048576 const FILE_ROOT_DIR = 3 type FILE_SEGMENT_ELEMENT = TFILE_SEGMENT_ELEMENT const FILE_SEQUENTIAL_ONLY = 4 const FILE_SEQUENTIAL_WRITE_ONCE = 1048576 type FILE_SET_DEFECT_MGMT_BUFFER = TFILE_SET_DEFECT_MGMT_BUFFER const FILE_SET_ENCRYPTION = 1 type FILE_SET_SPARSE_BUFFER = TFILE_SET_SPARSE_BUFFER const FILE_SHARE_DELETE = 4 const FILE_SHARE_READ = 1 const FILE_SHARE_VALID_FLAGS = 7 const FILE_SHARE_WRITE = 2 const FILE_SKIP_COMPLETION_PORT_ON_SUCCESS = 1 const FILE_SKIP_SET_EVENT_ON_HANDLE = 2 const FILE_SPECIAL_ACCESS = 0 type FILE_STANDARD_INFO = TFILE_STANDARD_INFO type FILE_STORAGE_INFO = TFILE_STORAGE_INFO type FILE_STREAM_INFO = TFILE_STREAM_INFO const FILE_SUPERSEDE = 0 const FILE_SUPPORTS_ENCRYPTION = 131072 const FILE_SUPPORTS_EXTENDED_ATTRIBUTES = 8388608 const FILE_SUPPORTS_HARD_LINKS = 4194304 const FILE_SUPPORTS_INTEGRITY_STREAMS = 67108864 const FILE_SUPPORTS_OBJECT_IDS = 65536 const FILE_SUPPORTS_OPEN_BY_FILE_ID = 16777216 const FILE_SUPPORTS_REMOTE_STORAGE = 256 const FILE_SUPPORTS_REPARSE_POINTS = 128 const FILE_SUPPORTS_SPARSE_FILES = 64 const FILE_SUPPORTS_TRANSACTIONS = 2097152 const FILE_SUPPORTS_USN_JOURNAL = 33554432 const FILE_SYNCHRONOUS_IO_ALERT = 16 const FILE_SYNCHRONOUS_IO_NONALERT = 32 const FILE_SYSTEM_ATTR = 2 const FILE_SYSTEM_DIR = 4 const FILE_SYSTEM_NOT_SUPPORT = 6 type FILE_SYSTEM_RECOGNITION_INFORMATION = TFILE_SYSTEM_RECOGNITION_INFORMATION type FILE_SYSTEM_RECOGNITION_STRUCTURE = TFILE_SYSTEM_RECOGNITION_STRUCTURE const FILE_TRAVERSE = 32 const FILE_TYPE_CHAR = 2 const FILE_TYPE_DISK = 1 const FILE_TYPE_NOTIFICATION_FLAG_USAGE_BEGIN = 1 const FILE_TYPE_NOTIFICATION_FLAG_USAGE_END = 2 type FILE_TYPE_NOTIFICATION_INPUT = TFILE_TYPE_NOTIFICATION_INPUT const FILE_TYPE_PIPE = 3 const FILE_TYPE_REMOTE = 32768 const FILE_TYPE_UNKNOWN = 0 const FILE_UNICODE_ON_DISK = 4 const FILE_UNKNOWN = 5 const FILE_USER_DISALLOWED = 7 const FILE_VER_GET_LOCALISED = 1 const FILE_VER_GET_NEUTRAL = 2 const FILE_VER_GET_PREFETCHED = 4 const FILE_VOLUME_IS_COMPRESSED = 32768 const FILE_VOLUME_QUOTAS = 32 const FILE_WRITE_ACCESS = 2 const FILE_WRITE_ATTRIBUTES = 256 const FILE_WRITE_DATA = 2 const FILE_WRITE_EA = 16 const FILE_WRITE_THROUGH = 2 type FILE_ZERO_DATA_INFORMATION = TFILE_ZERO_DATA_INFORMATION type FILTERKEYS = TFILTERKEYS const FINDDLGORD = 1540 type FINDEX_INFO_LEVELS = TFINDEX_INFO_LEVELS type FINDEX_SEARCH_OPS = TFINDEX_SEARCH_OPS const FINDMSGSTRINGA = "commdlg_FindReplace" const FINDMSGSTRINGW = "commdlg_FindReplace" type FINDREPLACE = TFINDREPLACE type FINDREPLACEA = TFINDREPLACEA type FINDREPLACEW = TFINDREPLACEW const FIND_ACTCTX_SECTION_KEY_RETURN_ASSEMBLY_METADATA = 4 const FIND_ACTCTX_SECTION_KEY_RETURN_FLAGS = 2 const FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX = 1 type FIND_BY_SID_DATA = TFIND_BY_SID_DATA type FIND_BY_SID_OUTPUT = TFIND_BY_SID_OUTPUT const FIND_ENDSWITH = 2097152 const FIND_FIRST_EX_CASE_SENSITIVE = 1 const FIND_FIRST_EX_LARGE_FETCH = 2 const FIND_FROMEND = 8388608 const FIND_FROMSTART = 4194304 type FIND_NAME_BUFFER = TFIND_NAME_BUFFER type FIND_NAME_HEADER = TFIND_NAME_HEADER const FIND_RESOURCE_DIRECTORY_LANGUAGES = 1024 const FIND_RESOURCE_DIRECTORY_NAMES = 512 const FIND_RESOURCE_DIRECTORY_TYPES = 256 const FIND_STARTSWITH = 1048576 type FIRMWARE_TYPE = TFIRMWARE_TYPE type FIXED = TFIXED const FIXED_PITCH = 1 const FKF_AVAILABLE = 2 const FKF_CLICKON = 64 const FKF_CONFIRMHOTKEY = 8 const FKF_FILTERKEYSON = 1 const FKF_HOTKEYACTIVE = 4 const FKF_HOTKEYSOUND = 16 const FKF_INDICATOR = 32 type FLAGGED_BYTE_BLOB = TFLAGGED_BYTE_BLOB type FLAGGED_WORD_BLOB = TFLAGGED_WORD_BLOB type FLAG_STGMEDIUM = TFLAG_STGMEDIUM type FLASHWINFO = TFLASHWINFO const FLASHW_ALL = 3 const FLASHW_CAPTION = 1 const FLASHW_STOP = 0 const FLASHW_TIMER = 4 const FLASHW_TIMERNOFG = 12 const FLASHW_TRAY = 2 const FLI_GLYPHS = 262144 const FLI_MASK = 4155 type FLOAT = TFLOAT type FLOAT128 = TFLOAT128 type FLONG = TFLONG const FLOODFILLBORDER = 0 const FLOODFILLSURFACE = 1 const FLS_MAXIMUM_AVAILABLE = 128 const FLUSHOUTPUT = 6 const FMFD_DEFAULT = 0 const FMFD_ENABLEMIMESNIFFING = 2 const FMFD_IGNOREMIMETEXTPLAIN = 4 const FMFD_RESPECTTEXTPLAIN = 16 const FMFD_RETURNUPDATEDIMGMIMES = 32 const FMFD_SERVERMIME = 8 const FMFD_URLASFILENAME = 1 type FMTID = TFMTID const FMTID_NULL = 0 const FNERR_BUFFERTOOSMALL = 12291 const FNERR_FILENAMECODES = 12288 const FNERR_INVALIDFILENAME = 12290 const FNERR_SUBCLASSFAILURE = 12289 const FNOINVERT = 2 const FOCUS_EVENT = 16 type FOCUS_EVENT_RECORD = TFOCUS_EVENT_RECORD const FOF_ALLOWUNDO = 64 const FOF_CONFIRMMOUSE = 2 const FOF_FILESONLY = 128 const FOF_MULTIDESTFILES = 1 const FOF_NOCONFIRMATION = 16 const FOF_NOCONFIRMMKDIR = 512 const FOF_NOCOPYSECURITYATTRIBS = 2048 const FOF_NOERRORUI = 1024 const FOF_NORECURSEREPARSE = 32768 const FOF_NORECURSION = 4096 const FOF_NO_CONNECTED_ELEMENTS = 8192 const FOF_NO_UI = 1556 const FOF_RENAMEONCOLLISION = 8 const FOF_SILENT = 4 const FOF_SIMPLEPROGRESS = 256 const FOF_WANTMAPPINGHANDLE = 32 const FOF_WANTNUKEWARNING = 16384 const FONTDLGORD = 1542 type FONTENUMPROC = TFONTENUMPROC type FONTENUMPROCA = TFONTENUMPROCA type FONTENUMPROCW = TFONTENUMPROCW const FONTMAPPER_MAX = 10 type FONTSIGNATURE = TFONTSIGNATURE const FORCEINLINE = "__forceinline" const FOREGROUND_BLUE = 1 const FOREGROUND_GREEN = 2 const FOREGROUND_INTENSITY = 8 const FOREGROUND_RED = 4 const FOREST_USER_RID_MAX = 499 const FORMATDLGORD30 = 1544 const FORMATDLGORD31 = 1543 type FORMATETC = TFORMATETC type FORMAT_EX_PARAMETERS = TFORMAT_EX_PARAMETERS const FORMAT_MESSAGE_ALLOCATE_BUFFER = 256 const FORMAT_MESSAGE_ARGUMENT_ARRAY = 8192 const FORMAT_MESSAGE_FROM_HMODULE = 2048 const FORMAT_MESSAGE_FROM_STRING = 1024 const FORMAT_MESSAGE_FROM_SYSTEM = 4096 const FORMAT_MESSAGE_IGNORE_INSERTS = 512 const FORMAT_MESSAGE_MAX_WIDTH_MASK = 255 type FORMAT_PARAMETERS = TFORMAT_PARAMETERS const FORM_BUILTIN = 1 type FORM_INFO_1 = TFORM_INFO_1 type FORM_INFO_1A = TFORM_INFO_1A type FORM_INFO_1W = TFORM_INFO_1W type FORM_INFO_2 = TFORM_INFO_2 type FORM_INFO_2A = TFORM_INFO_2A type FORM_INFO_2W = TFORM_INFO_2W const FORM_PRINTER = 2 const FORM_USER = 0 type FOURCC = TFOURCC const FO_COPY = 2 const FO_DELETE = 3 const FO_MOVE = 1 const FO_RENAME = 4 type FPO_DATA = TFPO_DATA const FP_INFINITE = 1280 const FP_NAN = 256 const FP_NDENORM = 16 const FP_NINF = 4 const FP_NNORM = 8 const FP_NORMAL = 1024 const FP_NZERO = 32 const FP_PDENORM = 128 const FP_PINF = 512 const FP_PNORM = 256 const FP_PZERO = 64 const FP_QNAN = 2 const FP_SUBNORMAL = 17408 const FP_ZERO = 16384 const FRAME_FPO = 0 const FRAME_NONFPO = 3 const FRAME_TRAP = 1 const FRAME_TSS = 2 const FRERR_BUFFERLENGTHZERO = 16385 const FRERR_FINDREPLACECODES = 16384 const FROM_LEFT_1ST_BUTTON_PRESSED = 1 const FROM_LEFT_2ND_BUTTON_PRESSED = 4 const FROM_LEFT_3RD_BUTTON_PRESSED = 8 const FROM_LEFT_4TH_BUTTON_PRESSED = 16 const FRS_ERR_AUTHENTICATION = 8008 const FRS_ERR_CHILD_TO_PARENT_COMM = 8011 const FRS_ERR_INSUFFICIENT_PRIV = 8007 const FRS_ERR_INTERNAL = 8005 const FRS_ERR_INTERNAL_API = 8004 const FRS_ERR_INVALID_API_SEQUENCE = 8001 const FRS_ERR_INVALID_SERVICE_PARAMETER = 8017 const FRS_ERR_PARENT_AUTHENTICATION = 8010 const FRS_ERR_PARENT_INSUFFICIENT_PRIV = 8009 const FRS_ERR_PARENT_TO_CHILD_COMM = 8012 const FRS_ERR_SERVICE_COMM = 8006 const FRS_ERR_STARTING_SERVICE = 8002 const FRS_ERR_STOPPING_SERVICE = 8003 const FRS_ERR_SYSVOL_DEMOTE = 8016 const FRS_ERR_SYSVOL_IS_BUSY = 8015 const FRS_ERR_SYSVOL_POPULATE = 8013 const FRS_ERR_SYSVOL_POPULATE_TIMEOUT = 8014 const FR_DIALOGTERM = 64 const FR_DOWN = 1 const FR_ENABLEHOOK = 256 const FR_ENABLETEMPLATE = 512 const FR_ENABLETEMPLATEHANDLE = 8192 const FR_FINDNEXT = 8 const FR_HIDEMATCHCASE = 32768 const FR_HIDEUPDOWN = 16384 const FR_HIDEWHOLEWORD = 65536 const FR_MATCHALEFHAMZA = 2147483648 const FR_MATCHCASE = 4 const FR_MATCHDIAC = 536870912 const FR_MATCHKASHIDA = 1073741824 const FR_NOMATCHCASE = 2048 const FR_NOT_ENUM = 32 const FR_NOUPDOWN = 1024 const FR_NOWHOLEWORD = 4096 const FR_PRIVATE = 16 const FR_RAW = 131072 const FR_REPLACE = 16 const FR_REPLACEALL = 32 const FR_SHOWHELP = 128 const FR_WHOLEWORD = 2 const FSCTL_ALLOW_EXTENDED_DASD_IO = 589955 const FSCTL_CREATE_OR_GET_OBJECT_ID = 590016 const FSCTL_CREATE_USN_JOURNAL = 590055 const FSCTL_CSC_INTERNAL = 590255 const FSCTL_CSV_GET_VOLUME_NAME_FOR_VOLUME_MOUNT_POINT = 590420 const FSCTL_CSV_GET_VOLUME_PATH_NAME = 590416 const FSCTL_CSV_GET_VOLUME_PATH_NAMES_FOR_VOLUME_NAME = 590424 const FSCTL_CSV_TUNNEL_REQUEST = 590404 const FSCTL_DELETE_EXTERNAL_BACKING = 590612 const FSCTL_DELETE_OBJECT_ID = 589984 const FSCTL_DELETE_REPARSE_POINT = 589996 const FSCTL_DELETE_USN_JOURNAL = 590072 const FSCTL_DFSR_SET_GHOST_HANDLE_STATE = 590264 const FSCTL_DISMOUNT_VOLUME = 589856 const FSCTL_ENABLE_UPGRADE = 622800 const FSCTL_ENCRYPTION_FSCTL_IO = 590043 const FSCTL_ENUM_USN_DATA = 590003 const FSCTL_EXTEND_VOLUME = 590064 const FSCTL_FILESYSTEM_GET_STATISTICS = 589920 const FSCTL_FILE_PREFETCH = 590112 const FSCTL_FILE_TYPE_NOTIFICATION = 590340 const FSCTL_FIND_FILES_BY_SID = 589967 const FSCTL_GET_BOOT_AREA_INFO = 590384 const FSCTL_GET_COMPRESSION = 589884 const FSCTL_GET_EXTERNAL_BACKING = 590608 const FSCTL_GET_NTFS_FILE_RECORD = 589928 const FSCTL_GET_NTFS_VOLUME_DATA = 589924 const FSCTL_GET_OBJECT_ID = 589980 const FSCTL_GET_REPAIR = 590236 const FSCTL_GET_REPARSE_POINT = 589992 const FSCTL_GET_RETRIEVAL_POINTERS = 589939 const FSCTL_GET_RETRIEVAL_POINTER_BASE = 590388 const FSCTL_GET_VOLUME_BITMAP = 589935 const FSCTL_HSM_DATA = 639251 const FSCTL_HSM_MSG = 639240 const FSCTL_INITIATE_REPAIR = 590248 const FSCTL_INVALIDATE_VOLUMES = 589908 const FSCTL_IS_CSV_FILE = 590408 const FSCTL_IS_FILE_ON_CSV_VOLUME = 590428 const FSCTL_IS_PATHNAME_VALID = 589868 const FSCTL_IS_VOLUME_DIRTY = 589944 const FSCTL_IS_VOLUME_MOUNTED = 589864 const FSCTL_LOCK_VOLUME = 589848 const FSCTL_LOOKUP_STREAM_FROM_CLUSTER = 590332 const FSCTL_MAKE_MEDIA_COMPATIBLE = 622896 const FSCTL_MARK_AS_SYSTEM_HIVE = 589903 const FSCTL_MARK_HANDLE = 590076 const FSCTL_MARK_VOLUME_DIRTY = 589872 const FSCTL_MOVE_FILE = 589940 const FSCTL_OPBATCH_ACK_CLOSE_PENDING = 589840 const FSCTL_OPLOCK_BREAK_ACKNOWLEDGE = 589836 const FSCTL_OPLOCK_BREAK_ACK_NO_2 = 589904 const FSCTL_OPLOCK_BREAK_NOTIFY = 589844 const FSCTL_QUERY_ALLOCATED_RANGES = 606415 const FSCTL_QUERY_DEPENDENT_VOLUME = 590320 const FSCTL_QUERY_FAT_BPB = 589912 type FSCTL_QUERY_FAT_BPB_BUFFER = TFSCTL_QUERY_FAT_BPB_BUFFER const FSCTL_QUERY_FILE_SYSTEM_RECOGNITION = 590412 const FSCTL_QUERY_ON_DISK_VOLUME_INFO = 590140 const FSCTL_QUERY_PAGEFILE_ENCRYPTION = 590312 const FSCTL_QUERY_PERSISTENT_VOLUME_STATE = 590396 const FSCTL_QUERY_RETRIEVAL_POINTERS = 589883 const FSCTL_QUERY_SPARING_INFO = 590136 const FSCTL_QUERY_USN_JOURNAL = 590068 const FSCTL_READ_FILE_USN_DATA = 590059 const FSCTL_READ_FROM_PLEX = 606494 const FSCTL_READ_RAW_ENCRYPTED = 590051 const FSCTL_READ_USN_JOURNAL = 590011 const FSCTL_RECALL_FILE = 590103 const FSCTL_REQUEST_BATCH_OPLOCK = 589832 const FSCTL_REQUEST_FILTER_OPLOCK = 589916 const FSCTL_REQUEST_OPLOCK = 590400 const FSCTL_REQUEST_OPLOCK_LEVEL_1 = 589824 const FSCTL_REQUEST_OPLOCK_LEVEL_2 = 589828 const FSCTL_RESET_VOLUME_ALLOCATION_HINTS = 590316 const FSCTL_SD_GLOBAL_CHANGE = 590324 const FSCTL_SECURITY_ID_CHECK = 606391 const FSCTL_SET_BOOTLOADER_ACCESSED = 589903 const FSCTL_SET_COMPRESSION = 639040 const FSCTL_SET_DEFECT_MANAGEMENT = 622900 const FSCTL_SET_ENCRYPTION = 590039 const FSCTL_SET_EXTERNAL_BACKING = 590604 const FSCTL_SET_OBJECT_ID = 589976 const FSCTL_SET_OBJECT_ID_EXTENDED = 590012 const FSCTL_SET_PERSISTENT_VOLUME_STATE = 590392 const FSCTL_SET_REPAIR = 590232 const FSCTL_SET_REPARSE_POINT = 589988 const FSCTL_SET_SHORT_NAME_BEHAVIOR = 590260 const FSCTL_SET_SPARSE = 590020 const FSCTL_SET_VOLUME_COMPRESSION_STATE = 590144 const FSCTL_SET_ZERO_DATA = 622792 const FSCTL_SET_ZERO_ON_DEALLOCATION = 590228 const FSCTL_SHRINK_VOLUME = 590256 const FSCTL_SIS_COPYFILE = 590080 const FSCTL_SIS_LINK_FILES = 639236 const FSCTL_TXFS_CREATE_MINIVERSION = 622972 const FSCTL_TXFS_CREATE_SECONDARY_RM = 622952 const FSCTL_TXFS_GET_METADATA_INFO = 606572 const FSCTL_TXFS_GET_TRANSACTED_VERSION = 606576 const FSCTL_TXFS_LIST_TRANSACTIONS = 606692 const FSCTL_TXFS_LIST_TRANSACTION_LOCKED_FILES = 606688 const FSCTL_TXFS_MODIFY_RM = 622916 const FSCTL_TXFS_QUERY_RM_INFORMATION = 606536 const FSCTL_TXFS_READ_BACKUP_INFORMATION = 606560 const FSCTL_TXFS_READ_BACKUP_INFORMATION2 = 590328 const FSCTL_TXFS_ROLLFORWARD_REDO = 622928 const FSCTL_TXFS_ROLLFORWARD_UNDO = 622932 const FSCTL_TXFS_SAVEPOINT_INFORMATION = 622968 const FSCTL_TXFS_SHUTDOWN_RM = 622940 const FSCTL_TXFS_START_RM = 622936 const FSCTL_TXFS_TRANSACTION_ACTIVE = 606604 const FSCTL_TXFS_WRITE_BACKUP_INFORMATION = 622948 const FSCTL_TXFS_WRITE_BACKUP_INFORMATION2 = 590336 const FSCTL_UNLOCK_VOLUME = 589852 const FSCTL_WAIT_FOR_REPAIR = 590240 const FSCTL_WRITE_RAW_ENCRYPTED = 590047 const FSCTL_WRITE_USN_CLOSE_RECORD = 590063 const FSHIFT = 4 type FSHORT = TFSHORT const FS_ARABIC = 64 const FS_BALTIC = 128 const FS_CASE_IS_PRESERVED = 2 const FS_CASE_SENSITIVE = 1 const FS_CHINESESIMP = 262144 const FS_CHINESETRAD = 1048576 const FS_CYRILLIC = 4 const FS_FILE_COMPRESSION = 16 const FS_FILE_ENCRYPTION = 131072 const FS_GREEK = 8 const FS_HEBREW = 32 const FS_JISJAPAN = 131072 const FS_JOHAB = 2097152 const FS_LATIN1 = 1 const FS_LATIN2 = 2 const FS_PERSISTENT_ACLS = 8 const FS_SYMBOL = 2147483648 const FS_THAI = 65536 const FS_TURKISH = 16 const FS_UNICODE_STORED_ON_DISK = 4 const FS_VIETNAMESE = 256 const FS_VOL_IS_COMPRESSED = 32768 const FS_WANSUNG = 524288 type FULL_PTR_TO_REFID_ELEMENT = TFULL_PTR_TO_REFID_ELEMENT type FULL_PTR_XLAT_TABLES = TFULL_PTR_XLAT_TABLES type FUNCDESC = TFUNCDESC type FUNCFLAGS = TFUNCFLAGS type FUNCKIND = TFUNCKIND const FVIRTKEY = 1 const FW_BLACK = 900 const FW_BOLD = 700 const FW_DEMIBOLD = 600 const FW_DONTCARE = 0 const FW_EXTRABOLD = 800 const FW_EXTRALIGHT = 200 const FW_HEAVY = 900 const FW_LIGHT = 300 const FW_MEDIUM = 500 const FW_NORMAL = 400 const FW_REGULAR = 400 const FW_SEMIBOLD = 600 const FW_THIN = 100 const FW_ULTRABOLD = 800 const FW_ULTRALIGHT = 200 type FXPT16DOT16 = TFXPT16DOT16 type FXPT2DOT30 = TFXPT2DOT30 const FatalAppExit = 0 const FileEncryptionStatus = 0 const FillConsoleOutputCharacter = 0 const FillMemory = 0 const FindActCtxSectionString = 0 const FindAtom = 0 const FindExecutable = 0 const FindFirstChangeNotification = 0 const FindFirstFile = 0 const FindFirstFileEx = 0 const FindFirstFileTransacted = 0 const FindFirstVolume = 0 const FindFirstVolumeMountPoint = 0 const FindNextFile = 0 const FindNextVolume = 0 const FindNextVolumeMountPoint = 0 const FindResource = 0 const FindResourceEx = 0 const FindText = 0 const FindWindow = 0 const FindWindowEx = 0 const FloppyClassGuid = 0 const FoldString = 0 const FormatMessage = 0 const FreeEnvironmentStrings = 0 const GA_PARENT = 1 const GA_ROOT = 2 const GA_ROOTOWNER = 3 const GB2312_CHARSET = 134 const GCF_INCLUDE_ANCESTORS = 1 const GCLP_HBRBACKGROUND = -10 const GCLP_HCURSOR = -12 const GCLP_HICON = -14 const GCLP_HICONSM = -34 const GCLP_HMODULE = -16 const GCLP_MENUNAME = -8 const GCLP_WNDPROC = -24 const GCL_CBCLSEXTRA = -20 const GCL_CBWNDEXTRA = -18 const GCL_CONVERSION = 1 const GCL_REVERSECONVERSION = 2 const GCL_REVERSE_LENGTH = 3 const GCL_STYLE = -26 const GCPCLASS_ARABIC = 2 const GCPCLASS_HEBREW = 2 const GCPCLASS_LATIN = 1 const GCPCLASS_LATINNUMBER = 5 const GCPCLASS_LATINNUMERICSEPARATOR = 7 const GCPCLASS_LATINNUMERICTERMINATOR = 6 const GCPCLASS_LOCALNUMBER = 4 const GCPCLASS_NEUTRAL = 3 const GCPCLASS_NUMERICSEPARATOR = 8 const GCPCLASS_POSTBOUNDLTR = 32 const GCPCLASS_POSTBOUNDRTL = 16 const GCPCLASS_PREBOUNDLTR = 128 const GCPCLASS_PREBOUNDRTL = 64 const GCPGLYPH_LINKAFTER = 16384 const GCPGLYPH_LINKBEFORE = 32768 const GCP_CLASSIN = 524288 const GCP_DBCS = 1 const GCP_DIACRITIC = 256 const GCP_DISPLAYZWG = 4194304 const GCP_ERROR = 32768 const GCP_GLYPHSHAPE = 16 const GCP_JUSTIFY = 65536 const GCP_JUSTIFYIN = 2097152 const GCP_KASHIDA = 1024 const GCP_LIGATE = 32 const GCP_MAXEXTENT = 1048576 const GCP_NEUTRALOVERRIDE = 33554432 const GCP_NUMERICOVERRIDE = 16777216 const GCP_NUMERICSLATIN = 67108864 const GCP_NUMERICSLOCAL = 134217728 const GCP_REORDER = 2 type GCP_RESULTS = TGCP_RESULTS type GCP_RESULTSA = TGCP_RESULTSA type GCP_RESULTSW = TGCP_RESULTSW const GCP_SYMSWAPOFF = 8388608 const GCP_USEKERNING = 8 const GCS_COMPATTR = 16 const GCS_COMPCLAUSE = 32 const GCS_COMPREADATTR = 2 const GCS_COMPREADCLAUSE = 4 const GCS_COMPREADSTR = 1 const GCS_COMPSTR = 8 const GCS_CURSORPOS = 128 const GCS_DELTASTART = 256 const GCS_RESULTCLAUSE = 4096 const GCS_RESULTREADCLAUSE = 1024 const GCS_RESULTREADSTR = 512 const GCS_RESULTSTR = 2048 const GCW_ATOM = -32 const GC_ALLGESTURES = 1 const GC_PAN = 1 const GC_PAN_WITH_GUTTER = 8 const GC_PAN_WITH_INERTIA = 16 const GC_PAN_WITH_SINGLE_FINGER_HORIZONTALLY = 4 const GC_PAN_WITH_SINGLE_FINGER_VERTICALLY = 2 const GC_PRESSANDTAP = 1 const GC_ROLLOVER = 1 const GC_ROTATE = 1 const GC_TWOFINGERTAP = 1 const GC_ZOOM = 1 const GDICOMMENT_BEGINGROUP = 2 const GDICOMMENT_ENDGROUP = 3 const GDICOMMENT_IDENTIFIER = 1128875079 const GDICOMMENT_MULTIFORMATS = 1073741828 const GDICOMMENT_UNICODE_END = 128 const GDICOMMENT_UNICODE_STRING = 64 const GDICOMMENT_WINDOWS_METAFILE = 2147483649 const GDIPLUS_TS_QUERYVER = 4122 const GDIPLUS_TS_RECORD = 4123 const GDI_ERROR = 4294967295 type GDI_NONREMOTE = TGDI_NONREMOTE type GDI_OBJECT = TGDI_OBJECT const GDI_OBJ_LAST = 14 const GENERIC_ALL = 268435456 type GENERIC_BINDING_INFO = TGENERIC_BINDING_INFO type GENERIC_BINDING_ROUTINE = TGENERIC_BINDING_ROUTINE type GENERIC_BINDING_ROUTINE_PAIR = TGENERIC_BINDING_ROUTINE_PAIR const GENERIC_EXECUTE = 536870912 type GENERIC_MAPPING = TGENERIC_MAPPING const GENERIC_READ = 2147483648 type GENERIC_UNBIND_ROUTINE = TGENERIC_UNBIND_ROUTINE const GENERIC_WRITE = 1073741824 type GEOCLASS = TGEOCLASS type GEOID = TGEOID const GEOID_NOT_AVAILABLE = -1 type GEOTYPE = TGEOTYPE type GEO_ENUMPROC = TGEO_ENUMPROC type GESTURECONFIG = TGESTURECONFIG const GESTURECONFIGMAXCOUNT = 256 type GESTUREINFO = TGESTUREINFO type GESTURENOTIFYSTRUCT = TGESTURENOTIFYSTRUCT const GESTUREVISUALIZATION_DOUBLETAP = 2 const GESTUREVISUALIZATION_OFF = 0 const GESTUREVISUALIZATION_ON = 31 const GESTUREVISUALIZATION_PRESSANDHOLD = 8 const GESTUREVISUALIZATION_PRESSANDTAP = 4 const GESTUREVISUALIZATION_RIGHTTAP = 16 const GESTUREVISUALIZATION_TAP = 1 const GETCOLORTABLE = 5 const GETDEVICEUNITS = 42 const GETEXTENDEDTEXTMETRICS = 256 const GETEXTENTTABLE = 257 const GETFACENAME = 513 const GETPAIRKERNTABLE = 258 const GETPENWIDTH = 16 const GETPHYSPAGESIZE = 12 const GETPRINTINGOFFSET = 13 const GETSCALINGFACTOR = 14 const GETSETPAPERBINS = 29 const GETSETPAPERMETRICS = 35 const GETSETPRINTORIENT = 30 const GETSETSCREENPARAMS = 3072 const GETTECHNOLGY = 20 const GETTECHNOLOGY = 20 const GETTRACKKERNTABLE = 259 const GETVECTORBRUSHSIZE = 27 const GETVECTORPENSIZE = 26 type GETVERSIONINPARAMS = TGETVERSIONINPARAMS type GET_CHANGER_PARAMETERS = TGET_CHANGER_PARAMETERS const GET_FEATURE_FROM_PROCESS = 2 const GET_FEATURE_FROM_REGISTRY = 4 const GET_FEATURE_FROM_THREAD = 1 const GET_FEATURE_FROM_THREAD_INTERNET = 64 const GET_FEATURE_FROM_THREAD_INTRANET = 16 const GET_FEATURE_FROM_THREAD_LOCALMACHINE = 8 const GET_FEATURE_FROM_THREAD_RESTRICTED = 128 const GET_FEATURE_FROM_THREAD_TRUSTED = 32 type GET_FILEEX_INFO_LEVELS = TGET_FILEEX_INFO_LEVELS type GET_LENGTH_INFORMATION = TGET_LENGTH_INFORMATION type GET_MEDIA_TYPES = TGET_MEDIA_TYPES const GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS = 4 const GET_MODULE_HANDLE_EX_FLAG_PIN = 1 const GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT = 2 const GET_MOUSEORKEY_LPARAM = 0 const GET_PS_FEATURESETTING = 4121 type GET_STORAGE_DEPENDENCY_FLAG = TGET_STORAGE_DEPENDENCY_FLAG const GET_SYSTEM_WOW64_DIRECTORY_NAME_A_A = "GetSystemWow64DirectoryA" const GET_SYSTEM_WOW64_DIRECTORY_NAME_A_W = "GetSystemWow64DirectoryA" const GET_SYSTEM_WOW64_DIRECTORY_NAME_W_A = "GetSystemWow64DirectoryW" const GET_SYSTEM_WOW64_DIRECTORY_NAME_W_W = "GetSystemWow64DirectoryW" const GET_TAPE_DRIVE_INFORMATION = 1 const GET_TAPE_MEDIA_INFORMATION = 0 type GET_VIRTUAL_DISK_INFO = TGET_VIRTUAL_DISK_INFO type GET_VIRTUAL_DISK_INFO_VERSION = TGET_VIRTUAL_DISK_INFO_VERSION const GF_BEGIN = 1 const GF_END = 4 const GF_INERTIA = 2 const GGI_MARK_NONEXISTING_GLYPHS = 1 const GGL_INDEX = 2 const GGL_LEVEL = 1 const GGL_PRIVATE = 4 const GGL_STRING = 3 const GGO_BEZIER = 3 const GGO_BITMAP = 1 const GGO_GLYPH_INDEX = 128 const GGO_GRAY2_BITMAP = 4 const GGO_GRAY4_BITMAP = 5 const GGO_GRAY8_BITMAP = 6 const GGO_METRICS = 0 const GGO_NATIVE = 2 const GGO_UNHINTED = 256 const GHND = 66 const GIDC_ARRIVAL = 1 const GIDC_REMOVAL = 2 const GID_BEGIN = 1 const GID_END = 2 const GID_PAN = 4 const GID_PRESSANDTAP = 7 const GID_ROLLOVER = 7 const GID_ROTATE = 5 const GID_TWOFINGERTAP = 6 const GID_ZOOM = 3 type GLOBALHANDLE = TGLOBALHANDLE type GLOBALOPT_EH_VALUES = TGLOBALOPT_EH_VALUES type GLOBALOPT_PROPERTIES = TGLOBALOPT_PROPERTIES type GLOBALOPT_RO_FLAGS = TGLOBALOPT_RO_FLAGS type GLOBALOPT_RPCTP_VALUES = TGLOBALOPT_RPCTP_VALUES type GLOBALOPT_UNMARSHALING_POLICY_VALUES = TGLOBALOPT_UNMARSHALING_POLICY_VALUES type GLYPHMETRICS = TGLYPHMETRICS type GLYPHMETRICSFLOAT = TGLYPHMETRICSFLOAT type GLYPHSET = TGLYPHSET const GL_ID_CANNOTSAVE = 17 const GL_ID_CHOOSECANDIDATE = 40 const GL_ID_INPUTCODE = 38 const GL_ID_INPUTRADICAL = 37 const GL_ID_INPUTREADING = 36 const GL_ID_INPUTSYMBOL = 39 const GL_ID_NOCONVERT = 32 const GL_ID_NODICTIONARY = 16 const GL_ID_NOMODULE = 1 const GL_ID_PRIVATE_FIRST = 32768 const GL_ID_PRIVATE_LAST = 65535 const GL_ID_READINGCONFLICT = 35 const GL_ID_REVERSECONVERSION = 41 const GL_ID_TOOMANYSTROKE = 34 const GL_ID_TYPINGERROR = 33 const GL_ID_UNKNOWN = 0 const GL_LEVEL_ERROR = 2 const GL_LEVEL_FATAL = 1 const GL_LEVEL_INFORMATION = 4 const GL_LEVEL_NOGUIDELINE = 0 const GL_LEVEL_WARNING = 3 const GMDI_GOINTOPOPUPS = 2 const GMDI_USEDISABLED = 1 const GMEM_DDESHARE = 8192 const GMEM_DISCARDABLE = 256 const GMEM_DISCARDED = 16384 const GMEM_FIXED = 0 const GMEM_INVALID_HANDLE = 32768 const GMEM_LOCKCOUNT = 255 const GMEM_LOWER = 4096 const GMEM_MODIFY = 128 const GMEM_MOVEABLE = 2 const GMEM_NOCOMPACT = 16 const GMEM_NODISCARD = 32 const GMEM_NOTIFY = 16384 const GMEM_NOT_BANKED = 4096 const GMEM_SHARE = 8192 const GMEM_VALID_FLAGS = 32626 const GMEM_ZEROINIT = 64 const GMMP_USE_DISPLAY_POINTS = 1 const GMMP_USE_HIGH_RESOLUTION_POINTS = 2 const GM_ADVANCED = 2 const GM_COMPATIBLE = 1 const GM_LAST = 2 type GOBJENUMPROC = TGOBJENUMPROC const GPTR = 64 const GPT_ATTRIBUTE_PLATFORM_REQUIRED = 1 const GPT_BASIC_DATA_ATTRIBUTE_HIDDEN = 4611686018427387904 const GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER = 9223372036854775808 const GPT_BASIC_DATA_ATTRIBUTE_READ_ONLY = 1152921504606846976 const GPT_BASIC_DATA_ATTRIBUTE_SHADOW_COPY = 2305843009213693952 const GRADIENT_FILL_OP_FLAG = 255 const GRADIENT_FILL_RECT_H = 0 const GRADIENT_FILL_RECT_V = 1 const GRADIENT_FILL_TRIANGLE = 2 type GRADIENT_RECT = TGRADIENT_RECT type GRADIENT_TRIANGLE = TGRADIENT_TRIANGLE type GRAYSTRINGPROC = TGRAYSTRINGPROC const GRAY_BRUSH = 2 const GREEK_CHARSET = 161 type GROUP_AFFINITY = TGROUP_AFFINITY const GROUP_NAME = 128 type GROUP_RELATIONSHIP = TGROUP_RELATIONSHIP const GROUP_SECURITY_INFORMATION = 2 const GR_GDIOBJECTS = 0 const GR_GDIOBJECTS_PEAK = 2 const GR_GLOBAL = -2 const GR_USEROBJECTS = 1 const GR_USEROBJECTS_PEAK = 4 const GSS_ALLOW_INHERITED_COMMON = 1 const GS_8BIT_INDICES = 1 type GUID = TGUID const GUID_CLASS_COMPORT = 0 const GUID_SERENUM_BUS_ENUMERATOR = 0 type GUITHREADINFO = TGUITHREADINFO const GUI_CARETBLINKING = 1 const GUI_INMENUMODE = 4 const GUI_INMOVESIZE = 2 const GUI_POPUPMENUMODE = 16 const GUI_SYSTEMMENUMODE = 8 const GWFS_INCLUDE_ANCESTORS = 1 const GWLP_HINSTANCE = -6 const GWLP_HWNDPARENT = -8 const GWLP_ID = -12 const GWLP_USERDATA = -21 const GWLP_WNDPROC = -4 const GWL_EXSTYLE = -20 const GWL_ID = -12 const GWL_STYLE = -16 const GW_CHILD = 5 const GW_ENABLEDPOPUP = 6 const GW_HWNDFIRST = 0 const GW_HWNDLAST = 1 const GW_HWNDNEXT = 2 const GW_HWNDPREV = 3 const GW_MAX = 6 const GW_OWNER = 4 const GetAltTabInfo = 0 const GetAtomName = 0 const GetBinaryType = 0 const GetCPInfoEx = 0 const GetCalendarInfo = 0 const GetCharABCWidths = 0 const GetCharABCWidthsFloat = 0 const GetCharWidth = 0 const GetCharWidth32 = 0 const GetCharWidthFloat = 0 const GetCharacterPlacement = 0 const GetClassInfo = 0 const GetClassInfoEx = 0 const GetClassLong = 0 const GetClassLongPtr = 0 const GetClassName = 0 const GetClipboardFormatName = 0 const GetCommandLine = 0 const GetCompressedFileSize = 0 const GetCompressedFileSizeTransacted = 0 const GetComputerName = 0 const GetComputerNameEx = 0 const GetConsoleAlias = 0 const GetConsoleAliasExes = 0 const GetConsoleAliasExesLength = 0 const GetConsoleAliases = 0 const GetConsoleAliasesLength = 0 const GetConsoleCommandHistory = 0 const GetConsoleCommandHistoryLength = 0 const GetConsoleOriginalTitle = 0 const GetConsoleTitle = 0 const GetCorePrinterDrivers = 0 const GetCurrencyFormat = 0 const GetCurrentDirectory = 0 const GetCurrentHwProfile = 0 const GetDateFormat = 0 const GetDefaultCommConfig = 0 const GetDefaultPrinter = 0 const GetDiskFreeSpace = 0 const GetDiskFreeSpaceEx = 0 const GetDlgItemText = 0 const GetDllDirectory = 0 const GetDriveType = 0 const GetEnhMetaFile = 0 const GetEnhMetaFileDescription = 0 const GetEnvironmentStringsA = 0 const GetEnvironmentVariable = 0 const GetExceptionCode = 0 const GetExpandedName = 0 const GetFileAttributes = 0 const GetFileAttributesEx = 0 const GetFileAttributesTransacted = 0 const GetFileSecurity = 0 const GetFileTitle = 0 const GetFileVersionInfo = 0 const GetFileVersionInfoEx = 0 const GetFileVersionInfoSize = 0 const GetFileVersionInfoSizeEx = 0 const GetFinalPathNameByHandle = 0 const GetFirmwareEnvironmentVariable = 0 const GetFirmwareEnvironmentVariableEx = 0 const GetForm = 0 const GetFullPathName = 0 const GetFullPathNameTransacted = 0 const GetGeoInfo = 0 const GetGlyphIndices = 0 const GetGlyphOutline = 0 const GetICMProfile = 0 const GetIconInfoEx = 0 const GetJob = 0 const GetKerningPairs = 0 const GetKeyNameText = 0 const GetKeyboardLayoutName = 0 const GetLocaleInfo = 0 const GetLogColorSpace = 0 const GetLogicalDriveStrings = 0 const GetLongPathName = 0 const GetLongPathNameTransacted = 0 const GetMenuItemInfo = 0 const GetMenuString = 0 const GetMessage = 0 const GetMetaFile = 0 const GetModuleFileName = 0 const GetModuleHandle = 0 const GetModuleHandleEx = 0 const GetMonitorInfo = 0 const GetNamedPipeClientComputerName = 0 const GetNamedPipeHandleState = 0 const GetNumberFormat = 0 const GetObject = 0 const GetOpenCardName = 0 const GetOpenFileName = 0 const GetOutlineTextMetrics = 0 const GetPrintProcessorDirectory = 0 const GetPrinter = 0 const GetPrinterData = 0 const GetPrinterDataEx = 0 const GetPrinterDriver = 0 const GetPrinterDriver2 = 0 const GetPrinterDriverDirectory = 0 const GetPrinterDriverPackagePath = 0 const GetPrivateProfileInt = 0 const GetPrivateProfileSection = 0 const GetPrivateProfileSectionNames = 0 const GetPrivateProfileString = 0 const GetPrivateProfileStruct = 0 const GetProfileInt = 0 const GetProfileSection = 0 const GetProfileString = 0 const GetProp = 0 const GetRawInputDeviceInfo = 0 const GetSaveFileName = 0 const GetServiceDisplayName = 0 const GetServiceKeyName = 0 const GetShortPathName = 0 const GetSpoolFileHandle = 0 const GetStartupInfo = 0 const GetStringTypeEx = 0 const GetSystemDirectory = 0 const GetSystemWindowsDirectory = 0 const GetSystemWow64Directory = 0 const GetSystemWow64Directory2 = 0 const GetTabbedTextExtent = 0 const GetTempFileName = 0 const GetTempPath = 0 const GetTextExtentExPoint = 0 const GetTextExtentPoint = 0 const GetTextExtentPoint32 = 0 const GetTextFace = 0 const GetTextMetrics = 0 const GetTimeFormat = 0 const GetUserName = 0 const GetUserObjectInformation = 0 const GetVersionEx = 0 const GetVolumeInformation = 0 const GetVolumeNameForVolumeMountPoint = 0 const GetVolumePathName = 0 const GetVolumePathNamesForVolumeName = 0 const GetWindowLong = 0 const GetWindowLongPtr = 0 const GetWindowModuleFileName = 0 const GetWindowText = 0 const GetWindowTextLength = 0 const GetWindowsDirectory = 0 const GlobalAddAtom = 0 const GlobalAddAtomEx = 0 const GlobalFindAtom = 0 const GlobalGetAtomName = 0 const GrayString = 0 type HACCEL = THACCEL type HACCEL__ = THACCEL__ const HALFTONE = 4 type HALF_PTR = THALF_PTR type HANDLE = THANDLE type HANDLETABLE = THANDLETABLE const HANDLE_FLAG_INHERIT = 1 const HANDLE_FLAG_PROTECT_FROM_CLOSE = 2 type HANDLE_PTR = THANDLE_PTR const HANGEUL_CHARSET = 129 const HANGUL_CHARSET = 129 const HANGUP_COMPLETE = 5 const HANGUP_PENDING = 4 type HARDWAREHOOKSTRUCT = THARDWAREHOOKSTRUCT type HARDWAREINPUT = THARDWAREINPUT type HARDWARE_COUNTER_DATA = THARDWARE_COUNTER_DATA type HARDWARE_COUNTER_TYPE = THARDWARE_COUNTER_TYPE type HASHALGORITHM_ENUM = THASHALGORITHM_ENUM type HBITMAP = THBITMAP type HBITMAP__ = THBITMAP__ const HBMMENU_CALLBACK = -1 type HBRUSH = THBRUSH type HBRUSH__ = THBRUSH__ const HCBT_ACTIVATE = 5 const HCBT_CLICKSKIPPED = 6 const HCBT_CREATEWND = 3 const HCBT_DESTROYWND = 4 const HCBT_KEYSKIPPED = 7 const HCBT_MINMAX = 1 const HCBT_MOVESIZE = 0 const HCBT_QS = 2 const HCBT_SETFOCUS = 9 const HCBT_SYSCOMMAND = 8 type HCERTCHAINENGINE = THCERTCHAINENGINE type HCERTSTORE = THCERTSTORE type HCERTSTOREPROV = THCERTSTOREPROV type HCERT_SERVER_OCSP_RESPONSE = THCERT_SERVER_OCSP_RESPONSE const HCF_AVAILABLE = 2 const HCF_CONFIRMHOTKEY = 8 const HCF_DEFAULTDESKTOP = 512 const HCF_HIGHCONTRASTON = 1 const HCF_HOTKEYACTIVE = 4 const HCF_HOTKEYAVAILABLE = 64 const HCF_HOTKEYSOUND = 16 const HCF_INDICATOR = 32 const HCF_LOGONDESKTOP = 256 const HCF_OPTION_NOTHEMECHANGE = 4096 type HCOLORSPACE = THCOLORSPACE type HCOLORSPACE__ = THCOLORSPACE__ type HCONTEXT = THCONTEXT type HCONV = THCONV type HCONVLIST = THCONVLIST type HCONVLIST__ = THCONVLIST__ type HCONV__ = THCONV__ type HCRYPTASYNC = THCRYPTASYNC type HCRYPTDEFAULTCONTEXT = THCRYPTDEFAULTCONTEXT type HCRYPTHASH = THCRYPTHASH type HCRYPTKEY = THCRYPTKEY type HCRYPTMSG = THCRYPTMSG type HCRYPTOIDFUNCADDR = THCRYPTOIDFUNCADDR type HCRYPTOIDFUNCSET = THCRYPTOIDFUNCSET type HCRYPTPROV = THCRYPTPROV type HCRYPTPROV_LEGACY = THCRYPTPROV_LEGACY type HCRYPTPROV_OR_NCRYPT_KEY_HANDLE = THCRYPTPROV_OR_NCRYPT_KEY_HANDLE type HCURSOR = THCURSOR const HC_ACTION = 0 const HC_GETNEXT = 1 const HC_NOREM = 3 const HC_NOREMOVE = 3 const HC_SKIP = 2 const HC_SYSMODALOFF = 5 const HC_SYSMODALON = 4 const HDATA_APPOWNED = 1 type HDC = THDC type HDC__ = THDC__ type HDDEDATA = THDDEDATA type HDDEDATA__ = THDDEDATA__ type HDESK = THDESK type HDESK__ = THDESK__ type HDEVNOTIFY = THDEVNOTIFY type HDROP = THDROP type HDROP__ = THDROP__ type HDRVR = THDRVR type HDRVR__ = THDRVR__ type HDWP = THDWP const HEAP_CREATE_ALIGN_16 = 65536 const HEAP_CREATE_ENABLE_EXECUTE = 262144 const HEAP_CREATE_ENABLE_TRACING = 131072 const HEAP_DISABLE_COALESCE_ON_FREE = 128 const HEAP_FREE_CHECKING_ENABLED = 64 const HEAP_GENERATE_EXCEPTIONS = 4 const HEAP_GROWABLE = 2 type HEAP_INFORMATION_CLASS = THEAP_INFORMATION_CLASS const HEAP_MAXIMUM_TAG = 4095 const HEAP_NO_SERIALIZE = 1 const HEAP_PSEUDO_TAG_FLAG = 32768 const HEAP_REALLOC_IN_PLACE_ONLY = 16 type HEAP_SUMMARY = THEAP_SUMMARY const HEAP_TAG_SHIFT = 18 const HEAP_TAIL_CHECKING_ENABLED = 32 const HEAP_ZERO_MEMORY = 8 const HEBREW_CHARSET = 177 type HELPINFO = THELPINFO const HELPINFO_MENUITEM = 2 const HELPINFO_WINDOW = 1 const HELPMSGSTRINGA = "commdlg_help" const HELPMSGSTRINGW = "commdlg_help" type HELPPOLY = THELPPOLY type HELPWININFO = THELPWININFO type HELPWININFOA = THELPWININFOA type HELPWININFOW = THELPWININFOW const HELP_COMMAND = 258 const HELP_CONTENTS = 3 const HELP_CONTEXT = 1 const HELP_CONTEXTMENU = 10 const HELP_CONTEXTPOPUP = 8 const HELP_FINDER = 11 const HELP_FORCEFILE = 9 const HELP_HELPONHELP = 4 const HELP_INDEX = 3 const HELP_KEY = 257 const HELP_MULTIKEY = 513 const HELP_PARTIALKEY = 261 const HELP_QUIT = 2 const HELP_SETCONTENTS = 5 const HELP_SETINDEX = 5 const HELP_SETPOPUP_POS = 13 const HELP_SETWINPOS = 515 const HELP_TCARD = 32768 const HELP_TCARD_DATA = 16 const HELP_TCARD_OTHER_CALLER = 17 const HELP_WM_HELP = 12 type HENHMETAFILE = THENHMETAFILE type HENHMETAFILE__ = THENHMETAFILE__ type HFILE = THFILE const HFILE_ERROR = -1 type HFONT = THFONT type HFONT__ = THFONT__ type HGDIOBJ = THGDIOBJ type HGESTUREINFO = THGESTUREINFO type HGESTUREINFO__ = THGESTUREINFO__ type HGLOBAL = THGLOBAL type HGLRC = THGLRC type HGLRC__ = THGLRC__ type HHOOK = THHOOK type HHOOK__ = THHOOK__ type HICON = THICON type HICON__ = THICON__ const HIDE_WINDOW = 0 type HIGHCONTRAST = THIGHCONTRAST type HIGHCONTRASTA = THIGHCONTRASTA type HIGHCONTRASTW = THIGHCONTRASTW const HIGH_PRIORITY_CLASS = 128 const HIGH_SURROGATE_END = 56319 const HIGH_SURROGATE_START = 55296 type HIMC = THIMC type HIMCC = THIMCC type HIMCC__ = THIMCC__ type HIMC__ = THIMC__ type HINSTANCE = THINSTANCE const HINSTANCE_ERROR = 32 type HINSTANCE__ = THINSTANCE__ type HISTOGRAM_BUCKET = THISTOGRAM_BUCKET const HISTOGRAM_BUCKET_SIZE = 0 const HISTORY_NO_DUP_FLAG = 1 const HIST_NO_OF_BUCKETS = 24 type HIT_LOGGING_INFO = THIT_LOGGING_INFO type HKEY = THKEY type HKEY__ = THKEY__ type HKL = THKL const HKL_NEXT = 1 const HKL_PREV = 0 type HKL__ = THKL__ type HLOCAL = THLOCAL type HLSURF = THLSURF type HLSURF__ = THLSURF__ type HMAC_INFO = THMAC_INFO type HMENU = THMENU type HMENU__ = THMENU__ type HMETAFILE = THMETAFILE type HMETAFILEPICT = THMETAFILEPICT type HMETAFILE__ = THMETAFILE__ type HMIDI = THMIDI type HMIDIIN = THMIDIIN type HMIDIIN__ = THMIDIIN__ type HMIDIOUT = THMIDIOUT type HMIDIOUT__ = THMIDIOUT__ type HMIDISTRM = THMIDISTRM type HMIDISTRM__ = THMIDISTRM__ type HMIDI__ = THMIDI__ type HMIXER = THMIXER type HMIXEROBJ = THMIXEROBJ type HMIXEROBJ__ = THMIXEROBJ__ type HMIXER__ = THMIXER__ type HMMIO = THMMIO type HMMIO__ = THMMIO__ type HMODULE = THMODULE type HMONITOR = THMONITOR const HMONITOR_DECLARED = 1 type HMONITOR__ = THMONITOR__ type HOLEMENU = THOLEMENU const HOLLOW_BRUSH = 5 type HOOKPROC = THOOKPROC const HORZRES = 8 const HORZSIZE = 4 type HOSTENT = THOSTENT const HOST_NOT_FOUND = 11001 const HOVER_DEFAULT = 4294967295 type HPALETTE = THPALETTE type HPALETTE__ = THPALETTE__ type HPEN = THPEN type HPEN__ = THPEN__ type HPOWERNOTIFY = THPOWERNOTIFY type HPROPSHEETPAGE = THPROPSHEETPAGE type HPSTR = THPSTR const HP_ALGID = 1 const HP_HASHSIZE = 4 const HP_HASHVAL = 2 const HP_HMAC_INFO = 5 const HP_TLS1PRF_LABEL = 6 const HP_TLS1PRF_SEED = 7 type HRAWINPUT = THRAWINPUT type HRAWINPUT__ = THRAWINPUT__ type HREFTYPE = THREFTYPE type HRESULT = THRESULT type HRGN = THRGN type HRGN__ = THRGN__ type HRSRC = THRSRC type HRSRC__ = THRSRC__ const HSHELL_ACCESSIBILITYSTATE = 11 const HSHELL_ACTIVATESHELLWINDOW = 3 const HSHELL_APPCOMMAND = 12 const HSHELL_ENDTASK = 10 const HSHELL_FLASH = 32774 const HSHELL_GETMINRECT = 5 const HSHELL_HIGHBIT = 32768 const HSHELL_LANGUAGE = 8 const HSHELL_MONITORCHANGED = 16 const HSHELL_REDRAW = 6 const HSHELL_RUDEAPPACTIVATED = 32772 const HSHELL_SYSMENU = 9 const HSHELL_TASKMAN = 7 const HSHELL_WINDOWACTIVATED = 4 const HSHELL_WINDOWCREATED = 1 const HSHELL_WINDOWDESTROYED = 2 const HSHELL_WINDOWREPLACED = 13 const HSHELL_WINDOWREPLACING = 14 type HSPRITE = THSPRITE type HSPRITE__ = THSPRITE__ type HSTR = THSTR type HSTR__ = THSTR__ type HSZ = THSZ type HSZPAIR = THSZPAIR type HSZ__ = THSZ__ const HS_API_MAX = 12 const HS_BDIAGONAL = 3 const HS_CROSS = 4 const HS_DIAGCROSS = 5 const HS_FDIAGONAL = 2 const HS_HORIZONTAL = 0 const HS_VERTICAL = 1 type HTASK = THTASK type HTASK__ = THTASK__ const HTBORDER = 18 const HTBOTTOM = 15 const HTBOTTOMLEFT = 16 const HTBOTTOMRIGHT = 17 const HTCAPTION = 2 const HTCLIENT = 1 const HTCLOSE = 20 const HTERROR = -2 const HTGROWBOX = 4 const HTHELP = 21 const HTHSCROLL = 6 const HTLEFT = 10 const HTMAXBUTTON = 9 const HTMENU = 5 const HTMINBUTTON = 8 const HTNOWHERE = 0 const HTOBJECT = 19 type HTOUCHINPUT = THTOUCHINPUT type HTOUCHINPUT__ = THTOUCHINPUT__ const HTREDUCE = 8 const HTRIGHT = 11 const HTSIZE = 4 const HTSIZEFIRST = 10 const HTSIZELAST = 17 const HTSYSMENU = 3 const HTTOP = 12 const HTTOPLEFT = 13 const HTTOPRIGHT = 14 type HTTPSPolicyCallbackData = THTTPSPolicyCallbackData const HTTRANSPARENT = -1 const HTVSCROLL = 7 const HTZOOM = 9 type HUMPD = THUMPD type HUMPD__ = THUMPD__ type HWAVE = THWAVE type HWAVEIN = THWAVEIN type HWAVEIN__ = THWAVEIN__ type HWAVEOUT = THWAVEOUT type HWAVEOUT__ = THWAVEOUT__ type HWAVE__ = THWAVE__ type HWINEVENTHOOK = THWINEVENTHOOK type HWINEVENTHOOK__ = THWINEVENTHOOK__ type HWINSTA = THWINSTA type HWINSTA__ = THWINSTA__ type HWND = THWND const HWND_MESSAGE = -3 const HWND_NOTOPMOST = -2 const HWND_TOPMOST = -1 type HWND__ = THWND__ const HW_PROFILE_GUIDLEN = 39 type HW_PROFILE_INFO = THW_PROFILE_INFO type HW_PROFILE_INFOA = THW_PROFILE_INFOA type HW_PROFILE_INFOW = THW_PROFILE_INFOW type HYPER_SIZEDARR = THYPER_SIZEDARR const HiddenVolumeClassGuid = 0 const IACE_CHILDREN = 1 const IACE_DEFAULT = 16 const IACE_IGNORENOCONTEXT = 32 type IAddrExclusionControl = TIAddrExclusionControl type IAddrExclusionControlVtbl = TIAddrExclusionControlVtbl type IAddrTrackingControl = TIAddrTrackingControl type IAddrTrackingControlVtbl = TIAddrTrackingControlVtbl type IAdviseSink = TIAdviseSink type IAdviseSink2 = TIAdviseSink2 type IAdviseSink2Vtbl = TIAdviseSink2Vtbl type IAdviseSinkVtbl = TIAdviseSinkVtbl type IAgileObject = TIAgileObject type IAgileObjectVtbl = TIAgileObjectVtbl type IAgileReference = TIAgileReference type IAgileReferenceVtbl = TIAgileReferenceVtbl type IApartmentShutdown = TIApartmentShutdown type IApartmentShutdownVtbl = TIApartmentShutdownVtbl type IAsyncManager = TIAsyncManager type IAsyncManagerVtbl = TIAsyncManagerVtbl type IAsyncRpcChannelBuffer = TIAsyncRpcChannelBuffer type IAsyncRpcChannelBufferVtbl = TIAsyncRpcChannelBufferVtbl type IAuthenticate = TIAuthenticate type IAuthenticateEx = TIAuthenticateEx type IAuthenticateExVtbl = TIAuthenticateExVtbl type IAuthenticateVtbl = TIAuthenticateVtbl type IBindCallbackRedirect = TIBindCallbackRedirect type IBindCallbackRedirectVtbl = TIBindCallbackRedirectVtbl type IBindCtx = TIBindCtx type IBindCtxVtbl = TIBindCtxVtbl type IBindHost = TIBindHost type IBindHostVtbl = TIBindHostVtbl type IBindProtocol = TIBindProtocol type IBindProtocolVtbl = TIBindProtocolVtbl type IBindStatusCallback = TIBindStatusCallback type IBindStatusCallbackEx = TIBindStatusCallbackEx type IBindStatusCallbackExVtbl = TIBindStatusCallbackExVtbl type IBindStatusCallbackVtbl = TIBindStatusCallbackVtbl type IBinding = TIBinding type IBindingVtbl = TIBindingVtbl type IBlockingLock = TIBlockingLock type IBlockingLockVtbl = TIBlockingLockVtbl const ICMENUMPROC = 0 type ICMENUMPROCA = TICMENUMPROCA type ICMENUMPROCW = TICMENUMPROCW const ICM_ADDPROFILE = 1 const ICM_DELETEPROFILE = 2 const ICM_DONE_OUTSIDEDC = 4 const ICM_OFF = 1 const ICM_ON = 2 const ICM_QUERY = 3 const ICM_QUERYMATCH = 7 const ICM_QUERYPROFILE = 3 const ICM_REGISTERICMATCHER = 5 const ICM_SETDEFAULTPROFILE = 4 const ICM_UNREGISTERICMATCHER = 6 type ICONINFO = TICONINFO type ICONINFOEX = TICONINFOEX type ICONINFOEXA = TICONINFOEXA type ICONINFOEXW = TICONINFOEXW type ICONMETRICS = TICONMETRICS type ICONMETRICSA = TICONMETRICSA type ICONMETRICSW = TICONMETRICSW const ICON_BIG = 1 const ICON_SMALL = 0 const ICON_SMALL2 = 2 type ICallFactory = TICallFactory type ICallFactoryVtbl = TICallFactoryVtbl type ICancelMethodCalls = TICancelMethodCalls type ICancelMethodCallsVtbl = TICancelMethodCallsVtbl type ICatalogFileInfo = TICatalogFileInfo type ICatalogFileInfoVtbl = TICatalogFileInfoVtbl type IChannelHook = TIChannelHook type IChannelHookVtbl = TIChannelHookVtbl type IClassActivator = TIClassActivator type IClassActivatorVtbl = TIClassActivatorVtbl type IClassFactory = TIClassFactory type IClassFactoryVtbl = TIClassFactoryVtbl type IClientSecurity = TIClientSecurity type IClientSecurityVtbl = TIClientSecurityVtbl type ICodeInstall = TICodeInstall type ICodeInstallVtbl = TICodeInstallVtbl type IComThreadingInfo = TIComThreadingInfo type IComThreadingInfoVtbl = TIComThreadingInfoVtbl type IContinue = TIContinue type IContinueVtbl = TIContinueVtbl type ICreateErrorInfo = TICreateErrorInfo type ICreateErrorInfoVtbl = TICreateErrorInfoVtbl type ICreateTypeInfo = TICreateTypeInfo type ICreateTypeInfo2 = TICreateTypeInfo2 type ICreateTypeInfo2Vtbl = TICreateTypeInfo2Vtbl type ICreateTypeInfoVtbl = TICreateTypeInfoVtbl type ICreateTypeLib = TICreateTypeLib type ICreateTypeLib2 = TICreateTypeLib2 type ICreateTypeLib2Vtbl = TICreateTypeLib2Vtbl type ICreateTypeLibVtbl = TICreateTypeLibVtbl const IDABORT = 3 const IDANI_CAPTION = 3 const IDANI_OPEN = 1 const IDCANCEL = 2 const IDCLOSE = 8 const IDCONTINUE = 11 const IDENTIFY_BUFFER_SIZE = 512 type IDEREGS = TIDEREGS const IDHELP = 9 const IDHOT_SNAPDESKTOP = -2 const IDHOT_SNAPWINDOW = -1 const IDH_CANCEL = 28444 const IDH_GENERIC_HELP_BUTTON = 28442 const IDH_HELP = 28445 const IDH_MISSING_CONTEXT = 28441 const IDH_NO_HELP = 28440 const IDH_OK = 28443 const IDIGNORE = 5 const IDI_ERROR = "IDI_HAND" const IDI_INFORMATION = "IDI_ASTERISK" const IDI_WARNING = "IDI_EXCLAMATION" type IDLDESC = TIDLDESC const IDLE_PRIORITY_CLASS = 64 const IDLFLAG_FIN = 1 const IDLFLAG_FLCID = 4 const IDLFLAG_FOUT = 2 const IDLFLAG_FRETVAL = 8 const IDLFLAG_NONE = 0 type IDL_CS_CONVERT = TIDL_CS_CONVERT const IDNO = 7 const IDN_ALLOW_UNASSIGNED = 1 const IDN_EMAIL_ADDRESS = 4 const IDN_RAW_PUNYCODE = 8 const IDN_USE_STD3_ASCII_RULES = 2 const IDOK = 1 const IDRETRY = 4 const IDTIMEOUT = 32000 const IDTRYAGAIN = 10 const IDYES = 6 const ID_CMD = 236 const ID_DEFAULTINST = -2 const ID_PSREBOOTSYSTEM = 3 const ID_PSRESTARTWINDOWS = 2 type IDataAdviseHolder = TIDataAdviseHolder type IDataAdviseHolderVtbl = TIDataAdviseHolderVtbl type IDataFilter = TIDataFilter type IDataFilterVtbl = TIDataFilterVtbl type IDataObject = TIDataObject type IDataObjectVtbl = TIDataObjectVtbl type IDirectWriterLock = TIDirectWriterLock type IDirectWriterLockVtbl = TIDirectWriterLockVtbl type IDispatch = TIDispatch type IDispatchVtbl = TIDispatchVtbl type IDropSource = TIDropSource type IDropSourceNotify = TIDropSourceNotify type IDropSourceNotifyVtbl = TIDropSourceNotifyVtbl type IDropSourceVtbl = TIDropSourceVtbl type IDropTarget = TIDropTarget type IDropTargetVtbl = TIDropTargetVtbl type IDummyHICONIncluder = TIDummyHICONIncluder type IDummyHICONIncluderVtbl = TIDummyHICONIncluderVtbl const IE_BADID = -1 const IE_BAUDRATE = -12 const IE_BYTESIZE = -11 const IE_DEFAULT = -5 const IE_HARDWARE = -10 const IE_MEMORY = -4 const IE_NOPEN = -3 const IE_OPEN = -2 type IEncodingFilterFactory = TIEncodingFilterFactory type IEncodingFilterFactoryVtbl = TIEncodingFilterFactoryVtbl type IEnumFORMATETC = TIEnumFORMATETC type IEnumFORMATETCVtbl = TIEnumFORMATETCVtbl type IEnumMoniker = TIEnumMoniker type IEnumMonikerVtbl = TIEnumMonikerVtbl type IEnumOLEVERB = TIEnumOLEVERB type IEnumOLEVERBVtbl = TIEnumOLEVERBVtbl type IEnumSTATDATA = TIEnumSTATDATA type IEnumSTATDATAVtbl = TIEnumSTATDATAVtbl type IEnumSTATPROPSETSTG = TIEnumSTATPROPSETSTG type IEnumSTATPROPSETSTGVtbl = TIEnumSTATPROPSETSTGVtbl type IEnumSTATPROPSTG = TIEnumSTATPROPSTG type IEnumSTATPROPSTGVtbl = TIEnumSTATPROPSTGVtbl type IEnumSTATSTG = TIEnumSTATSTG type IEnumSTATSTGVtbl = TIEnumSTATSTGVtbl type IEnumString = TIEnumString type IEnumStringVtbl = TIEnumStringVtbl type IEnumUnknown = TIEnumUnknown type IEnumUnknownVtbl = TIEnumUnknownVtbl type IEnumVARIANT = TIEnumVARIANT type IEnumVARIANTVtbl = TIEnumVARIANTVtbl type IErrorInfo = TIErrorInfo type IErrorInfoVtbl = TIErrorInfoVtbl type IErrorLog = TIErrorLog type IErrorLogVtbl = TIErrorLogVtbl type IExternalConnection = TIExternalConnection type IExternalConnectionVtbl = TIExternalConnectionVtbl const IFACEMETHODIMPV = "STDMETHODIMPV" type IFastRundown = TIFastRundown type IFastRundownVtbl = TIFastRundownVtbl type IFillLockBytes = TIFillLockBytes type IFillLockBytesVtbl = TIFillLockBytesVtbl type IForegroundTransfer = TIForegroundTransfer type IForegroundTransferVtbl = TIForegroundTransferVtbl const IGIMIF_RIGHTMENU = 1 const IGIMII_CMODE = 1 const IGIMII_CONFIGURE = 4 const IGIMII_HELP = 16 const IGIMII_INPUTTOOLS = 64 const IGIMII_OTHER = 32 const IGIMII_SMODE = 2 const IGIMII_TOOLS = 8 const IGNORE = 0 const IGP_CONVERSION = 8 const IGP_PROPERTY = 4 const IGP_SELECT = 24 const IGP_SENTENCE = 12 const IGP_SETCOMPSTR = 20 const IGP_UI = 16 type IGetBindHandle = TIGetBindHandle type IGetBindHandleVtbl = TIGetBindHandleVtbl type IGlobalInterfaceTable = TIGlobalInterfaceTable type IGlobalInterfaceTableVtbl = TIGlobalInterfaceTableVtbl type IGlobalOptions = TIGlobalOptions type IGlobalOptionsVtbl = TIGlobalOptionsVtbl type IHttpNegotiate = TIHttpNegotiate type IHttpNegotiate2 = TIHttpNegotiate2 type IHttpNegotiate2Vtbl = TIHttpNegotiate2Vtbl type IHttpNegotiate3 = TIHttpNegotiate3 type IHttpNegotiate3Vtbl = TIHttpNegotiate3Vtbl type IHttpNegotiateVtbl = TIHttpNegotiateVtbl type IHttpSecurity = TIHttpSecurity type IHttpSecurityVtbl = TIHttpSecurityVtbl type IID = TIID const IID_IOInet = 0 const IID_IOInetBindInfo = 0 const IID_IOInetBindInfoEx = 0 const IID_IOInetPriority = 0 const IID_IOInetProtocol = 0 const IID_IOInetProtocolEx = 0 const IID_IOInetProtocolInfo = 0 const IID_IOInetProtocolRoot = 0 const IID_IOInetProtocolSink = 0 const IID_IOInetProtocolSinkStackable = 0 const IID_IOInetSession = 0 const IID_IOInetThreadSwitch = 0 const IID_NULL = 0 type IInitializeSpy = TIInitializeSpy type IInitializeSpyVtbl = TIInitializeSpyVtbl type IInternalUnknown = TIInternalUnknown type IInternalUnknownVtbl = TIInternalUnknownVtbl type IInternet = TIInternet type IInternetBindInfo = TIInternetBindInfo type IInternetBindInfoEx = TIInternetBindInfoEx type IInternetBindInfoExVtbl = TIInternetBindInfoExVtbl type IInternetBindInfoVtbl = TIInternetBindInfoVtbl type IInternetHostSecurityManager = TIInternetHostSecurityManager type IInternetHostSecurityManagerVtbl = TIInternetHostSecurityManagerVtbl type IInternetPriority = TIInternetPriority type IInternetPriorityVtbl = TIInternetPriorityVtbl type IInternetProtocol = TIInternetProtocol type IInternetProtocolEx = TIInternetProtocolEx type IInternetProtocolExVtbl = TIInternetProtocolExVtbl type IInternetProtocolInfo = TIInternetProtocolInfo type IInternetProtocolInfoVtbl = TIInternetProtocolInfoVtbl type IInternetProtocolRoot = TIInternetProtocolRoot type IInternetProtocolRootVtbl = TIInternetProtocolRootVtbl type IInternetProtocolSink = TIInternetProtocolSink type IInternetProtocolSinkStackable = TIInternetProtocolSinkStackable type IInternetProtocolSinkStackableVtbl = TIInternetProtocolSinkStackableVtbl type IInternetProtocolSinkVtbl = TIInternetProtocolSinkVtbl type IInternetProtocolVtbl = TIInternetProtocolVtbl type IInternetSecurityManager = TIInternetSecurityManager type IInternetSecurityManagerEx = TIInternetSecurityManagerEx type IInternetSecurityManagerEx2 = TIInternetSecurityManagerEx2 type IInternetSecurityManagerEx2Vtbl = TIInternetSecurityManagerEx2Vtbl type IInternetSecurityManagerExVtbl = TIInternetSecurityManagerExVtbl type IInternetSecurityManagerVtbl = TIInternetSecurityManagerVtbl type IInternetSecurityMgrSite = TIInternetSecurityMgrSite type IInternetSecurityMgrSiteVtbl = TIInternetSecurityMgrSiteVtbl type IInternetSession = TIInternetSession type IInternetSessionVtbl = TIInternetSessionVtbl type IInternetThreadSwitch = TIInternetThreadSwitch type IInternetThreadSwitchVtbl = TIInternetThreadSwitchVtbl type IInternetVtbl = TIInternetVtbl type IInternetZoneManager = TIInternetZoneManager type IInternetZoneManagerEx = TIInternetZoneManagerEx type IInternetZoneManagerEx2 = TIInternetZoneManagerEx2 type IInternetZoneManagerEx2Vtbl = TIInternetZoneManagerEx2Vtbl type IInternetZoneManagerExVtbl = TIInternetZoneManagerExVtbl type IInternetZoneManagerVtbl = TIInternetZoneManagerVtbl const ILLUMINANT_A = 1 const ILLUMINANT_B = 2 const ILLUMINANT_C = 3 const ILLUMINANT_D50 = 4 const ILLUMINANT_D55 = 5 const ILLUMINANT_D65 = 6 const ILLUMINANT_D75 = 7 const ILLUMINANT_DAYLIGHT = 3 const ILLUMINANT_DEVICE_DEFAULT = 0 const ILLUMINANT_F2 = 8 const ILLUMINANT_FLUORESCENT = 8 const ILLUMINANT_MAX_INDEX = 8 const ILLUMINANT_NTSC = 3 const ILLUMINANT_TUNGSTEN = 1 type ILayoutStorage = TILayoutStorage type ILayoutStorageVtbl = TILayoutStorageVtbl type ILockBytes = TILockBytes type ILockBytesVtbl = TILockBytesVtbl type IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = TIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY type IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = TIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY type IMAGE_ARCHITECTURE_ENTRY = TIMAGE_ARCHITECTURE_ENTRY type IMAGE_ARCHITECTURE_HEADER = TIMAGE_ARCHITECTURE_HEADER const IMAGE_ARCHIVE_END = "`\\n" const IMAGE_ARCHIVE_LINKER_MEMBER = "/ " const IMAGE_ARCHIVE_LONGNAMES_MEMBER = "// " type IMAGE_ARCHIVE_MEMBER_HEADER = TIMAGE_ARCHIVE_MEMBER_HEADER const IMAGE_ARCHIVE_PAD = "\\n" const IMAGE_ARCHIVE_START = "!\\n" const IMAGE_ARCHIVE_START_SIZE = 8 type IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = TIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY type IMAGE_ARM_RUNTIME_FUNCTION_ENTRY = TIMAGE_ARM_RUNTIME_FUNCTION_ENTRY type IMAGE_AUX_SYMBOL = TIMAGE_AUX_SYMBOL type IMAGE_AUX_SYMBOL_EX = TIMAGE_AUX_SYMBOL_EX type IMAGE_AUX_SYMBOL_TOKEN_DEF = TIMAGE_AUX_SYMBOL_TOKEN_DEF type IMAGE_AUX_SYMBOL_TYPE = TIMAGE_AUX_SYMBOL_TYPE type IMAGE_BASE_RELOCATION = TIMAGE_BASE_RELOCATION const IMAGE_BITMAP = 0 type IMAGE_BOUND_FORWARDER_REF = TIMAGE_BOUND_FORWARDER_REF type IMAGE_BOUND_IMPORT_DESCRIPTOR = TIMAGE_BOUND_IMPORT_DESCRIPTOR type IMAGE_CE_RUNTIME_FUNCTION_ENTRY = TIMAGE_CE_RUNTIME_FUNCTION_ENTRY type IMAGE_COFF_SYMBOLS_HEADER = TIMAGE_COFF_SYMBOLS_HEADER const IMAGE_COMDAT_SELECT_ANY = 2 const IMAGE_COMDAT_SELECT_ASSOCIATIVE = 5 const IMAGE_COMDAT_SELECT_EXACT_MATCH = 4 const IMAGE_COMDAT_SELECT_LARGEST = 6 const IMAGE_COMDAT_SELECT_NEWEST = 7 const IMAGE_COMDAT_SELECT_NODUPLICATES = 1 const IMAGE_COMDAT_SELECT_SAME_SIZE = 3 type IMAGE_COR20_HEADER = TIMAGE_COR20_HEADER const IMAGE_CURSOR = 2 type IMAGE_DATA_DIRECTORY = TIMAGE_DATA_DIRECTORY type IMAGE_DEBUG_DIRECTORY = TIMAGE_DEBUG_DIRECTORY type IMAGE_DEBUG_MISC = TIMAGE_DEBUG_MISC const IMAGE_DEBUG_MISC_EXENAME = 1 const IMAGE_DEBUG_TYPE_BORLAND = 9 const IMAGE_DEBUG_TYPE_CLSID = 11 const IMAGE_DEBUG_TYPE_CODEVIEW = 2 const IMAGE_DEBUG_TYPE_COFF = 1 const IMAGE_DEBUG_TYPE_EXCEPTION = 5 const IMAGE_DEBUG_TYPE_FIXUP = 6 const IMAGE_DEBUG_TYPE_FPO = 3 const IMAGE_DEBUG_TYPE_MISC = 4 const IMAGE_DEBUG_TYPE_OMAP_FROM_SRC = 8 const IMAGE_DEBUG_TYPE_OMAP_TO_SRC = 7 const IMAGE_DEBUG_TYPE_RESERVED10 = 10 const IMAGE_DEBUG_TYPE_UNKNOWN = 0 type IMAGE_DELAYLOAD_DESCRIPTOR = TIMAGE_DELAYLOAD_DESCRIPTOR const IMAGE_DIRECTORY_ENTRY_ARCHITECTURE = 7 const IMAGE_DIRECTORY_ENTRY_BASERELOC = 5 const IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT = 11 const IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR = 14 const IMAGE_DIRECTORY_ENTRY_DEBUG = 6 const IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT = 13 const IMAGE_DIRECTORY_ENTRY_EXCEPTION = 3 const IMAGE_DIRECTORY_ENTRY_EXPORT = 0 const IMAGE_DIRECTORY_ENTRY_GLOBALPTR = 8 const IMAGE_DIRECTORY_ENTRY_IAT = 12 const IMAGE_DIRECTORY_ENTRY_IMPORT = 1 const IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG = 10 const IMAGE_DIRECTORY_ENTRY_RESOURCE = 2 const IMAGE_DIRECTORY_ENTRY_SECURITY = 4 const IMAGE_DIRECTORY_ENTRY_TLS = 9 const IMAGE_DLLCHARACTERISTICS_APPCONTAINER = 4096 const IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE = 64 const IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY = 128 const IMAGE_DLLCHARACTERISTICS_GUARD_CF = 16384 const IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA = 32 const IMAGE_DLLCHARACTERISTICS_NO_BIND = 2048 const IMAGE_DLLCHARACTERISTICS_NO_ISOLATION = 512 const IMAGE_DLLCHARACTERISTICS_NO_SEH = 1024 const IMAGE_DLLCHARACTERISTICS_NX_COMPAT = 256 const IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE = 32768 const IMAGE_DLLCHARACTERISTICS_WDM_DRIVER = 8192 type IMAGE_DOS_HEADER = TIMAGE_DOS_HEADER const IMAGE_DOS_SIGNATURE = 23117 const IMAGE_ENHMETAFILE = 3 type IMAGE_EXPORT_DIRECTORY = TIMAGE_EXPORT_DIRECTORY const IMAGE_FILE_32BIT_MACHINE = 256 const IMAGE_FILE_AGGRESIVE_WS_TRIM = 16 const IMAGE_FILE_BYTES_REVERSED_HI = 32768 const IMAGE_FILE_BYTES_REVERSED_LO = 128 const IMAGE_FILE_DEBUG_STRIPPED = 512 const IMAGE_FILE_DLL = 8192 const IMAGE_FILE_EXECUTABLE_IMAGE = 2 type IMAGE_FILE_HEADER = TIMAGE_FILE_HEADER const IMAGE_FILE_LARGE_ADDRESS_AWARE = 32 const IMAGE_FILE_LINE_NUMS_STRIPPED = 4 const IMAGE_FILE_LOCAL_SYMS_STRIPPED = 8 const IMAGE_FILE_MACHINE_ALPHA = 388 const IMAGE_FILE_MACHINE_ALPHA64 = 644 const IMAGE_FILE_MACHINE_AM33 = 467 const IMAGE_FILE_MACHINE_AMD64 = 34404 const IMAGE_FILE_MACHINE_ARM = 448 const IMAGE_FILE_MACHINE_ARM64 = 43620 const IMAGE_FILE_MACHINE_ARMNT = 452 const IMAGE_FILE_MACHINE_ARMV7 = 452 const IMAGE_FILE_MACHINE_AXP64 = 644 const IMAGE_FILE_MACHINE_CEE = 49390 const IMAGE_FILE_MACHINE_CEF = 3311 const IMAGE_FILE_MACHINE_EBC = 3772 const IMAGE_FILE_MACHINE_I386 = 332 const IMAGE_FILE_MACHINE_IA64 = 512 const IMAGE_FILE_MACHINE_M32R = 36929 const IMAGE_FILE_MACHINE_MIPS16 = 614 const IMAGE_FILE_MACHINE_MIPSFPU = 870 const IMAGE_FILE_MACHINE_MIPSFPU16 = 1126 const IMAGE_FILE_MACHINE_POWERPC = 496 const IMAGE_FILE_MACHINE_POWERPCFP = 497 const IMAGE_FILE_MACHINE_R10000 = 360 const IMAGE_FILE_MACHINE_R3000 = 354 const IMAGE_FILE_MACHINE_R4000 = 358 const IMAGE_FILE_MACHINE_SH3 = 418 const IMAGE_FILE_MACHINE_SH3DSP = 419 const IMAGE_FILE_MACHINE_SH3E = 420 const IMAGE_FILE_MACHINE_SH4 = 422 const IMAGE_FILE_MACHINE_SH5 = 424 const IMAGE_FILE_MACHINE_THUMB = 450 const IMAGE_FILE_MACHINE_TRICORE = 1312 const IMAGE_FILE_MACHINE_UNKNOWN = 0 const IMAGE_FILE_MACHINE_WCEMIPSV2 = 361 const IMAGE_FILE_NET_RUN_FROM_SWAP = 2048 const IMAGE_FILE_RELOCS_STRIPPED = 1 const IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP = 1024 const IMAGE_FILE_SYSTEM = 4096 const IMAGE_FILE_UP_SYSTEM_ONLY = 16384 type IMAGE_FUNCTION_ENTRY = TIMAGE_FUNCTION_ENTRY type IMAGE_FUNCTION_ENTRY64 = TIMAGE_FUNCTION_ENTRY64 type IMAGE_IA64_RUNTIME_FUNCTION_ENTRY = TIMAGE_IA64_RUNTIME_FUNCTION_ENTRY const IMAGE_ICON = 1 type IMAGE_IMPORT_BY_NAME = TIMAGE_IMPORT_BY_NAME type IMAGE_IMPORT_DESCRIPTOR = TIMAGE_IMPORT_DESCRIPTOR type IMAGE_LINENUMBER = TIMAGE_LINENUMBER type IMAGE_LOAD_CONFIG_DIRECTORY = TIMAGE_LOAD_CONFIG_DIRECTORY type IMAGE_LOAD_CONFIG_DIRECTORY32 = TIMAGE_LOAD_CONFIG_DIRECTORY32 type IMAGE_LOAD_CONFIG_DIRECTORY64 = TIMAGE_LOAD_CONFIG_DIRECTORY64 type IMAGE_NT_HEADERS = TIMAGE_NT_HEADERS type IMAGE_NT_HEADERS32 = TIMAGE_NT_HEADERS32 type IMAGE_NT_HEADERS64 = TIMAGE_NT_HEADERS64 const IMAGE_NT_OPTIONAL_HDR32_MAGIC = 267 const IMAGE_NT_OPTIONAL_HDR64_MAGIC = 523 const IMAGE_NT_SIGNATURE = 17744 const IMAGE_NUMBEROF_DIRECTORY_ENTRIES = 16 type IMAGE_OPTIONAL_HEADER = TIMAGE_OPTIONAL_HEADER type IMAGE_OPTIONAL_HEADER32 = TIMAGE_OPTIONAL_HEADER32 type IMAGE_OPTIONAL_HEADER64 = TIMAGE_OPTIONAL_HEADER64 const IMAGE_ORDINAL_FLAG32 = 2147483648 const IMAGE_ORDINAL_FLAG64 = 9223372036854775808 type IMAGE_OS2_HEADER = TIMAGE_OS2_HEADER const IMAGE_OS2_SIGNATURE = 17742 const IMAGE_OS2_SIGNATURE_LE = 17740 type IMAGE_RELOCATION = TIMAGE_RELOCATION const IMAGE_REL_ALPHA_ABSOLUTE = 0 const IMAGE_REL_ALPHA_BRADDR = 7 const IMAGE_REL_ALPHA_GPDISP = 6 const IMAGE_REL_ALPHA_GPREL32 = 3 const IMAGE_REL_ALPHA_GPRELHI = 23 const IMAGE_REL_ALPHA_GPRELLO = 22 const IMAGE_REL_ALPHA_HINT = 8 const IMAGE_REL_ALPHA_INLINE_REFLONG = 9 const IMAGE_REL_ALPHA_LITERAL = 4 const IMAGE_REL_ALPHA_LITUSE = 5 const IMAGE_REL_ALPHA_MATCH = 13 const IMAGE_REL_ALPHA_PAIR = 12 const IMAGE_REL_ALPHA_REFHI = 10 const IMAGE_REL_ALPHA_REFLO = 11 const IMAGE_REL_ALPHA_REFLONG = 1 const IMAGE_REL_ALPHA_REFLONGNB = 16 const IMAGE_REL_ALPHA_REFQ1 = 21 const IMAGE_REL_ALPHA_REFQ2 = 20 const IMAGE_REL_ALPHA_REFQ3 = 19 const IMAGE_REL_ALPHA_REFQUAD = 2 const IMAGE_REL_ALPHA_SECREL = 15 const IMAGE_REL_ALPHA_SECRELHI = 18 const IMAGE_REL_ALPHA_SECRELLO = 17 const IMAGE_REL_ALPHA_SECTION = 14 const IMAGE_REL_AMD64_ABSOLUTE = 0 const IMAGE_REL_AMD64_ADDR32 = 2 const IMAGE_REL_AMD64_ADDR32NB = 3 const IMAGE_REL_AMD64_ADDR64 = 1 const IMAGE_REL_AMD64_PAIR = 15 const IMAGE_REL_AMD64_REL32 = 4 const IMAGE_REL_AMD64_REL32_1 = 5 const IMAGE_REL_AMD64_REL32_2 = 6 const IMAGE_REL_AMD64_REL32_3 = 7 const IMAGE_REL_AMD64_REL32_4 = 8 const IMAGE_REL_AMD64_REL32_5 = 9 const IMAGE_REL_AMD64_SECREL = 11 const IMAGE_REL_AMD64_SECREL7 = 12 const IMAGE_REL_AMD64_SECTION = 10 const IMAGE_REL_AMD64_SREL32 = 14 const IMAGE_REL_AMD64_SSPAN32 = 16 const IMAGE_REL_AMD64_TOKEN = 13 const IMAGE_REL_AM_ABSOLUTE = 0 const IMAGE_REL_AM_ADDR32 = 1 const IMAGE_REL_AM_ADDR32NB = 2 const IMAGE_REL_AM_CALL32 = 3 const IMAGE_REL_AM_FUNCINFO = 4 const IMAGE_REL_AM_REL32_1 = 5 const IMAGE_REL_AM_REL32_2 = 6 const IMAGE_REL_AM_SECREL = 7 const IMAGE_REL_AM_SECTION = 8 const IMAGE_REL_AM_TOKEN = 9 const IMAGE_REL_ARM_ABSOLUTE = 0 const IMAGE_REL_ARM_ADDR32 = 1 const IMAGE_REL_ARM_ADDR32NB = 2 const IMAGE_REL_ARM_BLX11 = 9 const IMAGE_REL_ARM_BLX23T = 21 const IMAGE_REL_ARM_BLX24 = 8 const IMAGE_REL_ARM_BRANCH11 = 4 const IMAGE_REL_ARM_BRANCH20T = 18 const IMAGE_REL_ARM_BRANCH24 = 3 const IMAGE_REL_ARM_BRANCH24T = 20 const IMAGE_REL_ARM_GPREL12 = 6 const IMAGE_REL_ARM_GPREL7 = 7 const IMAGE_REL_ARM_MOV32 = 16 const IMAGE_REL_ARM_MOV32A = 16 const IMAGE_REL_ARM_MOV32T = 17 const IMAGE_REL_ARM_SECREL = 15 const IMAGE_REL_ARM_SECTION = 14 const IMAGE_REL_ARM_TOKEN = 5 const IMAGE_REL_BASED_ABSOLUTE = 0 const IMAGE_REL_BASED_ARM_MOV32 = 5 const IMAGE_REL_BASED_DIR64 = 10 const IMAGE_REL_BASED_HIGH = 1 const IMAGE_REL_BASED_HIGHADJ = 4 const IMAGE_REL_BASED_HIGHLOW = 3 const IMAGE_REL_BASED_IA64_IMM64 = 9 const IMAGE_REL_BASED_LOW = 2 const IMAGE_REL_BASED_MIPS_JMPADDR = 5 const IMAGE_REL_BASED_MIPS_JMPADDR16 = 9 const IMAGE_REL_BASED_THUMB_MOV32 = 7 const IMAGE_REL_CEE_ABSOLUTE = 0 const IMAGE_REL_CEE_ADDR32 = 1 const IMAGE_REL_CEE_ADDR32NB = 3 const IMAGE_REL_CEE_ADDR64 = 2 const IMAGE_REL_CEE_SECREL = 5 const IMAGE_REL_CEE_SECTION = 4 const IMAGE_REL_CEE_TOKEN = 6 const IMAGE_REL_CEF_ABSOLUTE = 0 const IMAGE_REL_CEF_ADDR32 = 1 const IMAGE_REL_CEF_ADDR32NB = 3 const IMAGE_REL_CEF_ADDR64 = 2 const IMAGE_REL_CEF_SECREL = 5 const IMAGE_REL_CEF_SECTION = 4 const IMAGE_REL_CEF_TOKEN = 6 const IMAGE_REL_EBC_ABSOLUTE = 0 const IMAGE_REL_EBC_ADDR32NB = 1 const IMAGE_REL_EBC_REL32 = 2 const IMAGE_REL_EBC_SECREL = 4 const IMAGE_REL_EBC_SECTION = 3 const IMAGE_REL_I386_ABSOLUTE = 0 const IMAGE_REL_I386_DIR16 = 1 const IMAGE_REL_I386_DIR32 = 6 const IMAGE_REL_I386_DIR32NB = 7 const IMAGE_REL_I386_REL16 = 2 const IMAGE_REL_I386_REL32 = 20 const IMAGE_REL_I386_SECREL = 11 const IMAGE_REL_I386_SECREL7 = 13 const IMAGE_REL_I386_SECTION = 10 const IMAGE_REL_I386_SEG12 = 9 const IMAGE_REL_I386_TOKEN = 12 const IMAGE_REL_IA64_ABSOLUTE = 0 const IMAGE_REL_IA64_ADDEND = 31 const IMAGE_REL_IA64_DIR32 = 4 const IMAGE_REL_IA64_DIR32NB = 16 const IMAGE_REL_IA64_DIR64 = 5 const IMAGE_REL_IA64_GPREL22 = 9 const IMAGE_REL_IA64_GPREL32 = 28 const IMAGE_REL_IA64_IMM14 = 1 const IMAGE_REL_IA64_IMM22 = 2 const IMAGE_REL_IA64_IMM64 = 3 const IMAGE_REL_IA64_IMMGPREL64 = 26 const IMAGE_REL_IA64_LTOFF22 = 10 const IMAGE_REL_IA64_PCREL21B = 6 const IMAGE_REL_IA64_PCREL21F = 8 const IMAGE_REL_IA64_PCREL21M = 7 const IMAGE_REL_IA64_PCREL60B = 22 const IMAGE_REL_IA64_PCREL60F = 23 const IMAGE_REL_IA64_PCREL60I = 24 const IMAGE_REL_IA64_PCREL60M = 25 const IMAGE_REL_IA64_PCREL60X = 21 const IMAGE_REL_IA64_SECREL22 = 12 const IMAGE_REL_IA64_SECREL32 = 14 const IMAGE_REL_IA64_SECREL64I = 13 const IMAGE_REL_IA64_SECTION = 11 const IMAGE_REL_IA64_SREL14 = 17 const IMAGE_REL_IA64_SREL22 = 18 const IMAGE_REL_IA64_SREL32 = 19 const IMAGE_REL_IA64_TOKEN = 27 const IMAGE_REL_IA64_UREL32 = 20 const IMAGE_REL_M32R_ABSOLUTE = 0 const IMAGE_REL_M32R_ADDR24 = 3 const IMAGE_REL_M32R_ADDR32 = 1 const IMAGE_REL_M32R_ADDR32NB = 2 const IMAGE_REL_M32R_GPREL16 = 4 const IMAGE_REL_M32R_PAIR = 11 const IMAGE_REL_M32R_PCREL16 = 6 const IMAGE_REL_M32R_PCREL24 = 5 const IMAGE_REL_M32R_PCREL8 = 7 const IMAGE_REL_M32R_REFHALF = 8 const IMAGE_REL_M32R_REFHI = 9 const IMAGE_REL_M32R_REFLO = 10 const IMAGE_REL_M32R_SECREL32 = 13 const IMAGE_REL_M32R_SECTION = 12 const IMAGE_REL_M32R_TOKEN = 14 const IMAGE_REL_MIPS_ABSOLUTE = 0 const IMAGE_REL_MIPS_GPREL = 6 const IMAGE_REL_MIPS_JMPADDR = 3 const IMAGE_REL_MIPS_JMPADDR16 = 16 const IMAGE_REL_MIPS_LITERAL = 7 const IMAGE_REL_MIPS_PAIR = 37 const IMAGE_REL_MIPS_REFHALF = 1 const IMAGE_REL_MIPS_REFHI = 4 const IMAGE_REL_MIPS_REFLO = 5 const IMAGE_REL_MIPS_REFWORD = 2 const IMAGE_REL_MIPS_REFWORDNB = 34 const IMAGE_REL_MIPS_SECREL = 11 const IMAGE_REL_MIPS_SECRELHI = 13 const IMAGE_REL_MIPS_SECRELLO = 12 const IMAGE_REL_MIPS_SECTION = 10 const IMAGE_REL_MIPS_TOKEN = 14 const IMAGE_REL_PPC_ABSOLUTE = 0 const IMAGE_REL_PPC_ADDR14 = 5 const IMAGE_REL_PPC_ADDR16 = 4 const IMAGE_REL_PPC_ADDR24 = 3 const IMAGE_REL_PPC_ADDR32 = 2 const IMAGE_REL_PPC_ADDR32NB = 10 const IMAGE_REL_PPC_ADDR64 = 1 const IMAGE_REL_PPC_BRNTAKEN = 1024 const IMAGE_REL_PPC_BRTAKEN = 512 const IMAGE_REL_PPC_GPREL = 21 const IMAGE_REL_PPC_IFGLUE = 13 const IMAGE_REL_PPC_IMGLUE = 14 const IMAGE_REL_PPC_NEG = 256 const IMAGE_REL_PPC_PAIR = 18 const IMAGE_REL_PPC_REFHI = 16 const IMAGE_REL_PPC_REFLO = 17 const IMAGE_REL_PPC_REL14 = 7 const IMAGE_REL_PPC_REL24 = 6 const IMAGE_REL_PPC_SECREL = 11 const IMAGE_REL_PPC_SECREL16 = 15 const IMAGE_REL_PPC_SECRELHI = 20 const IMAGE_REL_PPC_SECRELLO = 19 const IMAGE_REL_PPC_SECTION = 12 const IMAGE_REL_PPC_TOCDEFN = 2048 const IMAGE_REL_PPC_TOCREL14 = 9 const IMAGE_REL_PPC_TOCREL16 = 8 const IMAGE_REL_PPC_TOKEN = 22 const IMAGE_REL_PPC_TYPEMASK = 255 const IMAGE_REL_SH3_ABSOLUTE = 0 const IMAGE_REL_SH3_DIRECT16 = 1 const IMAGE_REL_SH3_DIRECT32 = 2 const IMAGE_REL_SH3_DIRECT32_NB = 16 const IMAGE_REL_SH3_DIRECT4 = 6 const IMAGE_REL_SH3_DIRECT4_LONG = 8 const IMAGE_REL_SH3_DIRECT4_WORD = 7 const IMAGE_REL_SH3_DIRECT8 = 3 const IMAGE_REL_SH3_DIRECT8_LONG = 5 const IMAGE_REL_SH3_DIRECT8_WORD = 4 const IMAGE_REL_SH3_GPREL4_LONG = 17 const IMAGE_REL_SH3_PCREL12_WORD = 11 const IMAGE_REL_SH3_PCREL8_LONG = 10 const IMAGE_REL_SH3_PCREL8_WORD = 9 const IMAGE_REL_SH3_SECREL = 15 const IMAGE_REL_SH3_SECTION = 14 const IMAGE_REL_SH3_SIZEOF_SECTION = 13 const IMAGE_REL_SH3_STARTOF_SECTION = 12 const IMAGE_REL_SH3_TOKEN = 18 const IMAGE_REL_SHM_PAIR = 24 const IMAGE_REL_SHM_PCRELPT = 19 const IMAGE_REL_SHM_REFHALF = 21 const IMAGE_REL_SHM_REFLO = 20 const IMAGE_REL_SHM_RELHALF = 23 const IMAGE_REL_SHM_RELLO = 22 const IMAGE_REL_SH_NOMODE = 32768 const IMAGE_REL_THUMB_BLX23 = 21 const IMAGE_REL_THUMB_BRANCH20 = 18 const IMAGE_REL_THUMB_BRANCH24 = 20 const IMAGE_REL_THUMB_MOV32 = 17 type IMAGE_RESOURCE_DATA_ENTRY = TIMAGE_RESOURCE_DATA_ENTRY const IMAGE_RESOURCE_DATA_IS_DIRECTORY = 2147483648 type IMAGE_RESOURCE_DIRECTORY = TIMAGE_RESOURCE_DIRECTORY type IMAGE_RESOURCE_DIRECTORY_ENTRY = TIMAGE_RESOURCE_DIRECTORY_ENTRY type IMAGE_RESOURCE_DIRECTORY_STRING = TIMAGE_RESOURCE_DIRECTORY_STRING type IMAGE_RESOURCE_DIR_STRING_U = TIMAGE_RESOURCE_DIR_STRING_U const IMAGE_RESOURCE_NAME_IS_STRING = 2147483648 type IMAGE_ROM_HEADERS = TIMAGE_ROM_HEADERS const IMAGE_ROM_OPTIONAL_HDR_MAGIC = 263 type IMAGE_ROM_OPTIONAL_HEADER = TIMAGE_ROM_OPTIONAL_HEADER type IMAGE_RUNTIME_FUNCTION_ENTRY = TIMAGE_RUNTIME_FUNCTION_ENTRY const IMAGE_SCN_ALIGN_1024BYTES = 11534336 const IMAGE_SCN_ALIGN_128BYTES = 8388608 const IMAGE_SCN_ALIGN_16BYTES = 5242880 const IMAGE_SCN_ALIGN_1BYTES = 1048576 const IMAGE_SCN_ALIGN_2048BYTES = 12582912 const IMAGE_SCN_ALIGN_256BYTES = 9437184 const IMAGE_SCN_ALIGN_2BYTES = 2097152 const IMAGE_SCN_ALIGN_32BYTES = 6291456 const IMAGE_SCN_ALIGN_4096BYTES = 13631488 const IMAGE_SCN_ALIGN_4BYTES = 3145728 const IMAGE_SCN_ALIGN_512BYTES = 10485760 const IMAGE_SCN_ALIGN_64BYTES = 7340032 const IMAGE_SCN_ALIGN_8192BYTES = 14680064 const IMAGE_SCN_ALIGN_8BYTES = 4194304 const IMAGE_SCN_ALIGN_MASK = 15728640 const IMAGE_SCN_CNT_CODE = 32 const IMAGE_SCN_CNT_INITIALIZED_DATA = 64 const IMAGE_SCN_CNT_UNINITIALIZED_DATA = 128 const IMAGE_SCN_GPREL = 32768 const IMAGE_SCN_LNK_COMDAT = 4096 const IMAGE_SCN_LNK_INFO = 512 const IMAGE_SCN_LNK_NRELOC_OVFL = 16777216 const IMAGE_SCN_LNK_OTHER = 256 const IMAGE_SCN_LNK_REMOVE = 2048 const IMAGE_SCN_MEM_16BIT = 131072 const IMAGE_SCN_MEM_DISCARDABLE = 33554432 const IMAGE_SCN_MEM_EXECUTE = 536870912 const IMAGE_SCN_MEM_FARDATA = 32768 const IMAGE_SCN_MEM_LOCKED = 262144 const IMAGE_SCN_MEM_NOT_CACHED = 67108864 const IMAGE_SCN_MEM_NOT_PAGED = 134217728 const IMAGE_SCN_MEM_PRELOAD = 524288 const IMAGE_SCN_MEM_PURGEABLE = 131072 const IMAGE_SCN_MEM_READ = 1073741824 const IMAGE_SCN_MEM_SHARED = 268435456 const IMAGE_SCN_MEM_WRITE = 2147483648 const IMAGE_SCN_NO_DEFER_SPEC_EXC = 16384 const IMAGE_SCN_SCALE_INDEX = 1 const IMAGE_SCN_TYPE_NO_PAD = 8 type IMAGE_SECTION_HEADER = TIMAGE_SECTION_HEADER const IMAGE_SEPARATE_DEBUG_FLAGS_MASK = 32768 type IMAGE_SEPARATE_DEBUG_HEADER = TIMAGE_SEPARATE_DEBUG_HEADER const IMAGE_SEPARATE_DEBUG_MISMATCH = 32768 const IMAGE_SEPARATE_DEBUG_SIGNATURE = 18756 const IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR = 60 const IMAGE_SIZEOF_AUX_SYMBOL = 18 const IMAGE_SIZEOF_BASE_RELOCATION = 8 const IMAGE_SIZEOF_FILE_HEADER = 20 const IMAGE_SIZEOF_LINENUMBER = 6 const IMAGE_SIZEOF_NT_OPTIONAL32_HEADER = 224 const IMAGE_SIZEOF_NT_OPTIONAL64_HEADER = 240 const IMAGE_SIZEOF_RELOCATION = 10 const IMAGE_SIZEOF_ROM_OPTIONAL_HEADER = 56 const IMAGE_SIZEOF_SECTION_HEADER = 40 const IMAGE_SIZEOF_SHORT_NAME = 8 const IMAGE_SIZEOF_STD_OPTIONAL_HEADER = 28 const IMAGE_SIZEOF_SYMBOL = 18 const IMAGE_SUBSYSTEM_EFI_APPLICATION = 10 const IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER = 11 const IMAGE_SUBSYSTEM_EFI_ROM = 13 const IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER = 12 const IMAGE_SUBSYSTEM_NATIVE = 1 const IMAGE_SUBSYSTEM_NATIVE_WINDOWS = 8 const IMAGE_SUBSYSTEM_OS2_CUI = 5 const IMAGE_SUBSYSTEM_POSIX_CUI = 7 const IMAGE_SUBSYSTEM_UNKNOWN = 0 const IMAGE_SUBSYSTEM_WINDOWS_BOOT_APPLICATION = 16 const IMAGE_SUBSYSTEM_WINDOWS_CE_GUI = 9 const IMAGE_SUBSYSTEM_WINDOWS_CUI = 3 const IMAGE_SUBSYSTEM_WINDOWS_GUI = 2 const IMAGE_SUBSYSTEM_XBOX = 14 type IMAGE_SYMBOL = TIMAGE_SYMBOL type IMAGE_SYMBOL_EX = TIMAGE_SYMBOL_EX const IMAGE_SYM_ABSOLUTE = -1 const IMAGE_SYM_CLASS_ARGUMENT = 9 const IMAGE_SYM_CLASS_AUTOMATIC = 1 const IMAGE_SYM_CLASS_BIT_FIELD = 18 const IMAGE_SYM_CLASS_BLOCK = 100 const IMAGE_SYM_CLASS_CLR_TOKEN = 107 const IMAGE_SYM_CLASS_END_OF_FUNCTION = -1 const IMAGE_SYM_CLASS_END_OF_STRUCT = 102 const IMAGE_SYM_CLASS_ENUM_TAG = 15 const IMAGE_SYM_CLASS_EXTERNAL = 2 const IMAGE_SYM_CLASS_EXTERNAL_DEF = 5 const IMAGE_SYM_CLASS_FAR_EXTERNAL = 68 const IMAGE_SYM_CLASS_FILE = 103 const IMAGE_SYM_CLASS_FUNCTION = 101 const IMAGE_SYM_CLASS_LABEL = 6 const IMAGE_SYM_CLASS_MEMBER_OF_ENUM = 16 const IMAGE_SYM_CLASS_MEMBER_OF_STRUCT = 8 const IMAGE_SYM_CLASS_MEMBER_OF_UNION = 11 const IMAGE_SYM_CLASS_NULL = 0 const IMAGE_SYM_CLASS_REGISTER = 4 const IMAGE_SYM_CLASS_REGISTER_PARAM = 17 const IMAGE_SYM_CLASS_SECTION = 104 const IMAGE_SYM_CLASS_STATIC = 3 const IMAGE_SYM_CLASS_STRUCT_TAG = 10 const IMAGE_SYM_CLASS_TYPE_DEFINITION = 13 const IMAGE_SYM_CLASS_UNDEFINED_LABEL = 7 const IMAGE_SYM_CLASS_UNDEFINED_STATIC = 14 const IMAGE_SYM_CLASS_UNION_TAG = 12 const IMAGE_SYM_CLASS_WEAK_EXTERNAL = 105 const IMAGE_SYM_DEBUG = -2 const IMAGE_SYM_DTYPE_ARRAY = 3 const IMAGE_SYM_DTYPE_FUNCTION = 2 const IMAGE_SYM_DTYPE_NULL = 0 const IMAGE_SYM_DTYPE_POINTER = 1 const IMAGE_SYM_SECTION_MAX = 65279 const IMAGE_SYM_SECTION_MAX_EX = 2147483647 const IMAGE_SYM_TYPE_BYTE = 12 const IMAGE_SYM_TYPE_CHAR = 2 const IMAGE_SYM_TYPE_DOUBLE = 7 const IMAGE_SYM_TYPE_DWORD = 15 const IMAGE_SYM_TYPE_ENUM = 10 const IMAGE_SYM_TYPE_FLOAT = 6 const IMAGE_SYM_TYPE_INT = 4 const IMAGE_SYM_TYPE_LONG = 5 const IMAGE_SYM_TYPE_MOE = 11 const IMAGE_SYM_TYPE_NULL = 0 const IMAGE_SYM_TYPE_PCODE = 32768 const IMAGE_SYM_TYPE_SHORT = 3 const IMAGE_SYM_TYPE_STRUCT = 8 const IMAGE_SYM_TYPE_UINT = 14 const IMAGE_SYM_TYPE_UNION = 9 const IMAGE_SYM_TYPE_VOID = 1 const IMAGE_SYM_TYPE_WORD = 13 type IMAGE_THUNK_DATA = TIMAGE_THUNK_DATA type IMAGE_THUNK_DATA32 = TIMAGE_THUNK_DATA32 type IMAGE_THUNK_DATA64 = TIMAGE_THUNK_DATA64 type IMAGE_TLS_DIRECTORY = TIMAGE_TLS_DIRECTORY type IMAGE_TLS_DIRECTORY32 = TIMAGE_TLS_DIRECTORY32 type IMAGE_TLS_DIRECTORY64 = TIMAGE_TLS_DIRECTORY64 type IMAGE_VXD_HEADER = TIMAGE_VXD_HEADER const IMAGE_VXD_SIGNATURE = 17740 const IMAGE_WEAK_EXTERN_SEARCH_ALIAS = 3 const IMAGE_WEAK_EXTERN_SEARCH_LIBRARY = 2 const IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY = 1 type IMCENUMPROC = TIMCENUMPROC const IMC_CLOSESTATUSWINDOW = 33 const IMC_GETCANDIDATEPOS = 7 const IMC_GETCOMPOSITIONFONT = 9 const IMC_GETCOMPOSITIONWINDOW = 11 const IMC_GETSTATUSWINDOWPOS = 15 const IMC_OPENSTATUSWINDOW = 34 const IMC_SETCANDIDATEPOS = 8 const IMC_SETCOMPOSITIONFONT = 10 const IMC_SETCOMPOSITIONWINDOW = 12 const IMC_SETSTATUSWINDOWPOS = 16 type IMECHARPOSITION = TIMECHARPOSITION type IMEMENUITEMINFO = TIMEMENUITEMINFO type IMEMENUITEMINFOA = TIMEMENUITEMINFOA type IMEMENUITEMINFOW = TIMEMENUITEMINFOW const IMEMENUITEM_STRING_SIZE = 80 const IMEVER_0310 = 196618 const IMEVER_0400 = 262144 const IME_CAND_CODE = 2 const IME_CAND_MEANING = 3 const IME_CAND_RADICAL = 4 const IME_CAND_READ = 1 const IME_CAND_STROKE = 5 const IME_CAND_UNKNOWN = 0 const IME_CHOTKEY_IME_NONIME_TOGGLE = 16 const IME_CHOTKEY_SHAPE_TOGGLE = 17 const IME_CHOTKEY_SYMBOL_TOGGLE = 18 const IME_CMODE_ALPHANUMERIC = 0 const IME_CMODE_CHARCODE = 32 const IME_CMODE_CHINESE = 1 const IME_CMODE_EUDC = 512 const IME_CMODE_FIXED = 2048 const IME_CMODE_FULLSHAPE = 8 const IME_CMODE_HANGEUL = 1 const IME_CMODE_HANGUL = 1 const IME_CMODE_HANJACONVERT = 64 const IME_CMODE_JAPANESE = 1 const IME_CMODE_KATAKANA = 2 const IME_CMODE_LANGUAGE = 3 const IME_CMODE_NATIVE = 1 const IME_CMODE_NOCONVERSION = 256 const IME_CMODE_RESERVED = 4026531840 const IME_CMODE_ROMAN = 16 const IME_CMODE_SOFTKBD = 128 const IME_CMODE_SYMBOL = 1024 const IME_CONFIG_GENERAL = 1 const IME_CONFIG_REGISTERWORD = 2 const IME_CONFIG_SELECTDICTIONARY = 3 const IME_ESC_AUTOMATA = 4105 const IME_ESC_GETHELPFILENAME = 4107 const IME_ESC_GET_EUDC_DICTIONARY = 4099 const IME_ESC_HANJA_MODE = 4104 const IME_ESC_IME_NAME = 4102 const IME_ESC_MAX_KEY = 4101 const IME_ESC_PRIVATE_FIRST = 2048 const IME_ESC_PRIVATE_HOTKEY = 4106 const IME_ESC_PRIVATE_LAST = 4095 const IME_ESC_QUERY_SUPPORT = 3 const IME_ESC_RESERVED_FIRST = 4 const IME_ESC_RESERVED_LAST = 2047 const IME_ESC_SEQUENCE_TO_INTERNAL = 4097 const IME_ESC_SET_EUDC_DICTIONARY = 4100 const IME_ESC_SYNC_HOTKEY = 4103 const IME_HOTKEY_DSWITCH_FIRST = 256 const IME_HOTKEY_DSWITCH_LAST = 287 const IME_HOTKEY_PRIVATE_FIRST = 512 const IME_HOTKEY_PRIVATE_LAST = 543 const IME_ITHOTKEY_PREVIOUS_COMPOSITION = 513 const IME_ITHOTKEY_RECONVERTSTRING = 515 const IME_ITHOTKEY_RESEND_RESULTSTR = 512 const IME_ITHOTKEY_UISTYLE_TOGGLE = 514 const IME_JHOTKEY_CLOSE_OPEN = 48 const IME_KHOTKEY_ENGLISH = 82 const IME_KHOTKEY_HANJACONVERT = 81 const IME_KHOTKEY_SHAPE_TOGGLE = 80 const IME_PROP_AT_CARET = 65536 const IME_PROP_CANDLIST_START_FROM_1 = 262144 const IME_PROP_COMPLETE_ON_UNSELECT = 1048576 const IME_PROP_SPECIAL_UI = 131072 const IME_PROP_UNICODE = 524288 const IME_REGWORD_STYLE_EUDC = 1 const IME_REGWORD_STYLE_USER_FIRST = 2147483648 const IME_REGWORD_STYLE_USER_LAST = 4294967295 const IME_SMODE_AUTOMATIC = 4 const IME_SMODE_CONVERSATION = 16 const IME_SMODE_NONE = 0 const IME_SMODE_PHRASEPREDICT = 8 const IME_SMODE_PLAURALCLAUSE = 1 const IME_SMODE_RESERVED = 61440 const IME_SMODE_SINGLECONVERT = 2 const IME_THOTKEY_IME_NONIME_TOGGLE = 112 const IME_THOTKEY_SHAPE_TOGGLE = 113 const IME_THOTKEY_SYMBOL_TOGGLE = 114 const IMFS_CHECKED = 8 const IMFS_DEFAULT = 4096 const IMFS_DISABLED = 3 const IMFS_ENABLED = 0 const IMFS_GRAYED = 3 const IMFS_HILITE = 128 const IMFS_UNCHECKED = 0 const IMFS_UNHILITE = 0 const IMFT_RADIOCHECK = 1 const IMFT_SEPARATOR = 2 const IMFT_SUBMENU = 4 const IMM_ERROR_GENERAL = -2 const IMM_ERROR_NODATA = -1 const IMN_CHANGECANDIDATE = 3 const IMN_CLOSECANDIDATE = 4 const IMN_CLOSESTATUSWINDOW = 1 const IMN_GUIDELINE = 13 const IMN_OPENCANDIDATE = 5 const IMN_OPENSTATUSWINDOW = 2 const IMN_PRIVATE = 14 const IMN_SETCANDIDATEPOS = 9 const IMN_SETCOMPOSITIONFONT = 10 const IMN_SETCOMPOSITIONWINDOW = 11 const IMN_SETCONVERSIONMODE = 6 const IMN_SETOPENSTATUS = 8 const IMN_SETSENTENCEMODE = 7 const IMN_SETSTATUSWINDOWPOS = 12 const IMPLINK_HIGHEXPER = 158 const IMPLINK_IP = 155 const IMPLINK_LOWEXPER = 156 const IMPLTYPEFLAG_FDEFAULT = 1 const IMPLTYPEFLAG_FDEFAULTVTABLE = 8 const IMPLTYPEFLAG_FRESTRICTED = 4 const IMPLTYPEFLAG_FSOURCE = 2 const IMPORT_OBJECT_HDR_SIG2 = 65535 type IMPORT_OBJECT_HEADER = TIMPORT_OBJECT_HEADER type IMPORT_OBJECT_NAME_TYPE = TIMPORT_OBJECT_NAME_TYPE type IMPORT_OBJECT_TYPE = TIMPORT_OBJECT_TYPE const IMR_CANDIDATEWINDOW = 2 const IMR_COMPOSITIONFONT = 3 const IMR_COMPOSITIONWINDOW = 1 const IMR_CONFIRMRECONVERTSTRING = 5 const IMR_DOCUMENTFEED = 7 const IMR_QUERYCHARPOSITION = 6 const IMR_RECONVERTSTRING = 4 type IMalloc = TIMalloc type IMallocSpy = TIMallocSpy type IMallocSpyVtbl = TIMallocSpyVtbl type IMallocVtbl = TIMallocVtbl type IMarshal = TIMarshal type IMarshal2 = TIMarshal2 type IMarshal2Vtbl = TIMarshal2Vtbl type IMarshalVtbl = TIMarshalVtbl type IMarshalingStream = TIMarshalingStream type IMarshalingStreamVtbl = TIMarshalingStreamVtbl type IMessageFilter = TIMessageFilter type IMessageFilterVtbl = TIMessageFilterVtbl type IMoniker = TIMoniker type IMonikerProp = TIMonikerProp type IMonikerPropVtbl = TIMonikerPropVtbl type IMonikerVtbl = TIMonikerVtbl type IMultiQI = TIMultiQI type IMultiQIVtbl = TIMultiQIVtbl const INADDR_LOOPBACK = 2130706433 const INADDR_NONE = 4294967295 const INDEXID_CONTAINER = 0 const INDEXID_OBJECT = 0 const INET_E_DEFAULT_ACTION = "INET_E_USE_DEFAULT_PROTOCOLHANDLER" const INET_E_ERROR_LAST = "INET_E_BLOCKED_PLUGGABLE_PROTOCOL" const INFINITE = 4294967295 const INHERITED_ACE = 16 const INHERIT_CALLER_PRIORITY = 131072 const INHERIT_ONLY_ACE = 8 const INHERIT_PARENT_AFFINITY = 65536 type INIT_ONCE = TINIT_ONCE const INIT_ONCE_ASYNC = 2 const INIT_ONCE_CHECK_ONLY = 1 const INIT_ONCE_CTX_RESERVED_BITS = 2 const INIT_ONCE_INIT_FAILED = 4 const INIT_ONCE_STATIC_INIT = "RTL_RUN_ONCE_INIT" const INPLACE_E_FIRST = 2147746208 const INPLACE_E_LAST = 2147746223 const INPLACE_S_FIRST = 262560 const INPLACE_S_LAST = 262575 type INPUT = TINPUT const INPUTLANGCHANGE_BACKWARD = 4 const INPUTLANGCHANGE_FORWARD = 2 const INPUTLANGCHANGE_SYSCHARSET = 1 const INPUT_HARDWARE = 2 type INPUT_INJECTION_VALUE = TINPUT_INJECTION_VALUE const INPUT_KEYBOARD = 1 type INPUT_MESSAGE_DEVICE_TYPE = TINPUT_MESSAGE_DEVICE_TYPE type INPUT_MESSAGE_ORIGIN_ID = TINPUT_MESSAGE_ORIGIN_ID type INPUT_MESSAGE_SOURCE = TINPUT_MESSAGE_SOURCE const INPUT_MOUSE = 0 type INPUT_RECORD = TINPUT_RECORD type INPUT_TRANSFORM = TINPUT_TRANSFORM type INT = TINT type INT16 = TINT16 type INT32 = TINT32 type INT64 = TINT64 type INT8 = TINT8 type INTERFACEDATA = TINTERFACEDATA type INTERFACEINFO = TINTERFACEINFO const INTERNATIONAL_USAGE = 1 type INTERNETFEATURELIST = TINTERNETFEATURELIST type INT_PTR = TINT_PTR const INVALID_FILE_ATTRIBUTES = -1 const INVALID_OS_COUNT = 65535 const INVALID_P_ROOT_SECURITY_ID = -1 const INVALID_SET_FILE_POINTER = -1 type INVOKEKIND = TINVOKEKIND type IN_ADDR = TIN_ADDR const IN_CLASSA_HOST = 16777215 const IN_CLASSA_MAX = 128 const IN_CLASSA_NET = 4278190080 const IN_CLASSA_NSHIFT = 24 const IN_CLASSB_HOST = 65535 const IN_CLASSB_MAX = 65536 const IN_CLASSB_NET = 4294901760 const IN_CLASSB_NSHIFT = 16 const IN_CLASSC_HOST = 255 const IN_CLASSC_NET = 4294967040 const IN_CLASSC_NSHIFT = 8 type INoMarshal = TINoMarshal type INoMarshalVtbl = TINoMarshalVtbl const IOCPARM_MASK = 127 const IOCTL_CHANGER_BASE = 48 const IOCTL_CHANGER_EXCHANGE_MEDIUM = 3162144 const IOCTL_CHANGER_GET_ELEMENT_STATUS = 3194900 const IOCTL_CHANGER_GET_PARAMETERS = 3162112 const IOCTL_CHANGER_GET_PRODUCT_DATA = 3162120 const IOCTL_CHANGER_GET_STATUS = 3162116 const IOCTL_CHANGER_INITIALIZE_ELEMENT_STATUS = 3162136 const IOCTL_CHANGER_MOVE_MEDIUM = 3162148 const IOCTL_CHANGER_QUERY_VOLUME_TAGS = 3194924 const IOCTL_CHANGER_REINITIALIZE_TRANSPORT = 3162152 const IOCTL_CHANGER_SET_ACCESS = 3194896 const IOCTL_CHANGER_SET_POSITION = 3162140 const IOCTL_DISK_BASE = 7 const IOCTL_DISK_CHECK_VERIFY = 477184 const IOCTL_DISK_CONTROLLER_NUMBER = 458820 const IOCTL_DISK_CREATE_DISK = 507992 const IOCTL_DISK_DELETE_DRIVE_LAYOUT = 508160 const IOCTL_DISK_EJECT_MEDIA = 477192 const IOCTL_DISK_FIND_NEW_DEVICES = 477208 const IOCTL_DISK_FORMAT_DRIVE = 508876 const IOCTL_DISK_FORMAT_TRACKS = 507928 const IOCTL_DISK_FORMAT_TRACKS_EX = 507948 const IOCTL_DISK_GET_CACHE_INFORMATION = 475348 const IOCTL_DISK_GET_DRIVE_GEOMETRY = 458752 const IOCTL_DISK_GET_DRIVE_GEOMETRY_EX = 458912 const IOCTL_DISK_GET_DRIVE_LAYOUT = 475148 const IOCTL_DISK_GET_DRIVE_LAYOUT_EX = 458832 const IOCTL_DISK_GET_LENGTH_INFO = 475228 const IOCTL_DISK_GET_MEDIA_TYPES = 461824 const IOCTL_DISK_GET_PARTITION_INFO = 475140 const IOCTL_DISK_GET_PARTITION_INFO_EX = 458824 const IOCTL_DISK_GROW_PARTITION = 508112 const IOCTL_DISK_HISTOGRAM_DATA = 458804 const IOCTL_DISK_HISTOGRAM_RESET = 458808 const IOCTL_DISK_HISTOGRAM_STRUCTURE = 458800 const IOCTL_DISK_IS_WRITABLE = 458788 const IOCTL_DISK_LOAD_MEDIA = 477196 const IOCTL_DISK_LOGGING = 458792 const IOCTL_DISK_MEDIA_REMOVAL = 477188 const IOCTL_DISK_PERFORMANCE = 458784 const IOCTL_DISK_PERFORMANCE_OFF = 458848 const IOCTL_DISK_REASSIGN_BLOCKS = 507932 const IOCTL_DISK_REASSIGN_BLOCKS_EX = 508068 const IOCTL_DISK_RELEASE = 477204 const IOCTL_DISK_REQUEST_DATA = 458816 const IOCTL_DISK_REQUEST_STRUCTURE = 458812 const IOCTL_DISK_RESERVE = 477200 const IOCTL_DISK_RESET_SNAPSHOT_INFO = 508432 const IOCTL_DISK_SENSE_DEVICE = 459744 const IOCTL_DISK_SET_CACHE_INFORMATION = 508120 const IOCTL_DISK_SET_DRIVE_LAYOUT = 507920 const IOCTL_DISK_SET_DRIVE_LAYOUT_EX = 507988 const IOCTL_DISK_SET_PARTITION_INFO = 507912 const IOCTL_DISK_SET_PARTITION_INFO_EX = 507980 const IOCTL_DISK_UPDATE_DRIVE_SIZE = 508104 const IOCTL_DISK_UPDATE_PROPERTIES = 459072 const IOCTL_DISK_VERIFY = 458772 const IOCTL_SERENUM_EXPOSE_HARDWARE = 3604992 const IOCTL_SERENUM_GET_PORT_NAME = 3605004 const IOCTL_SERENUM_PORT_DESC = 3605000 const IOCTL_SERENUM_REMOVE_HARDWARE = 3604996 const IOCTL_SERIAL_LSRMST_INSERT = 1769596 const IOCTL_SMARTCARD_CONFISCATE = 3211280 const IOCTL_SMARTCARD_EJECT = 3211288 const IOCTL_SMARTCARD_GET_ATTRIBUTE = 3211272 const IOCTL_SMARTCARD_GET_LAST_ERROR = 3211324 const IOCTL_SMARTCARD_GET_PERF_CNTR = 3211328 const IOCTL_SMARTCARD_GET_STATE = 3211320 const IOCTL_SMARTCARD_IS_ABSENT = 3211308 const IOCTL_SMARTCARD_IS_PRESENT = 3211304 const IOCTL_SMARTCARD_POWER = 3211268 const IOCTL_SMARTCARD_SET_ATTRIBUTE = 3211276 const IOCTL_SMARTCARD_SET_PROTOCOL = 3211312 const IOCTL_SMARTCARD_SWALLOW = 3211292 const IOCTL_SMARTCARD_TRANSMIT = 3211284 const IOCTL_STORAGE_ALLOCATE_BC_STREAM = 3004420 const IOCTL_STORAGE_ATTRIBUTE_MANAGEMENT = 3005596 const IOCTL_STORAGE_BASE = 45 const IOCTL_STORAGE_BC_VERSION = 1 const IOCTL_STORAGE_BREAK_RESERVATION = 2969620 const IOCTL_STORAGE_CHECK_PRIORITY_HINT_SUPPORT = 2955392 const IOCTL_STORAGE_CHECK_VERIFY = 2967552 const IOCTL_STORAGE_CHECK_VERIFY2 = 2951168 const IOCTL_STORAGE_DEVICE_POWER_CAP = 2956436 const IOCTL_STORAGE_DEVICE_TELEMETRY_NOTIFY = 3002820 const IOCTL_STORAGE_DEVICE_TELEMETRY_QUERY_CAPS = 3002824 const IOCTL_STORAGE_DIAGNOSTIC = 2956448 const IOCTL_STORAGE_EJECTION_CONTROL = 2951488 const IOCTL_STORAGE_EJECT_MEDIA = 2967560 const IOCTL_STORAGE_ENABLE_IDLE_POWER = 2956416 const IOCTL_STORAGE_EVENT_NOTIFICATION = 2956432 const IOCTL_STORAGE_FAILURE_PREDICTION_CONFIG = 2953476 const IOCTL_STORAGE_FIND_NEW_DEVICES = 2967576 const IOCTL_STORAGE_FIRMWARE_ACTIVATE = 3005448 const IOCTL_STORAGE_FIRMWARE_DOWNLOAD = 3005444 const IOCTL_STORAGE_FIRMWARE_GET_INFO = 2956288 const IOCTL_STORAGE_FREE_BC_STREAM = 3004424 const IOCTL_STORAGE_GET_BC_PROPERTIES = 2971648 const IOCTL_STORAGE_GET_COUNTERS = 2953480 const IOCTL_STORAGE_GET_DEVICE_INTERNAL_LOG = 2956484 const IOCTL_STORAGE_GET_DEVICE_NUMBER = 2953344 const IOCTL_STORAGE_GET_DEVICE_NUMBER_EX = 2953348 const IOCTL_STORAGE_GET_DEVICE_TELEMETRY = 3002816 const IOCTL_STORAGE_GET_DEVICE_TELEMETRY_RAW = 3002828 const IOCTL_STORAGE_GET_HOTPLUG_INFO = 2952212 const IOCTL_STORAGE_GET_IDLE_POWERUP_REASON = 2956420 const IOCTL_STORAGE_GET_LB_PROVISIONING_MAP_RESOURCES = 2970632 const IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER = 2952208 const IOCTL_STORAGE_GET_MEDIA_TYPES = 2952192 const IOCTL_STORAGE_GET_MEDIA_TYPES_EX = 2952196 const IOCTL_STORAGE_GET_PHYSICAL_ELEMENT_STATUS = 2956452 const IOCTL_STORAGE_LOAD_MEDIA = 2967564 const IOCTL_STORAGE_LOAD_MEDIA2 = 2951180 const IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES = 2987012 const IOCTL_STORAGE_MCN_CONTROL = 2951492 const IOCTL_STORAGE_MEDIA_REMOVAL = 2967556 const IOCTL_STORAGE_PERSISTENT_RESERVE_IN = 2969624 const IOCTL_STORAGE_PERSISTENT_RESERVE_OUT = 3002396 const IOCTL_STORAGE_POWER_ACTIVE = 2956424 const IOCTL_STORAGE_POWER_IDLE = 2956428 const IOCTL_STORAGE_PREDICT_FAILURE = 2953472 const IOCTL_STORAGE_PROTOCOL_COMMAND = 3003328 const IOCTL_STORAGE_QUERY_PROPERTY = 2954240 const IOCTL_STORAGE_READ_CAPACITY = 2969920 const IOCTL_STORAGE_REINITIALIZE_MEDIA = 2987584 const IOCTL_STORAGE_RELEASE = 2967572 const IOCTL_STORAGE_REMOVE_ELEMENT_AND_TRUNCATE = 2956480 const IOCTL_STORAGE_RESERVE = 2967568 const IOCTL_STORAGE_RESET_BUS = 2969600 const IOCTL_STORAGE_RESET_DEVICE = 2969604 const IOCTL_STORAGE_RPMB_COMMAND = 2956440 const IOCTL_STORAGE_SET_HOTPLUG_INFO = 3001368 const IOCTL_STORAGE_SET_PROPERTY = 2987004 const IOCTL_STORAGE_SET_TEMPERATURE_THRESHOLD = 3002880 const IOCTL_STORAGE_START_DATA_INTEGRITY_CHECK = 3004548 const IOCTL_STORAGE_STOP_DATA_INTEGRITY_CHECK = 3004552 const IOInet = 0 const IOInetBindInfo = 0 const IOInetBindInfoEx = 0 const IOInetPriority = 0 const IOInetProtocol = 0 const IOInetProtocolEx = 0 const IOInetProtocolInfo = 0 const IOInetProtocolRoot = 0 const IOInetProtocolSink = 0 const IOInetProtocolSinkStackable = 0 const IOInetSession = 0 const IOInetThreadSwitch = 0 const IO_COMPLETION_ALL_ACCESS = 2031619 const IO_COMPLETION_MODIFY_STATE = 2 type IO_COUNTERS = TIO_COUNTERS const IO_REPARSE_TAG_AF_UNIX = 2147483683 const IO_REPARSE_TAG_APPEXECLINK = 2147483675 const IO_REPARSE_TAG_CLOUD = 2415919130 const IO_REPARSE_TAG_CLOUD_1 = 2415923226 const IO_REPARSE_TAG_CLOUD_2 = 2415927322 const IO_REPARSE_TAG_CLOUD_3 = 2415931418 const IO_REPARSE_TAG_CLOUD_4 = 2415935514 const IO_REPARSE_TAG_CLOUD_5 = 2415939610 const IO_REPARSE_TAG_CLOUD_6 = 2415943706 const IO_REPARSE_TAG_CLOUD_7 = 2415947802 const IO_REPARSE_TAG_CLOUD_8 = 2415951898 const IO_REPARSE_TAG_CLOUD_9 = 2415955994 const IO_REPARSE_TAG_CLOUD_A = 2415960090 const IO_REPARSE_TAG_CLOUD_B = 2415964186 const IO_REPARSE_TAG_CLOUD_C = 2415968282 const IO_REPARSE_TAG_CLOUD_D = 2415972378 const IO_REPARSE_TAG_CLOUD_E = 2415976474 const IO_REPARSE_TAG_CLOUD_F = 2415980570 const IO_REPARSE_TAG_CLOUD_MASK = 61440 const IO_REPARSE_TAG_CSV = 2147483657 const IO_REPARSE_TAG_DEDUP = 2147483667 const IO_REPARSE_TAG_DFS = 2147483658 const IO_REPARSE_TAG_DFSR = 2147483666 const IO_REPARSE_TAG_DRIVE_EXTENDER = 2147483653 const IO_REPARSE_TAG_FILE_PLACEHOLDER = 2147483669 const IO_REPARSE_TAG_FILTER_MANAGER = 2147483659 const IO_REPARSE_TAG_GLOBAL_REPARSE = 2684354585 const IO_REPARSE_TAG_HSM = 3221225476 const IO_REPARSE_TAG_HSM2 = 2147483654 const IO_REPARSE_TAG_IIS_CACHE = 2684354576 const IO_REPARSE_TAG_MOUNT_POINT = 2684354563 const IO_REPARSE_TAG_NFS = 2147483668 const IO_REPARSE_TAG_ONEDRIVE = 2147483681 const IO_REPARSE_TAG_PROJFS = 2415919132 const IO_REPARSE_TAG_PROJFS_TOMBSTONE = 2684354594 const IO_REPARSE_TAG_RESERVED_ONE = 1 const IO_REPARSE_TAG_RESERVED_RANGE = 1 const IO_REPARSE_TAG_RESERVED_ZERO = 0 const IO_REPARSE_TAG_SIS = 2147483655 const IO_REPARSE_TAG_STORAGE_SYNC = 2147483678 const IO_REPARSE_TAG_SYMLINK = 2684354572 const IO_REPARSE_TAG_UNHANDLED = 2147483680 const IO_REPARSE_TAG_WCI = 2147483672 const IO_REPARSE_TAG_WCI_1 = 2415923224 const IO_REPARSE_TAG_WCI_TOMBSTONE = 2684354591 const IO_REPARSE_TAG_WIM = 2147483656 const IO_REPARSE_TAG_WOF = 2147483671 type IOleAdviseHolder = TIOleAdviseHolder type IOleAdviseHolderVtbl = TIOleAdviseHolderVtbl type IOleCache = TIOleCache type IOleCache2 = TIOleCache2 type IOleCache2Vtbl = TIOleCache2Vtbl type IOleCacheControl = TIOleCacheControl type IOleCacheControlVtbl = TIOleCacheControlVtbl type IOleCacheVtbl = TIOleCacheVtbl type IOleClientSite = TIOleClientSite type IOleClientSiteVtbl = TIOleClientSiteVtbl type IOleContainer = TIOleContainer type IOleContainerVtbl = TIOleContainerVtbl type IOleInPlaceActiveObject = TIOleInPlaceActiveObject type IOleInPlaceActiveObjectVtbl = TIOleInPlaceActiveObjectVtbl type IOleInPlaceFrame = TIOleInPlaceFrame type IOleInPlaceFrameVtbl = TIOleInPlaceFrameVtbl type IOleInPlaceObject = TIOleInPlaceObject type IOleInPlaceObjectVtbl = TIOleInPlaceObjectVtbl type IOleInPlaceSite = TIOleInPlaceSite type IOleInPlaceSiteVtbl = TIOleInPlaceSiteVtbl type IOleInPlaceUIWindow = TIOleInPlaceUIWindow type IOleInPlaceUIWindowVtbl = TIOleInPlaceUIWindowVtbl type IOleItemContainer = TIOleItemContainer type IOleItemContainerVtbl = TIOleItemContainerVtbl type IOleLink = TIOleLink type IOleLinkVtbl = TIOleLinkVtbl type IOleObject = TIOleObject type IOleObjectVtbl = TIOleObjectVtbl type IOleWindow = TIOleWindow type IOleWindowVtbl = TIOleWindowVtbl type IOplockStorage = TIOplockStorage type IOplockStorageVtbl = TIOplockStorageVtbl const IPPORT_BIFFUDP = 512 const IPPORT_CMDSERVER = 514 const IPPORT_DAYTIME = 13 const IPPORT_DISCARD = 9 const IPPORT_ECHO = 7 const IPPORT_EFSSERVER = 520 const IPPORT_EXECSERVER = 512 const IPPORT_FINGER = 79 const IPPORT_FTP = 21 const IPPORT_LOGINSERVER = 513 const IPPORT_MTP = 57 const IPPORT_NAMESERVER = 42 const IPPORT_NETSTAT = 15 const IPPORT_RESERVED = 1024 const IPPORT_RJE = 77 const IPPORT_ROUTESERVER = 520 const IPPORT_SMTP = 25 const IPPORT_SUPDUP = 95 const IPPORT_SYSTAT = 11 const IPPORT_TELNET = 23 const IPPORT_TFTP = 69 const IPPORT_TIMESERVER = 37 const IPPORT_TTYLINK = 87 const IPPORT_WHOIS = 43 const IPPORT_WHOSERVER = 513 const IPPROTO_GGP = 3 const IPPROTO_ICMP = 1 const IPPROTO_IDP = 22 const IPPROTO_IGMP = 2 const IPPROTO_IP = 0 const IPPROTO_MAX = 256 const IPPROTO_ND = 77 const IPPROTO_PUP = 12 const IPPROTO_RAW = 255 const IPPROTO_TCP = 6 const IPPROTO_UDP = 17 type IPSFactoryBuffer = TIPSFactoryBuffer type IPSFactoryBufferVtbl = TIPSFactoryBufferVtbl const IP_ADD_MEMBERSHIP = 5 const IP_DEFAULT_MULTICAST_LOOP = 1 const IP_DEFAULT_MULTICAST_TTL = 1 const IP_DONTFRAGMENT = 9 const IP_DROP_MEMBERSHIP = 6 const IP_MAX_MEMBERSHIPS = 20 type IP_MREQ = TIP_MREQ const IP_MULTICAST_IF = 2 const IP_MULTICAST_LOOP = 4 const IP_MULTICAST_TTL = 3 const IP_OPTIONS = 1 const IP_TOS = 8 const IP_TTL = 7 type IParseDisplayName = TIParseDisplayName type IParseDisplayNameVtbl = TIParseDisplayNameVtbl type IPersist = TIPersist type IPersistFile = TIPersistFile type IPersistFileVtbl = TIPersistFileVtbl type IPersistMoniker = TIPersistMoniker type IPersistMonikerVtbl = TIPersistMonikerVtbl type IPersistStorage = TIPersistStorage type IPersistStorageVtbl = TIPersistStorageVtbl type IPersistStream = TIPersistStream type IPersistStreamVtbl = TIPersistStreamVtbl type IPersistVtbl = TIPersistVtbl type IPipeByte = TIPipeByte type IPipeByteVtbl = TIPipeByteVtbl type IPipeDouble = TIPipeDouble type IPipeDoubleVtbl = TIPipeDoubleVtbl type IPipeLong = TIPipeLong type IPipeLongVtbl = TIPipeLongVtbl type IPrintDialogCallback = TIPrintDialogCallback type IPrintDialogCallbackVtbl = TIPrintDialogCallbackVtbl type IPrintDialogServices = TIPrintDialogServices type IPrintDialogServicesVtbl = TIPrintDialogServicesVtbl type IProcessInitControl = TIProcessInitControl type IProcessInitControlVtbl = TIProcessInitControlVtbl type IProcessLock = TIProcessLock type IProcessLockVtbl = TIProcessLockVtbl type IProgressNotify = TIProgressNotify type IProgressNotifyVtbl = TIProgressNotifyVtbl type IPropertyBag = TIPropertyBag type IPropertyBagVtbl = TIPropertyBagVtbl type IPropertySetStorage = TIPropertySetStorage type IPropertySetStorageVtbl = TIPropertySetStorageVtbl type IPropertyStorage = TIPropertyStorage type IPropertyStorageVtbl = TIPropertyStorageVtbl type IROTData = TIROTData type IROTDataVtbl = TIROTDataVtbl type IRecordInfo = TIRecordInfo type IRecordInfoVtbl = TIRecordInfoVtbl type IReleaseMarshalBuffers = TIReleaseMarshalBuffers type IReleaseMarshalBuffersVtbl = TIReleaseMarshalBuffersVtbl type IRootStorage = TIRootStorage type IRootStorageVtbl = TIRootStorageVtbl type IRpcChannelBuffer = TIRpcChannelBuffer type IRpcChannelBuffer2 = TIRpcChannelBuffer2 type IRpcChannelBuffer2Vtbl = TIRpcChannelBuffer2Vtbl type IRpcChannelBuffer3 = TIRpcChannelBuffer3 type IRpcChannelBuffer3Vtbl = TIRpcChannelBuffer3Vtbl type IRpcChannelBufferVtbl = TIRpcChannelBufferVtbl type IRpcHelper = TIRpcHelper type IRpcHelperVtbl = TIRpcHelperVtbl type IRpcOptions = TIRpcOptions type IRpcOptionsVtbl = TIRpcOptionsVtbl type IRpcProxyBuffer = TIRpcProxyBuffer type IRpcProxyBufferVtbl = TIRpcProxyBufferVtbl type IRpcStubBuffer = TIRpcStubBuffer type IRpcStubBufferVtbl = TIRpcStubBufferVtbl type IRpcSyntaxNegotiate = TIRpcSyntaxNegotiate type IRpcSyntaxNegotiateVtbl = TIRpcSyntaxNegotiateVtbl type IRunnableObject = TIRunnableObject type IRunnableObjectVtbl = TIRunnableObjectVtbl type IRunningObjectTable = TIRunningObjectTable type IRunningObjectTableVtbl = TIRunningObjectTableVtbl const ISC_SHOWUIALL = 3221225487 const ISC_SHOWUIALLCANDIDATEWINDOW = 15 const ISC_SHOWUICANDIDATEWINDOW = 1 const ISC_SHOWUICOMPOSITIONWINDOW = 2147483648 const ISC_SHOWUIGUIDELINE = 1073741824 const ISMEX_CALLBACK = 4 const ISMEX_NOSEND = 0 const ISMEX_NOTIFY = 2 const ISMEX_REPLIED = 8 const ISMEX_SEND = 1 const IS_TEXT_UNICODE_ASCII16 = 1 const IS_TEXT_UNICODE_CONTROLS = 4 const IS_TEXT_UNICODE_DBCS_LEADBYTE = 1024 const IS_TEXT_UNICODE_ILLEGAL_CHARS = 256 const IS_TEXT_UNICODE_NOT_ASCII_MASK = 61440 const IS_TEXT_UNICODE_NOT_UNICODE_MASK = 3840 const IS_TEXT_UNICODE_NULL_BYTES = 4096 const IS_TEXT_UNICODE_ODD_LENGTH = 512 const IS_TEXT_UNICODE_REVERSE_ASCII16 = 16 const IS_TEXT_UNICODE_REVERSE_CONTROLS = 64 const IS_TEXT_UNICODE_REVERSE_MASK = 240 const IS_TEXT_UNICODE_REVERSE_SIGNATURE = 128 const IS_TEXT_UNICODE_REVERSE_STATISTICS = 32 const IS_TEXT_UNICODE_SIGNATURE = 8 const IS_TEXT_UNICODE_STATISTICS = 2 const IS_TEXT_UNICODE_UNICODE_MASK = 15 type ISequentialStream = TISequentialStream type ISequentialStreamVtbl = TISequentialStreamVtbl type IServerSecurity = TIServerSecurity type IServerSecurityVtbl = TIServerSecurityVtbl type IServiceProvider = TIServiceProvider type IServiceProviderVtbl = TIServiceProviderVtbl type ISoftDistExt = TISoftDistExt type ISoftDistExtVtbl = TISoftDistExtVtbl type IStdMarshalInfo = TIStdMarshalInfo type IStdMarshalInfoVtbl = TIStdMarshalInfoVtbl type IStorage = TIStorage type IStorageVtbl = TIStorageVtbl type IStream = TIStream type IStreamVtbl = TIStreamVtbl type ISupportErrorInfo = TISupportErrorInfo type ISupportErrorInfoVtbl = TISupportErrorInfoVtbl type ISurrogate = TISurrogate type ISurrogateService = TISurrogateService type ISurrogateServiceVtbl = TISurrogateServiceVtbl type ISurrogateVtbl = TISurrogateVtbl type ISynchronize = TISynchronize type ISynchronizeContainer = TISynchronizeContainer type ISynchronizeContainerVtbl = TISynchronizeContainerVtbl type ISynchronizeEvent = TISynchronizeEvent type ISynchronizeEventVtbl = TISynchronizeEventVtbl type ISynchronizeHandle = TISynchronizeHandle type ISynchronizeHandleVtbl = TISynchronizeHandleVtbl type ISynchronizeMutex = TISynchronizeMutex type ISynchronizeMutexVtbl = TISynchronizeMutexVtbl type ISynchronizeVtbl = TISynchronizeVtbl const ITALIC_FONTTYPE = 512 type IThumbnailExtractor = TIThumbnailExtractor type IThumbnailExtractorVtbl = TIThumbnailExtractorVtbl type ITimeAndNoticeControl = TITimeAndNoticeControl type ITimeAndNoticeControlVtbl = TITimeAndNoticeControlVtbl type ITypeChangeEvents = TITypeChangeEvents type ITypeChangeEventsVtbl = TITypeChangeEventsVtbl type ITypeComp = TITypeComp type ITypeCompVtbl = TITypeCompVtbl type ITypeFactory = TITypeFactory type ITypeFactoryVtbl = TITypeFactoryVtbl type ITypeInfo = TITypeInfo type ITypeInfo2 = TITypeInfo2 type ITypeInfo2Vtbl = TITypeInfo2Vtbl type ITypeInfoVtbl = TITypeInfoVtbl type ITypeLib = TITypeLib type ITypeLib2 = TITypeLib2 type ITypeLib2Vtbl = TITypeLib2Vtbl type ITypeLibVtbl = TITypeLibVtbl type ITypeMarshal = TITypeMarshal type ITypeMarshalVtbl = TITypeMarshalVtbl type IUnknown = TIUnknown type IUnknownVtbl = TIUnknownVtbl type IUri = TIUri type IUriBuilder = TIUriBuilder type IUriBuilderFactory = TIUriBuilderFactory type IUriBuilderFactoryVtbl = TIUriBuilderFactoryVtbl type IUriBuilderVtbl = TIUriBuilderVtbl type IUriContainer = TIUriContainer type IUriContainerVtbl = TIUriContainerVtbl type IUriVtbl = TIUriVtbl type IUrlMon = TIUrlMon type IUrlMonVtbl = TIUrlMonVtbl type IViewObject = TIViewObject type IViewObject2 = TIViewObject2 type IViewObject2Vtbl = TIViewObject2Vtbl type IViewObjectVtbl = TIViewObjectVtbl type IWaitMultiple = TIWaitMultiple type IWaitMultipleVtbl = TIWaitMultipleVtbl type IWinInetCacheHints = TIWinInetCacheHints type IWinInetCacheHints2 = TIWinInetCacheHints2 type IWinInetCacheHints2Vtbl = TIWinInetCacheHints2Vtbl type IWinInetCacheHintsVtbl = TIWinInetCacheHintsVtbl type IWinInetFileStream = TIWinInetFileStream type IWinInetFileStreamVtbl = TIWinInetFileStreamVtbl type IWinInetHttpInfo = TIWinInetHttpInfo type IWinInetHttpInfoVtbl = TIWinInetHttpInfoVtbl type IWinInetHttpTimeouts = TIWinInetHttpTimeouts type IWinInetHttpTimeoutsVtbl = TIWinInetHttpTimeoutsVtbl type IWinInetInfo = TIWinInetInfo type IWinInetInfoVtbl = TIWinInetInfoVtbl type IWindowForBindingUI = TIWindowForBindingUI type IWindowForBindingUIVtbl = TIWindowForBindingUIVtbl type IWrappedProtocol = TIWrappedProtocol type IWrappedProtocolVtbl = TIWrappedProtocolVtbl type IXMLAttribute = TIXMLAttribute type IXMLAttributeVtbl = TIXMLAttributeVtbl type IXMLDOMAttribute = TIXMLDOMAttribute type IXMLDOMAttributeVtbl = TIXMLDOMAttributeVtbl type IXMLDOMCDATASection = TIXMLDOMCDATASection type IXMLDOMCDATASectionVtbl = TIXMLDOMCDATASectionVtbl type IXMLDOMCharacterData = TIXMLDOMCharacterData type IXMLDOMCharacterDataVtbl = TIXMLDOMCharacterDataVtbl type IXMLDOMComment = TIXMLDOMComment type IXMLDOMCommentVtbl = TIXMLDOMCommentVtbl type IXMLDOMDocument = TIXMLDOMDocument type IXMLDOMDocumentFragment = TIXMLDOMDocumentFragment type IXMLDOMDocumentFragmentVtbl = TIXMLDOMDocumentFragmentVtbl type IXMLDOMDocumentType = TIXMLDOMDocumentType type IXMLDOMDocumentTypeVtbl = TIXMLDOMDocumentTypeVtbl type IXMLDOMDocumentVtbl = TIXMLDOMDocumentVtbl type IXMLDOMElement = TIXMLDOMElement type IXMLDOMElementVtbl = TIXMLDOMElementVtbl type IXMLDOMEntity = TIXMLDOMEntity type IXMLDOMEntityReference = TIXMLDOMEntityReference type IXMLDOMEntityReferenceVtbl = TIXMLDOMEntityReferenceVtbl type IXMLDOMEntityVtbl = TIXMLDOMEntityVtbl type IXMLDOMImplementation = TIXMLDOMImplementation type IXMLDOMImplementationVtbl = TIXMLDOMImplementationVtbl type IXMLDOMNamedNodeMap = TIXMLDOMNamedNodeMap type IXMLDOMNamedNodeMapVtbl = TIXMLDOMNamedNodeMapVtbl type IXMLDOMNode = TIXMLDOMNode type IXMLDOMNodeList = TIXMLDOMNodeList type IXMLDOMNodeListVtbl = TIXMLDOMNodeListVtbl type IXMLDOMNodeVtbl = TIXMLDOMNodeVtbl type IXMLDOMNotation = TIXMLDOMNotation type IXMLDOMNotationVtbl = TIXMLDOMNotationVtbl type IXMLDOMParseError = TIXMLDOMParseError type IXMLDOMParseErrorVtbl = TIXMLDOMParseErrorVtbl type IXMLDOMProcessingInstruction = TIXMLDOMProcessingInstruction type IXMLDOMProcessingInstructionVtbl = TIXMLDOMProcessingInstructionVtbl type IXMLDOMText = TIXMLDOMText type IXMLDOMTextVtbl = TIXMLDOMTextVtbl type IXMLDSOControl = TIXMLDSOControl type IXMLDSOControlVtbl = TIXMLDSOControlVtbl type IXMLDocument = TIXMLDocument type IXMLDocument2 = TIXMLDocument2 type IXMLDocument2Vtbl = TIXMLDocument2Vtbl type IXMLDocumentVtbl = TIXMLDocumentVtbl type IXMLElement = TIXMLElement type IXMLElement2 = TIXMLElement2 type IXMLElement2Vtbl = TIXMLElement2Vtbl type IXMLElementCollection = TIXMLElementCollection type IXMLElementCollectionVtbl = TIXMLElementCollectionVtbl type IXMLElementVtbl = TIXMLElementVtbl type IXMLError = TIXMLError type IXMLErrorVtbl = TIXMLErrorVtbl type IXMLHttpRequest = TIXMLHttpRequest type IXMLHttpRequestVtbl = TIXMLHttpRequestVtbl type IXTLRuntime = TIXTLRuntime type IXTLRuntimeVtbl = TIXTLRuntimeVtbl type IZoneIdentifier = TIZoneIdentifier type IZoneIdentifierVtbl = TIZoneIdentifierVtbl type I_RPC_HANDLE = TI_RPC_HANDLE type I_RPC_MUTEX = TI_RPC_MUTEX const I_RpcBindingInqDynamicEndpoint = 0 type I_RpcFreeCalloutStateFn = TI_RpcFreeCalloutStateFn const I_RpcNsBindingSetEntryName = 0 type I_RpcPerformCalloutFn = TI_RpcPerformCalloutFn type I_RpcProxyCallbackInterface = TI_RpcProxyCallbackInterface type I_RpcProxyGetClientAddressFn = TI_RpcProxyGetClientAddressFn type I_RpcProxyGetConnectionTimeoutFn = TI_RpcProxyGetConnectionTimeoutFn type I_RpcProxyIsValidMachineFn = TI_RpcProxyIsValidMachineFn const I_RpcServerUseProtseq2 = 0 const I_RpcServerUseProtseqEp2 = 0 const ImmConfigureIME = 0 const ImmEnumRegisterWord = 0 const ImmEscape = 0 const ImmGetCandidateList = 0 const ImmGetCandidateListCount = 0 const ImmGetCompositionFont = 0 const ImmGetCompositionString = 0 const ImmGetConversionList = 0 const ImmGetDescription = 0 const ImmGetGuideLine = 0 const ImmGetIMEFileName = 0 const ImmGetImeMenuItems = 0 const ImmGetRegisterWordStyle = 0 const ImmInstallIME = 0 const ImmIsUIMessage = 0 const ImmRegisterWord = 0 const ImmSetCompositionFont = 0 const ImmSetCompositionString = 0 const ImmUnregisterWord = 0 const InitiateShutdown = 0 const InitiateSystemShutdown = 0 const InitiateSystemShutdownEx = 0 const InsertMenu = 0 const InsertMenuItem = 0 const InterlockedAdd = 0 const InterlockedAdd64 = 0 const InterlockedAnd = 0 const InterlockedAnd64 = 0 const InterlockedAndAffinity = 0 const InterlockedCompareExchange = 0 const InterlockedCompareExchange16 = 0 const InterlockedCompareExchange64 = 0 const InterlockedCompareExchangeAcquire = 0 const InterlockedCompareExchangeAcquire64 = 0 const InterlockedCompareExchangePointerAcquire = 0 const InterlockedCompareExchangePointerRelease = 0 const InterlockedCompareExchangeRelease = 0 const InterlockedCompareExchangeRelease64 = 0 const InterlockedDecrement = 0 const InterlockedDecrement16 = 0 const InterlockedDecrement64 = 0 const InterlockedDecrementAcquire = 0 const InterlockedDecrementRelease = 0 const InterlockedExchange = 0 const InterlockedExchange64 = 0 const InterlockedExchangeAcquire64 = 0 const InterlockedExchangeAdd = 0 const InterlockedExchangeAdd64 = 0 const InterlockedExchangePointer = 0 const InterlockedIncrement = 0 const InterlockedIncrement16 = 0 const InterlockedIncrement64 = 0 const InterlockedIncrementAcquire = 0 const InterlockedIncrementRelease = 0 const InterlockedOr = 0 const InterlockedOr64 = 0 const InterlockedOrAffinity = 0 const InterlockedPushListSList = 0 const InterlockedXor = 0 const InterlockedXor64 = 0 const IsBadStringPtr = 0 const IsCharAlpha = 0 const IsCharAlphaNumeric = 0 const IsCharLower = 0 const IsCharUpper = 0 const IsDialogMessage = 0 const IsLFNDrive = 0 const IsLoggingEnabled = 0 const IsValidDevmode = 0 type JIT_DEBUG_INFO = TJIT_DEBUG_INFO type JIT_DEBUG_INFO32 = TJIT_DEBUG_INFO32 type JIT_DEBUG_INFO64 = TJIT_DEBUG_INFO64 type JOBOBJECTINFOCLASS = TJOBOBJECTINFOCLASS type JOBOBJECT_ASSOCIATE_COMPLETION_PORT = TJOBOBJECT_ASSOCIATE_COMPLETION_PORT type JOBOBJECT_BASIC_ACCOUNTING_INFORMATION = TJOBOBJECT_BASIC_ACCOUNTING_INFORMATION type JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION = TJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION type JOBOBJECT_BASIC_LIMIT_INFORMATION = TJOBOBJECT_BASIC_LIMIT_INFORMATION type JOBOBJECT_BASIC_PROCESS_ID_LIST = TJOBOBJECT_BASIC_PROCESS_ID_LIST type JOBOBJECT_BASIC_UI_RESTRICTIONS = TJOBOBJECT_BASIC_UI_RESTRICTIONS type JOBOBJECT_CPU_RATE_CONTROL_INFORMATION = TJOBOBJECT_CPU_RATE_CONTROL_INFORMATION type JOBOBJECT_END_OF_JOB_TIME_INFORMATION = TJOBOBJECT_END_OF_JOB_TIME_INFORMATION type JOBOBJECT_EXTENDED_LIMIT_INFORMATION = TJOBOBJECT_EXTENDED_LIMIT_INFORMATION type JOBOBJECT_JOBSET_INFORMATION = TJOBOBJECT_JOBSET_INFORMATION type JOBOBJECT_LIMIT_VIOLATION_INFORMATION = TJOBOBJECT_LIMIT_VIOLATION_INFORMATION type JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION = TJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION type JOBOBJECT_RATE_CONTROL_TOLERANCE = TJOBOBJECT_RATE_CONTROL_TOLERANCE type JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL = TJOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL type JOBOBJECT_SECURITY_LIMIT_INFORMATION = TJOBOBJECT_SECURITY_LIMIT_INFORMATION const JOB_ACCESS_ADMINISTER = 16 const JOB_ACCESS_READ = 32 const JOB_ALL_ACCESS = 983088 const JOB_CONTROL_CANCEL = 3 const JOB_CONTROL_DELETE = 5 const JOB_CONTROL_LAST_PAGE_EJECTED = 7 const JOB_CONTROL_PAUSE = 1 const JOB_CONTROL_RESTART = 4 const JOB_CONTROL_RESUME = 2 const JOB_CONTROL_SENT_TO_PRINTER = 6 const JOB_EXECUTE = 131088 type JOB_INFO_1 = TJOB_INFO_1 type JOB_INFO_1A = TJOB_INFO_1A type JOB_INFO_1W = TJOB_INFO_1W type JOB_INFO_2 = TJOB_INFO_2 type JOB_INFO_2A = TJOB_INFO_2A type JOB_INFO_2W = TJOB_INFO_2W type JOB_INFO_3 = TJOB_INFO_3 const JOB_NOTIFY_FIELD_BYTES_PRINTED = 23 const JOB_NOTIFY_FIELD_DATATYPE = 5 const JOB_NOTIFY_FIELD_DEVMODE = 9 const JOB_NOTIFY_FIELD_DOCUMENT = 13 const JOB_NOTIFY_FIELD_DRIVER_NAME = 8 const JOB_NOTIFY_FIELD_MACHINE_NAME = 1 const JOB_NOTIFY_FIELD_NOTIFY_NAME = 4 const JOB_NOTIFY_FIELD_PAGES_PRINTED = 21 const JOB_NOTIFY_FIELD_PARAMETERS = 7 const JOB_NOTIFY_FIELD_PORT_NAME = 2 const JOB_NOTIFY_FIELD_POSITION = 15 const JOB_NOTIFY_FIELD_PRINTER_NAME = 0 const JOB_NOTIFY_FIELD_PRINT_PROCESSOR = 6 const JOB_NOTIFY_FIELD_PRIORITY = 14 const JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR = 12 const JOB_NOTIFY_FIELD_START_TIME = 17 const JOB_NOTIFY_FIELD_STATUS = 10 const JOB_NOTIFY_FIELD_STATUS_STRING = 11 const JOB_NOTIFY_FIELD_SUBMITTED = 16 const JOB_NOTIFY_FIELD_TIME = 19 const JOB_NOTIFY_FIELD_TOTAL_BYTES = 22 const JOB_NOTIFY_FIELD_TOTAL_PAGES = 20 const JOB_NOTIFY_FIELD_UNTIL_TIME = 18 const JOB_NOTIFY_FIELD_USER_NAME = 3 const JOB_NOTIFY_TYPE = 1 const JOB_OBJECT_ALL_ACCESS = 2031647 const JOB_OBJECT_ASSIGN_PROCESS = 1 const JOB_OBJECT_BASIC_LIMIT_VALID_FLAGS = 255 const JOB_OBJECT_CPU_RATE_CONTROL_ENABLE = 1 const JOB_OBJECT_CPU_RATE_CONTROL_HARD_CAP = 4 const JOB_OBJECT_CPU_RATE_CONTROL_NOTIFY = 8 const JOB_OBJECT_CPU_RATE_CONTROL_VALID_FLAGS = 15 const JOB_OBJECT_CPU_RATE_CONTROL_WEIGHT_BASED = 2 const JOB_OBJECT_EXTENDED_LIMIT_VALID_FLAGS = 32767 const JOB_OBJECT_LIMIT_ACTIVE_PROCESS = 8 const JOB_OBJECT_LIMIT_AFFINITY = 16 const JOB_OBJECT_LIMIT_BREAKAWAY_OK = 2048 const JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION = 1024 const JOB_OBJECT_LIMIT_JOB_MEMORY = 512 const JOB_OBJECT_LIMIT_JOB_READ_BYTES = 65536 const JOB_OBJECT_LIMIT_JOB_TIME = 4 const JOB_OBJECT_LIMIT_JOB_WRITE_BYTES = 131072 const JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE = 8192 const JOB_OBJECT_LIMIT_PRESERVE_JOB_TIME = 64 const JOB_OBJECT_LIMIT_PRIORITY_CLASS = 32 const JOB_OBJECT_LIMIT_PROCESS_MEMORY = 256 const JOB_OBJECT_LIMIT_PROCESS_TIME = 2 const JOB_OBJECT_LIMIT_RATE_CONTROL = 262144 const JOB_OBJECT_LIMIT_RESERVED3 = 32768 const JOB_OBJECT_LIMIT_RESERVED4 = 65536 const JOB_OBJECT_LIMIT_RESERVED5 = 131072 const JOB_OBJECT_LIMIT_RESERVED6 = 262144 const JOB_OBJECT_LIMIT_SCHEDULING_CLASS = 128 const JOB_OBJECT_LIMIT_SILENT_BREAKAWAY_OK = 4096 const JOB_OBJECT_LIMIT_SUBSET_AFFINITY = 16384 const JOB_OBJECT_LIMIT_VALID_FLAGS = 524287 const JOB_OBJECT_LIMIT_WORKINGSET = 1 const JOB_OBJECT_MSG_ABNORMAL_EXIT_PROCESS = 8 const JOB_OBJECT_MSG_ACTIVE_PROCESS_LIMIT = 3 const JOB_OBJECT_MSG_ACTIVE_PROCESS_ZERO = 4 const JOB_OBJECT_MSG_END_OF_JOB_TIME = 1 const JOB_OBJECT_MSG_END_OF_PROCESS_TIME = 2 const JOB_OBJECT_MSG_EXIT_PROCESS = 7 const JOB_OBJECT_MSG_JOB_CYCLE_TIME_LIMIT = 12 const JOB_OBJECT_MSG_JOB_MEMORY_LIMIT = 10 const JOB_OBJECT_MSG_MAXIMUM = 12 const JOB_OBJECT_MSG_MINIMUM = 1 const JOB_OBJECT_MSG_NEW_PROCESS = 6 const JOB_OBJECT_MSG_NOTIFICATION_LIMIT = 11 const JOB_OBJECT_MSG_PROCESS_MEMORY_LIMIT = 9 const JOB_OBJECT_NOTIFICATION_LIMIT_VALID_FLAGS = 459268 const JOB_OBJECT_POST_AT_END_OF_JOB = 1 const JOB_OBJECT_QUERY = 4 const JOB_OBJECT_RESERVED_LIMIT_VALID_FLAGS = 524287 const JOB_OBJECT_SECURITY_FILTER_TOKENS = 8 const JOB_OBJECT_SECURITY_NO_ADMIN = 1 const JOB_OBJECT_SECURITY_ONLY_TOKEN = 4 const JOB_OBJECT_SECURITY_RESTRICTED_TOKEN = 2 const JOB_OBJECT_SECURITY_VALID_FLAGS = 15 const JOB_OBJECT_SET_ATTRIBUTES = 2 const JOB_OBJECT_SET_SECURITY_ATTRIBUTES = 16 const JOB_OBJECT_TERMINATE = 8 const JOB_OBJECT_TERMINATE_AT_END_OF_JOB = 0 const JOB_OBJECT_UILIMIT_ALL = 255 const JOB_OBJECT_UILIMIT_DESKTOP = 64 const JOB_OBJECT_UILIMIT_DISPLAYSETTINGS = 16 const JOB_OBJECT_UILIMIT_EXITWINDOWS = 128 const JOB_OBJECT_UILIMIT_GLOBALATOMS = 32 const JOB_OBJECT_UILIMIT_HANDLES = 1 const JOB_OBJECT_UILIMIT_NONE = 0 const JOB_OBJECT_UILIMIT_READCLIPBOARD = 2 const JOB_OBJECT_UILIMIT_SYSTEMPARAMETERS = 8 const JOB_OBJECT_UILIMIT_WRITECLIPBOARD = 4 const JOB_OBJECT_UI_VALID_FLAGS = 255 const JOB_POSITION_UNSPECIFIED = 0 const JOB_READ = 131104 type JOB_SET_ARRAY = TJOB_SET_ARRAY const JOB_STATUS_BLOCKED_DEVQ = 512 const JOB_STATUS_COMPLETE = 4096 const JOB_STATUS_DELETED = 256 const JOB_STATUS_DELETING = 4 const JOB_STATUS_ERROR = 2 const JOB_STATUS_OFFLINE = 32 const JOB_STATUS_PAPEROUT = 64 const JOB_STATUS_PAUSED = 1 const JOB_STATUS_PRINTED = 128 const JOB_STATUS_PRINTING = 16 const JOB_STATUS_RESTART = 2048 const JOB_STATUS_SPOOLING = 8 const JOB_STATUS_USER_INTERVENTION = 1024 const JOB_WRITE = 131088 const JOHAB_CHARSET = 130 type JOYCAPS = TJOYCAPS type JOYCAPS2 = TJOYCAPS2 type JOYCAPS2A = TJOYCAPS2A type JOYCAPS2W = TJOYCAPS2W type JOYCAPSA = TJOYCAPSA type JOYCAPSW = TJOYCAPSW const JOYCAPS_HASPOV = 16 const JOYCAPS_HASR = 2 const JOYCAPS_HASU = 4 const JOYCAPS_HASV = 8 const JOYCAPS_HASZ = 1 const JOYCAPS_POV4DIR = 32 const JOYCAPS_POVCTS = 64 const JOYERR_BASE = 160 const JOYERR_NOCANDO = 166 const JOYERR_NOERROR = 0 const JOYERR_PARMS = 165 const JOYERR_UNPLUGGED = 167 type JOYINFO = TJOYINFO type JOYINFOEX = TJOYINFOEX const JOYSTICKID1 = 0 const JOYSTICKID2 = 1 const JOY_BUTTON1 = 1 const JOY_BUTTON10 = 512 const JOY_BUTTON11 = 1024 const JOY_BUTTON12 = 2048 const JOY_BUTTON13 = 4096 const JOY_BUTTON14 = 8192 const JOY_BUTTON15 = 16384 const JOY_BUTTON16 = 32768 const JOY_BUTTON17 = 65536 const JOY_BUTTON18 = 131072 const JOY_BUTTON19 = 262144 const JOY_BUTTON1CHG = 256 const JOY_BUTTON2 = 2 const JOY_BUTTON20 = 524288 const JOY_BUTTON21 = 1048576 const JOY_BUTTON22 = 2097152 const JOY_BUTTON23 = 4194304 const JOY_BUTTON24 = 8388608 const JOY_BUTTON25 = 16777216 const JOY_BUTTON26 = 33554432 const JOY_BUTTON27 = 67108864 const JOY_BUTTON28 = 134217728 const JOY_BUTTON29 = 268435456 const JOY_BUTTON2CHG = 512 const JOY_BUTTON3 = 4 const JOY_BUTTON30 = 536870912 const JOY_BUTTON31 = 1073741824 const JOY_BUTTON32 = 2147483648 const JOY_BUTTON3CHG = 1024 const JOY_BUTTON4 = 8 const JOY_BUTTON4CHG = 2048 const JOY_BUTTON5 = 16 const JOY_BUTTON6 = 32 const JOY_BUTTON7 = 64 const JOY_BUTTON8 = 128 const JOY_BUTTON9 = 256 const JOY_CAL_READ3 = 262144 const JOY_CAL_READ4 = 524288 const JOY_CAL_READ5 = 4194304 const JOY_CAL_READ6 = 8388608 const JOY_CAL_READALWAYS = 65536 const JOY_CAL_READRONLY = 33554432 const JOY_CAL_READUONLY = 67108864 const JOY_CAL_READVONLY = 134217728 const JOY_CAL_READXONLY = 1048576 const JOY_CAL_READXYONLY = 131072 const JOY_CAL_READYONLY = 2097152 const JOY_CAL_READZONLY = 16777216 const JOY_POVBACKWARD = 18000 const JOY_POVCENTERED = -1 const JOY_POVFORWARD = 0 const JOY_POVLEFT = 27000 const JOY_POVRIGHT = 9000 const JOY_RETURNALL = 255 const JOY_RETURNBUTTONS = 128 const JOY_RETURNCENTERED = 1024 const JOY_RETURNPOV = 64 const JOY_RETURNPOVCTS = 512 const JOY_RETURNR = 8 const JOY_RETURNRAWDATA = 256 const JOY_RETURNU = 16 const JOY_RETURNV = 32 const JOY_RETURNX = 1 const JOY_RETURNY = 2 const JOY_RETURNZ = 4 const JOY_USEDEADZONE = 2048 type KAFFINITY = TKAFFINITY type KBDLLHOOKSTRUCT = TKBDLLHOOKSTRUCT type KCRM_MARSHAL_HEADER = TKCRM_MARSHAL_HEADER type KCRM_PROTOCOL_BLOB = TKCRM_PROTOCOL_BLOB type KCRM_TRANSACTION_BLOB = TKCRM_TRANSACTION_BLOB const KDF_ALGORITHMID = 8 const KDF_CONTEXT = 14 const KDF_GENERIC_PARAMETER = 17 const KDF_HASH_ALGORITHM = 0 const KDF_HMAC_KEY = 3 const KDF_ITERATION_COUNT = 16 const KDF_KEYBITLENGTH = 18 const KDF_LABEL = 13 const KDF_PARTYUINFO = 9 const KDF_PARTYVINFO = 10 const KDF_SALT = 15 const KDF_SECRET_APPEND = 2 const KDF_SECRET_HANDLE = 6 const KDF_SECRET_PREPEND = 1 const KDF_SUPPPRIVINFO = 12 const KDF_SUPPPUBINFO = 11 const KDF_TLS_PRF_LABEL = 4 const KDF_TLS_PRF_PROTOCOL = 7 const KDF_TLS_PRF_SEED = 5 const KDF_USE_SECRET_AS_HMAC_KEY_FLAG = 1 type KEAPUBKEY = TKEAPUBKEY type KERNINGPAIR = TKERNINGPAIR type KEYARRAY = TKEYARRAY type KEYBDINPUT = TKEYBDINPUT const KEYBOARD_OVERRUN_MAKE_CODE = 255 const KEYEVENTF_EXTENDEDKEY = 1 const KEYEVENTF_KEYUP = 2 const KEYEVENTF_SCANCODE = 8 const KEYEVENTF_UNICODE = 4 const KEYSTATEBLOB = 12 const KEY_ALL_ACCESS = 983103 const KEY_CREATE_LINK = 32 const KEY_CREATE_SUB_KEY = 4 const KEY_ENUMERATE_SUB_KEYS = 8 const KEY_EVENT = 1 type KEY_EVENT_RECORD = TKEY_EVENT_RECORD const KEY_EXECUTE = 131097 const KEY_LENGTH_MASK = 4294901760 const KEY_NOTIFY = 16 const KEY_QUERY_VALUE = 1 const KEY_READ = 131097 const KEY_SET_VALUE = 2 type KEY_TYPE_SUBTYPE = TKEY_TYPE_SUBTYPE const KEY_WOW64_32KEY = 512 const KEY_WOW64_64KEY = 256 const KEY_WOW64_RES = 768 const KEY_WRITE = 131078 const KF_ALTDOWN = 8192 const KF_DLGMODE = 2048 const KF_EXTENDED = 256 const KF_MENUMODE = 4096 const KF_REPEAT = 16384 const KF_UP = 32768 const KLF_ACTIVATE = 1 const KLF_NOTELLSHELL = 128 const KLF_REORDER = 8 const KLF_REPLACELANG = 16 const KLF_RESET = 1073741824 const KLF_SETFORPROCESS = 256 const KLF_SHIFTLOCK = 65536 const KLF_SUBSTITUTE_OK = 2 const KL_NAMELENGTH = 9 const KP_ADMIN_PIN = 31 const KP_ALGID = 7 const KP_BLOCKLEN = 8 const KP_CERTIFICATE = 26 const KP_CLEAR_KEY = 27 const KP_CLIENT_RANDOM = 21 const KP_CMS_DH_KEY_INFO = 38 const KP_CMS_KEY_INFO = 37 const KP_EFFECTIVE_KEYLEN = 19 const KP_G = 12 const KP_GET_USE_COUNT = 42 const KP_HIGHEST_VERSION = 41 const KP_INFO = 18 const KP_IV = 1 const KP_KEYEXCHANGE_PIN = 32 const KP_KEYLEN = 9 const KP_KEYVAL = 30 const KP_MODE = 4 const KP_MODE_BITS = 5 const KP_OAEP_PARAMS = 36 const KP_P = 11 const KP_PADDING = 3 const KP_PERMISSIONS = 6 const KP_PIN_ID = 43 const KP_PIN_INFO = 44 const KP_PRECOMP_MD5 = 24 const KP_PRECOMP_SHA = 25 const KP_PREHASH = 34 const KP_PUB_EX_LEN = 28 const KP_PUB_EX_VAL = 29 const KP_PUB_PARAMS = 39 const KP_Q = 13 const KP_RA = 16 const KP_RB = 17 const KP_ROUNDS = 35 const KP_RP = 23 const KP_SALT = 2 const KP_SALT_EX = 10 const KP_SCHANNEL_ALG = 20 const KP_SERVER_RANDOM = 22 const KP_SIGNATURE_PIN = 33 const KP_VERIFY_PARAMS = 40 const KP_X = 14 const KP_Y = 15 type KSPIN_LOCK = TKSPIN_LOCK type KTMOBJECT_CURSOR = TKTMOBJECT_CURSOR type KTMOBJECT_TYPE = TKTMOBJECT_TYPE const KTM_MARSHAL_BLOB_VERSION_MAJOR = 1 const KTM_MARSHAL_BLOB_VERSION_MINOR = 1 const LABEL_SECURITY_INFORMATION = 16 type LANA_ENUM = TLANA_ENUM const LANGGROUPLOCALE_ENUMPROC = 0 type LANGGROUPLOCALE_ENUMPROCA = TLANGGROUPLOCALE_ENUMPROCA type LANGGROUPLOCALE_ENUMPROCW = TLANGGROUPLOCALE_ENUMPROCW type LANGID = TLANGID const LANGUAGEGROUP_ENUMPROC = 0 type LANGUAGEGROUP_ENUMPROCA = TLANGUAGEGROUP_ENUMPROCA type LANGUAGEGROUP_ENUMPROCW = TLANGUAGEGROUP_ENUMPROCW const LANG_AFRIKAANS = 54 const LANG_ALBANIAN = 28 const LANG_ALSATIAN = 132 const LANG_AMHARIC = 94 const LANG_ARABIC = 1 const LANG_ARMENIAN = 43 const LANG_ASSAMESE = 77 const LANG_AZERBAIJANI = 44 const LANG_AZERI = 44 const LANG_BANGLA = 69 const LANG_BASHKIR = 109 const LANG_BASQUE = 45 const LANG_BELARUSIAN = 35 const LANG_BENGALI = 69 const LANG_BOSNIAN = 26 const LANG_BOSNIAN_NEUTRAL = 30746 const LANG_BRETON = 126 const LANG_BULGARIAN = 2 const LANG_CATALAN = 3 const LANG_CENTRAL_KURDISH = 146 const LANG_CHEROKEE = 92 const LANG_CHINESE = 4 const LANG_CHINESE_SIMPLIFIED = 4 const LANG_CHINESE_TRADITIONAL = 31748 const LANG_CORSICAN = 131 const LANG_CROATIAN = 26 const LANG_CZECH = 5 const LANG_DANISH = 6 const LANG_DARI = 140 const LANG_DIVEHI = 101 const LANG_DUTCH = 19 const LANG_ENGLISH = 9 const LANG_ESTONIAN = 37 const LANG_FAEROESE = 56 const LANG_FARSI = 41 const LANG_FILIPINO = 100 const LANG_FINNISH = 11 const LANG_FRENCH = 12 const LANG_FRISIAN = 98 const LANG_FULAH = 103 const LANG_GALICIAN = 86 const LANG_GEORGIAN = 55 const LANG_GERMAN = 7 const LANG_GREEK = 8 const LANG_GREENLANDIC = 111 const LANG_GUJARATI = 71 const LANG_HAUSA = 104 const LANG_HEBREW = 13 const LANG_HINDI = 57 const LANG_HUNGARIAN = 14 const LANG_ICELANDIC = 15 const LANG_IGBO = 112 const LANG_INDONESIAN = 33 const LANG_INUKTITUT = 93 const LANG_INVARIANT = 127 const LANG_IRISH = 60 const LANG_ITALIAN = 16 const LANG_JAPANESE = 17 const LANG_KANNADA = 75 const LANG_KASHMIRI = 96 const LANG_KAZAK = 63 const LANG_KHMER = 83 const LANG_KICHE = 134 const LANG_KINYARWANDA = 135 const LANG_KONKANI = 87 const LANG_KOREAN = 18 const LANG_KYRGYZ = 64 const LANG_LAO = 84 const LANG_LATVIAN = 38 const LANG_LITHUANIAN = 39 const LANG_LOWER_SORBIAN = 46 const LANG_LUXEMBOURGISH = 110 const LANG_MACEDONIAN = 47 const LANG_MALAY = 62 const LANG_MALAYALAM = 76 const LANG_MALTESE = 58 const LANG_MANIPURI = 88 const LANG_MAORI = 129 const LANG_MAPUDUNGUN = 122 const LANG_MARATHI = 78 const LANG_MOHAWK = 124 const LANG_MONGOLIAN = 80 const LANG_NEPALI = 97 const LANG_NEUTRAL = 0 const LANG_NORWEGIAN = 20 const LANG_OCCITAN = 130 const LANG_ODIA = 72 const LANG_ORIYA = 72 const LANG_PASHTO = 99 const LANG_PERSIAN = 41 const LANG_POLISH = 21 const LANG_PORTUGUESE = 22 const LANG_PULAR = 103 const LANG_PUNJABI = 70 const LANG_QUECHUA = 107 const LANG_ROMANIAN = 24 const LANG_ROMANSH = 23 const LANG_RUSSIAN = 25 const LANG_SAKHA = 133 const LANG_SAMI = 59 const LANG_SANSKRIT = 79 const LANG_SCOTTISH_GAELIC = 145 const LANG_SERBIAN = 26 const LANG_SERBIAN_NEUTRAL = 31770 const LANG_SINDHI = 89 const LANG_SINHALESE = 91 const LANG_SLOVAK = 27 const LANG_SLOVENIAN = 36 const LANG_SOTHO = 108 const LANG_SPANISH = 10 const LANG_SWAHILI = 65 const LANG_SWEDISH = 29 const LANG_SYRIAC = 90 const LANG_TAJIK = 40 const LANG_TAMAZIGHT = 95 const LANG_TAMIL = 73 const LANG_TATAR = 68 const LANG_TELUGU = 74 const LANG_THAI = 30 const LANG_TIBETAN = 81 const LANG_TIGRIGNA = 115 const LANG_TIGRINYA = 115 const LANG_TSWANA = 50 const LANG_TURKISH = 31 const LANG_TURKMEN = 66 const LANG_UIGHUR = 128 const LANG_UKRAINIAN = 34 const LANG_UPPER_SORBIAN = 46 const LANG_URDU = 32 const LANG_UZBEK = 67 const LANG_VALENCIAN = 3 const LANG_VIETNAMESE = 42 const LANG_WELSH = 82 const LANG_WOLOF = 136 const LANG_XHOSA = 52 const LANG_YAKUT = 133 const LANG_YI = 120 const LANG_YORUBA = 106 const LANG_ZULU = 53 type LARGE_INTEGER = TLARGE_INTEGER type LASTINPUTINFO = TLASTINPUTINFO type LATENCY_TIME = TLATENCY_TIME type LAYERPLANEDESCRIPTOR = TLAYERPLANEDESCRIPTOR const LAYOUT_BITMAPORIENTATIONPRESERVED = 8 const LAYOUT_BTT = 2 const LAYOUT_ORIENTATIONMASK = 7 const LAYOUT_RTL = 1 const LAYOUT_VBH = 4 const LBN_DBLCLK = 2 const LBN_ERRSPACE = -2 const LBN_KILLFOCUS = 5 const LBN_SELCANCEL = 3 const LBN_SELCHANGE = 1 const LBN_SETFOCUS = 4 const LBSELCHSTRINGA = "commdlg_LBSelChangedNotify" const LBSELCHSTRINGW = "commdlg_LBSelChangedNotify" const LBS_COMBOBOX = 32768 const LBS_DISABLENOSCROLL = 4096 const LBS_EXTENDEDSEL = 2048 const LBS_HASSTRINGS = 64 const LBS_MULTICOLUMN = 512 const LBS_MULTIPLESEL = 8 const LBS_NODATA = 8192 const LBS_NOINTEGRALHEIGHT = 256 const LBS_NOREDRAW = 4 const LBS_NOSEL = 16384 const LBS_NOTIFY = 1 const LBS_OWNERDRAWFIXED = 16 const LBS_OWNERDRAWVARIABLE = 32 const LBS_SORT = 2 const LBS_STANDARD = 10485763 const LBS_USETABSTOPS = 128 const LBS_WANTKEYBOARDINPUT = 1024 const LB_ADDFILE = 406 const LB_ADDSTRING = 384 const LB_CTLCODE = 0 const LB_DELETESTRING = 386 const LB_DIR = 397 const LB_ERR = -1 const LB_ERRSPACE = -2 const LB_FINDSTRING = 399 const LB_FINDSTRINGEXACT = 418 const LB_GETANCHORINDEX = 413 const LB_GETCARETINDEX = 415 const LB_GETCOUNT = 395 const LB_GETCURSEL = 392 const LB_GETHORIZONTALEXTENT = 403 const LB_GETITEMDATA = 409 const LB_GETITEMHEIGHT = 417 const LB_GETITEMRECT = 408 const LB_GETLISTBOXINFO = 434 const LB_GETLOCALE = 422 const LB_GETSEL = 391 const LB_GETSELCOUNT = 400 const LB_GETSELITEMS = 401 const LB_GETTEXT = 393 const LB_GETTEXTLEN = 394 const LB_GETTOPINDEX = 398 const LB_INITSTORAGE = 424 const LB_INSERTSTRING = 385 const LB_ITEMFROMPOINT = 425 const LB_MSGMAX = 435 const LB_OKAY = 0 const LB_RESETCONTENT = 388 const LB_SELECTSTRING = 396 const LB_SELITEMRANGE = 411 const LB_SELITEMRANGEEX = 387 const LB_SETANCHORINDEX = 412 const LB_SETCARETINDEX = 414 const LB_SETCOLUMNWIDTH = 405 const LB_SETCOUNT = 423 const LB_SETCURSEL = 390 const LB_SETHORIZONTALEXTENT = 404 const LB_SETITEMDATA = 410 const LB_SETITEMHEIGHT = 416 const LB_SETLOCALE = 421 const LB_SETSEL = 389 const LB_SETTABSTOPS = 402 const LB_SETTOPINDEX = 407 type LCID = TLCID const LCID_ALTERNATE_SORTS = 4 const LCID_INSTALLED = 1 const LCID_SUPPORTED = 2 const LCMAP_BYTEREV = 2048 const LCMAP_FULLWIDTH = 8388608 const LCMAP_HALFWIDTH = 4194304 const LCMAP_HASH = 262144 const LCMAP_HIRAGANA = 1048576 const LCMAP_KATAKANA = 2097152 const LCMAP_LINGUISTIC_CASING = 16777216 const LCMAP_LOWERCASE = 256 const LCMAP_SIMPLIFIED_CHINESE = 33554432 const LCMAP_SORTHANDLE = 536870912 const LCMAP_SORTKEY = 1024 const LCMAP_TITLECASE = 768 const LCMAP_TRADITIONAL_CHINESE = 67108864 const LCMAP_UPPERCASE = 512 const LCMapString = 0 type LCSCSTYPE = TLCSCSTYPE type LCSGAMUTMATCH = TLCSGAMUTMATCH const LCS_CALIBRATED_RGB = 0 const LCS_GM_ABS_COLORIMETRIC = 8 const LCS_GM_BUSINESS = 1 const LCS_GM_GRAPHICS = 2 const LCS_GM_IMAGES = 4 const LCS_SIGNATURE = 80 const LCS_WINDOWS_COLOR_SPACE = 87 const LCS_sRGB = 115 type LCTYPE = TLCTYPE type LC_ID = TLC_ID const LC_INTERIORS = 128 const LC_MARKER = 4 const LC_NONE = 0 const LC_POLYLINE = 2 const LC_POLYMARKER = 8 const LC_STYLED = 32 const LC_WIDE = 16 const LC_WIDESTYLED = 64 type LDT_ENTRY = TLDT_ENTRY const LEFT_ALT_PRESSED = 2 const LEFT_CTRL_PRESSED = 8 const LEGACY_DH_PRIVATE_BLOB = "CAPIDHPRIVATEBLOB" const LEGACY_DH_PUBLIC_BLOB = "CAPIDHPUBLICBLOB" const LEGACY_DSA_PRIVATE_BLOB = "CAPIDSAPRIVATEBLOB" const LEGACY_DSA_PUBLIC_BLOB = "CAPIDSAPUBLICBLOB" const LEGACY_DSA_V2_PRIVATE_BLOB = "V2CAPIDSAPRIVATEBLOB" const LEGACY_DSA_V2_PUBLIC_BLOB = "V2CAPIDSAPUBLICBLOB" const LEGACY_RSAPRIVATE_BLOB = "CAPIPRIVATEBLOB" const LEGACY_RSAPUBLIC_BLOB = "CAPIPUBLICBLOB" const LF_FACESIZE = 32 const LF_FULLFACESIZE = 64 type LGRPID = TLGRPID const LGRPID_ARABIC = 13 const LGRPID_ARMENIAN = 17 const LGRPID_BALTIC = 3 const LGRPID_CENTRAL_EUROPE = 2 const LGRPID_CYRILLIC = 5 const LGRPID_GEORGIAN = 16 const LGRPID_GREEK = 4 const LGRPID_HEBREW = 12 const LGRPID_INDIC = 15 const LGRPID_INSTALLED = 1 const LGRPID_JAPANESE = 7 const LGRPID_KOREAN = 8 const LGRPID_SIMPLIFIED_CHINESE = 10 const LGRPID_SUPPORTED = 2 const LGRPID_THAI = 11 const LGRPID_TRADITIONAL_CHINESE = 9 const LGRPID_TURKIC = 6 const LGRPID_TURKISH = 6 const LGRPID_VIETNAMESE = 14 const LGRPID_WESTERN_EUROPE = 1 const LHND = 66 type LIBFLAGS = TLIBFLAGS const LINECAPS = 30 type LINEDDAPROC = TLINEDDAPROC type LINGER = TLINGER const LINGUISTIC_IGNORECASE = 16 const LINGUISTIC_IGNOREDIACRITIC = 32 type LINKSRCDESCRIPTOR = TLINKSRCDESCRIPTOR const LISTEN_OUTSTANDING = 1 type LIST_ENTRY = TLIST_ENTRY type LIST_ENTRY32 = TLIST_ENTRY32 type LIST_ENTRY64 = TLIST_ENTRY64 const LLKHF_ALTDOWN = 32 const LLKHF_EXTENDED = 1 const LLKHF_INJECTED = 16 const LLKHF_LOWER_IL_INJECTED = 2 const LLKHF_UP = 128 const LLMHF_INJECTED = 1 const LLMHF_LOWER_IL_INJECTED = 2 const LMEM_DISCARDABLE = 3840 const LMEM_DISCARDED = 16384 const LMEM_FIXED = 0 const LMEM_INVALID_HANDLE = 32768 const LMEM_LOCKCOUNT = 255 const LMEM_MODIFY = 128 const LMEM_MOVEABLE = 2 const LMEM_NOCOMPACT = 16 const LMEM_NODISCARD = 32 const LMEM_VALID_FLAGS = 3954 const LMEM_ZEROINIT = 64 const LOAD_DLL_DEBUG_EVENT = 6 type LOAD_DLL_DEBUG_INFO = TLOAD_DLL_DEBUG_INFO const LOAD_IGNORE_CODE_AUTHZ_LEVEL = 16 const LOAD_LIBRARY_AS_DATAFILE = 2 const LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE = 64 const LOAD_LIBRARY_AS_IMAGE_RESOURCE = 32 const LOAD_LIBRARY_REQUIRE_SIGNED_TARGET = 128 const LOAD_LIBRARY_SEARCH_APPLICATION_DIR = 512 const LOAD_LIBRARY_SEARCH_DEFAULT_DIRS = 4096 const LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR = 256 const LOAD_LIBRARY_SEARCH_SYSTEM32 = 2048 const LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER = 2048 const LOAD_LIBRARY_SEARCH_USER_DIRS = 1024 const LOAD_TLB_AS_32BIT = 32 const LOAD_TLB_AS_64BIT = 64 const LOAD_WITH_ALTERED_SEARCH_PATH = 8 type LOCALESIGNATURE = TLOCALESIGNATURE const LOCALE_ALL = 0 const LOCALE_ALLOW_NEUTRAL_NAMES = 134217728 const LOCALE_ALTERNATE_SORTS = 4 const LOCALE_ENUMPROC = 0 type LOCALE_ENUMPROCA = TLOCALE_ENUMPROCA type LOCALE_ENUMPROCEX = TLOCALE_ENUMPROCEX type LOCALE_ENUMPROCW = TLOCALE_ENUMPROCW const LOCALE_FONTSIGNATURE = 88 const LOCALE_ICALENDARTYPE = 4105 const LOCALE_ICENTURY = 36 const LOCALE_ICOUNTRY = 5 const LOCALE_ICURRDIGITS = 25 const LOCALE_ICURRENCY = 27 const LOCALE_IDATE = 33 const LOCALE_IDAYLZERO = 38 const LOCALE_IDEFAULTANSICODEPAGE = 4100 const LOCALE_IDEFAULTCODEPAGE = 11 const LOCALE_IDEFAULTCOUNTRY = 10 const LOCALE_IDEFAULTEBCDICCODEPAGE = 4114 const LOCALE_IDEFAULTLANGUAGE = 9 const LOCALE_IDEFAULTMACCODEPAGE = 4113 const LOCALE_IDIALINGCODE = 5 const LOCALE_IDIGITS = 17 const LOCALE_IDIGITSUBSTITUTION = 4116 const LOCALE_IFIRSTDAYOFWEEK = 4108 const LOCALE_IFIRSTWEEKOFYEAR = 4109 const LOCALE_IGEOID = 91 const LOCALE_IINTLCURRDIGITS = 26 const LOCALE_ILANGUAGE = 1 const LOCALE_ILDATE = 34 const LOCALE_ILZERO = 18 const LOCALE_IMEASURE = 13 const LOCALE_IMONLZERO = 39 const LOCALE_INEGATIVEPERCENT = 116 const LOCALE_INEGCURR = 28 const LOCALE_INEGNUMBER = 4112 const LOCALE_INEGSEPBYSPACE = 87 const LOCALE_INEGSIGNPOSN = 83 const LOCALE_INEGSYMPRECEDES = 86 const LOCALE_INEUTRAL = 113 const LOCALE_IOPTIONALCALENDAR = 4107 const LOCALE_IPAPERSIZE = 4106 const LOCALE_IPOSITIVEPERCENT = 117 const LOCALE_IPOSSEPBYSPACE = 85 const LOCALE_IPOSSIGNPOSN = 82 const LOCALE_IPOSSYMPRECEDES = 84 const LOCALE_IREADINGLAYOUT = 112 const LOCALE_ITIME = 35 const LOCALE_ITIMEMARKPOSN = 4101 const LOCALE_ITLZERO = 37 const LOCALE_NAME_INVARIANT = "" const LOCALE_NAME_MAX_LENGTH = 85 const LOCALE_NAME_SYSTEM_DEFAULT = "!x-sys-default-locale" const LOCALE_NAME_USER_DEFAULT = "NULL" const LOCALE_NEUTRALDATA = 16 const LOCALE_NOUSEROVERRIDE = 2147483648 const LOCALE_REPLACEMENT = 8 const LOCALE_RETURN_GENITIVE_NAMES = 268435456 const LOCALE_RETURN_NUMBER = 536870912 const LOCALE_S1159 = 40 const LOCALE_S2359 = 41 const LOCALE_SABBREVCTRYNAME = 7 const LOCALE_SABBREVDAYNAME1 = 49 const LOCALE_SABBREVDAYNAME2 = 50 const LOCALE_SABBREVDAYNAME3 = 51 const LOCALE_SABBREVDAYNAME4 = 52 const LOCALE_SABBREVDAYNAME5 = 53 const LOCALE_SABBREVDAYNAME6 = 54 const LOCALE_SABBREVDAYNAME7 = 55 const LOCALE_SABBREVLANGNAME = 3 const LOCALE_SABBREVMONTHNAME1 = 68 const LOCALE_SABBREVMONTHNAME10 = 77 const LOCALE_SABBREVMONTHNAME11 = 78 const LOCALE_SABBREVMONTHNAME12 = 79 const LOCALE_SABBREVMONTHNAME13 = 4111 const LOCALE_SABBREVMONTHNAME2 = 69 const LOCALE_SABBREVMONTHNAME3 = 70 const LOCALE_SABBREVMONTHNAME4 = 71 const LOCALE_SABBREVMONTHNAME5 = 72 const LOCALE_SABBREVMONTHNAME6 = 73 const LOCALE_SABBREVMONTHNAME7 = 74 const LOCALE_SABBREVMONTHNAME8 = 75 const LOCALE_SABBREVMONTHNAME9 = 76 const LOCALE_SAM = 40 const LOCALE_SCONSOLEFALLBACKNAME = 110 const LOCALE_SCOUNTRY = 6 const LOCALE_SCURRENCY = 20 const LOCALE_SDATE = 29 const LOCALE_SDAYNAME1 = 42 const LOCALE_SDAYNAME2 = 43 const LOCALE_SDAYNAME3 = 44 const LOCALE_SDAYNAME4 = 45 const LOCALE_SDAYNAME5 = 46 const LOCALE_SDAYNAME6 = 47 const LOCALE_SDAYNAME7 = 48 const LOCALE_SDECIMAL = 14 const LOCALE_SDURATION = 93 const LOCALE_SENGCOUNTRY = 4098 const LOCALE_SENGCURRNAME = 4103 const LOCALE_SENGLANGUAGE = 4097 const LOCALE_SENGLISHCOUNTRYNAME = 4098 const LOCALE_SENGLISHDISPLAYNAME = 114 const LOCALE_SENGLISHLANGUAGENAME = 4097 const LOCALE_SGROUPING = 16 const LOCALE_SINTLSYMBOL = 21 const LOCALE_SISO3166CTRYNAME = 90 const LOCALE_SISO3166CTRYNAME2 = 104 const LOCALE_SISO639LANGNAME = 89 const LOCALE_SISO639LANGNAME2 = 103 const LOCALE_SKEYBOARDSTOINSTALL = 94 const LOCALE_SLANGDISPLAYNAME = 111 const LOCALE_SLANGUAGE = 2 const LOCALE_SLIST = 12 const LOCALE_SLOCALIZEDCOUNTRYNAME = 6 const LOCALE_SLOCALIZEDDISPLAYNAME = 2 const LOCALE_SLOCALIZEDLANGUAGENAME = 111 const LOCALE_SLONGDATE = 32 const LOCALE_SMONDECIMALSEP = 22 const LOCALE_SMONGROUPING = 24 const LOCALE_SMONTHDAY = 120 const LOCALE_SMONTHNAME1 = 56 const LOCALE_SMONTHNAME10 = 65 const LOCALE_SMONTHNAME11 = 66 const LOCALE_SMONTHNAME12 = 67 const LOCALE_SMONTHNAME13 = 4110 const LOCALE_SMONTHNAME2 = 57 const LOCALE_SMONTHNAME3 = 58 const LOCALE_SMONTHNAME4 = 59 const LOCALE_SMONTHNAME5 = 60 const LOCALE_SMONTHNAME6 = 61 const LOCALE_SMONTHNAME7 = 62 const LOCALE_SMONTHNAME8 = 63 const LOCALE_SMONTHNAME9 = 64 const LOCALE_SMONTHOUSANDSEP = 23 const LOCALE_SNAME = 92 const LOCALE_SNAN = 105 const LOCALE_SNATIVECOUNTRYNAME = 8 const LOCALE_SNATIVECTRYNAME = 8 const LOCALE_SNATIVECURRNAME = 4104 const LOCALE_SNATIVEDIGITS = 19 const LOCALE_SNATIVEDISPLAYNAME = 115 const LOCALE_SNATIVELANGNAME = 4 const LOCALE_SNATIVELANGUAGENAME = 4 const LOCALE_SNEGATIVESIGN = 81 const LOCALE_SNEGINFINITY = 107 const LOCALE_SOPENTYPELANGUAGETAG = 122 const LOCALE_SPARENT = 109 const LOCALE_SPECIFICDATA = 32 const LOCALE_SPERCENT = 118 const LOCALE_SPERMILLE = 119 const LOCALE_SPM = 41 const LOCALE_SPOSINFINITY = 106 const LOCALE_SPOSITIVESIGN = 80 const LOCALE_SRELATIVELONGDATE = 124 const LOCALE_SSCRIPTS = 108 const LOCALE_SSHORTDATE = 31 const LOCALE_SSHORTESTAM = 126 const LOCALE_SSHORTESTDAYNAME1 = 96 const LOCALE_SSHORTESTDAYNAME2 = 97 const LOCALE_SSHORTESTDAYNAME3 = 98 const LOCALE_SSHORTESTDAYNAME4 = 99 const LOCALE_SSHORTESTDAYNAME5 = 100 const LOCALE_SSHORTESTDAYNAME6 = 101 const LOCALE_SSHORTESTDAYNAME7 = 102 const LOCALE_SSHORTESTPM = 127 const LOCALE_SSHORTTIME = 121 const LOCALE_SSORTLOCALE = 123 const LOCALE_SSORTNAME = 4115 const LOCALE_STHOUSAND = 15 const LOCALE_STIME = 30 const LOCALE_STIMEFORMAT = 4099 const LOCALE_SUPPLEMENTAL = 2 const LOCALE_SYEARMONTH = 4102 const LOCALE_USE_CP_ACP = 1073741824 const LOCALE_USE_NLS = 268435456 const LOCALE_WINDOWS = 1 type LOCALHANDLE = TLOCALHANDLE const LOCKFILE_EXCLUSIVE_LOCK = 2 const LOCKFILE_FAIL_IMMEDIATELY = 1 type LOCKTYPE = TLOCKTYPE const LOCK_ELEMENT = 0 const LOCK_UNLOCK_DOOR = 2 const LOCK_UNLOCK_IEPORT = 1 const LOCK_UNLOCK_KEYPAD = 4 type LOGBRUSH = TLOGBRUSH type LOGBRUSH32 = TLOGBRUSH32 type LOGCOLORSPACE = TLOGCOLORSPACE type LOGCOLORSPACEA = TLOGCOLORSPACEA type LOGCOLORSPACEW = TLOGCOLORSPACEW type LOGFONT = TLOGFONT type LOGFONTA = TLOGFONTA type LOGFONTW = TLOGFONTW type LOGICAL_PROCESSOR_RELATIONSHIP = TLOGICAL_PROCESSOR_RELATIONSHIP const LOGON32_LOGON_BATCH = 4 const LOGON32_LOGON_INTERACTIVE = 2 const LOGON32_LOGON_NETWORK = 3 const LOGON32_LOGON_NETWORK_CLEARTEXT = 8 const LOGON32_LOGON_NEW_CREDENTIALS = 9 const LOGON32_LOGON_SERVICE = 5 const LOGON32_LOGON_UNLOCK = 7 const LOGON32_PROVIDER_DEFAULT = 0 const LOGON32_PROVIDER_VIRTUAL = 4 const LOGON32_PROVIDER_WINNT35 = 1 const LOGON32_PROVIDER_WINNT40 = 2 const LOGON32_PROVIDER_WINNT50 = 3 const LOGON_NETCREDENTIALS_ONLY = 2 const LOGON_WITH_PROFILE = 1 const LOGON_ZERO_PASSWORD_BUFFER = 2147483648 type LOGPALETTE = TLOGPALETTE type LOGPEN = TLOGPEN const LOGPIXELSX = 88 const LOGPIXELSY = 90 type LONG = TLONG type LONG32 = TLONG32 type LONG64 = TLONG64 type LONGLONG = TLONGLONG type LONG_PTR = TLONG_PTR type LOOKUP_STREAM_FROM_CLUSTER_ENTRY = TLOOKUP_STREAM_FROM_CLUSTER_ENTRY const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_DATA = 16777216 const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_INDEX = 33554432 const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_MASK = 4278190080 const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_ATTRIBUTE_SYSTEM = 50331648 const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_DENY_DEFRAG_SET = 2 const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_FS_SYSTEM_FILE = 4 const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_PAGE_FILE = 1 const LOOKUP_STREAM_FROM_CLUSTER_ENTRY_FLAG_TXF_SYSTEM_FILE = 8 type LOOKUP_STREAM_FROM_CLUSTER_INPUT = TLOOKUP_STREAM_FROM_CLUSTER_INPUT type LOOKUP_STREAM_FROM_CLUSTER_OUTPUT = TLOOKUP_STREAM_FROM_CLUSTER_OUTPUT const LOW_SURROGATE_END = 57343 const LOW_SURROGATE_START = 56320 type LPABC = TLPABC type LPABCFLOAT = TLPABCFLOAT type LPACCEL = TLPACCEL type LPACCESSTIMEOUT = TLPACCESSTIMEOUT type LPADDJOB_INFO_1 = TLPADDJOB_INFO_1 type LPADDJOB_INFO_1A = TLPADDJOB_INFO_1A type LPADDJOB_INFO_1W = TLPADDJOB_INFO_1W type LPADDREXCLUSIONCONTROL = TLPADDREXCLUSIONCONTROL type LPADDRTRACKINGCONTROL = TLPADDRTRACKINGCONTROL type LPADVISESINK = TLPADVISESINK type LPADVISESINK2 = TLPADVISESINK2 type LPALTTABINFO = TLPALTTABINFO type LPANIMATIONINFO = TLPANIMATIONINFO type LPARAM = TLPARAM type LPAUDIODESCRIPTION = TLPAUDIODESCRIPTION type LPAUTHENTICATION = TLPAUTHENTICATION type LPAUTHENTICATIONEX = TLPAUTHENTICATIONEX type LPAUXCAPS = TLPAUXCAPS type LPAUXCAPS2 = TLPAUXCAPS2 type LPAUXCAPS2A = TLPAUXCAPS2A type LPAUXCAPS2W = TLPAUXCAPS2W type LPAUXCAPSA = TLPAUXCAPSA type LPAUXCAPSW = TLPAUXCAPSW type LPAXESLIST = TLPAXESLIST type LPAXESLISTA = TLPAXESLISTA type LPAXESLISTW = TLPAXESLISTW type LPAXISINFO = TLPAXISINFO type LPAXISINFOA = TLPAXISINFOA type LPAXISINFOW = TLPAXISINFOW type LPBC = TLPBC type LPBIDI_DATA = TLPBIDI_DATA type LPBIDI_REQUEST_CONTAINER = TLPBIDI_REQUEST_CONTAINER type LPBIDI_REQUEST_DATA = TLPBIDI_REQUEST_DATA type LPBIDI_RESPONSE_CONTAINER = TLPBIDI_RESPONSE_CONTAINER type LPBIDI_RESPONSE_DATA = TLPBIDI_RESPONSE_DATA type LPBINDCALLBACKREDIRECT = TLPBINDCALLBACKREDIRECT type LPBINDCTX = TLPBINDCTX type LPBINDHOST = TLPBINDHOST type LPBINDING = TLPBINDING type LPBINDPROTOCOL = TLPBINDPROTOCOL type LPBINDPTR = TLPBINDPTR type LPBINDSTATUSCALLBACK = TLPBINDSTATUSCALLBACK type LPBINDSTATUSCALLBACKEX = TLPBINDSTATUSCALLBACKEX type LPBIND_OPTS = TLPBIND_OPTS type LPBIND_OPTS2 = TLPBIND_OPTS2 type LPBIND_OPTS3 = TLPBIND_OPTS3 type LPBITMAP = TLPBITMAP type LPBITMAPCOREHEADER = TLPBITMAPCOREHEADER type LPBITMAPCOREINFO = TLPBITMAPCOREINFO type LPBITMAPFILEHEADER = TLPBITMAPFILEHEADER type LPBITMAPINFO = TLPBITMAPINFO type LPBITMAPINFOHEADER = TLPBITMAPINFOHEADER type LPBITMAPV4HEADER = TLPBITMAPV4HEADER type LPBITMAPV5HEADER = TLPBITMAPV5HEADER type LPBLOB = TLPBLOB type LPBOOL = TLPBOOL type LPBORDERWIDTHS = TLPBORDERWIDTHS type LPBSTR = TLPBSTR type LPBSTRBLOB = TLPBSTRBLOB type LPBYTE = TLPBYTE type LPBY_HANDLE_FILE_INFORMATION = TLPBY_HANDLE_FILE_INFORMATION type LPCANCELMETHODCALLS = TLPCANCELMETHODCALLS type LPCANDIDATEFORM = TLPCANDIDATEFORM type LPCANDIDATELIST = TLPCANDIDATELIST type LPCATALOGFILEINFO = TLPCATALOGFILEINFO type LPCBORDERWIDTHS = TLPCBORDERWIDTHS type LPCBTACTIVATESTRUCT = TLPCBTACTIVATESTRUCT type LPCBT_CREATEWND = TLPCBT_CREATEWND type LPCBT_CREATEWNDA = TLPCBT_CREATEWNDA type LPCBT_CREATEWNDW = TLPCBT_CREATEWNDW type LPCBYTE = TLPCBYTE type LPCCH = TLPCCH type LPCCHOOKPROC = TLPCCHOOKPROC type LPCDLGTEMPLATE = TLPCDLGTEMPLATE type LPCDLGTEMPLATEA = TLPCDLGTEMPLATEA type LPCDLGTEMPLATEW = TLPCDLGTEMPLATEW type LPCFHOOKPROC = TLPCFHOOKPROC type LPCGUID = TLPCGUID type LPCH = TLPCH type LPCHARSETINFO = TLPCHARSETINFO type LPCHOOSECOLOR = TLPCHOOSECOLOR type LPCHOOSECOLORA = TLPCHOOSECOLORA type LPCHOOSECOLORW = TLPCHOOSECOLORW type LPCHOOSEFONT = TLPCHOOSEFONT type LPCHOOSEFONTA = TLPCHOOSEFONTA type LPCHOOSEFONTW = TLPCHOOSEFONTW type LPCIEXYZ = TLPCIEXYZ type LPCIEXYZTRIPLE = TLPCIEXYZTRIPLE type LPCLASSFACTORY = TLPCLASSFACTORY type LPCLIENTCREATESTRUCT = TLPCLIENTCREATESTRUCT type LPCLIPFORMAT = TLPCLIPFORMAT type LPCLSID = TLPCLSID type LPCMENUINFO = TLPCMENUINFO type LPCMENUITEMINFO = TLPCMENUITEMINFO type LPCMENUITEMINFOA = TLPCMENUITEMINFOA type LPCMENUITEMINFOW = TLPCMENUITEMINFOW type LPCMMCKINFO = TLPCMMCKINFO type LPCMMIOINFO = TLPCMMIOINFO type LPCODEBASEHOLD = TLPCODEBASEHOLD type LPCODEINSTALL = TLPCODEINSTALL type LPCOLESTR = TLPCOLESTR type LPCOLORADJUSTMENT = TLPCOLORADJUSTMENT type LPCOLORREF = TLPCOLORREF type LPCOMBOBOXINFO = TLPCOMBOBOXINFO type LPCOMMCONFIG = TLPCOMMCONFIG type LPCOMMPROP = TLPCOMMPROP type LPCOMMTIMEOUTS = TLPCOMMTIMEOUTS type LPCOMPAREITEMSTRUCT = TLPCOMPAREITEMSTRUCT type LPCOMPOSITIONFORM = TLPCOMPOSITIONFORM type LPCOMSTAT = TLPCOMSTAT type LPCONNECTDLGSTRUCT = TLPCONNECTDLGSTRUCT type LPCONNECTDLGSTRUCTA = TLPCONNECTDLGSTRUCTA type LPCONNECTDLGSTRUCTW = TLPCONNECTDLGSTRUCTW type LPCONTEXT = TLPCONTEXT type LPCPINFO = TLPCPINFO type LPCPINFOEX = TLPCPINFOEX type LPCPINFOEXA = TLPCPINFOEXA type LPCPINFOEXW = TLPCPINFOEXW const LPCPROPSHEETHEADER = 0 type LPCPROPSHEETHEADERA = TLPCPROPSHEETHEADERA type LPCPROPSHEETHEADERW = TLPCPROPSHEETHEADERW const LPCPROPSHEETPAGE = 0 type LPCPROPSHEETPAGEA = TLPCPROPSHEETPAGEA type LPCPROPSHEETPAGEA_LATEST = TLPCPROPSHEETPAGEA_LATEST type LPCPROPSHEETPAGEA_V1 = TLPCPROPSHEETPAGEA_V1 type LPCPROPSHEETPAGEA_V2 = TLPCPROPSHEETPAGEA_V2 type LPCPROPSHEETPAGEA_V3 = TLPCPROPSHEETPAGEA_V3 type LPCPROPSHEETPAGEW = TLPCPROPSHEETPAGEW type LPCPROPSHEETPAGEW_LATEST = TLPCPROPSHEETPAGEW_LATEST type LPCPROPSHEETPAGEW_V1 = TLPCPROPSHEETPAGEW_V1 type LPCPROPSHEETPAGEW_V2 = TLPCPROPSHEETPAGEW_V2 type LPCPROPSHEETPAGEW_V3 = TLPCPROPSHEETPAGEW_V3 const LPCPROPSHEETPAGE_LATEST = 0 const LPCPROPSHEETPAGE_V1 = 0 const LPCPROPSHEETPAGE_V2 = 0 const LPCPROPSHEETPAGE_V3 = 0 type LPCREATEERRORINFO = TLPCREATEERRORINFO type LPCREATEFILE2_EXTENDED_PARAMETERS = TLPCREATEFILE2_EXTENDED_PARAMETERS type LPCREATESTRUCT = TLPCREATESTRUCT type LPCREATESTRUCTA = TLPCREATESTRUCTA type LPCREATESTRUCTW = TLPCREATESTRUCTW type LPCREATETYPEINFO = TLPCREATETYPEINFO type LPCREATETYPEINFO2 = TLPCREATETYPEINFO2 type LPCREATETYPELIB = TLPCREATETYPELIB type LPCREATETYPELIB2 = TLPCREATETYPELIB2 type LPCREATE_PROCESS_DEBUG_INFO = TLPCREATE_PROCESS_DEBUG_INFO type LPCREATE_THREAD_DEBUG_INFO = TLPCREATE_THREAD_DEBUG_INFO type LPCRECT = TLPCRECT type LPCRECTL = TLPCRECTL type LPCRITICAL_SECTION = TLPCRITICAL_SECTION type LPCRITICAL_SECTION_DEBUG = TLPCRITICAL_SECTION_DEBUG type LPCSCARD_IO_REQUEST = TLPCSCARD_IO_REQUEST type LPCSCROLLINFO = TLPCSCROLLINFO type LPCSTR = TLPCSTR type LPCTCH = TLPCTCH type LPCTSTR = TLPCTSTR type LPCURRENCYFMT = TLPCURRENCYFMT type LPCURRENCYFMTA = TLPCURRENCYFMTA type LPCURRENCYFMTW = TLPCURRENCYFMTW type LPCURSORINFO = TLPCURSORINFO type LPCURSORSHAPE = TLPCURSORSHAPE type LPCUSTDATA = TLPCUSTDATA type LPCUSTDATAITEM = TLPCUSTDATAITEM type LPCUTSTR = TLPCUTSTR type LPCUWCHAR = TLPCUWCHAR type LPCUWSTR = TLPCUWSTR type LPCVOID = TLPCVOID type LPCWAVEFORMATEX = TLPCWAVEFORMATEX type LPCWCH = TLPCWCH type LPCWCHAR = TLPCWCHAR type LPCWPRETSTRUCT = TLPCWPRETSTRUCT type LPCWPSTRUCT = TLPCWPSTRUCT type LPCWSTR = TLPCWSTR type LPCY = TLPCY type LPDATAADVISEHOLDER = TLPDATAADVISEHOLDER type LPDATAFILTER = TLPDATAFILTER type LPDATAOBJECT = TLPDATAOBJECT type LPDATATYPES_INFO_1 = TLPDATATYPES_INFO_1 type LPDATATYPES_INFO_1A = TLPDATATYPES_INFO_1A type LPDATATYPES_INFO_1W = TLPDATATYPES_INFO_1W type LPDCB = TLPDCB type LPDEBUGHOOKINFO = TLPDEBUGHOOKINFO type LPDEBUG_EVENT = TLPDEBUG_EVENT type LPDECIMAL = TLPDECIMAL type LPDELETEITEMSTRUCT = TLPDELETEITEMSTRUCT type LPDESIGNVECTOR = TLPDESIGNVECTOR type LPDEVMODE = TLPDEVMODE type LPDEVMODEA = TLPDEVMODEA type LPDEVMODEW = TLPDEVMODEW type LPDEVNAMES = TLPDEVNAMES type LPDIBSECTION = TLPDIBSECTION type LPDISCDLGSTRUCT = TLPDISCDLGSTRUCT type LPDISCDLGSTRUCTA = TLPDISCDLGSTRUCTA type LPDISCDLGSTRUCTW = TLPDISCDLGSTRUCTW type LPDISPATCH = TLPDISPATCH type LPDISPLAY_DEVICE = TLPDISPLAY_DEVICE type LPDISPLAY_DEVICEA = TLPDISPLAY_DEVICEA type LPDISPLAY_DEVICEW = TLPDISPLAY_DEVICEW type LPDLGITEMTEMPLATE = TLPDLGITEMTEMPLATE type LPDLGITEMTEMPLATEA = TLPDLGITEMTEMPLATEA type LPDLGITEMTEMPLATEW = TLPDLGITEMTEMPLATEW type LPDLGTEMPLATE = TLPDLGTEMPLATE type LPDLGTEMPLATEA = TLPDLGTEMPLATEA type LPDLGTEMPLATEW = TLPDLGTEMPLATEW type LPDOCINFO = TLPDOCINFO type LPDOCINFOA = TLPDOCINFOA type LPDOCINFOW = TLPDOCINFOW type LPDOC_INFO_1 = TLPDOC_INFO_1 type LPDOC_INFO_1A = TLPDOC_INFO_1A type LPDOC_INFO_1W = TLPDOC_INFO_1W type LPDOC_INFO_2 = TLPDOC_INFO_2 type LPDOC_INFO_2A = TLPDOC_INFO_2A type LPDOC_INFO_2W = TLPDOC_INFO_2W type LPDOC_INFO_3 = TLPDOC_INFO_3 type LPDOC_INFO_3A = TLPDOC_INFO_3A type LPDOC_INFO_3W = TLPDOC_INFO_3W type LPDRAGINFO = TLPDRAGINFO type LPDRAGINFOA = TLPDRAGINFOA type LPDRAGINFOW = TLPDRAGINFOW type LPDRAWITEMSTRUCT = TLPDRAWITEMSTRUCT type LPDRAWTEXTPARAMS = TLPDRAWTEXTPARAMS type LPDRIVERSTATUS = TLPDRIVERSTATUS type LPDRIVER_INFO_1 = TLPDRIVER_INFO_1 type LPDRIVER_INFO_1A = TLPDRIVER_INFO_1A type LPDRIVER_INFO_1W = TLPDRIVER_INFO_1W type LPDRIVER_INFO_2 = TLPDRIVER_INFO_2 type LPDRIVER_INFO_2A = TLPDRIVER_INFO_2A type LPDRIVER_INFO_2W = TLPDRIVER_INFO_2W type LPDRIVER_INFO_3 = TLPDRIVER_INFO_3 type LPDRIVER_INFO_3A = TLPDRIVER_INFO_3A type LPDRIVER_INFO_3W = TLPDRIVER_INFO_3W type LPDRIVER_INFO_4 = TLPDRIVER_INFO_4 type LPDRIVER_INFO_4A = TLPDRIVER_INFO_4A type LPDRIVER_INFO_4W = TLPDRIVER_INFO_4W type LPDRIVER_INFO_5 = TLPDRIVER_INFO_5 type LPDRIVER_INFO_5A = TLPDRIVER_INFO_5A type LPDRIVER_INFO_5W = TLPDRIVER_INFO_5W type LPDRIVER_INFO_6 = TLPDRIVER_INFO_6 type LPDRIVER_INFO_6A = TLPDRIVER_INFO_6A type LPDRIVER_INFO_6W = TLPDRIVER_INFO_6W type LPDRIVER_INFO_8 = TLPDRIVER_INFO_8 type LPDRIVER_INFO_8A = TLPDRIVER_INFO_8A type LPDRIVER_INFO_8W = TLPDRIVER_INFO_8W type LPDROPSOURCE = TLPDROPSOURCE type LPDROPSTRUCT = TLPDROPSTRUCT type LPDROPTARGET = TLPDROPTARGET type LPDRVCALLBACK = TLPDRVCALLBACK type LPDRVCONFIGINFO = TLPDRVCONFIGINFO type LPDRVCONFIGINFOEX = TLPDRVCONFIGINFOEX type LPDWORD = TLPDWORD const LPD_DOUBLEBUFFER = 1 const LPD_SHARE_ACCUM = 256 const LPD_SHARE_DEPTH = 64 const LPD_SHARE_STENCIL = 128 const LPD_STEREO = 2 const LPD_SUPPORT_GDI = 16 const LPD_SUPPORT_OPENGL = 32 const LPD_SWAP_COPY = 1024 const LPD_SWAP_EXCHANGE = 512 const LPD_TRANSPARENT = 4096 const LPD_TYPE_COLORINDEX = 1 const LPD_TYPE_RGBA = 0 type LPELEMDESC = TLPELEMDESC type LPENCLAVE_ROUTINE = TLPENCLAVE_ROUTINE type LPENCODINGFILTERFACTORY = TLPENCODINGFILTERFACTORY type LPENHMETAHEADER = TLPENHMETAHEADER type LPENHMETARECORD = TLPENHMETARECORD type LPENUMFORMATETC = TLPENUMFORMATETC type LPENUMLOGFONT = TLPENUMLOGFONT type LPENUMLOGFONTA = TLPENUMLOGFONTA type LPENUMLOGFONTEX = TLPENUMLOGFONTEX type LPENUMLOGFONTEXA = TLPENUMLOGFONTEXA type LPENUMLOGFONTEXDV = TLPENUMLOGFONTEXDV type LPENUMLOGFONTEXDVA = TLPENUMLOGFONTEXDVA type LPENUMLOGFONTEXDVW = TLPENUMLOGFONTEXDVW type LPENUMLOGFONTEXW = TLPENUMLOGFONTEXW type LPENUMLOGFONTW = TLPENUMLOGFONTW type LPENUMMONIKER = TLPENUMMONIKER type LPENUMOLEVERB = TLPENUMOLEVERB type LPENUMSTATDATA = TLPENUMSTATDATA type LPENUMSTATPROPSETSTG = TLPENUMSTATPROPSETSTG type LPENUMSTATPROPSTG = TLPENUMSTATPROPSTG type LPENUMSTATSTG = TLPENUMSTATSTG type LPENUMSTRING = TLPENUMSTRING type LPENUMTEXTMETRIC = TLPENUMTEXTMETRIC type LPENUMTEXTMETRICA = TLPENUMTEXTMETRICA type LPENUMTEXTMETRICW = TLPENUMTEXTMETRICW type LPENUMUNKNOWN = TLPENUMUNKNOWN type LPENUMVARIANT = TLPENUMVARIANT type LPENUM_SERVICE_STATUS = TLPENUM_SERVICE_STATUS type LPENUM_SERVICE_STATUSA = TLPENUM_SERVICE_STATUSA type LPENUM_SERVICE_STATUSW = TLPENUM_SERVICE_STATUSW type LPENUM_SERVICE_STATUS_PROCESS = TLPENUM_SERVICE_STATUS_PROCESS type LPENUM_SERVICE_STATUS_PROCESSA = TLPENUM_SERVICE_STATUS_PROCESSA type LPENUM_SERVICE_STATUS_PROCESSW = TLPENUM_SERVICE_STATUS_PROCESSW type LPERRORINFO = TLPERRORINFO type LPERRORLOG = TLPERRORLOG type LPEVENTLOG_FULL_INFORMATION = TLPEVENTLOG_FULL_INFORMATION type LPEVENTMSG = TLPEVENTMSG type LPEVENTMSGMSG = TLPEVENTMSGMSG type LPEXCEPINFO = TLPEXCEPINFO type LPEXCEPTION_DEBUG_INFO = TLPEXCEPTION_DEBUG_INFO type LPEXCEPTION_POINTERS = TLPEXCEPTION_POINTERS type LPEXCEPTION_RECORD = TLPEXCEPTION_RECORD type LPEXIT_PROCESS_DEBUG_INFO = TLPEXIT_PROCESS_DEBUG_INFO type LPEXIT_THREAD_DEBUG_INFO = TLPEXIT_THREAD_DEBUG_INFO type LPEXTERNALCONNECTION = TLPEXTERNALCONNECTION type LPEXTLOGFONT = TLPEXTLOGFONT type LPEXTLOGFONTA = TLPEXTLOGFONTA type LPEXTLOGFONTW = TLPEXTLOGFONTW type LPEXTLOGPEN = TLPEXTLOGPEN type LPEXTLOGPEN32 = TLPEXTLOGPEN32 type LPFD_SET = TLPFD_SET type LPFIBER_START_ROUTINE = TLPFIBER_START_ROUTINE type LPFILETIME = TLPFILETIME type LPFILE_ID_DESCRIPTOR = TLPFILE_ID_DESCRIPTOR type LPFILTERKEYS = TLPFILTERKEYS type LPFINDREPLACE = TLPFINDREPLACE type LPFINDREPLACEA = TLPFINDREPLACEA type LPFINDREPLACEW = TLPFINDREPLACEW type LPFMTID = TLPFMTID type LPFNADDPROPSHEETPAGE = TLPFNADDPROPSHEETPAGE type LPFNADDPROPSHEETPAGES = TLPFNADDPROPSHEETPAGES type LPFNCANUNLOADNOW = TLPFNCANUNLOADNOW type LPFNDEVCAPS = TLPFNDEVCAPS type LPFNDEVMODE = TLPFNDEVMODE type LPFNGETCLASSOBJECT = TLPFNGETCLASSOBJECT const LPFNPSPCALLBACK = 0 type LPFNPSPCALLBACKA = TLPFNPSPCALLBACKA type LPFNPSPCALLBACKW = TLPFNPSPCALLBACKW type LPFONTSIGNATURE = TLPFONTSIGNATURE type LPFORMATETC = TLPFORMATETC type LPFORM_INFO_1 = TLPFORM_INFO_1 type LPFORM_INFO_1A = TLPFORM_INFO_1A type LPFORM_INFO_1W = TLPFORM_INFO_1W type LPFRHOOKPROC = TLPFRHOOKPROC type LPFUNCDESC = TLPFUNCDESC type LPFXPT16DOT16 = TLPFXPT16DOT16 type LPFXPT2DOT30 = TLPFXPT2DOT30 type LPGCP_RESULTS = TLPGCP_RESULTS type LPGCP_RESULTSA = TLPGCP_RESULTSA type LPGCP_RESULTSW = TLPGCP_RESULTSW type LPGETBINDHANDLE = TLPGETBINDHANDLE type LPGETVERSIONINPARAMS = TLPGETVERSIONINPARAMS type LPGLOBALINTERFACETABLE = TLPGLOBALINTERFACETABLE type LPGLYPHMETRICS = TLPGLYPHMETRICS type LPGLYPHMETRICSFLOAT = TLPGLYPHMETRICSFLOAT type LPGLYPHSET = TLPGLYPHSET type LPGRADIENT_RECT = TLPGRADIENT_RECT type LPGRADIENT_TRIANGLE = TLPGRADIENT_TRIANGLE type LPGUID = TLPGUID type LPGUITHREADINFO = TLPGUITHREADINFO type LPHANDLE = TLPHANDLE type LPHANDLER_FUNCTION = TLPHANDLER_FUNCTION type LPHANDLER_FUNCTION_EX = TLPHANDLER_FUNCTION_EX type LPHANDLETABLE = TLPHANDLETABLE type LPHARDWAREHOOKSTRUCT = TLPHARDWAREHOOKSTRUCT type LPHARDWAREINPUT = TLPHARDWAREINPUT type LPHEAP_SUMMARY = TLPHEAP_SUMMARY type LPHELPINFO = TLPHELPINFO type LPHELPWININFO = TLPHELPWININFO type LPHELPWININFOA = TLPHELPWININFOA type LPHELPWININFOW = TLPHELPWININFOW type LPHIGHCONTRAST = TLPHIGHCONTRAST type LPHIGHCONTRASTA = TLPHIGHCONTRASTA type LPHIGHCONTRASTW = TLPHIGHCONTRASTW type LPHIT_LOGGING_INFO = TLPHIT_LOGGING_INFO type LPHKL = TLPHKL type LPHMIDI = TLPHMIDI type LPHMIDIIN = TLPHMIDIIN type LPHMIDIOUT = TLPHMIDIOUT type LPHMIDISTRM = TLPHMIDISTRM type LPHMIXER = TLPHMIXER type LPHMIXEROBJ = TLPHMIXEROBJ type LPHOSTENT = TLPHOSTENT type LPHTTPNEGOTIATE = TLPHTTPNEGOTIATE type LPHTTPNEGOTIATE2 = TLPHTTPNEGOTIATE2 type LPHTTPNEGOTIATE3 = TLPHTTPNEGOTIATE3 type LPHTTPSECURITY = TLPHTTPSECURITY type LPHWAVEIN = TLPHWAVEIN type LPHWAVEOUT = TLPHWAVEOUT type LPHW_PROFILE_INFO = TLPHW_PROFILE_INFO type LPHW_PROFILE_INFOA = TLPHW_PROFILE_INFOA type LPHW_PROFILE_INFOW = TLPHW_PROFILE_INFOW type LPICONMETRICS = TLPICONMETRICS type LPICONMETRICSA = TLPICONMETRICSA type LPICONMETRICSW = TLPICONMETRICSW type LPIDEREGS = TLPIDEREGS type LPIDLDESC = TLPIDLDESC type LPIID = TLPIID type LPIINTERNET = TLPIINTERNET type LPIINTERNETBINDINFO = TLPIINTERNETBINDINFO type LPIINTERNETBINDINFOEX = TLPIINTERNETBINDINFOEX type LPIINTERNETPRIORITY = TLPIINTERNETPRIORITY type LPIINTERNETPROTOCOL = TLPIINTERNETPROTOCOL type LPIINTERNETPROTOCOLINFO = TLPIINTERNETPROTOCOLINFO type LPIINTERNETPROTOCOLROOT = TLPIINTERNETPROTOCOLROOT type LPIINTERNETPROTOCOLSINK = TLPIINTERNETPROTOCOLSINK type LPIINTERNETPROTOCOLSINKStackable = TLPIINTERNETPROTOCOLSINKStackable type LPIINTERNETSESSION = TLPIINTERNETSESSION type LPIINTERNETTHREADSWITCH = TLPIINTERNETTHREADSWITCH type LPIMECHARPOSITION = TLPIMECHARPOSITION type LPIMEMENUITEMINFO = TLPIMEMENUITEMINFO type LPIMEMENUITEMINFOA = TLPIMEMENUITEMINFOA type LPIMEMENUITEMINFOW = TLPIMEMENUITEMINFOW type LPINITIALIZESPY = TLPINITIALIZESPY type LPINIT_ONCE = TLPINIT_ONCE type LPINPUT = TLPINPUT type LPINT = TLPINT type LPINTERFACEDATA = TLPINTERFACEDATA type LPINTERFACEINFO = TLPINTERFACEINFO type LPIN_ADDR = TLPIN_ADDR type LPIWRAPPEDPROTOCOL = TLPIWRAPPEDPROTOCOL type LPJIT_DEBUG_INFO = TLPJIT_DEBUG_INFO type LPJIT_DEBUG_INFO32 = TLPJIT_DEBUG_INFO32 type LPJIT_DEBUG_INFO64 = TLPJIT_DEBUG_INFO64 type LPJOB_INFO_1 = TLPJOB_INFO_1 type LPJOB_INFO_1A = TLPJOB_INFO_1A type LPJOB_INFO_1W = TLPJOB_INFO_1W type LPJOB_INFO_2 = TLPJOB_INFO_2 type LPJOB_INFO_2A = TLPJOB_INFO_2A type LPJOB_INFO_2W = TLPJOB_INFO_2W type LPJOB_INFO_3 = TLPJOB_INFO_3 type LPJOYCAPS = TLPJOYCAPS type LPJOYCAPS2 = TLPJOYCAPS2 type LPJOYCAPS2A = TLPJOYCAPS2A type LPJOYCAPS2W = TLPJOYCAPS2W type LPJOYCAPSA = TLPJOYCAPSA type LPJOYCAPSW = TLPJOYCAPSW type LPJOYINFO = TLPJOYINFO type LPJOYINFOEX = TLPJOYINFOEX type LPKBDLLHOOKSTRUCT = TLPKBDLLHOOKSTRUCT type LPKERNINGPAIR = TLPKERNINGPAIR type LPKEYARRAY = TLPKEYARRAY type LPKEYBDINPUT = TLPKEYBDINPUT type LPLAYERPLANEDESCRIPTOR = TLPLAYERPLANEDESCRIPTOR type LPLC_ID = TLPLC_ID type LPLDT_ENTRY = TLPLDT_ENTRY type LPLINGER = TLPLINGER type LPLINKSRCDESCRIPTOR = TLPLINKSRCDESCRIPTOR type LPLOAD_DLL_DEBUG_INFO = TLPLOAD_DLL_DEBUG_INFO type LPLOCALESIGNATURE = TLPLOCALESIGNATURE type LPLOCKBYTES = TLPLOCKBYTES type LPLOGBRUSH = TLPLOGBRUSH type LPLOGBRUSH32 = TLPLOGBRUSH32 type LPLOGCOLORSPACE = TLPLOGCOLORSPACE type LPLOGCOLORSPACEA = TLPLOGCOLORSPACEA type LPLOGCOLORSPACEW = TLPLOGCOLORSPACEW type LPLOGFONT = TLPLOGFONT type LPLOGFONTA = TLPLOGFONTA type LPLOGFONTW = TLPLOGFONTW type LPLOGPALETTE = TLPLOGPALETTE type LPLOGPEN = TLPLOGPEN type LPLONG = TLPLONG type LPMALLOC = TLPMALLOC type LPMALLOCSPY = TLPMALLOCSPY type LPMARSHAL = TLPMARSHAL type LPMARSHAL2 = TLPMARSHAL2 type LPMAT2 = TLPMAT2 type LPMCI_ANIM_OPEN_PARMS = TLPMCI_ANIM_OPEN_PARMS type LPMCI_ANIM_OPEN_PARMSA = TLPMCI_ANIM_OPEN_PARMSA type LPMCI_ANIM_OPEN_PARMSW = TLPMCI_ANIM_OPEN_PARMSW type LPMCI_ANIM_PLAY_PARMS = TLPMCI_ANIM_PLAY_PARMS type LPMCI_ANIM_RECT_PARMS = TLPMCI_ANIM_RECT_PARMS type LPMCI_ANIM_STEP_PARMS = TLPMCI_ANIM_STEP_PARMS type LPMCI_ANIM_UPDATE_PARMS = TLPMCI_ANIM_UPDATE_PARMS type LPMCI_ANIM_WINDOW_PARMS = TLPMCI_ANIM_WINDOW_PARMS type LPMCI_ANIM_WINDOW_PARMSA = TLPMCI_ANIM_WINDOW_PARMSA type LPMCI_ANIM_WINDOW_PARMSW = TLPMCI_ANIM_WINDOW_PARMSW type LPMCI_BREAK_PARMS = TLPMCI_BREAK_PARMS type LPMCI_GENERIC_PARMS = TLPMCI_GENERIC_PARMS type LPMCI_GETDEVCAPS_PARMS = TLPMCI_GETDEVCAPS_PARMS type LPMCI_INFO_PARMS = TLPMCI_INFO_PARMS type LPMCI_INFO_PARMSA = TLPMCI_INFO_PARMSA type LPMCI_INFO_PARMSW = TLPMCI_INFO_PARMSW type LPMCI_LOAD_PARMS = TLPMCI_LOAD_PARMS type LPMCI_LOAD_PARMSA = TLPMCI_LOAD_PARMSA type LPMCI_LOAD_PARMSW = TLPMCI_LOAD_PARMSW type LPMCI_OPEN_PARMS = TLPMCI_OPEN_PARMS type LPMCI_OPEN_PARMSA = TLPMCI_OPEN_PARMSA type LPMCI_OPEN_PARMSW = TLPMCI_OPEN_PARMSW type LPMCI_OVLY_LOAD_PARMS = TLPMCI_OVLY_LOAD_PARMS type LPMCI_OVLY_LOAD_PARMSA = TLPMCI_OVLY_LOAD_PARMSA type LPMCI_OVLY_LOAD_PARMSW = TLPMCI_OVLY_LOAD_PARMSW type LPMCI_OVLY_OPEN_PARMS = TLPMCI_OVLY_OPEN_PARMS type LPMCI_OVLY_OPEN_PARMSA = TLPMCI_OVLY_OPEN_PARMSA type LPMCI_OVLY_OPEN_PARMSW = TLPMCI_OVLY_OPEN_PARMSW type LPMCI_OVLY_RECT_PARMS = TLPMCI_OVLY_RECT_PARMS type LPMCI_OVLY_SAVE_PARMS = TLPMCI_OVLY_SAVE_PARMS type LPMCI_OVLY_SAVE_PARMSA = TLPMCI_OVLY_SAVE_PARMSA type LPMCI_OVLY_SAVE_PARMSW = TLPMCI_OVLY_SAVE_PARMSW type LPMCI_OVLY_WINDOW_PARMS = TLPMCI_OVLY_WINDOW_PARMS type LPMCI_OVLY_WINDOW_PARMSA = TLPMCI_OVLY_WINDOW_PARMSA type LPMCI_OVLY_WINDOW_PARMSW = TLPMCI_OVLY_WINDOW_PARMSW type LPMCI_PLAY_PARMS = TLPMCI_PLAY_PARMS type LPMCI_RECORD_PARMS = TLPMCI_RECORD_PARMS type LPMCI_SAVE_PARMS = TLPMCI_SAVE_PARMS type LPMCI_SAVE_PARMSA = TLPMCI_SAVE_PARMSA type LPMCI_SAVE_PARMSW = TLPMCI_SAVE_PARMSW type LPMCI_SEEK_PARMS = TLPMCI_SEEK_PARMS type LPMCI_SEQ_SET_PARMS = TLPMCI_SEQ_SET_PARMS type LPMCI_SET_PARMS = TLPMCI_SET_PARMS type LPMCI_STATUS_PARMS = TLPMCI_STATUS_PARMS type LPMCI_SYSINFO_PARMS = TLPMCI_SYSINFO_PARMS type LPMCI_SYSINFO_PARMSA = TLPMCI_SYSINFO_PARMSA type LPMCI_SYSINFO_PARMSW = TLPMCI_SYSINFO_PARMSW type LPMCI_VD_ESCAPE_PARMS = TLPMCI_VD_ESCAPE_PARMS type LPMCI_VD_ESCAPE_PARMSA = TLPMCI_VD_ESCAPE_PARMSA type LPMCI_VD_ESCAPE_PARMSW = TLPMCI_VD_ESCAPE_PARMSW type LPMCI_VD_PLAY_PARMS = TLPMCI_VD_PLAY_PARMS type LPMCI_VD_STEP_PARMS = TLPMCI_VD_STEP_PARMS type LPMCI_WAVE_DELETE_PARMS = TLPMCI_WAVE_DELETE_PARMS type LPMCI_WAVE_OPEN_PARMS = TLPMCI_WAVE_OPEN_PARMS type LPMCI_WAVE_OPEN_PARMSA = TLPMCI_WAVE_OPEN_PARMSA type LPMCI_WAVE_OPEN_PARMSW = TLPMCI_WAVE_OPEN_PARMSW type LPMCI_WAVE_SET_PARMS = TLPMCI_WAVE_SET_PARMS type LPMDICREATESTRUCT = TLPMDICREATESTRUCT type LPMDICREATESTRUCTA = TLPMDICREATESTRUCTA type LPMDICREATESTRUCTW = TLPMDICREATESTRUCTW type LPMDINEXTMENU = TLPMDINEXTMENU type LPMEASUREITEMSTRUCT = TLPMEASUREITEMSTRUCT type LPMEMORYSTATUS = TLPMEMORYSTATUS type LPMEMORYSTATUSEX = TLPMEMORYSTATUSEX type LPMENUBARINFO = TLPMENUBARINFO type LPMENUINFO = TLPMENUINFO type LPMENUITEMINFO = TLPMENUITEMINFO type LPMENUITEMINFOA = TLPMENUITEMINFOA type LPMENUITEMINFOW = TLPMENUITEMINFOW type LPMENUTEMPLATE = TLPMENUTEMPLATE type LPMENUTEMPLATEA = TLPMENUTEMPLATEA type LPMENUTEMPLATEW = TLPMENUTEMPLATEW type LPMESSAGEFILTER = TLPMESSAGEFILTER type LPMETAFILEPICT = TLPMETAFILEPICT type LPMETAHEADER = TLPMETAHEADER type LPMETARECORD = TLPMETARECORD type LPMETHODDATA = TLPMETHODDATA type LPMIDICALLBACK = TLPMIDICALLBACK type LPMIDIHDR = TLPMIDIHDR type LPMIDIINCAPS = TLPMIDIINCAPS type LPMIDIINCAPS2 = TLPMIDIINCAPS2 type LPMIDIINCAPS2A = TLPMIDIINCAPS2A type LPMIDIINCAPS2W = TLPMIDIINCAPS2W type LPMIDIINCAPSA = TLPMIDIINCAPSA type LPMIDIINCAPSW = TLPMIDIINCAPSW type LPMIDIOUTCAPS = TLPMIDIOUTCAPS type LPMIDIOUTCAPS2 = TLPMIDIOUTCAPS2 type LPMIDIOUTCAPS2A = TLPMIDIOUTCAPS2A type LPMIDIOUTCAPS2W = TLPMIDIOUTCAPS2W type LPMIDIOUTCAPSA = TLPMIDIOUTCAPSA type LPMIDIOUTCAPSW = TLPMIDIOUTCAPSW type LPMIDIPROPTEMPO = TLPMIDIPROPTEMPO type LPMIDIPROPTIMEDIV = TLPMIDIPROPTIMEDIV type LPMINIMIZEDMETRICS = TLPMINIMIZEDMETRICS type LPMINMAXINFO = TLPMINMAXINFO type LPMIXERCAPS = TLPMIXERCAPS type LPMIXERCAPS2 = TLPMIXERCAPS2 type LPMIXERCAPS2A = TLPMIXERCAPS2A type LPMIXERCAPS2W = TLPMIXERCAPS2W type LPMIXERCAPSA = TLPMIXERCAPSA type LPMIXERCAPSW = TLPMIXERCAPSW type LPMIXERCONTROL = TLPMIXERCONTROL type LPMIXERCONTROLA = TLPMIXERCONTROLA type LPMIXERCONTROLDETAILS = TLPMIXERCONTROLDETAILS type LPMIXERCONTROLDETAILS_BOOLEAN = TLPMIXERCONTROLDETAILS_BOOLEAN type LPMIXERCONTROLDETAILS_LISTTEXT = TLPMIXERCONTROLDETAILS_LISTTEXT type LPMIXERCONTROLDETAILS_LISTTEXTA = TLPMIXERCONTROLDETAILS_LISTTEXTA type LPMIXERCONTROLDETAILS_LISTTEXTW = TLPMIXERCONTROLDETAILS_LISTTEXTW type LPMIXERCONTROLDETAILS_SIGNED = TLPMIXERCONTROLDETAILS_SIGNED type LPMIXERCONTROLDETAILS_UNSIGNED = TLPMIXERCONTROLDETAILS_UNSIGNED type LPMIXERCONTROLW = TLPMIXERCONTROLW type LPMIXERLINE = TLPMIXERLINE type LPMIXERLINEA = TLPMIXERLINEA type LPMIXERLINECONTROLS = TLPMIXERLINECONTROLS type LPMIXERLINECONTROLSA = TLPMIXERLINECONTROLSA type LPMIXERLINECONTROLSW = TLPMIXERLINECONTROLSW type LPMIXERLINEW = TLPMIXERLINEW type LPMMCKINFO = TLPMMCKINFO type LPMMIOINFO = TLPMMIOINFO type LPMMIOPROC = TLPMMIOPROC type LPMMTIME = TLPMMTIME type LPMODEMDEVCAPS = TLPMODEMDEVCAPS type LPMODEMSETTINGS = TLPMODEMSETTINGS type LPMONIKER = TLPMONIKER type LPMONIKERPROP = TLPMONIKERPROP type LPMONITORINFO = TLPMONITORINFO type LPMONITORINFOEX = TLPMONITORINFOEX type LPMONITORINFOEXA = TLPMONITORINFOEXA type LPMONITORINFOEXW = TLPMONITORINFOEXW type LPMONITOR_INFO_1 = TLPMONITOR_INFO_1 type LPMONITOR_INFO_1A = TLPMONITOR_INFO_1A type LPMONITOR_INFO_1W = TLPMONITOR_INFO_1W type LPMONITOR_INFO_2 = TLPMONITOR_INFO_2 type LPMONITOR_INFO_2A = TLPMONITOR_INFO_2A type LPMONITOR_INFO_2W = TLPMONITOR_INFO_2W type LPMOUSEHOOKSTRUCT = TLPMOUSEHOOKSTRUCT type LPMOUSEHOOKSTRUCTEX = TLPMOUSEHOOKSTRUCTEX type LPMOUSEINPUT = TLPMOUSEINPUT type LPMOUSEKEYS = TLPMOUSEKEYS type LPMOUSEMOVEPOINT = TLPMOUSEMOVEPOINT type LPMSG = TLPMSG type LPMSGBOXPARAMS = TLPMSGBOXPARAMS type LPMSGBOXPARAMSA = TLPMSGBOXPARAMSA type LPMSGBOXPARAMSW = TLPMSGBOXPARAMSW type LPMSLLHOOKSTRUCT = TLPMSLLHOOKSTRUCT type LPMULTIKEYHELP = TLPMULTIKEYHELP type LPMULTIKEYHELPA = TLPMULTIKEYHELPA type LPMULTIKEYHELPW = TLPMULTIKEYHELPW type LPMULTIQI = TLPMULTIQI type LPNCCALCSIZE_PARAMS = TLPNCCALCSIZE_PARAMS type LPNETCONNECTINFOSTRUCT = TLPNETCONNECTINFOSTRUCT type LPNETINFOSTRUCT = TLPNETINFOSTRUCT type LPNETRESOURCE = TLPNETRESOURCE type LPNETRESOURCEA = TLPNETRESOURCEA type LPNETRESOURCEW = TLPNETRESOURCEW type LPNEWTEXTMETRIC = TLPNEWTEXTMETRIC type LPNEWTEXTMETRICA = TLPNEWTEXTMETRICA type LPNEWTEXTMETRICW = TLPNEWTEXTMETRICW type LPNLSVERSIONINFO = TLPNLSVERSIONINFO type LPNLSVERSIONINFOEX = TLPNLSVERSIONINFOEX type LPNMHDR = TLPNMHDR type LPNONCLIENTMETRICS = TLPNONCLIENTMETRICS type LPNONCLIENTMETRICSA = TLPNONCLIENTMETRICSA type LPNONCLIENTMETRICSW = TLPNONCLIENTMETRICSW type LPNUMBERFMT = TLPNUMBERFMT type LPNUMBERFMTA = TLPNUMBERFMTA type LPNUMBERFMTW = TLPNUMBERFMTW type LPOBJECTDESCRIPTOR = TLPOBJECTDESCRIPTOR type LPOCNCHKPROC = TLPOCNCHKPROC const LPOCNCONNPROC = 0 type LPOCNCONNPROCA = TLPOCNCONNPROCA type LPOCNCONNPROCW = TLPOCNCONNPROCW type LPOCNDSCPROC = TLPOCNDSCPROC type LPOFNHOOKPROC = TLPOFNHOOKPROC type LPOFNOTIFY = TLPOFNOTIFY type LPOFNOTIFYA = TLPOFNOTIFYA type LPOFNOTIFYEX = TLPOFNOTIFYEX type LPOFNOTIFYEXA = TLPOFNOTIFYEXA type LPOFNOTIFYEXW = TLPOFNOTIFYEXW type LPOFNOTIFYW = TLPOFNOTIFYW type LPOFSTRUCT = TLPOFSTRUCT const LPOINET = 0 const LPOINETBINDINFO = 0 const LPOINETPRIORITY = 0 const LPOINETPROTOCOL = 0 const LPOINETPROTOCOLEX = 0 const LPOINETPROTOCOLINFO = 0 const LPOINETPROTOCOLROOT = 0 const LPOINETPROTOCOLSINK = 0 const LPOINETPROTOCOLSINKSTACKABLE = 0 const LPOINETSESSION = 0 const LPOINETTHREADSWITCH = 0 type LPOLEADVISEHOLDER = TLPOLEADVISEHOLDER type LPOLECACHE = TLPOLECACHE type LPOLECACHE2 = TLPOLECACHE2 type LPOLECACHECONTROL = TLPOLECACHECONTROL type LPOLECLIENTSITE = TLPOLECLIENTSITE type LPOLECONTAINER = TLPOLECONTAINER type LPOLEINPLACEACTIVEOBJECT = TLPOLEINPLACEACTIVEOBJECT type LPOLEINPLACEFRAME = TLPOLEINPLACEFRAME type LPOLEINPLACEFRAMEINFO = TLPOLEINPLACEFRAMEINFO type LPOLEINPLACEOBJECT = TLPOLEINPLACEOBJECT type LPOLEINPLACESITE = TLPOLEINPLACESITE type LPOLEINPLACEUIWINDOW = TLPOLEINPLACEUIWINDOW type LPOLEITEMCONTAINER = TLPOLEITEMCONTAINER type LPOLELINK = TLPOLELINK type LPOLEMENUGROUPWIDTHS = TLPOLEMENUGROUPWIDTHS type LPOLEOBJECT = TLPOLEOBJECT type LPOLERENDER = TLPOLERENDER type LPOLESTR = TLPOLESTR type LPOLESTREAM = TLPOLESTREAM type LPOLESTREAMVTBL = TLPOLESTREAMVTBL type LPOLEUPDATE = TLPOLEUPDATE type LPOLEVERB = TLPOLEVERB type LPOLEWINDOW = TLPOLEWINDOW type LPOPENCARDNAME = TLPOPENCARDNAME type LPOPENCARDNAMEA = TLPOPENCARDNAMEA const LPOPENCARDNAMEA_EX = 0 type LPOPENCARDNAMEW = TLPOPENCARDNAMEW const LPOPENCARDNAMEW_EX = 0 const LPOPENCARDNAME_A = 0 type LPOPENCARDNAME_EX = TLPOPENCARDNAME_EX type LPOPENCARDNAME_EXA = TLPOPENCARDNAME_EXA type LPOPENCARDNAME_EXW = TLPOPENCARDNAME_EXW const LPOPENCARDNAME_W = 0 type LPOPENCARD_SEARCH_CRITERIA = TLPOPENCARD_SEARCH_CRITERIA type LPOPENCARD_SEARCH_CRITERIAA = TLPOPENCARD_SEARCH_CRITERIAA type LPOPENCARD_SEARCH_CRITERIAW = TLPOPENCARD_SEARCH_CRITERIAW type LPOPENFILENAME = TLPOPENFILENAME type LPOPENFILENAMEA = TLPOPENFILENAMEA type LPOPENFILENAMEW = TLPOPENFILENAMEW type LPOPENFILENAME_NT4 = TLPOPENFILENAME_NT4 type LPOPENFILENAME_NT4A = TLPOPENFILENAME_NT4A type LPOPENFILENAME_NT4W = TLPOPENFILENAME_NT4W type LPOSVERSIONINFO = TLPOSVERSIONINFO type LPOSVERSIONINFOA = TLPOSVERSIONINFOA type LPOSVERSIONINFOEX = TLPOSVERSIONINFOEX type LPOSVERSIONINFOEXA = TLPOSVERSIONINFOEXA type LPOSVERSIONINFOEXW = TLPOSVERSIONINFOEXW type LPOSVERSIONINFOW = TLPOSVERSIONINFOW type LPOUTLINETEXTMETRIC = TLPOUTLINETEXTMETRIC type LPOUTLINETEXTMETRICA = TLPOUTLINETEXTMETRICA type LPOUTLINETEXTMETRICW = TLPOUTLINETEXTMETRICW type LPOUTPUT_DEBUG_STRING_INFO = TLPOUTPUT_DEBUG_STRING_INFO type LPOVERLAPPED = TLPOVERLAPPED type LPOVERLAPPED_COMPLETION_ROUTINE = TLPOVERLAPPED_COMPLETION_ROUTINE type LPOVERLAPPED_ENTRY = TLPOVERLAPPED_ENTRY type LPPAGEPAINTHOOK = TLPPAGEPAINTHOOK type LPPAGESETUPDLG = TLPPAGESETUPDLG type LPPAGESETUPDLGA = TLPPAGESETUPDLGA type LPPAGESETUPDLGW = TLPPAGESETUPDLGW type LPPAGESETUPHOOK = TLPPAGESETUPHOOK type LPPAINTSTRUCT = TLPPAINTSTRUCT type LPPALETTEENTRY = TLPPALETTEENTRY type LPPANOSE = TLPPANOSE type LPPARAMDATA = TLPPARAMDATA type LPPARAMDESC = TLPPARAMDESC type LPPARAMDESCEX = TLPPARAMDESCEX type LPPARSEDISPLAYNAME = TLPPARSEDISPLAYNAME type LPPATCHARRAY = TLPPATCHARRAY type LPPATTERN = TLPPATTERN type LPPCMWAVEFORMAT = TLPPCMWAVEFORMAT type LPPELARRAY = TLPPELARRAY type LPPERSIST = TLPPERSIST type LPPERSISTFILE = TLPPERSISTFILE type LPPERSISTMONIKER = TLPPERSISTMONIKER type LPPERSISTSTORAGE = TLPPERSISTSTORAGE type LPPERSISTSTREAM = TLPPERSISTSTREAM type LPPIXELFORMATDESCRIPTOR = TLPPIXELFORMATDESCRIPTOR type LPPOINT = TLPPOINT type LPPOINTFX = TLPPOINTFX type LPPOINTS = TLPPOINTS type LPPOLYTEXT = TLPPOLYTEXT type LPPOLYTEXTA = TLPPOLYTEXTA type LPPOLYTEXTW = TLPPOLYTEXTW type LPPORT_INFO_1 = TLPPORT_INFO_1 type LPPORT_INFO_1A = TLPPORT_INFO_1A type LPPORT_INFO_1W = TLPPORT_INFO_1W type LPPORT_INFO_2 = TLPPORT_INFO_2 type LPPORT_INFO_2A = TLPPORT_INFO_2A type LPPORT_INFO_2W = TLPPORT_INFO_2W type LPPORT_INFO_3 = TLPPORT_INFO_3 type LPPORT_INFO_3A = TLPPORT_INFO_3A type LPPORT_INFO_3W = TLPPORT_INFO_3W type LPPOWER_REQUEST_CONTEXT = TLPPOWER_REQUEST_CONTEXT type LPPRINTDLG = TLPPRINTDLG type LPPRINTDLGA = TLPPRINTDLGA type LPPRINTDLGEX = TLPPRINTDLGEX type LPPRINTDLGEXA = TLPPRINTDLGEXA type LPPRINTDLGEXW = TLPPRINTDLGEXW type LPPRINTDLGW = TLPPRINTDLGW type LPPRINTER_DEFAULTS = TLPPRINTER_DEFAULTS type LPPRINTER_DEFAULTSA = TLPPRINTER_DEFAULTSA type LPPRINTER_DEFAULTSW = TLPPRINTER_DEFAULTSW type LPPRINTER_ENUM_VALUES = TLPPRINTER_ENUM_VALUES type LPPRINTER_ENUM_VALUESA = TLPPRINTER_ENUM_VALUESA type LPPRINTER_ENUM_VALUESW = TLPPRINTER_ENUM_VALUESW type LPPRINTER_INFO_1 = TLPPRINTER_INFO_1 type LPPRINTER_INFO_1A = TLPPRINTER_INFO_1A type LPPRINTER_INFO_1W = TLPPRINTER_INFO_1W type LPPRINTER_INFO_2 = TLPPRINTER_INFO_2 type LPPRINTER_INFO_2A = TLPPRINTER_INFO_2A type LPPRINTER_INFO_2W = TLPPRINTER_INFO_2W type LPPRINTER_INFO_3 = TLPPRINTER_INFO_3 type LPPRINTER_INFO_4 = TLPPRINTER_INFO_4 type LPPRINTER_INFO_4A = TLPPRINTER_INFO_4A type LPPRINTER_INFO_4W = TLPPRINTER_INFO_4W type LPPRINTER_INFO_5 = TLPPRINTER_INFO_5 type LPPRINTER_INFO_5A = TLPPRINTER_INFO_5A type LPPRINTER_INFO_5W = TLPPRINTER_INFO_5W type LPPRINTER_INFO_6 = TLPPRINTER_INFO_6 type LPPRINTER_INFO_7 = TLPPRINTER_INFO_7 type LPPRINTER_INFO_7A = TLPPRINTER_INFO_7A type LPPRINTER_INFO_7W = TLPPRINTER_INFO_7W type LPPRINTER_INFO_8 = TLPPRINTER_INFO_8 type LPPRINTER_INFO_8A = TLPPRINTER_INFO_8A type LPPRINTER_INFO_8W = TLPPRINTER_INFO_8W type LPPRINTER_INFO_9 = TLPPRINTER_INFO_9 type LPPRINTER_INFO_9A = TLPPRINTER_INFO_9A type LPPRINTER_INFO_9W = TLPPRINTER_INFO_9W type LPPRINTER_NOTIFY_INFO = TLPPRINTER_NOTIFY_INFO type LPPRINTER_NOTIFY_INFO_DATA = TLPPRINTER_NOTIFY_INFO_DATA type LPPRINTER_NOTIFY_OPTIONS = TLPPRINTER_NOTIFY_OPTIONS type LPPRINTER_NOTIFY_OPTIONS_TYPE = TLPPRINTER_NOTIFY_OPTIONS_TYPE type LPPRINTHOOKPROC = TLPPRINTHOOKPROC type LPPRINTPAGERANGE = TLPPRINTPAGERANGE type LPPRINTPROCESSOR_INFO_1 = TLPPRINTPROCESSOR_INFO_1 type LPPRINTPROCESSOR_INFO_1A = TLPPRINTPROCESSOR_INFO_1A type LPPRINTPROCESSOR_INFO_1W = TLPPRINTPROCESSOR_INFO_1W type LPPROCESS_HEAP_ENTRY = TLPPROCESS_HEAP_ENTRY type LPPROCESS_INFORMATION = TLPPROCESS_INFORMATION type LPPROC_THREAD_ATTRIBUTE_LIST = TLPPROC_THREAD_ATTRIBUTE_LIST type LPPROGRESS_ROUTINE = TLPPROGRESS_ROUTINE type LPPROPERTYBAG = TLPPROPERTYBAG type LPPROPERTYSETSTORAGE = TLPPROPERTYSETSTORAGE type LPPROPERTYSTORAGE = TLPPROPERTYSTORAGE const LPPROPSHEETHEADER = 0 type LPPROPSHEETHEADERA = TLPPROPSHEETHEADERA type LPPROPSHEETHEADERW = TLPPROPSHEETHEADERW const LPPROPSHEETPAGE = 0 type LPPROPSHEETPAGEA = TLPPROPSHEETPAGEA type LPPROPSHEETPAGEA_LATEST = TLPPROPSHEETPAGEA_LATEST type LPPROPSHEETPAGEA_V1 = TLPPROPSHEETPAGEA_V1 type LPPROPSHEETPAGEA_V2 = TLPPROPSHEETPAGEA_V2 type LPPROPSHEETPAGEA_V3 = TLPPROPSHEETPAGEA_V3 type LPPROPSHEETPAGEW = TLPPROPSHEETPAGEW type LPPROPSHEETPAGEW_LATEST = TLPPROPSHEETPAGEW_LATEST type LPPROPSHEETPAGEW_V1 = TLPPROPSHEETPAGEW_V1 type LPPROPSHEETPAGEW_V2 = TLPPROPSHEETPAGEW_V2 type LPPROPSHEETPAGEW_V3 = TLPPROPSHEETPAGEW_V3 const LPPROPSHEETPAGE_LATEST = 0 const LPPROPSHEETPAGE_V1 = 0 const LPPROPSHEETPAGE_V2 = 0 const LPPROPSHEETPAGE_V3 = 0 type LPPROPVARIANT = TLPPROPVARIANT type LPPROTOCOL_ARGUMENT = TLPPROTOCOL_ARGUMENT type LPPROTOENT = TLPPROTOENT type LPPROVIDOR_INFO_1 = TLPPROVIDOR_INFO_1 type LPPROVIDOR_INFO_1A = TLPPROVIDOR_INFO_1A type LPPROVIDOR_INFO_1W = TLPPROVIDOR_INFO_1W type LPPROVIDOR_INFO_2 = TLPPROVIDOR_INFO_2 type LPPROVIDOR_INFO_2A = TLPPROVIDOR_INFO_2A type LPPROVIDOR_INFO_2W = TLPPROVIDOR_INFO_2W type LPPSHNOTIFY = TLPPSHNOTIFY type LPQUERY_SERVICE_CONFIG = TLPQUERY_SERVICE_CONFIG type LPQUERY_SERVICE_CONFIGA = TLPQUERY_SERVICE_CONFIGA type LPQUERY_SERVICE_CONFIGW = TLPQUERY_SERVICE_CONFIGW type LPQUERY_SERVICE_LOCK_STATUS = TLPQUERY_SERVICE_LOCK_STATUS type LPQUERY_SERVICE_LOCK_STATUSA = TLPQUERY_SERVICE_LOCK_STATUSA type LPQUERY_SERVICE_LOCK_STATUSW = TLPQUERY_SERVICE_LOCK_STATUSW type LPRASTERIZER_STATUS = TLPRASTERIZER_STATUS type LPRAWHID = TLPRAWHID type LPRAWINPUT = TLPRAWINPUT type LPRAWINPUTDEVICE = TLPRAWINPUTDEVICE type LPRAWINPUTHEADER = TLPRAWINPUTHEADER type LPRAWKEYBOARD = TLPRAWKEYBOARD type LPRAWMOUSE = TLPRAWMOUSE type LPRECONVERTSTRING = TLPRECONVERTSTRING type LPRECORDINFO = TLPRECORDINFO type LPRECT = TLPRECT type LPRECTL = TLPRECTL type LPREGISTERWORD = TLPREGISTERWORD type LPREGISTERWORDA = TLPREGISTERWORDA type LPREGISTERWORDW = TLPREGISTERWORDW type LPREMFORMATETC = TLPREMFORMATETC type LPREMOTE_NAME_INFO = TLPREMOTE_NAME_INFO type LPREMOTE_NAME_INFOA = TLPREMOTE_NAME_INFOA type LPREMOTE_NAME_INFOW = TLPREMOTE_NAME_INFOW type LPREMSECURITY_ATTRIBUTES = TLPREMSECURITY_ATTRIBUTES type LPRGBQUAD = TLPRGBQUAD type LPRGBTRIPLE = TLPRGBTRIPLE type LPRGNDATA = TLPRGNDATA type LPRID_DEVICE_INFO = TLPRID_DEVICE_INFO type LPRIP_INFO = TLPRIP_INFO type LPROOTSTORAGE = TLPROOTSTORAGE type LPRUNNABLEOBJECT = TLPRUNNABLEOBJECT type LPRUNNINGOBJECTTABLE = TLPRUNNINGOBJECTTABLE type LPSAFEARRAY = TLPSAFEARRAY type LPSAFEARRAYBOUND = TLPSAFEARRAYBOUND type LPSCARDCONTEXT = TLPSCARDCONTEXT type LPSCARDHANDLE = TLPSCARDHANDLE type LPSCARD_ATRMASK = TLPSCARD_ATRMASK type LPSCARD_IO_REQUEST = TLPSCARD_IO_REQUEST type LPSCARD_READERSTATE = TLPSCARD_READERSTATE type LPSCARD_READERSTATEA = TLPSCARD_READERSTATEA type LPSCARD_READERSTATEW = TLPSCARD_READERSTATEW const LPSCARD_READERSTATE_A = 0 const LPSCARD_READERSTATE_W = 0 type LPSCARD_T0_COMMAND = TLPSCARD_T0_COMMAND type LPSCARD_T0_REQUEST = TLPSCARD_T0_REQUEST type LPSCARD_T1_REQUEST = TLPSCARD_T1_REQUEST type LPSCROLLBARINFO = TLPSCROLLBARINFO type LPSCROLLINFO = TLPSCROLLINFO type LPSC_ACTION = TLPSC_ACTION type LPSC_HANDLE = TLPSC_HANDLE type LPSECURITY_ATTRIBUTES = TLPSECURITY_ATTRIBUTES type LPSECURITY_CAPABILITIES = TLPSECURITY_CAPABILITIES type LPSENDCMDINPARAMS = TLPSENDCMDINPARAMS type LPSENDCMDOUTPARAMS = TLPSENDCMDOUTPARAMS type LPSERIALKEYS = TLPSERIALKEYS type LPSERIALKEYSA = TLPSERIALKEYSA type LPSERIALKEYSW = TLPSERIALKEYSW type LPSERVENT = TLPSERVENT type LPSERVICEPROVIDER = TLPSERVICEPROVIDER type LPSERVICE_DELAYED_AUTO_START_INFO = TLPSERVICE_DELAYED_AUTO_START_INFO type LPSERVICE_DESCRIPTION = TLPSERVICE_DESCRIPTION type LPSERVICE_DESCRIPTIONA = TLPSERVICE_DESCRIPTIONA type LPSERVICE_DESCRIPTIONW = TLPSERVICE_DESCRIPTIONW type LPSERVICE_FAILURE_ACTIONS = TLPSERVICE_FAILURE_ACTIONS type LPSERVICE_FAILURE_ACTIONSA = TLPSERVICE_FAILURE_ACTIONSA type LPSERVICE_FAILURE_ACTIONSW = TLPSERVICE_FAILURE_ACTIONSW type LPSERVICE_FAILURE_ACTIONS_FLAG = TLPSERVICE_FAILURE_ACTIONS_FLAG const LPSERVICE_MAIN_FUNCTION = 0 type LPSERVICE_MAIN_FUNCTIONA = TLPSERVICE_MAIN_FUNCTIONA type LPSERVICE_MAIN_FUNCTIONW = TLPSERVICE_MAIN_FUNCTIONW type LPSERVICE_PRESHUTDOWN_INFO = TLPSERVICE_PRESHUTDOWN_INFO type LPSERVICE_REQUIRED_PRIVILEGES_INFOA = TLPSERVICE_REQUIRED_PRIVILEGES_INFOA type LPSERVICE_REQUIRED_PRIVILEGES_INFOW = TLPSERVICE_REQUIRED_PRIVILEGES_INFOW type LPSERVICE_SID_INFO = TLPSERVICE_SID_INFO type LPSERVICE_STATUS = TLPSERVICE_STATUS type LPSERVICE_STATUS_PROCESS = TLPSERVICE_STATUS_PROCESS type LPSERVICE_TABLE_ENTRY = TLPSERVICE_TABLE_ENTRY type LPSERVICE_TABLE_ENTRYA = TLPSERVICE_TABLE_ENTRYA type LPSERVICE_TABLE_ENTRYW = TLPSERVICE_TABLE_ENTRYW type LPSETUPHOOKPROC = TLPSETUPHOOKPROC type LPSHELLEXECUTEINFO = TLPSHELLEXECUTEINFO type LPSHELLEXECUTEINFOA = TLPSHELLEXECUTEINFOA type LPSHELLEXECUTEINFOW = TLPSHELLEXECUTEINFOW type LPSHELLHOOKINFO = TLPSHELLHOOKINFO type LPSHFILEOPSTRUCT = TLPSHFILEOPSTRUCT type LPSHFILEOPSTRUCTA = TLPSHFILEOPSTRUCTA type LPSHFILEOPSTRUCTW = TLPSHFILEOPSTRUCTW type LPSHNAMEMAPPING = TLPSHNAMEMAPPING type LPSHNAMEMAPPINGA = TLPSHNAMEMAPPINGA type LPSHNAMEMAPPINGW = TLPSHNAMEMAPPINGW type LPSHQUERYRBINFO = TLPSHQUERYRBINFO type LPSIZE = TLPSIZE type LPSIZEL = TLPSIZEL type LPSOCKADDR = TLPSOCKADDR type LPSOCKADDR_IN = TLPSOCKADDR_IN type LPSOFTDISTINFO = TLPSOFTDISTINFO type LPSOUNDSENTRY = TLPSOUNDSENTRY type LPSOUNDSENTRYA = TLPSOUNDSENTRYA type LPSOUNDSENTRYW = TLPSOUNDSENTRYW type LPSTARTUPINFO = TLPSTARTUPINFO type LPSTARTUPINFOA = TLPSTARTUPINFOA type LPSTARTUPINFOEX = TLPSTARTUPINFOEX type LPSTARTUPINFOEXA = TLPSTARTUPINFOEXA type LPSTARTUPINFOEXW = TLPSTARTUPINFOEXW type LPSTARTUPINFOW = TLPSTARTUPINFOW type LPSTATDATA = TLPSTATDATA type LPSTDMARSHALINFO = TLPSTDMARSHALINFO type LPSTGMEDIUM = TLPSTGMEDIUM type LPSTICKYKEYS = TLPSTICKYKEYS type LPSTORAGE = TLPSTORAGE type LPSTR = TLPSTR type LPSTREAM = TLPSTREAM type LPSTYLEBUF = TLPSTYLEBUF type LPSTYLEBUFA = TLPSTYLEBUFA type LPSTYLEBUFW = TLPSTYLEBUFW type LPSTYLESTRUCT = TLPSTYLESTRUCT type LPSUPPORTERRORINFO = TLPSUPPORTERRORINFO type LPSURROGATE = TLPSURROGATE type LPSYNCHRONIZATION_BARRIER = TLPSYNCHRONIZATION_BARRIER type LPSYSTEMTIME = TLPSYSTEMTIME type LPSYSTEM_INFO = TLPSYSTEM_INFO type LPSYSTEM_POWER_STATUS = TLPSYSTEM_POWER_STATUS type LPTCH = TLPTCH type LPTEXTMETRIC = TLPTEXTMETRIC type LPTEXTMETRICA = TLPTEXTMETRICA type LPTEXTMETRICW = TLPTEXTMETRICW type LPTHREAD_START_ROUTINE = TLPTHREAD_START_ROUTINE type LPTIMECALLBACK = TLPTIMECALLBACK type LPTIMECAPS = TLPTIMECAPS type LPTIMEVAL = TLPTIMEVAL type LPTIME_ZONE_INFORMATION = TLPTIME_ZONE_INFORMATION type LPTITLEBARINFO = TLPTITLEBARINFO type LPTITLEBARINFOEX = TLPTITLEBARINFOEX type LPTLIBATTR = TLPTLIBATTR type LPTOGGLEKEYS = TLPTOGGLEKEYS type LPTOP_LEVEL_EXCEPTION_FILTER = TLPTOP_LEVEL_EXCEPTION_FILTER type LPTPMPARAMS = TLPTPMPARAMS const LPTR = 64 type LPTRACKMOUSEEVENT = TLPTRACKMOUSEEVENT type LPTRANSMIT_FILE_BUFFERS = TLPTRANSMIT_FILE_BUFFERS type LPTRIVERTEX = TLPTRIVERTEX type LPTSTR = TLPTSTR type LPTTPOLYCURVE = TLPTTPOLYCURVE type LPTTPOLYGONHEADER = TLPTTPOLYGONHEADER type LPTYPEATTR = TLPTYPEATTR type LPTYPECHANGEEVENTS = TLPTYPECHANGEEVENTS type LPTYPECOMP = TLPTYPECOMP type LPTYPEINFO = TLPTYPEINFO type LPTYPEINFO2 = TLPTYPEINFO2 type LPTYPELIB = TLPTYPELIB type LPTYPELIB2 = TLPTYPELIB2 const LPTx = 128 type LPUINT = TLPUINT type LPUNIVERSAL_NAME_INFO = TLPUNIVERSAL_NAME_INFO type LPUNIVERSAL_NAME_INFOA = TLPUNIVERSAL_NAME_INFOA type LPUNIVERSAL_NAME_INFOW = TLPUNIVERSAL_NAME_INFOW type LPUNKNOWN = TLPUNKNOWN type LPUNLOAD_DLL_DEBUG_INFO = TLPUNLOAD_DLL_DEBUG_INFO type LPURLZONEMANAGER = TLPURLZONEMANAGER type LPUTSTR = TLPUTSTR type LPUWSTR = TLPUWSTR type LPVARDESC = TLPVARDESC type LPVARIANT = TLPVARIANT type LPVARIANTARG = TLPVARIANTARG type LPVERSIONEDSTREAM = TLPVERSIONEDSTREAM type LPVIDEOPARAMETERS = TLPVIDEOPARAMETERS type LPVIEWOBJECT = TLPVIEWOBJECT type LPVIEWOBJECT2 = TLPVIEWOBJECT2 type LPVOID = TLPVOID type LPWAVECALLBACK = TLPWAVECALLBACK type LPWAVEFORMAT = TLPWAVEFORMAT type LPWAVEFORMATEX = TLPWAVEFORMATEX type LPWAVEHDR = TLPWAVEHDR type LPWAVEINCAPS = TLPWAVEINCAPS type LPWAVEINCAPS2 = TLPWAVEINCAPS2 type LPWAVEINCAPS2A = TLPWAVEINCAPS2A type LPWAVEINCAPS2W = TLPWAVEINCAPS2W type LPWAVEINCAPSA = TLPWAVEINCAPSA type LPWAVEINCAPSW = TLPWAVEINCAPSW type LPWAVEOUTCAPS = TLPWAVEOUTCAPS type LPWAVEOUTCAPS2 = TLPWAVEOUTCAPS2 type LPWAVEOUTCAPS2A = TLPWAVEOUTCAPS2A type LPWAVEOUTCAPS2W = TLPWAVEOUTCAPS2W type LPWAVEOUTCAPSA = TLPWAVEOUTCAPSA type LPWAVEOUTCAPSW = TLPWAVEOUTCAPSW type LPWCH = TLPWCH type LPWCRANGE = TLPWCRANGE type LPWGLSWAP = TLPWGLSWAP type LPWIN32_FILE_ATTRIBUTE_DATA = TLPWIN32_FILE_ATTRIBUTE_DATA type LPWIN32_FIND_DATA = TLPWIN32_FIND_DATA type LPWIN32_FIND_DATAA = TLPWIN32_FIND_DATAA type LPWIN32_FIND_DATAW = TLPWIN32_FIND_DATAW type LPWIN32_STREAM_ID = TLPWIN32_STREAM_ID type LPWINDOWFORBINDINGUI = TLPWINDOWFORBINDINGUI type LPWINDOWINFO = TLPWINDOWINFO type LPWINDOWPLACEMENT = TLPWINDOWPLACEMENT type LPWINDOWPOS = TLPWINDOWPOS type LPWININETCACHEHINTS = TLPWININETCACHEHINTS type LPWININETCACHEHINTS2 = TLPWININETCACHEHINTS2 type LPWININETFILESTREAM = TLPWININETFILESTREAM type LPWININETHTTPINFO = TLPWININETHTTPINFO type LPWININETINFO = TLPWININETINFO type LPWNDCLASS = TLPWNDCLASS type LPWNDCLASSA = TLPWNDCLASSA type LPWNDCLASSEX = TLPWNDCLASSEX type LPWNDCLASSEXA = TLPWNDCLASSEXA type LPWNDCLASSEXW = TLPWNDCLASSEXW type LPWNDCLASSW = TLPWNDCLASSW type LPWORD = TLPWORD type LPWSADATA = TLPWSADATA type LPWSTR = TLPWSTR type LPXFORM = TLPXFORM type LPZONEATTRIBUTES = TLPZONEATTRIBUTES type LRESULT = TLRESULT const LR_COLOR = 2 const LR_COPYDELETEORG = 8 const LR_COPYFROMRESOURCE = 16384 const LR_COPYRETURNORG = 4 const LR_CREATEDIBSECTION = 8192 const LR_DEFAULTCOLOR = 0 const LR_DEFAULTSIZE = 64 const LR_LOADFROMFILE = 16 const LR_LOADMAP3DCOLORS = 4096 const LR_LOADTRANSPARENT = 32 const LR_MONOCHROME = 1 const LR_SHARED = 32768 const LR_VGACOLOR = 128 const LSFW_LOCK = 1 const LSFW_UNLOCK = 2 type LSTATUS = TLSTATUS const LTGRAY_BRUSH = 1 const LTP_PC_SMT = 1 const LUA_TOKEN = 4 type LUID = TLUID type LUID_AND_ATTRIBUTES = TLUID_AND_ATTRIBUTES type LUID_AND_ATTRIBUTES_ARRAY = TLUID_AND_ATTRIBUTES_ARRAY const LWA_ALPHA = 2 const LWA_COLORKEY = 1 const LZERROR_BADINHANDLE = -1 const LZERROR_BADOUTHANDLE = -2 const LZERROR_BADVALUE = -7 const LZERROR_GLOBALLOC = -5 const LZERROR_GLOBLOCK = -6 const LZERROR_READ = -3 const LZERROR_UNKNOWNALG = -8 const LZERROR_WRITE = -4 const LZOpenFile = 0 const L_tmpnam = 12 const L_tmpnam_s = 12 const LoadAccelerators = 0 const LoadBitmap = 0 const LoadCursor = 0 const LoadCursorFromFile = 0 const LoadIcon = 0 const LoadImage = 0 const LoadKeyboardLayout = 0 const LoadLibrary = 0 const LoadLibraryEx = 0 const LoadMenu = 0 const LoadMenuIndirect = 0 const LoadString = 0 const LogonUser = 0 const LogonUserEx = 0 const LookupAccountName = 0 const LookupAccountNameLocal = 0 const LookupAccountSid = 0 const LookupAccountSidLocal = 0 const LookupPrivilegeDisplayName = 0 const LookupPrivilegeName = 0 const LookupPrivilegeValue = 0 type M128A = TM128A type MACHINE_ATTRIBUTES = TMACHINE_ATTRIBUTES const MAC_CHARSET = 77 const MAILSLOT_NO_MESSAGE = -1 const MAILSLOT_WAIT_FOREVER = -1 const MAKEINTRESOURCE = 0 type MALLOC_FREE_STRUCT = TMALLOC_FREE_STRUCT type MANDATORY_LEVEL = TMANDATORY_LEVEL const MAPVK_VK_TO_CHAR = 2 const MAPVK_VK_TO_VSC = 0 const MAPVK_VK_TO_VSC_EX = 4 const MAPVK_VSC_TO_VK = 1 const MAPVK_VSC_TO_VK_EX = 3 const MAP_COMPOSITE = 64 const MAP_EXPAND_LIGATURES = 8192 const MAP_FOLDCZONE = 16 const MAP_FOLDDIGITS = 128 const MAP_PRECOMPOSED = 32 const MARKPARITY = 3 type MARK_HANDLE_INFO = TMARK_HANDLE_INFO const MARK_HANDLE_NOT_REALTIME = 64 const MARK_HANDLE_NOT_TXF_SYSTEM_LOG = 8 const MARK_HANDLE_PROTECT_CLUSTERS = 1 const MARK_HANDLE_REALTIME = 32 const MARK_HANDLE_TXF_SYSTEM_LOG = 4 const MARSHALINTERFACE_MIN = 500 const MARSHAL_E_FIRST = 2147746080 const MARSHAL_E_LAST = 2147746095 const MARSHAL_S_FIRST = 262432 const MARSHAL_S_LAST = 262447 const MASK_TO_RESET_TLB_BITS = -97 type MAT2 = TMAT2 const MAXBYTE = 255 const MAXCHAR = 127 const MAXDWORD = 4294967295 const MAXERRORLENGTH = 256 const MAXGETHOSTSTRUCT = 1024 const MAXIMUM_ALLOWED = 33554432 const MAXIMUM_ATTR_STRING_LENGTH = 32 const MAXIMUM_ENCRYPTION_VALUE = 4 const MAXIMUM_REPARSE_DATA_BUFFER_SIZE = 16384 const MAXIMUM_SMARTCARD_READERS = 10 const MAXIMUM_SUSPEND_COUNT = 127 const MAXIMUM_WAIT_OBJECTS = 64 const MAXIMUM_XSTATE_FEATURES = 64 const MAXINTATOM = 49152 const MAXLOGICALLOGNAMESIZE = 256 const MAXLONG = 2147483647 const MAXLONGLONG = 9223372036854775807 const MAXPNAMELEN = 32 const MAXPROPPAGES = 100 const MAXSHORT = 32767 const MAXSTRETCHBLTMODE = 4 const MAXUIDLEN = 64 const MAXWORD = 65535 const MAX_ACL_REVISION = 4 const MAX_COMPUTERNAME_LENGTH = 15 const MAX_DEFAULTCHAR = 2 const MAX_HW_COUNTERS = 16 const MAX_JOYSTICKOEMVXDNAME = 260 const MAX_LANA = 254 const MAX_LEADBYTES = 12 const MAX_LOGICALDPIOVERRIDE = 2 const MAX_MONITORS = 4 const MAX_NATURAL_ALIGNMENT = 0 const MAX_NUM_REASONS = 256 const MAX_PATH = 260 const MAX_PERF_OBJECTS_IN_QUERY_FUNCTION = 64 const MAX_PRIORITY = 99 const MAX_PROFILE_LEN = 80 const MAX_REASON_BUGID_LEN = 32 const MAX_REASON_COMMENT_LEN = 512 const MAX_REASON_DESC_LEN = 256 const MAX_REASON_NAME_LEN = 64 const MAX_RESOURCEMANAGER_DESCRIPTION_LENGTH = 64 const MAX_SHUTDOWN_TIMEOUT = 315360000 const MAX_SID_SIZE = 256 const MAX_SIZE_SECURITY_ID = 512 const MAX_STR_BLOCKREASON = 256 const MAX_SUPPORTED_OS_NUM = 4 const MAX_TOUCH_COUNT = 256 const MAX_TOUCH_PREDICTION_FILTER_TAPS = 3 const MAX_TRANSACTION_DESCRIPTION_LENGTH = 64 const MAX_UCSCHAR = 1114111 const MAX_VOLUME_ID_SIZE = 36 const MAX_VOLUME_TEMPLATE_SIZE = 40 const MA_ACTIVATE = 1 const MA_ACTIVATEANDEAT = 2 const MA_NOACTIVATE = 3 const MA_NOACTIVATEANDEAT = 4 const MB_ABORTRETRYIGNORE = 2 const MB_APPLMODAL = 0 const MB_CANCELTRYCONTINUE = 6 const MB_COMPOSITE = 2 const MB_DEFAULT_DESKTOP_ONLY = 131072 const MB_DEFBUTTON1 = 0 const MB_DEFBUTTON2 = 256 const MB_DEFBUTTON3 = 512 const MB_DEFBUTTON4 = 768 const MB_DEFMASK = 3840 const MB_ERR_INVALID_CHARS = 8 const MB_HELP = 16384 const MB_ICONASTERISK = 64 const MB_ICONERROR = 16 const MB_ICONEXCLAMATION = 48 const MB_ICONHAND = 16 const MB_ICONINFORMATION = 64 const MB_ICONMASK = 240 const MB_ICONQUESTION = 32 const MB_ICONSTOP = 16 const MB_ICONWARNING = 48 const MB_LEN_MAX = 5 const MB_MISCMASK = 49152 const MB_MODEMASK = 12288 const MB_NOFOCUS = 32768 const MB_OK = 0 const MB_OKCANCEL = 1 const MB_PRECOMPOSED = 1 const MB_RETRYCANCEL = 5 const MB_RIGHT = 524288 const MB_RTLREADING = 1048576 const MB_SERVICE_NOTIFICATION = 2097152 const MB_SERVICE_NOTIFICATION_NT3X = 262144 const MB_SETFOREGROUND = 65536 const MB_SYSTEMMODAL = 4096 const MB_TASKMODAL = 8192 const MB_TOPMOST = 262144 const MB_TYPEMASK = 15 const MB_USEGLYPHCHARS = 4 const MB_USERICON = 128 const MB_YESNO = 4 const MB_YESNOCANCEL = 3 type MCIDEVICEID = TMCIDEVICEID type MCIERROR = TMCIERROR const MCIERR_BAD_CONSTANT = 290 const MCIERR_BAD_INTEGER = 270 const MCIERR_BAD_TIME_FORMAT = 293 const MCIERR_BASE = 256 const MCIERR_CANNOT_LOAD_DRIVER = 266 const MCIERR_CANNOT_USE_ALL = 279 const MCIERR_CREATEWINDOW = 347 const MCIERR_CUSTOM_DRIVER_BASE = 512 const MCIERR_DEVICE_LENGTH = 310 const MCIERR_DEVICE_LOCKED = 288 const MCIERR_DEVICE_NOT_INSTALLED = 306 const MCIERR_DEVICE_NOT_READY = 276 const MCIERR_DEVICE_OPEN = 265 const MCIERR_DEVICE_ORD_LENGTH = 311 const MCIERR_DEVICE_TYPE_REQUIRED = 287 const MCIERR_DRIVER = 278 const MCIERR_DRIVER_INTERNAL = 272 const MCIERR_DUPLICATE_ALIAS = 289 const MCIERR_DUPLICATE_FLAGS = 295 const MCIERR_EXTENSION_NOT_FOUND = 281 const MCIERR_EXTRA_CHARACTERS = 305 const MCIERR_FILENAME_REQUIRED = 304 const MCIERR_FILE_NOT_FOUND = 275 const MCIERR_FILE_NOT_SAVED = 286 const MCIERR_FILE_READ = 348 const MCIERR_FILE_WRITE = 349 const MCIERR_FLAGS_NOT_COMPATIBLE = 284 const MCIERR_GET_CD = 307 const MCIERR_HARDWARE = 262 const MCIERR_ILLEGAL_FOR_AUTO_OPEN = 303 const MCIERR_INTERNAL = 277 const MCIERR_INVALID_DEVICE_ID = 257 const MCIERR_INVALID_DEVICE_NAME = 263 const MCIERR_INVALID_FILE = 296 const MCIERR_MISSING_COMMAND_STRING = 267 const MCIERR_MISSING_DEVICE_NAME = 292 const MCIERR_MISSING_PARAMETER = 273 const MCIERR_MISSING_STRING_ARGUMENT = 269 const MCIERR_MULTIPLE = 280 const MCIERR_MUST_USE_SHAREABLE = 291 const MCIERR_NEW_REQUIRES_ALIAS = 299 const MCIERR_NONAPPLICABLE_FUNCTION = 302 const MCIERR_NOTIFY_ON_AUTO_OPEN = 300 const MCIERR_NO_CLOSING_QUOTE = 294 const MCIERR_NO_ELEMENT_ALLOWED = 301 const MCIERR_NO_IDENTITY = 350 const MCIERR_NO_INTEGER = 312 const MCIERR_NO_WINDOW = 346 const MCIERR_NULL_PARAMETER_BLOCK = 297 const MCIERR_OUTOFRANGE = 282 const MCIERR_OUT_OF_MEMORY = 264 const MCIERR_PARAM_OVERFLOW = 268 const MCIERR_PARSER_INTERNAL = 271 const MCIERR_SEQ_DIV_INCOMPATIBLE = 336 const MCIERR_SEQ_NOMIDIPRESENT = 343 const MCIERR_SEQ_PORTUNSPECIFIED = 342 const MCIERR_SEQ_PORT_INUSE = 337 const MCIERR_SEQ_PORT_MAPNODEVICE = 339 const MCIERR_SEQ_PORT_MISCERROR = 340 const MCIERR_SEQ_PORT_NONEXISTENT = 338 const MCIERR_SEQ_TIMER = 341 const MCIERR_SET_CD = 308 const MCIERR_SET_DRIVE = 309 const MCIERR_UNNAMED_RESOURCE = 298 const MCIERR_UNRECOGNIZED_COMMAND = 261 const MCIERR_UNRECOGNIZED_KEYWORD = 259 const MCIERR_UNSUPPORTED_FUNCTION = 274 const MCIERR_WAVE_INPUTSINUSE = 322 const MCIERR_WAVE_INPUTSUNSUITABLE = 328 const MCIERR_WAVE_INPUTUNSPECIFIED = 325 const MCIERR_WAVE_OUTPUTSINUSE = 320 const MCIERR_WAVE_OUTPUTSUNSUITABLE = 326 const MCIERR_WAVE_OUTPUTUNSPECIFIED = 324 const MCIERR_WAVE_SETINPUTINUSE = 323 const MCIERR_WAVE_SETINPUTUNSUITABLE = 329 const MCIERR_WAVE_SETOUTPUTINUSE = 321 const MCIERR_WAVE_SETOUTPUTUNSUITABLE = 327 const MCI_ALL_DEVICE_ID = -1 const MCI_ANIM_GETDEVCAPS_CAN_REVERSE = 16385 const MCI_ANIM_GETDEVCAPS_CAN_STRETCH = 16391 const MCI_ANIM_GETDEVCAPS_FAST_RATE = 16386 const MCI_ANIM_GETDEVCAPS_MAX_WINDOWS = 16392 const MCI_ANIM_GETDEVCAPS_NORMAL_RATE = 16388 const MCI_ANIM_GETDEVCAPS_PALETTES = 16390 const MCI_ANIM_GETDEVCAPS_SLOW_RATE = 16387 const MCI_ANIM_INFO_TEXT = 65536 const MCI_ANIM_OPEN_NOSTATIC = 262144 const MCI_ANIM_OPEN_PARENT = 131072 type MCI_ANIM_OPEN_PARMS = TMCI_ANIM_OPEN_PARMS type MCI_ANIM_OPEN_PARMSA = TMCI_ANIM_OPEN_PARMSA type MCI_ANIM_OPEN_PARMSW = TMCI_ANIM_OPEN_PARMSW const MCI_ANIM_OPEN_WS = 65536 const MCI_ANIM_PLAY_FAST = 262144 type MCI_ANIM_PLAY_PARMS = TMCI_ANIM_PLAY_PARMS const MCI_ANIM_PLAY_REVERSE = 131072 const MCI_ANIM_PLAY_SCAN = 1048576 const MCI_ANIM_PLAY_SLOW = 524288 const MCI_ANIM_PLAY_SPEED = 65536 const MCI_ANIM_PUT_DESTINATION = 262144 const MCI_ANIM_PUT_SOURCE = 131072 const MCI_ANIM_REALIZE_BKGD = 131072 const MCI_ANIM_REALIZE_NORM = 65536 const MCI_ANIM_RECT = 65536 type MCI_ANIM_RECT_PARMS = TMCI_ANIM_RECT_PARMS const MCI_ANIM_STATUS_FORWARD = 16386 const MCI_ANIM_STATUS_HPAL = 16388 const MCI_ANIM_STATUS_HWND = 16387 const MCI_ANIM_STATUS_SPEED = 16385 const MCI_ANIM_STATUS_STRETCH = 16389 const MCI_ANIM_STEP_FRAMES = 131072 type MCI_ANIM_STEP_PARMS = TMCI_ANIM_STEP_PARMS const MCI_ANIM_STEP_REVERSE = 65536 const MCI_ANIM_UPDATE_HDC = 131072 type MCI_ANIM_UPDATE_PARMS = TMCI_ANIM_UPDATE_PARMS const MCI_ANIM_WHERE_DESTINATION = 262144 const MCI_ANIM_WHERE_SOURCE = 131072 const MCI_ANIM_WINDOW_DEFAULT = 0 const MCI_ANIM_WINDOW_DISABLE_STRETCH = 2097152 const MCI_ANIM_WINDOW_ENABLE_STRETCH = 1048576 const MCI_ANIM_WINDOW_HWND = 65536 type MCI_ANIM_WINDOW_PARMS = TMCI_ANIM_WINDOW_PARMS type MCI_ANIM_WINDOW_PARMSA = TMCI_ANIM_WINDOW_PARMSA type MCI_ANIM_WINDOW_PARMSW = TMCI_ANIM_WINDOW_PARMSW const MCI_ANIM_WINDOW_STATE = 262144 const MCI_ANIM_WINDOW_TEXT = 524288 const MCI_BREAK = 2065 const MCI_BREAK_HWND = 512 const MCI_BREAK_KEY = 256 const MCI_BREAK_OFF = 1024 type MCI_BREAK_PARMS = TMCI_BREAK_PARMS const MCI_CDA_STATUS_TYPE_TRACK = 16385 const MCI_CDA_TRACK_AUDIO = 1088 const MCI_CDA_TRACK_OTHER = 1089 const MCI_CD_OFFSET = 1088 const MCI_CLOSE = 2052 const MCI_COPY = 2130 const MCI_CUE = 2096 const MCI_CUT = 2129 const MCI_DELETE = 2134 const MCI_DEVTYPE_ANIMATION = 519 const MCI_DEVTYPE_CD_AUDIO = 516 const MCI_DEVTYPE_DAT = 517 const MCI_DEVTYPE_DIGITAL_VIDEO = 520 const MCI_DEVTYPE_FIRST = 513 const MCI_DEVTYPE_FIRST_USER = 4096 const MCI_DEVTYPE_LAST = 523 const MCI_DEVTYPE_OTHER = 521 const MCI_DEVTYPE_OVERLAY = 515 const MCI_DEVTYPE_SCANNER = 518 const MCI_DEVTYPE_SEQUENCER = 523 const MCI_DEVTYPE_VCR = 513 const MCI_DEVTYPE_VIDEODISC = 514 const MCI_DEVTYPE_WAVEFORM_AUDIO = 522 const MCI_ESCAPE = 2053 const MCI_FIRST = 2048 const MCI_FORMAT_BYTES = 8 const MCI_FORMAT_FRAMES = 3 const MCI_FORMAT_HMS = 1 const MCI_FORMAT_MILLISECONDS = 0 const MCI_FORMAT_MSF = 2 const MCI_FORMAT_SAMPLES = 9 const MCI_FORMAT_SMPTE_24 = 4 const MCI_FORMAT_SMPTE_25 = 5 const MCI_FORMAT_SMPTE_30 = 6 const MCI_FORMAT_SMPTE_30DROP = 7 const MCI_FORMAT_TMSF = 10 const MCI_FREEZE = 2116 const MCI_FROM = 4 type MCI_GENERIC_PARMS = TMCI_GENERIC_PARMS const MCI_GETDEVCAPS = 2059 const MCI_GETDEVCAPS_CAN_EJECT = 7 const MCI_GETDEVCAPS_CAN_PLAY = 8 const MCI_GETDEVCAPS_CAN_RECORD = 1 const MCI_GETDEVCAPS_CAN_SAVE = 9 const MCI_GETDEVCAPS_COMPOUND_DEVICE = 6 const MCI_GETDEVCAPS_DEVICE_TYPE = 4 const MCI_GETDEVCAPS_HAS_AUDIO = 2 const MCI_GETDEVCAPS_HAS_VIDEO = 3 const MCI_GETDEVCAPS_ITEM = 256 type MCI_GETDEVCAPS_PARMS = TMCI_GETDEVCAPS_PARMS const MCI_GETDEVCAPS_USES_FILES = 5 const MCI_INFO = 2058 const MCI_INFO_COPYRIGHT = 8192 const MCI_INFO_FILE = 512 const MCI_INFO_MEDIA_IDENTITY = 2048 const MCI_INFO_MEDIA_UPC = 1024 const MCI_INFO_NAME = 4096 type MCI_INFO_PARMS = TMCI_INFO_PARMS type MCI_INFO_PARMSA = TMCI_INFO_PARMSA type MCI_INFO_PARMSW = TMCI_INFO_PARMSW const MCI_INFO_PRODUCT = 256 const MCI_LAST = 4095 const MCI_LOAD = 2128 const MCI_LOAD_FILE = 256 type MCI_LOAD_PARMS = TMCI_LOAD_PARMS type MCI_LOAD_PARMSA = TMCI_LOAD_PARMSA type MCI_LOAD_PARMSW = TMCI_LOAD_PARMSW const MCI_MODE_NOT_READY = 524 const MCI_MODE_OPEN = 530 const MCI_MODE_PAUSE = 529 const MCI_MODE_PLAY = 526 const MCI_MODE_RECORD = 527 const MCI_MODE_SEEK = 528 const MCI_MODE_STOP = 525 const MCI_NOTIFY = 1 const MCI_NOTIFY_ABORTED = 4 const MCI_NOTIFY_FAILURE = 8 const MCI_NOTIFY_SUCCESSFUL = 1 const MCI_NOTIFY_SUPERSEDED = 2 const MCI_OPEN = 2051 const MCI_OPEN_ALIAS = 1024 const MCI_OPEN_ELEMENT = 512 const MCI_OPEN_ELEMENT_ID = 2048 type MCI_OPEN_PARMS = TMCI_OPEN_PARMS type MCI_OPEN_PARMSA = TMCI_OPEN_PARMSA type MCI_OPEN_PARMSW = TMCI_OPEN_PARMSW const MCI_OPEN_SHAREABLE = 256 const MCI_OPEN_TYPE = 8192 const MCI_OPEN_TYPE_ID = 4096 const MCI_OVLY_GETDEVCAPS_CAN_FREEZE = 16386 const MCI_OVLY_GETDEVCAPS_CAN_STRETCH = 16385 const MCI_OVLY_GETDEVCAPS_MAX_WINDOWS = 16387 const MCI_OVLY_INFO_TEXT = 65536 type MCI_OVLY_LOAD_PARMS = TMCI_OVLY_LOAD_PARMS type MCI_OVLY_LOAD_PARMSA = TMCI_OVLY_LOAD_PARMSA type MCI_OVLY_LOAD_PARMSW = TMCI_OVLY_LOAD_PARMSW const MCI_OVLY_OPEN_PARENT = 131072 type MCI_OVLY_OPEN_PARMS = TMCI_OVLY_OPEN_PARMS type MCI_OVLY_OPEN_PARMSA = TMCI_OVLY_OPEN_PARMSA type MCI_OVLY_OPEN_PARMSW = TMCI_OVLY_OPEN_PARMSW const MCI_OVLY_OPEN_WS = 65536 const MCI_OVLY_PUT_DESTINATION = 262144 const MCI_OVLY_PUT_FRAME = 524288 const MCI_OVLY_PUT_SOURCE = 131072 const MCI_OVLY_PUT_VIDEO = 1048576 const MCI_OVLY_RECT = 65536 type MCI_OVLY_RECT_PARMS = TMCI_OVLY_RECT_PARMS type MCI_OVLY_SAVE_PARMS = TMCI_OVLY_SAVE_PARMS type MCI_OVLY_SAVE_PARMSA = TMCI_OVLY_SAVE_PARMSA type MCI_OVLY_SAVE_PARMSW = TMCI_OVLY_SAVE_PARMSW const MCI_OVLY_STATUS_HWND = 16385 const MCI_OVLY_STATUS_STRETCH = 16386 const MCI_OVLY_WHERE_DESTINATION = 262144 const MCI_OVLY_WHERE_FRAME = 524288 const MCI_OVLY_WHERE_SOURCE = 131072 const MCI_OVLY_WHERE_VIDEO = 1048576 const MCI_OVLY_WINDOW_DEFAULT = 0 const MCI_OVLY_WINDOW_DISABLE_STRETCH = 2097152 const MCI_OVLY_WINDOW_ENABLE_STRETCH = 1048576 const MCI_OVLY_WINDOW_HWND = 65536 type MCI_OVLY_WINDOW_PARMS = TMCI_OVLY_WINDOW_PARMS type MCI_OVLY_WINDOW_PARMSA = TMCI_OVLY_WINDOW_PARMSA type MCI_OVLY_WINDOW_PARMSW = TMCI_OVLY_WINDOW_PARMSW const MCI_OVLY_WINDOW_STATE = 262144 const MCI_OVLY_WINDOW_TEXT = 524288 const MCI_PASTE = 2131 const MCI_PAUSE = 2057 const MCI_PLAY = 2054 type MCI_PLAY_PARMS = TMCI_PLAY_PARMS const MCI_PUT = 2114 const MCI_REALIZE = 2112 const MCI_RECORD = 2063 const MCI_RECORD_INSERT = 256 const MCI_RECORD_OVERWRITE = 512 type MCI_RECORD_PARMS = TMCI_RECORD_PARMS const MCI_RESUME = 2133 const MCI_SAVE = 2067 const MCI_SAVE_FILE = 256 type MCI_SAVE_PARMS = TMCI_SAVE_PARMS type MCI_SAVE_PARMSA = TMCI_SAVE_PARMSA type MCI_SAVE_PARMSW = TMCI_SAVE_PARMSW const MCI_SEEK = 2055 type MCI_SEEK_PARMS = TMCI_SEEK_PARMS const MCI_SEEK_TO_END = 512 const MCI_SEEK_TO_START = 256 const MCI_SEQ_DIV_PPQN = 1216 const MCI_SEQ_DIV_SMPTE_24 = 1217 const MCI_SEQ_DIV_SMPTE_25 = 1218 const MCI_SEQ_DIV_SMPTE_30 = 1220 const MCI_SEQ_DIV_SMPTE_30DROP = 1219 const MCI_SEQ_FILE = 16386 const MCI_SEQ_FORMAT_SONGPTR = 16385 const MCI_SEQ_MAPPER = 65535 const MCI_SEQ_MIDI = 16387 const MCI_SEQ_NONE = 65533 const MCI_SEQ_OFFSET = 1216 const MCI_SEQ_SET_MASTER = 524288 const MCI_SEQ_SET_OFFSET = 16777216 type MCI_SEQ_SET_PARMS = TMCI_SEQ_SET_PARMS const MCI_SEQ_SET_PORT = 131072 const MCI_SEQ_SET_SLAVE = 262144 const MCI_SEQ_SET_TEMPO = 65536 const MCI_SEQ_SMPTE = 16388 const MCI_SEQ_STATUS_COPYRIGHT = 16396 const MCI_SEQ_STATUS_DIVTYPE = 16394 const MCI_SEQ_STATUS_MASTER = 16392 const MCI_SEQ_STATUS_NAME = 16395 const MCI_SEQ_STATUS_OFFSET = 16393 const MCI_SEQ_STATUS_PORT = 16387 const MCI_SEQ_STATUS_SLAVE = 16391 const MCI_SEQ_STATUS_TEMPO = 16386 const MCI_SET = 2061 const MCI_SET_AUDIO = 2048 const MCI_SET_AUDIO_ALL = 0 const MCI_SET_AUDIO_LEFT = 1 const MCI_SET_AUDIO_RIGHT = 2 const MCI_SET_DOOR_CLOSED = 512 const MCI_SET_DOOR_OPEN = 256 const MCI_SET_OFF = 16384 const MCI_SET_ON = 8192 type MCI_SET_PARMS = TMCI_SET_PARMS const MCI_SET_TIME_FORMAT = 1024 const MCI_SET_VIDEO = 4096 const MCI_SPIN = 2060 const MCI_STATUS = 2068 const MCI_STATUS_CURRENT_TRACK = 8 const MCI_STATUS_ITEM = 256 const MCI_STATUS_LENGTH = 1 const MCI_STATUS_MEDIA_PRESENT = 5 const MCI_STATUS_MODE = 4 const MCI_STATUS_NUMBER_OF_TRACKS = 3 type MCI_STATUS_PARMS = TMCI_STATUS_PARMS const MCI_STATUS_POSITION = 2 const MCI_STATUS_READY = 7 const MCI_STATUS_START = 512 const MCI_STATUS_TIME_FORMAT = 6 const MCI_STEP = 2062 const MCI_STOP = 2056 const MCI_STRING_OFFSET = 512 const MCI_SYSINFO = 2064 const MCI_SYSINFO_INSTALLNAME = 2048 const MCI_SYSINFO_NAME = 1024 const MCI_SYSINFO_OPEN = 512 type MCI_SYSINFO_PARMS = TMCI_SYSINFO_PARMS type MCI_SYSINFO_PARMSA = TMCI_SYSINFO_PARMSA type MCI_SYSINFO_PARMSW = TMCI_SYSINFO_PARMSW const MCI_SYSINFO_QUANTITY = 256 const MCI_TO = 8 const MCI_TRACK = 16 const MCI_UNFREEZE = 2117 const MCI_UPDATE = 2132 const MCI_USER_MESSAGES = 3072 type MCI_VD_ESCAPE_PARMS = TMCI_VD_ESCAPE_PARMS type MCI_VD_ESCAPE_PARMSA = TMCI_VD_ESCAPE_PARMSA type MCI_VD_ESCAPE_PARMSW = TMCI_VD_ESCAPE_PARMSW const MCI_VD_ESCAPE_STRING = 256 const MCI_VD_FORMAT_TRACK = 16385 const MCI_VD_GETDEVCAPS_CAN_REVERSE = 16386 const MCI_VD_GETDEVCAPS_CAV = 131072 const MCI_VD_GETDEVCAPS_CLV = 65536 const MCI_VD_GETDEVCAPS_FAST_RATE = 16387 const MCI_VD_GETDEVCAPS_NORMAL_RATE = 16389 const MCI_VD_GETDEVCAPS_SLOW_RATE = 16388 const MCI_VD_MEDIA_CAV = 1027 const MCI_VD_MEDIA_CLV = 1026 const MCI_VD_MEDIA_OTHER = 1028 const MCI_VD_MODE_PARK = 1025 const MCI_VD_OFFSET = 1024 const MCI_VD_PLAY_FAST = 131072 type MCI_VD_PLAY_PARMS = TMCI_VD_PLAY_PARMS const MCI_VD_PLAY_REVERSE = 65536 const MCI_VD_PLAY_SCAN = 524288 const MCI_VD_PLAY_SLOW = 1048576 const MCI_VD_PLAY_SPEED = 262144 const MCI_VD_SEEK_REVERSE = 65536 const MCI_VD_SPIN_DOWN = 131072 const MCI_VD_SPIN_UP = 65536 const MCI_VD_STATUS_DISC_SIZE = 16390 const MCI_VD_STATUS_FORWARD = 16387 const MCI_VD_STATUS_MEDIA_TYPE = 16388 const MCI_VD_STATUS_SIDE = 16389 const MCI_VD_STATUS_SPEED = 16386 const MCI_VD_STEP_FRAMES = 65536 type MCI_VD_STEP_PARMS = TMCI_VD_STEP_PARMS const MCI_VD_STEP_REVERSE = 131072 const MCI_WAIT = 2 type MCI_WAVE_DELETE_PARMS = TMCI_WAVE_DELETE_PARMS const MCI_WAVE_GETDEVCAPS_INPUTS = 16385 const MCI_WAVE_GETDEVCAPS_OUTPUTS = 16386 const MCI_WAVE_INPUT = 4194304 const MCI_WAVE_MAPPER = 1153 const MCI_WAVE_OFFSET = 1152 const MCI_WAVE_OPEN_BUFFER = 65536 type MCI_WAVE_OPEN_PARMS = TMCI_WAVE_OPEN_PARMS type MCI_WAVE_OPEN_PARMSA = TMCI_WAVE_OPEN_PARMSA type MCI_WAVE_OPEN_PARMSW = TMCI_WAVE_OPEN_PARMSW const MCI_WAVE_OUTPUT = 8388608 const MCI_WAVE_PCM = 1152 const MCI_WAVE_SET_ANYINPUT = 67108864 const MCI_WAVE_SET_ANYOUTPUT = 134217728 const MCI_WAVE_SET_AVGBYTESPERSEC = 524288 const MCI_WAVE_SET_BITSPERSAMPLE = 2097152 const MCI_WAVE_SET_BLOCKALIGN = 1048576 const MCI_WAVE_SET_CHANNELS = 131072 const MCI_WAVE_SET_FORMATTAG = 65536 type MCI_WAVE_SET_PARMS = TMCI_WAVE_SET_PARMS const MCI_WAVE_SET_SAMPLESPERSEC = 262144 const MCI_WAVE_STATUS_AVGBYTESPERSEC = 16388 const MCI_WAVE_STATUS_BITSPERSAMPLE = 16390 const MCI_WAVE_STATUS_BLOCKALIGN = 16389 const MCI_WAVE_STATUS_CHANNELS = 16386 const MCI_WAVE_STATUS_FORMATTAG = 16385 const MCI_WAVE_STATUS_LEVEL = 16391 const MCI_WAVE_STATUS_SAMPLESPERSEC = 16387 const MCI_WHERE = 2115 const MCI_WINDOW = 2113 type MDICREATESTRUCT = TMDICREATESTRUCT type MDICREATESTRUCTA = TMDICREATESTRUCTA type MDICREATESTRUCTW = TMDICREATESTRUCTW type MDINEXTMENU = TMDINEXTMENU const MDIS_ALLCHILDSTYLES = 1 const MDITILE_HORIZONTAL = 1 const MDITILE_SKIPDISABLED = 2 const MDITILE_VERTICAL = 0 const MDITILE_ZORDER = 4 const MDMSPKRFLAG_CALLSETUP = 8 const MDMSPKRFLAG_DIAL = 2 const MDMSPKRFLAG_OFF = 1 const MDMSPKRFLAG_ON = 4 const MDMSPKR_CALLSETUP = 3 const MDMSPKR_DIAL = 1 const MDMSPKR_OFF = 0 const MDMSPKR_ON = 2 const MDMVOLFLAG_HIGH = 4 const MDMVOLFLAG_LOW = 1 const MDMVOLFLAG_MEDIUM = 2 const MDMVOL_HIGH = 2 const MDMVOL_LOW = 0 const MDMVOL_MEDIUM = 1 const MDM_ANALOG_RLP_OFF = 1 const MDM_ANALOG_RLP_ON = 0 const MDM_ANALOG_V34 = 2 const MDM_AUTO_ML_2 = 2 const MDM_AUTO_ML_DEFAULT = 0 const MDM_AUTO_ML_NONE = 1 const MDM_AUTO_SPEED_DEFAULT = 0 const MDM_BEARERMODE_ANALOG = 0 const MDM_BEARERMODE_GSM = 2 const MDM_BEARERMODE_ISDN = 1 const MDM_BLIND_DIAL = 512 const MDM_CCITT_OVERRIDE = 64 const MDM_CELLULAR = 8 const MDM_COMPRESSION = 1 const MDM_DIAGNOSTICS = 2048 const MDM_ERROR_CONTROL = 2 const MDM_FLOWCONTROL_HARD = 16 const MDM_FLOWCONTROL_SOFT = 32 const MDM_FORCED_EC = 4 const MDM_HDLCPPP_AUTH_CHAP = 3 const MDM_HDLCPPP_AUTH_DEFAULT = 0 const MDM_HDLCPPP_AUTH_MSCHAP = 4 const MDM_HDLCPPP_AUTH_NONE = 1 const MDM_HDLCPPP_AUTH_PAP = 2 const MDM_HDLCPPP_ML_2 = 2 const MDM_HDLCPPP_ML_DEFAULT = 0 const MDM_HDLCPPP_ML_NONE = 1 const MDM_HDLCPPP_SPEED_56K = 2 const MDM_HDLCPPP_SPEED_64K = 1 const MDM_HDLCPPP_SPEED_DEFAULT = 0 const MDM_MASK_AUTO_ML = 192 const MDM_MASK_AUTO_SPEED = 7 const MDM_MASK_BEARERMODE = 61440 const MDM_MASK_EXTENDEDINFO = 268431360 const MDM_MASK_HDLCPPP_AUTH = 56 const MDM_MASK_HDLCPPP_ML = 192 const MDM_MASK_HDLCPPP_SPEED = 7 const MDM_MASK_PROTOCOLDATA = 267386880 const MDM_MASK_PROTOCOLID = 983040 const MDM_MASK_PROTOCOLINFO = 268369920 const MDM_MASK_V110_SPEED = 15 const MDM_MASK_V120_ML = 192 const MDM_MASK_V120_SPEED = 7 const MDM_MASK_X75_DATA = 7 const MDM_PIAFS_INCOMING = 0 const MDM_PIAFS_OUTGOING = 1 const MDM_PROTOCOLID_ANALOG = 7 const MDM_PROTOCOLID_AUTO = 6 const MDM_PROTOCOLID_DEFAULT = 0 const MDM_PROTOCOLID_GPRS = 8 const MDM_PROTOCOLID_HDLCPPP = 1 const MDM_PROTOCOLID_PIAFS = 9 const MDM_PROTOCOLID_V110 = 4 const MDM_PROTOCOLID_V120 = 5 const MDM_PROTOCOLID_V128 = 2 const MDM_PROTOCOLID_X75 = 3 const MDM_PROTOCOL_ANALOG_NRLP = 1507328 const MDM_PROTOCOL_ANALOG_RLP = 458752 const MDM_PROTOCOL_ANALOG_V34 = 2555904 const MDM_PROTOCOL_AUTO_1CH = 67502080 const MDM_PROTOCOL_AUTO_2CH = 134610944 const MDM_PROTOCOL_GPRS = 524288 const MDM_PROTOCOL_HDLCPPP_112K = 136380416 const MDM_PROTOCOL_HDLCPPP_112K_CHAP = 161546240 const MDM_PROTOCOL_HDLCPPP_112K_MSCHAP = 169934848 const MDM_PROTOCOL_HDLCPPP_112K_PAP = 153157632 const MDM_PROTOCOL_HDLCPPP_128K = 135331840 const MDM_PROTOCOL_HDLCPPP_128K_CHAP = 160497664 const MDM_PROTOCOL_HDLCPPP_128K_MSCHAP = 168886272 const MDM_PROTOCOL_HDLCPPP_128K_PAP = 152109056 const MDM_PROTOCOL_HDLCPPP_56K = 2162688 const MDM_PROTOCOL_HDLCPPP_64K = 1114112 const MDM_PROTOCOL_PIAFS_INCOMING = 589824 const MDM_PROTOCOL_PIAFS_OUTGOING = 1638400 const MDM_PROTOCOL_V110_12DOT0K = 5505024 const MDM_PROTOCOL_V110_14DOT4K = 6553600 const MDM_PROTOCOL_V110_19DOT2K = 7602176 const MDM_PROTOCOL_V110_1DOT2K = 1310720 const MDM_PROTOCOL_V110_28DOT8K = 8650752 const MDM_PROTOCOL_V110_2DOT4K = 2359296 const MDM_PROTOCOL_V110_38DOT4K = 9699328 const MDM_PROTOCOL_V110_4DOT8K = 3407872 const MDM_PROTOCOL_V110_57DOT6K = 10747904 const MDM_PROTOCOL_V110_9DOT6K = 4456448 const MDM_PROTOCOL_V120_112K = 136642560 const MDM_PROTOCOL_V120_128K = 135593984 const MDM_PROTOCOL_V120_56K = 69533696 const MDM_PROTOCOL_V120_64K = 68485120 const MDM_PROTOCOL_X75_128K = 2293760 const MDM_PROTOCOL_X75_64K = 1245184 const MDM_PROTOCOL_X75_BTX = 4390912 const MDM_PROTOCOL_X75_T_70 = 3342336 const MDM_SHIFT_AUTO_ML = 6 const MDM_SHIFT_AUTO_SPEED = 0 const MDM_SHIFT_BEARERMODE = 12 const MDM_SHIFT_EXTENDEDINFO = 12 const MDM_SHIFT_HDLCPPP_AUTH = 3 const MDM_SHIFT_HDLCPPP_ML = 6 const MDM_SHIFT_HDLCPPP_SPEED = 0 const MDM_SHIFT_PROTOCOLDATA = 20 const MDM_SHIFT_PROTOCOLID = 16 const MDM_SHIFT_PROTOCOLINFO = 16 const MDM_SHIFT_V110_SPEED = 0 const MDM_SHIFT_V120_ML = 6 const MDM_SHIFT_V120_SPEED = 0 const MDM_SHIFT_X75_DATA = 0 const MDM_SPEED_ADJUST = 128 const MDM_TONE_DIAL = 256 const MDM_V110_SPEED_12DOT0K = 5 const MDM_V110_SPEED_14DOT4K = 6 const MDM_V110_SPEED_19DOT2K = 7 const MDM_V110_SPEED_1DOT2K = 1 const MDM_V110_SPEED_28DOT8K = 8 const MDM_V110_SPEED_2DOT4K = 2 const MDM_V110_SPEED_38DOT4K = 9 const MDM_V110_SPEED_4DOT8K = 3 const MDM_V110_SPEED_57DOT6K = 10 const MDM_V110_SPEED_9DOT6K = 4 const MDM_V110_SPEED_DEFAULT = 0 const MDM_V120_ML_2 = 2 const MDM_V120_ML_DEFAULT = 0 const MDM_V120_ML_NONE = 1 const MDM_V120_SPEED_56K = 2 const MDM_V120_SPEED_64K = 1 const MDM_V120_SPEED_DEFAULT = 0 const MDM_V23_OVERRIDE = 1024 const MDM_X75_DATA_128K = 2 const MDM_X75_DATA_64K = 1 const MDM_X75_DATA_BTX = 4 const MDM_X75_DATA_DEFAULT = 0 const MDM_X75_DATA_T_70 = 3 type MEASUREITEMSTRUCT = TMEASUREITEMSTRUCT const MEDIA_CURRENTLY_MOUNTED = 2147483648 const MEDIA_ERASEABLE = 1 const MEDIA_READ_ONLY = 4 const MEDIA_READ_WRITE = 8 type MEDIA_TYPE = TMEDIA_TYPE const MEDIA_WRITE_ONCE = 2 const MEDIA_WRITE_PROTECTED = 256 const MEHC_PATROL_SCRUBBER_PRESENT = 1 type MEMBERID = TMEMBERID const MEMBERID_NIL = -1 type MEMCTX = TMEMCTX type MEMORYSTATUS = TMEMORYSTATUS type MEMORYSTATUSEX = TMEMORYSTATUSEX type MEMORY_BASIC_INFORMATION = TMEMORY_BASIC_INFORMATION type MEMORY_BASIC_INFORMATION32 = TMEMORY_BASIC_INFORMATION32 type MEMORY_BASIC_INFORMATION64 = TMEMORY_BASIC_INFORMATION64 const MEMORY_PRIORITY_BELOW_NORMAL = 4 type MEMORY_PRIORITY_INFORMATION = TMEMORY_PRIORITY_INFORMATION const MEMORY_PRIORITY_LOW = 2 const MEMORY_PRIORITY_MEDIUM = 3 const MEMORY_PRIORITY_NORMAL = 5 const MEMORY_PRIORITY_VERY_LOW = 1 type MEMORY_RESOURCE_NOTIFICATION_TYPE = TMEMORY_RESOURCE_NOTIFICATION_TYPE const MEM_4MB_PAGES = 2147483648 const MEM_64K_PAGES = 541065216 type MEM_ADDRESS_REQUIREMENTS = TMEM_ADDRESS_REQUIREMENTS const MEM_COMMIT = 4096 const MEM_DECOMMIT = 16384 const MEM_DIFFERENT_IMAGE_BASE_OK = 8388608 type MEM_EXTENDED_PARAMETER = TMEM_EXTENDED_PARAMETER const MEM_EXTENDED_PARAMETER_GRAPHICS = 1 const MEM_EXTENDED_PARAMETER_NONPAGED = 2 const MEM_EXTENDED_PARAMETER_NONPAGED_HUGE = 16 const MEM_EXTENDED_PARAMETER_NONPAGED_LARGE = 8 type MEM_EXTENDED_PARAMETER_TYPE = TMEM_EXTENDED_PARAMETER_TYPE const MEM_EXTENDED_PARAMETER_TYPE_BITS = 8 const MEM_EXTENDED_PARAMETER_ZERO_PAGES_OPTIONAL = 4 const MEM_FREE = 65536 const MEM_IMAGE = 16777216 const MEM_LARGE_PAGES = 536870912 const MEM_MAPPED = 262144 const MEM_PHYSICAL = 4194304 const MEM_PRIVATE = 131072 const MEM_RELEASE = 32768 const MEM_RESERVE = 8192 const MEM_RESET = 524288 const MEM_RESET_UNDO = 16777216 const MEM_ROTATE = 8388608 type MEM_SECTION_EXTENDED_PARAMETER_TYPE = TMEM_SECTION_EXTENDED_PARAMETER_TYPE const MEM_TOP_DOWN = 1048576 const MEM_UNMAP_WITH_TRANSIENT_BOOST = 1 const MEM_WRITE_WATCH = 2097152 type MENUBARINFO = TMENUBARINFO type MENUGETOBJECTINFO = TMENUGETOBJECTINFO type MENUINFO = TMENUINFO type MENUITEMINFO = TMENUITEMINFO type MENUITEMINFOA = TMENUITEMINFOA type MENUITEMINFOW = TMENUITEMINFOW type MENUITEMTEMPLATE = TMENUITEMTEMPLATE type MENUITEMTEMPLATEHEADER = TMENUITEMTEMPLATEHEADER type MENUTEMPLATE = TMENUTEMPLATE type MENUTEMPLATEA = TMENUTEMPLATEA type MENUTEMPLATEW = TMENUTEMPLATEW const MENU_EVENT = 8 type MENU_EVENT_RECORD = TMENU_EVENT_RECORD type MERGE_VIRTUAL_DISK_FLAG = TMERGE_VIRTUAL_DISK_FLAG type MERGE_VIRTUAL_DISK_PARAMETERS = TMERGE_VIRTUAL_DISK_PARAMETERS type MERGE_VIRTUAL_DISK_VERSION = TMERGE_VIRTUAL_DISK_VERSION type MESSAGE_RESOURCE_BLOCK = TMESSAGE_RESOURCE_BLOCK type MESSAGE_RESOURCE_DATA = TMESSAGE_RESOURCE_DATA type MESSAGE_RESOURCE_ENTRY = TMESSAGE_RESOURCE_ENTRY const MESSAGE_RESOURCE_UNICODE = 1 type METAFILEPICT = TMETAFILEPICT const METAFILE_DRIVER = 2049 type METAHEADER = TMETAHEADER type METARECORD = TMETARECORD const META_ANIMATEPALETTE = 1078 const META_ARC = 2071 const META_BITBLT = 2338 const META_CHORD = 2096 const META_CREATEBRUSHINDIRECT = 764 const META_CREATEFONTINDIRECT = 763 const META_CREATEPALETTE = 247 const META_CREATEPATTERNBRUSH = 505 const META_CREATEPENINDIRECT = 762 const META_CREATEREGION = 1791 const META_DELETEOBJECT = 496 const META_DIBBITBLT = 2368 const META_DIBCREATEPATTERNBRUSH = 322 const META_DIBSTRETCHBLT = 2881 const META_ELLIPSE = 1048 const META_ESCAPE = 1574 const META_EXCLUDECLIPRECT = 1045 const META_EXTFLOODFILL = 1352 const META_EXTTEXTOUT = 2610 const META_FILLREGION = 552 const META_FLOODFILL = 1049 const META_FRAMEREGION = 1065 const META_INTERSECTCLIPRECT = 1046 const META_INVERTREGION = 298 const META_LINETO = 531 const META_MOVETO = 532 const META_OFFSETCLIPRGN = 544 const META_OFFSETVIEWPORTORG = 529 const META_OFFSETWINDOWORG = 527 const META_PAINTREGION = 299 const META_PATBLT = 1565 const META_PIE = 2074 const META_POLYGON = 804 const META_POLYLINE = 805 const META_POLYPOLYGON = 1336 const META_REALIZEPALETTE = 53 const META_RECTANGLE = 1051 const META_RESIZEPALETTE = 313 const META_RESTOREDC = 295 const META_ROUNDRECT = 1564 const META_SAVEDC = 30 const META_SCALEVIEWPORTEXT = 1042 const META_SCALEWINDOWEXT = 1040 const META_SELECTCLIPREGION = 300 const META_SELECTOBJECT = 301 const META_SELECTPALETTE = 564 const META_SETBKCOLOR = 513 const META_SETBKMODE = 258 const META_SETDIBTODEV = 3379 const META_SETLAYOUT = 329 const META_SETMAPMODE = 259 const META_SETMAPPERFLAGS = 561 const META_SETPALENTRIES = 55 const META_SETPIXEL = 1055 const META_SETPOLYFILLMODE = 262 const META_SETRELABS = 261 const META_SETROP2 = 260 const META_SETSTRETCHBLTMODE = 263 const META_SETTEXTALIGN = 302 const META_SETTEXTCHAREXTRA = 264 const META_SETTEXTCOLOR = 521 const META_SETTEXTJUSTIFICATION = 522 const META_SETVIEWPORTEXT = 526 const META_SETVIEWPORTORG = 525 const META_SETWINDOWEXT = 524 const META_SETWINDOWORG = 523 const META_STRETCHBLT = 2851 const META_STRETCHDIB = 3907 const META_TEXTOUT = 1313 type METHODDATA = TMETHODDATA const METHOD_BUFFERED = 0 const METHOD_DIRECT_FROM_HARDWARE = 2 const METHOD_DIRECT_TO_HARDWARE = 1 const METHOD_IN_DIRECT = 1 const METHOD_NEITHER = 3 const METHOD_OUT_DIRECT = 2 const METRICS_USEDEFAULT = -1 const MEVT_F_CALLBACK = 1073741824 const MEVT_F_LONG = 2147483648 const MEVT_F_SHORT = 0 const MFCOMMENT = 15 type MFENUMPROC = TMFENUMPROC const MFS_CHECKED = 8 const MFS_DEFAULT = 4096 const MFS_DISABLED = 3 const MFS_ENABLED = 0 const MFS_GRAYED = 3 const MFS_HILITE = 128 const MFS_UNCHECKED = 0 const MFS_UNHILITE = 0 const MFT_BITMAP = 4 type MFT_ENUM_DATA = TMFT_ENUM_DATA const MFT_MENUBARBREAK = 32 const MFT_MENUBREAK = 64 const MFT_OWNERDRAW = 256 const MFT_RADIOCHECK = 512 const MFT_RIGHTJUSTIFY = 16384 const MFT_RIGHTORDER = 8192 const MFT_SEPARATOR = 2048 const MFT_STRING = 0 const MF_APPEND = 256 const MF_BITMAP = 4 const MF_BYCOMMAND = 0 const MF_BYPOSITION = 1024 const MF_CALLBACKS = 134217728 const MF_CHANGE = 128 const MF_CHECKED = 8 const MF_CONV = 1073741824 const MF_DEFAULT = 4096 const MF_DELETE = 512 const MF_DISABLED = 2 const MF_ENABLED = 0 const MF_END = 128 const MF_ERRORS = 268435456 const MF_GRAYED = 1 const MF_HELP = 16384 const MF_HILITE = 128 const MF_HSZ_INFO = 16777216 const MF_INSERT = 0 const MF_LINKS = 536870912 const MF_MASK = 4278190080 const MF_MENUBARBREAK = 32 const MF_MENUBREAK = 64 const MF_MOUSESELECT = 32768 const MF_OWNERDRAW = 256 const MF_POPUP = 16 const MF_POSTMSGS = 67108864 const MF_REMOVE = 4096 const MF_RIGHTJUSTIFY = 16384 const MF_SENDMSGS = 33554432 const MF_SEPARATOR = 2048 const MF_STRING = 0 const MF_SYSMENU = 8192 const MF_UNCHECKED = 0 const MF_UNHILITE = 0 const MF_USECHECKBITMAPS = 512 const MHDR_DONE = 1 const MHDR_INQUEUE = 4 const MHDR_ISSTRM = 8 const MHDR_PREPARED = 2 const MH_CLEANUP = 4 const MH_CREATE = 1 const MH_DELETE = 3 const MH_KEEP = 2 const MICROSOFT_ROOT_CERT_CHAIN_POLICY_CHECK_APPLICATION_ROOT_FLAG = 131072 const MICROSOFT_ROOT_CERT_CHAIN_POLICY_DISABLE_FLIGHT_ROOT_FLAG = 262144 const MICROSOFT_ROOT_CERT_CHAIN_POLICY_ENABLE_TEST_ROOT_FLAG = 65536 const MICROSOFT_WINDOWS_WINBASE_H_DEFINE_INTERLOCKED_CPLUSPLUS_OVERLOADS = 1 const MIDICAPS_CACHE = 4 const MIDICAPS_LRVOLUME = 2 const MIDICAPS_STREAM = 8 const MIDICAPS_VOLUME = 1 const MIDIERR_BADOPENMODE = 70 const MIDIERR_BASE = 64 const MIDIERR_DONT_CONTINUE = 71 const MIDIERR_INVALIDSETUP = 69 const MIDIERR_LASTERROR = 71 const MIDIERR_NODEVICE = 68 const MIDIERR_NOMAP = 66 const MIDIERR_NOTREADY = 67 const MIDIERR_STILLPLAYING = 65 const MIDIERR_UNPREPARED = 64 type MIDIEVENT = TMIDIEVENT type MIDIHDR = TMIDIHDR type MIDIINCAPS = TMIDIINCAPS type MIDIINCAPS2 = TMIDIINCAPS2 type MIDIINCAPS2A = TMIDIINCAPS2A type MIDIINCAPS2W = TMIDIINCAPS2W type MIDIINCAPSA = TMIDIINCAPSA type MIDIINCAPSW = TMIDIINCAPSW const MIDIMAPPER = -1 type MIDIOUTCAPS = TMIDIOUTCAPS type MIDIOUTCAPS2 = TMIDIOUTCAPS2 type MIDIOUTCAPS2A = TMIDIOUTCAPS2A type MIDIOUTCAPS2W = TMIDIOUTCAPS2W type MIDIOUTCAPSA = TMIDIOUTCAPSA type MIDIOUTCAPSW = TMIDIOUTCAPSW const MIDIPATCHSIZE = 128 type MIDIPROPTEMPO = TMIDIPROPTEMPO type MIDIPROPTIMEDIV = TMIDIPROPTIMEDIV const MIDIPROP_GET = 1073741824 const MIDIPROP_SET = 2147483648 const MIDIPROP_TEMPO = 2 const MIDIPROP_TIMEDIV = 1 type MIDISTRMBUFFVER = TMIDISTRMBUFFVER const MIDISTRM_ERROR = -2 const MIDI_CACHE_ALL = 1 const MIDI_CACHE_BESTFIT = 2 const MIDI_CACHE_QUERY = 3 const MIDI_IO_STATUS = 32 const MIDI_MAPPER = -1 const MIDI_UNCACHE = 4 type MIDL_FORMAT_STRING = TMIDL_FORMAT_STRING type MIDL_SERVER_INFO = TMIDL_SERVER_INFO type MIDL_STUBLESS_PROXY_INFO = TMIDL_STUBLESS_PROXY_INFO type MIDL_STUB_DESC = TMIDL_STUB_DESC type MIDL_STUB_MESSAGE = TMIDL_STUB_MESSAGE type MIDL_SYNTAX_INFO = TMIDL_SYNTAX_INFO const MIIM_BITMAP = 128 const MIIM_CHECKMARKS = 8 const MIIM_DATA = 32 const MIIM_FTYPE = 256 const MIIM_ID = 2 const MIIM_STATE = 1 const MIIM_STRING = 64 const MIIM_SUBMENU = 4 const MIIM_TYPE = 16 const MILCORE_TS_QUERYVER_RESULT_FALSE = 0 const MILCORE_TS_QUERYVER_RESULT_TRUE = 2147483647 const MIM_APPLYTOSUBMENUS = 2147483648 const MIM_BACKGROUND = 2 const MIM_CLOSE = 962 const MIM_DATA = 963 const MIM_ERROR = 965 const MIM_HELPID = 4 const MIM_LONGDATA = 964 const MIM_LONGERROR = 966 const MIM_MAXHEIGHT = 1 const MIM_MENUDATA = 8 const MIM_MOREDATA = 972 const MIM_OPEN = 961 const MIM_STYLE = 16 const MINCHAR = 128 const MINGW_HAS_DDK_H = 1 const MINGW_HAS_SECURE_API = 1 type MINIMIZEDMETRICS = TMINIMIZEDMETRICS const MINLONG = 2147483648 type MINMAXINFO = TMINMAXINFO const MINSHORT = 32768 const MIN_ACL_REVISION = 2 const MIN_LOGICALDPIOVERRIDE = -2 const MIN_PRIORITY = 1 const MIN_UCSCHAR = 0 type MIRROR_VIRTUAL_DISK_FLAG = TMIRROR_VIRTUAL_DISK_FLAG type MIRROR_VIRTUAL_DISK_PARAMETERS = TMIRROR_VIRTUAL_DISK_PARAMETERS type MIRROR_VIRTUAL_DISK_VERSION = TMIRROR_VIRTUAL_DISK_VERSION type MIXERCAPS = TMIXERCAPS type MIXERCAPS2 = TMIXERCAPS2 type MIXERCAPS2A = TMIXERCAPS2A type MIXERCAPS2W = TMIXERCAPS2W type MIXERCAPSA = TMIXERCAPSA type MIXERCAPSW = TMIXERCAPSW type MIXERCONTROL = TMIXERCONTROL type MIXERCONTROLA = TMIXERCONTROLA type MIXERCONTROLDETAILS = TMIXERCONTROLDETAILS type MIXERCONTROLDETAILS_BOOLEAN = TMIXERCONTROLDETAILS_BOOLEAN type MIXERCONTROLDETAILS_LISTTEXT = TMIXERCONTROLDETAILS_LISTTEXT type MIXERCONTROLDETAILS_LISTTEXTA = TMIXERCONTROLDETAILS_LISTTEXTA type MIXERCONTROLDETAILS_LISTTEXTW = TMIXERCONTROLDETAILS_LISTTEXTW type MIXERCONTROLDETAILS_SIGNED = TMIXERCONTROLDETAILS_SIGNED type MIXERCONTROLDETAILS_UNSIGNED = TMIXERCONTROLDETAILS_UNSIGNED type MIXERCONTROLW = TMIXERCONTROLW const MIXERCONTROL_CONTROLF_DISABLED = 2147483648 const MIXERCONTROL_CONTROLF_MULTIPLE = 2 const MIXERCONTROL_CONTROLF_UNIFORM = 1 const MIXERCONTROL_CONTROLTYPE_BASS = 1342373890 const MIXERCONTROL_CONTROLTYPE_BASS_BOOST = 536945271 const MIXERCONTROL_CONTROLTYPE_BOOLEAN = 536936448 const MIXERCONTROL_CONTROLTYPE_BOOLEANMETER = 268500992 const MIXERCONTROL_CONTROLTYPE_BUTTON = 553713664 const MIXERCONTROL_CONTROLTYPE_CUSTOM = 0 const MIXERCONTROL_CONTROLTYPE_DECIBELS = 805568512 const MIXERCONTROL_CONTROLTYPE_EQUALIZER = 1342373892 const MIXERCONTROL_CONTROLTYPE_FADER = 1342373888 const MIXERCONTROL_CONTROLTYPE_LOUDNESS = 536936452 const MIXERCONTROL_CONTROLTYPE_MICROTIME = 1610809344 const MIXERCONTROL_CONTROLTYPE_MILLITIME = 1627586560 const MIXERCONTROL_CONTROLTYPE_MIXER = 1895890945 const MIXERCONTROL_CONTROLTYPE_MONO = 536936451 const MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT = 1895890944 const MIXERCONTROL_CONTROLTYPE_MUTE = 536936450 const MIXERCONTROL_CONTROLTYPE_MUX = 1879113729 const MIXERCONTROL_CONTROLTYPE_ONOFF = 536936449 const MIXERCONTROL_CONTROLTYPE_PAN = 1073872897 const MIXERCONTROL_CONTROLTYPE_PEAKMETER = 268566529 const MIXERCONTROL_CONTROLTYPE_PERCENT = 805634048 const MIXERCONTROL_CONTROLTYPE_QSOUNDPAN = 1073872898 const MIXERCONTROL_CONTROLTYPE_SIGNED = 805437440 const MIXERCONTROL_CONTROLTYPE_SIGNEDMETER = 268566528 const MIXERCONTROL_CONTROLTYPE_SINGLESELECT = 1879113728 const MIXERCONTROL_CONTROLTYPE_SLIDER = 1073872896 const MIXERCONTROL_CONTROLTYPE_STEREOENH = 536936453 const MIXERCONTROL_CONTROLTYPE_TREBLE = 1342373891 const MIXERCONTROL_CONTROLTYPE_UNSIGNED = 805502976 const MIXERCONTROL_CONTROLTYPE_UNSIGNEDMETER = 268632064 const MIXERCONTROL_CONTROLTYPE_VOLUME = 1342373889 const MIXERCONTROL_CT_CLASS_CUSTOM = 0 const MIXERCONTROL_CT_CLASS_FADER = 1342177280 const MIXERCONTROL_CT_CLASS_LIST = 1879048192 const MIXERCONTROL_CT_CLASS_MASK = 4026531840 const MIXERCONTROL_CT_CLASS_METER = 268435456 const MIXERCONTROL_CT_CLASS_NUMBER = 805306368 const MIXERCONTROL_CT_CLASS_SLIDER = 1073741824 const MIXERCONTROL_CT_CLASS_SWITCH = 536870912 const MIXERCONTROL_CT_CLASS_TIME = 1610612736 const MIXERCONTROL_CT_SC_LIST_MULTIPLE = 16777216 const MIXERCONTROL_CT_SC_LIST_SINGLE = 0 const MIXERCONTROL_CT_SC_METER_POLLED = 0 const MIXERCONTROL_CT_SC_SWITCH_BOOLEAN = 0 const MIXERCONTROL_CT_SC_SWITCH_BUTTON = 16777216 const MIXERCONTROL_CT_SC_TIME_MICROSECS = 0 const MIXERCONTROL_CT_SC_TIME_MILLISECS = 16777216 const MIXERCONTROL_CT_SUBCLASS_MASK = 251658240 const MIXERCONTROL_CT_UNITS_BOOLEAN = 65536 const MIXERCONTROL_CT_UNITS_CUSTOM = 0 const MIXERCONTROL_CT_UNITS_DECIBELS = 262144 const MIXERCONTROL_CT_UNITS_MASK = 16711680 const MIXERCONTROL_CT_UNITS_PERCENT = 327680 const MIXERCONTROL_CT_UNITS_SIGNED = 131072 const MIXERCONTROL_CT_UNITS_UNSIGNED = 196608 type MIXERLINE = TMIXERLINE type MIXERLINEA = TMIXERLINEA type MIXERLINECONTROLS = TMIXERLINECONTROLS type MIXERLINECONTROLSA = TMIXERLINECONTROLSA type MIXERLINECONTROLSW = TMIXERLINECONTROLSW type MIXERLINEW = TMIXERLINEW const MIXERLINE_COMPONENTTYPE_DST_DIGITAL = 1 const MIXERLINE_COMPONENTTYPE_DST_FIRST = 0 const MIXERLINE_COMPONENTTYPE_DST_HEADPHONES = 5 const MIXERLINE_COMPONENTTYPE_DST_LAST = 8 const MIXERLINE_COMPONENTTYPE_DST_LINE = 2 const MIXERLINE_COMPONENTTYPE_DST_MONITOR = 3 const MIXERLINE_COMPONENTTYPE_DST_SPEAKERS = 4 const MIXERLINE_COMPONENTTYPE_DST_TELEPHONE = 6 const MIXERLINE_COMPONENTTYPE_DST_UNDEFINED = 0 const MIXERLINE_COMPONENTTYPE_DST_VOICEIN = 8 const MIXERLINE_COMPONENTTYPE_DST_WAVEIN = 7 const MIXERLINE_COMPONENTTYPE_SRC_ANALOG = 4106 const MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY = 4105 const MIXERLINE_COMPONENTTYPE_SRC_COMPACTDISC = 4101 const MIXERLINE_COMPONENTTYPE_SRC_DIGITAL = 4097 const MIXERLINE_COMPONENTTYPE_SRC_FIRST = 4096 const MIXERLINE_COMPONENTTYPE_SRC_LAST = 4106 const MIXERLINE_COMPONENTTYPE_SRC_LINE = 4098 const MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE = 4099 const MIXERLINE_COMPONENTTYPE_SRC_PCSPEAKER = 4103 const MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER = 4100 const MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE = 4102 const MIXERLINE_COMPONENTTYPE_SRC_UNDEFINED = 4096 const MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT = 4104 const MIXERLINE_LINEF_ACTIVE = 1 const MIXERLINE_LINEF_DISCONNECTED = 32768 const MIXERLINE_LINEF_SOURCE = 2147483648 const MIXERLINE_TARGETTYPE_AUX = 5 const MIXERLINE_TARGETTYPE_MIDIIN = 4 const MIXERLINE_TARGETTYPE_MIDIOUT = 3 const MIXERLINE_TARGETTYPE_UNDEFINED = 0 const MIXERLINE_TARGETTYPE_WAVEIN = 2 const MIXERLINE_TARGETTYPE_WAVEOUT = 1 const MIXERR_BASE = 1024 const MIXERR_INVALCONTROL = 1025 const MIXERR_INVALLINE = 1024 const MIXERR_INVALVALUE = 1026 const MIXERR_LASTERROR = 1026 const MIXER_GETCONTROLDETAILSF_LISTTEXT = 1 const MIXER_GETCONTROLDETAILSF_QUERYMASK = 15 const MIXER_GETCONTROLDETAILSF_VALUE = 0 const MIXER_GETLINECONTROLSF_ALL = 0 const MIXER_GETLINECONTROLSF_ONEBYID = 1 const MIXER_GETLINECONTROLSF_ONEBYTYPE = 2 const MIXER_GETLINECONTROLSF_QUERYMASK = 15 const MIXER_GETLINEINFOF_COMPONENTTYPE = 3 const MIXER_GETLINEINFOF_DESTINATION = 0 const MIXER_GETLINEINFOF_LINEID = 2 const MIXER_GETLINEINFOF_QUERYMASK = 15 const MIXER_GETLINEINFOF_SOURCE = 1 const MIXER_GETLINEINFOF_TARGETTYPE = 4 const MIXER_LONG_NAME_CHARS = 64 const MIXER_OBJECTF_AUX = 1342177280 const MIXER_OBJECTF_HANDLE = 2147483648 const MIXER_OBJECTF_HMIDIIN = 3221225472 const MIXER_OBJECTF_HMIDIOUT = 2952790016 const MIXER_OBJECTF_HMIXER = 2147483648 const MIXER_OBJECTF_HWAVEIN = 2684354560 const MIXER_OBJECTF_HWAVEOUT = 2415919104 const MIXER_OBJECTF_MIDIIN = 1073741824 const MIXER_OBJECTF_MIDIOUT = 805306368 const MIXER_OBJECTF_MIXER = 0 const MIXER_OBJECTF_WAVEIN = 536870912 const MIXER_OBJECTF_WAVEOUT = 268435456 const MIXER_SETCONTROLDETAILSF_CUSTOM = 1 const MIXER_SETCONTROLDETAILSF_QUERYMASK = 15 const MIXER_SETCONTROLDETAILSF_VALUE = 0 const MIXER_SHORT_NAME_CHARS = 16 const MKF_AVAILABLE = 2 const MKF_CONFIRMHOTKEY = 8 const MKF_HOTKEYACTIVE = 4 const MKF_HOTKEYSOUND = 16 const MKF_INDICATOR = 32 const MKF_LEFTBUTTONDOWN = 16777216 const MKF_LEFTBUTTONSEL = 268435456 const MKF_MODIFIERS = 64 const MKF_MOUSEKEYSON = 1 const MKF_MOUSEMODE = 2147483648 const MKF_REPLACENUMBERS = 128 const MKF_RIGHTBUTTONDOWN = 33554432 const MKF_RIGHTBUTTONSEL = 536870912 type MKRREDUCE = TMKRREDUCE type MKSYS = TMKSYS const MKSYS_URLMONIKER = 6 const MK_ALT = 32 const MK_CONTROL = 8 const MK_E_FIRST = 2147746272 const MK_E_LAST = 2147746287 const MK_LBUTTON = 1 const MK_MBUTTON = 16 const MK_RBUTTON = 2 const MK_SHIFT = 4 const MK_S_FIRST = 262624 const MK_S_LAST = 262639 const MK_XBUTTON1 = 32 const MK_XBUTTON2 = 64 type MMCKINFO = TMMCKINFO const MMIOERR_ACCESSDENIED = 268 const MMIOERR_BASE = 256 const MMIOERR_CANNOTCLOSE = 260 const MMIOERR_CANNOTEXPAND = 264 const MMIOERR_CANNOTOPEN = 259 const MMIOERR_CANNOTREAD = 261 const MMIOERR_CANNOTSEEK = 263 const MMIOERR_CANNOTWRITE = 262 const MMIOERR_CHUNKNOTFOUND = 265 const MMIOERR_FILENOTFOUND = 257 const MMIOERR_INVALIDFILE = 272 const MMIOERR_NETWORKERROR = 270 const MMIOERR_OUTOFMEMORY = 258 const MMIOERR_PATHNOTFOUND = 267 const MMIOERR_SHARINGVIOLATION = 269 const MMIOERR_TOOMANYOPENFILES = 271 const MMIOERR_UNBUFFERED = 266 type MMIOINFO = TMMIOINFO const MMIOM_CLOSE = 4 const MMIOM_OPEN = 3 const MMIOM_READ = 0 const MMIOM_RENAME = 6 const MMIOM_SEEK = 2 const MMIOM_USER = 32768 const MMIOM_WRITE = 1 const MMIOM_WRITEFLUSH = 5 const MMIO_ALLOCBUF = 65536 const MMIO_COMPAT = 0 const MMIO_CREATE = 4096 const MMIO_CREATELIST = 64 const MMIO_CREATERIFF = 32 const MMIO_DEFAULTBUFFER = 8192 const MMIO_DELETE = 512 const MMIO_DENYNONE = 64 const MMIO_DENYREAD = 48 const MMIO_DENYWRITE = 32 const MMIO_DIRTY = 268435456 const MMIO_EMPTYBUF = 16 const MMIO_EXCLUSIVE = 16 const MMIO_EXIST = 16384 const MMIO_FHOPEN = 16 const MMIO_FINDCHUNK = 16 const MMIO_FINDLIST = 64 const MMIO_FINDPROC = 262144 const MMIO_FINDRIFF = 32 const MMIO_GETTEMP = 131072 const MMIO_GLOBALPROC = 268435456 const MMIO_INSTALLPROC = 65536 const MMIO_PARSE = 256 const MMIO_READ = 0 const MMIO_READWRITE = 2 const MMIO_REMOVEPROC = 131072 const MMIO_RWMODE = 3 const MMIO_SHAREMODE = 112 const MMIO_TOUPPER = 16 const MMIO_UNICODEPROC = 16777216 const MMIO_WRITE = 1 type MMRESULT = TMMRESULT const MMSYSERR_ALLOCATED = 4 const MMSYSERR_BADDB = 14 const MMSYSERR_BADDEVICEID = 2 const MMSYSERR_BADERRNUM = 9 const MMSYSERR_BASE = 0 const MMSYSERR_DELETEERROR = 18 const MMSYSERR_ERROR = 1 const MMSYSERR_HANDLEBUSY = 12 const MMSYSERR_INVALFLAG = 10 const MMSYSERR_INVALHANDLE = 5 const MMSYSERR_INVALIDALIAS = 13 const MMSYSERR_INVALPARAM = 11 const MMSYSERR_KEYNOTFOUND = 15 const MMSYSERR_LASTERROR = 21 const MMSYSERR_MOREDATA = 21 const MMSYSERR_NODRIVER = 6 const MMSYSERR_NODRIVERCB = 20 const MMSYSERR_NOERROR = 0 const MMSYSERR_NOMEM = 7 const MMSYSERR_NOTENABLED = 3 const MMSYSERR_NOTSUPPORTED = 8 const MMSYSERR_READERROR = 16 const MMSYSERR_VALNOTFOUND = 19 const MMSYSERR_WRITEERROR = 17 type MMTIME = TMMTIME type MMVERSION = TMMVERSION const MM_ANISOTROPIC = 8 const MM_DRVM_CLOSE = 977 const MM_DRVM_DATA = 978 const MM_DRVM_ERROR = 979 const MM_DRVM_OPEN = 976 const MM_HIENGLISH = 5 const MM_HIMETRIC = 3 const MM_ISOTROPIC = 7 const MM_JOY1BUTTONDOWN = 949 const MM_JOY1BUTTONUP = 951 const MM_JOY1MOVE = 928 const MM_JOY1ZMOVE = 930 const MM_JOY2BUTTONDOWN = 950 const MM_JOY2BUTTONUP = 952 const MM_JOY2MOVE = 929 const MM_JOY2ZMOVE = 931 const MM_LOENGLISH = 4 const MM_LOMETRIC = 2 const MM_MAX = 8 const MM_MAX_AXES_NAMELEN = 16 const MM_MAX_FIXEDSCALE = 6 const MM_MAX_NUMAXES = 16 const MM_MCINOTIFY = 953 const MM_MCISIGNAL = 971 const MM_MIM_CLOSE = 962 const MM_MIM_DATA = 963 const MM_MIM_ERROR = 965 const MM_MIM_LONGDATA = 964 const MM_MIM_LONGERROR = 966 const MM_MIM_MOREDATA = 972 const MM_MIM_OPEN = 961 const MM_MIN = 1 const MM_MIXM_CONTROL_CHANGE = 977 const MM_MIXM_LINE_CHANGE = 976 const MM_MOM_CLOSE = 968 const MM_MOM_DONE = 969 const MM_MOM_OPEN = 967 const MM_MOM_POSITIONCB = 970 const MM_STREAM_CLOSE = 981 const MM_STREAM_DONE = 982 const MM_STREAM_ERROR = 983 const MM_STREAM_OPEN = 980 const MM_TEXT = 1 const MM_TWIPS = 6 const MM_WIM_CLOSE = 959 const MM_WIM_DATA = 960 const MM_WIM_OPEN = 958 const MM_WOM_CLOSE = 956 const MM_WOM_DONE = 957 const MM_WOM_OPEN = 955 const MNC_CLOSE = 1 const MNC_EXECUTE = 2 const MNC_IGNORE = 0 const MNC_SELECT = 3 const MND_CONTINUE = 0 const MND_ENDMENU = 1 const MNGOF_BOTTOMGAP = 2 const MNGOF_TOPGAP = 1 const MNGO_NOERROR = 1 const MNGO_NOINTERFACE = 0 const MNS_AUTODISMISS = 268435456 const MNS_CHECKORBMP = 67108864 const MNS_DRAGDROP = 536870912 const MNS_MODELESS = 1073741824 const MNS_NOCHECK = 2147483648 const MNS_NOTIFYBYPOS = 134217728 const MN_GETHMENU = 481 type MODEMDEVCAPS = TMODEMDEVCAPS type MODEMSETTINGS = TMODEMSETTINGS type MODIFY_VHDSET_FLAG = TMODIFY_VHDSET_FLAG type MODIFY_VHDSET_PARAMETERS = TMODIFY_VHDSET_PARAMETERS type MODIFY_VHDSET_VERSION = TMODIFY_VHDSET_VERSION const MOD_ALT = 1 const MOD_CONTROL = 2 const MOD_FMSYNTH = 4 const MOD_IGNORE_ALL_MODIFIER = 1024 const MOD_LEFT = 32768 const MOD_MAPPER = 5 const MOD_MIDIPORT = 1 const MOD_NOREPEAT = 16384 const MOD_ON_KEYUP = 2048 const MOD_RIGHT = 16384 const MOD_SHIFT = 4 const MOD_SQSYNTH = 3 const MOD_SWSYNTH = 7 const MOD_SYNTH = 2 const MOD_WAVETABLE = 6 const MOD_WIN = 8 const MOM_CLOSE = 968 const MOM_DONE = 969 const MOM_OPEN = 967 const MOM_POSITIONCB = 970 type MONCBSTRUCT = TMONCBSTRUCT type MONCONVSTRUCT = TMONCONVSTRUCT type MONERRSTRUCT = TMONERRSTRUCT type MONHSZSTRUCT = TMONHSZSTRUCT type MONHSZSTRUCTA = TMONHSZSTRUCTA type MONHSZSTRUCTW = TMONHSZSTRUCTW type MONIKERPROPERTY = TMONIKERPROPERTY type MONITORENUMPROC = TMONITORENUMPROC type MONITORINFO = TMONITORINFO type MONITORINFOEX = TMONITORINFOEX type MONITORINFOEXA = TMONITORINFOEXA type MONITORINFOEXW = TMONITORINFOEXW const MONITORINFOF_PRIMARY = 1 const MONITOR_DEFAULTTONEAREST = 2 const MONITOR_DEFAULTTONULL = 0 const MONITOR_DEFAULTTOPRIMARY = 1 type MONITOR_DISPLAY_STATE = TMONITOR_DISPLAY_STATE type MONITOR_INFO_1 = TMONITOR_INFO_1 type MONITOR_INFO_1A = TMONITOR_INFO_1A type MONITOR_INFO_1W = TMONITOR_INFO_1W type MONITOR_INFO_2 = TMONITOR_INFO_2 type MONITOR_INFO_2A = TMONITOR_INFO_2A type MONITOR_INFO_2W = TMONITOR_INFO_2W type MONLINKSTRUCT = TMONLINKSTRUCT type MONMSGSTRUCT = TMONMSGSTRUCT const MONO_FONT = 8 const MOUSEEVENTF_ABSOLUTE = 32768 const MOUSEEVENTF_HWHEEL = 4096 const MOUSEEVENTF_LEFTDOWN = 2 const MOUSEEVENTF_LEFTUP = 4 const MOUSEEVENTF_MIDDLEDOWN = 32 const MOUSEEVENTF_MIDDLEUP = 64 const MOUSEEVENTF_MOVE = 1 const MOUSEEVENTF_MOVE_NOCOALESCE = 8192 const MOUSEEVENTF_RIGHTDOWN = 8 const MOUSEEVENTF_RIGHTUP = 16 const MOUSEEVENTF_VIRTUALDESK = 16384 const MOUSEEVENTF_WHEEL = 2048 const MOUSEEVENTF_XDOWN = 128 const MOUSEEVENTF_XUP = 256 type MOUSEHOOKSTRUCT = TMOUSEHOOKSTRUCT type MOUSEHOOKSTRUCTEX = TMOUSEHOOKSTRUCTEX type MOUSEINPUT = TMOUSEINPUT type MOUSEKEYS = TMOUSEKEYS type MOUSEMOVEPOINT = TMOUSEMOVEPOINT const MOUSETRAILS = 39 const MOUSEWHEEL_ROUTING_FOCUS = 0 const MOUSEWHEEL_ROUTING_HYBRID = 1 const MOUSEWHEEL_ROUTING_MOUSE_POS = 2 const MOUSE_ATTRIBUTES_CHANGED = 4 const MOUSE_EVENT = 2 type MOUSE_EVENT_RECORD = TMOUSE_EVENT_RECORD const MOUSE_HWHEELED = 8 const MOUSE_MOVED = 1 const MOUSE_MOVE_ABSOLUTE = 1 const MOUSE_MOVE_NOCOALESCE = 8 const MOUSE_MOVE_RELATIVE = 0 const MOUSE_VIRTUAL_DESKTOP = 2 const MOUSE_WHEELED = 4 const MOVEFILE_COPY_ALLOWED = 2 const MOVEFILE_CREATE_HARDLINK = 16 const MOVEFILE_DELAY_UNTIL_REBOOT = 4 const MOVEFILE_FAIL_IF_NOT_TRACKABLE = 32 const MOVEFILE_REPLACE_EXISTING = 1 const MOVEFILE_WRITE_THROUGH = 8 type MOVE_FILE_DATA = TMOVE_FILE_DATA type MOVE_FILE_RECORD_DATA = TMOVE_FILE_RECORD_DATA type MSG = TMSG type MSGBOXCALLBACK = TMSGBOXCALLBACK type MSGBOXPARAMS = TMSGBOXPARAMS type MSGBOXPARAMSA = TMSGBOXPARAMSA type MSGBOXPARAMSW = TMSGBOXPARAMSW const MSGFLTINFO_ALLOWED_HIGHER = 3 const MSGFLTINFO_ALREADYALLOWED_FORWND = 1 const MSGFLTINFO_ALREADYDISALLOWED_FORWND = 2 const MSGFLTINFO_NONE = 0 const MSGFLT_ADD = 1 const MSGFLT_ALLOW = 1 const MSGFLT_DISALLOW = 2 const MSGFLT_REMOVE = 2 const MSGFLT_RESET = 0 const MSGF_DDEMGR = 32769 const MSGF_DIALOGBOX = 0 const MSGF_MAX = 8 const MSGF_MENU = 2 const MSGF_MESSAGEBOX = 1 const MSGF_NEXTWINDOW = 6 const MSGF_SCROLLBAR = 5 const MSGF_USER = 4096 const MSG_MAXIOVLEN = 16 const MSG_PARTIAL = 32768 type MSHCTX = TMSHCTX type MSHLFLAGS = TMSHLFLAGS type MSLLHOOKSTRUCT = TMSLLHOOKSTRUCT const MS_DEF_DH_SCHANNEL_PROV_A = "Microsoft DH SChannel Cryptographic Provider" const MS_DEF_DH_SCHANNEL_PROV_W = "Microsoft DH SChannel Cryptographic Provider" const MS_DEF_DSS_DH_PROV_A = "Microsoft Base DSS and Diffie-Hellman Cryptographic Provider" const MS_DEF_DSS_DH_PROV_W = "Microsoft Base DSS and Diffie-Hellman Cryptographic Provider" const MS_DEF_DSS_PROV_A = "Microsoft Base DSS Cryptographic Provider" const MS_DEF_DSS_PROV_W = "Microsoft Base DSS Cryptographic Provider" const MS_DEF_PROV_A = "Microsoft Base Cryptographic Provider v1.0" const MS_DEF_PROV_W = "Microsoft Base Cryptographic Provider v1.0" const MS_DEF_RSA_SCHANNEL_PROV_A = "Microsoft RSA SChannel Cryptographic Provider" const MS_DEF_RSA_SCHANNEL_PROV_W = "Microsoft RSA SChannel Cryptographic Provider" const MS_DEF_RSA_SIG_PROV_A = "Microsoft RSA Signature Cryptographic Provider" const MS_DEF_RSA_SIG_PROV_W = "Microsoft RSA Signature Cryptographic Provider" const MS_ENHANCED_PROV_A = "Microsoft Enhanced Cryptographic Provider v1.0" const MS_ENHANCED_PROV_W = "Microsoft Enhanced Cryptographic Provider v1.0" const MS_ENH_DSS_DH_PROV_A = "Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider" const MS_ENH_DSS_DH_PROV_W = "Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider" const MS_ENH_RSA_AES_PROV_A = "Microsoft Enhanced RSA and AES Cryptographic Provider" const MS_ENH_RSA_AES_PROV_W = "Microsoft Enhanced RSA and AES Cryptographic Provider" const MS_ENH_RSA_AES_PROV_XP_A = "Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)" const MS_ENH_RSA_AES_PROV_XP_W = "Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)" const MS_KEY_STORAGE_PROVIDER = "Microsoft Software Key Storage Provider" const MS_NBF = "MNBF" const MS_PLATFORM_CRYPTO_PROVIDER = "Microsoft Platform Crypto Provider" const MS_PLATFORM_KEY_STORAGE_PROVIDER = "Microsoft Platform Crypto Provider" const MS_PPM_SOFTWARE_ALL = 1 const MS_PRIMITIVE_PROVIDER = "Microsoft Primitive Provider" const MS_SCARD_PROV_A = "Microsoft Base Smart Card Crypto Provider" const MS_SCARD_PROV_W = "Microsoft Base Smart Card Crypto Provider" const MS_SMART_CARD_KEY_STORAGE_PROVIDER = "Microsoft Smart Card Key Storage Provider" const MS_STRONG_PROV_A = "Microsoft Strong Cryptographic Provider" const MS_STRONG_PROV_W = "Microsoft Strong Cryptographic Provider" const MUI_CALLBACK_ALL_FLAGS = 0 const MUI_COMPLEX_SCRIPT_FILTER = 512 const MUI_CONSOLE_FILTER = 256 const MUI_FILEINFO_VERSION = 1 const MUI_FILETYPE_LANGUAGE_NEUTRAL_MAIN = 2 const MUI_FILETYPE_LANGUAGE_NEUTRAL_MUI = 4 const MUI_FILETYPE_NOT_LANGUAGE_NEUTRAL = 1 const MUI_FORMAT_INF_COMPAT = 2 const MUI_FORMAT_REG_COMPAT = 1 const MUI_FULL_LANGUAGE = 1 const MUI_IMMUTABLE_LOOKUP = 16 const MUI_LANGUAGE_ID = 4 const MUI_LANGUAGE_INSTALLED = 32 const MUI_LANGUAGE_LICENSED = 64 const MUI_LANGUAGE_NAME = 8 const MUI_LANG_NEUTRAL_PE_FILE = 256 const MUI_LIP_LANGUAGE = 4 const MUI_MACHINE_LANGUAGE_SETTINGS = 1024 const MUI_MERGE_SYSTEM_FALLBACK = 16 const MUI_MERGE_USER_FALLBACK = 32 const MUI_NON_LANG_NEUTRAL_FILE = 512 const MUI_PARTIAL_LANGUAGE = 2 const MUI_QUERY_CHECKSUM = 2 const MUI_QUERY_LANGUAGE_NAME = 4 const MUI_QUERY_RESOURCE_TYPES = 8 const MUI_QUERY_TYPE = 1 const MUI_RESET_FILTERS = 1 const MUI_SKIP_STRING_CACHE = 8 const MUI_THREAD_LANGUAGES = 64 const MUI_UI_FALLBACK = 48 const MUI_USER_PREFERRED_UI_LANGUAGES = 16 const MUI_USE_INSTALLED_LANGUAGES = 32 const MUI_USE_SEARCH_ALL_LANGUAGES = 64 const MUI_VERIFY_FILE_EXISTS = 4 const MULTIFILEOPENORD = 1537 type MULTIKEYHELP = TMULTIKEYHELP type MULTIKEYHELPA = TMULTIKEYHELPA type MULTIKEYHELPW = TMULTIKEYHELPW type MULTI_QI = TMULTI_QI const MUTANT_ALL_ACCESS = 2031617 const MUTANT_QUERY_STATE = 1 const MUTEX_ALL_ACCESS = 2031617 const MUTEX_MODIFY_STATE = 1 const MUTZ_ACCEPT_WILDCARD_SCHEME = 128 const MUTZ_DONT_UNESCAPE = 2048 const MUTZ_DONT_USE_CACHE = 4096 const MUTZ_ENFORCERESTRICTED = 256 const MUTZ_FORCE_INTRANET_FLAGS = 8192 const MUTZ_IGNORE_ZONE_MAPPINGS = 16384 const MUTZ_ISFILE = 2 const MUTZ_NOSAVEDFILECHECK = 1 const MUTZ_REQUIRESAVEDFILECHECK = 1024 const MUTZ_RESERVED = 512 const MWMO_ALERTABLE = 2 const MWMO_INPUTAVAILABLE = 4 const MWMO_WAITALL = 1 const MWT_IDENTITY = 1 const MWT_LEFTMULTIPLY = 2 const MWT_MAX = 3 const MWT_MIN = 1 const MWT_RIGHTMULTIPLY = 3 const MX_CLOSE_ATTEMPT = 3 const MapVirtualKey = 0 const MapVirtualKeyEx = 0 const MaxNumberOfEEInfoParams = 4 const MediumChangerClassGuid = 0 const MessageBox = 0 const MessageBoxEx = 0 const MessageBoxIndirect = 0 const ModifyMenu = 0 const MoveFile = 0 const MoveFileEx = 0 const MoveFileTransacted = 0 const MoveFileWithProgress = 0 const MoveMemory = 0 const MultinetGetConnectionPerformance = 0 type NAMEENUMPROCA = TNAMEENUMPROCA type NAMEENUMPROCW = TNAMEENUMPROCW type NAME_BUFFER = TNAME_BUFFER const NAME_FLAGS_MASK = 135 type NCB = TNCB const NCBACTION = 119 const NCBADDGRNAME = 54 const NCBADDNAME = 48 const NCBASTAT = 51 const NCBCALL = 16 const NCBCANCEL = 53 const NCBCHAINSEND = 23 const NCBCHAINSENDNA = 114 const NCBDELNAME = 49 const NCBDGRECV = 33 const NCBDGRECVBC = 35 const NCBDGSEND = 32 const NCBDGSENDBC = 34 const NCBENUM = 55 const NCBFINDNAME = 120 const NCBHANGUP = 18 const NCBLANSTALERT = 115 const NCBLISTEN = 17 const NCBNAMSZ = 16 const NCBRECV = 21 const NCBRECVANY = 22 const NCBRESET = 50 const NCBSEND = 20 const NCBSENDNA = 113 const NCBSSTAT = 52 const NCBTRACE = 121 const NCBUNLINK = 112 type NCCALCSIZE_PARAMS = TNCCALCSIZE_PARAMS const NCM_DISPLAYERRORTIP = 1028 const NCM_GETADDRESS = 1025 const NCM_GETALLOWTYPE = 1027 const NCM_SETALLOWTYPE = 1026 const NCRYPTBUFFER_CERT_BLOB = 47 const NCRYPTBUFFER_DATA = 1 const NCRYPTBUFFER_EMPTY = 0 const NCRYPTBUFFER_PKCS_ALG_ID = 43 const NCRYPTBUFFER_PKCS_ALG_OID = 41 const NCRYPTBUFFER_PKCS_ALG_PARAM = 42 const NCRYPTBUFFER_PKCS_ATTRS = 44 const NCRYPTBUFFER_PKCS_KEY_NAME = 45 const NCRYPTBUFFER_PKCS_OID = 40 const NCRYPTBUFFER_PKCS_SECRET = 46 const NCRYPTBUFFER_PROTECTION_DESCRIPTOR_STRING = 3 const NCRYPTBUFFER_PROTECTION_FLAGS = 4 const NCRYPTBUFFER_SSL_CLEAR_KEY = 23 const NCRYPTBUFFER_SSL_CLIENT_RANDOM = 20 const NCRYPTBUFFER_SSL_HIGHEST_VERSION = 22 const NCRYPTBUFFER_SSL_KEY_ARG_DATA = 24 const NCRYPTBUFFER_SSL_SERVER_RANDOM = 21 const NCRYPTBUFFER_VERSION = 0 const NCRYPT_3DES_112_ALGORITHM = "BCRYPT_3DES_112_ALGORITHM" const NCRYPT_3DES_ALGORITHM = "BCRYPT_3DES_ALGORITHM" const NCRYPT_AES_ALGORITHM = "BCRYPT_AES_ALGORITHM" const NCRYPT_AES_ALGORITHM_GROUP = "NCRYPT_AES_ALGORITHM" const NCRYPT_ALGORITHM_GROUP_PROPERTY = "Algorithm Group" const NCRYPT_ALGORITHM_PROPERTY = "Algorithm Name" type NCRYPT_ALLOC_PARA = TNCRYPT_ALLOC_PARA const NCRYPT_ALLOW_ALL_USAGES = 16777215 const NCRYPT_ALLOW_ARCHIVING_FLAG = 4 const NCRYPT_ALLOW_DECRYPT_FLAG = 1 const NCRYPT_ALLOW_EXPORT_FLAG = 1 const NCRYPT_ALLOW_KEY_AGREEMENT_FLAG = 4 const NCRYPT_ALLOW_PLAINTEXT_ARCHIVING_FLAG = 8 const NCRYPT_ALLOW_PLAINTEXT_EXPORT_FLAG = 2 const NCRYPT_ALLOW_SIGNING_FLAG = 2 const NCRYPT_ASSOCIATED_ECDH_KEY = "SmartCardAssociatedECDHKey" const NCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE = 3 const NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 4 const NCRYPT_AUTH_TAG_LENGTH = "AuthTagLength" const NCRYPT_BLOCK_LENGTH_PROPERTY = "Block Length" const NCRYPT_CAPI_KDF_ALGORITHM = "BCRYPT_CAPI_KDF_ALGORITHM" const NCRYPT_CERTIFICATE_PROPERTY = "SmartCardKeyCertificate" const NCRYPT_CHAINING_MODE_PROPERTY = "Chaining Mode" const NCRYPT_CIPHER_BLOCK_PADDING_FLAG = 1 const NCRYPT_CIPHER_INTERFACE = 1 const NCRYPT_CIPHER_KEY_BLOB = "CipherKeyBlob" const NCRYPT_CIPHER_KEY_BLOB_MAGIC = 1380470851 const NCRYPT_CIPHER_NO_PADDING_FLAG = 0 const NCRYPT_CIPHER_OPERATION = 1 const NCRYPT_CIPHER_OTHER_PADDING_FLAG = 2 type NCRYPT_CIPHER_PADDING_INFO = TNCRYPT_CIPHER_PADDING_INFO const NCRYPT_DESX_ALGORITHM = "BCRYPT_DESX_ALGORITHM" const NCRYPT_DES_ALGORITHM = "BCRYPT_DES_ALGORITHM" const NCRYPT_DES_ALGORITHM_GROUP = "DES" const NCRYPT_DH_ALGORITHM = "BCRYPT_DH_ALGORITHM" const NCRYPT_DH_ALGORITHM_GROUP = "NCRYPT_DH_ALGORITHM" const NCRYPT_DH_PARAMETERS_PROPERTY = "BCRYPT_DH_PARAMETERS" const NCRYPT_DO_NOT_FINALIZE_FLAG = 1024 const NCRYPT_DSA_ALGORITHM = "BCRYPT_DSA_ALGORITHM" const NCRYPT_DSA_ALGORITHM_GROUP = "NCRYPT_DSA_ALGORITHM" const NCRYPT_ECDH_ALGORITHM_GROUP = "ECDH" const NCRYPT_ECDH_P256_ALGORITHM = "BCRYPT_ECDH_P256_ALGORITHM" const NCRYPT_ECDH_P384_ALGORITHM = "BCRYPT_ECDH_P384_ALGORITHM" const NCRYPT_ECDH_P521_ALGORITHM = "BCRYPT_ECDH_P521_ALGORITHM" const NCRYPT_ECDSA_ALGORITHM_GROUP = "ECDSA" const NCRYPT_ECDSA_P256_ALGORITHM = "BCRYPT_ECDSA_P256_ALGORITHM" const NCRYPT_ECDSA_P384_ALGORITHM = "BCRYPT_ECDSA_P384_ALGORITHM" const NCRYPT_ECDSA_P521_ALGORITHM = "BCRYPT_ECDSA_P521_ALGORITHM" const NCRYPT_EXPORT_LEGACY_FLAG = 2048 const NCRYPT_EXPORT_POLICY_PROPERTY = "Export Policy" type NCRYPT_HANDLE = TNCRYPT_HANDLE type NCRYPT_HASH_HANDLE = TNCRYPT_HASH_HANDLE const NCRYPT_HASH_INTERFACE = 2 const NCRYPT_HASH_OPERATION = 2 const NCRYPT_IMPL_HARDWARE_FLAG = 1 const NCRYPT_IMPL_HARDWARE_RNG_FLAG = 16 const NCRYPT_IMPL_REMOVABLE_FLAG = 8 const NCRYPT_IMPL_SOFTWARE_FLAG = 2 const NCRYPT_IMPL_TYPE_PROPERTY = "Impl Type" const NCRYPT_INITIALIZATION_VECTOR = "BCRYPT_INITIALIZATION_VECTOR" const NCRYPT_KDF_SECRET_VALUE = "KDFKeySecret" type NCRYPT_KEY_BLOB_HEADER = TNCRYPT_KEY_BLOB_HEADER const NCRYPT_KEY_DERIVATION_GROUP = "KEY_DERIVATION" const NCRYPT_KEY_DERIVATION_INTERFACE = 7 const NCRYPT_KEY_DERIVATION_OPERATION = 64 type NCRYPT_KEY_HANDLE = TNCRYPT_KEY_HANDLE const NCRYPT_KEY_PROTECTION_INTERFACE = 65540 const NCRYPT_KEY_STORAGE_ALGORITHM = "KEY_STORAGE" const NCRYPT_KEY_STORAGE_INTERFACE = 65537 const NCRYPT_KEY_TYPE_PROPERTY = "Key Type" const NCRYPT_KEY_USAGE_PROPERTY = "Key Usage" const NCRYPT_LAST_MODIFIED_PROPERTY = "Modified" const NCRYPT_LENGTHS_PROPERTY = "Lengths" const NCRYPT_LENGTH_PROPERTY = "Length" const NCRYPT_MACHINE_KEY_FLAG = 32 const NCRYPT_MAX_ALG_ID_LENGTH = 512 const NCRYPT_MAX_KEY_NAME_LENGTH = 512 const NCRYPT_MAX_NAME_LENGTH_PROPERTY = "Max Name Length" const NCRYPT_MAX_PROPERTY_DATA = 1048576 const NCRYPT_MAX_PROPERTY_NAME = 64 const NCRYPT_MD2_ALGORITHM = "BCRYPT_MD2_ALGORITHM" const NCRYPT_MD4_ALGORITHM = "BCRYPT_MD4_ALGORITHM" const NCRYPT_MD5_ALGORITHM = "BCRYPT_MD5_ALGORITHM" const NCRYPT_NAME_PROPERTY = "Name" const NCRYPT_NO_KEY_VALIDATION = 8 const NCRYPT_NO_PADDING_FLAG = 1 const NCRYPT_OPAQUETRANSPORT_BLOB = "OpaqueTransport" const NCRYPT_OVERWRITE_KEY_FLAG = 128 const NCRYPT_PAD_CIPHER_FLAG = 16 const NCRYPT_PAD_OAEP_FLAG = 4 const NCRYPT_PAD_PKCS1_FLAG = 2 const NCRYPT_PAD_PSS_FLAG = 8 const NCRYPT_PBKDF2_ALGORITHM = "BCRYPT_PBKDF2_ALGORITHM" const NCRYPT_PCP_ALTERNATE_KEY_STORAGE_LOCATION_PROPERTY = "PCP_ALTERNATE_KEY_STORAGE_LOCATION" const NCRYPT_PCP_CHANGEPASSWORD_PROPERTY = "PCP_CHANGEPASSWORD" const NCRYPT_PCP_EKCERT_PROPERTY = "PCP_EKCERT" const NCRYPT_PCP_EKNVCERT_PROPERTY = "PCP_EKNVCERT" const NCRYPT_PCP_EKPUB_PROPERTY = "PCP_EKPUB" const NCRYPT_PCP_ENCRYPTION_KEY = 2 const NCRYPT_PCP_EXPORT_ALLOWED_PROPERTY = "PCP_EXPORT_ALLOWED" const NCRYPT_PCP_GENERIC_KEY = 3 const NCRYPT_PCP_IDENTITY_KEY = 8 const NCRYPT_PCP_KEYATTESTATION_PROPERTY = "PCP_TPM12_KEYATTESTATION" const NCRYPT_PCP_KEY_USAGE_POLICY_PROPERTY = "PCP_KEY_USAGE_POLICY" const NCRYPT_PCP_MIGRATIONPASSWORD_PROPERTY = "PCP_MIGRATIONPASSWORD" const NCRYPT_PCP_PASSWORD_REQUIRED_PROPERTY = "PCP_PASSWORD_REQUIRED" const NCRYPT_PCP_PCRTABLE_PROPERTY = "PCP_PCRTABLE" const NCRYPT_PCP_PLATFORMHANDLE_PROPERTY = "PCP_PLATFORMHANDLE" const NCRYPT_PCP_PLATFORM_BINDING_PCRDIGESTLIST_PROPERTY = "PCP_PLATFORM_BINDING_PCRDIGESTLIST" const NCRYPT_PCP_PLATFORM_BINDING_PCRDIGEST_PROPERTY = "PCP_PLATFORM_BINDING_PCRDIGEST" const NCRYPT_PCP_PLATFORM_BINDING_PCRMASK_PROPERTY = "PCP_PLATFORM_BINDING_PCRMASK" const NCRYPT_PCP_PLATFORM_TYPE_PROPERTY = "PCP_PLATFORM_TYPE" const NCRYPT_PCP_PROVIDERHANDLE_PROPERTY = "PCP_PROVIDERMHANDLE" const NCRYPT_PCP_PROVIDER_VERSION_PROPERTY = "PCP_PROVIDER_VERSION" const NCRYPT_PCP_SIGNATURE_KEY = 1 const NCRYPT_PCP_SRKPUB_PROPERTY = "PCP_SRKPUB" const NCRYPT_PCP_STORAGEPARENT_PROPERTY = "PCP_STORAGEPARENT" const NCRYPT_PCP_STORAGE_KEY = 4 const NCRYPT_PCP_TPM12_IDACTIVATION_PROPERTY = "PCP_TPM12_IDACTIVATION" const NCRYPT_PCP_TPM12_IDBINDING_PROPERTY = "PCP_TPM12_IDBINDING" const NCRYPT_PCP_USAGEAUTH_PROPERTY = "PCP_USAGEAUTH" const NCRYPT_PERSIST_FLAG = 2147483648 const NCRYPT_PERSIST_ONLY_FLAG = 1073741824 const NCRYPT_PIN_PROMPT_PROPERTY = "SmartCardPinPrompt" const NCRYPT_PIN_PROPERTY = "SmartCardPin" const NCRYPT_PKCS7_ENVELOPE_BLOB = "PKCS7_ENVELOPE" const NCRYPT_PKCS8_PRIVATE_KEY_BLOB = "PKCS8_PRIVATEKEY" const NCRYPT_PROTECTED_KEY_BLOB = "ProtectedKeyBlob" const NCRYPT_PROTECTED_KEY_BLOB_MAGIC = 1263817296 const NCRYPT_PROVIDER_HANDLE_PROPERTY = "Provider Handle" type NCRYPT_PROV_HANDLE = TNCRYPT_PROV_HANDLE const NCRYPT_RC2_ALGORITHM = "BCRYPT_RC2_ALGORITHM" const NCRYPT_RC2_ALGORITHM_GROUP = "NCRYPT_RC2_ALGORITHM" const NCRYPT_READER_ICON_PROPERTY = "SmartCardReaderIcon" const NCRYPT_READER_PROPERTY = "SmartCardReader" const NCRYPT_REGISTER_NOTIFY_FLAG = 1 const NCRYPT_RNG_OPERATION = 32 const NCRYPT_ROOT_CERTSTORE_PROPERTY = "SmartcardRootCertStore" const NCRYPT_RSA_ALGORITHM = "BCRYPT_RSA_ALGORITHM" const NCRYPT_RSA_ALGORITHM_GROUP = "NCRYPT_RSA_ALGORITHM" const NCRYPT_RSA_SIGN_ALGORITHM = "BCRYPT_RSA_SIGN_ALGORITHM" const NCRYPT_SCARD_PIN_ID = "SmartCardPinId" const NCRYPT_SCARD_PIN_INFO = "SmartCardPinInfo" const NCRYPT_SCHANNEL_INTERFACE = 65538 const NCRYPT_SCHANNEL_SIGNATURE_INTERFACE = 65539 const NCRYPT_SECRET_AGREEMENT_INTERFACE = 4 const NCRYPT_SECRET_AGREEMENT_OPERATION = 8 type NCRYPT_SECRET_HANDLE = TNCRYPT_SECRET_HANDLE const NCRYPT_SECURE_PIN_PROPERTY = "SmartCardSecurePin" const NCRYPT_SECURITY_DESCR_PROPERTY = "Security Descr" const NCRYPT_SECURITY_DESCR_SUPPORT_PROPERTY = "Security Descr Support" const NCRYPT_SHA1_ALGORITHM = "BCRYPT_SHA1_ALGORITHM" const NCRYPT_SHA256_ALGORITHM = "BCRYPT_SHA256_ALGORITHM" const NCRYPT_SHA384_ALGORITHM = "BCRYPT_SHA384_ALGORITHM" const NCRYPT_SHA512_ALGORITHM = "BCRYPT_SHA512_ALGORITHM" const NCRYPT_SIGNATURE_INTERFACE = 5 const NCRYPT_SIGNATURE_OPERATION = 16 const NCRYPT_SILENT_FLAG = 64 const NCRYPT_SMARTCARD_GUID_PROPERTY = "SmartCardGuid" const NCRYPT_SP800108_CTR_HMAC_ALGORITHM = "BCRYPT_SP800108_CTR_HMAC_ALGORITHM" const NCRYPT_SP80056A_CONCAT_ALGORITHM = "BCRYPT_SP80056A_CONCAT_ALGORITHM" type NCRYPT_SUPPORTED_LENGTHS = TNCRYPT_SUPPORTED_LENGTHS const NCRYPT_TPM12_PROVIDER = 65536 const NCRYPT_UI_FORCE_HIGH_PROTECTION_FLAG = 2 type NCRYPT_UI_POLICY = TNCRYPT_UI_POLICY const NCRYPT_UI_POLICY_PROPERTY = "UI Policy" const NCRYPT_UI_PROTECT_KEY_FLAG = 1 const NCRYPT_UNIQUE_NAME_PROPERTY = "Unique Name" const NCRYPT_UNREGISTER_NOTIFY_FLAG = 2 const NCRYPT_USER_CERTSTORE_PROPERTY = "SmartCardUserCertStore" const NCRYPT_USE_CONTEXT_PROPERTY = "Use Context" const NCRYPT_USE_COUNT_ENABLED_PROPERTY = "Enabled Use Count" const NCRYPT_USE_COUNT_PROPERTY = "Use Count" const NCRYPT_VERSION_PROPERTY = "Version" const NCRYPT_WINDOW_HANDLE_PROPERTY = "HWND Handle" const NCRYPT_WRITE_KEY_TO_LEGACY_STORE_FLAG = 512 type NC_ADDRESS = TNC_ADDRESS type NCryptAlgorithmName = TNCryptAlgorithmName type NCryptBuffer = TNCryptBuffer type NCryptBufferDesc = TNCryptBufferDesc type NCryptKeyName = TNCryptKeyName type NCryptProviderName = TNCryptProviderName const NDR_ASCII_CHAR = 0 const NDR_BIG_ENDIAN = 0 type NDR_CCONTEXT = TNDR_CCONTEXT const NDR_CHAR_REP_MASK = 15 type NDR_CS_ROUTINES = TNDR_CS_ROUTINES type NDR_CS_SIZE_CONVERT_ROUTINES = TNDR_CS_SIZE_CONVERT_ROUTINES const NDR_EBCDIC_CHAR = 1 const NDR_FLOAT_REP_MASK = 65280 const NDR_IBM_FLOAT = 768 const NDR_IEEE_FLOAT = 0 const NDR_INT_REP_MASK = 240 const NDR_LITTLE_ENDIAN = 16 const NDR_LOCAL_DATA_REPRESENTATION = 16 const NDR_LOCAL_ENDIAN = 16 type NDR_NOTIFY2_ROUTINE = TNDR_NOTIFY2_ROUTINE type NDR_NOTIFY_ROUTINE = TNDR_NOTIFY_ROUTINE type NDR_RUNDOWN = TNDR_RUNDOWN type NDR_SCONTEXT = TNDR_SCONTEXT const NDR_SHAREABLE = 0 type NDR_USER_MARSHAL_INFO = TNDR_USER_MARSHAL_INFO type NDR_USER_MARSHAL_INFO_LEVEL1 = TNDR_USER_MARSHAL_INFO_LEVEL1 const NDR_VAX_FLOAT = 256 type NEARPROC = TNEARPROC type NETCONNECTINFOSTRUCT = TNETCONNECTINFOSTRUCT type NETINFOSTRUCT = TNETINFOSTRUCT const NETINFO_DISKRED = 4 const NETINFO_DLL16 = 1 const NETINFO_PRINTERRED = 8 const NETPROPERTY_PERSISTENT = 1 type NETRESOURCE = TNETRESOURCE type NETRESOURCEA = TNETRESOURCEA type NETRESOURCEW = TNETRESOURCEW const NETSCAPE_SIGN_CA_CERT_TYPE = 1 const NETSCAPE_SIGN_CERT_TYPE = 16 const NETSCAPE_SMIME_CA_CERT_TYPE = 2 const NETSCAPE_SMIME_CERT_TYPE = 32 const NETSCAPE_SSL_CA_CERT_TYPE = 4 const NETSCAPE_SSL_CLIENT_AUTH_CERT_TYPE = 128 const NETSCAPE_SSL_SERVER_AUTH_CERT_TYPE = 64 const NEWFILEOPENORD = 1547 const NEWFILEOPENV2ORD = 1552 const NEWFRAME = 1 type NEWTEXTMETRIC = TNEWTEXTMETRIC type NEWTEXTMETRICA = TNEWTEXTMETRICA type NEWTEXTMETRICEX = TNEWTEXTMETRICEX type NEWTEXTMETRICEXA = TNEWTEXTMETRICEXA type NEWTEXTMETRICEXW = TNEWTEXTMETRICEXW type NEWTEXTMETRICW = TNEWTEXTMETRICW const NEWTRANSPARENT = 3 const NEXTBAND = 3 const NFR_ANSI = 1 const NFR_UNICODE = 2 const NF_QUERY = 3 const NF_REQUERY = 4 const NID_EXTERNAL_PEN = 8 const NID_EXTERNAL_TOUCH = 2 const NID_INTEGRATED_PEN = 4 const NID_INTEGRATED_TOUCH = 1 const NID_MULTI_INPUT = 64 const NID_READY = 128 const NIF_GUID = 32 const NIF_ICON = 2 const NIF_INFO = 16 const NIF_MESSAGE = 1 const NIF_REALTIME = 64 const NIF_SHOWTIP = 128 const NIF_STATE = 8 const NIF_TIP = 4 const NIIF_ERROR = 3 const NIIF_ICON_MASK = 15 const NIIF_INFO = 1 const NIIF_LARGE_ICON = 32 const NIIF_NONE = 0 const NIIF_NOSOUND = 16 const NIIF_RESPECT_QUIET_TIME = 128 const NIIF_USER = 4 const NIIF_WARNING = 2 const NIM_ADD = 0 const NIM_DELETE = 2 const NIM_MODIFY = 1 const NIM_SETFOCUS = 3 const NIM_SETVERSION = 4 const NINF_KEY = 1 const NIN_BALLOONHIDE = 1027 const NIN_BALLOONSHOW = 1026 const NIN_BALLOONTIMEOUT = 1028 const NIN_BALLOONUSERCLICK = 1029 const NIN_KEYSELECT = 1025 const NIN_POPUPCLOSE = 1031 const NIN_POPUPOPEN = 1030 const NIN_SELECT = 1024 const NIS_HIDDEN = 1 const NIS_SHAREDICON = 2 const NI_CHANGECANDIDATELIST = 19 const NI_CLOSECANDIDATE = 17 const NI_COMPOSITIONSTR = 21 const NI_FINALIZECONVERSIONRESULT = 20 const NI_IMEMENUSELECTED = 24 const NI_OPENCANDIDATE = 16 const NI_SELECTCANDIDATESTR = 18 const NI_SETCANDIDATE_PAGESIZE = 23 const NI_SETCANDIDATE_PAGESTART = 22 type NLSVERSIONINFO = TNLSVERSIONINFO type NLSVERSIONINFOEX = TNLSVERSIONINFOEX const NLS_ALPHANUMERIC = 0 const NLS_DBCSCHAR = 65536 type NLS_FUNCTION = TNLS_FUNCTION const NLS_HIRAGANA = 262144 const NLS_IME_CONVERSION = 8388608 const NLS_IME_DISABLE = 536870912 const NLS_KATAKANA = 131072 const NLS_ROMAN = 4194304 const NLS_VALID_LOCALE_MASK = 1048575 type NMHDR = TNMHDR const NMPWAIT_NOWAIT = 1 const NMPWAIT_USE_DEFAULT_WAIT = 0 const NMPWAIT_WAIT_FOREVER = 4294967295 const NOERROR = 0 const NONANTIALIASED_QUALITY = 3 type NONCLIENTMETRICS = TNONCLIENTMETRICS type NONCLIENTMETRICSA = TNONCLIENTMETRICSA type NONCLIENTMETRICSW = TNONCLIENTMETRICSW const NONZEROLHND = 2 const NONZEROLPTR = 0 type NON_PAGED_DEBUG_INFO = TNON_PAGED_DEBUG_INFO const NON_PAGED_DEBUG_SIGNATURE = 18766 const NOPARITY = 0 const NORETRY = 16384 const NORMAL_PRINT = 0 const NORMAL_PRIORITY_CLASS = 32 type NORM_FORM = TNORM_FORM const NORM_IGNORECASE = 1 const NORM_IGNOREKANATYPE = 65536 const NORM_IGNORENONSPACE = 2 const NORM_IGNORESYMBOLS = 4 const NORM_IGNOREWIDTH = 131072 const NORM_LINGUISTIC_CASING = 134217728 type NOTIFICATION_MASK = TNOTIFICATION_MASK type NOTIFYICONDATA = TNOTIFYICONDATA type NOTIFYICONDATAA = TNOTIFYICONDATAA type NOTIFYICONDATAW = TNOTIFYICONDATAW type NOTIFYICONIDENTIFIER = TNOTIFYICONIDENTIFIER const NOTIFYICON_VERSION = 3 const NOTIFYICON_VERSION_4 = 4 type NOTIFY_USER_POWER_SETTING = TNOTIFY_USER_POWER_SETTING const NO_ADDRESS = 11004 const NO_DATA = 11004 const NO_ERROR = 0 const NO_PRIORITY = 0 const NO_PROPAGATE_INHERIT_ACE = 4 const NO_RECOVERY = 11003 const NO_SRBTYPE_ADAPTER_DESCRIPTOR_SIZE = 0 type NPABC = TNPABC type NPABCFLOAT = TNPABCFLOAT type NPAUXCAPS = TNPAUXCAPS type NPAUXCAPS2 = TNPAUXCAPS2 type NPAUXCAPS2A = TNPAUXCAPS2A type NPAUXCAPS2W = TNPAUXCAPS2W type NPAUXCAPSA = TNPAUXCAPSA type NPAUXCAPSW = TNPAUXCAPSW type NPBITMAP = TNPBITMAP type NPCANDIDATEFORM = TNPCANDIDATEFORM type NPCANDIDATELIST = TNPCANDIDATELIST type NPCHARSETINFO = TNPCHARSETINFO type NPCOMPOSITIONFORM = TNPCOMPOSITIONFORM type NPCWPRETSTRUCT = TNPCWPRETSTRUCT type NPCWPSTRUCT = TNPCWPSTRUCT type NPDEBUGHOOKINFO = TNPDEBUGHOOKINFO type NPDEVMODE = TNPDEVMODE type NPDEVMODEA = TNPDEVMODEA type NPDEVMODEW = TNPDEVMODEW type NPDRVCONFIGINFO = TNPDRVCONFIGINFO type NPDRVCONFIGINFOEX = TNPDRVCONFIGINFOEX type NPEVENTMSG = TNPEVENTMSG type NPEVENTMSGMSG = TNPEVENTMSGMSG type NPEXTLOGFONT = TNPEXTLOGFONT type NPEXTLOGFONTA = TNPEXTLOGFONTA type NPEXTLOGFONTW = TNPEXTLOGFONTW type NPEXTLOGPEN = TNPEXTLOGPEN type NPEXTLOGPEN32 = TNPEXTLOGPEN32 type NPIMECHARPOSITION = TNPIMECHARPOSITION type NPIMEMENUITEMINFO = TNPIMEMENUITEMINFO type NPIMEMENUITEMINFOA = TNPIMEMENUITEMINFOA type NPIMEMENUITEMINFOW = TNPIMEMENUITEMINFOW type NPJOYCAPS = TNPJOYCAPS type NPJOYCAPS2 = TNPJOYCAPS2 type NPJOYCAPS2A = TNPJOYCAPS2A type NPJOYCAPS2W = TNPJOYCAPS2W type NPJOYCAPSA = TNPJOYCAPSA type NPJOYCAPSW = TNPJOYCAPSW type NPJOYINFO = TNPJOYINFO type NPJOYINFOEX = TNPJOYINFOEX type NPLOGBRUSH = TNPLOGBRUSH type NPLOGBRUSH32 = TNPLOGBRUSH32 type NPLOGFONT = TNPLOGFONT type NPLOGFONTA = TNPLOGFONTA type NPLOGFONTW = TNPLOGFONTW type NPLOGPALETTE = TNPLOGPALETTE type NPLOGPEN = TNPLOGPEN type NPMIDIHDR = TNPMIDIHDR type NPMIDIINCAPS = TNPMIDIINCAPS type NPMIDIINCAPS2 = TNPMIDIINCAPS2 type NPMIDIINCAPS2A = TNPMIDIINCAPS2A type NPMIDIINCAPS2W = TNPMIDIINCAPS2W type NPMIDIINCAPSA = TNPMIDIINCAPSA type NPMIDIINCAPSW = TNPMIDIINCAPSW type NPMIDIOUTCAPS = TNPMIDIOUTCAPS type NPMIDIOUTCAPS2 = TNPMIDIOUTCAPS2 type NPMIDIOUTCAPS2A = TNPMIDIOUTCAPS2A type NPMIDIOUTCAPS2W = TNPMIDIOUTCAPS2W type NPMIDIOUTCAPSA = TNPMIDIOUTCAPSA type NPMIDIOUTCAPSW = TNPMIDIOUTCAPSW type NPMMCKINFO = TNPMMCKINFO type NPMMIOINFO = TNPMMIOINFO type NPMMTIME = TNPMMTIME type NPMSG = TNPMSG type NPNEWTEXTMETRIC = TNPNEWTEXTMETRIC type NPNEWTEXTMETRICA = TNPNEWTEXTMETRICA type NPNEWTEXTMETRICW = TNPNEWTEXTMETRICW type NPOUTLINETEXTMETRIC = TNPOUTLINETEXTMETRIC type NPOUTLINETEXTMETRICA = TNPOUTLINETEXTMETRICA type NPOUTLINETEXTMETRICW = TNPOUTLINETEXTMETRICW type NPPAINTSTRUCT = TNPPAINTSTRUCT type NPPATTERN = TNPPATTERN type NPPCMWAVEFORMAT = TNPPCMWAVEFORMAT type NPPELARRAY = TNPPELARRAY type NPPOINT = TNPPOINT type NPPOLYTEXT = TNPPOLYTEXT type NPPOLYTEXTA = TNPPOLYTEXTA type NPPOLYTEXTW = TNPPOLYTEXTW type NPRECONVERTSTRING = TNPRECONVERTSTRING type NPRECT = TNPRECT type NPREGISTERWORD = TNPREGISTERWORD type NPREGISTERWORDA = TNPREGISTERWORDA type NPREGISTERWORDW = TNPREGISTERWORDW type NPRGBTRIPLE = TNPRGBTRIPLE type NPRGNDATA = TNPRGNDATA type NPSTR = TNPSTR type NPSTYLEBUF = TNPSTYLEBUF type NPSTYLEBUFA = TNPSTYLEBUFA type NPSTYLEBUFW = TNPSTYLEBUFW type NPTEXTMETRIC = TNPTEXTMETRIC type NPTEXTMETRICA = TNPTEXTMETRICA type NPTEXTMETRICW = TNPTEXTMETRICW type NPTIMECAPS = TNPTIMECAPS type NPWAVEFORMAT = TNPWAVEFORMAT type NPWAVEFORMATEX = TNPWAVEFORMATEX type NPWAVEHDR = TNPWAVEHDR type NPWAVEINCAPS = TNPWAVEINCAPS type NPWAVEINCAPS2 = TNPWAVEINCAPS2 type NPWAVEINCAPS2A = TNPWAVEINCAPS2A type NPWAVEINCAPS2W = TNPWAVEINCAPS2W type NPWAVEINCAPSA = TNPWAVEINCAPSA type NPWAVEINCAPSW = TNPWAVEINCAPSW type NPWAVEOUTCAPS = TNPWAVEOUTCAPS type NPWAVEOUTCAPS2 = TNPWAVEOUTCAPS2 type NPWAVEOUTCAPS2A = TNPWAVEOUTCAPS2A type NPWAVEOUTCAPS2W = TNPWAVEOUTCAPS2W type NPWAVEOUTCAPSA = TNPWAVEOUTCAPSA type NPWAVEOUTCAPSW = TNPWAVEOUTCAPSW type NPWNDCLASS = TNPWNDCLASS type NPWNDCLASSA = TNPWNDCLASSA type NPWNDCLASSEX = TNPWNDCLASSEX type NPWNDCLASSEXA = TNPWNDCLASSEXA type NPWNDCLASSEXW = TNPWNDCLASSEXW type NPWNDCLASSW = TNPWNDCLASSW const NRC_ACTSES = 15 const NRC_BADDR = 7 const NRC_BRIDGE = 35 const NRC_BUFLEN = 1 const NRC_CANCEL = 38 const NRC_CANOCCR = 36 const NRC_CMDCAN = 11 const NRC_CMDTMO = 5 const NRC_DUPENV = 48 const NRC_DUPNAME = 13 const NRC_ENVNOTDEF = 52 const NRC_GOODRET = 0 const NRC_IFBUSY = 33 const NRC_ILLCMD = 3 const NRC_ILLNN = 19 const NRC_INCOMP = 6 const NRC_INUSE = 22 const NRC_INVADDRESS = 57 const NRC_INVDDID = 59 const NRC_LOCKFAIL = 60 const NRC_LOCTFUL = 17 const NRC_MAXAPPS = 54 const NRC_NAMCONF = 25 const NRC_NAMERR = 23 const NRC_NAMTFUL = 14 const NRC_NOCALL = 20 const NRC_NORES = 9 const NRC_NORESOURCES = 56 const NRC_NOSAPS = 55 const NRC_NOWILD = 21 const NRC_OPENERR = 63 const NRC_OSRESNOTAV = 53 const NRC_PENDING = 255 const NRC_REMTFUL = 18 const NRC_SABORT = 24 const NRC_SCLOSED = 10 const NRC_SNUMOUT = 8 const NRC_SYSTEM = 64 const NRC_TOOMANY = 34 const NT351_INTERFACE_SIZE = 64 const NTDDI_LONGHORN = 100663296 const NTDDI_VERSION = 167772160 const NTDDI_VISTA = 100663296 const NTDDI_VISTASP1 = 100663552 const NTDDI_VISTASP2 = 100663808 const NTDDI_VISTASP3 = 100664064 const NTDDI_VISTASP4 = 100664320 const NTDDI_WIN10 = 167772160 const NTDDI_WIN10_19H1 = 167772167 const NTDDI_WIN10_CO = 167772171 const NTDDI_WIN10_FE = 167772170 const NTDDI_WIN10_MN = 167772169 const NTDDI_WIN10_RS1 = 167772162 const NTDDI_WIN10_RS2 = 167772163 const NTDDI_WIN10_RS3 = 167772164 const NTDDI_WIN10_RS4 = 167772165 const NTDDI_WIN10_RS5 = 167772166 const NTDDI_WIN10_TH2 = 167772161 const NTDDI_WIN10_VB = 167772168 const NTDDI_WIN2K = 83886080 const NTDDI_WIN2KSP1 = 83886336 const NTDDI_WIN2KSP2 = 83886592 const NTDDI_WIN2KSP3 = 83886848 const NTDDI_WIN2KSP4 = 83887104 const NTDDI_WIN6 = 100663296 const NTDDI_WIN6SP1 = 100663552 const NTDDI_WIN6SP2 = 100663808 const NTDDI_WIN6SP3 = 100664064 const NTDDI_WIN6SP4 = 100664320 const NTDDI_WIN7 = 100728832 const NTDDI_WIN8 = 100794368 const NTDDI_WINBLUE = 100859904 const NTDDI_WINTHRESHOLD = 167772160 const NTDDI_WINXP = 83951616 const NTDDI_WINXPSP1 = 83951872 const NTDDI_WINXPSP2 = 83952128 const NTDDI_WINXPSP3 = 83952384 const NTDDI_WINXPSP4 = 83952640 const NTDDI_WS03 = 84017152 const NTDDI_WS03SP1 = 84017408 const NTDDI_WS03SP2 = 84017664 const NTDDI_WS03SP3 = 84017920 const NTDDI_WS03SP4 = 84018176 const NTDDI_WS08 = 100663552 const NTDDI_WS08SP2 = 100663808 const NTDDI_WS08SP3 = 100664064 const NTDDI_WS08SP4 = 100664320 const NTE_OP_OK = 0 type NTFS_EXTENDED_VOLUME_DATA = TNTFS_EXTENDED_VOLUME_DATA type NTFS_FILE_RECORD_INPUT_BUFFER = TNTFS_FILE_RECORD_INPUT_BUFFER type NTFS_FILE_RECORD_OUTPUT_BUFFER = TNTFS_FILE_RECORD_OUTPUT_BUFFER type NTFS_STATISTICS = TNTFS_STATISTICS type NTFS_VOLUME_DATA_BUFFER = TNTFS_VOLUME_DATA_BUFFER const NTM_BOLD = 32 const NTM_DSIG = 2097152 const NTM_ITALIC = 1 const NTM_MULTIPLEMASTER = 524288 const NTM_NONNEGATIVE_AC = 65536 const NTM_PS_OPENTYPE = 131072 const NTM_REGULAR = 64 const NTM_TT_OPENTYPE = 262144 const NTM_TYPE1 = 1048576 type NTSTATUS = TNTSTATUS const NTSYSAPI = "DECLSPEC_IMPORT" const NTSYSCALLAPI = "DECLSPEC_IMPORT" type NT_TIB = TNT_TIB type NT_TIB32 = TNT_TIB32 type NT_TIB64 = TNT_TIB64 const NULLREGION = 1 const NULL_BRUSH = 5 const NULL_PEN = 8 type NUMA_NODE_RELATIONSHIP = TNUMA_NODE_RELATIONSHIP const NUMA_NO_PREFERRED_NODE = -1 type NUMBERFMT = TNUMBERFMT type NUMBERFMTA = TNUMBERFMTA type NUMBERFMTW = TNUMBERFMTW const NUMBRUSHES = 16 const NUMCOLORS = 24 const NUMFONTS = 22 const NUMLOCK_ON = 32 const NUMMARKERS = 20 type NUMPARSE = TNUMPARSE const NUMPENS = 18 const NUMPRS_CURRENCY = 1024 const NUMPRS_DECIMAL = 256 const NUMPRS_EXPONENT = 2048 const NUMPRS_HEX_OCT = 64 const NUMPRS_INEXACT = 131072 const NUMPRS_LEADING_MINUS = 16 const NUMPRS_LEADING_PLUS = 4 const NUMPRS_LEADING_WHITE = 1 const NUMPRS_NEG = 65536 const NUMPRS_PARENS = 128 const NUMPRS_STD = 8191 const NUMPRS_THOUSANDS = 512 const NUMPRS_TRAILING_MINUS = 32 const NUMPRS_TRAILING_PLUS = 8 const NUMPRS_TRAILING_WHITE = 2 const NUMPRS_USE_ALL = 4096 const NUMRESERVED = 106 const NUM_DISCHARGE_POLICIES = 4 type NWPSTR = TNWPSTR const N_BTMASK = 15 const N_BTSHFT = 4 const N_TMASK = 48 const N_TMASK1 = 192 const N_TMASK2 = 240 const N_TSHIFT = 2 const NeedCurrentDirectoryForExePath = 0 const NotifyServiceStatusChange = 0 type OBJECTDESCRIPTOR = TOBJECTDESCRIPTOR type OBJECTID = TOBJECTID const OBJECT_INHERIT_ACE = 1 type OBJECT_TYPE_LIST = TOBJECT_TYPE_LIST const OBJ_BITMAP = 7 const OBJ_BRUSH = 2 const OBJ_COLORSPACE = 14 const OBJ_DC = 3 const OBJ_ENHMETADC = 12 const OBJ_ENHMETAFILE = 13 const OBJ_EXTPEN = 11 const OBJ_FONT = 6 const OBJ_MEMDC = 10 const OBJ_METADC = 4 const OBJ_METAFILE = 9 const OBJ_PAL = 5 const OBJ_PEN = 1 const OBJ_REGION = 8 const OBSOLETE_DISK_GET_WRITE_CACHE_STATE = 475356 const OBSOLETE_IOCTL_STORAGE_RESET_BUS = 3002368 const OBSOLETE_IOCTL_STORAGE_RESET_DEVICE = 3002372 const OCSP_BASIC_BY_KEY_RESPONDER_ID = 2 const OCSP_BASIC_BY_NAME_RESPONDER_ID = 1 const OCSP_BASIC_GOOD_CERT_STATUS = 0 type OCSP_BASIC_RESPONSE_ENTRY = TOCSP_BASIC_RESPONSE_ENTRY type OCSP_BASIC_RESPONSE_INFO = TOCSP_BASIC_RESPONSE_INFO const OCSP_BASIC_RESPONSE_V1 = 0 const OCSP_BASIC_REVOKED_CERT_STATUS = 1 type OCSP_BASIC_REVOKED_INFO = TOCSP_BASIC_REVOKED_INFO type OCSP_BASIC_SIGNED_RESPONSE_INFO = TOCSP_BASIC_SIGNED_RESPONSE_INFO const OCSP_BASIC_UNKNOWN_CERT_STATUS = 2 type OCSP_CERT_ID = TOCSP_CERT_ID const OCSP_INTERNAL_ERROR_RESPONSE = 2 const OCSP_MALFORMED_REQUEST_RESPONSE = 1 type OCSP_REQUEST_ENTRY = TOCSP_REQUEST_ENTRY type OCSP_REQUEST_INFO = TOCSP_REQUEST_INFO const OCSP_REQUEST_V1 = 0 type OCSP_RESPONSE_INFO = TOCSP_RESPONSE_INFO type OCSP_SIGNATURE_INFO = TOCSP_SIGNATURE_INFO type OCSP_SIGNED_REQUEST_INFO = TOCSP_SIGNED_REQUEST_INFO const OCSP_SIG_REQUIRED_RESPONSE = 5 const OCSP_SUCCESSFUL_RESPONSE = 0 const OCSP_TRY_LATER_RESPONSE = 3 const OCSP_UNAUTHORIZED_RESPONSE = 6 const ODA_DRAWENTIRE = 1 const ODA_FOCUS = 4 const ODA_SELECT = 2 const ODDPARITY = 1 const ODS_CHECKED = 8 const ODS_COMBOBOXEDIT = 4096 const ODS_DEFAULT = 32 const ODS_DISABLED = 4 const ODS_FOCUS = 16 const ODS_GRAYED = 2 const ODS_HOTLIGHT = 64 const ODS_INACTIVE = 128 const ODS_NOACCEL = 256 const ODS_NOFOCUSRECT = 512 const ODS_SELECTED = 1 const ODT_BUTTON = 4 const ODT_COMBOBOX = 3 const ODT_LISTBOX = 2 const ODT_MENU = 1 const ODT_STATIC = 5 const OEM_CHARSET = 255 const OEM_FIXED_FONT = 10 type OFFER_PRIORITY = TOFFER_PRIORITY const OFFLINE_STATUS_INCOMPLETE = 4 const OFFLINE_STATUS_LOCAL = 1 const OFFLINE_STATUS_REMOTE = 2 type OFNOTIFY = TOFNOTIFY type OFNOTIFYA = TOFNOTIFYA type OFNOTIFYEX = TOFNOTIFYEX type OFNOTIFYEXA = TOFNOTIFYEXA type OFNOTIFYEXW = TOFNOTIFYEXW type OFNOTIFYW = TOFNOTIFYW const OFN_ALLOWMULTISELECT = 512 const OFN_CREATEPROMPT = 8192 const OFN_DONTADDTORECENT = 33554432 const OFN_ENABLEHOOK = 32 const OFN_ENABLEINCLUDENOTIFY = 4194304 const OFN_ENABLESIZING = 8388608 const OFN_ENABLETEMPLATE = 64 const OFN_ENABLETEMPLATEHANDLE = 128 const OFN_EXPLORER = 524288 const OFN_EXTENSIONDIFFERENT = 1024 const OFN_EX_NOPLACESBAR = 1 const OFN_FILEMUSTEXIST = 4096 const OFN_FORCESHOWHIDDEN = 268435456 const OFN_HIDEREADONLY = 4 const OFN_LONGNAMES = 2097152 const OFN_NOCHANGEDIR = 8 const OFN_NODEREFERENCELINKS = 1048576 const OFN_NOLONGNAMES = 262144 const OFN_NONETWORKBUTTON = 131072 const OFN_NOREADONLYRETURN = 32768 const OFN_NOTESTFILECREATE = 65536 const OFN_NOVALIDATE = 256 const OFN_OVERWRITEPROMPT = 2 const OFN_PATHMUSTEXIST = 2048 const OFN_READONLY = 1 const OFN_SHAREAWARE = 16384 const OFN_SHAREFALLTHROUGH = 2 const OFN_SHARENOWARN = 1 const OFN_SHAREWARN = 0 const OFN_SHOWHELP = 16 type OFSTRUCT = TOFSTRUCT const OFS_MAXPATHNAME = 128 const OF_CANCEL = 2048 const OF_CREATE = 4096 const OF_DELETE = 512 const OF_EXIST = 16384 const OF_PARSE = 256 const OF_PROMPT = 8192 const OF_READ = 0 const OF_READWRITE = 2 const OF_REOPEN = 32768 const OF_SHARE_COMPAT = 0 const OF_SHARE_DENY_NONE = 64 const OF_SHARE_DENY_READ = 48 const OF_SHARE_DENY_WRITE = 32 const OF_SHARE_EXCLUSIVE = 16 const OF_VERIFY = 1024 const OF_WRITE = 1 type OIBDG_FLAGS = TOIBDG_FLAGS const OInetCombineIUri = 0 const OInetCombineUrl = 0 const OInetCombineUrlEx = 0 const OInetCompareUrl = 0 const OInetGetSession = 0 const OInetParseUrl = 0 const OInetQueryInfo = 0 const OLDFONTENUMPROC = 0 type OLDFONTENUMPROCA = TOLDFONTENUMPROCA type OLDFONTENUMPROCW = TOLDFONTENUMPROCW const OLD_P_OVERLAY = 2 type OLECHAR = TOLECHAR type OLECLOSE = TOLECLOSE type OLECONTF = TOLECONTF const OLECREATE_LEAVERUNNING = 1 type OLEGETMONIKER = TOLEGETMONIKER type OLEINPLACEFRAMEINFO = TOLEINPLACEFRAMEINFO const OLEIVERB_DISCARDUNDOSTATE = -6 const OLEIVERB_HIDE = -3 const OLEIVERB_INPLACEACTIVATE = -5 const OLEIVERB_OPEN = -2 const OLEIVERB_PRIMARY = 0 const OLEIVERB_SHOW = -1 const OLEIVERB_UIACTIVATE = -4 type OLELINKBIND = TOLELINKBIND type OLEMENUGROUPWIDTHS = TOLEMENUGROUPWIDTHS type OLEMISC = TOLEMISC const OLEOBJ_E_FIRST = 2147746176 const OLEOBJ_E_LAST = 2147746191 const OLEOBJ_S_FIRST = 262528 const OLEOBJ_S_LAST = 262543 type OLERENDER = TOLERENDER type OLESTREAM = TOLESTREAM type OLESTREAMVTBL = TOLESTREAMVTBL type OLEUPDATE = TOLEUPDATE type OLEVERB = TOLEVERB type OLEVERBATTRIB = TOLEVERBATTRIB type OLEWHICHMK = TOLEWHICHMK const ONE5STOPBITS = 1 const ONESTOPBIT = 0 const OPAQUE = 2 const OPAQUEKEYBLOB = 9 type OPENCARDNAME = TOPENCARDNAME type OPENCARDNAMEA = TOPENCARDNAMEA const OPENCARDNAMEA_EX = 0 type OPENCARDNAMEW = TOPENCARDNAMEW const OPENCARDNAMEW_EX = 0 const OPENCARDNAME_A = 0 type OPENCARDNAME_EX = TOPENCARDNAME_EX type OPENCARDNAME_EXA = TOPENCARDNAME_EXA type OPENCARDNAME_EXW = TOPENCARDNAME_EXW const OPENCARDNAME_W = 0 type OPENCARD_SEARCH_CRITERIA = TOPENCARD_SEARCH_CRITERIA type OPENCARD_SEARCH_CRITERIAA = TOPENCARD_SEARCH_CRITERIAA type OPENCARD_SEARCH_CRITERIAW = TOPENCARD_SEARCH_CRITERIAW const OPENCHANNEL = 4110 type OPENFILENAME = TOPENFILENAME type OPENFILENAMEA = TOPENFILENAMEA type OPENFILENAMEW = TOPENFILENAMEW type OPENFILENAME_NT4 = TOPENFILENAME_NT4 type OPENFILENAME_NT4A = TOPENFILENAME_NT4A type OPENFILENAME_NT4W = TOPENFILENAME_NT4W const OPEN_ALWAYS = 4 const OPEN_EXISTING = 3 type OPEN_PRINTER_PROPS_INFO = TOPEN_PRINTER_PROPS_INFO type OPEN_PRINTER_PROPS_INFOA = TOPEN_PRINTER_PROPS_INFOA type OPEN_PRINTER_PROPS_INFOW = TOPEN_PRINTER_PROPS_INFOW type OPEN_VIRTUAL_DISK_FLAG = TOPEN_VIRTUAL_DISK_FLAG type OPEN_VIRTUAL_DISK_PARAMETERS = TOPEN_VIRTUAL_DISK_PARAMETERS type OPEN_VIRTUAL_DISK_VERSION = TOPEN_VIRTUAL_DISK_VERSION const OPERATION_API_VERSION = 1 const OPERATION_END_DISCARD = 1 type OPERATION_END_PARAMETERS = TOPERATION_END_PARAMETERS type OPERATION_ID = TOPERATION_ID type OPERATION_START_PARAMETERS = TOPERATION_START_PARAMETERS const OPERATION_START_TRACE_CURRENT_THREAD = 1 const OPLOCK_LEVEL_CACHE_HANDLE = 2 const OPLOCK_LEVEL_CACHE_READ = 1 const OPLOCK_LEVEL_CACHE_WRITE = 4 const ORD_LANGDRIVER = 1 type ORIENTATION_PREFERENCE = TORIENTATION_PREFERENCE const OR_INVALID_OID = 1911 const OR_INVALID_OXID = 1910 const OR_INVALID_SET = 1912 type OSVERSIONINFO = TOSVERSIONINFO type OSVERSIONINFOA = TOSVERSIONINFOA type OSVERSIONINFOEX = TOSVERSIONINFOEX type OSVERSIONINFOEXA = TOSVERSIONINFOEXA type OSVERSIONINFOEXW = TOSVERSIONINFOEXW type OSVERSIONINFOW = TOSVERSIONINFOW const OSVERSION_MASK = 4294901760 type OUTLINETEXTMETRIC = TOUTLINETEXTMETRIC type OUTLINETEXTMETRICA = TOUTLINETEXTMETRICA type OUTLINETEXTMETRICW = TOUTLINETEXTMETRICW const OUTPUT_DEBUG_STRING_EVENT = 8 type OUTPUT_DEBUG_STRING_INFO = TOUTPUT_DEBUG_STRING_INFO const OUT_CHARACTER_PRECIS = 2 const OUT_DEFAULT_PRECIS = 0 const OUT_DEVICE_PRECIS = 5 const OUT_OUTLINE_PRECIS = 8 const OUT_PS_ONLY_PRECIS = 10 const OUT_RASTER_PRECIS = 6 const OUT_SCREEN_OUTLINE_PRECIS = 9 const OUT_STRING_PRECIS = 1 const OUT_STROKE_PRECIS = 3 const OUT_TT_ONLY_PRECIS = 7 const OUT_TT_PRECIS = 4 type OVERLAPPED = TOVERLAPPED type OVERLAPPED_ENTRY = TOVERLAPPED_ENTRY const OVERWRITE_HIDDEN = 4 const OWNER_SECURITY_INFORMATION = 1 const ObjectCloseAuditAlarm = 0 const ObjectDeleteAuditAlarm = 0 const ObjectOpenAuditAlarm = 0 const ObjectPrivilegeAuditAlarm = 0 const OemToAnsi = 0 const OemToAnsiBuff = 0 const OemToChar = 0 const OemToCharBuff = 0 const OpenBackupEventLog = 0 const OpenDesktop = 0 const OpenEncryptedFileRaw = 0 const OpenEvent = 0 const OpenEventLog = 0 const OpenFileMapping = 0 const OpenJobObject = 0 const OpenMutex = 0 const OpenPrinter = 0 const OpenPrinter2 = 0 const OpenPrivateNamespace = 0 const OpenSCManager = 0 const OpenSemaphore = 0 const OpenService = 0 const OpenWaitableTimer = 0 const OpenWindowStation = 0 const OutputDebugStr = 0 const OutputDebugString = 0 type PABC = TPABC type PABCFLOAT = TPABCFLOAT type PACCESS_ALLOWED_ACE = TPACCESS_ALLOWED_ACE type PACCESS_ALLOWED_CALLBACK_ACE = TPACCESS_ALLOWED_CALLBACK_ACE type PACCESS_ALLOWED_CALLBACK_OBJECT_ACE = TPACCESS_ALLOWED_CALLBACK_OBJECT_ACE type PACCESS_ALLOWED_OBJECT_ACE = TPACCESS_ALLOWED_OBJECT_ACE type PACCESS_DENIED_ACE = TPACCESS_DENIED_ACE type PACCESS_DENIED_CALLBACK_ACE = TPACCESS_DENIED_CALLBACK_ACE type PACCESS_DENIED_CALLBACK_OBJECT_ACE = TPACCESS_DENIED_CALLBACK_OBJECT_ACE type PACCESS_DENIED_OBJECT_ACE = TPACCESS_DENIED_OBJECT_ACE type PACCESS_MASK = TPACCESS_MASK type PACCESS_REASONS = TPACCESS_REASONS type PACCESS_TOKEN = TPACCESS_TOKEN type PACE_HEADER = TPACE_HEADER type PACKEDEVENTINFO = TPACKEDEVENTINFO type PACL = TPACL type PACL_REVISION_INFORMATION = TPACL_REVISION_INFORMATION type PACL_SIZE_INFORMATION = TPACL_SIZE_INFORMATION type PACTCTX = TPACTCTX type PACTCTXA = TPACTCTXA type PACTCTXW = TPACTCTXW type PACTCTX_SECTION_KEYED_DATA = TPACTCTX_SECTION_KEYED_DATA type PACTCTX_SECTION_KEYED_DATA_2600 = TPACTCTX_SECTION_KEYED_DATA_2600 type PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = TPACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA type PACTION_HEADER = TPACTION_HEADER type PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = TPACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION type PACTIVATION_CONTEXT_BASIC_INFORMATION = TPACTIVATION_CONTEXT_BASIC_INFORMATION type PACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = TPACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION type PACTIVATION_CONTEXT_DETAILED_INFORMATION = TPACTIVATION_CONTEXT_DETAILED_INFORMATION type PACTIVATION_CONTEXT_QUERY_INDEX = TPACTIVATION_CONTEXT_QUERY_INDEX type PACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = TPACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION type PADAPTER_STATUS = TPADAPTER_STATUS type PADDJOB_INFO_1 = TPADDJOB_INFO_1 type PADDJOB_INFO_1A = TPADDJOB_INFO_1A type PADDJOB_INFO_1W = TPADDJOB_INFO_1W type PADMINISTRATOR_POWER_POLICY = TPADMINISTRATOR_POWER_POLICY type PAGESETUPDLG = TPAGESETUPDLG type PAGESETUPDLGA = TPAGESETUPDLGA const PAGESETUPDLGORD = 1546 const PAGESETUPDLGORDMOTIF = 1550 type PAGESETUPDLGW = TPAGESETUPDLGW const PAGE_ENCLAVE_DECOMMIT = 268435456 const PAGE_ENCLAVE_THREAD_CONTROL = 2147483648 const PAGE_ENCLAVE_UNVALIDATED = 536870912 const PAGE_EXECUTE = 16 const PAGE_EXECUTE_READ = 32 const PAGE_EXECUTE_READWRITE = 64 const PAGE_EXECUTE_WRITECOPY = 128 const PAGE_GRAPHICS_COHERENT = 131072 const PAGE_GRAPHICS_EXECUTE = 16384 const PAGE_GRAPHICS_EXECUTE_READ = 32768 const PAGE_GRAPHICS_EXECUTE_READWRITE = 65536 const PAGE_GRAPHICS_NOACCESS = 2048 const PAGE_GRAPHICS_READONLY = 4096 const PAGE_GRAPHICS_READWRITE = 8192 const PAGE_GUARD = 256 const PAGE_NOACCESS = 1 const PAGE_NOCACHE = 512 const PAGE_READONLY = 2 const PAGE_READWRITE = 4 const PAGE_REVERT_TO_FILE_MAP = 2147483648 const PAGE_TARGETS_INVALID = 1073741824 const PAGE_TARGETS_NO_UPDATE = 1073741824 const PAGE_WRITECOMBINE = 1024 const PAGE_WRITECOPY = 8 type PAINTSTRUCT = TPAINTSTRUCT type PALETTEENTRY = TPALETTEENTRY type PALTTABINFO = TPALTTABINFO type PANOSE = TPANOSE const PANOSE_COUNT = 10 const PAN_ANY = 0 const PAN_ARMSTYLE_INDEX = 6 const PAN_BENT_ARMS_DOUBLE_SERIF = 11 const PAN_BENT_ARMS_HORZ = 7 const PAN_BENT_ARMS_SINGLE_SERIF = 10 const PAN_BENT_ARMS_VERT = 9 const PAN_BENT_ARMS_WEDGE = 8 const PAN_CONTRAST_HIGH = 8 const PAN_CONTRAST_INDEX = 4 const PAN_CONTRAST_LOW = 4 const PAN_CONTRAST_MEDIUM = 6 const PAN_CONTRAST_MEDIUM_HIGH = 7 const PAN_CONTRAST_MEDIUM_LOW = 5 const PAN_CONTRAST_NONE = 2 const PAN_CONTRAST_VERY_HIGH = 9 const PAN_CONTRAST_VERY_LOW = 3 const PAN_CULTURE_LATIN = 0 const PAN_FAMILYTYPE_INDEX = 0 const PAN_FAMILY_DECORATIVE = 4 const PAN_FAMILY_PICTORIAL = 5 const PAN_FAMILY_SCRIPT = 3 const PAN_FAMILY_TEXT_DISPLAY = 2 const PAN_LETTERFORM_INDEX = 7 const PAN_LETT_NORMAL_BOXED = 4 const PAN_LETT_NORMAL_CONTACT = 2 const PAN_LETT_NORMAL_FLATTENED = 5 const PAN_LETT_NORMAL_OFF_CENTER = 7 const PAN_LETT_NORMAL_ROUNDED = 6 const PAN_LETT_NORMAL_SQUARE = 8 const PAN_LETT_NORMAL_WEIGHTED = 3 const PAN_LETT_OBLIQUE_BOXED = 11 const PAN_LETT_OBLIQUE_CONTACT = 9 const PAN_LETT_OBLIQUE_FLATTENED = 12 const PAN_LETT_OBLIQUE_OFF_CENTER = 14 const PAN_LETT_OBLIQUE_ROUNDED = 13 const PAN_LETT_OBLIQUE_SQUARE = 15 const PAN_LETT_OBLIQUE_WEIGHTED = 10 const PAN_MIDLINE_CONSTANT_POINTED = 9 const PAN_MIDLINE_CONSTANT_SERIFED = 10 const PAN_MIDLINE_CONSTANT_TRIMMED = 8 const PAN_MIDLINE_HIGH_POINTED = 6 const PAN_MIDLINE_HIGH_SERIFED = 7 const PAN_MIDLINE_HIGH_TRIMMED = 5 const PAN_MIDLINE_INDEX = 8 const PAN_MIDLINE_LOW_POINTED = 12 const PAN_MIDLINE_LOW_SERIFED = 13 const PAN_MIDLINE_LOW_TRIMMED = 11 const PAN_MIDLINE_STANDARD_POINTED = 3 const PAN_MIDLINE_STANDARD_SERIFED = 4 const PAN_MIDLINE_STANDARD_TRIMMED = 2 const PAN_NO_FIT = 1 const PAN_PROPORTION_INDEX = 3 const PAN_PROP_CONDENSED = 6 const PAN_PROP_EVEN_WIDTH = 4 const PAN_PROP_EXPANDED = 5 const PAN_PROP_MODERN = 3 const PAN_PROP_MONOSPACED = 9 const PAN_PROP_OLD_STYLE = 2 const PAN_PROP_VERY_CONDENSED = 8 const PAN_PROP_VERY_EXPANDED = 7 const PAN_SERIFSTYLE_INDEX = 1 const PAN_SERIF_BONE = 8 const PAN_SERIF_COVE = 2 const PAN_SERIF_EXAGGERATED = 9 const PAN_SERIF_FLARED = 14 const PAN_SERIF_NORMAL_SANS = 11 const PAN_SERIF_OBTUSE_COVE = 3 const PAN_SERIF_OBTUSE_SANS = 12 const PAN_SERIF_OBTUSE_SQUARE_COVE = 5 const PAN_SERIF_PERP_SANS = 13 const PAN_SERIF_ROUNDED = 15 const PAN_SERIF_SQUARE = 6 const PAN_SERIF_SQUARE_COVE = 4 const PAN_SERIF_THIN = 7 const PAN_SERIF_TRIANGLE = 10 const PAN_STRAIGHT_ARMS_DOUBLE_SERIF = 6 const PAN_STRAIGHT_ARMS_HORZ = 2 const PAN_STRAIGHT_ARMS_SINGLE_SERIF = 5 const PAN_STRAIGHT_ARMS_VERT = 4 const PAN_STRAIGHT_ARMS_WEDGE = 3 const PAN_STROKEVARIATION_INDEX = 5 const PAN_STROKE_GRADUAL_DIAG = 2 const PAN_STROKE_GRADUAL_HORZ = 5 const PAN_STROKE_GRADUAL_TRAN = 3 const PAN_STROKE_GRADUAL_VERT = 4 const PAN_STROKE_INSTANT_VERT = 8 const PAN_STROKE_RAPID_HORZ = 7 const PAN_STROKE_RAPID_VERT = 6 const PAN_WEIGHT_BLACK = 10 const PAN_WEIGHT_BOLD = 8 const PAN_WEIGHT_BOOK = 5 const PAN_WEIGHT_DEMI = 7 const PAN_WEIGHT_HEAVY = 9 const PAN_WEIGHT_INDEX = 2 const PAN_WEIGHT_LIGHT = 3 const PAN_WEIGHT_MEDIUM = 6 const PAN_WEIGHT_NORD = 11 const PAN_WEIGHT_THIN = 4 const PAN_WEIGHT_VERY_LIGHT = 2 const PAN_XHEIGHT_CONSTANT_LARGE = 4 const PAN_XHEIGHT_CONSTANT_SMALL = 2 const PAN_XHEIGHT_CONSTANT_STD = 3 const PAN_XHEIGHT_DUCKING_LARGE = 7 const PAN_XHEIGHT_DUCKING_SMALL = 5 const PAN_XHEIGHT_DUCKING_STD = 6 const PAN_XHEIGHT_INDEX = 9 type PAPCFUNC = TPAPCFUNC type PAPPBARDATA = TPAPPBARDATA type PAPPLICATIONLAUNCH_SETTING_VALUE = TPAPPLICATIONLAUNCH_SETTING_VALUE type PAPPLY_SNAPSHOT_VHDSET_FLAG = TPAPPLY_SNAPSHOT_VHDSET_FLAG type PAPPLY_SNAPSHOT_VHDSET_PARAMETERS = TPAPPLY_SNAPSHOT_VHDSET_PARAMETERS type PAPP_MEMORY_INFORMATION = TPAPP_MEMORY_INFORMATION type PARAMDATA = TPARAMDATA type PARAMDESC = TPARAMDESC type PARAMDESCEX = TPARAMDESCEX const PARAMFLAG_FHASCUSTDATA = 64 const PARAMFLAG_FHASDEFAULT = 32 const PARAMFLAG_FIN = 1 const PARAMFLAG_FLCID = 4 const PARAMFLAG_FOPT = 16 const PARAMFLAG_FOUT = 2 const PARAMFLAG_FRETVAL = 8 const PARAMFLAG_NONE = 0 type PARAM_OFFSETTABLE = TPARAM_OFFSETTABLE type PARRAY_INFO = TPARRAY_INFO type PARSEACTION = TPARSEACTION const PARSE_DECODE = 0 const PARSE_ENCODE = 0 const PARTITION_ENTRY_UNUSED = 0 const PARTITION_EXTENDED = 5 const PARTITION_FAT32 = 11 const PARTITION_FAT32_XINT13 = 12 const PARTITION_FAT_12 = 1 const PARTITION_FAT_16 = 4 const PARTITION_HUGE = 6 const PARTITION_IFS = 7 type PARTITION_INFORMATION = TPARTITION_INFORMATION type PARTITION_INFORMATION_EX = TPARTITION_INFORMATION_EX type PARTITION_INFORMATION_GPT = TPARTITION_INFORMATION_GPT type PARTITION_INFORMATION_MBR = TPARTITION_INFORMATION_MBR const PARTITION_LDM = 66 const PARTITION_NTFT = 128 const PARTITION_OS2BOOTMGR = 10 const PARTITION_PREP = 65 type PARTITION_STYLE = TPARTITION_STYLE const PARTITION_UNIX = 99 const PARTITION_XENIX_1 = 2 const PARTITION_XENIX_2 = 3 const PARTITION_XINT13 = 14 const PARTITION_XINT13_EXTENDED = 15 type PAR_STATE = TPAR_STATE const PASSEMBLY_DLL_REDIRECTION_DETAILED_INFORMATION = 0 type PASSEMBLY_FILE_DETAILED_INFORMATION = TPASSEMBLY_FILE_DETAILED_INFORMATION const PASSTHROUGH = 19 type PATCHARRAY = TPATCHARRAY type PATHNAME_BUFFER = TPATHNAME_BUFFER const PATH_MAX = 260 type PATTACH_VIRTUAL_DISK_PARAMETERS = TPATTACH_VIRTUAL_DISK_PARAMETERS type PATTERN = TPATTERN type PAUDIT_EVENT_TYPE = TPAUDIT_EVENT_TYPE type PAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA = TPAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA type PAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS = TPAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS type PAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA = TPAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA type PAUXCAPS = TPAUXCAPS type PAUXCAPS2 = TPAUXCAPS2 type PAUXCAPS2A = TPAUXCAPS2A type PAUXCAPS2W = TPAUXCAPS2W type PAUXCAPSA = TPAUXCAPSA type PAUXCAPSW = TPAUXCAPSW type PAXESLIST = TPAXESLIST type PAXESLISTA = TPAXESLISTA type PAXESLISTW = TPAXESLISTW type PAXISINFO = TPAXISINFO type PAXISINFOA = TPAXISINFOA type PAXISINFOW = TPAXISINFOW const PA_ACTIVATE = 1 const PA_NOACTIVATE = 3 type PBAD_MEMORY_CALLBACK_ROUTINE = TPBAD_MEMORY_CALLBACK_ROUTINE type PBAD_TRACK_NUMBER = TPBAD_TRACK_NUMBER type PBATTERY_REPORTING_SCALE = TPBATTERY_REPORTING_SCALE type PBCRYPT_AUTHENTICATED_CIPHER_MODE_INFO = TPBCRYPT_AUTHENTICATED_CIPHER_MODE_INFO type PBCRYPT_DH_KEY_BLOB = TPBCRYPT_DH_KEY_BLOB type PBCRYPT_DSA_KEY_BLOB = TPBCRYPT_DSA_KEY_BLOB type PBCRYPT_DSA_KEY_BLOB_V2 = TPBCRYPT_DSA_KEY_BLOB_V2 type PBCRYPT_ECCKEY_BLOB = TPBCRYPT_ECCKEY_BLOB type PBCRYPT_INTERFACE_VERSION = TPBCRYPT_INTERFACE_VERSION type PBCRYPT_KEY_DATA_BLOB_HEADER = TPBCRYPT_KEY_DATA_BLOB_HEADER type PBCryptBuffer = TPBCryptBuffer type PBCryptBufferDesc = TPBCryptBufferDesc type PBIDI_DATA = TPBIDI_DATA type PBIDI_REQUEST_CONTAINER = TPBIDI_REQUEST_CONTAINER type PBIDI_REQUEST_DATA = TPBIDI_REQUEST_DATA type PBIDI_RESPONSE_CONTAINER = TPBIDI_RESPONSE_CONTAINER type PBIDI_RESPONSE_DATA = TPBIDI_RESPONSE_DATA type PBINARY_CONTAINER = TPBINARY_CONTAINER type PBIN_COUNT = TPBIN_COUNT type PBIN_RANGE = TPBIN_RANGE type PBIN_RESULTS = TPBIN_RESULTS type PBITMAP = TPBITMAP type PBITMAPCOREHEADER = TPBITMAPCOREHEADER type PBITMAPCOREINFO = TPBITMAPCOREINFO type PBITMAPFILEHEADER = TPBITMAPFILEHEADER type PBITMAPINFO = TPBITMAPINFO type PBITMAPINFOHEADER = TPBITMAPINFOHEADER type PBITMAPV4HEADER = TPBITMAPV4HEADER type PBITMAPV5HEADER = TPBITMAPV5HEADER type PBLENDFUNCTION = TPBLENDFUNCTION type PBOOL = TPBOOL type PBOOLEAN = TPBOOLEAN type PBOOT_AREA_INFO = TPBOOT_AREA_INFO type PBSMINFO = TPBSMINFO const PBTF_APMRESUMEFROMFAILURE = 1 const PBT_APMBATTERYLOW = 9 const PBT_APMOEMEVENT = 11 const PBT_APMPOWERSTATUSCHANGE = 10 const PBT_APMQUERYSTANDBY = 1 const PBT_APMQUERYSTANDBYFAILED = 3 const PBT_APMQUERYSUSPEND = 0 const PBT_APMQUERYSUSPENDFAILED = 2 const PBT_APMRESUMEAUTOMATIC = 18 const PBT_APMRESUMECRITICAL = 6 const PBT_APMRESUMESTANDBY = 8 const PBT_APMRESUMESUSPEND = 7 const PBT_APMSTANDBY = 5 const PBT_APMSUSPEND = 4 const PBT_POWERSETTINGCHANGE = 32787 type PBULK_SECURITY_TEST_DATA = TPBULK_SECURITY_TEST_DATA type PBYTE = TPBYTE type PBY_HANDLE_FILE_INFORMATION = TPBY_HANDLE_FILE_INFORMATION type PCACHE_DESCRIPTOR = TPCACHE_DESCRIPTOR type PCACHE_RELATIONSHIP = TPCACHE_RELATIONSHIP type PCACTCTX = TPCACTCTX type PCACTCTXA = TPCACTCTXA type PCACTCTXW = TPCACTCTXW type PCACTCTX_SECTION_KEYED_DATA = TPCACTCTX_SECTION_KEYED_DATA type PCACTCTX_SECTION_KEYED_DATA_2600 = TPCACTCTX_SECTION_KEYED_DATA_2600 type PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = TPCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA type PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = TPCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION type PCACTIVATION_CONTEXT_BASIC_INFORMATION = TPCACTIVATION_CONTEXT_BASIC_INFORMATION type PCACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = TPCACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION type PCACTIVATION_CONTEXT_DETAILED_INFORMATION = TPCACTIVATION_CONTEXT_DETAILED_INFORMATION type PCACTIVATION_CONTEXT_QUERY_INDEX = TPCACTIVATION_CONTEXT_QUERY_INDEX type PCACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = TPCACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION type PCANDIDATEFORM = TPCANDIDATEFORM type PCANDIDATELIST = TPCANDIDATELIST const PCASSEMBLY_DLL_REDIRECTION_DETAILED_INFORMATION = 0 type PCASSEMBLY_FILE_DETAILED_INFORMATION = TPCASSEMBLY_FILE_DETAILED_INFORMATION type PCCERT_CHAIN_CONTEXT = TPCCERT_CHAIN_CONTEXT type PCCERT_CHAIN_ELEMENT = TPCCERT_CHAIN_ELEMENT type PCCERT_CONTEXT = TPCCERT_CONTEXT type PCCERT_CRL_CONTEXT_PAIR = TPCCERT_CRL_CONTEXT_PAIR type PCCERT_ENHKEY_USAGE = TPCCERT_ENHKEY_USAGE type PCCERT_EXTENSION = TPCCERT_EXTENSION type PCCERT_SELECT_CHAIN_PARA = TPCCERT_SELECT_CHAIN_PARA type PCCERT_SELECT_CRITERIA = TPCCERT_SELECT_CRITERIA type PCCERT_SERVER_OCSP_RESPONSE_CONTEXT = TPCCERT_SERVER_OCSP_RESPONSE_CONTEXT type PCCERT_SIMPLE_CHAIN = TPCCERT_SIMPLE_CHAIN type PCCERT_STORE_PROV_FIND_INFO = TPCCERT_STORE_PROV_FIND_INFO type PCCERT_STRONG_SIGN_PARA = TPCCERT_STRONG_SIGN_PARA type PCCH = TPCCH type PCCOMPATIBILITY_CONTEXT_ELEMENT = TPCCOMPATIBILITY_CONTEXT_ELEMENT type PCCRL_CONTEXT = TPCCRL_CONTEXT type PCCRYPT_OID_INFO = TPCCRYPT_OID_INFO type PCCTL_CONTEXT = TPCCTL_CONTEXT type PCCTL_USAGE = TPCCTL_USAGE type PCERT_ACCESS_DESCRIPTION = TPCERT_ACCESS_DESCRIPTION type PCERT_ALT_NAME_ENTRY = TPCERT_ALT_NAME_ENTRY type PCERT_ALT_NAME_INFO = TPCERT_ALT_NAME_INFO type PCERT_AUTHORITY_INFO_ACCESS = TPCERT_AUTHORITY_INFO_ACCESS type PCERT_AUTHORITY_KEY_ID2_INFO = TPCERT_AUTHORITY_KEY_ID2_INFO type PCERT_AUTHORITY_KEY_ID_INFO = TPCERT_AUTHORITY_KEY_ID_INFO type PCERT_BASIC_CONSTRAINTS2_INFO = TPCERT_BASIC_CONSTRAINTS2_INFO type PCERT_BASIC_CONSTRAINTS_INFO = TPCERT_BASIC_CONSTRAINTS_INFO type PCERT_BIOMETRIC_DATA = TPCERT_BIOMETRIC_DATA type PCERT_BIOMETRIC_EXT_INFO = TPCERT_BIOMETRIC_EXT_INFO type PCERT_BLOB = TPCERT_BLOB type PCERT_CHAIN = TPCERT_CHAIN type PCERT_CHAIN_CONTEXT = TPCERT_CHAIN_CONTEXT type PCERT_CHAIN_ELEMENT = TPCERT_CHAIN_ELEMENT type PCERT_CHAIN_ENGINE_CONFIG = TPCERT_CHAIN_ENGINE_CONFIG type PCERT_CHAIN_FIND_BY_ISSUER_PARA = TPCERT_CHAIN_FIND_BY_ISSUER_PARA type PCERT_CHAIN_FIND_ISSUER_PARA = TPCERT_CHAIN_FIND_ISSUER_PARA type PCERT_CHAIN_PARA = TPCERT_CHAIN_PARA type PCERT_CHAIN_POLICY_PARA = TPCERT_CHAIN_POLICY_PARA type PCERT_CHAIN_POLICY_STATUS = TPCERT_CHAIN_POLICY_STATUS type PCERT_CONTEXT = TPCERT_CONTEXT type PCERT_CREATE_CONTEXT_PARA = TPCERT_CREATE_CONTEXT_PARA type PCERT_CRL_CONTEXT_PAIR = TPCERT_CRL_CONTEXT_PAIR type PCERT_DH_PARAMETERS = TPCERT_DH_PARAMETERS type PCERT_DSS_PARAMETERS = TPCERT_DSS_PARAMETERS type PCERT_ECC_SIGNATURE = TPCERT_ECC_SIGNATURE type PCERT_ENHKEY_USAGE = TPCERT_ENHKEY_USAGE type PCERT_EXTENSION = TPCERT_EXTENSION type PCERT_EXTENSIONS = TPCERT_EXTENSIONS type PCERT_GENERAL_SUBTREE = TPCERT_GENERAL_SUBTREE type PCERT_HASHED_URL = TPCERT_HASHED_URL type PCERT_ID = TPCERT_ID type PCERT_INFO = TPCERT_INFO type PCERT_ISSUER_SERIAL_NUMBER = TPCERT_ISSUER_SERIAL_NUMBER type PCERT_KEYGEN_REQUEST_INFO = TPCERT_KEYGEN_REQUEST_INFO type PCERT_KEY_ATTRIBUTES_INFO = TPCERT_KEY_ATTRIBUTES_INFO type PCERT_KEY_CONTEXT = TPCERT_KEY_CONTEXT type PCERT_KEY_USAGE_RESTRICTION_INFO = TPCERT_KEY_USAGE_RESTRICTION_INFO type PCERT_LDAP_STORE_OPENED_PARA = TPCERT_LDAP_STORE_OPENED_PARA type PCERT_LOGOTYPE_AUDIO = TPCERT_LOGOTYPE_AUDIO type PCERT_LOGOTYPE_AUDIO_INFO = TPCERT_LOGOTYPE_AUDIO_INFO type PCERT_LOGOTYPE_DATA = TPCERT_LOGOTYPE_DATA type PCERT_LOGOTYPE_DETAILS = TPCERT_LOGOTYPE_DETAILS type PCERT_LOGOTYPE_EXT_INFO = TPCERT_LOGOTYPE_EXT_INFO type PCERT_LOGOTYPE_IMAGE = TPCERT_LOGOTYPE_IMAGE type PCERT_LOGOTYPE_IMAGE_INFO = TPCERT_LOGOTYPE_IMAGE_INFO type PCERT_LOGOTYPE_INFO = TPCERT_LOGOTYPE_INFO type PCERT_LOGOTYPE_REFERENCE = TPCERT_LOGOTYPE_REFERENCE type PCERT_NAME_BLOB = TPCERT_NAME_BLOB type PCERT_NAME_CONSTRAINTS_INFO = TPCERT_NAME_CONSTRAINTS_INFO type PCERT_NAME_INFO = TPCERT_NAME_INFO type PCERT_NAME_VALUE = TPCERT_NAME_VALUE type PCERT_OR_CRL_BLOB = TPCERT_OR_CRL_BLOB type PCERT_OR_CRL_BUNDLE = TPCERT_OR_CRL_BUNDLE type PCERT_OTHER_LOGOTYPE_INFO = TPCERT_OTHER_LOGOTYPE_INFO type PCERT_OTHER_NAME = TPCERT_OTHER_NAME type PCERT_PAIR = TPCERT_PAIR type PCERT_PHYSICAL_STORE_INFO = TPCERT_PHYSICAL_STORE_INFO type PCERT_POLICIES_INFO = TPCERT_POLICIES_INFO type PCERT_POLICY95_QUALIFIER1 = TPCERT_POLICY95_QUALIFIER1 type PCERT_POLICY_CONSTRAINTS_INFO = TPCERT_POLICY_CONSTRAINTS_INFO type PCERT_POLICY_ID = TPCERT_POLICY_ID type PCERT_POLICY_INFO = TPCERT_POLICY_INFO type PCERT_POLICY_MAPPING = TPCERT_POLICY_MAPPING type PCERT_POLICY_MAPPINGS_INFO = TPCERT_POLICY_MAPPINGS_INFO type PCERT_POLICY_QUALIFIER_INFO = TPCERT_POLICY_QUALIFIER_INFO type PCERT_POLICY_QUALIFIER_NOTICE_REFERENCE = TPCERT_POLICY_QUALIFIER_NOTICE_REFERENCE type PCERT_POLICY_QUALIFIER_USER_NOTICE = TPCERT_POLICY_QUALIFIER_USER_NOTICE type PCERT_PRIVATE_KEY_VALIDITY = TPCERT_PRIVATE_KEY_VALIDITY type PCERT_PUBLIC_KEY_INFO = TPCERT_PUBLIC_KEY_INFO type PCERT_QC_STATEMENT = TPCERT_QC_STATEMENT type PCERT_QC_STATEMENTS_EXT_INFO = TPCERT_QC_STATEMENTS_EXT_INFO type PCERT_RDN = TPCERT_RDN type PCERT_RDN_ATTR = TPCERT_RDN_ATTR type PCERT_RDN_VALUE_BLOB = TPCERT_RDN_VALUE_BLOB type PCERT_REGISTRY_STORE_CLIENT_GPT_PARA = TPCERT_REGISTRY_STORE_CLIENT_GPT_PARA type PCERT_REGISTRY_STORE_ROAMING_PARA = TPCERT_REGISTRY_STORE_ROAMING_PARA type PCERT_REQUEST_INFO = TPCERT_REQUEST_INFO type PCERT_REVOCATION_CHAIN_PARA = TPCERT_REVOCATION_CHAIN_PARA type PCERT_REVOCATION_CRL_INFO = TPCERT_REVOCATION_CRL_INFO type PCERT_REVOCATION_INFO = TPCERT_REVOCATION_INFO type PCERT_REVOCATION_PARA = TPCERT_REVOCATION_PARA type PCERT_REVOCATION_STATUS = TPCERT_REVOCATION_STATUS type PCERT_SELECT_CHAIN_PARA = TPCERT_SELECT_CHAIN_PARA type PCERT_SELECT_CRITERIA = TPCERT_SELECT_CRITERIA type PCERT_SERVER_OCSP_RESPONSE_CONTEXT = TPCERT_SERVER_OCSP_RESPONSE_CONTEXT type PCERT_SERVER_OCSP_RESPONSE_OPEN_PARA = TPCERT_SERVER_OCSP_RESPONSE_OPEN_PARA type PCERT_SIGNED_CONTENT_INFO = TPCERT_SIGNED_CONTENT_INFO type PCERT_SIMPLE_CHAIN = TPCERT_SIMPLE_CHAIN type PCERT_STORE_PROV_FIND_INFO = TPCERT_STORE_PROV_FIND_INFO type PCERT_STORE_PROV_INFO = TPCERT_STORE_PROV_INFO type PCERT_STRONG_SIGN_PARA = TPCERT_STRONG_SIGN_PARA type PCERT_STRONG_SIGN_SERIALIZED_INFO = TPCERT_STRONG_SIGN_SERIALIZED_INFO type PCERT_SUBJECT_INFO_ACCESS = TPCERT_SUBJECT_INFO_ACCESS type PCERT_SUPPORTED_ALGORITHM_INFO = TPCERT_SUPPORTED_ALGORITHM_INFO type PCERT_SYSTEM_STORE_INFO = TPCERT_SYSTEM_STORE_INFO type PCERT_SYSTEM_STORE_RELOCATE_PARA = TPCERT_SYSTEM_STORE_RELOCATE_PARA type PCERT_TEMPLATE_EXT = TPCERT_TEMPLATE_EXT type PCERT_TPM_SPECIFICATION_INFO = TPCERT_TPM_SPECIFICATION_INFO type PCERT_TRUST_LIST_INFO = TPCERT_TRUST_LIST_INFO type PCERT_TRUST_STATUS = TPCERT_TRUST_STATUS type PCERT_USAGE_MATCH = TPCERT_USAGE_MATCH type PCERT_X942_DH_PARAMETERS = TPCERT_X942_DH_PARAMETERS type PCERT_X942_DH_VALIDATION_PARAMS = TPCERT_X942_DH_VALIDATION_PARAMS type PCFG_CALL_TARGET_INFO = TPCFG_CALL_TARGET_INFO type PCGESTUREINFO = TPCGESTUREINFO type PCH = TPCH type PCHANGEFILTERSTRUCT = TPCHANGEFILTERSTRUCT type PCHANGER_DEVICE_PROBLEM_TYPE = TPCHANGER_DEVICE_PROBLEM_TYPE type PCHANGER_ELEMENT = TPCHANGER_ELEMENT type PCHANGER_ELEMENT_LIST = TPCHANGER_ELEMENT_LIST type PCHANGER_ELEMENT_STATUS = TPCHANGER_ELEMENT_STATUS type PCHANGER_ELEMENT_STATUS_EX = TPCHANGER_ELEMENT_STATUS_EX type PCHANGER_EXCHANGE_MEDIUM = TPCHANGER_EXCHANGE_MEDIUM type PCHANGER_INITIALIZE_ELEMENT_STATUS = TPCHANGER_INITIALIZE_ELEMENT_STATUS type PCHANGER_MOVE_MEDIUM = TPCHANGER_MOVE_MEDIUM type PCHANGER_PRODUCT_DATA = TPCHANGER_PRODUCT_DATA type PCHANGER_READ_ELEMENT_STATUS = TPCHANGER_READ_ELEMENT_STATUS type PCHANGER_SEND_VOLUME_TAG_INFORMATION = TPCHANGER_SEND_VOLUME_TAG_INFORMATION type PCHANGER_SET_ACCESS = TPCHANGER_SET_ACCESS type PCHANGER_SET_POSITION = TPCHANGER_SET_POSITION type PCHAR = TPCHAR type PCHARSETINFO = TPCHARSETINFO type PCHAR_INFO = TPCHAR_INFO type PCIMAGE_DELAYLOAD_DESCRIPTOR = TPCIMAGE_DELAYLOAD_DESCRIPTOR type PCLAIMS_BLOB = TPCLAIMS_BLOB type PCLAIM_SECURITY_ATTRIBUTES_INFORMATION = TPCLAIM_SECURITY_ATTRIBUTES_INFORMATION type PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE = TPCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE type PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = TPCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE type PCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = TPCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 type PCLAIM_SECURITY_ATTRIBUTE_V1 = TPCLAIM_SECURITY_ATTRIBUTE_V1 type PCLASS_MEDIA_CHANGE_CONTEXT = TPCLASS_MEDIA_CHANGE_CONTEXT const PCLEANUI = 2214592512 type PCMC_ADD_ATTRIBUTES_INFO = TPCMC_ADD_ATTRIBUTES_INFO type PCMC_ADD_EXTENSIONS_INFO = TPCMC_ADD_EXTENSIONS_INFO type PCMC_DATA_INFO = TPCMC_DATA_INFO type PCMC_PEND_INFO = TPCMC_PEND_INFO type PCMC_RESPONSE_INFO = TPCMC_RESPONSE_INFO type PCMC_STATUS_INFO = TPCMC_STATUS_INFO type PCMC_TAGGED_ATTRIBUTE = TPCMC_TAGGED_ATTRIBUTE type PCMC_TAGGED_CERT_REQUEST = TPCMC_TAGGED_CERT_REQUEST type PCMC_TAGGED_CONTENT_INFO = TPCMC_TAGGED_CONTENT_INFO type PCMC_TAGGED_OTHER_MSG = TPCMC_TAGGED_OTHER_MSG type PCMC_TAGGED_REQUEST = TPCMC_TAGGED_REQUEST type PCMSG_ATTR = TPCMSG_ATTR type PCMSG_CMS_RECIPIENT_INFO = TPCMSG_CMS_RECIPIENT_INFO type PCMSG_CMS_SIGNER_INFO = TPCMSG_CMS_SIGNER_INFO type PCMSG_CNG_CONTENT_DECRYPT_INFO = TPCMSG_CNG_CONTENT_DECRYPT_INFO type PCMSG_CONTENT_ENCRYPT_INFO = TPCMSG_CONTENT_ENCRYPT_INFO type PCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA = TPCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA type PCMSG_CTRL_DECRYPT_PARA = TPCMSG_CTRL_DECRYPT_PARA type PCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA = TPCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA type PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA = TPCMSG_CTRL_KEY_AGREE_DECRYPT_PARA type PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA = TPCMSG_CTRL_KEY_TRANS_DECRYPT_PARA type PCMSG_CTRL_MAIL_LIST_DECRYPT_PARA = TPCMSG_CTRL_MAIL_LIST_DECRYPT_PARA type PCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA = TPCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA type PCMSG_ENCRYPTED_ENCODE_INFO = TPCMSG_ENCRYPTED_ENCODE_INFO type PCMSG_ENVELOPED_ENCODE_INFO = TPCMSG_ENVELOPED_ENCODE_INFO type PCMSG_HASHED_ENCODE_INFO = TPCMSG_HASHED_ENCODE_INFO type PCMSG_KEY_AGREE_ENCRYPT_INFO = TPCMSG_KEY_AGREE_ENCRYPT_INFO type PCMSG_KEY_AGREE_KEY_ENCRYPT_INFO = TPCMSG_KEY_AGREE_KEY_ENCRYPT_INFO type PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO = TPCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO type PCMSG_KEY_AGREE_RECIPIENT_INFO = TPCMSG_KEY_AGREE_RECIPIENT_INFO type PCMSG_KEY_TRANS_ENCRYPT_INFO = TPCMSG_KEY_TRANS_ENCRYPT_INFO type PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO = TPCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO type PCMSG_KEY_TRANS_RECIPIENT_INFO = TPCMSG_KEY_TRANS_RECIPIENT_INFO type PCMSG_MAIL_LIST_ENCRYPT_INFO = TPCMSG_MAIL_LIST_ENCRYPT_INFO type PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO = TPCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO type PCMSG_MAIL_LIST_RECIPIENT_INFO = TPCMSG_MAIL_LIST_RECIPIENT_INFO type PCMSG_RC2_AUX_INFO = TPCMSG_RC2_AUX_INFO type PCMSG_RC4_AUX_INFO = TPCMSG_RC4_AUX_INFO type PCMSG_RECIPIENT_ENCODE_INFO = TPCMSG_RECIPIENT_ENCODE_INFO type PCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO = TPCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO type PCMSG_RECIPIENT_ENCRYPTED_KEY_INFO = TPCMSG_RECIPIENT_ENCRYPTED_KEY_INFO type PCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO = TPCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO type PCMSG_SIGNED_ENCODE_INFO = TPCMSG_SIGNED_ENCODE_INFO type PCMSG_SIGNER_ENCODE_INFO = TPCMSG_SIGNER_ENCODE_INFO type PCMSG_SIGNER_INFO = TPCMSG_SIGNER_INFO type PCMSG_SP3_COMPATIBLE_AUX_INFO = TPCMSG_SP3_COMPATIBLE_AUX_INFO type PCMSG_STREAM_INFO = TPCMSG_STREAM_INFO type PCMS_DH_KEY_INFO = TPCMS_DH_KEY_INFO type PCMS_KEY_INFO = TPCMS_KEY_INFO type PCMWAVEFORMAT = TPCMWAVEFORMAT type PCM_POWER_DATA = TPCM_POWER_DATA type PCNZCH = TPCNZCH type PCNZTCH = TPCNZTCH type PCNZWCH = TPCNZWCH type PCOLORADJUSTMENT = TPCOLORADJUSTMENT type PCOMBOBOXINFO = TPCOMBOBOXINFO type PCOMPACT_VIRTUAL_DISK_PARAMETERS = TPCOMPACT_VIRTUAL_DISK_PARAMETERS type PCOMPAREITEMSTRUCT = TPCOMPAREITEMSTRUCT type PCOMPARTMENT_ID = TPCOMPARTMENT_ID type PCOMPATIBILITY_CONTEXT_ELEMENT = TPCOMPATIBILITY_CONTEXT_ELEMENT type PCOMPONENT_FILTER = TPCOMPONENT_FILTER type PCOMPOSITIONFORM = TPCOMPOSITIONFORM type PCONDITION_VARIABLE = TPCONDITION_VARIABLE type PCONSOLE_CURSOR_INFO = TPCONSOLE_CURSOR_INFO type PCONSOLE_FONT_INFO = TPCONSOLE_FONT_INFO type PCONSOLE_FONT_INFOEX = TPCONSOLE_FONT_INFOEX type PCONSOLE_HISTORY_INFO = TPCONSOLE_HISTORY_INFO type PCONSOLE_READCONSOLE_CONTROL = TPCONSOLE_READCONSOLE_CONTROL type PCONSOLE_SCREEN_BUFFER_INFO = TPCONSOLE_SCREEN_BUFFER_INFO type PCONSOLE_SCREEN_BUFFER_INFOEX = TPCONSOLE_SCREEN_BUFFER_INFOEX type PCONSOLE_SELECTION_INFO = TPCONSOLE_SELECTION_INFO type PCONTEXT = TPCONTEXT type PCONVCONTEXT = TPCONVCONTEXT type PCONVINFO = TPCONVINFO type PCOORD = TPCOORD type PCOPYDATASTRUCT = TPCOPYDATASTRUCT type PCOPYFILE2_PROGRESS_ROUTINE = TPCOPYFILE2_PROGRESS_ROUTINE type PCORE_PRINTER_DRIVER = TPCORE_PRINTER_DRIVER type PCORE_PRINTER_DRIVERA = TPCORE_PRINTER_DRIVERA type PCORE_PRINTER_DRIVERW = TPCORE_PRINTER_DRIVERW type PCPS_URLS = TPCPS_URLS type PCRAWINPUTDEVICE = TPCRAWINPUTDEVICE type PCREATEFILE2_EXTENDED_PARAMETERS = TPCREATEFILE2_EXTENDED_PARAMETERS type PCREATE_DISK = TPCREATE_DISK type PCREATE_DISK_GPT = TPCREATE_DISK_GPT type PCREATE_DISK_MBR = TPCREATE_DISK_MBR type PCREATE_USN_JOURNAL_DATA = TPCREATE_USN_JOURNAL_DATA type PCREATE_VIRTUAL_DISK_PARAMETERS = TPCREATE_VIRTUAL_DISK_PARAMETERS type PCREDIRECTION_DESCRIPTOR = TPCREDIRECTION_DESCRIPTOR type PCREDIRECTION_FUNCTION_DESCRIPTOR = TPCREDIRECTION_FUNCTION_DESCRIPTOR type PCRITICAL_SECTION = TPCRITICAL_SECTION type PCRITICAL_SECTION_DEBUG = TPCRITICAL_SECTION_DEBUG type PCRL_BLOB = TPCRL_BLOB type PCRL_CONTEXT = TPCRL_CONTEXT type PCRL_DIST_POINT = TPCRL_DIST_POINT type PCRL_DIST_POINTS_INFO = TPCRL_DIST_POINTS_INFO type PCRL_DIST_POINT_NAME = TPCRL_DIST_POINT_NAME type PCRL_ENTRY = TPCRL_ENTRY type PCRL_FIND_ISSUED_FOR_PARA = TPCRL_FIND_ISSUED_FOR_PARA type PCRL_INFO = TPCRL_INFO type PCRL_ISSUING_DIST_POINT = TPCRL_ISSUING_DIST_POINT type PCRL_REVOCATION_INFO = TPCRL_REVOCATION_INFO type PCRM_PROTOCOL_ID = TPCRM_PROTOCOL_ID type PCROSS_CERT_DIST_POINTS_INFO = TPCROSS_CERT_DIST_POINTS_INFO type PCRYPTNET_URL_CACHE_FLUSH_INFO = TPCRYPTNET_URL_CACHE_FLUSH_INFO type PCRYPTNET_URL_CACHE_PRE_FETCH_INFO = TPCRYPTNET_URL_CACHE_PRE_FETCH_INFO type PCRYPTNET_URL_CACHE_RESPONSE_INFO = TPCRYPTNET_URL_CACHE_RESPONSE_INFO type PCRYPTPROTECT_PROMPTSTRUCT = TPCRYPTPROTECT_PROMPTSTRUCT type PCRYPT_3DES_KEY_STATE = TPCRYPT_3DES_KEY_STATE type PCRYPT_AES_128_KEY_STATE = TPCRYPT_AES_128_KEY_STATE type PCRYPT_AES_256_KEY_STATE = TPCRYPT_AES_256_KEY_STATE type PCRYPT_ALGORITHM_IDENTIFIER = TPCRYPT_ALGORITHM_IDENTIFIER type PCRYPT_ASYNC_RETRIEVAL_COMPLETION = TPCRYPT_ASYNC_RETRIEVAL_COMPLETION type PCRYPT_ATTRIBUTE = TPCRYPT_ATTRIBUTE type PCRYPT_ATTRIBUTES = TPCRYPT_ATTRIBUTES type PCRYPT_ATTRIBUTE_TYPE_VALUE = TPCRYPT_ATTRIBUTE_TYPE_VALUE type PCRYPT_ATTR_BLOB = TPCRYPT_ATTR_BLOB type PCRYPT_BIT_BLOB = TPCRYPT_BIT_BLOB type PCRYPT_BLOB_ARRAY = TPCRYPT_BLOB_ARRAY type PCRYPT_CONTENT_INFO = TPCRYPT_CONTENT_INFO type PCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY = TPCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY type PCRYPT_CONTEXTS = TPCRYPT_CONTEXTS type PCRYPT_CONTEXT_CONFIG = TPCRYPT_CONTEXT_CONFIG type PCRYPT_CONTEXT_FUNCTIONS = TPCRYPT_CONTEXT_FUNCTIONS type PCRYPT_CONTEXT_FUNCTION_CONFIG = TPCRYPT_CONTEXT_FUNCTION_CONFIG type PCRYPT_CONTEXT_FUNCTION_PROVIDERS = TPCRYPT_CONTEXT_FUNCTION_PROVIDERS type PCRYPT_CREDENTIALS = TPCRYPT_CREDENTIALS type PCRYPT_CSP_PROVIDER = TPCRYPT_CSP_PROVIDER type PCRYPT_DATA_BLOB = TPCRYPT_DATA_BLOB type PCRYPT_DECODE_PARA = TPCRYPT_DECODE_PARA type PCRYPT_DECRYPT_MESSAGE_PARA = TPCRYPT_DECRYPT_MESSAGE_PARA type PCRYPT_DECRYPT_PRIVATE_KEY_FUNC = TPCRYPT_DECRYPT_PRIVATE_KEY_FUNC type PCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA = TPCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA type PCRYPT_DER_BLOB = TPCRYPT_DER_BLOB type PCRYPT_DES_KEY_STATE = TPCRYPT_DES_KEY_STATE type PCRYPT_DIGEST_BLOB = TPCRYPT_DIGEST_BLOB type PCRYPT_ECC_CMS_SHARED_INFO = TPCRYPT_ECC_CMS_SHARED_INFO type PCRYPT_ECC_PRIVATE_KEY_INFO = TPCRYPT_ECC_PRIVATE_KEY_INFO type PCRYPT_ENCODE_PARA = TPCRYPT_ENCODE_PARA type PCRYPT_ENCRYPTED_PRIVATE_KEY_INFO = TPCRYPT_ENCRYPTED_PRIVATE_KEY_INFO type PCRYPT_ENCRYPT_MESSAGE_PARA = TPCRYPT_ENCRYPT_MESSAGE_PARA type PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC = TPCRYPT_ENCRYPT_PRIVATE_KEY_FUNC type PCRYPT_ENROLLMENT_NAME_VALUE_PAIR = TPCRYPT_ENROLLMENT_NAME_VALUE_PAIR type PCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO = TPCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO type PCRYPT_HASH_BLOB = TPCRYPT_HASH_BLOB type PCRYPT_HASH_INFO = TPCRYPT_HASH_INFO type PCRYPT_HASH_MESSAGE_PARA = TPCRYPT_HASH_MESSAGE_PARA type PCRYPT_IMAGE_REF = TPCRYPT_IMAGE_REF type PCRYPT_IMAGE_REG = TPCRYPT_IMAGE_REG type PCRYPT_INTEGER_BLOB = TPCRYPT_INTEGER_BLOB type PCRYPT_INTERFACE_REG = TPCRYPT_INTERFACE_REG type PCRYPT_KEY_PROV_INFO = TPCRYPT_KEY_PROV_INFO type PCRYPT_KEY_PROV_PARAM = TPCRYPT_KEY_PROV_PARAM type PCRYPT_KEY_SIGN_MESSAGE_PARA = TPCRYPT_KEY_SIGN_MESSAGE_PARA type PCRYPT_KEY_VERIFY_MESSAGE_PARA = TPCRYPT_KEY_VERIFY_MESSAGE_PARA type PCRYPT_MASK_GEN_ALGORITHM = TPCRYPT_MASK_GEN_ALGORITHM type PCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE = TPCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE type PCRYPT_OBJID_BLOB = TPCRYPT_OBJID_BLOB type PCRYPT_OBJID_TABLE = TPCRYPT_OBJID_TABLE type PCRYPT_OID_FUNC_ENTRY = TPCRYPT_OID_FUNC_ENTRY type PCRYPT_OID_INFO = TPCRYPT_OID_INFO type PCRYPT_PASSWORD_CREDENTIALS = TPCRYPT_PASSWORD_CREDENTIALS type PCRYPT_PASSWORD_CREDENTIALSA = TPCRYPT_PASSWORD_CREDENTIALSA type PCRYPT_PASSWORD_CREDENTIALSW = TPCRYPT_PASSWORD_CREDENTIALSW type PCRYPT_PKCS8_EXPORT_PARAMS = TPCRYPT_PKCS8_EXPORT_PARAMS type PCRYPT_PKCS8_IMPORT_PARAMS = TPCRYPT_PKCS8_IMPORT_PARAMS type PCRYPT_PRIVATE_KEY_BLOB_AND_PARAMS = TPCRYPT_PRIVATE_KEY_BLOB_AND_PARAMS type PCRYPT_PRIVATE_KEY_INFO = TPCRYPT_PRIVATE_KEY_INFO type PCRYPT_PROPERTY_REF = TPCRYPT_PROPERTY_REF type PCRYPT_PROVIDERS = TPCRYPT_PROVIDERS type PCRYPT_PROVIDER_REF = TPCRYPT_PROVIDER_REF type PCRYPT_PROVIDER_REFS = TPCRYPT_PROVIDER_REFS type PCRYPT_PROVIDER_REG = TPCRYPT_PROVIDER_REG type PCRYPT_PSOURCE_ALGORITHM = TPCRYPT_PSOURCE_ALGORITHM type PCRYPT_RC2_CBC_PARAMETERS = TPCRYPT_RC2_CBC_PARAMETERS type PCRYPT_RC4_KEY_STATE = TPCRYPT_RC4_KEY_STATE type PCRYPT_RESOLVE_HCRYPTPROV_FUNC = TPCRYPT_RESOLVE_HCRYPTPROV_FUNC type PCRYPT_RETRIEVE_AUX_INFO = TPCRYPT_RETRIEVE_AUX_INFO type PCRYPT_RSAES_OAEP_PARAMETERS = TPCRYPT_RSAES_OAEP_PARAMETERS type PCRYPT_RSA_SSA_PSS_PARAMETERS = TPCRYPT_RSA_SSA_PSS_PARAMETERS type PCRYPT_SEQUENCE_OF_ANY = TPCRYPT_SEQUENCE_OF_ANY type PCRYPT_SIGN_MESSAGE_PARA = TPCRYPT_SIGN_MESSAGE_PARA type PCRYPT_SMART_CARD_ROOT_INFO = TPCRYPT_SMART_CARD_ROOT_INFO type PCRYPT_SMIME_CAPABILITIES = TPCRYPT_SMIME_CAPABILITIES type PCRYPT_SMIME_CAPABILITY = TPCRYPT_SMIME_CAPABILITY type PCRYPT_TIMESTAMP_ACCURACY = TPCRYPT_TIMESTAMP_ACCURACY type PCRYPT_TIMESTAMP_CONTEXT = TPCRYPT_TIMESTAMP_CONTEXT type PCRYPT_TIMESTAMP_INFO = TPCRYPT_TIMESTAMP_INFO type PCRYPT_TIMESTAMP_PARA = TPCRYPT_TIMESTAMP_PARA type PCRYPT_TIMESTAMP_REQUEST = TPCRYPT_TIMESTAMP_REQUEST type PCRYPT_TIMESTAMP_RESPONSE = TPCRYPT_TIMESTAMP_RESPONSE type PCRYPT_TIME_STAMP_REQUEST_INFO = TPCRYPT_TIME_STAMP_REQUEST_INFO type PCRYPT_UINT_BLOB = TPCRYPT_UINT_BLOB type PCRYPT_URL_ARRAY = TPCRYPT_URL_ARRAY type PCRYPT_URL_INFO = TPCRYPT_URL_INFO type PCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO = TPCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO type PCRYPT_VERIFY_MESSAGE_PARA = TPCRYPT_VERIFY_MESSAGE_PARA type PCRYPT_X942_OTHER_INFO = TPCRYPT_X942_OTHER_INFO type PCSTR = TPCSTR type PCSV_NAMESPACE_INFO = TPCSV_NAMESPACE_INFO type PCTCH = TPCTCH type PCTL_ANY_SUBJECT_INFO = TPCTL_ANY_SUBJECT_INFO type PCTL_CONTEXT = TPCTL_CONTEXT type PCTL_ENTRY = TPCTL_ENTRY type PCTL_FIND_SUBJECT_PARA = TPCTL_FIND_SUBJECT_PARA type PCTL_FIND_USAGE_PARA = TPCTL_FIND_USAGE_PARA type PCTL_INFO = TPCTL_INFO type PCTL_USAGE = TPCTL_USAGE type PCTL_USAGE_MATCH = TPCTL_USAGE_MATCH type PCTL_VERIFY_USAGE_PARA = TPCTL_VERIFY_USAGE_PARA type PCTL_VERIFY_USAGE_STATUS = TPCTL_VERIFY_USAGE_STATUS type PCTOUCHINPUT = TPCTOUCHINPUT type PCTSTR = TPCTSTR type PCUCSCHAR = TPCUCSCHAR type PCUCSSTR = TPCUCSSTR type PCUNZTCH = TPCUNZTCH type PCUNZWCH = TPCUNZWCH type PCURSORINFO = TPCURSORINFO type PCUTSTR = TPCUTSTR type PCUUCSCHAR = TPCUUCSCHAR type PCUUCSSTR = TPCUUCSSTR type PCUWCHAR = TPCUWCHAR type PCUWSTR = TPCUWSTR type PCUZZTSTR = TPCUZZTSTR type PCUZZWSTR = TPCUZZWSTR type PCWCH = TPCWCH type PCWCHAR = TPCWCHAR type PCWPRETSTRUCT = TPCWPRETSTRUCT type PCWPSTRUCT = TPCWPSTRUCT type PCWSTR = TPCWSTR type PCZPSTR = TPCZPSTR type PCZPWSTR = TPCZPWSTR type PCZZSTR = TPCZZSTR type PCZZTSTR = TPCZZTSTR type PCZZWSTR = TPCZZWSTR const PC_EXPLICIT = 2 const PC_INTERIORS = 128 const PC_NOCOLLAPSE = 4 const PC_NONE = 0 const PC_PATHS = 512 const PC_POLYGON = 1 const PC_POLYPOLYGON = 256 const PC_RECTANGLE = 2 const PC_RESERVED = 1 const PC_SCANLINE = 8 const PC_STYLED = 32 const PC_TRAPEZOID = 4 const PC_WIDE = 16 const PC_WIDESTYLED = 64 const PC_WINDPOLYGON = 4 type PDATATYPES_INFO_1 = TPDATATYPES_INFO_1 type PDATATYPES_INFO_1A = TPDATATYPES_INFO_1A type PDATATYPES_INFO_1W = TPDATATYPES_INFO_1W type PDATA_BLOB = TPDATA_BLOB const PDCAP_D0_SUPPORTED = 1 const PDCAP_D1_SUPPORTED = 2 const PDCAP_D2_SUPPORTED = 4 const PDCAP_D3_SUPPORTED = 8 const PDCAP_WAKE_FROM_D0_SUPPORTED = 16 const PDCAP_WAKE_FROM_D1_SUPPORTED = 32 const PDCAP_WAKE_FROM_D2_SUPPORTED = 64 const PDCAP_WAKE_FROM_D3_SUPPORTED = 128 const PDCAP_WARM_EJECT_SUPPORTED = 256 const PDC_ARRIVAL = 1 const PDC_MAPPING_CHANGE = 256 const PDC_MODE_ASPECTRATIOPRESERVED = 2048 const PDC_MODE_CENTERED = 128 const PDC_MODE_DEFAULT = 64 const PDC_ORIENTATION_0 = 4 const PDC_ORIENTATION_180 = 16 const PDC_ORIENTATION_270 = 32 const PDC_ORIENTATION_90 = 8 const PDC_ORIGIN = 1024 const PDC_REMOVAL = 2 const PDC_RESOLUTION = 512 type PDDEML_MSG_HOOK_DATA = TPDDEML_MSG_HOOK_DATA type PDEBUGHOOKINFO = TPDEBUGHOOKINFO type PDECRYPTION_STATUS_BUFFER = TPDECRYPTION_STATUS_BUFFER type PDELETEITEMSTRUCT = TPDELETEITEMSTRUCT type PDELETE_SNAPSHOT_VHDSET_FLAG = TPDELETE_SNAPSHOT_VHDSET_FLAG type PDELETE_SNAPSHOT_VHDSET_PARAMETERS = TPDELETE_SNAPSHOT_VHDSET_PARAMETERS type PDELETE_SNAPSHOT_VHDSET_VERSION = TPDELETE_SNAPSHOT_VHDSET_VERSION type PDELETE_USN_JOURNAL_DATA = TPDELETE_USN_JOURNAL_DATA const PDERR_CREATEICFAILURE = 4106 const PDERR_DEFAULTDIFFERENT = 4108 const PDERR_DNDMMISMATCH = 4105 const PDERR_GETDEVMODEFAIL = 4101 const PDERR_INITFAILURE = 4102 const PDERR_LOADDRVFAILURE = 4100 const PDERR_NODEFAULTPRN = 4104 const PDERR_NODEVICES = 4103 const PDERR_PARSEFAILURE = 4098 const PDERR_PRINTERCODES = 4096 const PDERR_PRINTERNOTFOUND = 4107 const PDERR_RETDEFFAILURE = 4099 const PDERR_SETUPFAILURE = 4097 type PDESIGNVECTOR = TPDESIGNVECTOR const PDEVICESIZE = 26 type PDEVICE_COPY_OFFLOAD_DESCRIPTOR = TPDEVICE_COPY_OFFLOAD_DESCRIPTOR type PDEVICE_DATA_SET_RANGE = TPDEVICE_DATA_SET_RANGE type PDEVICE_DSM_NOTIFICATION_PARAMETERS = TPDEVICE_DSM_NOTIFICATION_PARAMETERS type PDEVICE_LB_PROVISIONING_DESCRIPTOR = TPDEVICE_LB_PROVISIONING_DESCRIPTOR type PDEVICE_MANAGE_DATA_SET_ATTRIBUTES = TPDEVICE_MANAGE_DATA_SET_ATTRIBUTES type PDEVICE_MEDIA_INFO = TPDEVICE_MEDIA_INFO type PDEVICE_POWER_DESCRIPTOR = TPDEVICE_POWER_DESCRIPTOR type PDEVICE_POWER_STATE = TPDEVICE_POWER_STATE type PDEVICE_SEEK_PENALTY_DESCRIPTOR = TPDEVICE_SEEK_PENALTY_DESCRIPTOR type PDEVICE_TRIM_DESCRIPTOR = TPDEVICE_TRIM_DESCRIPTOR type PDEVICE_WRITE_AGGREGATION_DESCRIPTOR = TPDEVICE_WRITE_AGGREGATION_DESCRIPTOR type PDEVMODE = TPDEVMODE type PDEVMODEA = TPDEVMODEA type PDEVMODEW = TPDEVMODEW type PDIBSECTION = TPDIBSECTION const PDIRTYUI = 2281701376 type PDISK_CACHE_INFORMATION = TPDISK_CACHE_INFORMATION type PDISK_CONTROLLER_NUMBER = TPDISK_CONTROLLER_NUMBER type PDISK_DETECTION_INFO = TPDISK_DETECTION_INFO type PDISK_EXTENT = TPDISK_EXTENT type PDISK_EX_INT13_INFO = TPDISK_EX_INT13_INFO type PDISK_GEOMETRY = TPDISK_GEOMETRY type PDISK_GEOMETRY_EX = TPDISK_GEOMETRY_EX type PDISK_GROW_PARTITION = TPDISK_GROW_PARTITION type PDISK_HISTOGRAM = TPDISK_HISTOGRAM type PDISK_INT13_INFO = TPDISK_INT13_INFO type PDISK_LOGGING = TPDISK_LOGGING type PDISK_PARTITION_INFO = TPDISK_PARTITION_INFO type PDISK_PERFORMANCE = TPDISK_PERFORMANCE type PDISK_RECORD = TPDISK_RECORD type PDISPLAY_DEVICE = TPDISPLAY_DEVICE type PDISPLAY_DEVICEA = TPDISPLAY_DEVICEA type PDISPLAY_DEVICEW = TPDISPLAY_DEVICEW type PDLGITEMTEMPLATE = TPDLGITEMTEMPLATE type PDLGITEMTEMPLATEA = TPDLGITEMTEMPLATEA type PDLGITEMTEMPLATEW = TPDLGITEMTEMPLATEW type PDLL_DIRECTORY_COOKIE = TPDLL_DIRECTORY_COOKIE type PDOC_INFO_1 = TPDOC_INFO_1 type PDOC_INFO_1A = TPDOC_INFO_1A type PDOC_INFO_1W = TPDOC_INFO_1W type PDOC_INFO_2 = TPDOC_INFO_2 type PDOC_INFO_2A = TPDOC_INFO_2A type PDOC_INFO_2W = TPDOC_INFO_2W type PDOC_INFO_3 = TPDOC_INFO_3 type PDOC_INFO_3A = TPDOC_INFO_3A type PDOC_INFO_3W = TPDOC_INFO_3W type PDRAWITEMSTRUCT = TPDRAWITEMSTRUCT type PDRAWPATRECT = TPDRAWPATRECT type PDRIVERSTATUS = TPDRIVERSTATUS type PDRIVER_INFO_1 = TPDRIVER_INFO_1 type PDRIVER_INFO_1A = TPDRIVER_INFO_1A type PDRIVER_INFO_1W = TPDRIVER_INFO_1W type PDRIVER_INFO_2 = TPDRIVER_INFO_2 type PDRIVER_INFO_2A = TPDRIVER_INFO_2A type PDRIVER_INFO_2W = TPDRIVER_INFO_2W type PDRIVER_INFO_3 = TPDRIVER_INFO_3 type PDRIVER_INFO_3A = TPDRIVER_INFO_3A type PDRIVER_INFO_3W = TPDRIVER_INFO_3W type PDRIVER_INFO_4 = TPDRIVER_INFO_4 type PDRIVER_INFO_4A = TPDRIVER_INFO_4A type PDRIVER_INFO_4W = TPDRIVER_INFO_4W type PDRIVER_INFO_5 = TPDRIVER_INFO_5 type PDRIVER_INFO_5A = TPDRIVER_INFO_5A type PDRIVER_INFO_5W = TPDRIVER_INFO_5W type PDRIVER_INFO_6 = TPDRIVER_INFO_6 type PDRIVER_INFO_6A = TPDRIVER_INFO_6A type PDRIVER_INFO_6W = TPDRIVER_INFO_6W type PDRIVER_INFO_8 = TPDRIVER_INFO_8 type PDRIVER_INFO_8A = TPDRIVER_INFO_8A type PDRIVER_INFO_8W = TPDRIVER_INFO_8W type PDRIVE_LAYOUT_INFORMATION = TPDRIVE_LAYOUT_INFORMATION type PDRIVE_LAYOUT_INFORMATION_EX = TPDRIVE_LAYOUT_INFORMATION_EX type PDRIVE_LAYOUT_INFORMATION_GPT = TPDRIVE_LAYOUT_INFORMATION_GPT type PDRIVE_LAYOUT_INFORMATION_MBR = TPDRIVE_LAYOUT_INFORMATION_MBR type PDROPSTRUCT = TPDROPSTRUCT type PDRVCALLBACK = TPDRVCALLBACK type PDRVCONFIGINFO = TPDRVCONFIGINFO type PDRVCONFIGINFOEX = TPDRVCONFIGINFOEX type PDWORD = TPDWORD type PDWORD32 = TPDWORD32 type PDWORD64 = TPDWORD64 type PDWORDLONG = TPDWORDLONG type PDWORD_PTR = TPDWORD_PTR type PDYNAMIC_TIME_ZONE_INFORMATION = TPDYNAMIC_TIME_ZONE_INFORMATION const PD_ALLPAGES = 0 const PD_COLLATE = 16 const PD_CURRENTPAGE = 4194304 const PD_DISABLEPRINTTOFILE = 524288 const PD_ENABLEPRINTHOOK = 4096 const PD_ENABLEPRINTTEMPLATE = 16384 const PD_ENABLEPRINTTEMPLATEHANDLE = 65536 const PD_ENABLESETUPHOOK = 8192 const PD_ENABLESETUPTEMPLATE = 32768 const PD_ENABLESETUPTEMPLATEHANDLE = 131072 const PD_EXCLUSIONFLAGS = 16777216 const PD_EXCL_COPIESANDCOLLATE = 33024 const PD_HIDEPRINTTOFILE = 1048576 const PD_NOCURRENTPAGE = 8388608 const PD_NONETWORKBUTTON = 2097152 const PD_NOPAGENUMS = 8 const PD_NOSELECTION = 4 const PD_NOWARNING = 128 const PD_PAGENUMS = 2 const PD_PRINTSETUP = 64 const PD_PRINTTOFILE = 32 const PD_RESULT_APPLY = 2 const PD_RESULT_CANCEL = 0 const PD_RESULT_PRINT = 1 const PD_RETURNDC = 256 const PD_RETURNDEFAULT = 1024 const PD_RETURNIC = 512 const PD_SELECTION = 1 const PD_SHOWHELP = 2048 const PD_USEDEVMODECOPIES = 262144 const PD_USEDEVMODECOPIESANDCOLLATE = 262144 const PD_USELARGETEMPLATE = 268435456 type PEFS_CERTIFICATE_BLOB = TPEFS_CERTIFICATE_BLOB type PEFS_HASH_BLOB = TPEFS_HASH_BLOB type PEFS_KEY_INFO = TPEFS_KEY_INFO type PEFS_RPC_BLOB = TPEFS_RPC_BLOB type PELARRAY = TPELARRAY type PELEMENT_TYPE = TPELEMENT_TYPE type PEMR = TPEMR type PEMRABORTPATH = TPEMRABORTPATH type PEMRALPHABLEND = TPEMRALPHABLEND type PEMRANGLEARC = TPEMRANGLEARC type PEMRARC = TPEMRARC type PEMRARCTO = TPEMRARCTO type PEMRBEGINPATH = TPEMRBEGINPATH type PEMRBITBLT = TPEMRBITBLT type PEMRCHORD = TPEMRCHORD type PEMRCLOSEFIGURE = TPEMRCLOSEFIGURE type PEMRCOLORCORRECTPALETTE = TPEMRCOLORCORRECTPALETTE type PEMRCOLORMATCHTOTARGET = TPEMRCOLORMATCHTOTARGET type PEMRCREATEBRUSHINDIRECT = TPEMRCREATEBRUSHINDIRECT type PEMRCREATECOLORSPACE = TPEMRCREATECOLORSPACE type PEMRCREATECOLORSPACEW = TPEMRCREATECOLORSPACEW type PEMRCREATEDIBPATTERNBRUSHPT = TPEMRCREATEDIBPATTERNBRUSHPT type PEMRCREATEMONOBRUSH = TPEMRCREATEMONOBRUSH type PEMRCREATEPALETTE = TPEMRCREATEPALETTE type PEMRCREATEPEN = TPEMRCREATEPEN type PEMRDELETECOLORSPACE = TPEMRDELETECOLORSPACE type PEMRDELETEOBJECT = TPEMRDELETEOBJECT type PEMRDRAWESCAPE = TPEMRDRAWESCAPE type PEMRELLIPSE = TPEMRELLIPSE type PEMRENDPATH = TPEMRENDPATH type PEMREOF = TPEMREOF type PEMREXCLUDECLIPRECT = TPEMREXCLUDECLIPRECT type PEMREXTCREATEFONTINDIRECTW = TPEMREXTCREATEFONTINDIRECTW type PEMREXTCREATEPEN = TPEMREXTCREATEPEN type PEMREXTESCAPE = TPEMREXTESCAPE type PEMREXTFLOODFILL = TPEMREXTFLOODFILL type PEMREXTSELECTCLIPRGN = TPEMREXTSELECTCLIPRGN type PEMREXTTEXTOUTA = TPEMREXTTEXTOUTA type PEMREXTTEXTOUTW = TPEMREXTTEXTOUTW type PEMRFILLPATH = TPEMRFILLPATH type PEMRFILLRGN = TPEMRFILLRGN type PEMRFLATTENPATH = TPEMRFLATTENPATH type PEMRFORMAT = TPEMRFORMAT type PEMRFRAMERGN = TPEMRFRAMERGN type PEMRGDICOMMENT = TPEMRGDICOMMENT type PEMRGLSBOUNDEDRECORD = TPEMRGLSBOUNDEDRECORD type PEMRGLSRECORD = TPEMRGLSRECORD type PEMRGRADIENTFILL = TPEMRGRADIENTFILL type PEMRINTERSECTCLIPRECT = TPEMRINTERSECTCLIPRECT type PEMRINVERTRGN = TPEMRINVERTRGN type PEMRLINETO = TPEMRLINETO type PEMRMASKBLT = TPEMRMASKBLT type PEMRMODIFYWORLDTRANSFORM = TPEMRMODIFYWORLDTRANSFORM type PEMRMOVETOEX = TPEMRMOVETOEX type PEMRNAMEDESCAPE = TPEMRNAMEDESCAPE type PEMROFFSETCLIPRGN = TPEMROFFSETCLIPRGN type PEMRPAINTRGN = TPEMRPAINTRGN type PEMRPIE = TPEMRPIE type PEMRPIXELFORMAT = TPEMRPIXELFORMAT type PEMRPLGBLT = TPEMRPLGBLT type PEMRPOLYBEZIER = TPEMRPOLYBEZIER type PEMRPOLYBEZIER16 = TPEMRPOLYBEZIER16 type PEMRPOLYBEZIERTO = TPEMRPOLYBEZIERTO type PEMRPOLYBEZIERTO16 = TPEMRPOLYBEZIERTO16 type PEMRPOLYDRAW = TPEMRPOLYDRAW type PEMRPOLYDRAW16 = TPEMRPOLYDRAW16 type PEMRPOLYGON = TPEMRPOLYGON type PEMRPOLYGON16 = TPEMRPOLYGON16 type PEMRPOLYLINE = TPEMRPOLYLINE type PEMRPOLYLINE16 = TPEMRPOLYLINE16 type PEMRPOLYLINETO = TPEMRPOLYLINETO type PEMRPOLYLINETO16 = TPEMRPOLYLINETO16 type PEMRPOLYPOLYGON = TPEMRPOLYPOLYGON type PEMRPOLYPOLYGON16 = TPEMRPOLYPOLYGON16 type PEMRPOLYPOLYLINE = TPEMRPOLYPOLYLINE type PEMRPOLYPOLYLINE16 = TPEMRPOLYPOLYLINE16 type PEMRPOLYTEXTOUTA = TPEMRPOLYTEXTOUTA type PEMRPOLYTEXTOUTW = TPEMRPOLYTEXTOUTW type PEMRREALIZEPALETTE = TPEMRREALIZEPALETTE type PEMRRECTANGLE = TPEMRRECTANGLE type PEMRRESIZEPALETTE = TPEMRRESIZEPALETTE type PEMRRESTOREDC = TPEMRRESTOREDC type PEMRROUNDRECT = TPEMRROUNDRECT type PEMRSAVEDC = TPEMRSAVEDC type PEMRSCALEVIEWPORTEXTEX = TPEMRSCALEVIEWPORTEXTEX type PEMRSCALEWINDOWEXTEX = TPEMRSCALEWINDOWEXTEX type PEMRSELECTCLIPPATH = TPEMRSELECTCLIPPATH type PEMRSELECTCOLORSPACE = TPEMRSELECTCOLORSPACE type PEMRSELECTOBJECT = TPEMRSELECTOBJECT type PEMRSELECTPALETTE = TPEMRSELECTPALETTE type PEMRSETARCDIRECTION = TPEMRSETARCDIRECTION type PEMRSETBKCOLOR = TPEMRSETBKCOLOR type PEMRSETBKMODE = TPEMRSETBKMODE type PEMRSETBRUSHORGEX = TPEMRSETBRUSHORGEX type PEMRSETCOLORADJUSTMENT = TPEMRSETCOLORADJUSTMENT type PEMRSETCOLORSPACE = TPEMRSETCOLORSPACE type PEMRSETDIBITSTODEVICE = TPEMRSETDIBITSTODEVICE type PEMRSETICMMODE = TPEMRSETICMMODE type PEMRSETICMPROFILE = TPEMRSETICMPROFILE type PEMRSETICMPROFILEA = TPEMRSETICMPROFILEA type PEMRSETICMPROFILEW = TPEMRSETICMPROFILEW type PEMRSETLAYOUT = TPEMRSETLAYOUT type PEMRSETMAPMODE = TPEMRSETMAPMODE type PEMRSETMAPPERFLAGS = TPEMRSETMAPPERFLAGS type PEMRSETMETARGN = TPEMRSETMETARGN type PEMRSETMITERLIMIT = TPEMRSETMITERLIMIT type PEMRSETPALETTEENTRIES = TPEMRSETPALETTEENTRIES type PEMRSETPIXELV = TPEMRSETPIXELV type PEMRSETPOLYFILLMODE = TPEMRSETPOLYFILLMODE type PEMRSETROP2 = TPEMRSETROP2 type PEMRSETSTRETCHBLTMODE = TPEMRSETSTRETCHBLTMODE type PEMRSETTEXTALIGN = TPEMRSETTEXTALIGN type PEMRSETTEXTCOLOR = TPEMRSETTEXTCOLOR type PEMRSETVIEWPORTEXTEX = TPEMRSETVIEWPORTEXTEX type PEMRSETVIEWPORTORGEX = TPEMRSETVIEWPORTORGEX type PEMRSETWINDOWEXTEX = TPEMRSETWINDOWEXTEX type PEMRSETWINDOWORGEX = TPEMRSETWINDOWORGEX type PEMRSETWORLDTRANSFORM = TPEMRSETWORLDTRANSFORM type PEMRSTRETCHBLT = TPEMRSTRETCHBLT type PEMRSTRETCHDIBITS = TPEMRSTRETCHDIBITS type PEMRSTROKEANDFILLPATH = TPEMRSTROKEANDFILLPATH type PEMRSTROKEPATH = TPEMRSTROKEPATH type PEMRTEXT = TPEMRTEXT type PEMRTRANSPARENTBLT = TPEMRTRANSPARENTBLT type PEMRWIDENPATH = TPEMRWIDENPATH const PENARBITRATIONTYPE_FIS = 2 const PENARBITRATIONTYPE_MAX = 4 const PENARBITRATIONTYPE_NONE = 0 const PENARBITRATIONTYPE_SPT = 3 const PENARBITRATIONTYPE_WIN8 = 1 type PENCLAVE_ROUTINE = TPENCLAVE_ROUTINE type PENCRYPTED_DATA_INFO = TPENCRYPTED_DATA_INFO type PENCRYPTION_BUFFER = TPENCRYPTION_BUFFER type PENCRYPTION_CERTIFICATE = TPENCRYPTION_CERTIFICATE type PENCRYPTION_CERTIFICATE_HASH = TPENCRYPTION_CERTIFICATE_HASH type PENCRYPTION_CERTIFICATE_HASH_LIST = TPENCRYPTION_CERTIFICATE_HASH_LIST type PENCRYPTION_CERTIFICATE_LIST = TPENCRYPTION_CERTIFICATE_LIST type PENDINGMSG = TPENDINGMSG type PENDINGTYPE = TPENDINGTYPE type PENHMETAHEADER = TPENHMETAHEADER type PENHMETARECORD = TPENHMETARECORD type PENLISTMENT_BASIC_INFORMATION = TPENLISTMENT_BASIC_INFORMATION type PENLISTMENT_CRM_INFORMATION = TPENLISTMENT_CRM_INFORMATION type PENUMLOGFONTEXDV = TPENUMLOGFONTEXDV type PENUMLOGFONTEXDVA = TPENUMLOGFONTEXDVA type PENUMLOGFONTEXDVW = TPENUMLOGFONTEXDVW type PENUMTEXTMETRIC = TPENUMTEXTMETRIC type PENUMTEXTMETRICA = TPENUMTEXTMETRICA type PENUMTEXTMETRICW = TPENUMTEXTMETRICW type PENUMUILANG = TPENUMUILANG const PENVISUALIZATION_CURSOR = 32 const PENVISUALIZATION_DOUBLETAP = 2 const PENVISUALIZATION_OFF = 0 const PENVISUALIZATION_ON = 35 const PENVISUALIZATION_TAP = 1 type PEN_FLAGS = TPEN_FLAGS const PEN_FLAG_BARREL = 1 const PEN_FLAG_ERASER = 4 const PEN_FLAG_INVERTED = 2 const PEN_FLAG_NONE = 0 type PEN_MASK = TPEN_MASK const PEN_MASK_NONE = 0 const PEN_MASK_PRESSURE = 1 const PEN_MASK_ROTATION = 2 const PEN_MASK_TILT_X = 4 const PEN_MASK_TILT_Y = 8 type PERFORMANCE_DATA = TPERFORMANCE_DATA const PERFORMANCE_DATA_VERSION = 1 const PERFSTATE_POLICY_CHANGE_IDEAL = 0 const PERFSTATE_POLICY_CHANGE_MAX = 2 const PERFSTATE_POLICY_CHANGE_ROCKET = 2 const PERFSTATE_POLICY_CHANGE_SINGLE = 1 const PERF_100NSEC_MULTI_TIMER = 575735040 const PERF_100NSEC_MULTI_TIMER_INV = 592512256 const PERF_100NSEC_TIMER = 542180608 const PERF_100NSEC_TIMER_INV = 558957824 const PERF_AVERAGE_BASE = 1073939458 const PERF_AVERAGE_BULK = 1073874176 const PERF_AVERAGE_TIMER = 805438464 type PERF_BIN = TPERF_BIN const PERF_COUNTER_100NS_QUEUELEN_TYPE = 5571840 const PERF_COUNTER_BASE = 196608 type PERF_COUNTER_BLOCK = TPERF_COUNTER_BLOCK const PERF_COUNTER_BULK_COUNT = 272696576 const PERF_COUNTER_COUNTER = 272696320 type PERF_COUNTER_DEFINITION = TPERF_COUNTER_DEFINITION const PERF_COUNTER_DELTA = 4195328 const PERF_COUNTER_ELAPSED = 262144 const PERF_COUNTER_FRACTION = 131072 const PERF_COUNTER_HISTOGRAM = 393216 const PERF_COUNTER_HISTOGRAM_TYPE = 2147483648 const PERF_COUNTER_LARGE_DELTA = 4195584 const PERF_COUNTER_LARGE_QUEUELEN_TYPE = 4523264 const PERF_COUNTER_LARGE_RAWCOUNT = 65792 const PERF_COUNTER_LARGE_RAWCOUNT_HEX = 256 const PERF_COUNTER_MULTI_BASE = 1107494144 const PERF_COUNTER_MULTI_TIMER = 574686464 const PERF_COUNTER_MULTI_TIMER_INV = 591463680 const PERF_COUNTER_NODATA = 1073742336 const PERF_COUNTER_OBJ_TIME_QUEUELEN_TYPE = 6620416 const PERF_COUNTER_PRECISION = 458752 const PERF_COUNTER_QUEUELEN = 327680 const PERF_COUNTER_QUEUELEN_TYPE = 4523008 const PERF_COUNTER_RATE = 65536 const PERF_COUNTER_RAWCOUNT = 65536 const PERF_COUNTER_RAWCOUNT_HEX = 0 const PERF_COUNTER_TEXT = 2816 const PERF_COUNTER_TIMER = 541132032 const PERF_COUNTER_TIMER_INV = 557909248 const PERF_COUNTER_VALUE = 0 type PERF_DATA_BLOCK = TPERF_DATA_BLOCK const PERF_DATA_REVISION = 1 const PERF_DATA_VERSION = 1 const PERF_DELTA_BASE = 8388608 const PERF_DELTA_COUNTER = 4194304 const PERF_DETAIL_ADVANCED = 200 const PERF_DETAIL_EXPERT = 300 const PERF_DETAIL_NOVICE = 100 const PERF_DETAIL_WIZARD = 400 const PERF_DISPLAY_NOSHOW = 1073741824 const PERF_DISPLAY_NO_SUFFIX = 0 const PERF_DISPLAY_PERCENT = 536870912 const PERF_DISPLAY_PER_SEC = 268435456 const PERF_DISPLAY_SECONDS = 805306368 const PERF_ELAPSED_TIME = 807666944 type PERF_INSTANCE_DEFINITION = TPERF_INSTANCE_DEFINITION const PERF_INVERSE_COUNTER = 16777216 const PERF_LARGE_RAW_BASE = 1073939712 const PERF_LARGE_RAW_FRACTION = 537003264 const PERF_MULTI_COUNTER = 33554432 const PERF_NO_INSTANCES = -1 const PERF_NO_UNIQUE_ID = -1 const PERF_NUMBER_DECIMAL = 65536 const PERF_NUMBER_DEC_1000 = 131072 const PERF_NUMBER_HEX = 0 const PERF_OBJECT_TIMER = 2097152 type PERF_OBJECT_TYPE = TPERF_OBJECT_TYPE const PERF_OBJ_TIME_TIMER = 543229184 const PERF_PRECISION_100NS_TIMER = 542573824 const PERF_PRECISION_OBJECT_TIMER = 543622400 const PERF_PRECISION_SYSTEM_TIMER = 541525248 const PERF_PRECISION_TIMESTAMP = 1073939712 const PERF_RAW_BASE = 1073939459 const PERF_RAW_FRACTION = 537003008 const PERF_SAMPLE_BASE = 1073939457 const PERF_SAMPLE_COUNTER = 4260864 const PERF_SAMPLE_FRACTION = 549585920 const PERF_SIZE_DWORD = 0 const PERF_SIZE_LARGE = 256 const PERF_SIZE_VARIABLE_LEN = 768 const PERF_SIZE_ZERO = 512 const PERF_TEXT_ASCII = 65536 const PERF_TEXT_UNICODE = 0 const PERF_TIMER_100NS = 1048576 const PERF_TIMER_TICK = 0 const PERF_TYPE_COUNTER = 1024 const PERF_TYPE_NUMBER = 0 const PERF_TYPE_TEXT = 2048 const PERF_TYPE_ZERO = 3072 type PERSISTENT_RESERVE_COMMAND = TPERSISTENT_RESERVE_COMMAND const PERSISTENT_VOLUME_STATE_SHORT_NAME_CREATION_DISABLED = 1 type PEVENTLOGRECORD = TPEVENTLOGRECORD type PEVENTMSG = TPEVENTMSG type PEVENTMSGMSG = TPEVENTMSGMSG type PEVENTSFORLOGFILE = TPEVENTSFORLOGFILE type PEV_EXTRA_CERT_CHAIN_POLICY_PARA = TPEV_EXTRA_CERT_CHAIN_POLICY_PARA type PEV_EXTRA_CERT_CHAIN_POLICY_STATUS = TPEV_EXTRA_CERT_CHAIN_POLICY_STATUS type PEXCEPTION_HANDLER = TPEXCEPTION_HANDLER type PEXCEPTION_POINTERS = TPEXCEPTION_POINTERS type PEXCEPTION_RECORD = TPEXCEPTION_RECORD type PEXCEPTION_RECORD32 = TPEXCEPTION_RECORD32 type PEXCEPTION_RECORD64 = TPEXCEPTION_RECORD64 type PEXCEPTION_REGISTRATION = TPEXCEPTION_REGISTRATION type PEXCEPTION_REGISTRATION_RECORD = TPEXCEPTION_REGISTRATION_RECORD type PEXCEPTION_ROUTINE = TPEXCEPTION_ROUTINE type PEXECUTION_STATE = TPEXECUTION_STATE type PEXFAT_STATISTICS = TPEXFAT_STATISTICS type PEXPAND_VIRTUAL_DISK_PARAMETERS = TPEXPAND_VIRTUAL_DISK_PARAMETERS type PEXTENDED_ENCRYPTED_DATA_INFO = TPEXTENDED_ENCRYPTED_DATA_INFO type PEXTLOGFONT = TPEXTLOGFONT type PEXTLOGFONTA = TPEXTLOGFONTA type PEXTLOGFONTW = TPEXTLOGFONTW type PEXTLOGPEN = TPEXTLOGPEN type PEXTLOGPEN32 = TPEXTLOGPEN32 type PFAT_STATISTICS = TPFAT_STATISTICS const PFD_DEPTH_DONTCARE = 536870912 const PFD_DIRECT3D_ACCELERATED = 16384 const PFD_DOUBLEBUFFER = 1 const PFD_DOUBLEBUFFER_DONTCARE = 1073741824 const PFD_DRAW_TO_BITMAP = 8 const PFD_DRAW_TO_WINDOW = 4 const PFD_GENERIC_ACCELERATED = 4096 const PFD_GENERIC_FORMAT = 64 const PFD_MAIN_PLANE = 0 const PFD_NEED_PALETTE = 128 const PFD_NEED_SYSTEM_PALETTE = 256 const PFD_OVERLAY_PLANE = 1 type PFD_SET = TPFD_SET const PFD_STEREO = 2 const PFD_STEREO_DONTCARE = 2147483648 const PFD_SUPPORT_COMPOSITION = 32768 const PFD_SUPPORT_DIRECTDRAW = 8192 const PFD_SUPPORT_GDI = 16 const PFD_SUPPORT_OPENGL = 32 const PFD_SWAP_COPY = 1024 const PFD_SWAP_EXCHANGE = 512 const PFD_SWAP_LAYER_BUFFERS = 2048 const PFD_TYPE_COLORINDEX = 1 const PFD_TYPE_RGBA = 0 const PFD_UNDERLAY_PLANE = -1 type PFE_EXPORT_FUNC = TPFE_EXPORT_FUNC type PFE_IMPORT_FUNC = TPFE_IMPORT_FUNC type PFIBER_CALLOUT_ROUTINE = TPFIBER_CALLOUT_ROUTINE type PFIBER_START_ROUTINE = TPFIBER_START_ROUTINE type PFILEMUIINFO = TPFILEMUIINFO type PFILESYSTEM_STATISTICS = TPFILESYSTEM_STATISTICS type PFILETIME = TPFILETIME type PFILE_ALIGNMENT_INFO = TPFILE_ALIGNMENT_INFO type PFILE_ALLOCATED_RANGE_BUFFER = TPFILE_ALLOCATED_RANGE_BUFFER type PFILE_ALLOCATION_INFO = TPFILE_ALLOCATION_INFO type PFILE_ATTRIBUTE_TAG_INFO = TPFILE_ATTRIBUTE_TAG_INFO type PFILE_BASIC_INFO = TPFILE_BASIC_INFO type PFILE_CASE_SENSITIVE_INFO = TPFILE_CASE_SENSITIVE_INFO type PFILE_COMPRESSION_INFO = TPFILE_COMPRESSION_INFO type PFILE_DISPOSITION_INFO = TPFILE_DISPOSITION_INFO type PFILE_DISPOSITION_INFO_EX = TPFILE_DISPOSITION_INFO_EX type PFILE_END_OF_FILE_INFO = TPFILE_END_OF_FILE_INFO type PFILE_FS_PERSISTENT_VOLUME_INFORMATION = TPFILE_FS_PERSISTENT_VOLUME_INFORMATION type PFILE_FULL_DIR_INFO = TPFILE_FULL_DIR_INFO type PFILE_ID_128 = TPFILE_ID_128 type PFILE_ID_BOTH_DIR_INFO = TPFILE_ID_BOTH_DIR_INFO type PFILE_ID_EXTD_DIR_INFO = TPFILE_ID_EXTD_DIR_INFO type PFILE_ID_INFO = TPFILE_ID_INFO type PFILE_ID_TYPE = TPFILE_ID_TYPE type PFILE_INFO_BY_HANDLE_CLASS = TPFILE_INFO_BY_HANDLE_CLASS type PFILE_IO_PRIORITY_HINT_INFO = TPFILE_IO_PRIORITY_HINT_INFO type PFILE_MAKE_COMPATIBLE_BUFFER = TPFILE_MAKE_COMPATIBLE_BUFFER type PFILE_NAME_INFO = TPFILE_NAME_INFO type PFILE_NOTIFY_INFORMATION = TPFILE_NOTIFY_INFORMATION type PFILE_OBJECTID_BUFFER = TPFILE_OBJECTID_BUFFER type PFILE_PREFETCH = TPFILE_PREFETCH type PFILE_PREFETCH_EX = TPFILE_PREFETCH_EX type PFILE_PROVIDER_EXTERNAL_INFO_V0 = TPFILE_PROVIDER_EXTERNAL_INFO_V0 type PFILE_PROVIDER_EXTERNAL_INFO_V1 = TPFILE_PROVIDER_EXTERNAL_INFO_V1 type PFILE_QUERY_ON_DISK_VOL_INFO_BUFFER = TPFILE_QUERY_ON_DISK_VOL_INFO_BUFFER type PFILE_QUERY_SPARING_BUFFER = TPFILE_QUERY_SPARING_BUFFER type PFILE_REMOTE_PROTOCOL_INFO = TPFILE_REMOTE_PROTOCOL_INFO type PFILE_RENAME_INFO = TPFILE_RENAME_INFO type PFILE_SEGMENT_ELEMENT = TPFILE_SEGMENT_ELEMENT type PFILE_SET_DEFECT_MGMT_BUFFER = TPFILE_SET_DEFECT_MGMT_BUFFER type PFILE_SET_SPARSE_BUFFER = TPFILE_SET_SPARSE_BUFFER type PFILE_STANDARD_INFO = TPFILE_STANDARD_INFO type PFILE_STORAGE_INFO = TPFILE_STORAGE_INFO type PFILE_STREAM_INFO = TPFILE_STREAM_INFO type PFILE_SYSTEM_RECOGNITION_INFORMATION = TPFILE_SYSTEM_RECOGNITION_INFORMATION type PFILE_TYPE_NOTIFICATION_INPUT = TPFILE_TYPE_NOTIFICATION_INPUT type PFILE_ZERO_DATA_INFORMATION = TPFILE_ZERO_DATA_INFORMATION type PFIND_BY_SID_DATA = TPFIND_BY_SID_DATA type PFIND_BY_SID_OUTPUT = TPFIND_BY_SID_OUTPUT type PFIND_NAME_BUFFER = TPFIND_NAME_BUFFER type PFIND_NAME_HEADER = TPFIND_NAME_HEADER type PFIRMWARE_TYPE = TPFIRMWARE_TYPE type PFLASHWINFO = TPFLASHWINFO type PFLOAT = TPFLOAT type PFLOAT128 = TPFLOAT128 type PFLS_CALLBACK_FUNCTION = TPFLS_CALLBACK_FUNCTION type PFNCALLBACK = TPFNCALLBACK type PFNCANSHAREFOLDERW = TPFNCANSHAREFOLDERW const PFNGETPROFILEPATH = 0 type PFNGETPROFILEPATHA = TPFNGETPROFILEPATHA type PFNGETPROFILEPATHW = TPFNGETPROFILEPATHW const PFNPROCESSPOLICIES = 0 type PFNPROCESSPOLICIESA = TPFNPROCESSPOLICIESA type PFNPROCESSPOLICIESW = TPFNPROCESSPOLICIESW type PFNPROPSHEETCALLBACK = TPFNPROPSHEETCALLBACK const PFNRECONCILEPROFILE = 0 type PFNRECONCILEPROFILEA = TPFNRECONCILEPROFILEA type PFNRECONCILEPROFILEW = TPFNRECONCILEPROFILEW type PFNSHOWSHAREFOLDERUIW = TPFNSHOWSHAREFOLDERUIW type PFN_CANCEL_ASYNC_RETRIEVAL_FUNC = TPFN_CANCEL_ASYNC_RETRIEVAL_FUNC type PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK = TPFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK type PFN_CERT_CREATE_CONTEXT_SORT_FUNC = TPFN_CERT_CREATE_CONTEXT_SORT_FUNC type PFN_CERT_DLL_OPEN_STORE_PROV_FUNC = TPFN_CERT_DLL_OPEN_STORE_PROV_FUNC type PFN_CERT_ENUM_PHYSICAL_STORE = TPFN_CERT_ENUM_PHYSICAL_STORE type PFN_CERT_ENUM_SYSTEM_STORE = TPFN_CERT_ENUM_SYSTEM_STORE type PFN_CERT_ENUM_SYSTEM_STORE_LOCATION = TPFN_CERT_ENUM_SYSTEM_STORE_LOCATION type PFN_CERT_IS_WEAK_HASH = TPFN_CERT_IS_WEAK_HASH type PFN_CERT_SERVER_OCSP_RESPONSE_UPDATE_CALLBACK = TPFN_CERT_SERVER_OCSP_RESPONSE_UPDATE_CALLBACK type PFN_CERT_STORE_PROV_CLOSE = TPFN_CERT_STORE_PROV_CLOSE type PFN_CERT_STORE_PROV_CONTROL = TPFN_CERT_STORE_PROV_CONTROL type PFN_CERT_STORE_PROV_DELETE_CERT = TPFN_CERT_STORE_PROV_DELETE_CERT type PFN_CERT_STORE_PROV_DELETE_CRL = TPFN_CERT_STORE_PROV_DELETE_CRL type PFN_CERT_STORE_PROV_DELETE_CTL = TPFN_CERT_STORE_PROV_DELETE_CTL type PFN_CERT_STORE_PROV_FIND_CERT = TPFN_CERT_STORE_PROV_FIND_CERT type PFN_CERT_STORE_PROV_FIND_CRL = TPFN_CERT_STORE_PROV_FIND_CRL type PFN_CERT_STORE_PROV_FIND_CTL = TPFN_CERT_STORE_PROV_FIND_CTL type PFN_CERT_STORE_PROV_FREE_FIND_CERT = TPFN_CERT_STORE_PROV_FREE_FIND_CERT type PFN_CERT_STORE_PROV_FREE_FIND_CRL = TPFN_CERT_STORE_PROV_FREE_FIND_CRL type PFN_CERT_STORE_PROV_FREE_FIND_CTL = TPFN_CERT_STORE_PROV_FREE_FIND_CTL type PFN_CERT_STORE_PROV_GET_CERT_PROPERTY = TPFN_CERT_STORE_PROV_GET_CERT_PROPERTY type PFN_CERT_STORE_PROV_GET_CRL_PROPERTY = TPFN_CERT_STORE_PROV_GET_CRL_PROPERTY type PFN_CERT_STORE_PROV_GET_CTL_PROPERTY = TPFN_CERT_STORE_PROV_GET_CTL_PROPERTY type PFN_CERT_STORE_PROV_READ_CERT = TPFN_CERT_STORE_PROV_READ_CERT type PFN_CERT_STORE_PROV_READ_CRL = TPFN_CERT_STORE_PROV_READ_CRL type PFN_CERT_STORE_PROV_READ_CTL = TPFN_CERT_STORE_PROV_READ_CTL type PFN_CERT_STORE_PROV_SET_CERT_PROPERTY = TPFN_CERT_STORE_PROV_SET_CERT_PROPERTY type PFN_CERT_STORE_PROV_SET_CRL_PROPERTY = TPFN_CERT_STORE_PROV_SET_CRL_PROPERTY type PFN_CERT_STORE_PROV_SET_CTL_PROPERTY = TPFN_CERT_STORE_PROV_SET_CTL_PROPERTY type PFN_CERT_STORE_PROV_WRITE_CERT = TPFN_CERT_STORE_PROV_WRITE_CERT type PFN_CERT_STORE_PROV_WRITE_CRL = TPFN_CERT_STORE_PROV_WRITE_CRL type PFN_CERT_STORE_PROV_WRITE_CTL = TPFN_CERT_STORE_PROV_WRITE_CTL type PFN_CMSG_ALLOC = TPFN_CMSG_ALLOC type PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY = TPFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY type PFN_CMSG_CNG_IMPORT_KEY_AGREE = TPFN_CMSG_CNG_IMPORT_KEY_AGREE type PFN_CMSG_CNG_IMPORT_KEY_TRANS = TPFN_CMSG_CNG_IMPORT_KEY_TRANS type PFN_CMSG_EXPORT_ENCRYPT_KEY = TPFN_CMSG_EXPORT_ENCRYPT_KEY type PFN_CMSG_EXPORT_KEY_AGREE = TPFN_CMSG_EXPORT_KEY_AGREE type PFN_CMSG_EXPORT_KEY_TRANS = TPFN_CMSG_EXPORT_KEY_TRANS type PFN_CMSG_EXPORT_MAIL_LIST = TPFN_CMSG_EXPORT_MAIL_LIST type PFN_CMSG_FREE = TPFN_CMSG_FREE type PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY = TPFN_CMSG_GEN_CONTENT_ENCRYPT_KEY type PFN_CMSG_GEN_ENCRYPT_KEY = TPFN_CMSG_GEN_ENCRYPT_KEY type PFN_CMSG_IMPORT_ENCRYPT_KEY = TPFN_CMSG_IMPORT_ENCRYPT_KEY type PFN_CMSG_IMPORT_KEY_AGREE = TPFN_CMSG_IMPORT_KEY_AGREE type PFN_CMSG_IMPORT_KEY_TRANS = TPFN_CMSG_IMPORT_KEY_TRANS type PFN_CMSG_IMPORT_MAIL_LIST = TPFN_CMSG_IMPORT_MAIL_LIST type PFN_CMSG_STREAM_OUTPUT = TPFN_CMSG_STREAM_OUTPUT type PFN_CRYPT_ALLOC = TPFN_CRYPT_ALLOC type PFN_CRYPT_ASYNC_PARAM_FREE_FUNC = TPFN_CRYPT_ASYNC_PARAM_FREE_FUNC type PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC = TPFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC type PFN_CRYPT_CANCEL_RETRIEVAL = TPFN_CRYPT_CANCEL_RETRIEVAL type PFN_CRYPT_ENUM_KEYID_PROP = TPFN_CRYPT_ENUM_KEYID_PROP type PFN_CRYPT_ENUM_OID_FUNC = TPFN_CRYPT_ENUM_OID_FUNC type PFN_CRYPT_ENUM_OID_INFO = TPFN_CRYPT_ENUM_OID_INFO type PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC = TPFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC type PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_FROM_BCRYPT_HANDLE_FUNC = TPFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_FROM_BCRYPT_HANDLE_FUNC type PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC = TPFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC type PFN_CRYPT_FREE = TPFN_CRYPT_FREE type PFN_CRYPT_GET_SIGNER_CERTIFICATE = TPFN_CRYPT_GET_SIGNER_CERTIFICATE type PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH = TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH type PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE = TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE type PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER = TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER type PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD = TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD type PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET = TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET type PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE = TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE type PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE = TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE type PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC = TPFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC type PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC = TPFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC type PFN_EXPORT_PRIV_KEY_FUNC = TPFN_EXPORT_PRIV_KEY_FUNC type PFN_FREE_ENCODED_OBJECT_FUNC = TPFN_FREE_ENCODED_OBJECT_FUNC type PFN_IMPORT_PRIV_KEY_FUNC = TPFN_IMPORT_PRIV_KEY_FUNC type PFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC = TPFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC type PFN_NCRYPT_ALLOC = TPFN_NCRYPT_ALLOC type PFN_NCRYPT_FREE = TPFN_NCRYPT_FREE type PFN_RPCNOTIFICATION_ROUTINE = TPFN_RPCNOTIFICATION_ROUTINE type PFN_SC_NOTIFY_CALLBACK = TPFN_SC_NOTIFY_CALLBACK type PFOCUS_EVENT_RECORD = TPFOCUS_EVENT_RECORD type PFONTSIGNATURE = TPFONTSIGNATURE type PFORMAT_EX_PARAMETERS = TPFORMAT_EX_PARAMETERS type PFORMAT_PARAMETERS = TPFORMAT_PARAMETERS type PFORMAT_STRING = TPFORMAT_STRING type PFORM_INFO_1 = TPFORM_INFO_1 type PFORM_INFO_1A = TPFORM_INFO_1A type PFORM_INFO_1W = TPFORM_INFO_1W type PFORM_INFO_2 = TPFORM_INFO_2 type PFORM_INFO_2A = TPFORM_INFO_2A type PFORM_INFO_2W = TPFORM_INFO_2W type PFPO_DATA = TPFPO_DATA type PFSCTL_QUERY_FAT_BPB_BUFFER = TPFSCTL_QUERY_FAT_BPB_BUFFER type PFULL_PTR_TO_REFID_ELEMENT = TPFULL_PTR_TO_REFID_ELEMENT type PFULL_PTR_XLAT_TABLES = TPFULL_PTR_XLAT_TABLES const PF_3DNOW_INSTRUCTIONS_AVAILABLE = 7 const PF_ALPHA_BYTE_INSTRUCTIONS = 5 const PF_ARM_64BIT_LOADSTORE_ATOMIC = 25 const PF_ARM_DIVIDE_INSTRUCTION_AVAILABLE = 24 const PF_ARM_EXTERNAL_CACHE_AVAILABLE = 26 const PF_ARM_FMAC_INSTRUCTIONS_AVAILABLE = 27 const PF_ARM_NEON_INSTRUCTIONS_AVAILABLE = 19 const PF_ARM_V81_ATOMIC_INSTRUCTIONS_AVAILABLE = 34 const PF_ARM_V82_DP_INSTRUCTIONS_AVAILABLE = 43 const PF_ARM_V83_JSCVT_INSTRUCTIONS_AVAILABLE = 44 const PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE = 31 const PF_ARM_V8_CRYPTO_INSTRUCTIONS_AVAILABLE = 30 const PF_ARM_V8_INSTRUCTIONS_AVAILABLE = 29 const PF_ARM_VFP_32_REGISTERS_AVAILABLE = 18 const PF_AVX2_INSTRUCTIONS_AVAILABLE = 40 const PF_AVX512F_INSTRUCTIONS_AVAILABLE = 41 const PF_AVX_INSTRUCTIONS_AVAILABLE = 39 const PF_BAN = 21 const PF_CHANNELS_ENABLED = 16 const PF_COMPARE64_EXCHANGE128 = 15 const PF_COMPARE_EXCHANGE128 = 14 const PF_COMPARE_EXCHANGE_DOUBLE = 2 const PF_ERMS_AVAILABLE = 42 const PF_FASTFAIL_AVAILABLE = 23 const PF_FIREFOX = 19 const PF_FLOATING_POINT_EMULATED = 1 const PF_FLOATING_POINT_PRECISION_ERRATA = 0 const PF_IPX = 6 const PF_MAX = 22 const PF_MMX_INSTRUCTIONS_AVAILABLE = 3 const PF_MONITORX_INSTRUCTION_AVAILABLE = 35 const PF_NX_ENABLED = 12 const PF_PAE_ENABLED = 9 const PF_PPC_MOVEMEM_64BIT_OK = 4 const PF_RDPID_INSTRUCTION_AVAILABLE = 33 const PF_RDRAND_INSTRUCTION_AVAILABLE = 28 const PF_RDTSCP_INSTRUCTION_AVAILABLE = 32 const PF_RDTSC_INSTRUCTION_AVAILABLE = 8 const PF_RDWRFSGSBASE_AVAILABLE = 22 const PF_SECOND_LEVEL_ADDRESS_TRANSLATION = 20 const PF_SSE3_INSTRUCTIONS_AVAILABLE = 13 const PF_SSE4_1_INSTRUCTIONS_AVAILABLE = 37 const PF_SSE4_2_INSTRUCTIONS_AVAILABLE = 38 const PF_SSE_DAZ_MODE_AVAILABLE = 11 const PF_SSSE3_INSTRUCTIONS_AVAILABLE = 36 const PF_UNKNOWN1 = 20 const PF_VIRT_FIRMWARE_ENABLED = 21 const PF_VOICEVIEW = 18 const PF_XMMI64_INSTRUCTIONS_AVAILABLE = 10 const PF_XMMI_INSTRUCTIONS_AVAILABLE = 6 const PF_XSAVE_ENABLED = 17 type PGENERIC_BINDING_INFO = TPGENERIC_BINDING_INFO type PGENERIC_BINDING_ROUTINE_PAIR = TPGENERIC_BINDING_ROUTINE_PAIR type PGENERIC_MAPPING = TPGENERIC_MAPPING type PGESTURECONFIG = TPGESTURECONFIG type PGESTUREINFO = TPGESTUREINFO type PGESTURENOTIFYSTRUCT = TPGESTURENOTIFYSTRUCT type PGETVERSIONINPARAMS = TPGETVERSIONINPARAMS type PGET_CHANGER_PARAMETERS = TPGET_CHANGER_PARAMETERS type PGET_LENGTH_INFORMATION = TPGET_LENGTH_INFORMATION type PGET_MEDIA_TYPES = TPGET_MEDIA_TYPES const PGET_MODULE_HANDLE_EX = 0 type PGET_MODULE_HANDLE_EXA = TPGET_MODULE_HANDLE_EXA type PGET_MODULE_HANDLE_EXW = TPGET_MODULE_HANDLE_EXW type PGET_SYSTEM_WOW64_DIRECTORY_A = TPGET_SYSTEM_WOW64_DIRECTORY_A type PGET_SYSTEM_WOW64_DIRECTORY_W = TPGET_SYSTEM_WOW64_DIRECTORY_W type PGET_VIRTUAL_DISK_INFO = TPGET_VIRTUAL_DISK_INFO type PGLYPHMETRICSFLOAT = TPGLYPHMETRICSFLOAT type PGLYPHSET = TPGLYPHSET type PGRADIENT_RECT = TPGRADIENT_RECT type PGRADIENT_TRIANGLE = TPGRADIENT_TRIANGLE type PGROUP_AFFINITY = TPGROUP_AFFINITY type PGROUP_RELATIONSHIP = TPGROUP_RELATIONSHIP type PGUITHREADINFO = TPGUITHREADINFO type PHALF_PTR = TPHALF_PTR type PHANDLE = TPHANDLE type PHANDLER_ROUTINE = TPHANDLER_ROUTINE type PHANDLETABLE = TPHANDLETABLE type PHARDWAREHOOKSTRUCT = TPHARDWAREHOOKSTRUCT type PHARDWAREINPUT = TPHARDWAREINPUT type PHARDWARE_COUNTER_DATA = TPHARDWARE_COUNTER_DATA type PHARDWARE_COUNTER_TYPE = TPHARDWARE_COUNTER_TYPE type PHCRYPTASYNC = TPHCRYPTASYNC type PHDEVNOTIFY = TPHDEVNOTIFY type PHEAP_SUMMARY = TPHEAP_SUMMARY type PHELPWININFO = TPHELPWININFO type PHELPWININFOA = TPHELPWININFOA type PHELPWININFOW = TPHELPWININFOW type PHISTOGRAM_BUCKET = TPHISTOGRAM_BUCKET type PHKEY = TPHKEY type PHMAC_INFO = TPHMAC_INFO type PHOSTENT = TPHOSTENT type PHPOWERNOTIFY = TPHPOWERNOTIFY type PHSZPAIR = TPHSZPAIR type PHTTPSPolicyCallbackData = TPHTTPSPolicyCallbackData const PHYSICALHEIGHT = 111 const PHYSICALOFFSETX = 112 const PHYSICALOFFSETY = 113 const PHYSICALWIDTH = 110 type PICONINFO = TPICONINFO type PICONINFOEX = TPICONINFOEX type PICONINFOEXA = TPICONINFOEXA type PICONINFOEXW = TPICONINFOEXW type PICONMETRICS = TPICONMETRICS type PICONMETRICSA = TPICONMETRICSA type PICONMETRICSW = TPICONMETRICSW const PIDDI_THUMBNAIL = 2 const PIDDSI_BYTECOUNT = 4 const PIDDSI_CATEGORY = 2 const PIDDSI_COMPANY = 15 const PIDDSI_DOCPARTS = 13 const PIDDSI_HEADINGPAIR = 12 const PIDDSI_HIDDENCOUNT = 9 const PIDDSI_LINECOUNT = 5 const PIDDSI_LINKSDIRTY = 16 const PIDDSI_MANAGER = 14 const PIDDSI_MMCLIPCOUNT = 10 const PIDDSI_NOTECOUNT = 8 const PIDDSI_PARCOUNT = 6 const PIDDSI_PRESFORMAT = 3 const PIDDSI_SCALE = 11 const PIDDSI_SLIDECOUNT = 7 type PIDEREGS = TPIDEREGS const PIDMSI_COPYRIGHT = 11 const PIDMSI_EDITOR = 2 const PIDMSI_OWNER = 8 const PIDMSI_PRODUCTION = 10 const PIDMSI_PROJECT = 6 const PIDMSI_RATING = 9 const PIDMSI_SEQUENCE_NO = 5 const PIDMSI_SOURCE = 4 const PIDMSI_STATUS = 7 const PIDMSI_SUPPLIER = 3 const PIDSI_APPNAME = 18 const PIDSI_AUTHOR = 4 const PIDSI_CHARCOUNT = 16 const PIDSI_COMMENTS = 6 const PIDSI_CREATE_DTM = 12 const PIDSI_DOC_SECURITY = 19 const PIDSI_EDITTIME = 10 const PIDSI_KEYWORDS = 5 const PIDSI_LASTAUTHOR = 8 const PIDSI_LASTPRINTED = 11 const PIDSI_LASTSAVE_DTM = 13 const PIDSI_PAGECOUNT = 14 const PIDSI_REVNUMBER = 9 const PIDSI_SUBJECT = 3 const PIDSI_TEMPLATE = 7 const PIDSI_THUMBNAIL = 17 const PIDSI_TITLE = 2 const PIDSI_WORDCOUNT = 15 const PID_BEHAVIOR = 2147483651 const PID_CODEPAGE = 1 const PID_DICTIONARY = 0 const PID_FIRST_NAME_DEFAULT = 4095 const PID_FIRST_USABLE = 2 const PID_ILLEGAL = 4294967295 const PID_LOCALE = 2147483648 const PID_MAX_READONLY = 3221225471 const PID_MIN_READONLY = 2147483648 const PID_MODIFY_TIME = 2147483649 const PID_SECURITY = 2147483650 type PIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = TPIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY type PIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = TPIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY type PIMAGE_ARCHITECTURE_ENTRY = TPIMAGE_ARCHITECTURE_ENTRY type PIMAGE_ARCHITECTURE_HEADER = TPIMAGE_ARCHITECTURE_HEADER type PIMAGE_ARCHIVE_MEMBER_HEADER = TPIMAGE_ARCHIVE_MEMBER_HEADER type PIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = TPIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY type PIMAGE_ARM_RUNTIME_FUNCTION_ENTRY = TPIMAGE_ARM_RUNTIME_FUNCTION_ENTRY type PIMAGE_AUX_SYMBOL = TPIMAGE_AUX_SYMBOL type PIMAGE_AUX_SYMBOL_EX = TPIMAGE_AUX_SYMBOL_EX type PIMAGE_AUX_SYMBOL_TOKEN_DEF = TPIMAGE_AUX_SYMBOL_TOKEN_DEF type PIMAGE_BASE_RELOCATION = TPIMAGE_BASE_RELOCATION type PIMAGE_BOUND_FORWARDER_REF = TPIMAGE_BOUND_FORWARDER_REF type PIMAGE_BOUND_IMPORT_DESCRIPTOR = TPIMAGE_BOUND_IMPORT_DESCRIPTOR type PIMAGE_CE_RUNTIME_FUNCTION_ENTRY = TPIMAGE_CE_RUNTIME_FUNCTION_ENTRY type PIMAGE_COFF_SYMBOLS_HEADER = TPIMAGE_COFF_SYMBOLS_HEADER type PIMAGE_COR20_HEADER = TPIMAGE_COR20_HEADER type PIMAGE_DATA_DIRECTORY = TPIMAGE_DATA_DIRECTORY type PIMAGE_DEBUG_DIRECTORY = TPIMAGE_DEBUG_DIRECTORY type PIMAGE_DEBUG_MISC = TPIMAGE_DEBUG_MISC type PIMAGE_DELAYLOAD_DESCRIPTOR = TPIMAGE_DELAYLOAD_DESCRIPTOR type PIMAGE_DOS_HEADER = TPIMAGE_DOS_HEADER type PIMAGE_EXPORT_DIRECTORY = TPIMAGE_EXPORT_DIRECTORY type PIMAGE_FILE_HEADER = TPIMAGE_FILE_HEADER type PIMAGE_FUNCTION_ENTRY = TPIMAGE_FUNCTION_ENTRY type PIMAGE_FUNCTION_ENTRY64 = TPIMAGE_FUNCTION_ENTRY64 type PIMAGE_IA64_RUNTIME_FUNCTION_ENTRY = TPIMAGE_IA64_RUNTIME_FUNCTION_ENTRY type PIMAGE_IMPORT_BY_NAME = TPIMAGE_IMPORT_BY_NAME type PIMAGE_IMPORT_DESCRIPTOR = TPIMAGE_IMPORT_DESCRIPTOR type PIMAGE_LINENUMBER = TPIMAGE_LINENUMBER type PIMAGE_LOAD_CONFIG_DIRECTORY = TPIMAGE_LOAD_CONFIG_DIRECTORY type PIMAGE_LOAD_CONFIG_DIRECTORY32 = TPIMAGE_LOAD_CONFIG_DIRECTORY32 type PIMAGE_LOAD_CONFIG_DIRECTORY64 = TPIMAGE_LOAD_CONFIG_DIRECTORY64 type PIMAGE_NT_HEADERS = TPIMAGE_NT_HEADERS type PIMAGE_NT_HEADERS32 = TPIMAGE_NT_HEADERS32 type PIMAGE_NT_HEADERS64 = TPIMAGE_NT_HEADERS64 type PIMAGE_OPTIONAL_HEADER = TPIMAGE_OPTIONAL_HEADER type PIMAGE_OPTIONAL_HEADER32 = TPIMAGE_OPTIONAL_HEADER32 type PIMAGE_OPTIONAL_HEADER64 = TPIMAGE_OPTIONAL_HEADER64 type PIMAGE_OS2_HEADER = TPIMAGE_OS2_HEADER type PIMAGE_RELOCATION = TPIMAGE_RELOCATION type PIMAGE_RESOURCE_DATA_ENTRY = TPIMAGE_RESOURCE_DATA_ENTRY type PIMAGE_RESOURCE_DIRECTORY = TPIMAGE_RESOURCE_DIRECTORY type PIMAGE_RESOURCE_DIRECTORY_ENTRY = TPIMAGE_RESOURCE_DIRECTORY_ENTRY type PIMAGE_RESOURCE_DIRECTORY_STRING = TPIMAGE_RESOURCE_DIRECTORY_STRING type PIMAGE_RESOURCE_DIR_STRING_U = TPIMAGE_RESOURCE_DIR_STRING_U type PIMAGE_ROM_HEADERS = TPIMAGE_ROM_HEADERS type PIMAGE_ROM_OPTIONAL_HEADER = TPIMAGE_ROM_OPTIONAL_HEADER type PIMAGE_RUNTIME_FUNCTION_ENTRY = TPIMAGE_RUNTIME_FUNCTION_ENTRY type PIMAGE_SECTION_HEADER = TPIMAGE_SECTION_HEADER type PIMAGE_SEPARATE_DEBUG_HEADER = TPIMAGE_SEPARATE_DEBUG_HEADER type PIMAGE_SYMBOL = TPIMAGE_SYMBOL type PIMAGE_SYMBOL_EX = TPIMAGE_SYMBOL_EX type PIMAGE_THUNK_DATA = TPIMAGE_THUNK_DATA type PIMAGE_THUNK_DATA32 = TPIMAGE_THUNK_DATA32 type PIMAGE_THUNK_DATA64 = TPIMAGE_THUNK_DATA64 type PIMAGE_TLS_CALLBACK = TPIMAGE_TLS_CALLBACK type PIMAGE_TLS_DIRECTORY = TPIMAGE_TLS_DIRECTORY type PIMAGE_TLS_DIRECTORY32 = TPIMAGE_TLS_DIRECTORY32 type PIMAGE_TLS_DIRECTORY64 = TPIMAGE_TLS_DIRECTORY64 type PIMAGE_VXD_HEADER = TPIMAGE_VXD_HEADER type PIMECHARPOSITION = TPIMECHARPOSITION type PIMEMENUITEMINFO = TPIMEMENUITEMINFO type PIMEMENUITEMINFOA = TPIMEMENUITEMINFOA type PIMEMENUITEMINFOW = TPIMEMENUITEMINFOW type PINIT_ONCE = TPINIT_ONCE type PINIT_ONCE_FN = TPINIT_ONCE_FN type PINPUT = TPINPUT type PINPUT_INJECTION_VALUE = TPINPUT_INJECTION_VALUE type PINPUT_RECORD = TPINPUT_RECORD type PINT = TPINT type PINT16 = TPINT16 type PINT32 = TPINT32 type PINT64 = TPINT64 type PINT8 = TPINT8 type PINT_PTR = TPINT_PTR type PIN_ADDR = TPIN_ADDR type PIO_COUNTERS = TPIO_COUNTERS const PIPE_ACCEPT_REMOTE_CLIENTS = 0 const PIPE_ACCESS_DUPLEX = 3 const PIPE_ACCESS_INBOUND = 1 const PIPE_ACCESS_OUTBOUND = 2 const PIPE_CLIENT_END = 0 const PIPE_NOWAIT = 1 const PIPE_READMODE_BYTE = 0 const PIPE_READMODE_MESSAGE = 2 const PIPE_REJECT_REMOTE_CLIENTS = 8 const PIPE_SERVER_END = 1 const PIPE_TYPE_BYTE = 0 const PIPE_TYPE_MESSAGE = 4 const PIPE_UNLIMITED_INSTANCES = 255 const PIPE_WAIT = 0 type PIP_MREQ = TPIP_MREQ type PISECURITY_DESCRIPTOR = TPISECURITY_DESCRIPTOR type PISECURITY_DESCRIPTOR_RELATIVE = TPISECURITY_DESCRIPTOR_RELATIVE type PISID = TPISID type PIXELFORMATDESCRIPTOR = TPIXELFORMATDESCRIPTOR const PI_DOCFILECLSIDLOOKUP = 0 type PI_FLAGS = TPI_FLAGS type PJOBOBJECT_ASSOCIATE_COMPLETION_PORT = TPJOBOBJECT_ASSOCIATE_COMPLETION_PORT type PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION = TPJOBOBJECT_BASIC_ACCOUNTING_INFORMATION type PJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION = TPJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION type PJOBOBJECT_BASIC_LIMIT_INFORMATION = TPJOBOBJECT_BASIC_LIMIT_INFORMATION type PJOBOBJECT_BASIC_PROCESS_ID_LIST = TPJOBOBJECT_BASIC_PROCESS_ID_LIST type PJOBOBJECT_BASIC_UI_RESTRICTIONS = TPJOBOBJECT_BASIC_UI_RESTRICTIONS type PJOBOBJECT_CPU_RATE_CONTROL_INFORMATION = TPJOBOBJECT_CPU_RATE_CONTROL_INFORMATION type PJOBOBJECT_END_OF_JOB_TIME_INFORMATION = TPJOBOBJECT_END_OF_JOB_TIME_INFORMATION type PJOBOBJECT_EXTENDED_LIMIT_INFORMATION = TPJOBOBJECT_EXTENDED_LIMIT_INFORMATION type PJOBOBJECT_JOBSET_INFORMATION = TPJOBOBJECT_JOBSET_INFORMATION type PJOBOBJECT_LIMIT_VIOLATION_INFORMATION = TPJOBOBJECT_LIMIT_VIOLATION_INFORMATION type PJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION = TPJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION type PJOBOBJECT_SECURITY_LIMIT_INFORMATION = TPJOBOBJECT_SECURITY_LIMIT_INFORMATION type PJOB_INFO_1 = TPJOB_INFO_1 type PJOB_INFO_1A = TPJOB_INFO_1A type PJOB_INFO_1W = TPJOB_INFO_1W type PJOB_INFO_2 = TPJOB_INFO_2 type PJOB_INFO_2A = TPJOB_INFO_2A type PJOB_INFO_2W = TPJOB_INFO_2W type PJOB_INFO_3 = TPJOB_INFO_3 type PJOB_SET_ARRAY = TPJOB_SET_ARRAY type PJOYCAPS = TPJOYCAPS type PJOYCAPS2 = TPJOYCAPS2 type PJOYCAPS2A = TPJOYCAPS2A type PJOYCAPS2W = TPJOYCAPS2W type PJOYCAPSA = TPJOYCAPSA type PJOYCAPSW = TPJOYCAPSW type PJOYINFO = TPJOYINFO type PJOYINFOEX = TPJOYINFOEX type PKAFFINITY = TPKAFFINITY type PKBDLLHOOKSTRUCT = TPKBDLLHOOKSTRUCT type PKCRM_MARSHAL_HEADER = TPKCRM_MARSHAL_HEADER type PKCRM_PROTOCOL_BLOB = TPKCRM_PROTOCOL_BLOB type PKCRM_TRANSACTION_BLOB = TPKCRM_TRANSACTION_BLOB const PKCS12_ALLOW_OVERWRITE_KEY = 16384 const PKCS12_ALWAYS_CNG_KSP = 512 const PKCS12_CONFIG_REGPATH = "Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PFX" const PKCS12_DISABLE_ENCRYPT_CERTIFICATES = 256 const PKCS12_ENCRYPT_CERTIFICATES = 512 const PKCS12_ENCRYPT_CERTIFICATES_VALUE_NAME = "EncryptCertificates" const PKCS12_EXPORT_ECC_CURVE_OID = 8192 const PKCS12_EXPORT_ECC_CURVE_PARAMETERS = 4096 const PKCS12_EXPORT_PBES2_PARAMS = 128 const PKCS12_EXPORT_RESERVED_MASK = 4294901760 const PKCS12_EXPORT_SILENT = 64 const PKCS12_IMPORT_RESERVED_MASK = 4294901760 const PKCS12_IMPORT_SILENT = 64 const PKCS12_INCLUDE_EXTENDED_PROPERTIES = 16 const PKCS12_NO_PERSIST_KEY = 32768 const PKCS12_OBJECT_LOCATOR_ALL_IMPORT_FLAGS = 33360 const PKCS12_ONLY_CERTIFICATES = 1024 const PKCS12_ONLY_CERTIFICATES_CONTAINER_NAME = "PfxContainer" const PKCS12_ONLY_CERTIFICATES_PROVIDER_NAME = "PfxProvider" const PKCS12_ONLY_CERTIFICATES_PROVIDER_TYPE = 0 const PKCS12_ONLY_NOT_ENCRYPTED_CERTIFICATES = 2048 const PKCS12_PBES2_ALG_AES256_SHA256 = "AES256-SHA256" type PKCS12_PBES2_EXPORT_PARAMS = TPKCS12_PBES2_EXPORT_PARAMS const PKCS12_PBKDF2_ID_HMAC_SHA1 = "1.2.840.113549.2.7" const PKCS12_PBKDF2_ID_HMAC_SHA256 = "1.2.840.113549.2.9" const PKCS12_PBKDF2_ID_HMAC_SHA384 = "1.2.840.113549.2.10" const PKCS12_PBKDF2_ID_HMAC_SHA512 = "1.2.840.113549.2.11" const PKCS12_PREFER_CNG_KSP = 256 const PKCS12_PROTECT_TO_DOMAIN_SIDS = 32 const PKCS12_VIRTUAL_ISOLATION_KEY = 65536 const PKCS5_PADDING = 1 const PKCS_7_ASN_ENCODING = 65536 const PKCS_7_NDR_ENCODING = 131072 const PKCS_RSA_SSA_PSS_TRAILER_FIELD_BC = 1 type PKEYBDINPUT = TPKEYBDINPUT type PKEY_EVENT_RECORD = TPKEY_EVENT_RECORD type PKEY_TYPE_SUBTYPE = TPKEY_TYPE_SUBTYPE type PKSPIN_LOCK = TPKSPIN_LOCK type PKTMOBJECT_CURSOR = TPKTMOBJECT_CURSOR type PKTMOBJECT_TYPE = TPKTMOBJECT_TYPE const PLAINTEXTKEYBLOB = 8 type PLANA_ENUM = TPLANA_ENUM const PLANES = 14 type PLARGE_INTEGER = TPLARGE_INTEGER type PLASTINPUTINFO = TPLASTINPUTINFO type PLAYERPLANEDESCRIPTOR = TPLAYERPLANEDESCRIPTOR type PLCID = TPLCID type PLDT_ENTRY = TPLDT_ENTRY type PLEX_READ_DATA_REQUEST = TPLEX_READ_DATA_REQUEST type PLINGER = TPLINGER type PLINKSRCDESCRIPTOR = TPLINKSRCDESCRIPTOR type PLIST_ENTRY = TPLIST_ENTRY type PLIST_ENTRY32 = TPLIST_ENTRY32 type PLIST_ENTRY64 = TPLIST_ENTRY64 type PLOCALESIGNATURE = TPLOCALESIGNATURE type PLOGBRUSH = TPLOGBRUSH type PLOGBRUSH32 = TPLOGBRUSH32 type PLOGFONT = TPLOGFONT type PLOGFONTA = TPLOGFONTA type PLOGFONTW = TPLOGFONTW type PLOGPALETTE = TPLOGPALETTE type PLOGPEN = TPLOGPEN type PLONG = TPLONG type PLONG32 = TPLONG32 type PLONG64 = TPLONG64 type PLONGLONG = TPLONGLONG type PLONG_PTR = TPLONG_PTR type PLOOKUP_STREAM_FROM_CLUSTER_ENTRY = TPLOOKUP_STREAM_FROM_CLUSTER_ENTRY type PLOOKUP_STREAM_FROM_CLUSTER_INPUT = TPLOOKUP_STREAM_FROM_CLUSTER_INPUT type PLOOKUP_STREAM_FROM_CLUSTER_OUTPUT = TPLOOKUP_STREAM_FROM_CLUSTER_OUTPUT type PLUID = TPLUID type PLUID_AND_ATTRIBUTES = TPLUID_AND_ATTRIBUTES type PLUID_AND_ATTRIBUTES_ARRAY = TPLUID_AND_ATTRIBUTES_ARRAY type PM128A = TPM128A type PMANDATORY_LEVEL = TPMANDATORY_LEVEL type PMARK_HANDLE_INFO = TPMARK_HANDLE_INFO const PMB_ACTIVE = 1 type PMCI_ANIM_OPEN_PARMS = TPMCI_ANIM_OPEN_PARMS type PMCI_ANIM_OPEN_PARMSA = TPMCI_ANIM_OPEN_PARMSA type PMCI_ANIM_OPEN_PARMSW = TPMCI_ANIM_OPEN_PARMSW type PMCI_ANIM_PLAY_PARMS = TPMCI_ANIM_PLAY_PARMS type PMCI_ANIM_RECT_PARMS = TPMCI_ANIM_RECT_PARMS type PMCI_ANIM_STEP_PARMS = TPMCI_ANIM_STEP_PARMS type PMCI_ANIM_UPDATE_PARMS = TPMCI_ANIM_UPDATE_PARMS type PMCI_ANIM_WINDOW_PARMS = TPMCI_ANIM_WINDOW_PARMS type PMCI_ANIM_WINDOW_PARMSA = TPMCI_ANIM_WINDOW_PARMSA type PMCI_ANIM_WINDOW_PARMSW = TPMCI_ANIM_WINDOW_PARMSW type PMCI_BREAK_PARMS = TPMCI_BREAK_PARMS type PMCI_GENERIC_PARMS = TPMCI_GENERIC_PARMS type PMCI_GETDEVCAPS_PARMS = TPMCI_GETDEVCAPS_PARMS type PMCI_LOAD_PARMS = TPMCI_LOAD_PARMS type PMCI_LOAD_PARMSA = TPMCI_LOAD_PARMSA type PMCI_LOAD_PARMSW = TPMCI_LOAD_PARMSW type PMCI_OPEN_PARMS = TPMCI_OPEN_PARMS type PMCI_OPEN_PARMSA = TPMCI_OPEN_PARMSA type PMCI_OPEN_PARMSW = TPMCI_OPEN_PARMSW type PMCI_OVLY_LOAD_PARMS = TPMCI_OVLY_LOAD_PARMS type PMCI_OVLY_LOAD_PARMSA = TPMCI_OVLY_LOAD_PARMSA type PMCI_OVLY_LOAD_PARMSW = TPMCI_OVLY_LOAD_PARMSW type PMCI_OVLY_OPEN_PARMS = TPMCI_OVLY_OPEN_PARMS type PMCI_OVLY_OPEN_PARMSA = TPMCI_OVLY_OPEN_PARMSA type PMCI_OVLY_OPEN_PARMSW = TPMCI_OVLY_OPEN_PARMSW type PMCI_OVLY_RECT_PARMS = TPMCI_OVLY_RECT_PARMS type PMCI_OVLY_SAVE_PARMS = TPMCI_OVLY_SAVE_PARMS type PMCI_OVLY_SAVE_PARMSA = TPMCI_OVLY_SAVE_PARMSA type PMCI_OVLY_SAVE_PARMSW = TPMCI_OVLY_SAVE_PARMSW type PMCI_OVLY_WINDOW_PARMS = TPMCI_OVLY_WINDOW_PARMS type PMCI_OVLY_WINDOW_PARMSA = TPMCI_OVLY_WINDOW_PARMSA type PMCI_OVLY_WINDOW_PARMSW = TPMCI_OVLY_WINDOW_PARMSW type PMCI_PLAY_PARMS = TPMCI_PLAY_PARMS type PMCI_SAVE_PARMS = TPMCI_SAVE_PARMS type PMCI_SAVE_PARMSA = TPMCI_SAVE_PARMSA type PMCI_SAVE_PARMSW = TPMCI_SAVE_PARMSW type PMCI_SEEK_PARMS = TPMCI_SEEK_PARMS type PMCI_SEQ_SET_PARMS = TPMCI_SEQ_SET_PARMS type PMCI_SET_PARMS = TPMCI_SET_PARMS type PMCI_STATUS_PARMS = TPMCI_STATUS_PARMS type PMCI_SYSINFO_PARMS = TPMCI_SYSINFO_PARMS type PMCI_SYSINFO_PARMSA = TPMCI_SYSINFO_PARMSA type PMCI_SYSINFO_PARMSW = TPMCI_SYSINFO_PARMSW type PMCI_VD_ESCAPE_PARMS = TPMCI_VD_ESCAPE_PARMS type PMCI_VD_ESCAPE_PARMSA = TPMCI_VD_ESCAPE_PARMSA type PMCI_VD_ESCAPE_PARMSW = TPMCI_VD_ESCAPE_PARMSW type PMCI_VD_PLAY_PARMS = TPMCI_VD_PLAY_PARMS type PMCI_VD_STEP_PARMS = TPMCI_VD_STEP_PARMS type PMCI_WAVE_DELETE_PARMS = TPMCI_WAVE_DELETE_PARMS type PMCI_WAVE_OPEN_PARMS = TPMCI_WAVE_OPEN_PARMS type PMCI_WAVE_OPEN_PARMSA = TPMCI_WAVE_OPEN_PARMSA type PMCI_WAVE_OPEN_PARMSW = TPMCI_WAVE_OPEN_PARMSW type PMCI_WAVE_SET_PARMS = TPMCI_WAVE_SET_PARMS type PMDINEXTMENU = TPMDINEXTMENU type PMEASUREITEMSTRUCT = TPMEASUREITEMSTRUCT type PMEDIA_TYPE = TPMEDIA_TYPE type PMEMORY_BASIC_INFORMATION = TPMEMORY_BASIC_INFORMATION type PMEMORY_BASIC_INFORMATION32 = TPMEMORY_BASIC_INFORMATION32 type PMEMORY_BASIC_INFORMATION64 = TPMEMORY_BASIC_INFORMATION64 type PMEMORY_PRIORITY_INFORMATION = TPMEMORY_PRIORITY_INFORMATION type PMEM_ADDRESS_REQUIREMENTS = TPMEM_ADDRESS_REQUIREMENTS type PMEM_EXTENDED_PARAMETER = TPMEM_EXTENDED_PARAMETER type PMEM_EXTENDED_PARAMETER_TYPE = TPMEM_EXTENDED_PARAMETER_TYPE type PMEM_SECTION_EXTENDED_PARAMETER_TYPE = TPMEM_SECTION_EXTENDED_PARAMETER_TYPE type PMENUBARINFO = TPMENUBARINFO type PMENUGETOBJECTINFO = TPMENUGETOBJECTINFO type PMENUITEMTEMPLATE = TPMENUITEMTEMPLATE type PMENUITEMTEMPLATEHEADER = TPMENUITEMTEMPLATEHEADER type PMENU_EVENT_RECORD = TPMENU_EVENT_RECORD type PMERGE_VIRTUAL_DISK_PARAMETERS = TPMERGE_VIRTUAL_DISK_PARAMETERS type PMESSAGE_RESOURCE_BLOCK = TPMESSAGE_RESOURCE_BLOCK type PMESSAGE_RESOURCE_DATA = TPMESSAGE_RESOURCE_DATA type PMESSAGE_RESOURCE_ENTRY = TPMESSAGE_RESOURCE_ENTRY type PMETAHEADER = TPMETAHEADER type PMETARECORD = TPMETARECORD const PME_CURRENT_VERSION = 1 const PME_FAILFAST_ON_COMMIT_FAIL_DISABLE = 0 const PME_FAILFAST_ON_COMMIT_FAIL_ENABLE = 1 type PMFT_ENUM_DATA = TPMFT_ENUM_DATA type PMIDIHDR = TPMIDIHDR type PMIDIINCAPS = TPMIDIINCAPS type PMIDIINCAPS2 = TPMIDIINCAPS2 type PMIDIINCAPS2A = TPMIDIINCAPS2A type PMIDIINCAPS2W = TPMIDIINCAPS2W type PMIDIINCAPSA = TPMIDIINCAPSA type PMIDIINCAPSW = TPMIDIINCAPSW type PMIDIOUTCAPS = TPMIDIOUTCAPS type PMIDIOUTCAPS2 = TPMIDIOUTCAPS2 type PMIDIOUTCAPS2A = TPMIDIOUTCAPS2A type PMIDIOUTCAPS2W = TPMIDIOUTCAPS2W type PMIDIOUTCAPSA = TPMIDIOUTCAPSA type PMIDIOUTCAPSW = TPMIDIOUTCAPSW type PMIDL_SERVER_INFO = TPMIDL_SERVER_INFO type PMIDL_STUBLESS_PROXY_INFO = TPMIDL_STUBLESS_PROXY_INFO type PMIDL_STUB_DESC = TPMIDL_STUB_DESC type PMIDL_STUB_MESSAGE = TPMIDL_STUB_MESSAGE type PMIDL_SYNTAX_INFO = TPMIDL_SYNTAX_INFO type PMIDL_XMIT_TYPE = TPMIDL_XMIT_TYPE type PMINIMIZEDMETRICS = TPMINIMIZEDMETRICS type PMINMAXINFO = TPMINMAXINFO type PMIRROR_VIRTUAL_DISK_PARAMETERS = TPMIRROR_VIRTUAL_DISK_PARAMETERS type PMIXERCAPS = TPMIXERCAPS type PMIXERCAPS2 = TPMIXERCAPS2 type PMIXERCAPS2A = TPMIXERCAPS2A type PMIXERCAPS2W = TPMIXERCAPS2W type PMIXERCAPSA = TPMIXERCAPSA type PMIXERCAPSW = TPMIXERCAPSW type PMIXERCONTROL = TPMIXERCONTROL type PMIXERCONTROLA = TPMIXERCONTROLA type PMIXERCONTROLDETAILS = TPMIXERCONTROLDETAILS type PMIXERCONTROLDETAILS_BOOLEAN = TPMIXERCONTROLDETAILS_BOOLEAN type PMIXERCONTROLDETAILS_LISTTEXT = TPMIXERCONTROLDETAILS_LISTTEXT type PMIXERCONTROLDETAILS_LISTTEXTA = TPMIXERCONTROLDETAILS_LISTTEXTA type PMIXERCONTROLDETAILS_LISTTEXTW = TPMIXERCONTROLDETAILS_LISTTEXTW type PMIXERCONTROLDETAILS_SIGNED = TPMIXERCONTROLDETAILS_SIGNED type PMIXERCONTROLDETAILS_UNSIGNED = TPMIXERCONTROLDETAILS_UNSIGNED type PMIXERCONTROLW = TPMIXERCONTROLW type PMIXERLINE = TPMIXERLINE type PMIXERLINEA = TPMIXERLINEA type PMIXERLINECONTROLS = TPMIXERLINECONTROLS type PMIXERLINECONTROLSA = TPMIXERLINECONTROLSA type PMIXERLINECONTROLSW = TPMIXERLINECONTROLSW type PMIXERLINEW = TPMIXERLINEW type PMMCKINFO = TPMMCKINFO type PMMIOINFO = TPMMIOINFO type PMMTIME = TPMMTIME type PMODEMDEVCAPS = TPMODEMDEVCAPS type PMODEMSETTINGS = TPMODEMSETTINGS type PMODIFY_VHDSET_FLAG = TPMODIFY_VHDSET_FLAG type PMODIFY_VHDSET_PARAMETERS = TPMODIFY_VHDSET_PARAMETERS type PMODIFY_VHDSET_VERSION = TPMODIFY_VHDSET_VERSION type PMONCBSTRUCT = TPMONCBSTRUCT type PMONCONVSTRUCT = TPMONCONVSTRUCT type PMONERRSTRUCT = TPMONERRSTRUCT type PMONHSZSTRUCT = TPMONHSZSTRUCT type PMONHSZSTRUCTA = TPMONHSZSTRUCTA type PMONHSZSTRUCTW = TPMONHSZSTRUCTW type PMONITOR_DISPLAY_STATE = TPMONITOR_DISPLAY_STATE type PMONITOR_INFO_1 = TPMONITOR_INFO_1 type PMONITOR_INFO_1A = TPMONITOR_INFO_1A type PMONITOR_INFO_1W = TPMONITOR_INFO_1W type PMONITOR_INFO_2 = TPMONITOR_INFO_2 type PMONITOR_INFO_2A = TPMONITOR_INFO_2A type PMONITOR_INFO_2W = TPMONITOR_INFO_2W type PMONLINKSTRUCT = TPMONLINKSTRUCT type PMONMSGSTRUCT = TPMONMSGSTRUCT type PMOUSEHOOKSTRUCT = TPMOUSEHOOKSTRUCT type PMOUSEHOOKSTRUCTEX = TPMOUSEHOOKSTRUCTEX type PMOUSEINPUT = TPMOUSEINPUT type PMOUSEMOVEPOINT = TPMOUSEMOVEPOINT type PMOUSE_EVENT_RECORD = TPMOUSE_EVENT_RECORD type PMOVE_FILE_DATA = TPMOVE_FILE_DATA type PMOVE_FILE_RECORD_DATA = TPMOVE_FILE_RECORD_DATA type PMSG = TPMSG type PMSGBOXPARAMS = TPMSGBOXPARAMS type PMSGBOXPARAMSA = TPMSGBOXPARAMSA type PMSGBOXPARAMSW = TPMSGBOXPARAMSW type PMSLLHOOKSTRUCT = TPMSLLHOOKSTRUCT type PMULTIKEYHELP = TPMULTIKEYHELP type PMULTIKEYHELPA = TPMULTIKEYHELPA type PMULTIKEYHELPW = TPMULTIKEYHELPW const PM_NOREMOVE = 0 const PM_NOYIELD = 2 const PM_QS_INPUT = 470220800 const PM_QS_PAINT = 2097152 const PM_QS_POSTMESSAGE = 9961472 const PM_QS_SENDMESSAGE = 4194304 const PM_REMOVE = 1 type PNAME_BUFFER = TPNAME_BUFFER type PNCB = TPNCB type PNCRYPT_CIPHER_PADDING_INFO = TPNCRYPT_CIPHER_PADDING_INFO type PNCRYPT_KEY_BLOB_HEADER = TPNCRYPT_KEY_BLOB_HEADER type PNC_ADDRESS = TPNC_ADDRESS type PNCryptBuffer = TPNCryptBuffer type PNCryptBufferDesc = TPNCryptBufferDesc type PNDR_ASYNC_MESSAGE = TPNDR_ASYNC_MESSAGE type PNDR_CORRELATION_INFO = TPNDR_CORRELATION_INFO type PNEWTEXTMETRIC = TPNEWTEXTMETRIC type PNEWTEXTMETRICA = TPNEWTEXTMETRICA type PNEWTEXTMETRICW = TPNEWTEXTMETRICW type PNONCLIENTMETRICS = TPNONCLIENTMETRICS type PNONCLIENTMETRICSA = TPNONCLIENTMETRICSA type PNONCLIENTMETRICSW = TPNONCLIENTMETRICSW type PNON_PAGED_DEBUG_INFO = TPNON_PAGED_DEBUG_INFO type PNOTIFYICONDATA = TPNOTIFYICONDATA type PNOTIFYICONDATAA = TPNOTIFYICONDATAA type PNOTIFYICONDATAW = TPNOTIFYICONDATAW type PNOTIFYICONIDENTIFIER = TPNOTIFYICONIDENTIFIER type PNOTIFY_USER_POWER_SETTING = TPNOTIFY_USER_POWER_SETTING type PNTFS_EXTENDED_VOLUME_DATA = TPNTFS_EXTENDED_VOLUME_DATA type PNTFS_FILE_RECORD_INPUT_BUFFER = TPNTFS_FILE_RECORD_INPUT_BUFFER type PNTFS_FILE_RECORD_OUTPUT_BUFFER = TPNTFS_FILE_RECORD_OUTPUT_BUFFER type PNTFS_STATISTICS = TPNTFS_STATISTICS type PNTFS_VOLUME_DATA_BUFFER = TPNTFS_VOLUME_DATA_BUFFER type PNTSTATUS = TPNTSTATUS type PNT_TIB = TPNT_TIB type PNT_TIB32 = TPNT_TIB32 type PNT_TIB64 = TPNT_TIB64 type PNUMA_NODE_RELATIONSHIP = TPNUMA_NODE_RELATIONSHIP type PNZCH = TPNZCH type PNZTCH = TPNZTCH type PNZWCH = TPNZWCH type POBJECTDESCRIPTOR = TPOBJECTDESCRIPTOR type POBJECT_TYPE_LIST = TPOBJECT_TYPE_LIST type POCSP_BASIC_RESPONSE_ENTRY = TPOCSP_BASIC_RESPONSE_ENTRY type POCSP_BASIC_RESPONSE_INFO = TPOCSP_BASIC_RESPONSE_INFO type POCSP_BASIC_REVOKED_INFO = TPOCSP_BASIC_REVOKED_INFO type POCSP_BASIC_SIGNED_RESPONSE_INFO = TPOCSP_BASIC_SIGNED_RESPONSE_INFO type POCSP_CERT_ID = TPOCSP_CERT_ID type POCSP_REQUEST_ENTRY = TPOCSP_REQUEST_ENTRY type POCSP_REQUEST_INFO = TPOCSP_REQUEST_INFO type POCSP_RESPONSE_INFO = TPOCSP_RESPONSE_INFO type POCSP_SIGNATURE_INFO = TPOCSP_SIGNATURE_INFO type POCSP_SIGNED_REQUEST_INFO = TPOCSP_SIGNED_REQUEST_INFO type POFSTRUCT = TPOFSTRUCT type POINT = TPOINT type POINTER_64_INT = TPOINTER_64_INT type POINTER_BUTTON_CHANGE_TYPE = TPOINTER_BUTTON_CHANGE_TYPE type POINTER_DEVICE_CURSOR_INFO = TPOINTER_DEVICE_CURSOR_INFO type POINTER_DEVICE_CURSOR_TYPE = TPOINTER_DEVICE_CURSOR_TYPE type POINTER_DEVICE_INFO = TPOINTER_DEVICE_INFO const POINTER_DEVICE_PRODUCT_STRING_MAX = 520 type POINTER_DEVICE_PROPERTY = TPOINTER_DEVICE_PROPERTY type POINTER_DEVICE_TYPE = TPOINTER_DEVICE_TYPE type POINTER_FEEDBACK_MODE = TPOINTER_FEEDBACK_MODE type POINTER_FLAGS = TPOINTER_FLAGS const POINTER_FLAG_CANCELED = 32768 const POINTER_FLAG_CAPTURECHANGED = 2097152 const POINTER_FLAG_CONFIDENCE = 16384 const POINTER_FLAG_DOWN = 65536 const POINTER_FLAG_FIFTHBUTTON = 256 const POINTER_FLAG_FIRSTBUTTON = 16 const POINTER_FLAG_FOURTHBUTTON = 128 const POINTER_FLAG_HASTRANSFORM = 4194304 const POINTER_FLAG_HWHEEL = 1048576 const POINTER_FLAG_INCONTACT = 4 const POINTER_FLAG_INRANGE = 2 const POINTER_FLAG_NEW = 1 const POINTER_FLAG_NONE = 0 const POINTER_FLAG_PRIMARY = 8192 const POINTER_FLAG_SECONDBUTTON = 32 const POINTER_FLAG_THIRDBUTTON = 64 const POINTER_FLAG_UP = 262144 const POINTER_FLAG_UPDATE = 131072 const POINTER_FLAG_WHEEL = 524288 type POINTER_INFO = TPOINTER_INFO type POINTER_INPUT_TYPE = TPOINTER_INPUT_TYPE const POINTER_MESSAGE_FLAG_CANCELED = 32768 const POINTER_MESSAGE_FLAG_CONFIDENCE = 16384 const POINTER_MESSAGE_FLAG_FIFTHBUTTON = 256 const POINTER_MESSAGE_FLAG_FIRSTBUTTON = 16 const POINTER_MESSAGE_FLAG_FOURTHBUTTON = 128 const POINTER_MESSAGE_FLAG_INCONTACT = 4 const POINTER_MESSAGE_FLAG_INRANGE = 2 const POINTER_MESSAGE_FLAG_NEW = 1 const POINTER_MESSAGE_FLAG_PRIMARY = 8192 const POINTER_MESSAGE_FLAG_SECONDBUTTON = 32 const POINTER_MESSAGE_FLAG_THIRDBUTTON = 64 const POINTER_MOD_CTRL = 8 const POINTER_MOD_SHIFT = 4 type POINTER_PEN_INFO = TPOINTER_PEN_INFO type POINTER_TOUCH_INFO = TPOINTER_TOUCH_INFO type POINTER_TYPE_INFO = TPOINTER_TYPE_INFO type POINTFLOAT = TPOINTFLOAT type POINTFX = TPOINTFX type POINTL = TPOINTL type POINTS = TPOINTS type POLEUPDATE = TPOLEUPDATE const POLICY_AUDIT_SUBCATEGORY_COUNT = 56 const POLICY_SHOWREASONUI_ALWAYS = 1 const POLICY_SHOWREASONUI_NEVER = 0 const POLICY_SHOWREASONUI_SERVERONLY = 3 const POLICY_SHOWREASONUI_WORKSTATIONONLY = 2 const POLYFILL_LAST = 2 const POLYGONALCAPS = 32 type POLYTEXT = TPOLYTEXT type POLYTEXTA = TPOLYTEXTA type POLYTEXTW = TPOLYTEXTW type POPENCARDNAME = TPOPENCARDNAME type POPENCARDNAMEA = TPOPENCARDNAMEA const POPENCARDNAMEA_EX = 0 type POPENCARDNAMEW = TPOPENCARDNAMEW const POPENCARDNAMEW_EX = 0 const POPENCARDNAME_A = 0 type POPENCARDNAME_EX = TPOPENCARDNAME_EX type POPENCARDNAME_EXA = TPOPENCARDNAME_EXA type POPENCARDNAME_EXW = TPOPENCARDNAME_EXW const POPENCARDNAME_W = 0 type POPENCARD_SEARCH_CRITERIA = TPOPENCARD_SEARCH_CRITERIA type POPENCARD_SEARCH_CRITERIAA = TPOPENCARD_SEARCH_CRITERIAA type POPENCARD_SEARCH_CRITERIAW = TPOPENCARD_SEARCH_CRITERIAW type POPEN_PRINTER_PROPS_INFO = TPOPEN_PRINTER_PROPS_INFO type POPEN_PRINTER_PROPS_INFOA = TPOPEN_PRINTER_PROPS_INFOA type POPEN_PRINTER_PROPS_INFOW = TPOPEN_PRINTER_PROPS_INFOW type POPEN_VIRTUAL_DISK_PARAMETERS = TPOPEN_VIRTUAL_DISK_PARAMETERS type POPERATION_END_PARAMETERS = TPOPERATION_END_PARAMETERS type POPERATION_START_PARAMETERS = TPOPERATION_START_PARAMETERS type PORT_INFO_1 = TPORT_INFO_1 type PORT_INFO_1A = TPORT_INFO_1A type PORT_INFO_1W = TPORT_INFO_1W type PORT_INFO_2 = TPORT_INFO_2 type PORT_INFO_2A = TPORT_INFO_2A type PORT_INFO_2W = TPORT_INFO_2W type PORT_INFO_3 = TPORT_INFO_3 type PORT_INFO_3A = TPORT_INFO_3A type PORT_INFO_3W = TPORT_INFO_3W const PORT_STATUS_DOOR_OPEN = 7 const PORT_STATUS_NO_TONER = 6 const PORT_STATUS_OFFLINE = 1 const PORT_STATUS_OUTPUT_BIN_FULL = 4 const PORT_STATUS_OUT_OF_MEMORY = 9 const PORT_STATUS_PAPER_JAM = 2 const PORT_STATUS_PAPER_OUT = 3 const PORT_STATUS_PAPER_PROBLEM = 5 const PORT_STATUS_POWER_SAVE = 12 const PORT_STATUS_TONER_LOW = 10 const PORT_STATUS_TYPE_ERROR = 1 const PORT_STATUS_TYPE_INFO = 3 const PORT_STATUS_TYPE_WARNING = 2 const PORT_STATUS_USER_INTERVENTION = 8 const PORT_STATUS_WARMING_UP = 11 const PORT_TYPE_NET_ATTACHED = 8 const PORT_TYPE_READ = 2 const PORT_TYPE_REDIRECTED = 4 const PORT_TYPE_WRITE = 1 const POSTSCRIPT_DATA = 37 const POSTSCRIPT_IDENTIFY = 4117 const POSTSCRIPT_IGNORE = 38 const POSTSCRIPT_INJECTION = 4118 const POSTSCRIPT_PASSTHROUGH = 4115 type POSVERSIONINFO = TPOSVERSIONINFO type POSVERSIONINFOA = TPOSVERSIONINFOA type POSVERSIONINFOEX = TPOSVERSIONINFOEX type POSVERSIONINFOEXA = TPOSVERSIONINFOEXA type POSVERSIONINFOEXW = TPOSVERSIONINFOEXW type POSVERSIONINFOW = TPOSVERSIONINFOW type POUTLINETEXTMETRIC = TPOUTLINETEXTMETRIC type POUTLINETEXTMETRICA = TPOUTLINETEXTMETRICA type POUTLINETEXTMETRICW = TPOUTLINETEXTMETRICW type POWERBROADCAST_SETTING = TPOWERBROADCAST_SETTING const POWERBUTTON_ACTION_INDEX_HIBERNATE = 2 const POWERBUTTON_ACTION_INDEX_NOTHING = 0 const POWERBUTTON_ACTION_INDEX_SHUTDOWN = 3 const POWERBUTTON_ACTION_INDEX_SLEEP = 1 const POWERBUTTON_ACTION_VALUE_HIBERNATE = 3 const POWERBUTTON_ACTION_VALUE_NOTHING = 0 const POWERBUTTON_ACTION_VALUE_SHUTDOWN = 6 const POWERBUTTON_ACTION_VALUE_SLEEP = 2 type POWER_ACTION = TPOWER_ACTION const POWER_ACTION_CRITICAL = 2147483648 const POWER_ACTION_DISABLE_WAKES = 1073741824 const POWER_ACTION_HIBERBOOT = 8 const POWER_ACTION_LIGHTEST_FIRST = 268435456 const POWER_ACTION_LOCK_CONSOLE = 536870912 const POWER_ACTION_OVERRIDE_APPS = 4 type POWER_ACTION_POLICY = TPOWER_ACTION_POLICY const POWER_ACTION_PSEUDO_TRANSITION = 134217728 const POWER_ACTION_QUERY_ALLOWED = 1 const POWER_ACTION_UI_ALLOWED = 2 const POWER_DEVICE_IDLE_POLICY_CONSERVATIVE = 1 const POWER_DEVICE_IDLE_POLICY_PERFORMANCE = 0 const POWER_FORCE_TRIGGER_RESET = 2147483648 type POWER_IDLE_RESILIENCY = TPOWER_IDLE_RESILIENCY type POWER_INFORMATION_LEVEL = TPOWER_INFORMATION_LEVEL const POWER_LEVEL_USER_NOTIFY_EXEC = 4 const POWER_LEVEL_USER_NOTIFY_SOUND = 2 const POWER_LEVEL_USER_NOTIFY_TEXT = 1 type POWER_MONITOR_INVOCATION = TPOWER_MONITOR_INVOCATION type POWER_MONITOR_REQUEST_REASON = TPOWER_MONITOR_REQUEST_REASON type POWER_PLATFORM_INFORMATION = TPOWER_PLATFORM_INFORMATION type POWER_PLATFORM_ROLE = TPOWER_PLATFORM_ROLE const POWER_PLATFORM_ROLE_V1 = 1 const POWER_PLATFORM_ROLE_V1_MAX = 1 const POWER_PLATFORM_ROLE_V2 = 2 const POWER_PLATFORM_ROLE_V2_MAX = 1 const POWER_PLATFORM_ROLE_VERSION = 2 const POWER_PLATFORM_ROLE_VERSION_MAX = 1 type POWER_REQUEST_CONTEXT = TPOWER_REQUEST_CONTEXT const POWER_REQUEST_CONTEXT_DETAILED_STRING = 2 const POWER_REQUEST_CONTEXT_SIMPLE_STRING = 1 const POWER_REQUEST_CONTEXT_VERSION = 0 type POWER_REQUEST_TYPE = TPOWER_REQUEST_TYPE type POWER_SESSION_CONNECT = TPOWER_SESSION_CONNECT type POWER_SESSION_RIT_STATE = TPOWER_SESSION_RIT_STATE type POWER_SESSION_TIMEOUTS = TPOWER_SESSION_TIMEOUTS type POWER_SESSION_WINLOGON = TPOWER_SESSION_WINLOGON const POWER_SETTING_VALUE_VERSION = 1 const POWER_SYSTEM_MAXIMUM = 7 const POWER_USER_NOTIFY_BUTTON = 8 const POWER_USER_NOTIFY_FORCED_SHUTDOWN = 32 const POWER_USER_NOTIFY_SHUTDOWN = 16 type POWER_USER_PRESENCE = TPOWER_USER_PRESENCE type POWER_USER_PRESENCE_TYPE = TPOWER_USER_PRESENCE_TYPE const PO_DELETE = 19 const PO_PORTCHANGE = 32 const PO_RENAME = 20 const PO_REN_PORT = 52 const PO_THROTTLE_ADAPTIVE = 3 const PO_THROTTLE_CONSTANT = 1 const PO_THROTTLE_DEGRADE = 2 const PO_THROTTLE_MAXIMUM = 4 const PO_THROTTLE_NONE = 0 type PPACKEDEVENTINFO = TPPACKEDEVENTINFO type PPAINTSTRUCT = TPPAINTSTRUCT type PPALETTEENTRY = TPPALETTEENTRY type PPARAM_OFFSETTABLE = TPPARAM_OFFSETTABLE type PPARTITION_INFORMATION = TPPARTITION_INFORMATION type PPARTITION_INFORMATION_EX = TPPARTITION_INFORMATION_EX type PPARTITION_INFORMATION_GPT = TPPARTITION_INFORMATION_GPT type PPARTITION_INFORMATION_MBR = TPPARTITION_INFORMATION_MBR type PPATHNAME_BUFFER = TPPATHNAME_BUFFER type PPATTERN = TPPATTERN type PPCMWAVEFORMAT = TPPCMWAVEFORMAT type PPELARRAY = TPPELARRAY type PPERFORMANCE_DATA = TPPERFORMANCE_DATA type PPERF_BIN = TPPERF_BIN type PPERF_COUNTER_BLOCK = TPPERF_COUNTER_BLOCK type PPERF_COUNTER_DEFINITION = TPPERF_COUNTER_DEFINITION type PPERF_DATA_BLOCK = TPPERF_DATA_BLOCK type PPERF_INSTANCE_DEFINITION = TPPERF_INSTANCE_DEFINITION type PPERF_OBJECT_TYPE = TPPERF_OBJECT_TYPE type PPERSISTENT_RESERVE_COMMAND = TPPERSISTENT_RESERVE_COMMAND type PPIXELFORMATDESCRIPTOR = TPPIXELFORMATDESCRIPTOR type PPKCS12_PBES2_EXPORT_PARAMS = TPPKCS12_PBES2_EXPORT_PARAMS type PPLEX_READ_DATA_REQUEST = TPPLEX_READ_DATA_REQUEST const PPM_FIRMWARE_ACPI1C2 = 1 const PPM_FIRMWARE_ACPI1C3 = 2 const PPM_FIRMWARE_ACPI1TSTATES = 4 const PPM_FIRMWARE_CPC = 262144 const PPM_FIRMWARE_CSD = 16 const PPM_FIRMWARE_CST = 8 const PPM_FIRMWARE_OSC = 65536 const PPM_FIRMWARE_PCCH = 16384 const PPM_FIRMWARE_PCCP = 32768 const PPM_FIRMWARE_PCT = 32 const PPM_FIRMWARE_PDC = 131072 const PPM_FIRMWARE_PPC = 256 const PPM_FIRMWARE_PSD = 512 const PPM_FIRMWARE_PSS = 64 const PPM_FIRMWARE_PTC = 1024 const PPM_FIRMWARE_TPC = 4096 const PPM_FIRMWARE_TSD = 8192 const PPM_FIRMWARE_TSS = 2048 const PPM_FIRMWARE_XPSS = 128 type PPM_IDLESTATE_EVENT = TPPM_IDLESTATE_EVENT type PPM_IDLE_ACCOUNTING = TPPM_IDLE_ACCOUNTING type PPM_IDLE_ACCOUNTING_EX = TPPM_IDLE_ACCOUNTING_EX const PPM_IDLE_IMPLEMENTATION_CSTATES = 1 const PPM_IDLE_IMPLEMENTATION_NONE = 0 const PPM_IDLE_IMPLEMENTATION_PEP = 2 type PPM_IDLE_STATE_ACCOUNTING = TPPM_IDLE_STATE_ACCOUNTING type PPM_IDLE_STATE_ACCOUNTING_EX = TPPM_IDLE_STATE_ACCOUNTING_EX type PPM_IDLE_STATE_BUCKET_EX = TPPM_IDLE_STATE_BUCKET_EX const PPM_PERFORMANCE_IMPLEMENTATION_CPPC = 3 const PPM_PERFORMANCE_IMPLEMENTATION_NONE = 0 const PPM_PERFORMANCE_IMPLEMENTATION_PCCV1 = 2 const PPM_PERFORMANCE_IMPLEMENTATION_PEP = 4 const PPM_PERFORMANCE_IMPLEMENTATION_PSTATES = 1 type PPM_PERFSTATE_DOMAIN_EVENT = TPPM_PERFSTATE_DOMAIN_EVENT type PPM_PERFSTATE_EVENT = TPPM_PERFSTATE_EVENT type PPM_THERMALCHANGE_EVENT = TPPM_THERMALCHANGE_EVENT type PPM_THERMAL_POLICY_EVENT = TPPM_THERMAL_POLICY_EVENT type PPM_WMI_IDLE_STATE = TPPM_WMI_IDLE_STATE type PPM_WMI_IDLE_STATES = TPPM_WMI_IDLE_STATES type PPM_WMI_IDLE_STATES_EX = TPPM_WMI_IDLE_STATES_EX type PPM_WMI_LEGACY_PERFSTATE = TPPM_WMI_LEGACY_PERFSTATE type PPM_WMI_PERF_STATE = TPPM_WMI_PERF_STATE type PPM_WMI_PERF_STATES = TPPM_WMI_PERF_STATES type PPM_WMI_PERF_STATES_EX = TPPM_WMI_PERF_STATES_EX type PPOINT = TPPOINT type PPOINTER_TYPE_INFO = TPPOINTER_TYPE_INFO type PPOINTFLOAT = TPPOINTFLOAT type PPOINTL = TPPOINTL type PPOINTS = TPPOINTS type PPOLYTEXT = TPPOLYTEXT type PPOLYTEXTA = TPPOLYTEXTA type PPOLYTEXTW = TPPOLYTEXTW type PPORT_INFO_1 = TPPORT_INFO_1 type PPORT_INFO_1A = TPPORT_INFO_1A type PPORT_INFO_1W = TPPORT_INFO_1W type PPORT_INFO_2 = TPPORT_INFO_2 type PPORT_INFO_2A = TPPORT_INFO_2A type PPORT_INFO_2W = TPPORT_INFO_2W type PPORT_INFO_3 = TPPORT_INFO_3 type PPORT_INFO_3A = TPPORT_INFO_3A type PPORT_INFO_3W = TPPORT_INFO_3W type PPOWERBROADCAST_SETTING = TPPOWERBROADCAST_SETTING type PPOWER_ACTION = TPPOWER_ACTION type PPOWER_ACTION_POLICY = TPPOWER_ACTION_POLICY type PPOWER_IDLE_RESILIENCY = TPPOWER_IDLE_RESILIENCY type PPOWER_MONITOR_INVOCATION = TPPOWER_MONITOR_INVOCATION type PPOWER_PLATFORM_INFORMATION = TPPOWER_PLATFORM_INFORMATION type PPOWER_PLATFORM_ROLE = TPPOWER_PLATFORM_ROLE type PPOWER_REQUEST_CONTEXT = TPPOWER_REQUEST_CONTEXT type PPOWER_REQUEST_TYPE = TPPOWER_REQUEST_TYPE type PPOWER_SESSION_CONNECT = TPPOWER_SESSION_CONNECT type PPOWER_SESSION_RIT_STATE = TPPOWER_SESSION_RIT_STATE type PPOWER_SESSION_TIMEOUTS = TPPOWER_SESSION_TIMEOUTS type PPOWER_SESSION_WINLOGON = TPPOWER_SESSION_WINLOGON type PPOWER_USER_PRESENCE = TPPOWER_USER_PRESENCE type PPOWER_USER_PRESENCE_TYPE = TPPOWER_USER_PRESENCE_TYPE type PPPM_IDLESTATE_EVENT = TPPPM_IDLESTATE_EVENT type PPPM_IDLE_ACCOUNTING = TPPPM_IDLE_ACCOUNTING type PPPM_IDLE_ACCOUNTING_EX = TPPPM_IDLE_ACCOUNTING_EX type PPPM_IDLE_STATE_ACCOUNTING = TPPPM_IDLE_STATE_ACCOUNTING type PPPM_IDLE_STATE_ACCOUNTING_EX = TPPPM_IDLE_STATE_ACCOUNTING_EX type PPPM_IDLE_STATE_BUCKET_EX = TPPPM_IDLE_STATE_BUCKET_EX type PPPM_PERFSTATE_DOMAIN_EVENT = TPPPM_PERFSTATE_DOMAIN_EVENT type PPPM_PERFSTATE_EVENT = TPPPM_PERFSTATE_EVENT type PPPM_THERMALCHANGE_EVENT = TPPPM_THERMALCHANGE_EVENT type PPPM_THERMAL_POLICY_EVENT = TPPPM_THERMAL_POLICY_EVENT type PPPM_WMI_IDLE_STATE = TPPPM_WMI_IDLE_STATE type PPPM_WMI_IDLE_STATES = TPPPM_WMI_IDLE_STATES type PPPM_WMI_IDLE_STATES_EX = TPPPM_WMI_IDLE_STATES_EX type PPPM_WMI_LEGACY_PERFSTATE = TPPPM_WMI_LEGACY_PERFSTATE type PPPM_WMI_PERF_STATE = TPPPM_WMI_PERF_STATE type PPPM_WMI_PERF_STATES = TPPPM_WMI_PERF_STATES type PPPM_WMI_PERF_STATES_EX = TPPPM_WMI_PERF_STATES_EX type PPREVENT_MEDIA_REMOVAL = TPPREVENT_MEDIA_REMOVAL type PPRINTER_CONNECTION_INFO_1 = TPPRINTER_CONNECTION_INFO_1 type PPRINTER_DEFAULTS = TPPRINTER_DEFAULTS type PPRINTER_DEFAULTSA = TPPRINTER_DEFAULTSA type PPRINTER_DEFAULTSW = TPPRINTER_DEFAULTSW type PPRINTER_ENUM_VALUES = TPPRINTER_ENUM_VALUES type PPRINTER_ENUM_VALUESA = TPPRINTER_ENUM_VALUESA type PPRINTER_ENUM_VALUESW = TPPRINTER_ENUM_VALUESW type PPRINTER_INFO_1 = TPPRINTER_INFO_1 type PPRINTER_INFO_1A = TPPRINTER_INFO_1A type PPRINTER_INFO_1W = TPPRINTER_INFO_1W type PPRINTER_INFO_2 = TPPRINTER_INFO_2 type PPRINTER_INFO_2A = TPPRINTER_INFO_2A type PPRINTER_INFO_2W = TPPRINTER_INFO_2W type PPRINTER_INFO_3 = TPPRINTER_INFO_3 type PPRINTER_INFO_4 = TPPRINTER_INFO_4 type PPRINTER_INFO_4A = TPPRINTER_INFO_4A type PPRINTER_INFO_4W = TPPRINTER_INFO_4W type PPRINTER_INFO_5 = TPPRINTER_INFO_5 type PPRINTER_INFO_5A = TPPRINTER_INFO_5A type PPRINTER_INFO_5W = TPPRINTER_INFO_5W type PPRINTER_INFO_6 = TPPRINTER_INFO_6 type PPRINTER_INFO_7 = TPPRINTER_INFO_7 type PPRINTER_INFO_7A = TPPRINTER_INFO_7A type PPRINTER_INFO_7W = TPPRINTER_INFO_7W type PPRINTER_INFO_8 = TPPRINTER_INFO_8 type PPRINTER_INFO_8A = TPPRINTER_INFO_8A type PPRINTER_INFO_8W = TPPRINTER_INFO_8W type PPRINTER_INFO_9 = TPPRINTER_INFO_9 type PPRINTER_INFO_9A = TPPRINTER_INFO_9A type PPRINTER_INFO_9W = TPPRINTER_INFO_9W type PPRINTER_NOTIFY_INFO = TPPRINTER_NOTIFY_INFO type PPRINTER_NOTIFY_INFO_DATA = TPPRINTER_NOTIFY_INFO_DATA type PPRINTER_NOTIFY_OPTIONS = TPPRINTER_NOTIFY_OPTIONS type PPRINTER_NOTIFY_OPTIONS_TYPE = TPPRINTER_NOTIFY_OPTIONS_TYPE type PPRINTER_OPTIONS = TPPRINTER_OPTIONS type PPRINTPROCESSOR_CAPS_1 = TPPRINTPROCESSOR_CAPS_1 type PPRINTPROCESSOR_CAPS_2 = TPPRINTPROCESSOR_CAPS_2 type PPRINTPROCESSOR_INFO_1 = TPPRINTPROCESSOR_INFO_1 type PPRINTPROCESSOR_INFO_1A = TPPRINTPROCESSOR_INFO_1A type PPRINTPROCESSOR_INFO_1W = TPPRINTPROCESSOR_INFO_1W type PPRIVILEGE_SET = TPPRIVILEGE_SET type PPROCESSOR_GROUP_INFO = TPPROCESSOR_GROUP_INFO type PPROCESSOR_IDLESTATE_INFO = TPPROCESSOR_IDLESTATE_INFO type PPROCESSOR_IDLESTATE_POLICY = TPPROCESSOR_IDLESTATE_POLICY type PPROCESSOR_NUMBER = TPPROCESSOR_NUMBER type PPROCESSOR_PERFSTATE_POLICY = TPPROCESSOR_PERFSTATE_POLICY type PPROCESSOR_POWER_POLICY = TPPROCESSOR_POWER_POLICY type PPROCESSOR_POWER_POLICY_INFO = TPPROCESSOR_POWER_POLICY_INFO type PPROCESSOR_RELATIONSHIP = TPPROCESSOR_RELATIONSHIP type PPROCESS_DYNAMIC_EH_CONTINUATION_TARGET = TPPROCESS_DYNAMIC_EH_CONTINUATION_TARGET type PPROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION = TPPROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION type PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE = TPPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE type PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION = TPPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION type PPROCESS_HEAP_ENTRY = TPPROCESS_HEAP_ENTRY type PPROCESS_INFORMATION = TPPROCESS_INFORMATION type PPROCESS_LEAP_SECOND_INFO = TPPROCESS_LEAP_SECOND_INFO type PPROCESS_MEMORY_EXHAUSTION_INFO = TPPROCESS_MEMORY_EXHAUSTION_INFO type PPROCESS_MEMORY_EXHAUSTION_TYPE = TPPROCESS_MEMORY_EXHAUSTION_TYPE type PPROCESS_MITIGATION_ASLR_POLICY = TPPROCESS_MITIGATION_ASLR_POLICY type PPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = TPPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY type PPROCESS_MITIGATION_CHILD_PROCESS_POLICY = TPPROCESS_MITIGATION_CHILD_PROCESS_POLICY type PPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = TPPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY type PPROCESS_MITIGATION_DEP_POLICY = TPPROCESS_MITIGATION_DEP_POLICY type PPROCESS_MITIGATION_DYNAMIC_CODE_POLICY = TPPROCESS_MITIGATION_DYNAMIC_CODE_POLICY type PPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = TPPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY type PPROCESS_MITIGATION_FONT_DISABLE_POLICY = TPPROCESS_MITIGATION_FONT_DISABLE_POLICY type PPROCESS_MITIGATION_IMAGE_LOAD_POLICY = TPPROCESS_MITIGATION_IMAGE_LOAD_POLICY type PPROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY = TPPROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY type PPROCESS_MITIGATION_POLICY = TPPROCESS_MITIGATION_POLICY type PPROCESS_MITIGATION_REDIRECTION_TRUST_POLICY = TPPROCESS_MITIGATION_REDIRECTION_TRUST_POLICY type PPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY = TPPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY type PPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = TPPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY type PPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = TPPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY type PPROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY = TPPROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY type PPROCESS_MITIGATION_USER_SHADOW_STACK_POLICY = TPPROCESS_MITIGATION_USER_SHADOW_STACK_POLICY type PPROCESS_POWER_THROTTLING_STATE = TPPROCESS_POWER_THROTTLING_STATE type PPROC_THREAD_ATTRIBUTE_LIST = TPPROC_THREAD_ATTRIBUTE_LIST type PPROTOENT = TPPROTOENT type PPROVIDER = TPPROVIDER type PPROVIDOR_INFO_1 = TPPROVIDOR_INFO_1 type PPROVIDOR_INFO_1A = TPPROVIDOR_INFO_1A type PPROVIDOR_INFO_1W = TPPROVIDOR_INFO_1W type PPROVIDOR_INFO_2 = TPPROVIDOR_INFO_2 type PPROVIDOR_INFO_2A = TPPROVIDOR_INFO_2A type PPROVIDOR_INFO_2W = TPPROVIDOR_INFO_2W type PPSFEATURE_CUSTPAPER = TPPSFEATURE_CUSTPAPER type PPSFEATURE_OUTPUT = TPPSFEATURE_OUTPUT type PPSINJECTDATA = TPPSINJECTDATA type PPVALUE = TPPVALUE type PPVALUEA = TPPVALUEA type PPVALUEW = TPPVALUEW const PP_ADMIN_PIN = 31 const PP_APPLI_CERT = 18 const PP_CERTCHAIN = 9 const PP_CHANGE_PASSWORD = 7 const PP_CLIENT_HWND = 1 const PP_CONTAINER = 6 const PP_CONTEXT_INFO = 11 const PP_CRYPT_COUNT_KEY_USE = 41 const PP_DELETEKEY = 24 const PP_DISPLAYERRORS = 1 const PP_ENUMALGS = 1 const PP_ENUMALGS_EX = 22 const PP_ENUMCONTAINERS = 2 const PP_ENUMELECTROOTS = 26 const PP_ENUMEX_SIGNING_PROT = 40 const PP_ENUMMANDROOTS = 25 const PP_IMPTYPE = 3 const PP_KEYEXCHANGE_ALG = 14 const PP_KEYEXCHANGE_KEYSIZE = 12 const PP_KEYEXCHANGE_PIN = 32 const PP_KEYSET_SEC_DESCR = 8 const PP_KEYSET_TYPE = 27 const PP_KEYSPEC = 39 const PP_KEYSTORAGE = 17 const PP_KEYX_KEYSIZE_INC = 35 const PP_KEY_TYPE_SUBTYPE = 10 const PP_NAME = 4 const PP_PIN_PROMPT_STRING = 44 const PP_PROVTYPE = 16 const PP_ROOT_CERTSTORE = 46 const PP_SECURE_KEYEXCHANGE_PIN = 47 const PP_SECURE_SIGNATURE_PIN = 48 const PP_SESSION_KEYSIZE = 20 const PP_SGC_INFO = 37 const PP_SIGNATURE_ALG = 15 const PP_SIGNATURE_KEYSIZE = 13 const PP_SIGNATURE_PIN = 33 const PP_SIG_KEYSIZE_INC = 34 const PP_SMARTCARD_GUID = 45 const PP_SMARTCARD_READER = 43 const PP_SMARTCARD_READER_ICON = 47 const PP_SYM_KEYSIZE = 19 const PP_UI_PROMPT = 21 const PP_UNIQUE_CONTAINER = 36 const PP_USER_CERTSTORE = 42 const PP_USE_HARDWARE_RNG = 38 const PP_VERSION = 5 type PQUERYACTCTXW_FUNC = TPQUERYACTCTXW_FUNC type PQUERYHANDLER = TPQUERYHANDLER type PQUERY_CHANGES_VIRTUAL_DISK_RANGE = TPQUERY_CHANGES_VIRTUAL_DISK_RANGE type PQUOTA_LIMITS = TPQUOTA_LIMITS type PQUOTA_LIMITS_EX = TPQUOTA_LIMITS_EX const PRAGMA_DEPRECATED_DDK = 0 type PRATE_QUOTA_LIMIT = TPRATE_QUOTA_LIMIT type PRAWHID = TPRAWHID type PRAWINPUT = TPRAWINPUT type PRAWINPUTDEVICE = TPRAWINPUTDEVICE type PRAWINPUTDEVICELIST = TPRAWINPUTDEVICELIST type PRAWINPUTHEADER = TPRAWINPUTHEADER type PRAWKEYBOARD = TPRAWKEYBOARD type PRAWMOUSE = TPRAWMOUSE type PREAD_ELEMENT_ADDRESS_INFO = TPREAD_ELEMENT_ADDRESS_INFO type PREAD_USN_JOURNAL_DATA = TPREAD_USN_JOURNAL_DATA type PREASON_CONTEXT = TPREASON_CONTEXT type PREASSIGN_BLOCKS = TPREASSIGN_BLOCKS type PREASSIGN_BLOCKS_EX = TPREASSIGN_BLOCKS_EX type PRECONVERTSTRING = TPRECONVERTSTRING type PRECT = TPRECT type PRECTL = TPRECTL type PREDIRECTION_DESCRIPTOR = TPREDIRECTION_DESCRIPTOR type PREDIRECTION_FUNCTION_DESCRIPTOR = TPREDIRECTION_FUNCTION_DESCRIPTOR type PREGISTERCLASSNAMEW = TPREGISTERCLASSNAMEW type PREGISTERWORD = TPREGISTERWORD type PREGISTERWORDA = TPREGISTERWORDA type PREGISTERWORDW = TPREGISTERWORDW type PREMSECURITY_ATTRIBUTES = TPREMSECURITY_ATTRIBUTES type PREPARSE_GUID_DATA_BUFFER = TPREPARSE_GUID_DATA_BUFFER type PREQUEST_OPLOCK_INPUT_BUFFER = TPREQUEST_OPLOCK_INPUT_BUFFER type PREQUEST_OPLOCK_OUTPUT_BUFFER = TPREQUEST_OPLOCK_OUTPUT_BUFFER type PREQUEST_RAW_ENCRYPTED_DATA = TPREQUEST_RAW_ENCRYPTED_DATA type PRESIZE_VIRTUAL_DISK_PARAMETERS = TPRESIZE_VIRTUAL_DISK_PARAMETERS type PRESOURCEMANAGER_BASIC_INFORMATION = TPRESOURCEMANAGER_BASIC_INFORMATION type PRESOURCEMANAGER_COMPLETION_INFORMATION = TPRESOURCEMANAGER_COMPLETION_INFORMATION type PRESUME_PERFORMANCE = TPRESUME_PERFORMANCE type PRETRIEVAL_POINTERS_BUFFER = TPRETRIEVAL_POINTERS_BUFFER type PRETRIEVAL_POINTER_BASE = TPRETRIEVAL_POINTER_BASE type PREVENT_MEDIA_REMOVAL = TPREVENT_MEDIA_REMOVAL const PRF_CHECKVISIBLE = 1 const PRF_CHILDREN = 16 const PRF_CLIENT = 4 const PRF_ERASEBKGND = 8 const PRF_NONCLIENT = 2 const PRF_OWNED = 32 type PRGBTRIPLE = TPRGBTRIPLE type PRGNDATA = TPRGNDATA type PRGNDATAHEADER = TPRGNDATAHEADER type PRID_DEVICE_INFO = TPRID_DEVICE_INFO type PRID_DEVICE_INFO_HID = TPRID_DEVICE_INFO_HID type PRID_DEVICE_INFO_KEYBOARD = TPRID_DEVICE_INFO_KEYBOARD type PRID_DEVICE_INFO_MOUSE = TPRID_DEVICE_INFO_MOUSE const PRINTACTION_DOCUMENTDEFAULTS = 6 const PRINTACTION_NETINSTALL = 2 const PRINTACTION_NETINSTALLLINK = 3 const PRINTACTION_OPEN = 0 const PRINTACTION_OPENNETPRN = 5 const PRINTACTION_PROPERTIES = 1 const PRINTACTION_SERVERPROPERTIES = 7 const PRINTACTION_TESTPAGE = 4 type PRINTDLG = TPRINTDLG type PRINTDLGA = TPRINTDLGA type PRINTDLGEX = TPRINTDLGEX type PRINTDLGEXA = TPRINTDLGEXA const PRINTDLGEXORD = 1549 type PRINTDLGEXW = TPRINTDLGEXW const PRINTDLGORD = 1538 type PRINTDLGW = TPRINTDLGW type PRINTEROP_FLAGS = TPRINTEROP_FLAGS const PRINTER_ACCESS_ADMINISTER = 4 const PRINTER_ACCESS_USE = 8 const PRINTER_ALL_ACCESS = 983052 const PRINTER_ATTRIBUTE_DEFAULT = 4 const PRINTER_ATTRIBUTE_DIRECT = 2 const PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST = 512 const PRINTER_ATTRIBUTE_ENABLE_BIDI = 2048 const PRINTER_ATTRIBUTE_ENABLE_DEVQ = 128 const PRINTER_ATTRIBUTE_FAX = 16384 const PRINTER_ATTRIBUTE_HIDDEN = 32 const PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS = 256 const PRINTER_ATTRIBUTE_LOCAL = 64 const PRINTER_ATTRIBUTE_NETWORK = 16 const PRINTER_ATTRIBUTE_PUBLISHED = 8192 const PRINTER_ATTRIBUTE_QUEUED = 1 const PRINTER_ATTRIBUTE_RAW_ONLY = 4096 const PRINTER_ATTRIBUTE_SHARED = 8 const PRINTER_ATTRIBUTE_TS = 32768 const PRINTER_ATTRIBUTE_WORK_OFFLINE = 1024 const PRINTER_CHANGE_ADD_FORM = 65536 const PRINTER_CHANGE_ADD_JOB = 256 const PRINTER_CHANGE_ADD_PORT = 1048576 const PRINTER_CHANGE_ADD_PRINTER = 1 const PRINTER_CHANGE_ADD_PRINTER_DRIVER = 268435456 const PRINTER_CHANGE_ADD_PRINT_PROCESSOR = 16777216 const PRINTER_CHANGE_ALL = 2004353023 const PRINTER_CHANGE_CONFIGURE_PORT = 2097152 const PRINTER_CHANGE_DELETE_FORM = 262144 const PRINTER_CHANGE_DELETE_JOB = 1024 const PRINTER_CHANGE_DELETE_PORT = 4194304 const PRINTER_CHANGE_DELETE_PRINTER = 4 const PRINTER_CHANGE_DELETE_PRINTER_DRIVER = 1073741824 const PRINTER_CHANGE_DELETE_PRINT_PROCESSOR = 67108864 const PRINTER_CHANGE_FAILED_CONNECTION_PRINTER = 8 const PRINTER_CHANGE_FORM = 458752 const PRINTER_CHANGE_JOB = 65280 const PRINTER_CHANGE_PORT = 7340032 const PRINTER_CHANGE_PRINTER = 255 const PRINTER_CHANGE_PRINTER_DRIVER = 1879048192 const PRINTER_CHANGE_PRINT_PROCESSOR = 117440512 const PRINTER_CHANGE_SET_FORM = 131072 const PRINTER_CHANGE_SET_JOB = 512 const PRINTER_CHANGE_SET_PRINTER = 2 const PRINTER_CHANGE_SET_PRINTER_DRIVER = 536870912 const PRINTER_CHANGE_TIMEOUT = 2147483648 const PRINTER_CHANGE_WRITE_JOB = 2048 type PRINTER_CONNECTION_INFO_1 = TPRINTER_CONNECTION_INFO_1 const PRINTER_CONNECTION_MISMATCH = 32 const PRINTER_CONNECTION_NO_UI = 64 const PRINTER_CONTROL_PAUSE = 1 const PRINTER_CONTROL_PURGE = 3 const PRINTER_CONTROL_RESUME = 2 const PRINTER_CONTROL_SET_STATUS = 4 type PRINTER_DEFAULTS = TPRINTER_DEFAULTS type PRINTER_DEFAULTSA = TPRINTER_DEFAULTSA type PRINTER_DEFAULTSW = TPRINTER_DEFAULTSW const PRINTER_ENUM_CONNECTIONS = 4 const PRINTER_ENUM_CONTAINER = 32768 const PRINTER_ENUM_DEFAULT = 1 const PRINTER_ENUM_EXPAND = 16384 const PRINTER_ENUM_FAVORITE = 4 const PRINTER_ENUM_HIDE = 16777216 const PRINTER_ENUM_ICON1 = 65536 const PRINTER_ENUM_ICON2 = 131072 const PRINTER_ENUM_ICON3 = 262144 const PRINTER_ENUM_ICON4 = 524288 const PRINTER_ENUM_ICON5 = 1048576 const PRINTER_ENUM_ICON6 = 2097152 const PRINTER_ENUM_ICON7 = 4194304 const PRINTER_ENUM_ICON8 = 8388608 const PRINTER_ENUM_ICONMASK = 16711680 const PRINTER_ENUM_LOCAL = 2 const PRINTER_ENUM_NAME = 8 const PRINTER_ENUM_NETWORK = 64 const PRINTER_ENUM_REMOTE = 16 const PRINTER_ENUM_SHARED = 32 type PRINTER_ENUM_VALUES = TPRINTER_ENUM_VALUES type PRINTER_ENUM_VALUESA = TPRINTER_ENUM_VALUESA type PRINTER_ENUM_VALUESW = TPRINTER_ENUM_VALUESW const PRINTER_ERROR_INFORMATION = 2147483648 const PRINTER_ERROR_JAM = 2 const PRINTER_ERROR_OUTOFPAPER = 1 const PRINTER_ERROR_OUTOFTONER = 4 const PRINTER_ERROR_SEVERE = 536870912 const PRINTER_ERROR_WARNING = 1073741824 const PRINTER_EXECUTE = 131080 const PRINTER_FONTTYPE = 16384 type PRINTER_INFO_1 = TPRINTER_INFO_1 type PRINTER_INFO_1A = TPRINTER_INFO_1A type PRINTER_INFO_1W = TPRINTER_INFO_1W type PRINTER_INFO_2 = TPRINTER_INFO_2 type PRINTER_INFO_2A = TPRINTER_INFO_2A type PRINTER_INFO_2W = TPRINTER_INFO_2W type PRINTER_INFO_3 = TPRINTER_INFO_3 type PRINTER_INFO_4 = TPRINTER_INFO_4 type PRINTER_INFO_4A = TPRINTER_INFO_4A type PRINTER_INFO_4W = TPRINTER_INFO_4W type PRINTER_INFO_5 = TPRINTER_INFO_5 type PRINTER_INFO_5A = TPRINTER_INFO_5A type PRINTER_INFO_5W = TPRINTER_INFO_5W type PRINTER_INFO_6 = TPRINTER_INFO_6 type PRINTER_INFO_7 = TPRINTER_INFO_7 type PRINTER_INFO_7A = TPRINTER_INFO_7A type PRINTER_INFO_7W = TPRINTER_INFO_7W type PRINTER_INFO_8 = TPRINTER_INFO_8 type PRINTER_INFO_8A = TPRINTER_INFO_8A type PRINTER_INFO_8W = TPRINTER_INFO_8W type PRINTER_INFO_9 = TPRINTER_INFO_9 type PRINTER_INFO_9A = TPRINTER_INFO_9A type PRINTER_INFO_9W = TPRINTER_INFO_9W const PRINTER_NOTIFY_FIELD_ATTRIBUTES = 13 const PRINTER_NOTIFY_FIELD_AVERAGE_PPM = 21 const PRINTER_NOTIFY_FIELD_BYTES_PRINTED = 25 const PRINTER_NOTIFY_FIELD_CJOBS = 20 const PRINTER_NOTIFY_FIELD_COMMENT = 5 const PRINTER_NOTIFY_FIELD_DATATYPE = 11 const PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY = 15 const PRINTER_NOTIFY_FIELD_DEVMODE = 7 const PRINTER_NOTIFY_FIELD_DRIVER_NAME = 4 const PRINTER_NOTIFY_FIELD_LOCATION = 6 const PRINTER_NOTIFY_FIELD_OBJECT_GUID = 26 const PRINTER_NOTIFY_FIELD_PAGES_PRINTED = 23 const PRINTER_NOTIFY_FIELD_PARAMETERS = 10 const PRINTER_NOTIFY_FIELD_PORT_NAME = 3 const PRINTER_NOTIFY_FIELD_PRINTER_NAME = 1 const PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR = 9 const PRINTER_NOTIFY_FIELD_PRIORITY = 14 const PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR = 12 const PRINTER_NOTIFY_FIELD_SEPFILE = 8 const PRINTER_NOTIFY_FIELD_SERVER_NAME = 0 const PRINTER_NOTIFY_FIELD_SHARE_NAME = 2 const PRINTER_NOTIFY_FIELD_START_TIME = 16 const PRINTER_NOTIFY_FIELD_STATUS = 18 const PRINTER_NOTIFY_FIELD_STATUS_STRING = 19 const PRINTER_NOTIFY_FIELD_TOTAL_BYTES = 24 const PRINTER_NOTIFY_FIELD_TOTAL_PAGES = 22 const PRINTER_NOTIFY_FIELD_UNTIL_TIME = 17 type PRINTER_NOTIFY_INFO = TPRINTER_NOTIFY_INFO type PRINTER_NOTIFY_INFO_DATA = TPRINTER_NOTIFY_INFO_DATA const PRINTER_NOTIFY_INFO_DISCARDED = 1 type PRINTER_NOTIFY_OPTIONS = TPRINTER_NOTIFY_OPTIONS const PRINTER_NOTIFY_OPTIONS_REFRESH = 1 type PRINTER_NOTIFY_OPTIONS_TYPE = TPRINTER_NOTIFY_OPTIONS_TYPE const PRINTER_NOTIFY_TYPE = 0 type PRINTER_OPTIONS = TPRINTER_OPTIONS type PRINTER_OPTION_FLAGS = TPRINTER_OPTION_FLAGS const PRINTER_READ = 131080 const PRINTER_STATUS_BUSY = 512 const PRINTER_STATUS_DOOR_OPEN = 4194304 const PRINTER_STATUS_ERROR = 2 const PRINTER_STATUS_INITIALIZING = 32768 const PRINTER_STATUS_IO_ACTIVE = 256 const PRINTER_STATUS_MANUAL_FEED = 32 const PRINTER_STATUS_NOT_AVAILABLE = 4096 const PRINTER_STATUS_NO_TONER = 262144 const PRINTER_STATUS_OFFLINE = 128 const PRINTER_STATUS_OUTPUT_BIN_FULL = 2048 const PRINTER_STATUS_OUT_OF_MEMORY = 2097152 const PRINTER_STATUS_PAGE_PUNT = 524288 const PRINTER_STATUS_PAPER_JAM = 8 const PRINTER_STATUS_PAPER_OUT = 16 const PRINTER_STATUS_PAPER_PROBLEM = 64 const PRINTER_STATUS_PAUSED = 1 const PRINTER_STATUS_PENDING_DELETION = 4 const PRINTER_STATUS_POWER_SAVE = 16777216 const PRINTER_STATUS_PRINTING = 1024 const PRINTER_STATUS_PROCESSING = 16384 const PRINTER_STATUS_SERVER_UNKNOWN = 8388608 const PRINTER_STATUS_TONER_LOW = 131072 const PRINTER_STATUS_USER_INTERVENTION = 1048576 const PRINTER_STATUS_WAITING = 8192 const PRINTER_STATUS_WARMING_UP = 65536 const PRINTER_WRITE = 131080 type PRINTPAGERANGE = TPRINTPAGERANGE type PRINTPROCESSOR_CAPS_1 = TPRINTPROCESSOR_CAPS_1 type PRINTPROCESSOR_CAPS_2 = TPRINTPROCESSOR_CAPS_2 type PRINTPROCESSOR_INFO_1 = TPRINTPROCESSOR_INFO_1 type PRINTPROCESSOR_INFO_1A = TPRINTPROCESSOR_INFO_1A type PRINTPROCESSOR_INFO_1W = TPRINTPROCESSOR_INFO_1W const PRINTRATEUNIT_CPS = 2 const PRINTRATEUNIT_IPM = 4 const PRINTRATEUNIT_LPM = 3 const PRINTRATEUNIT_PPM = 1 const PRINT_PROP_FORCE_NAME = 1 type PRIORITY_HINT = TPRIORITY_HINT const PRIVATEKEYBLOB = 7 const PRIVATE_NAMESPACE_FLAG_DESTROY = 1 type PRIVILEGE_SET = TPRIVILEGE_SET const PRIVILEGE_SET_ALL_NECESSARY = 1 type PRKCRM_MARSHAL_HEADER = TPRKCRM_MARSHAL_HEADER type PRKCRM_PROTOCOL_BLOB = TPRKCRM_PROTOCOL_BLOB type PRKCRM_TRANSACTION_BLOB = TPRKCRM_TRANSACTION_BLOB type PRLIST_ENTRY = TPRLIST_ENTRY const PRNSETUPDLGORD = 1539 type PROC = TPROC const PROCESSOR_ALPHA_21064 = 21064 const PROCESSOR_AMD_X8664 = 8664 const PROCESSOR_ARCHITECTURE_ALPHA = 2 const PROCESSOR_ARCHITECTURE_ALPHA64 = 7 const PROCESSOR_ARCHITECTURE_AMD64 = 9 const PROCESSOR_ARCHITECTURE_ARM = 5 const PROCESSOR_ARCHITECTURE_ARM32_ON_WIN64 = 13 const PROCESSOR_ARCHITECTURE_ARM64 = 12 const PROCESSOR_ARCHITECTURE_IA32_ON_ARM64 = 14 const PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 = 10 const PROCESSOR_ARCHITECTURE_IA64 = 6 const PROCESSOR_ARCHITECTURE_INTEL = 0 const PROCESSOR_ARCHITECTURE_MIPS = 1 const PROCESSOR_ARCHITECTURE_MSIL = 8 const PROCESSOR_ARCHITECTURE_NEUTRAL = 11 const PROCESSOR_ARCHITECTURE_PPC = 3 const PROCESSOR_ARCHITECTURE_SHX = 4 const PROCESSOR_ARCHITECTURE_UNKNOWN = 65535 const PROCESSOR_ARM720 = 1824 const PROCESSOR_ARM820 = 2080 const PROCESSOR_ARM920 = 2336 const PROCESSOR_ARM_7TDMI = 70001 type PROCESSOR_CACHE_TYPE = TPROCESSOR_CACHE_TYPE type PROCESSOR_GROUP_INFO = TPROCESSOR_GROUP_INFO const PROCESSOR_HITACHI_SH3 = 10003 const PROCESSOR_HITACHI_SH3E = 10004 const PROCESSOR_HITACHI_SH4 = 10005 type PROCESSOR_IDLESTATE_INFO = TPROCESSOR_IDLESTATE_INFO type PROCESSOR_IDLESTATE_POLICY = TPROCESSOR_IDLESTATE_POLICY const PROCESSOR_IDLESTATE_POLICY_COUNT = 3 const PROCESSOR_INTEL_386 = 386 const PROCESSOR_INTEL_486 = 486 const PROCESSOR_INTEL_IA64 = 2200 const PROCESSOR_INTEL_PENTIUM = 586 const PROCESSOR_MIPS_R4000 = 4000 const PROCESSOR_MOTOROLA_821 = 821 type PROCESSOR_NUMBER = TPROCESSOR_NUMBER const PROCESSOR_OPTIL = 18767 type PROCESSOR_PERFSTATE_POLICY = TPROCESSOR_PERFSTATE_POLICY const PROCESSOR_PERF_BOOST_MODE_AGGRESSIVE = 2 const PROCESSOR_PERF_BOOST_MODE_DISABLED = 0 const PROCESSOR_PERF_BOOST_MODE_EFFICIENT_AGGRESSIVE = 4 const PROCESSOR_PERF_BOOST_MODE_EFFICIENT_ENABLED = 3 const PROCESSOR_PERF_BOOST_MODE_ENABLED = 1 const PROCESSOR_PERF_BOOST_MODE_MAX = 4 const PROCESSOR_PERF_BOOST_POLICY_DISABLED = 0 const PROCESSOR_PERF_BOOST_POLICY_MAX = 100 type PROCESSOR_POWER_POLICY = TPROCESSOR_POWER_POLICY type PROCESSOR_POWER_POLICY_INFO = TPROCESSOR_POWER_POLICY_INFO const PROCESSOR_PPC_601 = 601 const PROCESSOR_PPC_603 = 603 const PROCESSOR_PPC_604 = 604 const PROCESSOR_PPC_620 = 620 type PROCESSOR_RELATIONSHIP = TPROCESSOR_RELATIONSHIP const PROCESSOR_SHx_SH3 = 103 const PROCESSOR_SHx_SH4 = 104 const PROCESSOR_STRONGARM = 2577 const PROCESS_AFFINITY_ENABLE_AUTO_UPDATE = 1 const PROCESS_ALL_ACCESS = 2097151 const PROCESS_CREATE_PROCESS = 128 const PROCESS_CREATE_THREAD = 2 const PROCESS_CREATION_ALL_APPLICATION_PACKAGES_OPT_OUT = 1 const PROCESS_CREATION_CHILD_PROCESS_OVERRIDE = 2 const PROCESS_CREATION_CHILD_PROCESS_RESTRICTED = 1 const PROCESS_CREATION_CHILD_PROCESS_RESTRICTED_UNLESS_SECURE = 4 const PROCESS_CREATION_MITIGATION_POLICY2_ALLOW_DOWNGRADE_DYNAMIC_CODE_POLICY_ALWAYS_OFF = 2097152 const PROCESS_CREATION_MITIGATION_POLICY2_ALLOW_DOWNGRADE_DYNAMIC_CODE_POLICY_ALWAYS_ON = 1048576 const PROCESS_CREATION_MITIGATION_POLICY2_ALLOW_DOWNGRADE_DYNAMIC_CODE_POLICY_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_ALLOW_DOWNGRADE_DYNAMIC_CODE_POLICY_MASK = 3145728 const PROCESS_CREATION_MITIGATION_POLICY2_ALLOW_DOWNGRADE_DYNAMIC_CODE_POLICY_RESERVED = 3145728 const PROCESS_CREATION_MITIGATION_POLICY2_BLOCK_NON_CET_BINARIES_ALWAYS_OFF = 137438953472 const PROCESS_CREATION_MITIGATION_POLICY2_BLOCK_NON_CET_BINARIES_ALWAYS_ON = 68719476736 const PROCESS_CREATION_MITIGATION_POLICY2_BLOCK_NON_CET_BINARIES_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_BLOCK_NON_CET_BINARIES_MASK = 206158430208 const PROCESS_CREATION_MITIGATION_POLICY2_BLOCK_NON_CET_BINARIES_NON_EHCONT = 206158430208 const PROCESS_CREATION_MITIGATION_POLICY2_CET_DYNAMIC_APIS_OUT_OF_PROC_ONLY_ALWAYS_OFF = 562949953421312 const PROCESS_CREATION_MITIGATION_POLICY2_CET_DYNAMIC_APIS_OUT_OF_PROC_ONLY_ALWAYS_ON = 281474976710656 const PROCESS_CREATION_MITIGATION_POLICY2_CET_DYNAMIC_APIS_OUT_OF_PROC_ONLY_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_CET_DYNAMIC_APIS_OUT_OF_PROC_ONLY_MASK = 844424930131968 const PROCESS_CREATION_MITIGATION_POLICY2_CET_DYNAMIC_APIS_OUT_OF_PROC_ONLY_RESERVED = 844424930131968 const PROCESS_CREATION_MITIGATION_POLICY2_CET_USER_SHADOW_STACKS_ALWAYS_OFF = 536870912 const PROCESS_CREATION_MITIGATION_POLICY2_CET_USER_SHADOW_STACKS_ALWAYS_ON = 268435456 const PROCESS_CREATION_MITIGATION_POLICY2_CET_USER_SHADOW_STACKS_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_CET_USER_SHADOW_STACKS_MASK = 805306368 const PROCESS_CREATION_MITIGATION_POLICY2_CET_USER_SHADOW_STACKS_STRICT_MODE = 805306368 const PROCESS_CREATION_MITIGATION_POLICY2_LOADER_INTEGRITY_CONTINUITY_ALWAYS_OFF = 32 const PROCESS_CREATION_MITIGATION_POLICY2_LOADER_INTEGRITY_CONTINUITY_ALWAYS_ON = 16 const PROCESS_CREATION_MITIGATION_POLICY2_LOADER_INTEGRITY_CONTINUITY_AUDIT = 48 const PROCESS_CREATION_MITIGATION_POLICY2_LOADER_INTEGRITY_CONTINUITY_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_LOADER_INTEGRITY_CONTINUITY_MASK = 48 const PROCESS_CREATION_MITIGATION_POLICY2_MODULE_TAMPERING_PROTECTION_ALWAYS_OFF = 8192 const PROCESS_CREATION_MITIGATION_POLICY2_MODULE_TAMPERING_PROTECTION_ALWAYS_ON = 4096 const PROCESS_CREATION_MITIGATION_POLICY2_MODULE_TAMPERING_PROTECTION_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_MODULE_TAMPERING_PROTECTION_MASK = 12288 const PROCESS_CREATION_MITIGATION_POLICY2_MODULE_TAMPERING_PROTECTION_NOINHERIT = 12288 const PROCESS_CREATION_MITIGATION_POLICY2_RESTRICT_INDIRECT_BRANCH_PREDICTION_ALWAYS_OFF = 131072 const PROCESS_CREATION_MITIGATION_POLICY2_RESTRICT_INDIRECT_BRANCH_PREDICTION_ALWAYS_ON = 65536 const PROCESS_CREATION_MITIGATION_POLICY2_RESTRICT_INDIRECT_BRANCH_PREDICTION_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_RESTRICT_INDIRECT_BRANCH_PREDICTION_MASK = 196608 const PROCESS_CREATION_MITIGATION_POLICY2_RESTRICT_INDIRECT_BRANCH_PREDICTION_RESERVED = 196608 const PROCESS_CREATION_MITIGATION_POLICY2_SPECULATIVE_STORE_BYPASS_DISABLE_ALWAYS_OFF = 33554432 const PROCESS_CREATION_MITIGATION_POLICY2_SPECULATIVE_STORE_BYPASS_DISABLE_ALWAYS_ON = 16777216 const PROCESS_CREATION_MITIGATION_POLICY2_SPECULATIVE_STORE_BYPASS_DISABLE_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_SPECULATIVE_STORE_BYPASS_DISABLE_MASK = 50331648 const PROCESS_CREATION_MITIGATION_POLICY2_SPECULATIVE_STORE_BYPASS_DISABLE_RESERVED = 50331648 const PROCESS_CREATION_MITIGATION_POLICY2_STRICT_CONTROL_FLOW_GUARD_ALWAYS_OFF = 512 const PROCESS_CREATION_MITIGATION_POLICY2_STRICT_CONTROL_FLOW_GUARD_ALWAYS_ON = 256 const PROCESS_CREATION_MITIGATION_POLICY2_STRICT_CONTROL_FLOW_GUARD_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_STRICT_CONTROL_FLOW_GUARD_MASK = 768 const PROCESS_CREATION_MITIGATION_POLICY2_STRICT_CONTROL_FLOW_GUARD_RESERVED = 768 const PROCESS_CREATION_MITIGATION_POLICY2_USER_CET_SET_CONTEXT_IP_VALIDATION_ALWAYS_OFF = 8589934592 const PROCESS_CREATION_MITIGATION_POLICY2_USER_CET_SET_CONTEXT_IP_VALIDATION_ALWAYS_ON = 4294967296 const PROCESS_CREATION_MITIGATION_POLICY2_USER_CET_SET_CONTEXT_IP_VALIDATION_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY2_USER_CET_SET_CONTEXT_IP_VALIDATION_MASK = 12884901888 const PROCESS_CREATION_MITIGATION_POLICY2_USER_CET_SET_CONTEXT_IP_VALIDATION_RELAXED_MODE = 12884901888 const PROCESS_CREATION_MITIGATION_POLICY_AUDIT_NONSYSTEM_FONTS = 844424930131968 const PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINARIES_ALLOW_STORE = 52776558133248 const PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINARIES_ALWAYS_OFF = 35184372088832 const PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINARIES_ALWAYS_ON = 17592186044416 const PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINARIES_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINARIES_MASK = 52776558133248 const PROCESS_CREATION_MITIGATION_POLICY_BOTTOM_UP_ASLR_ALWAYS_OFF = 131072 const PROCESS_CREATION_MITIGATION_POLICY_BOTTOM_UP_ASLR_ALWAYS_ON = 65536 const PROCESS_CREATION_MITIGATION_POLICY_BOTTOM_UP_ASLR_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_BOTTOM_UP_ASLR_MASK = 196608 const PROCESS_CREATION_MITIGATION_POLICY_BOTTOM_UP_ASLR_RESERVED = 196608 const PROCESS_CREATION_MITIGATION_POLICY_CONTROL_FLOW_GUARD_ALWAYS_OFF = 2199023255552 const PROCESS_CREATION_MITIGATION_POLICY_CONTROL_FLOW_GUARD_ALWAYS_ON = 1099511627776 const PROCESS_CREATION_MITIGATION_POLICY_CONTROL_FLOW_GUARD_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_CONTROL_FLOW_GUARD_EXPORT_SUPPRESSION = 3298534883328 const PROCESS_CREATION_MITIGATION_POLICY_CONTROL_FLOW_GUARD_MASK = 3298534883328 const PROCESS_CREATION_MITIGATION_POLICY_DEP_ATL_THUNK_ENABLE = 2 const PROCESS_CREATION_MITIGATION_POLICY_DEP_ENABLE = 1 const PROCESS_CREATION_MITIGATION_POLICY_EXTENSION_POINT_DISABLE_ALWAYS_OFF = 8589934592 const PROCESS_CREATION_MITIGATION_POLICY_EXTENSION_POINT_DISABLE_ALWAYS_ON = 4294967296 const PROCESS_CREATION_MITIGATION_POLICY_EXTENSION_POINT_DISABLE_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_EXTENSION_POINT_DISABLE_MASK = 12884901888 const PROCESS_CREATION_MITIGATION_POLICY_EXTENSION_POINT_DISABLE_RESERVED = 12884901888 const PROCESS_CREATION_MITIGATION_POLICY_FONT_DISABLE_ALWAYS_OFF = 562949953421312 const PROCESS_CREATION_MITIGATION_POLICY_FONT_DISABLE_ALWAYS_ON = 281474976710656 const PROCESS_CREATION_MITIGATION_POLICY_FONT_DISABLE_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_FONT_DISABLE_MASK = 844424930131968 const PROCESS_CREATION_MITIGATION_POLICY_FORCE_RELOCATE_IMAGES_ALWAYS_OFF = 512 const PROCESS_CREATION_MITIGATION_POLICY_FORCE_RELOCATE_IMAGES_ALWAYS_ON = 256 const PROCESS_CREATION_MITIGATION_POLICY_FORCE_RELOCATE_IMAGES_ALWAYS_ON_REQ_RELOCS = 768 const PROCESS_CREATION_MITIGATION_POLICY_FORCE_RELOCATE_IMAGES_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_FORCE_RELOCATE_IMAGES_MASK = 768 const PROCESS_CREATION_MITIGATION_POLICY_HEAP_TERMINATE_ALWAYS_OFF = 8192 const PROCESS_CREATION_MITIGATION_POLICY_HEAP_TERMINATE_ALWAYS_ON = 4096 const PROCESS_CREATION_MITIGATION_POLICY_HEAP_TERMINATE_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_HEAP_TERMINATE_MASK = 12288 const PROCESS_CREATION_MITIGATION_POLICY_HEAP_TERMINATE_RESERVED = 12288 const PROCESS_CREATION_MITIGATION_POLICY_HIGH_ENTROPY_ASLR_ALWAYS_OFF = 2097152 const PROCESS_CREATION_MITIGATION_POLICY_HIGH_ENTROPY_ASLR_ALWAYS_ON = 1048576 const PROCESS_CREATION_MITIGATION_POLICY_HIGH_ENTROPY_ASLR_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_HIGH_ENTROPY_ASLR_MASK = 3145728 const PROCESS_CREATION_MITIGATION_POLICY_HIGH_ENTROPY_ASLR_RESERVED = 3145728 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_LOW_LABEL_ALWAYS_OFF = 144115188075855872 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_LOW_LABEL_ALWAYS_ON = 72057594037927936 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_LOW_LABEL_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_LOW_LABEL_MASK = 216172782113783808 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_LOW_LABEL_RESERVED = 216172782113783808 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_REMOTE_ALWAYS_OFF = 9007199254740992 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_REMOTE_ALWAYS_ON = 4503599627370496 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_REMOTE_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_REMOTE_MASK = 13510798882111488 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_NO_REMOTE_RESERVED = 13510798882111488 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_PREFER_SYSTEM32_ALWAYS_OFF = 2305843009213693952 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_PREFER_SYSTEM32_ALWAYS_ON = 1152921504606846976 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_PREFER_SYSTEM32_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_PREFER_SYSTEM32_MASK = 3458764513820540928 const PROCESS_CREATION_MITIGATION_POLICY_IMAGE_LOAD_PREFER_SYSTEM32_RESERVED = 3458764513820540928 const PROCESS_CREATION_MITIGATION_POLICY_PROHIBIT_DYNAMIC_CODE_ALWAYS_OFF = 137438953472 const PROCESS_CREATION_MITIGATION_POLICY_PROHIBIT_DYNAMIC_CODE_ALWAYS_ON = 68719476736 const PROCESS_CREATION_MITIGATION_POLICY_PROHIBIT_DYNAMIC_CODE_ALWAYS_ON_ALLOW_OPT_OUT = 206158430208 const PROCESS_CREATION_MITIGATION_POLICY_PROHIBIT_DYNAMIC_CODE_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_PROHIBIT_DYNAMIC_CODE_MASK = 206158430208 const PROCESS_CREATION_MITIGATION_POLICY_SEHOP_ENABLE = 4 const PROCESS_CREATION_MITIGATION_POLICY_STRICT_HANDLE_CHECKS_ALWAYS_OFF = 33554432 const PROCESS_CREATION_MITIGATION_POLICY_STRICT_HANDLE_CHECKS_ALWAYS_ON = 16777216 const PROCESS_CREATION_MITIGATION_POLICY_STRICT_HANDLE_CHECKS_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_STRICT_HANDLE_CHECKS_MASK = 50331648 const PROCESS_CREATION_MITIGATION_POLICY_STRICT_HANDLE_CHECKS_RESERVED = 50331648 const PROCESS_CREATION_MITIGATION_POLICY_WIN32K_SYSTEM_CALL_DISABLE_ALWAYS_OFF = 536870912 const PROCESS_CREATION_MITIGATION_POLICY_WIN32K_SYSTEM_CALL_DISABLE_ALWAYS_ON = 268435456 const PROCESS_CREATION_MITIGATION_POLICY_WIN32K_SYSTEM_CALL_DISABLE_DEFER = 0 const PROCESS_CREATION_MITIGATION_POLICY_WIN32K_SYSTEM_CALL_DISABLE_MASK = 805306368 const PROCESS_CREATION_MITIGATION_POLICY_WIN32K_SYSTEM_CALL_DISABLE_RESERVED = 805306368 const PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION = 2 const PROCESS_DEP_ENABLE = 1 const PROCESS_DUP_HANDLE = 64 type PROCESS_DYNAMIC_EH_CONTINUATION_TARGET = TPROCESS_DYNAMIC_EH_CONTINUATION_TARGET type PROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION = TPROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION type PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE = TPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE type PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION = TPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION type PROCESS_HEAP_ENTRY = TPROCESS_HEAP_ENTRY const PROCESS_HEAP_ENTRY_BUSY = 4 const PROCESS_HEAP_ENTRY_DDESHARE = 32 const PROCESS_HEAP_ENTRY_MOVEABLE = 16 const PROCESS_HEAP_REGION = 1 const PROCESS_HEAP_SEG_ALLOC = 8 const PROCESS_HEAP_UNCOMMITTED_RANGE = 2 type PROCESS_INFORMATION = TPROCESS_INFORMATION type PROCESS_INFORMATION_CLASS = TPROCESS_INFORMATION_CLASS type PROCESS_LEAP_SECOND_INFO = TPROCESS_LEAP_SECOND_INFO const PROCESS_LEAP_SECOND_INFO_FLAG_ENABLE_SIXTY_SECOND = 1 const PROCESS_LEAP_SECOND_INFO_VALID_FLAGS = 1 type PROCESS_MACHINE_INFORMATION = TPROCESS_MACHINE_INFORMATION type PROCESS_MEMORY_EXHAUSTION_INFO = TPROCESS_MEMORY_EXHAUSTION_INFO type PROCESS_MEMORY_EXHAUSTION_TYPE = TPROCESS_MEMORY_EXHAUSTION_TYPE type PROCESS_MITIGATION_ASLR_POLICY = TPROCESS_MITIGATION_ASLR_POLICY type PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = TPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY type PROCESS_MITIGATION_CHILD_PROCESS_POLICY = TPROCESS_MITIGATION_CHILD_PROCESS_POLICY type PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = TPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY type PROCESS_MITIGATION_DEP_POLICY = TPROCESS_MITIGATION_DEP_POLICY type PROCESS_MITIGATION_DYNAMIC_CODE_POLICY = TPROCESS_MITIGATION_DYNAMIC_CODE_POLICY type PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = TPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY type PROCESS_MITIGATION_FONT_DISABLE_POLICY = TPROCESS_MITIGATION_FONT_DISABLE_POLICY type PROCESS_MITIGATION_IMAGE_LOAD_POLICY = TPROCESS_MITIGATION_IMAGE_LOAD_POLICY type PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY = TPROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY type PROCESS_MITIGATION_POLICY = TPROCESS_MITIGATION_POLICY type PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY = TPROCESS_MITIGATION_REDIRECTION_TRUST_POLICY type PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY = TPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY type PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = TPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY type PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = TPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY type PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY = TPROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY type PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY = TPROCESS_MITIGATION_USER_SHADOW_STACK_POLICY const PROCESS_MODE_BACKGROUND_BEGIN = 1048576 const PROCESS_MODE_BACKGROUND_END = 2097152 const PROCESS_NAME_NATIVE = 1 const PROCESS_POWER_THROTTLING_CURRENT_VERSION = 1 const PROCESS_POWER_THROTTLING_EXECUTION_SPEED = 1 const PROCESS_POWER_THROTTLING_IGNORE_TIMER_RESOLUTION = 4 type PROCESS_POWER_THROTTLING_STATE = TPROCESS_POWER_THROTTLING_STATE const PROCESS_POWER_THROTTLING_VALID_FLAGS = 5 type PROCESS_PROTECTION_LEVEL_INFORMATION = TPROCESS_PROTECTION_LEVEL_INFORMATION const PROCESS_QUERY_INFORMATION = 1024 const PROCESS_QUERY_LIMITED_INFORMATION = 4096 const PROCESS_SET_INFORMATION = 512 const PROCESS_SET_QUOTA = 256 const PROCESS_SET_SESSIONID = 4 const PROCESS_SUSPEND_RESUME = 2048 const PROCESS_TERMINATE = 1 const PROCESS_VM_OPERATION = 8 const PROCESS_VM_READ = 16 const PROCESS_VM_WRITE = 32 const PROC_IDLE_BUCKET_COUNT = 6 const PROC_IDLE_BUCKET_COUNT_EX = 16 const PROC_THREAD_ATTRIBUTE_ADDITIVE = 262144 const PROC_THREAD_ATTRIBUTE_ALL_APPLICATION_PACKAGES_POLICY = 131072 const PROC_THREAD_ATTRIBUTE_CHILD_PROCESS_POLICY = 131072 const PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY = 196608 const PROC_THREAD_ATTRIBUTE_HANDLE_LIST = 131072 const PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR = 196608 const PROC_THREAD_ATTRIBUTE_INPUT = 131072 const PROC_THREAD_ATTRIBUTE_JOB_LIST = 131072 const PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY = 131072 type PROC_THREAD_ATTRIBUTE_NUM = TPROC_THREAD_ATTRIBUTE_NUM const PROC_THREAD_ATTRIBUTE_NUMBER = 65535 const PROC_THREAD_ATTRIBUTE_PARENT_PROCESS = 131072 const PROC_THREAD_ATTRIBUTE_PREFERRED_NODE = 131072 const PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL = 131072 const PROC_THREAD_ATTRIBUTE_REPLACE_VALUE = 1 const PROC_THREAD_ATTRIBUTE_SECURITY_CAPABILITIES = 131072 const PROC_THREAD_ATTRIBUTE_THREAD = 65536 const PROC_THREAD_ATTRIBUTE_UMS_THREAD = 196608 const PROC_THREAD_ATTRIBUTE_WIN32K_FILTER = 131072 const PRODUCT_ARM64_SERVER = 120 const PRODUCT_BUSINESS = 6 const PRODUCT_BUSINESS_N = 16 const PRODUCT_CLOUD_HOST_INFRASTRUCTURE_SERVER = 124 const PRODUCT_CLOUD_STORAGE_SERVER = 110 const PRODUCT_CLUSTER_SERVER = 18 const PRODUCT_CLUSTER_SERVER_V = 64 const PRODUCT_CONNECTED_CAR = 117 const PRODUCT_CORE = 101 const PRODUCT_CORE_ARM = 97 const PRODUCT_CORE_CONNECTED = 111 const PRODUCT_CORE_CONNECTED_COUNTRYSPECIFIC = 116 const PRODUCT_CORE_CONNECTED_N = 113 const PRODUCT_CORE_CONNECTED_SINGLELANGUAGE = 115 const PRODUCT_CORE_COUNTRYSPECIFIC = 99 const PRODUCT_CORE_LANGUAGESPECIFIC = 100 const PRODUCT_CORE_N = 98 const PRODUCT_CORE_SINGLELANGUAGE = 100 const PRODUCT_DATACENTER_EVALUATION_SERVER = 80 const PRODUCT_DATACENTER_SERVER = 8 const PRODUCT_DATACENTER_SERVER_CORE = 12 const PRODUCT_DATACENTER_SERVER_CORE_V = 39 const PRODUCT_DATACENTER_SERVER_V = 37 const PRODUCT_EDUCATION = 121 const PRODUCT_EDUCATION_N = 122 const PRODUCT_EMBEDDED = 65 const PRODUCT_EMBEDDED_A = 88 const PRODUCT_EMBEDDED_AUTOMOTIVE = 85 const PRODUCT_EMBEDDED_E = 90 const PRODUCT_EMBEDDED_EVAL = 107 const PRODUCT_EMBEDDED_E_EVAL = 108 const PRODUCT_EMBEDDED_INDUSTRY = 89 const PRODUCT_EMBEDDED_INDUSTRY_A = 86 const PRODUCT_EMBEDDED_INDUSTRY_A_E = 92 const PRODUCT_EMBEDDED_INDUSTRY_E = 91 const PRODUCT_EMBEDDED_INDUSTRY_EVAL = 105 const PRODUCT_EMBEDDED_INDUSTRY_E_EVAL = 106 const PRODUCT_ENTERPRISE = 4 const PRODUCT_ENTERPRISE_E = 70 const PRODUCT_ENTERPRISE_EVALUATION = 72 const PRODUCT_ENTERPRISE_N = 27 const PRODUCT_ENTERPRISE_N_EVALUATION = 84 const PRODUCT_ENTERPRISE_S = 125 const PRODUCT_ENTERPRISE_SERVER = 10 const PRODUCT_ENTERPRISE_SERVER_CORE = 14 const PRODUCT_ENTERPRISE_SERVER_CORE_V = 41 const PRODUCT_ENTERPRISE_SERVER_IA64 = 15 const PRODUCT_ENTERPRISE_SERVER_V = 38 const PRODUCT_ENTERPRISE_S_EVALUATION = 129 const PRODUCT_ENTERPRISE_S_N = 126 const PRODUCT_ENTERPRISE_S_N_EVALUATION = 130 const PRODUCT_ESSENTIALBUSINESS_SERVER_ADDL = 60 const PRODUCT_ESSENTIALBUSINESS_SERVER_ADDLSVC = 62 const PRODUCT_ESSENTIALBUSINESS_SERVER_MGMT = 59 const PRODUCT_ESSENTIALBUSINESS_SERVER_MGMTSVC = 61 const PRODUCT_HOME_BASIC = 2 const PRODUCT_HOME_BASIC_E = 67 const PRODUCT_HOME_BASIC_N = 5 const PRODUCT_HOME_PREMIUM = 3 const PRODUCT_HOME_PREMIUM_E = 68 const PRODUCT_HOME_PREMIUM_N = 26 const PRODUCT_HOME_PREMIUM_SERVER = 34 const PRODUCT_HOME_SERVER = 19 const PRODUCT_HYPERV = 42 const PRODUCT_ID_LENGTH = 16 const PRODUCT_INDUSTRY_HANDHELD = 118 const PRODUCT_IOTUAP = 123 const PRODUCT_MEDIUMBUSINESS_SERVER_MANAGEMENT = 30 const PRODUCT_MEDIUMBUSINESS_SERVER_MESSAGING = 32 const PRODUCT_MEDIUMBUSINESS_SERVER_SECURITY = 31 const PRODUCT_MOBILE_CORE = 104 const PRODUCT_MOBILE_ENTERPRISE = 133 const PRODUCT_MULTIPOINT_PREMIUM_SERVER = 77 const PRODUCT_MULTIPOINT_STANDARD_SERVER = 76 const PRODUCT_NANO_SERVER = 109 const PRODUCT_PPI_PRO = 119 const PRODUCT_PROFESSIONAL = 48 const PRODUCT_PROFESSIONAL_E = 69 const PRODUCT_PROFESSIONAL_EMBEDDED = 58 const PRODUCT_PROFESSIONAL_N = 49 const PRODUCT_PROFESSIONAL_S = 127 const PRODUCT_PROFESSIONAL_STUDENT = 112 const PRODUCT_PROFESSIONAL_STUDENT_N = 114 const PRODUCT_PROFESSIONAL_S_N = 128 const PRODUCT_PROFESSIONAL_WMC = 103 const PRODUCT_SB_SOLUTION_SERVER = 50 const PRODUCT_SB_SOLUTION_SERVER_EM = 54 const PRODUCT_SERVER_FOR_SB_SOLUTIONS = 51 const PRODUCT_SERVER_FOR_SB_SOLUTIONS_EM = 55 const PRODUCT_SERVER_FOR_SMALLBUSINESS = 24 const PRODUCT_SERVER_FOR_SMALLBUSINESS_V = 35 const PRODUCT_SERVER_FOUNDATION = 33 const PRODUCT_SERVER_V = 37 const PRODUCT_SMALLBUSINESS_SERVER = 9 const PRODUCT_SMALLBUSINESS_SERVER_PREMIUM = 25 const PRODUCT_SMALLBUSINESS_SERVER_PREMIUM_CORE = 63 const PRODUCT_SOLUTION_EMBEDDEDSERVER = 56 const PRODUCT_SOLUTION_EMBEDDEDSERVER_CORE = 57 const PRODUCT_STANDARD_EVALUATION_SERVER = 79 const PRODUCT_STANDARD_SERVER = 7 const PRODUCT_STANDARD_SERVER_CORE = 13 const PRODUCT_STANDARD_SERVER_CORE_V = 40 const PRODUCT_STANDARD_SERVER_SOLUTIONS = 52 const PRODUCT_STANDARD_SERVER_SOLUTIONS_CORE = 53 const PRODUCT_STANDARD_SERVER_V = 36 const PRODUCT_STARTER = 11 const PRODUCT_STARTER_E = 66 const PRODUCT_STARTER_N = 47 const PRODUCT_STORAGE_ENTERPRISE_SERVER = 23 const PRODUCT_STORAGE_ENTERPRISE_SERVER_CORE = 46 const PRODUCT_STORAGE_EXPRESS_SERVER = 20 const PRODUCT_STORAGE_EXPRESS_SERVER_CORE = 43 const PRODUCT_STORAGE_STANDARD_EVALUATION_SERVER = 96 const PRODUCT_STORAGE_STANDARD_SERVER = 21 const PRODUCT_STORAGE_STANDARD_SERVER_CORE = 44 const PRODUCT_STORAGE_WORKGROUP_EVALUATION_SERVER = 95 const PRODUCT_STORAGE_WORKGROUP_SERVER = 22 const PRODUCT_STORAGE_WORKGROUP_SERVER_CORE = 45 const PRODUCT_THINPC = 87 const PRODUCT_ULTIMATE = 1 const PRODUCT_ULTIMATE_E = 71 const PRODUCT_ULTIMATE_N = 28 const PRODUCT_UNDEFINED = 0 const PRODUCT_UNLICENSED = 2882382797 const PRODUCT_WEB_SERVER = 17 const PRODUCT_WEB_SERVER_CORE = 29 const PROFILE_EMBEDDED = 77 const PROFILE_KERNEL = 536870912 const PROFILE_LINKED = 76 const PROFILE_SERVER = 1073741824 const PROFILE_USER = 268435456 const PROGRESS_CANCEL = 1 const PROGRESS_CONTINUE = 0 const PROGRESS_QUIET = 3 const PROGRESS_STOP = 2 const PROOF_QUALITY = 2 type PROOT_INFO_LUID = TPROOT_INFO_LUID type PROPENUMPROC = TPROPENUMPROC type PROPENUMPROCA = TPROPENUMPROCA type PROPENUMPROCEX = TPROPENUMPROCEX type PROPENUMPROCEXA = TPROPENUMPROCEXA type PROPENUMPROCEXW = TPROPENUMPROCEXW type PROPENUMPROCW = TPROPENUMPROCW type PROPERTYKEY = TPROPERTYKEY type PROPID = TPROPID const PROPSETFLAG_ANSI = 2 const PROPSETFLAG_CASE_SENSITIVE = 8 const PROPSETFLAG_DEFAULT = 0 const PROPSETFLAG_NONSIMPLE = 1 const PROPSETFLAG_UNBUFFERED = 4 const PROPSETHDR_OSVERSION_UNKNOWN = 4294967295 const PROPSET_BEHAVIOR_CASE_SENSITIVE = 1 const PROPSHEETHEADER = 0 type PROPSHEETHEADERA = TPROPSHEETHEADERA type PROPSHEETHEADERW = TPROPSHEETHEADERW const PROPSHEETPAGE = 0 type PROPSHEETPAGEA = TPROPSHEETPAGEA type PROPSHEETPAGEA_LATEST = TPROPSHEETPAGEA_LATEST type PROPSHEETPAGEA_V1 = TPROPSHEETPAGEA_V1 type PROPSHEETPAGEA_V2 = TPROPSHEETPAGEA_V2 type PROPSHEETPAGEA_V3 = TPROPSHEETPAGEA_V3 type PROPSHEETPAGEW = TPROPSHEETPAGEW type PROPSHEETPAGEW_LATEST = TPROPSHEETPAGEW_LATEST type PROPSHEETPAGEW_V1 = TPROPSHEETPAGEW_V1 type PROPSHEETPAGEW_V2 = TPROPSHEETPAGEW_V2 type PROPSHEETPAGEW_V3 = TPROPSHEETPAGEW_V3 const PROPSHEETPAGE_LATEST = 0 type PROPSHEETPAGE_RESOURCE = TPROPSHEETPAGE_RESOURCE const PROPSHEETPAGE_V1 = 0 const PROPSHEETPAGE_V2 = 0 const PROPSHEETPAGE_V3 = 0 type PROPSPEC = TPROPSPEC type PROPVARIANT = TPROPVARIANT type PROPVAR_PAD1 = TPROPVAR_PAD1 type PROPVAR_PAD2 = TPROPVAR_PAD2 type PROPVAR_PAD3 = TPROPVAR_PAD3 const PROP_LG_CXDLG = 252 const PROP_LG_CYDLG = 218 const PROP_MED_CXDLG = 227 const PROP_MED_CYDLG = 215 const PROP_SM_CXDLG = 212 const PROP_SM_CYDLG = 188 const PROTECTED_DACL_SECURITY_INFORMATION = 2147483648 const PROTECTED_SACL_SECURITY_INFORMATION = 1073741824 const PROTECTION_LEVEL_ANTIMALWARE_LIGHT = 3 const PROTECTION_LEVEL_AUTHENTICODE = 7 const PROTECTION_LEVEL_CODEGEN_LIGHT = 6 const PROTECTION_LEVEL_LSA_LIGHT = 4 const PROTECTION_LEVEL_NONE = 4294967294 const PROTECTION_LEVEL_PPL_APP = 8 const PROTECTION_LEVEL_SAME = 4294967295 const PROTECTION_LEVEL_WINDOWS = 1 const PROTECTION_LEVEL_WINDOWS_LIGHT = 2 const PROTECTION_LEVEL_WINTCB = 5 const PROTECTION_LEVEL_WINTCB_LIGHT = 0 type PROTOCOLDATA = TPROTOCOLDATA type PROTOCOLFILTERDATA = TPROTOCOLFILTERDATA const PROTOCOLFLAG_NO_PICS_CHECK = 1 type PROTOCOL_ARGUMENT = TPROTOCOL_ARGUMENT type PROTOENT = TPROTOENT const PROVIDER_KEEPS_VALUE_LENGTH = 1 type PROVIDOR_INFO_1 = TPROVIDOR_INFO_1 type PROVIDOR_INFO_1A = TPROVIDOR_INFO_1A type PROVIDOR_INFO_1W = TPROVIDOR_INFO_1W type PROVIDOR_INFO_2 = TPROVIDOR_INFO_2 type PROVIDOR_INFO_2A = TPROVIDOR_INFO_2A type PROVIDOR_INFO_2W = TPROVIDOR_INFO_2W const PROV_DH_SCHANNEL = 18 const PROV_DSS = 3 const PROV_DSS_DH = 13 const PROV_EC_ECDSA_FULL = 16 const PROV_EC_ECDSA_SIG = 14 const PROV_EC_ECNRA_FULL = 17 const PROV_EC_ECNRA_SIG = 15 type PROV_ENUMALGS = TPROV_ENUMALGS type PROV_ENUMALGS_EX = TPROV_ENUMALGS_EX const PROV_FORTEZZA = 4 const PROV_INTEL_SEC = 22 const PROV_MS_EXCHANGE = 5 const PROV_REPLACE_OWF = 23 const PROV_RNG = 21 const PROV_RSA_AES = 24 const PROV_RSA_FULL = 1 const PROV_RSA_SCHANNEL = 12 const PROV_RSA_SIG = 2 const PROV_SPYRUS_LYNKS = 20 const PROV_SSL = 6 const PROV_STT_ACQ = 8 const PROV_STT_BRND = 9 const PROV_STT_ISS = 11 const PROV_STT_MER = 7 const PROV_STT_ROOT = 10 type PROXY_PHASE = TPROXY_PHASE type PRPCOLEMESSAGE = TPRPCOLEMESSAGE type PRPC_ASYNC_NOTIFICATION_INFO = TPRPC_ASYNC_NOTIFICATION_INFO type PRPC_ASYNC_STATE = TPRPC_ASYNC_STATE type PRPC_CLIENT_INFORMATION1 = TPRPC_CLIENT_INFORMATION1 type PRPC_CLIENT_INTERFACE = TPRPC_CLIENT_INTERFACE type PRPC_DISPATCH_TABLE = TPRPC_DISPATCH_TABLE const PRPC_HTTP_TRANSPORT_CREDENTIALS = 0 type PRPC_HTTP_TRANSPORT_CREDENTIALS_A = TPRPC_HTTP_TRANSPORT_CREDENTIALS_A type PRPC_HTTP_TRANSPORT_CREDENTIALS_W = TPRPC_HTTP_TRANSPORT_CREDENTIALS_W type PRPC_IMPORT_CONTEXT_P = TPRPC_IMPORT_CONTEXT_P type PRPC_MESSAGE = TPRPC_MESSAGE type PRPC_POLICY = TPRPC_POLICY type PRPC_PROTSEQ_ENDPOINT = TPRPC_PROTSEQ_ENDPOINT type PRPC_RUNDOWN = TPRPC_RUNDOWN type PRPC_SECURITY_QOS = TPRPC_SECURITY_QOS const PRPC_SECURITY_QOS_V2 = 0 type PRPC_SECURITY_QOS_V2_A = TPRPC_SECURITY_QOS_V2_A type PRPC_SECURITY_QOS_V2_W = TPRPC_SECURITY_QOS_V2_W const PRPC_SECURITY_QOS_V3 = 0 type PRPC_SECURITY_QOS_V3_A = TPRPC_SECURITY_QOS_V3_A type PRPC_SECURITY_QOS_V3_W = TPRPC_SECURITY_QOS_V3_W type PRPC_SERVER_INTERFACE = TPRPC_SERVER_INTERFACE type PRPC_SYNTAX_IDENTIFIER = TPRPC_SYNTAX_IDENTIFIER const PRSPEC_INVALID = 4294967295 const PRSPEC_LPWSTR = 0 const PRSPEC_PROPID = 1 type PRTL_BARRIER = TPRTL_BARRIER type PRTL_CONDITION_VARIABLE = TPRTL_CONDITION_VARIABLE type PRTL_CRITICAL_SECTION = TPRTL_CRITICAL_SECTION type PRTL_CRITICAL_SECTION_DEBUG = TPRTL_CRITICAL_SECTION_DEBUG type PRTL_OSVERSIONINFOEXW = TPRTL_OSVERSIONINFOEXW type PRTL_OSVERSIONINFOW = TPRTL_OSVERSIONINFOW type PRTL_RESOURCE_DEBUG = TPRTL_RESOURCE_DEBUG type PRTL_RUN_ONCE = TPRTL_RUN_ONCE type PRTL_RUN_ONCE_INIT_FN = TPRTL_RUN_ONCE_INIT_FN type PRTL_SRWLOCK = TPRTL_SRWLOCK type PRTL_UMS_SCHEDULER_ENTRY_POINT = TPRTL_UMS_SCHEDULER_ENTRY_POINT type PRTL_UMS_SCHEDULER_REASON = TPRTL_UMS_SCHEDULER_REASON type PRTL_UMS_THREAD_INFO_CLASS = TPRTL_UMS_THREAD_INFO_CLASS type PRTL_VERIFIER_DLL_DESCRIPTOR = TPRTL_VERIFIER_DLL_DESCRIPTOR type PRTL_VERIFIER_PROVIDER_DESCRIPTOR = TPRTL_VERIFIER_PROVIDER_DESCRIPTOR type PRTL_VERIFIER_THUNK_DESCRIPTOR = TPRTL_VERIFIER_THUNK_DESCRIPTOR const PR_JOBSTATUS = 0 type PSAVEPOINT_ID = TPSAVEPOINT_ID const PSBTN_APPLYNOW = 4 const PSBTN_BACK = 0 const PSBTN_CANCEL = 5 const PSBTN_FINISH = 2 const PSBTN_HELP = 6 const PSBTN_MAX = 6 const PSBTN_NEXT = 1 const PSBTN_OK = 3 type PSCARDCONTEXT = TPSCARDCONTEXT type PSCARDHANDLE = TPSCARDHANDLE type PSCARD_ATRMASK = TPSCARD_ATRMASK type PSCARD_IO_REQUEST = TPSCARD_IO_REQUEST type PSCARD_READERSTATE = TPSCARD_READERSTATE type PSCARD_READERSTATEA = TPSCARD_READERSTATEA type PSCARD_READERSTATEW = TPSCARD_READERSTATEW const PSCARD_READERSTATE_A = 0 const PSCARD_READERSTATE_W = 0 type PSCARD_T0_REQUEST = TPSCARD_T0_REQUEST type PSCARD_T1_REQUEST = TPSCARD_T1_REQUEST const PSCB_BUTTONPRESSED = 3 const PSCB_INITIALIZED = 1 const PSCB_PRECREATE = 2 type PSCHANNEL_ALG = TPSCHANNEL_ALG type PSCODE = TPSCODE type PSCONTEXT_QUEUE = TPSCONTEXT_QUEUE type PSCOPE_TABLE_AMD64 = TPSCOPE_TABLE_AMD64 type PSCROLLBARINFO = TPSCROLLBARINFO type PSCRUB_DATA_INPUT = TPSCRUB_DATA_INPUT type PSCRUB_DATA_OUTPUT = TPSCRUB_DATA_OUTPUT type PSD_CHANGE_MACHINE_SID_INPUT = TPSD_CHANGE_MACHINE_SID_INPUT type PSD_CHANGE_MACHINE_SID_OUTPUT = TPSD_CHANGE_MACHINE_SID_OUTPUT const PSD_DEFAULTMINMARGINS = 0 const PSD_DISABLEMARGINS = 16 const PSD_DISABLEORIENTATION = 256 const PSD_DISABLEPAGEPAINTING = 524288 const PSD_DISABLEPAPER = 512 const PSD_DISABLEPRINTER = 32 const PSD_ENABLEPAGEPAINTHOOK = 262144 const PSD_ENABLEPAGESETUPHOOK = 8192 const PSD_ENABLEPAGESETUPTEMPLATE = 32768 const PSD_ENABLEPAGESETUPTEMPLATEHANDLE = 131072 const PSD_INHUNDREDTHSOFMILLIMETERS = 8 const PSD_INTHOUSANDTHSOFINCHES = 4 const PSD_INWININIINTLMEASURE = 0 const PSD_MARGINS = 2 const PSD_MINMARGINS = 1 const PSD_NONETWORKBUTTON = 2097152 const PSD_NOWARNING = 128 const PSD_RETURNDEFAULT = 1024 const PSD_SHOWHELP = 2048 type PSECURE_MEMORY_CACHE_CALLBACK = TPSECURE_MEMORY_CACHE_CALLBACK type PSECURITY_ATTRIBUTES = TPSECURITY_ATTRIBUTES type PSECURITY_CAPABILITIES = TPSECURITY_CAPABILITIES type PSECURITY_CONTEXT_TRACKING_MODE = TPSECURITY_CONTEXT_TRACKING_MODE type PSECURITY_DESCRIPTOR = TPSECURITY_DESCRIPTOR type PSECURITY_DESCRIPTOR_CONTROL = TPSECURITY_DESCRIPTOR_CONTROL type PSECURITY_IMPERSONATION_LEVEL = TPSECURITY_IMPERSONATION_LEVEL type PSECURITY_INFORMATION = TPSECURITY_INFORMATION type PSECURITY_QUALITY_OF_SERVICE = TPSECURITY_QUALITY_OF_SERVICE const PSEC_WINNT_AUTH_IDENTITY = 0 type PSEC_WINNT_AUTH_IDENTITY_A = TPSEC_WINNT_AUTH_IDENTITY_A type PSEC_WINNT_AUTH_IDENTITY_W = TPSEC_WINNT_AUTH_IDENTITY_W type PSENDCMDINPARAMS = TPSENDCMDINPARAMS type PSENDCMDOUTPARAMS = TPSENDCMDOUTPARAMS type PSERVENT = TPSERVENT type PSERVICE_CONTROL_STATUS_REASON_PARAMS = TPSERVICE_CONTROL_STATUS_REASON_PARAMS type PSERVICE_CONTROL_STATUS_REASON_PARAMSA = TPSERVICE_CONTROL_STATUS_REASON_PARAMSA type PSERVICE_CONTROL_STATUS_REASON_PARAMSW = TPSERVICE_CONTROL_STATUS_REASON_PARAMSW type PSERVICE_NOTIFY = TPSERVICE_NOTIFY type PSERVICE_NOTIFYA = TPSERVICE_NOTIFYA type PSERVICE_NOTIFYW = TPSERVICE_NOTIFYW type PSESSION_BUFFER = TPSESSION_BUFFER type PSESSION_HEADER = TPSESSION_HEADER type PSET_PARTITION_INFORMATION = TPSET_PARTITION_INFORMATION type PSET_PARTITION_INFORMATION_EX = TPSET_PARTITION_INFORMATION_EX type PSET_POWER_SETTING_VALUE = TPSET_POWER_SETTING_VALUE type PSET_VIRTUAL_DISK_INFO = TPSET_VIRTUAL_DISK_INFO type PSE_ACCESS_REPLY = TPSE_ACCESS_REPLY type PSE_ACCESS_REQUEST = TPSE_ACCESS_REQUEST type PSE_IMPERSONATION_STATE = TPSE_IMPERSONATION_STATE type PSE_SECURITY_DESCRIPTOR = TPSE_SECURITY_DESCRIPTOR type PSFEATURE_CUSTPAPER = TPSFEATURE_CUSTPAPER type PSFEATURE_OUTPUT = TPSFEATURE_OUTPUT type PSHCREATEPROCESSINFOW = TPSHCREATEPROCESSINFOW type PSHNOTIFY = TPSHNOTIFY type PSHORT = TPSHORT type PSHRINK_VOLUME_INFORMATION = TPSHRINK_VOLUME_INFORMATION const PSH_DEFAULT = 0 const PSH_HASHELP = 512 const PSH_HEADER = 524288 const PSH_MODELESS = 1024 const PSH_NOAPPLYNOW = 128 const PSH_NOCONTEXTHELP = 33554432 const PSH_PROPSHEETPAGE = 8 const PSH_PROPTITLE = 1 const PSH_RTLREADING = 2048 const PSH_STRETCHWATERMARK = 262144 const PSH_USECALLBACK = 256 const PSH_USEHBMHEADER = 1048576 const PSH_USEHBMWATERMARK = 65536 const PSH_USEHICON = 2 const PSH_USEHPLWATERMARK = 131072 const PSH_USEICONID = 4 const PSH_USEPAGELANG = 2097152 const PSH_USEPSTARTPAGE = 64 const PSH_WATERMARK = 32768 const PSH_WIZARD = 32 const PSH_WIZARD97 = 16777216 const PSH_WIZARDCONTEXTHELP = 4096 const PSH_WIZARDHASFINISH = 16 const PSH_WIZARD_LITE = 4194304 type PSID = TPSID const PSIDENT_GDICENTRIC = 0 const PSIDENT_PSCENTRIC = 1 type PSID_AND_ATTRIBUTES = TPSID_AND_ATTRIBUTES type PSID_AND_ATTRIBUTES_ARRAY = TPSID_AND_ATTRIBUTES_ARRAY type PSID_AND_ATTRIBUTES_HASH = TPSID_AND_ATTRIBUTES_HASH type PSID_HASH_ENTRY = TPSID_HASH_ENTRY type PSID_IDENTIFIER_AUTHORITY = TPSID_IDENTIFIER_AUTHORITY type PSID_NAME_USE = TPSID_NAME_USE type PSINGLE_LIST_ENTRY = TPSINGLE_LIST_ENTRY type PSINJECTDATA = TPSINJECTDATA const PSINJECT_BEGINDEFAULTS = 12 const PSINJECT_BEGINPAGESETUP = 101 const PSINJECT_BEGINPROLOG = 14 const PSINJECT_BEGINSETUP = 16 const PSINJECT_BEGINSTREAM = 1 const PSINJECT_BOUNDINGBOX = 9 const PSINJECT_COMMENTS = 11 const PSINJECT_DLFONT = 3722304989 const PSINJECT_DOCNEEDEDRES = 5 const PSINJECT_DOCSUPPLIEDRES = 6 const PSINJECT_DOCUMENTPROCESSCOLORS = 10 const PSINJECT_DOCUMENTPROCESSCOLORSATEND = 21 const PSINJECT_ENDDEFAULTS = 13 const PSINJECT_ENDPAGECOMMENTS = 107 const PSINJECT_ENDPAGESETUP = 102 const PSINJECT_ENDPROLOG = 15 const PSINJECT_ENDSETUP = 17 const PSINJECT_ENDSTREAM = 20 const PSINJECT_EOF = 19 const PSINJECT_ORIENTATION = 8 const PSINJECT_PAGEBBOX = 106 const PSINJECT_PAGENUMBER = 100 const PSINJECT_PAGEORDER = 7 const PSINJECT_PAGES = 4 const PSINJECT_PAGESATEND = 3 const PSINJECT_PAGETRAILER = 103 const PSINJECT_PLATECOLOR = 104 const PSINJECT_PSADOBE = 2 const PSINJECT_SHOWPAGE = 105 const PSINJECT_TRAILER = 18 const PSINJECT_VMRESTORE = 201 const PSINJECT_VMSAVE = 200 type PSIZE = TPSIZE type PSIZEL = TPSIZEL type PSIZE_T = TPSIZE_T type PSI_COPYFILE = TPSI_COPYFILE type PSLIST_ENTRY = TPSLIST_ENTRY type PSLIST_HEADER = TPSLIST_HEADER type PSMALL_RECT = TPSMALL_RECT const PSM_ADDPAGE = 1127 const PSM_APPLY = 1134 const PSM_CANCELTOCLOSE = 1131 const PSM_CHANGED = 1128 const PSM_GETCURRENTPAGEHWND = 1142 const PSM_GETRESULT = 1159 const PSM_GETTABCONTROL = 1140 const PSM_HWNDTOINDEX = 1153 const PSM_IDTOINDEX = 1157 const PSM_INDEXTOHWND = 1154 const PSM_INDEXTOID = 1158 const PSM_INDEXTOPAGE = 1156 const PSM_INSERTPAGE = 1143 const PSM_ISDIALOGMESSAGE = 1141 const PSM_PAGETOINDEX = 1155 const PSM_PRESSBUTTON = 1137 const PSM_QUERYSIBLINGS = 1132 const PSM_REBOOTSYSTEM = 1130 const PSM_RECALCPAGESIZES = 1160 const PSM_REMOVEPAGE = 1126 const PSM_RESTARTWINDOWS = 1129 const PSM_SETCURSEL = 1125 const PSM_SETCURSELID = 1138 const PSM_SETFINISHTEXT = 1139 const PSM_SETFINISHTEXTA = 1139 const PSM_SETFINISHTEXTW = 1145 const PSM_SETHEADERSUBTITLE = 1151 const PSM_SETHEADERSUBTITLEA = 1151 const PSM_SETHEADERSUBTITLEW = 1152 const PSM_SETHEADERTITLE = 1149 const PSM_SETHEADERTITLEA = 1149 const PSM_SETHEADERTITLEW = 1150 const PSM_SETTITLE = 1135 const PSM_SETTITLEA = 1135 const PSM_SETTITLEW = 1144 const PSM_SETWIZBUTTONS = 1136 const PSM_UNCHANGED = 1133 const PSNRET_INVALID = 1 const PSNRET_INVALID_NOCHANGEPAGE = 2 const PSNRET_MESSAGEHANDLED = 3 const PSNRET_NOERROR = 0 const PSN_APPLY = 18446744073709551414 const PSN_FIRST = 18446744073709551416 const PSN_GETOBJECT = 18446744073709551406 const PSN_HELP = 18446744073709551411 const PSN_KILLACTIVE = 18446744073709551415 const PSN_LAST = 18446744073709551317 const PSN_QUERYCANCEL = 18446744073709551407 const PSN_QUERYINITIALFOCUS = 18446744073709551403 const PSN_RESET = 18446744073709551413 const PSN_SETACTIVE = 18446744073709551416 const PSN_TRANSLATEACCELERATOR = 18446744073709551404 const PSN_WIZBACK = 18446744073709551410 const PSN_WIZFINISH = 18446744073709551408 const PSN_WIZNEXT = 18446744073709551409 type PSOCKADDR = TPSOCKADDR type PSOCKADDR_IN = TPSOCKADDR_IN type PSOLE_AUTHENTICATION_INFO = TPSOLE_AUTHENTICATION_INFO type PSOLE_AUTHENTICATION_LIST = TPSOLE_AUTHENTICATION_LIST type PSOLE_AUTHENTICATION_SERVICE = TPSOLE_AUTHENTICATION_SERVICE const PSPCB_ADDREF = 0 const PSPCB_CREATE = 2 const PSPCB_RELEASE = 1 const PSPROTOCOL_ASCII = 0 const PSPROTOCOL_BCP = 1 const PSPROTOCOL_BINARY = 3 const PSPROTOCOL_TBCP = 2 const PSP_DEFAULT = 0 const PSP_DLGINDIRECT = 1 const PSP_HASHELP = 32 const PSP_HIDEHEADER = 2048 const PSP_PREMATURE = 1024 const PSP_RTLREADING = 16 const PSP_USECALLBACK = 128 const PSP_USEFUSIONCONTEXT = 16384 const PSP_USEHEADERSUBTITLE = 8192 const PSP_USEHEADERTITLE = 4096 const PSP_USEHICON = 2 const PSP_USEICONID = 4 const PSP_USEREFPARENT = 64 const PSP_USETITLE = 8 type PSRWLOCK = TPSRWLOCK type PSSIZE_T = TPSSIZE_T type PSSL_EXTRA_CERT_CHAIN_POLICY_PARA = TPSSL_EXTRA_CERT_CHAIN_POLICY_PARA type PSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS = TPSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS type PSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA = TPSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA type PSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA = TPSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA type PSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS = TPSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS type PSTARTING_LCN_INPUT_BUFFER = TPSTARTING_LCN_INPUT_BUFFER type PSTARTING_VCN_INPUT_BUFFER = TPSTARTING_VCN_INPUT_BUFFER type PSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR = TPSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR type PSTORAGE_ADAPTER_DESCRIPTOR = TPSTORAGE_ADAPTER_DESCRIPTOR type PSTORAGE_ALLOCATE_BC_STREAM_INPUT = TPSTORAGE_ALLOCATE_BC_STREAM_INPUT type PSTORAGE_ALLOCATE_BC_STREAM_OUTPUT = TPSTORAGE_ALLOCATE_BC_STREAM_OUTPUT type PSTORAGE_ASSOCIATION_TYPE = TPSTORAGE_ASSOCIATION_TYPE type PSTORAGE_BREAK_RESERVATION_REQUEST = TPSTORAGE_BREAK_RESERVATION_REQUEST type PSTORAGE_BUS_RESET_REQUEST = TPSTORAGE_BUS_RESET_REQUEST type PSTORAGE_BUS_TYPE = TPSTORAGE_BUS_TYPE type PSTORAGE_CRYPTO_ALGORITHM_ID = TPSTORAGE_CRYPTO_ALGORITHM_ID type PSTORAGE_CRYPTO_CAPABILITY = TPSTORAGE_CRYPTO_CAPABILITY type PSTORAGE_CRYPTO_DESCRIPTOR = TPSTORAGE_CRYPTO_DESCRIPTOR type PSTORAGE_CRYPTO_KEY_SIZE = TPSTORAGE_CRYPTO_KEY_SIZE type PSTORAGE_DEPENDENCY_INFO = TPSTORAGE_DEPENDENCY_INFO type PSTORAGE_DEPENDENCY_INFO_TYPE_1 = TPSTORAGE_DEPENDENCY_INFO_TYPE_1 type PSTORAGE_DEPENDENCY_INFO_TYPE_2 = TPSTORAGE_DEPENDENCY_INFO_TYPE_2 type PSTORAGE_DESCRIPTOR_HEADER = TPSTORAGE_DESCRIPTOR_HEADER type PSTORAGE_DEVICE_DESCRIPTOR = TPSTORAGE_DEVICE_DESCRIPTOR type PSTORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR = TPSTORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR type PSTORAGE_DEVICE_ID_DESCRIPTOR = TPSTORAGE_DEVICE_ID_DESCRIPTOR type PSTORAGE_DEVICE_NUMBER = TPSTORAGE_DEVICE_NUMBER type PSTORAGE_DEVICE_NUMBERS = TPSTORAGE_DEVICE_NUMBERS type PSTORAGE_DEVICE_NUMBER_EX = TPSTORAGE_DEVICE_NUMBER_EX type PSTORAGE_DEVICE_RESILIENCY_DESCRIPTOR = TPSTORAGE_DEVICE_RESILIENCY_DESCRIPTOR type PSTORAGE_DEVICE_TIERING_DESCRIPTOR = TPSTORAGE_DEVICE_TIERING_DESCRIPTOR type PSTORAGE_FAILURE_PREDICTION_CONFIG = TPSTORAGE_FAILURE_PREDICTION_CONFIG type PSTORAGE_GET_BC_PROPERTIES_OUTPUT = TPSTORAGE_GET_BC_PROPERTIES_OUTPUT type PSTORAGE_HOTPLUG_INFO = TPSTORAGE_HOTPLUG_INFO type PSTORAGE_IDENTIFIER = TPSTORAGE_IDENTIFIER type PSTORAGE_IDENTIFIER_CODE_SET = TPSTORAGE_IDENTIFIER_CODE_SET type PSTORAGE_IDENTIFIER_TYPE = TPSTORAGE_IDENTIFIER_TYPE type PSTORAGE_ID_NAA_FORMAT = TPSTORAGE_ID_NAA_FORMAT type PSTORAGE_LB_PROVISIONING_MAP_RESOURCES = TPSTORAGE_LB_PROVISIONING_MAP_RESOURCES type PSTORAGE_MEDIA_SERIAL_NUMBER_DATA = TPSTORAGE_MEDIA_SERIAL_NUMBER_DATA type PSTORAGE_MEDIA_TYPE = TPSTORAGE_MEDIA_TYPE type PSTORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR = TPSTORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR type PSTORAGE_MINIPORT_DESCRIPTOR = TPSTORAGE_MINIPORT_DESCRIPTOR type PSTORAGE_PORT_CODE_SET = TPSTORAGE_PORT_CODE_SET type PSTORAGE_PREDICT_FAILURE = TPSTORAGE_PREDICT_FAILURE type PSTORAGE_PRIORITY_HINT_SUPPORT = TPSTORAGE_PRIORITY_HINT_SUPPORT type PSTORAGE_PROPERTY_ID = TPSTORAGE_PROPERTY_ID type PSTORAGE_PROPERTY_QUERY = TPSTORAGE_PROPERTY_QUERY type PSTORAGE_PROPERTY_SET = TPSTORAGE_PROPERTY_SET type PSTORAGE_PROTOCOL_ATA_DATA_TYPE = TPSTORAGE_PROTOCOL_ATA_DATA_TYPE type PSTORAGE_PROTOCOL_DATA_DESCRIPTOR = TPSTORAGE_PROTOCOL_DATA_DESCRIPTOR type PSTORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT = TPSTORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT type PSTORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE = TPSTORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE type PSTORAGE_PROTOCOL_NVME_DATA_TYPE = TPSTORAGE_PROTOCOL_NVME_DATA_TYPE type PSTORAGE_PROTOCOL_SPECIFIC_DATA = TPSTORAGE_PROTOCOL_SPECIFIC_DATA type PSTORAGE_PROTOCOL_SPECIFIC_DATA_EXT = TPSTORAGE_PROTOCOL_SPECIFIC_DATA_EXT type PSTORAGE_PROTOCOL_TYPE = TPSTORAGE_PROTOCOL_TYPE type PSTORAGE_PROTOCOL_UFS_DATA_TYPE = TPSTORAGE_PROTOCOL_UFS_DATA_TYPE type PSTORAGE_QUERY_TYPE = TPSTORAGE_QUERY_TYPE type PSTORAGE_READ_CAPACITY = TPSTORAGE_READ_CAPACITY type PSTORAGE_RPMB_DESCRIPTOR = TPSTORAGE_RPMB_DESCRIPTOR type PSTORAGE_RPMB_FRAME_TYPE = TPSTORAGE_RPMB_FRAME_TYPE type PSTORAGE_SET_TYPE = TPSTORAGE_SET_TYPE type PSTORAGE_TIER = TPSTORAGE_TIER type PSTORAGE_TIER_CLASS = TPSTORAGE_TIER_CLASS type PSTORAGE_TIER_MEDIA_TYPE = TPSTORAGE_TIER_MEDIA_TYPE type PSTORAGE_WRITE_CACHE_PROPERTY = TPSTORAGE_WRITE_CACHE_PROPERTY type PSTR = TPSTR type PSTYLEBUF = TPSTYLEBUF type PSTYLEBUFA = TPSTYLEBUFA type PSTYLEBUFW = TPSTYLEBUFW type PSUACTION = TPSUACTION type PSUPPORTED_OS_INFO = TPSUPPORTED_OS_INFO const PSWIZB_BACK = 1 const PSWIZB_DISABLEDFINISH = 8 const PSWIZB_FINISH = 4 const PSWIZB_NEXT = 2 type PSYNCHRONIZATION_BARRIER = TPSYNCHRONIZATION_BARRIER type PSYSTEMTIME = TPSYSTEMTIME type PSYSTEM_ALARM_ACE = TPSYSTEM_ALARM_ACE type PSYSTEM_ALARM_CALLBACK_ACE = TPSYSTEM_ALARM_CALLBACK_ACE type PSYSTEM_ALARM_CALLBACK_OBJECT_ACE = TPSYSTEM_ALARM_CALLBACK_OBJECT_ACE type PSYSTEM_ALARM_OBJECT_ACE = TPSYSTEM_ALARM_OBJECT_ACE type PSYSTEM_AUDIT_ACE = TPSYSTEM_AUDIT_ACE type PSYSTEM_AUDIT_CALLBACK_ACE = TPSYSTEM_AUDIT_CALLBACK_ACE type PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE = TPSYSTEM_AUDIT_CALLBACK_OBJECT_ACE type PSYSTEM_AUDIT_OBJECT_ACE = TPSYSTEM_AUDIT_OBJECT_ACE type PSYSTEM_BATTERY_STATE = TPSYSTEM_BATTERY_STATE type PSYSTEM_LOGICAL_PROCESSOR_INFORMATION = TPSYSTEM_LOGICAL_PROCESSOR_INFORMATION type PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = TPSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX type PSYSTEM_MANDATORY_LABEL_ACE = TPSYSTEM_MANDATORY_LABEL_ACE type PSYSTEM_POWER_CAPABILITIES = TPSYSTEM_POWER_CAPABILITIES type PSYSTEM_POWER_LEVEL = TPSYSTEM_POWER_LEVEL type PSYSTEM_POWER_POLICY = TPSYSTEM_POWER_POLICY type PSYSTEM_POWER_STATE = TPSYSTEM_POWER_STATE type PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = TPSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION type PSYSTEM_RESOURCE_ATTRIBUTE_ACE = TPSYSTEM_RESOURCE_ATTRIBUTE_ACE type PSYSTEM_SCOPED_POLICY_ID_ACE = TPSYSTEM_SCOPED_POLICY_ID_ACE type PSYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION = TPSYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION type PSZ = TPSZ const PS_ALTERNATE = 8 const PS_COSMETIC = 0 const PS_DASH = 1 const PS_DASHDOT = 3 const PS_DASHDOTDOT = 4 const PS_DOT = 2 const PS_ENDCAP_FLAT = 512 const PS_ENDCAP_MASK = 3840 const PS_ENDCAP_ROUND = 0 const PS_ENDCAP_SQUARE = 256 const PS_GEOMETRIC = 65536 const PS_INSIDEFRAME = 6 const PS_JOIN_BEVEL = 4096 const PS_JOIN_MASK = 61440 const PS_JOIN_MITER = 8192 const PS_JOIN_ROUND = 0 const PS_NULL = 5 const PS_OPENTYPE_FONTTYPE = 65536 const PS_SOLID = 0 const PS_STYLE_MASK = 15 const PS_TYPE_MASK = 983040 const PS_USERSTYLE = 7 type PServerInformation = TPServerInformation type PTAKE_SNAPSHOT_VHDSET_FLAG = TPTAKE_SNAPSHOT_VHDSET_FLAG type PTAKE_SNAPSHOT_VHDSET_PARAMETERS = TPTAKE_SNAPSHOT_VHDSET_PARAMETERS type PTAPE_CREATE_PARTITION = TPTAPE_CREATE_PARTITION type PTAPE_ERASE = TPTAPE_ERASE type PTAPE_GET_DRIVE_PARAMETERS = TPTAPE_GET_DRIVE_PARAMETERS type PTAPE_GET_MEDIA_PARAMETERS = TPTAPE_GET_MEDIA_PARAMETERS type PTAPE_GET_POSITION = TPTAPE_GET_POSITION type PTAPE_GET_STATISTICS = TPTAPE_GET_STATISTICS type PTAPE_PREPARE = TPTAPE_PREPARE type PTAPE_SET_DRIVE_PARAMETERS = TPTAPE_SET_DRIVE_PARAMETERS type PTAPE_SET_MEDIA_PARAMETERS = TPTAPE_SET_MEDIA_PARAMETERS type PTAPE_SET_POSITION = TPTAPE_SET_POSITION type PTAPE_STATISTICS = TPTAPE_STATISTICS type PTAPE_WMI_OPERATIONS = TPTAPE_WMI_OPERATIONS type PTAPE_WRITE_MARKS = TPTAPE_WRITE_MARKS type PTBYTE = TPTBYTE type PTCH = TPTCH type PTCHAR = TPTCHAR type PTEXTMETRIC = TPTEXTMETRIC type PTEXTMETRICA = TPTEXTMETRICA type PTEXTMETRICW = TPTEXTMETRICW type PTHREAD_START_ROUTINE = TPTHREAD_START_ROUTINE type PTIMECAPS = TPTIMECAPS type PTIMERAPCROUTINE = TPTIMERAPCROUTINE type PTIMEVAL = TPTIMEVAL type PTIME_ZONE_INFORMATION = TPTIME_ZONE_INFORMATION type PTITLEBARINFO = TPTITLEBARINFO type PTITLEBARINFOEX = TPTITLEBARINFOEX type PTOKEN_ACCESS_INFORMATION = TPTOKEN_ACCESS_INFORMATION type PTOKEN_APPCONTAINER_INFORMATION = TPTOKEN_APPCONTAINER_INFORMATION type PTOKEN_AUDIT_POLICY = TPTOKEN_AUDIT_POLICY type PTOKEN_CONTROL = TPTOKEN_CONTROL type PTOKEN_DEFAULT_DACL = TPTOKEN_DEFAULT_DACL type PTOKEN_DEVICE_CLAIMS = TPTOKEN_DEVICE_CLAIMS type PTOKEN_ELEVATION = TPTOKEN_ELEVATION type PTOKEN_ELEVATION_TYPE = TPTOKEN_ELEVATION_TYPE type PTOKEN_GROUPS = TPTOKEN_GROUPS type PTOKEN_GROUPS_AND_PRIVILEGES = TPTOKEN_GROUPS_AND_PRIVILEGES type PTOKEN_INFORMATION_CLASS = TPTOKEN_INFORMATION_CLASS type PTOKEN_LINKED_TOKEN = TPTOKEN_LINKED_TOKEN type PTOKEN_MANDATORY_LABEL = TPTOKEN_MANDATORY_LABEL type PTOKEN_MANDATORY_POLICY = TPTOKEN_MANDATORY_POLICY type PTOKEN_ORIGIN = TPTOKEN_ORIGIN type PTOKEN_OWNER = TPTOKEN_OWNER type PTOKEN_PRIMARY_GROUP = TPTOKEN_PRIMARY_GROUP type PTOKEN_PRIVILEGES = TPTOKEN_PRIVILEGES type PTOKEN_SOURCE = TPTOKEN_SOURCE type PTOKEN_STATISTICS = TPTOKEN_STATISTICS type PTOKEN_TYPE = TPTOKEN_TYPE type PTOKEN_USER = TPTOKEN_USER type PTOKEN_USER_CLAIMS = TPTOKEN_USER_CLAIMS type PTOP_LEVEL_EXCEPTION_FILTER = TPTOP_LEVEL_EXCEPTION_FILTER type PTOUCHINPUT = TPTOUCHINPUT type PTOUCHPREDICTIONPARAMETERS = TPTOUCHPREDICTIONPARAMETERS type PTOUCH_HIT_TESTING_INPUT = TPTOUCH_HIT_TESTING_INPUT type PTOUCH_HIT_TESTING_PROXIMITY_EVALUATION = TPTOUCH_HIT_TESTING_PROXIMITY_EVALUATION type PTP_CALLBACK_ENVIRON = TPTP_CALLBACK_ENVIRON type PTP_CALLBACK_INSTANCE = TPTP_CALLBACK_INSTANCE type PTP_CLEANUP_GROUP = TPTP_CLEANUP_GROUP type PTP_CLEANUP_GROUP_CANCEL_CALLBACK = TPTP_CLEANUP_GROUP_CANCEL_CALLBACK type PTP_IO = TPTP_IO type PTP_POOL = TPTP_POOL type PTP_POOL_STACK_INFORMATION = TPTP_POOL_STACK_INFORMATION type PTP_SIMPLE_CALLBACK = TPTP_SIMPLE_CALLBACK type PTP_TIMER = TPTP_TIMER type PTP_TIMER_CALLBACK = TPTP_TIMER_CALLBACK type PTP_VERSION = TPTP_VERSION type PTP_WAIT = TPTP_WAIT type PTP_WAIT_CALLBACK = TPTP_WAIT_CALLBACK type PTP_WIN32_IO_CALLBACK = TPTP_WIN32_IO_CALLBACK type PTP_WORK = TPTP_WORK type PTP_WORK_CALLBACK = TPTP_WORK_CALLBACK type PTRANSACTIONMANAGER_BASIC_INFORMATION = TPTRANSACTIONMANAGER_BASIC_INFORMATION type PTRANSACTIONMANAGER_LOGPATH_INFORMATION = TPTRANSACTIONMANAGER_LOGPATH_INFORMATION type PTRANSACTIONMANAGER_LOG_INFORMATION = TPTRANSACTIONMANAGER_LOG_INFORMATION type PTRANSACTIONMANAGER_OLDEST_INFORMATION = TPTRANSACTIONMANAGER_OLDEST_INFORMATION type PTRANSACTIONMANAGER_RECOVERY_INFORMATION = TPTRANSACTIONMANAGER_RECOVERY_INFORMATION type PTRANSACTION_BASIC_INFORMATION = TPTRANSACTION_BASIC_INFORMATION type PTRANSACTION_BIND_INFORMATION = TPTRANSACTION_BIND_INFORMATION type PTRANSACTION_ENLISTMENTS_INFORMATION = TPTRANSACTION_ENLISTMENTS_INFORMATION type PTRANSACTION_ENLISTMENT_PAIR = TPTRANSACTION_ENLISTMENT_PAIR type PTRANSACTION_LIST_ENTRY = TPTRANSACTION_LIST_ENTRY type PTRANSACTION_LIST_INFORMATION = TPTRANSACTION_LIST_INFORMATION type PTRANSACTION_NOTIFICATION = TPTRANSACTION_NOTIFICATION type PTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = TPTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT type PTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT = TPTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT type PTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = TPTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT type PTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = TPTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT type PTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = TPTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT type PTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = TPTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT type PTRANSACTION_PROPERTIES_INFORMATION = TPTRANSACTION_PROPERTIES_INFORMATION type PTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = TPTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION type PTRANSMIT_FILE_BUFFERS = TPTRANSMIT_FILE_BUFFERS type PTRIVERTEX = TPTRIVERTEX type PTSTR = TPTSTR type PTXFS_CREATE_MINIVERSION_INFO = TPTXFS_CREATE_MINIVERSION_INFO type PTXFS_GET_METADATA_INFO_OUT = TPTXFS_GET_METADATA_INFO_OUT type PTXFS_GET_TRANSACTED_VERSION = TPTXFS_GET_TRANSACTED_VERSION type PTXFS_LIST_TRANSACTIONS = TPTXFS_LIST_TRANSACTIONS type PTXFS_LIST_TRANSACTIONS_ENTRY = TPTXFS_LIST_TRANSACTIONS_ENTRY type PTXFS_LIST_TRANSACTION_LOCKED_FILES = TPTXFS_LIST_TRANSACTION_LOCKED_FILES type PTXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY = TPTXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY type PTXFS_MODIFY_RM = TPTXFS_MODIFY_RM type PTXFS_QUERY_RM_INFORMATION = TPTXFS_QUERY_RM_INFORMATION type PTXFS_READ_BACKUP_INFORMATION_OUT = TPTXFS_READ_BACKUP_INFORMATION_OUT type PTXFS_ROLLFORWARD_REDO_INFORMATION = TPTXFS_ROLLFORWARD_REDO_INFORMATION type PTXFS_SAVEPOINT_INFORMATION = TPTXFS_SAVEPOINT_INFORMATION type PTXFS_START_RM_INFORMATION = TPTXFS_START_RM_INFORMATION type PTXFS_TRANSACTION_ACTIVE_INFO = TPTXFS_TRANSACTION_ACTIVE_INFO type PTXFS_WRITE_BACKUP_INFORMATION = TPTXFS_WRITE_BACKUP_INFORMATION const PT_BEZIERTO = 4 const PT_CLOSEFIGURE = 1 const PT_LINETO = 2 const PT_MOVETO = 6 type PUAF = TPUAF type PUAFOUT = TPUAFOUT const PUBLICKEYBLOB = 6 const PUBLICKEYBLOBEX = 10 type PUBLICKEYSTRUC = TPUBLICKEYSTRUC type PUCHAR = TPUCHAR type PUCSCHAR = TPUCSCHAR type PUCSSTR = TPUCSSTR type PUHALF_PTR = TPUHALF_PTR type PUINT = TPUINT type PUINT16 = TPUINT16 type PUINT32 = TPUINT32 type PUINT64 = TPUINT64 type PUINT8 = TPUINT8 type PUINT_PTR = TPUINT_PTR type PULARGE_INTEGER = TPULARGE_INTEGER type PULONG = TPULONG type PULONG32 = TPULONG32 type PULONG64 = TPULONG64 type PULONGLONG = TPULONGLONG type PULONG_PTR = TPULONG_PTR type PUMS_CREATE_THREAD_ATTRIBUTES = TPUMS_CREATE_THREAD_ATTRIBUTES type PUNZTCH = TPUNZTCH type PUNZWCH = TPUNZWCH type PUPDATELAYEREDWINDOWINFO = TPUPDATELAYEREDWINDOWINFO const PURGE_RXABORT = 2 const PURGE_RXCLEAR = 8 const PURGE_TXABORT = 1 const PURGE_TXCLEAR = 4 type PUSAGE_PROPERTIES = TPUSAGE_PROPERTIES type PUSEROBJECTFLAGS = TPUSEROBJECTFLAGS type PUSER_ACTIVITY_PRESENCE = TPUSER_ACTIVITY_PRESENCE type PUSHORT = TPUSHORT type PUSN_JOURNAL_DATA = TPUSN_JOURNAL_DATA type PUSN_RECORD = TPUSN_RECORD type PUTSTR = TPUTSTR type PUUCSCHAR = TPUUCSCHAR type PUUCSSTR = TPUUCSSTR type PUWSTR = TPUWSTR type PUZZTSTR = TPUZZTSTR type PUZZWSTR = TPUZZWSTR type PVALCONTEXT = TPVALCONTEXT type PVALENT = TPVALENT type PVALENTA = TPVALENTA type PVALENTW = TPVALENTW type PVALUE = TPVALUE type PVALUEA = TPVALUEA type PVALUEW = TPVALUEW type PVECTORED_EXCEPTION_HANDLER = TPVECTORED_EXCEPTION_HANDLER type PVERIFY_INFORMATION = TPVERIFY_INFORMATION type PVIDEOPARAMETERS = TPVIDEOPARAMETERS type PVIRTUAL_DISK_PROGRESS = TPVIRTUAL_DISK_PROGRESS type PVIRTUAL_STORAGE_TYPE = TPVIRTUAL_STORAGE_TYPE type PVOID = TPVOID type PVOID64 = TPVOID64 type PVOLUME_BITMAP_BUFFER = TPVOLUME_BITMAP_BUFFER type PVOLUME_DISK_EXTENTS = TPVOLUME_DISK_EXTENTS type PVOLUME_GET_GPT_ATTRIBUTES_INFORMATION = TPVOLUME_GET_GPT_ATTRIBUTES_INFORMATION type PWAVEFORMAT = TPWAVEFORMAT type PWAVEFORMATEX = TPWAVEFORMATEX type PWAVEHDR = TPWAVEHDR type PWAVEINCAPS = TPWAVEINCAPS type PWAVEINCAPS2 = TPWAVEINCAPS2 type PWAVEINCAPS2A = TPWAVEINCAPS2A type PWAVEINCAPS2W = TPWAVEINCAPS2W type PWAVEINCAPSA = TPWAVEINCAPSA type PWAVEINCAPSW = TPWAVEINCAPSW type PWAVEOUTCAPS = TPWAVEOUTCAPS type PWAVEOUTCAPS2 = TPWAVEOUTCAPS2 type PWAVEOUTCAPS2A = TPWAVEOUTCAPS2A type PWAVEOUTCAPS2W = TPWAVEOUTCAPS2W type PWAVEOUTCAPSA = TPWAVEOUTCAPSA type PWAVEOUTCAPSW = TPWAVEOUTCAPSW type PWCH = TPWCH type PWCHAR = TPWCHAR type PWCRANGE = TPWCRANGE type PWGLSWAP = TPWGLSWAP type PWIN32_FIND_DATA = TPWIN32_FIND_DATA type PWIN32_FIND_DATAA = TPWIN32_FIND_DATAA type PWIN32_FIND_DATAW = TPWIN32_FIND_DATAW type PWIN32_FIND_STREAM_DATA = TPWIN32_FIND_STREAM_DATA type PWIN32_MEMORY_RANGE_ENTRY = TPWIN32_MEMORY_RANGE_ENTRY type PWINDOWINFO = TPWINDOWINFO type PWINDOWPLACEMENT = TPWINDOWPLACEMENT type PWINDOWPOS = TPWINDOWPOS type PWINDOW_BUFFER_SIZE_RECORD = TPWINDOW_BUFFER_SIZE_RECORD type PWNDCLASS = TPWNDCLASS type PWNDCLASSA = TPWNDCLASSA type PWNDCLASSEX = TPWNDCLASSEX type PWNDCLASSEXA = TPWNDCLASSEXA type PWNDCLASSEXW = TPWNDCLASSEXW type PWNDCLASSW = TPWNDCLASSW type PWOF_EXTERNAL_INFO = TPWOF_EXTERNAL_INFO type PWORD = TPWORD type PWOW64_CONTEXT = TPWOW64_CONTEXT type PWOW64_DESCRIPTOR_TABLE_ENTRY = TPWOW64_DESCRIPTOR_TABLE_ENTRY type PWOW64_FLOATING_SAVE_AREA = TPWOW64_FLOATING_SAVE_AREA type PWOW64_LDT_ENTRY = TPWOW64_LDT_ENTRY const PWR_CRITICALRESUME = 3 const PWR_FAIL = -1 const PWR_OK = 1 const PWR_SUSPENDREQUEST = 1 const PWR_SUSPENDRESUME = 2 type PWSTR = TPWSTR type PWTSSESSION_NOTIFICATION = TPWTSSESSION_NOTIFICATION const PW_CLIENTONLY = 1 const PW_RENDERFULLCONTENT = 2 type PXFORM = TPXFORM type PXMIT_ROUTINE_QUINTUPLE = TPXMIT_ROUTINE_QUINTUPLE type PXSAVE_AREA = TPXSAVE_AREA type PXSAVE_AREA_HEADER = TPXSAVE_AREA_HEADER type PXSAVE_FORMAT = TPXSAVE_FORMAT type PXSTATE_CONFIGURATION = TPXSTATE_CONFIGURATION type PXSTATE_CONTEXT = TPXSTATE_CONTEXT type PXSTATE_FEATURE = TPXSTATE_FEATURE type PZPCSTR = TPZPCSTR type PZPCWSTR = TPZPCWSTR type PZPSTR = TPZPSTR type PZPTSTR = TPZPTSTR type PZPWSTR = TPZPWSTR type PZZSTR = TPZZSTR type PZZTSTR = TPZZTSTR type PZZWSTR = TPZZWSTR const P_DETACH = 4 const P_NOWAIT = 1 const P_NOWAITO = 3 const P_OVERLAY = 2 const P_WAIT = 0 const P_tmpdir = "_P_tmpdir" const PageSetupDlg = 0 const PartitionClassGuid = 0 const PeekConsoleInput = 0 const PeekMessage = 0 const PlaySound = 0 const PolyTextOut = 0 const PostAppMessage = 0 const PostMessage = 0 const PostThreadMessage = 0 const PrintDlg = 0 const PrintDlgEx = 0 const PrinterMessageBox = 0 const PrivateExtractIcons = 0 const PrivilegedServiceAuditAlarm = 0 const PropertySheet = 0 const QDC_ALL_PATHS = 1 const QDC_DATABASE_CURRENT = 4 const QDC_INCLUDE_HMD = 32 const QDC_ONLY_ACTIVE_PATHS = 2 const QDC_VIRTUAL_MODE_AWARE = 16 const QDI_DIBTOSCREEN = 4 const QDI_GETDIBITS = 2 const QDI_SETDIBITS = 1 const QDI_STRETCHDIB = 8 const QID_SYNC = 4294967295 const QS_ALLEVENTS = 7359 const QS_ALLINPUT = 7423 const QS_ALLPOSTMESSAGE = 256 const QS_HOTKEY = 128 const QS_INPUT = 7175 const QS_KEY = 1 const QS_MOUSE = 6 const QS_MOUSEBUTTON = 4 const QS_MOUSEMOVE = 2 const QS_PAINT = 32 const QS_POINTER = 4096 const QS_POSTMESSAGE = 8 const QS_RAWINPUT = 1024 const QS_SENDMESSAGE = 64 const QS_TIMER = 16 const QS_TOUCH = 2048 type QUERYCONTEXT = TQUERYCONTEXT const QUERYDIBSUPPORT = 3073 const QUERYESCSUPPORT = 8 type QUERYOPTION = TQUERYOPTION const QUERYROPSUPPORT = 40 const QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS = 16 const QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE = 8 const QUERY_ACTCTX_FLAG_NO_ADDREF = 2147483648 const QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX = 4 type QUERY_CHANGES_VIRTUAL_DISK_FLAG = TQUERY_CHANGES_VIRTUAL_DISK_FLAG type QUERY_CHANGES_VIRTUAL_DISK_RANGE = TQUERY_CHANGES_VIRTUAL_DISK_RANGE type QUERY_SERVICE_CONFIG = TQUERY_SERVICE_CONFIG type QUERY_SERVICE_CONFIGA = TQUERY_SERVICE_CONFIGA type QUERY_SERVICE_CONFIGW = TQUERY_SERVICE_CONFIGW type QUERY_SERVICE_LOCK_STATUS = TQUERY_SERVICE_LOCK_STATUS type QUERY_SERVICE_LOCK_STATUSA = TQUERY_SERVICE_LOCK_STATUSA type QUERY_SERVICE_LOCK_STATUSW = TQUERY_SERVICE_LOCK_STATUSW type QUERY_USER_NOTIFICATION_STATE = TQUERY_USER_NOTIFICATION_STATE type QUOTA_LIMITS = TQUOTA_LIMITS type QUOTA_LIMITS_EX = TQUOTA_LIMITS_EX const QUOTA_LIMITS_HARDWS_MAX_DISABLE = 8 const QUOTA_LIMITS_HARDWS_MAX_ENABLE = 4 const QUOTA_LIMITS_HARDWS_MIN_DISABLE = 2 const QUOTA_LIMITS_HARDWS_MIN_ENABLE = 1 const QUOTA_LIMITS_USE_DEFAULT_LIMITS = 16 const QueryDosDevice = 0 const QueryFullProcessImageName = 0 const QueryServiceConfig = 0 const QueryServiceConfig2 = 0 const QueryServiceLockStatus = 0 const R2_BLACK = 1 const R2_COPYPEN = 13 const R2_LAST = 16 const R2_MASKNOTPEN = 3 const R2_MASKPEN = 9 const R2_MASKPENNOT = 5 const R2_MERGENOTPEN = 12 const R2_MERGEPEN = 15 const R2_MERGEPENNOT = 14 const R2_NOP = 11 const R2_NOT = 6 const R2_NOTCOPYPEN = 4 const R2_NOTMASKPEN = 8 const R2_NOTMERGEPEN = 2 const R2_NOTXORPEN = 10 const R2_WHITE = 16 const R2_XORPEN = 7 const RANDOM_PADDING = 2 const RAND_MAX = 32767 const RASTERCAPS = 38 type RASTERIZER_STATUS = TRASTERIZER_STATUS const RASTER_FONTTYPE = 1 type RATE_QUOTA_LIMIT = TRATE_QUOTA_LIMIT type RAWHID = TRAWHID type RAWINPUT = TRAWINPUT type RAWINPUTDEVICE = TRAWINPUTDEVICE type RAWINPUTDEVICELIST = TRAWINPUTDEVICELIST type RAWINPUTHEADER = TRAWINPUTHEADER type RAWKEYBOARD = TRAWKEYBOARD type RAWMOUSE = TRAWMOUSE const RC_BANDING = 2 const RC_BIGFONT = 1024 const RC_BITBLT = 1 const RC_BITMAP64 = 8 const RC_DEVBITS = 32768 const RC_DIBTODEV = 512 const RC_DI_BITMAP = 128 const RC_FLOODFILL = 4096 const RC_GDI20_OUTPUT = 16 const RC_GDI20_STATE = 32 const RC_OP_DX_OUTPUT = 16384 const RC_PALETTE = 256 const RC_SAVEBITMAP = 64 const RC_SCALING = 4 const RC_STRETCHBLT = 2048 const RC_STRETCHDIB = 8192 const RDH_RECTANGLES = 1 type RDR_CALLOUT_STATE = TRDR_CALLOUT_STATE const RDW_ALLCHILDREN = 128 const RDW_ERASE = 4 const RDW_ERASENOW = 512 const RDW_FRAME = 1024 const RDW_INTERNALPAINT = 2 const RDW_INVALIDATE = 1 const RDW_NOCHILDREN = 64 const RDW_NOERASE = 32 const RDW_NOFRAME = 2048 const RDW_NOINTERNALPAINT = 16 const RDW_UPDATENOW = 256 const RDW_VALIDATE = 8 const READ_ATTRIBUTES = 208 const READ_ATTRIBUTE_BUFFER_SIZE = 512 const READ_COMPRESSION_INFO_VALID = 32 const READ_CONTROL = 131072 type READ_ELEMENT_ADDRESS_INFO = TREAD_ELEMENT_ADDRESS_INFO const READ_THREAD_PROFILING_FLAG_DISPATCHING = 1 const READ_THREAD_PROFILING_FLAG_HARDWARE_COUNTERS = 2 const READ_THRESHOLDS = 209 const READ_THRESHOLD_BUFFER_SIZE = 512 type READ_USN_JOURNAL_DATA = TREAD_USN_JOURNAL_DATA const REALTIME_PRIORITY_CLASS = 256 type REASON_CONTEXT = TREASON_CONTEXT const REASON_HWINSTALL = 65538 const REASON_LEGACY_API = 2147942400 const REASON_OTHER = 0 const REASON_PLANNED_FLAG = 2147483648 const REASON_SERVICEHANG = 196613 const REASON_SWHWRECONF = 196612 const REASON_SWINSTALL = 196610 const REASON_UNKNOWN = 255 const REASON_UNSTABLE = 327686 type REASSIGN_BLOCKS = TREASSIGN_BLOCKS type REASSIGN_BLOCKS_EX = TREASSIGN_BLOCKS_EX type RECONVERTSTRING = TRECONVERTSTRING const RECOVERED_READS_VALID = 4 const RECOVERED_WRITES_VALID = 1 const RECOVERY_DEFAULT_PING_INTERVAL = 5000 const RECOVERY_MAX_PING_INTERVAL = 300000 type RECT = TRECT type RECTL = TRECTL type REDIRECTION_DESCRIPTOR = TREDIRECTION_DESCRIPTOR type REDIRECTION_FUNCTION_DESCRIPTOR = TREDIRECTION_FUNCTION_DESCRIPTOR type REGCLS = TREGCLS const REGDB_E_FIRST = 2147746128 const REGDB_E_LAST = 2147746143 const REGDB_S_FIRST = 262480 const REGDB_S_LAST = 262495 const REGISTERED = 4 const REGISTERING = 0 type REGISTERWORD = TREGISTERWORD type REGISTERWORDA = TREGISTERWORDA const REGISTERWORDENUMPROC = 0 type REGISTERWORDENUMPROCA = TREGISTERWORDENUMPROCA type REGISTERWORDENUMPROCW = TREGISTERWORDENUMPROCW /* Restore old value of interface for Obj-C. See above. */ /* ** Determine if we are dealing with Windows NT. ** ** We ought to be able to determine if we are compiling for Windows 9x or ** Windows NT using the _WIN32_WINNT macro as follows: ** ** #if defined(_WIN32_WINNT) ** # define SQLITE_OS_WINNT 1 ** #else ** # define SQLITE_OS_WINNT 0 ** #endif ** ** However, Visual Studio 2005 does not set _WIN32_WINNT by default, as ** it ought to, so the above test does not work. We'll just assume that ** everything is Windows NT unless the programmer explicitly says otherwise ** by setting SQLITE_OS_WINNT to 0. */ /* ** Determine if we are dealing with Windows CE - which has a much reduced ** API. */ /* ** For WinCE, some API function parameters do not appear to be declared as ** volatile. */ /* ** For some Windows sub-platforms, the _beginthreadex() / _endthreadex() ** functions are not available (e.g. those not using MSVC, Cygwin, etc). */ /************** End of os_win.h **********************************************/ /************** Continuing where we left off in mutex_w32.c ******************/ /* ** The code in this file is only used if we are compiling multithreaded ** on a Win32 system. */ /************** End of mutex_w32.c *******************************************/ /************** Begin file malloc.c ******************************************/ /* ** 2001 September 15 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** ** Memory allocation functions used throughout sqlite. */ /* #include "sqliteInt.h" */ /* #include */ type REGISTERWORDW = TREGISTERWORDW type REGKIND = TREGKIND type REGSAM = TREGSAM const REGULAR_FONTTYPE = 1024 const REG_APP_HIVE = 16 const REG_BINARY = 3 const REG_BOOT_HIVE = 1024 const REG_CREATED_NEW_KEY = 1 const REG_DWORD = 4 const REG_DWORD_BIG_ENDIAN = 5 const REG_DWORD_LITTLE_ENDIAN = 4 const REG_EXPAND_SZ = 2 const REG_FORCE_RESTORE = 8 const REG_FORCE_UNLOAD = 1 const REG_FULL_RESOURCE_DESCRIPTOR = 9 const REG_HIVE_EXACT_FILE_GROWTH = 128 const REG_HIVE_NO_RM = 256 const REG_HIVE_SINGLE_LOG = 512 const REG_LATEST_FORMAT = 2 const REG_LEGAL_CHANGE_FILTER = 268435471 const REG_LEGAL_OPTION = 15 const REG_LINK = 6 const REG_MUI_STRING_TRUNCATE = 1 const REG_MULTI_SZ = 7 const REG_NONE = 0 const REG_NOTIFY_CHANGE_ATTRIBUTES = 2 const REG_NOTIFY_CHANGE_LAST_SET = 4 const REG_NOTIFY_CHANGE_NAME = 1 const REG_NOTIFY_CHANGE_SECURITY = 8 const REG_NOTIFY_THREAD_AGNOSTIC = 268435456 const REG_NO_COMPRESSION = 4 const REG_NO_LAZY_FLUSH = 4 const REG_OPENED_EXISTING_KEY = 2 const REG_OPTION_BACKUP_RESTORE = 4 const REG_OPTION_CREATE_LINK = 2 const REG_OPTION_NON_VOLATILE = 0 const REG_OPTION_OPEN_LINK = 8 const REG_OPTION_RESERVED = 0 const REG_OPTION_VOLATILE = 1 const REG_PROCESS_APPKEY = 1 const REG_PROCESS_PRIVATE = 32 type REG_PROVIDER = TREG_PROVIDER const REG_QWORD = 11 const REG_QWORD_LITTLE_ENDIAN = 11 const REG_REFRESH_HIVE = 2 const REG_RESOURCE_LIST = 8 const REG_RESOURCE_REQUIREMENTS_LIST = 10 const REG_SECURE_CONNECTION = 1 const REG_STANDARD_FORMAT = 1 const REG_START_JOURNAL = 64 const REG_SZ = 1 const REG_WHOLE_HIVE_VOLATILE = 1 const RELATIVE = 2 type REMOTE_NAME_INFO = TREMOTE_NAME_INFO type REMOTE_NAME_INFOA = TREMOTE_NAME_INFOA type REMOTE_NAME_INFOW = TREMOTE_NAME_INFOW const REMOTE_NAME_INFO_LEVEL = 2 const REMOTE_PROTOCOL_INFO_FLAG_LOOPBACK = 1 const REMOTE_PROTOCOL_INFO_FLAG_OFFLINE = 2 const REMOTE_PROTOCOL_INFO_FLAG_PERSISTENT_HANDLE = 4 type REMSECURITY_ATTRIBUTES = TREMSECURITY_ATTRIBUTES type REPARSE_GUID_DATA_BUFFER = TREPARSE_GUID_DATA_BUFFER const REPLACEDLGORD = 1541 const REPLACEFILE_IGNORE_ACL_ERRORS = 4 const REPLACEFILE_IGNORE_MERGE_ERRORS = 2 const REPLACEFILE_WRITE_THROUGH = 1 const REPLACE_ALTERNATE = 11 const REPLACE_PRIMARY = 10 const REPORT_NOT_ABLE_TO_EXPORT_PRIVATE_KEY = 2 const REPORT_NO_PRIVATE_KEY = 1 const REQUEST_OPLOCK_CURRENT_VERSION = 1 type REQUEST_OPLOCK_INPUT_BUFFER = TREQUEST_OPLOCK_INPUT_BUFFER const REQUEST_OPLOCK_INPUT_FLAG_ACK = 2 const REQUEST_OPLOCK_INPUT_FLAG_COMPLETE_ACK_ON_CLOSE = 4 const REQUEST_OPLOCK_INPUT_FLAG_REQUEST = 1 type REQUEST_OPLOCK_OUTPUT_BUFFER = TREQUEST_OPLOCK_OUTPUT_BUFFER const REQUEST_OPLOCK_OUTPUT_FLAG_ACK_REQUIRED = 1 const REQUEST_OPLOCK_OUTPUT_FLAG_MODES_PROVIDED = 2 type REQUEST_RAW_ENCRYPTED_DATA = TREQUEST_RAW_ENCRYPTED_DATA const RESETDEV = 7 type RESIZE_VIRTUAL_DISK_FLAG = TRESIZE_VIRTUAL_DISK_FLAG type RESIZE_VIRTUAL_DISK_PARAMETERS = TRESIZE_VIRTUAL_DISK_PARAMETERS type RESIZE_VIRTUAL_DISK_VERSION = TRESIZE_VIRTUAL_DISK_VERSION const RESOURCEDISPLAYTYPE_DIRECTORY = 9 const RESOURCEDISPLAYTYPE_DOMAIN = 1 const RESOURCEDISPLAYTYPE_FILE = 4 const RESOURCEDISPLAYTYPE_GENERIC = 0 const RESOURCEDISPLAYTYPE_GROUP = 5 const RESOURCEDISPLAYTYPE_NDSCONTAINER = 11 const RESOURCEDISPLAYTYPE_NETWORK = 6 const RESOURCEDISPLAYTYPE_ROOT = 7 const RESOURCEDISPLAYTYPE_SERVER = 2 const RESOURCEDISPLAYTYPE_SHARE = 3 const RESOURCEDISPLAYTYPE_SHAREADMIN = 8 const RESOURCEDISPLAYTYPE_TREE = 10 const RESOURCEMANAGER_ALL_ACCESS = 2031743 type RESOURCEMANAGER_BASIC_INFORMATION = TRESOURCEMANAGER_BASIC_INFORMATION const RESOURCEMANAGER_COMPLETE_PROPAGATION = 64 type RESOURCEMANAGER_COMPLETION_INFORMATION = TRESOURCEMANAGER_COMPLETION_INFORMATION const RESOURCEMANAGER_ENLIST = 8 const RESOURCEMANAGER_GENERIC_EXECUTE = 1179740 const RESOURCEMANAGER_GENERIC_READ = 1179649 const RESOURCEMANAGER_GENERIC_WRITE = 1179774 const RESOURCEMANAGER_GET_NOTIFICATION = 16 type RESOURCEMANAGER_INFORMATION_CLASS = TRESOURCEMANAGER_INFORMATION_CLASS const RESOURCEMANAGER_QUERY_INFORMATION = 1 const RESOURCEMANAGER_RECOVER = 4 const RESOURCEMANAGER_REGISTER_PROTOCOL = 32 const RESOURCEMANAGER_SET_INFORMATION = 2 const RESOURCETYPE_ANY = 0 const RESOURCETYPE_DISK = 1 const RESOURCETYPE_PRINT = 2 const RESOURCETYPE_RESERVED = 8 const RESOURCETYPE_UNKNOWN = 4294967295 const RESOURCEUSAGE_ALL = 19 const RESOURCEUSAGE_ATTACHED = 16 const RESOURCEUSAGE_CONNECTABLE = 1 const RESOURCEUSAGE_CONTAINER = 2 const RESOURCEUSAGE_NOLOCALDEVICE = 4 const RESOURCEUSAGE_RESERVED = 2147483648 const RESOURCEUSAGE_SIBLING = 8 const RESOURCE_CONNECTED = 1 const RESOURCE_CONTEXT = 5 const RESOURCE_ENUM_LN = 1 const RESOURCE_ENUM_MODULE_EXACT = 16 const RESOURCE_ENUM_MUI = 2 const RESOURCE_ENUM_MUI_SYSTEM = 4 const RESOURCE_ENUM_VALIDATE = 8 const RESOURCE_GLOBALNET = 2 const RESOURCE_MANAGER_COMMUNICATION = 2 const RESOURCE_MANAGER_MAXIMUM_OPTION = 3 const RESOURCE_MANAGER_OBJECT_NAME_LENGTH_IN_BYTES = 0 const RESOURCE_MANAGER_OBJECT_PATH = "\\\\ResourceManager\\\\" const RESOURCE_MANAGER_VOLATILE = 1 const RESOURCE_RECENT = 4 const RESOURCE_REMEMBERED = 3 const RESTART_MAX_CMD_LINE = 1024 const RESTART_NO_CRASH = 1 const RESTART_NO_HANG = 2 const RESTART_NO_PATCH = 4 const RESTART_NO_REBOOT = 8 const RESTORE_CTM = 4100 type RESUME_PERFORMANCE = TRESUME_PERFORMANCE const RES_CURSOR = 2 const RES_ICON = 1 const RETRACT_IEPORT = 3 type RETRIEVAL_POINTERS_BUFFER = TRETRIEVAL_POINTERS_BUFFER type RETRIEVAL_POINTER_BASE = TRETRIEVAL_POINTER_BASE const RETURN_SMART_STATUS = 218 const REVERSE_PRINT = 1 const REVISION_LENGTH = 4 type RGBQUAD = TRGBQUAD type RGBTRIPLE = TRGBTRIPLE type RGNDATA = TRGNDATA type RGNDATAHEADER = TRGNDATAHEADER const RGN_AND = 1 const RGN_COPY = 5 const RGN_DIFF = 4 const RGN_ERROR = 0 const RGN_MAX = 5 const RGN_MIN = 1 const RGN_OR = 2 const RGN_XOR = 3 const RIDEV_APPKEYS = 1024 const RIDEV_CAPTUREMOUSE = 512 const RIDEV_DEVNOTIFY = 8192 const RIDEV_EXCLUDE = 16 const RIDEV_EXINPUTSINK = 4096 const RIDEV_EXMODEMASK = 240 const RIDEV_INPUTSINK = 256 const RIDEV_NOHOTKEYS = 512 const RIDEV_NOLEGACY = 48 const RIDEV_PAGEONLY = 32 const RIDEV_REMOVE = 1 const RIDI_DEVICEINFO = 536870923 const RIDI_DEVICENAME = 536870919 const RIDI_PREPARSEDDATA = 536870917 type RID_DEVICE_INFO = TRID_DEVICE_INFO type RID_DEVICE_INFO_HID = TRID_DEVICE_INFO_HID type RID_DEVICE_INFO_KEYBOARD = TRID_DEVICE_INFO_KEYBOARD type RID_DEVICE_INFO_MOUSE = TRID_DEVICE_INFO_MOUSE const RID_HEADER = 268435461 const RID_INPUT = 268435459 const RIGHTMOST_BUTTON_PRESSED = 2 const RIGHT_ALT_PRESSED = 1 const RIGHT_CTRL_PRESSED = 4 const RIM_INPUT = 0 const RIM_INPUTSINK = 1 const RIM_TYPEHID = 2 const RIM_TYPEKEYBOARD = 1 const RIM_TYPEMAX = 2 const RIM_TYPEMOUSE = 0 const RIP_EVENT = 9 type RIP_INFO = TRIP_INFO const RI_KEY_BREAK = 1 const RI_KEY_E0 = 2 const RI_KEY_E1 = 4 const RI_KEY_MAKE = 0 const RI_KEY_TERMSRV_SET_LED = 8 const RI_KEY_TERMSRV_SHADOW = 16 const RI_MOUSE_BUTTON_1_DOWN = 1 const RI_MOUSE_BUTTON_1_UP = 2 const RI_MOUSE_BUTTON_2_DOWN = 4 const RI_MOUSE_BUTTON_2_UP = 8 const RI_MOUSE_BUTTON_3_DOWN = 16 const RI_MOUSE_BUTTON_3_UP = 32 const RI_MOUSE_BUTTON_4_DOWN = 64 const RI_MOUSE_BUTTON_4_UP = 128 const RI_MOUSE_BUTTON_5_DOWN = 256 const RI_MOUSE_BUTTON_5_UP = 512 const RI_MOUSE_HWHEEL = 2048 const RI_MOUSE_LEFT_BUTTON_DOWN = 1 const RI_MOUSE_LEFT_BUTTON_UP = 2 const RI_MOUSE_MIDDLE_BUTTON_DOWN = 16 const RI_MOUSE_MIDDLE_BUTTON_UP = 32 const RI_MOUSE_RIGHT_BUTTON_DOWN = 4 const RI_MOUSE_RIGHT_BUTTON_UP = 8 const RI_MOUSE_WHEEL = 1024 type ROOT_INFO_LUID = TROOT_INFO_LUID const ROTFLAGS_ALLOWANYCLIENT = 2 const ROTFLAGS_REGISTRATIONKEEPSALIVE = 1 const ROTREGFLAGS_ALLOWANYCLIENT = 1 const ROT_COMPARE_MAX = 2048 const RPCFLG_ASYNCHRONOUS = 1073741824 const RPCFLG_AUTO_COMPLETE = 134217728 const RPCFLG_HAS_CALLBACK = 67108864 const RPCFLG_HAS_MULTI_SYNTAXES = 33554432 const RPCFLG_INPUT_SYNCHRONOUS = 536870912 const RPCFLG_LOCAL_CALL = 268435456 const RPCFLG_MESSAGE = 16777216 const RPCFLG_NON_NDR = 2147483648 type RPCLT_PDU_FILTER_FUNC = TRPCLT_PDU_FILTER_FUNC const RPCNSAPI = "DECLSPEC_IMPORT" type RPCOLEDATAREP = TRPCOLEDATAREP type RPCOLEMESSAGE = TRPCOLEMESSAGE type RPCOPT_PROPERTIES = TRPCOPT_PROPERTIES type RPCOPT_SERVER_LOCALITY_VALUES = TRPCOPT_SERVER_LOCALITY_VALUES const RPCRTAPI = "DECLSPEC_IMPORT" type RPC_ASYNC_EVENT = TRPC_ASYNC_EVENT type RPC_ASYNC_NOTIFICATION_INFO = TRPC_ASYNC_NOTIFICATION_INFO type RPC_ASYNC_STATE = TRPC_ASYNC_STATE const RPC_ASYNC_VERSION_1_0 = 0 type RPC_AUTHZ_HANDLE = TRPC_AUTHZ_HANDLE type RPC_AUTH_IDENTITY_HANDLE = TRPC_AUTH_IDENTITY_HANDLE type RPC_AUTH_KEY_RETRIEVAL_FN = TRPC_AUTH_KEY_RETRIEVAL_FN type RPC_BINDING_HANDLE = TRPC_BINDING_HANDLE type RPC_BINDING_HANDLE_OPTIONS = TRPC_BINDING_HANDLE_OPTIONS type RPC_BINDING_HANDLE_OPTIONS_V1 = TRPC_BINDING_HANDLE_OPTIONS_V1 type RPC_BINDING_HANDLE_SECURITY = TRPC_BINDING_HANDLE_SECURITY type RPC_BINDING_HANDLE_SECURITY_V1 = TRPC_BINDING_HANDLE_SECURITY_V1 type RPC_BINDING_HANDLE_TEMPLATE = TRPC_BINDING_HANDLE_TEMPLATE type RPC_BINDING_HANDLE_TEMPLATE_V1 = TRPC_BINDING_HANDLE_TEMPLATE_V1 type RPC_BINDING_VECTOR = TRPC_BINDING_VECTOR const RPC_BUFFER_ASYNC = 32768 const RPC_BUFFER_COMPLETE = 4096 const RPC_BUFFER_EXTRA = 16384 const RPC_BUFFER_NONOTIFY = 65536 const RPC_BUFFER_PARTIAL = 8192 type RPC_BUFPTR = TRPC_BUFPTR type RPC_CALL_ATTRIBUTES = TRPC_CALL_ATTRIBUTES type RPC_CALL_ATTRIBUTES_A = TRPC_CALL_ATTRIBUTES_A const RPC_CALL_ATTRIBUTES_V1 = 0 type RPC_CALL_ATTRIBUTES_V1_A = TRPC_CALL_ATTRIBUTES_V1_A type RPC_CALL_ATTRIBUTES_V1_W = TRPC_CALL_ATTRIBUTES_V1_W const RPC_CALL_ATTRIBUTES_V2 = 0 type RPC_CALL_ATTRIBUTES_V2_A = TRPC_CALL_ATTRIBUTES_V2_A type RPC_CALL_ATTRIBUTES_V2_W = TRPC_CALL_ATTRIBUTES_V2_W const RPC_CALL_ATTRIBUTES_VERSION = 1 type RPC_CALL_ATTRIBUTES_W = TRPC_CALL_ATTRIBUTES_W const RPC_CALL_LOCAL_ADDRESS = 0 type RPC_CALL_LOCAL_ADDRESS_A = TRPC_CALL_LOCAL_ADDRESS_A const RPC_CALL_LOCAL_ADDRESS_V1 = 0 type RPC_CALL_LOCAL_ADDRESS_V1_A = TRPC_CALL_LOCAL_ADDRESS_V1_A type RPC_CALL_LOCAL_ADDRESS_V1_W = TRPC_CALL_LOCAL_ADDRESS_V1_W type RPC_CALL_LOCAL_ADDRESS_W = TRPC_CALL_LOCAL_ADDRESS_W const RPC_CALL_STATUS_CANCELLED = 2 const RPC_CALL_STATUS_DISCONNECTED = 3 const RPC_CALL_STATUS_IN_PROGRESS = 1 type RPC_CLIENT_INFORMATION1 = TRPC_CLIENT_INFORMATION1 type RPC_CLIENT_INTERFACE = TRPC_CLIENT_INTERFACE const RPC_CONTEXT_HANDLE_DEFAULT_FLAGS = 0 const RPC_CONTEXT_HANDLE_DEFAULT_GUARD = -4083 const RPC_CONTEXT_HANDLE_DONT_SERIALIZE = 536870912 const RPC_CONTEXT_HANDLE_FLAGS = 805306368 const RPC_CONTEXT_HANDLE_SERIALIZE = 268435456 type RPC_CSTR = TRPC_CSTR const RPC_C_AUTHN_DCE_PRIVATE = 1 const RPC_C_AUTHN_DCE_PUBLIC = 2 const RPC_C_AUTHN_DEC_PUBLIC = 4 const RPC_C_AUTHN_DEFAULT = 4294967295 const RPC_C_AUTHN_DIGEST = 21 const RPC_C_AUTHN_DPA = 17 const RPC_C_AUTHN_GSS_KERBEROS = 16 const RPC_C_AUTHN_GSS_NEGOTIATE = 9 const RPC_C_AUTHN_GSS_SCHANNEL = 14 const RPC_C_AUTHN_INFO_TYPE_HTTP = 1 const RPC_C_AUTHN_LEVEL_CALL = 3 const RPC_C_AUTHN_LEVEL_CONNECT = 2 const RPC_C_AUTHN_LEVEL_DEFAULT = 0 const RPC_C_AUTHN_LEVEL_NONE = 1 const RPC_C_AUTHN_LEVEL_PKT = 4 const RPC_C_AUTHN_LEVEL_PKT_INTEGRITY = 5 const RPC_C_AUTHN_LEVEL_PKT_PRIVACY = 6 const RPC_C_AUTHN_MQ = 100 const RPC_C_AUTHN_MSN = 18 const RPC_C_AUTHN_NONE = 0 const RPC_C_AUTHN_WINNT = 10 const RPC_C_AUTHZ_DCE = 2 const RPC_C_AUTHZ_DEFAULT = 4294967295 const RPC_C_AUTHZ_NAME = 1 const RPC_C_AUTHZ_NONE = 0 const RPC_C_BINDING_DEFAULT_TIMEOUT = 5 const RPC_C_BINDING_INFINITE_TIMEOUT = 10 const RPC_C_BINDING_MAX_TIMEOUT = 9 const RPC_C_BINDING_MIN_TIMEOUT = 0 const RPC_C_BIND_TO_ALL_NICS = 1 const RPC_C_CANCEL_INFINITE_TIMEOUT = -1 const RPC_C_DONT_FAIL = 4 const RPC_C_EP_ALL_ELTS = 0 const RPC_C_EP_MATCH_BY_BOTH = 3 const RPC_C_EP_MATCH_BY_IF = 1 const RPC_C_EP_MATCH_BY_OBJ = 2 const RPC_C_FULL_CERT_CHAIN = 1 const RPC_C_HTTP_AUTHN_SCHEME_BASIC = 1 const RPC_C_HTTP_AUTHN_SCHEME_CERT = 65536 const RPC_C_HTTP_AUTHN_SCHEME_DIGEST = 8 const RPC_C_HTTP_AUTHN_SCHEME_NEGOTIATE = 16 const RPC_C_HTTP_AUTHN_SCHEME_NTLM = 2 const RPC_C_HTTP_AUTHN_SCHEME_PASSPORT = 4 const RPC_C_HTTP_AUTHN_TARGET_PROXY = 2 const RPC_C_HTTP_AUTHN_TARGET_SERVER = 1 const RPC_C_HTTP_FLAG_IGNORE_CERT_CN_INVALID = 8 const RPC_C_HTTP_FLAG_USE_FIRST_AUTH_SCHEME = 2 const RPC_C_HTTP_FLAG_USE_SSL = 1 const RPC_C_IMP_LEVEL_ANONYMOUS = 1 const RPC_C_IMP_LEVEL_DEFAULT = 0 const RPC_C_IMP_LEVEL_DELEGATE = 4 const RPC_C_IMP_LEVEL_IDENTIFY = 2 const RPC_C_IMP_LEVEL_IMPERSONATE = 3 const RPC_C_INFINITE_TIMEOUT = 4294967295 const RPC_C_LISTEN_MAX_CALLS_DEFAULT = 1234 const RPC_C_MGMT_INQ_IF_IDS = 0 const RPC_C_MGMT_INQ_PRINC_NAME = 1 const RPC_C_MGMT_INQ_STATS = 2 const RPC_C_MGMT_IS_SERVER_LISTEN = 3 const RPC_C_MGMT_STOP_SERVER_LISTEN = 4 const RPC_C_MQ_AUTHN_LEVEL_NONE = 0 const RPC_C_MQ_AUTHN_LEVEL_PKT_INTEGRITY = 8 const RPC_C_MQ_AUTHN_LEVEL_PKT_PRIVACY = 16 const RPC_C_MQ_CLEAR_ON_OPEN = 2 const RPC_C_MQ_EXPRESS = 0 const RPC_C_MQ_JOURNAL_ALWAYS = 2 const RPC_C_MQ_JOURNAL_DEADLETTER = 1 const RPC_C_MQ_JOURNAL_NONE = 0 const RPC_C_MQ_PERMANENT = 1 const RPC_C_MQ_RECOVERABLE = 1 const RPC_C_MQ_TEMPORARY = 0 const RPC_C_MQ_USE_EXISTING_SECURITY = 4 const RPC_C_NOTIFY_ON_SEND_COMPLETE = 1 const RPC_C_NS_DEFAULT_EXP_AGE = -1 const RPC_C_NS_SYNTAX_DCE = 3 const RPC_C_NS_SYNTAX_DEFAULT = 0 const RPC_C_OPT_BINDING_NONCAUSAL = 9 const RPC_C_OPT_CALL_TIMEOUT = 12 const RPC_C_OPT_DONT_LINGER = 13 const RPC_C_OPT_MAX_OPTIONS = 14 type RPC_C_OPT_METADATA_DESCRIPTOR = TRPC_C_OPT_METADATA_DESCRIPTOR const RPC_C_OPT_MQ_ACKNOWLEDGE = 4 const RPC_C_OPT_MQ_AUTHN_LEVEL = 6 const RPC_C_OPT_MQ_AUTHN_SERVICE = 5 const RPC_C_OPT_MQ_DELIVERY = 1 const RPC_C_OPT_MQ_JOURNAL = 3 const RPC_C_OPT_MQ_PRIORITY = 2 const RPC_C_OPT_MQ_TIME_TO_BE_RECEIVED = 8 const RPC_C_OPT_MQ_TIME_TO_REACH_QUEUE = 7 const RPC_C_OPT_SECURITY_CALLBACK = 10 const RPC_C_OPT_UNIQUE_BINDING = 11 const RPC_C_PARM_BUFFER_LENGTH = 2 const RPC_C_PARM_MAX_PACKET_LENGTH = 1 const RPC_C_PROFILE_ALL_ELT = 1 const RPC_C_PROFILE_ALL_ELTS = 1 const RPC_C_PROFILE_DEFAULT_ELT = 0 const RPC_C_PROFILE_MATCH_BY_BOTH = 4 const RPC_C_PROFILE_MATCH_BY_IF = 2 const RPC_C_PROFILE_MATCH_BY_MBR = 3 const RPC_C_PROTECT_LEVEL_CALL = 3 const RPC_C_PROTECT_LEVEL_CONNECT = 2 const RPC_C_PROTECT_LEVEL_DEFAULT = 0 const RPC_C_PROTECT_LEVEL_NONE = 1 const RPC_C_PROTECT_LEVEL_PKT = 4 const RPC_C_PROTECT_LEVEL_PKT_INTEGRITY = 5 const RPC_C_PROTECT_LEVEL_PKT_PRIVACY = 6 const RPC_C_PROTSEQ_MAX_REQS_DEFAULT = 10 const RPC_C_QOS_CAPABILITIES_ANY_AUTHORITY = 4 const RPC_C_QOS_CAPABILITIES_DEFAULT = 0 const RPC_C_QOS_CAPABILITIES_IGNORE_DELEGATE_FAILURE = 8 const RPC_C_QOS_CAPABILITIES_LOCAL_MA_HINT = 16 const RPC_C_QOS_CAPABILITIES_MAKE_FULLSIC = 2 const RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH = 1 const RPC_C_QOS_IDENTITY_DYNAMIC = 1 const RPC_C_QOS_IDENTITY_STATIC = 0 const RPC_C_SECURITY_QOS_VERSION = 1 const RPC_C_SECURITY_QOS_VERSION_1 = 1 const RPC_C_SECURITY_QOS_VERSION_2 = 2 const RPC_C_SECURITY_QOS_VERSION_3 = 3 const RPC_C_STATS_CALLS_IN = 0 const RPC_C_STATS_CALLS_OUT = 1 const RPC_C_STATS_PKTS_IN = 2 const RPC_C_STATS_PKTS_OUT = 3 const RPC_C_USE_INTERNET_PORT = 1 const RPC_C_USE_INTRANET_PORT = 2 const RPC_C_VERS_ALL = 1 const RPC_C_VERS_COMPATIBLE = 2 const RPC_C_VERS_EXACT = 3 const RPC_C_VERS_MAJOR_ONLY = 4 const RPC_C_VERS_UPTO = 5 type RPC_DISPATCH_FUNCTION = TRPC_DISPATCH_FUNCTION type RPC_DISPATCH_TABLE = TRPC_DISPATCH_TABLE const RPC_EEINFO_VERSION = 1 type RPC_EE_INFO_PARAM = TRPC_EE_INFO_PARAM type RPC_EP_INQ_HANDLE = TRPC_EP_INQ_HANDLE type RPC_ERROR_ENUM_HANDLE = TRPC_ERROR_ENUM_HANDLE type RPC_EXTENDED_ERROR_INFO = TRPC_EXTENDED_ERROR_INFO const RPC_FLAGS_VALID_BIT = 32768 type RPC_HTTP_PROXY_FREE_STRING = TRPC_HTTP_PROXY_FREE_STRING type RPC_HTTP_REDIRECTOR_STAGE = TRPC_HTTP_REDIRECTOR_STAGE const RPC_HTTP_TRANSPORT_CREDENTIALS = 0 type RPC_HTTP_TRANSPORT_CREDENTIALS_A = TRPC_HTTP_TRANSPORT_CREDENTIALS_A type RPC_HTTP_TRANSPORT_CREDENTIALS_W = TRPC_HTTP_TRANSPORT_CREDENTIALS_W const RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH = 16 const RPC_IF_ALLOW_LOCAL_ONLY = 32 const RPC_IF_ALLOW_SECURE_ONLY = 8 const RPC_IF_ALLOW_UNKNOWN_AUTHORITY = 4 const RPC_IF_AUTOLISTEN = 1 type RPC_IF_HANDLE = TRPC_IF_HANDLE type RPC_IF_ID = TRPC_IF_ID type RPC_IF_ID_VECTOR = TRPC_IF_ID_VECTOR const RPC_IF_OLE = 2 const RPC_IF_SEC_NO_CACHE = 64 type RPC_IMPORT_CONTEXT_P = TRPC_IMPORT_CONTEXT_P const RPC_INTERFACE_HAS_PIPES = 1 type RPC_LENGTH = TRPC_LENGTH type RPC_MESSAGE = TRPC_MESSAGE type RPC_MGMT_AUTHORIZATION_FN = TRPC_MGMT_AUTHORIZATION_FN const RPC_MGR_EPV = 0 const RPC_NCA_FLAGS_BROADCAST = 2 const RPC_NCA_FLAGS_DEFAULT = 0 const RPC_NCA_FLAGS_IDEMPOTENT = 1 const RPC_NCA_FLAGS_MAYBE = 4 type RPC_NEW_HTTP_PROXY_CHANNEL = TRPC_NEW_HTTP_PROXY_CHANNEL type RPC_NOTIFICATIONS = TRPC_NOTIFICATIONS type RPC_NOTIFICATION_TYPES = TRPC_NOTIFICATION_TYPES type RPC_NS_HANDLE = TRPC_NS_HANDLE type RPC_POLICY = TRPC_POLICY type RPC_PROTSEQ_ENDPOINT = TRPC_PROTSEQ_ENDPOINT const RPC_PROTSEQ_VECTOR = 0 type RPC_PROTSEQ_VECTORA = TRPC_PROTSEQ_VECTORA type RPC_PROTSEQ_VECTORW = TRPC_PROTSEQ_VECTORW const RPC_PROXY_CONNECTION_TYPE_IN_PROXY = 0 const RPC_PROXY_CONNECTION_TYPE_OUT_PROXY = 1 const RPC_P_ADDR_FORMAT_TCP_IPV4 = 1 const RPC_P_ADDR_FORMAT_TCP_IPV6 = 2 const RPC_QUERY_CLIENT_PRINCIPAL_NAME = 4 const RPC_QUERY_SERVER_PRINCIPAL_NAME = 2 type RPC_SECURITY_QOS = TRPC_SECURITY_QOS const RPC_SECURITY_QOS_V2 = 0 type RPC_SECURITY_QOS_V2_A = TRPC_SECURITY_QOS_V2_A type RPC_SECURITY_QOS_V2_W = TRPC_SECURITY_QOS_V2_W const RPC_SECURITY_QOS_V3 = 0 type RPC_SECURITY_QOS_V3_A = TRPC_SECURITY_QOS_V3_A type RPC_SECURITY_QOS_V3_W = TRPC_SECURITY_QOS_V3_W type RPC_SERVER_INTERFACE = TRPC_SERVER_INTERFACE type RPC_SETFILTER_FUNC = TRPC_SETFILTER_FUNC type RPC_SS_THREAD_HANDLE = TRPC_SS_THREAD_HANDLE type RPC_STATS_VECTOR = TRPC_STATS_VECTOR type RPC_STATUS = TRPC_STATUS type RPC_SYNTAX_IDENTIFIER = TRPC_SYNTAX_IDENTIFIER const RPC_S_ACCESS_DENIED = 5 const RPC_S_ADDRESS_ERROR = 1768 const RPC_S_ALREADY_LISTENING = 1713 const RPC_S_ALREADY_REGISTERED = 1711 const RPC_S_ASYNC_CALL_PENDING = 997 const RPC_S_BINDING_HAS_NO_AUTH = 1746 const RPC_S_BINDING_INCOMPLETE = 1819 const RPC_S_BUFFER_TOO_SMALL = 122 const RPC_S_CALL_CANCELLED = 1818 const RPC_S_CALL_FAILED = 1726 const RPC_S_CALL_FAILED_DNE = 1727 const RPC_S_CALL_IN_PROGRESS = 1791 const RPC_S_CANNOT_SUPPORT = 1764 const RPC_S_CANT_CREATE_ENDPOINT = 1720 const RPC_S_COMM_FAILURE = 1820 const RPC_S_COOKIE_AUTH_FAILED = 1833 const RPC_S_DO_NOT_DISTURB = 1834 const RPC_S_DUPLICATE_ENDPOINT = 1740 const RPC_S_ENTRY_ALREADY_EXISTS = 1760 const RPC_S_ENTRY_NOT_FOUND = 1761 const RPC_S_ENTRY_TYPE_MISMATCH = 1922 const RPC_S_FP_DIV_ZERO = 1769 const RPC_S_FP_OVERFLOW = 1771 const RPC_S_FP_UNDERFLOW = 1770 const RPC_S_GROUP_MEMBER_NOT_FOUND = 1898 const RPC_S_GRP_ELT_NOT_ADDED = 1928 const RPC_S_GRP_ELT_NOT_REMOVED = 1929 const RPC_S_INCOMPLETE_NAME = 1755 const RPC_S_INTERFACE_NOT_EXPORTED = 1924 const RPC_S_INTERFACE_NOT_FOUND = 1759 const RPC_S_INTERNAL_ERROR = 1766 const RPC_S_INVALID_ARG = 87 const RPC_S_INVALID_ASYNC_CALL = 1915 const RPC_S_INVALID_ASYNC_HANDLE = 1914 const RPC_S_INVALID_AUTH_IDENTITY = 1749 const RPC_S_INVALID_BINDING = 1702 const RPC_S_INVALID_BOUND = 1734 const RPC_S_INVALID_ENDPOINT_FORMAT = 1706 const RPC_S_INVALID_LEVEL = 87 const RPC_S_INVALID_NAF_ID = 1763 const RPC_S_INVALID_NAME_SYNTAX = 1736 const RPC_S_INVALID_NETWORK_OPTIONS = 1724 const RPC_S_INVALID_NET_ADDR = 1707 const RPC_S_INVALID_OBJECT = 1900 const RPC_S_INVALID_RPC_PROTSEQ = 1704 const RPC_S_INVALID_SECURITY_DESC = 1338 const RPC_S_INVALID_STRING_BINDING = 1700 const RPC_S_INVALID_STRING_UUID = 1705 const RPC_S_INVALID_TAG = 1733 const RPC_S_INVALID_TIMEOUT = 1709 const RPC_S_INVALID_VERS_OPTION = 1756 const RPC_S_MAX_CALLS_TOO_SMALL = 1742 const RPC_S_NAME_SERVICE_UNAVAILABLE = 1762 const RPC_S_NOTHING_TO_EXPORT = 1754 const RPC_S_NOT_ALL_OBJS_EXPORTED = 1923 const RPC_S_NOT_ALL_OBJS_UNEXPORTED = 1758 const RPC_S_NOT_CANCELLED = 1826 const RPC_S_NOT_LISTENING = 1715 const RPC_S_NOT_RPC_ERROR = 1823 const RPC_S_NO_BINDINGS = 1718 const RPC_S_NO_CALL_ACTIVE = 1725 const RPC_S_NO_CONTEXT_AVAILABLE = 1765 const RPC_S_NO_ENDPOINT_FOUND = 1708 const RPC_S_NO_ENTRY_NAME = 1735 const RPC_S_NO_INTERFACES = 1817 const RPC_S_NO_MORE_BINDINGS = 1806 const RPC_S_NO_MORE_MEMBERS = 1757 const RPC_S_NO_PRINC_NAME = 1822 const RPC_S_NO_PROTSEQS = 1719 const RPC_S_NO_PROTSEQS_REGISTERED = 1714 const RPC_S_OBJECT_NOT_FOUND = 1710 const RPC_S_OK = 0 const RPC_S_OUT_OF_MEMORY = 14 const RPC_S_OUT_OF_RESOURCES = 1721 const RPC_S_OUT_OF_THREADS = 164 const RPC_S_PRF_ELT_NOT_ADDED = 1926 const RPC_S_PRF_ELT_NOT_REMOVED = 1927 const RPC_S_PROCNUM_OUT_OF_RANGE = 1745 const RPC_S_PROFILE_NOT_ADDED = 1925 const RPC_S_PROTOCOL_ERROR = 1728 const RPC_S_PROTSEQ_NOT_FOUND = 1744 const RPC_S_PROTSEQ_NOT_SUPPORTED = 1703 const RPC_S_PROXY_ACCESS_DENIED = 1729 const RPC_S_SEC_PKG_ERROR = 1825 const RPC_S_SEND_INCOMPLETE = 1913 const RPC_S_SERVER_OUT_OF_MEMORY = 1130 const RPC_S_SERVER_TOO_BUSY = 1723 const RPC_S_SERVER_UNAVAILABLE = 1722 const RPC_S_STRING_TOO_LONG = 1743 const RPC_S_SYSTEM_HANDLE_COUNT_EXCEEDED = 1835 const RPC_S_SYSTEM_HANDLE_TYPE_MISMATCH = 1836 const RPC_S_TIMEOUT = 1460 const RPC_S_TYPE_ALREADY_REGISTERED = 1712 const RPC_S_UNKNOWN_AUTHN_LEVEL = 1748 const RPC_S_UNKNOWN_AUTHN_SERVICE = 1747 const RPC_S_UNKNOWN_AUTHN_TYPE = 1741 const RPC_S_UNKNOWN_AUTHZ_SERVICE = 1750 const RPC_S_UNKNOWN_IF = 1717 const RPC_S_UNKNOWN_MGR_TYPE = 1716 const RPC_S_UNKNOWN_PRINCIPAL = 1332 const RPC_S_UNSUPPORTED_AUTHN_LEVEL = 1821 const RPC_S_UNSUPPORTED_NAME_SYNTAX = 1737 const RPC_S_UNSUPPORTED_TRANS_SYN = 1730 const RPC_S_UNSUPPORTED_TYPE = 1732 const RPC_S_UUID_LOCAL_ONLY = 1824 const RPC_S_UUID_NO_ADDRESS = 1739 const RPC_S_WRONG_KIND_OF_BINDING = 1701 const RPC_S_ZERO_DIVIDE = 1767 type RPC_TRANSFER_SYNTAX = TRPC_TRANSFER_SYNTAX const RPC_VAR_ENTRY = "__cdecl" type RPC_VERSION = TRPC_VERSION type RPC_WSTR = TRPC_WSTR const RPC_X_BAD_STUB_DATA = 1783 const RPC_X_BYTE_COUNT_TOO_SMALL = 1782 const RPC_X_ENUM_VALUE_OUT_OF_RANGE = 1781 const RPC_X_ENUM_VALUE_TOO_LARGE = 1781 const RPC_X_INVALID_BOUND = 1734 const RPC_X_INVALID_BUFFER = 1784 const RPC_X_INVALID_ES_ACTION = 1827 const RPC_X_INVALID_PIPE_OBJECT = 1830 const RPC_X_INVALID_PIPE_OPERATION = 1831 const RPC_X_INVALID_TAG = 1733 const RPC_X_NO_MEMORY = 14 const RPC_X_NO_MORE_ENTRIES = 1772 const RPC_X_NULL_REF_POINTER = 1780 const RPC_X_PIPE_APP_MEMORY = 14 const RPC_X_PIPE_CLOSED = 1916 const RPC_X_PIPE_DISCIPLINE_ERROR = 1917 const RPC_X_PIPE_EMPTY = 1918 const RPC_X_SS_CANNOT_GET_CALL_HANDLE = 1779 const RPC_X_SS_CHAR_TRANS_OPEN_FAIL = 1773 const RPC_X_SS_CHAR_TRANS_SHORT_FILE = 1774 const RPC_X_SS_CONTEXT_DAMAGED = 1777 const RPC_X_SS_CONTEXT_MISMATCH = 6 const RPC_X_SS_HANDLES_MISMATCH = 1778 const RPC_X_SS_IN_NULL_CONTEXT = 1775 const RPC_X_WRONG_ES_VERSION = 1828 const RPC_X_WRONG_PIPE_ORDER = 1831 const RPC_X_WRONG_PIPE_VERSION = 1832 const RPC_X_WRONG_STUB_VERSION = 1829 const RPI_FLAG_SMB2_SHARECAP_CLUSTER = 64 const RPI_FLAG_SMB2_SHARECAP_CONTINUOUS_AVAILABILITY = 16 const RPI_FLAG_SMB2_SHARECAP_DFS = 8 const RPI_FLAG_SMB2_SHARECAP_SCALEOUT = 32 const RPI_FLAG_SMB2_SHARECAP_TIMEWARP = 2 const RPI_SMB2_FLAG_SERVERCAP_DFS = 1 const RPI_SMB2_FLAG_SERVERCAP_DIRECTORY_LEASING = 32 const RPI_SMB2_FLAG_SERVERCAP_LARGEMTU = 4 const RPI_SMB2_FLAG_SERVERCAP_LEASING = 2 const RPI_SMB2_FLAG_SERVERCAP_MULTICHANNEL = 8 const RPI_SMB2_FLAG_SERVERCAP_PERSISTENT_HANDLES = 16 const RP_INIFILE = 2 const RP_LOGON = 1 const RRF_NOEXPAND = 268435456 const RRF_RT_ANY = 65535 const RRF_RT_DWORD = 24 const RRF_RT_QWORD = 72 const RRF_RT_REG_BINARY = 8 const RRF_RT_REG_DWORD = 16 const RRF_RT_REG_EXPAND_SZ = 4 const RRF_RT_REG_MULTI_SZ = 32 const RRF_RT_REG_NONE = 1 const RRF_RT_REG_QWORD = 64 const RRF_RT_REG_SZ = 2 const RRF_SUBKEY_WOW6432KEY = 131072 const RRF_SUBKEY_WOW6464KEY = 65536 const RRF_WOW64_MASK = 196608 const RRF_ZEROONFAILURE = 536870912 const RSA1024BIT_KEY = 67108864 type RSAPUBKEY = TRSAPUBKEY type RTL_BARRIER = TRTL_BARRIER type RTL_CONDITION_VARIABLE = TRTL_CONDITION_VARIABLE const RTL_CONDITION_VARIABLE_LOCKMODE_SHARED = 1 type RTL_CRITICAL_SECTION = TRTL_CRITICAL_SECTION const RTL_CRITICAL_SECTION_ALL_FLAG_BITS = 4278190080 type RTL_CRITICAL_SECTION_DEBUG = TRTL_CRITICAL_SECTION_DEBUG const RTL_CRITICAL_SECTION_DEBUG_FLAG_STATIC_INIT = 1 const RTL_CRITICAL_SECTION_FLAG_DYNAMIC_SPIN = 33554432 const RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO = 268435456 const RTL_CRITICAL_SECTION_FLAG_NO_DEBUG_INFO = 16777216 const RTL_CRITICAL_SECTION_FLAG_RESERVED = 3758096384 const RTL_CRITICAL_SECTION_FLAG_RESOURCE_TYPE = 134217728 const RTL_CRITICAL_SECTION_FLAG_STATIC_INIT = 67108864 const RTL_CRITSECT_TYPE = 0 type RTL_OSVERSIONINFOEXW = TRTL_OSVERSIONINFOEXW type RTL_OSVERSIONINFOW = TRTL_OSVERSIONINFOW type RTL_RESOURCE_DEBUG = TRTL_RESOURCE_DEBUG const RTL_RESOURCE_TYPE = 1 type RTL_RUN_ONCE = TRTL_RUN_ONCE const RTL_RUN_ONCE_ASYNC = 2 const RTL_RUN_ONCE_CHECK_ONLY = 1 const RTL_RUN_ONCE_CTX_RESERVED_BITS = 2 const RTL_RUN_ONCE_INIT_FAILED = 4 type RTL_SRWLOCK = TRTL_SRWLOCK type RTL_UMS_SCHEDULER_REASON = TRTL_UMS_SCHEDULER_REASON type RTL_UMS_THREAD_INFO_CLASS = TRTL_UMS_THREAD_INFO_CLASS const RTL_UMS_VERSION = 256 type RTL_VERIFIER_DLL_DESCRIPTOR = TRTL_VERIFIER_DLL_DESCRIPTOR type RTL_VERIFIER_DLL_LOAD_CALLBACK = TRTL_VERIFIER_DLL_LOAD_CALLBACK type RTL_VERIFIER_DLL_UNLOAD_CALLBACK = TRTL_VERIFIER_DLL_UNLOAD_CALLBACK type RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK = TRTL_VERIFIER_NTDLLHEAPFREE_CALLBACK type RTL_VERIFIER_PROVIDER_DESCRIPTOR = TRTL_VERIFIER_PROVIDER_DESCRIPTOR type RTL_VERIFIER_THUNK_DESCRIPTOR = TRTL_VERIFIER_THUNK_DESCRIPTOR const RTL_VRF_FLG_APPCOMPAT_CHECKS = 16 const RTL_VRF_FLG_COM_CHECKS = 256 const RTL_VRF_FLG_DANGEROUS_APIS = 512 const RTL_VRF_FLG_DEADLOCK_CHECKS = 2048 const RTL_VRF_FLG_DIRTY_STACKS = 64 const RTL_VRF_FLG_ENABLED_SYSTEM_WIDE = 131072 const RTL_VRF_FLG_ENABLE_LOGGING = 16384 const RTL_VRF_FLG_FAST_FILL_HEAP = 32768 const RTL_VRF_FLG_FIRST_CHANCE_EXCEPTION_CHECKS = 4096 const RTL_VRF_FLG_FULL_PAGE_HEAP = 1 const RTL_VRF_FLG_HANDLE_CHECKS = 4 const RTL_VRF_FLG_LOCK_CHECKS = 262144 const RTL_VRF_FLG_MISCELLANEOUS_CHECKS = 131072 const RTL_VRF_FLG_RACE_CHECKS = 1024 const RTL_VRF_FLG_RESERVED_DONOTUSE = 2 const RTL_VRF_FLG_RPC_CHECKS = 128 const RTL_VRF_FLG_STACK_CHECKS = 8 const RTL_VRF_FLG_TLS_CHECKS = 32 const RTL_VRF_FLG_VIRTUAL_MEM_CHECKS = 8192 const RTL_VRF_FLG_VIRTUAL_SPACE_TRACKING = 65536 const RTS_CONTROL_DISABLE = 0 const RTS_CONTROL_ENABLE = 1 const RTS_CONTROL_HANDSHAKE = 2 const RTS_CONTROL_TOGGLE = 3 const RUNDLGORD = 1545 const RUSSIAN_CHARSET = 204 const ReadConsole = 0 const ReadConsoleInput = 0 const ReadConsoleOutput = 0 const ReadConsoleOutputCharacter = 0 const ReadEventLog = 0 const RealGetWindowClass = 0 const RegConnectRegistry = 0 const RegConnectRegistryEx = 0 const RegCopyTree = 0 const RegCreateKey = 0 const RegCreateKeyEx = 0 const RegCreateKeyTransacted = 0 const RegDeleteKey = 0 const RegDeleteKeyEx = 0 const RegDeleteKeyTransacted = 0 const RegDeleteKeyValue = 0 const RegDeleteTree = 0 const RegDeleteValue = 0 const RegEnumKey = 0 const RegEnumKeyEx = 0 const RegEnumValue = 0 const RegGetValue = 0 const RegLoadAppKey = 0 const RegLoadKey = 0 const RegLoadMUIString = 0 const RegOpenKey = 0 const RegOpenKeyEx = 0 const RegOpenKeyTransacted = 0 const RegQueryInfoKey = 0 const RegQueryMultipleValues = 0 const RegQueryValue = 0 const RegQueryValueEx = 0 const RegReplaceKey = 0 const RegRestoreKey = 0 const RegSaveKey = 0 const RegSaveKeyEx = 0 const RegSetKeyValue = 0 const RegSetValue = 0 const RegSetValueEx = 0 const RegUnLoadKey = 0 const RegisterClass = 0 const RegisterClassEx = 0 const RegisterClipboardFormat = 0 const RegisterDeviceNotification = 0 const RegisterEventSource = 0 const RegisterServiceCtrlHandler = 0 const RegisterServiceCtrlHandlerEx = 0 const RegisterWindowMessage = 0 type RemBINDINFO = TRemBINDINFO type RemFORMATETC = TRemFORMATETC type RemHBITMAP = TRemHBITMAP type RemHBRUSH = TRemHBRUSH type RemHENHMETAFILE = TRemHENHMETAFILE type RemHGLOBAL = TRemHGLOBAL type RemHMETAFILEPICT = TRemHMETAFILEPICT type RemHPALETTE = TRemHPALETTE type RemSNB = TRemSNB type RemSTGMEDIUM = TRemSTGMEDIUM type RemotableHandle = TRemotableHandle const RemoveDirectory = 0 const RemoveDirectoryTransacted = 0 const RemoveFontResource = 0 const RemoveFontResourceEx = 0 const RemoveProp = 0 const ReplaceFile = 0 const ReplaceText = 0 type ReplacesCorHdrNumericDefines = TReplacesCorHdrNumericDefines const ReportEvent = 0 const ResetDC = 0 const ResetPrinter = 0 const RotateLeft32 = 0 const RotateLeft64 = 0 const RotateRight32 = 0 const RotateRight64 = 0 const RpcBindingCreate = 0 const RpcBindingFromStringBinding = 0 const RpcBindingInqAuthClient = 0 const RpcBindingInqAuthClientEx = 0 const RpcBindingInqAuthInfo = 0 const RpcBindingInqAuthInfoEx = 0 const RpcBindingSetAuthInfo = 0 const RpcBindingSetAuthInfoEx = 0 const RpcBindingToStringBinding = 0 type RpcCallClientLocality = TRpcCallClientLocality type RpcCallType = TRpcCallType const RpcEndExcept = "}" const RpcEndFinally = "}" const RpcEpRegister = 0 const RpcEpRegisterNoReplace = 0 type RpcLocalAddressFormat = TRpcLocalAddressFormat const RpcMgmtEpEltInqNext = 0 const RpcMgmtInqServerPrincName = 0 const RpcNetworkInqProtseqs = 0 const RpcNetworkIsProtseqValid = 0 const RpcNsBindingExport = 0 const RpcNsBindingExportPnP = 0 const RpcNsBindingImportBegin = 0 const RpcNsBindingInqEntryName = 0 const RpcNsBindingLookupBegin = 0 const RpcNsBindingUnexport = 0 const RpcNsBindingUnexportPnP = 0 const RpcNsEntryExpandName = 0 const RpcNsEntryObjectInqBegin = 0 const RpcNsGroupDelete = 0 const RpcNsGroupMbrAdd = 0 const RpcNsGroupMbrInqBegin = 0 const RpcNsGroupMbrInqNext = 0 const RpcNsGroupMbrRemove = 0 const RpcNsMgmtBindingUnexport = 0 const RpcNsMgmtEntryCreate = 0 const RpcNsMgmtEntryDelete = 0 const RpcNsMgmtEntryInqIfIds = 0 const RpcNsProfileDelete = 0 const RpcNsProfileEltAdd = 0 const RpcNsProfileEltInqBegin = 0 const RpcNsProfileEltInqNext = 0 const RpcNsProfileEltRemove = 0 const RpcProtseqVectorFree = 0 const RpcServerInqCallAttributes = 0 const RpcServerInqDefaultPrincName = 0 const RpcServerRegisterAuthInfo = 0 const RpcServerUseProtseq = 0 const RpcServerUseProtseqEp = 0 const RpcServerUseProtseqEpEx = 0 const RpcServerUseProtseqEx = 0 const RpcServerUseProtseqIf = 0 const RpcServerUseProtseqIfEx = 0 const RpcStringBindingCompose = 0 const RpcStringBindingParse = 0 const RpcStringFree = 0 const SACL_SECURITY_INFORMATION = 8 type SAFEARRAY = TSAFEARRAY type SAFEARRAYBOUND = TSAFEARRAYBOUND type SAFEARRAYUNION = TSAFEARRAYUNION type SAFEARR_BRECORD = TSAFEARR_BRECORD type SAFEARR_BSTR = TSAFEARR_BSTR type SAFEARR_DISPATCH = TSAFEARR_DISPATCH type SAFEARR_HAVEIID = TSAFEARR_HAVEIID type SAFEARR_UNKNOWN = TSAFEARR_UNKNOWN type SAFEARR_VARIANT = TSAFEARR_VARIANT const SANDBOX_INERT = 2 type SAVEPOINT_ID = TSAVEPOINT_ID const SAVE_ATTRIBUTE_VALUES = 211 const SAVE_CTM = 4101 const SBM_ENABLE_ARROWS = 228 const SBM_GETPOS = 225 const SBM_GETRANGE = 227 const SBM_GETSCROLLBARINFO = 235 const SBM_GETSCROLLINFO = 234 const SBM_SETPOS = 224 const SBM_SETRANGE = 226 const SBM_SETRANGEREDRAW = 230 const SBM_SETSCROLLINFO = 233 const SBS_BOTTOMALIGN = 4 const SBS_HORZ = 0 const SBS_LEFTALIGN = 2 const SBS_RIGHTALIGN = 4 const SBS_SIZEBOX = 8 const SBS_SIZEBOXBOTTOMRIGHTALIGN = 4 const SBS_SIZEBOXTOPLEFTALIGN = 2 const SBS_SIZEGRIP = 16 const SBS_TOPALIGN = 2 const SBS_VERT = 1 const SB_BOTH = 3 const SB_BOTTOM = 7 const SB_CONST_ALPHA = 1 const SB_CTL = 2 const SB_ENDSCROLL = 8 const SB_GRAD_RECT = 16 const SB_GRAD_TRI = 32 const SB_HORZ = 0 const SB_LEFT = 6 const SB_LINEDOWN = 1 const SB_LINELEFT = 0 const SB_LINERIGHT = 1 const SB_LINEUP = 0 const SB_NONE = 0 const SB_PAGEDOWN = 3 const SB_PAGELEFT = 2 const SB_PAGERIGHT = 3 const SB_PAGEUP = 2 const SB_PIXEL_ALPHA = 2 const SB_PREMULT_ALPHA = 4 const SB_RIGHT = 7 const SB_THUMBPOSITION = 4 const SB_THUMBTRACK = 5 const SB_TOP = 6 const SB_VERT = 1 const SCALINGFACTORX = 114 const SCALINGFACTORY = 115 type SCARDCONTEXT = TSCARDCONTEXT type SCARDHANDLE = TSCARDHANDLE const SCARD_ABSENT = 1 type SCARD_ATRMASK = TSCARD_ATRMASK const SCARD_ATR_LENGTH = 33 const SCARD_CLASS_COMMUNICATIONS = 2 const SCARD_CLASS_ICC_STATE = 9 const SCARD_CLASS_IFD_PROTOCOL = 8 const SCARD_CLASS_MECHANICAL = 6 const SCARD_CLASS_PERF = 32766 const SCARD_CLASS_POWER_MGMT = 4 const SCARD_CLASS_PROTOCOL = 3 const SCARD_CLASS_SECURITY = 5 const SCARD_CLASS_SYSTEM = 32767 const SCARD_CLASS_VENDOR_DEFINED = 7 const SCARD_CLASS_VENDOR_INFO = 1 const SCARD_COLD_RESET = 1 const SCARD_EJECT_CARD = 3 type SCARD_IO_REQUEST = TSCARD_IO_REQUEST const SCARD_LEAVE_CARD = 0 const SCARD_NEGOTIABLE = 5 const SCARD_PCI_RAW = 0 const SCARD_PCI_T0 = 0 const SCARD_PCI_T1 = 0 const SCARD_POWERED = 4 const SCARD_POWER_DOWN = 0 const SCARD_PRESENT = 2 const SCARD_PROTOCOL_DEFAULT = 2147483648 const SCARD_PROTOCOL_OPTIMAL = 0 const SCARD_PROTOCOL_RAW = 65536 const SCARD_PROTOCOL_T0 = 1 const SCARD_PROTOCOL_T1 = 2 const SCARD_PROTOCOL_Tx = 3 const SCARD_PROTOCOL_UNDEFINED = 0 const SCARD_PROVIDER_CSP = 2 const SCARD_PROVIDER_PRIMARY = 1 type SCARD_READERSTATE = TSCARD_READERSTATE type SCARD_READERSTATEA = TSCARD_READERSTATEA type SCARD_READERSTATEW = TSCARD_READERSTATEW const SCARD_READERSTATE_A = 0 const SCARD_READERSTATE_W = 0 const SCARD_READER_CONFISCATES = 4 const SCARD_READER_EJECTS = 2 const SCARD_READER_SWALLOWS = 1 const SCARD_READER_TYPE_IDE = 16 const SCARD_READER_TYPE_KEYBOARD = 4 const SCARD_READER_TYPE_PARALELL = 2 const SCARD_READER_TYPE_PCMCIA = 64 const SCARD_READER_TYPE_SCSI = 8 const SCARD_READER_TYPE_SERIAL = 1 const SCARD_READER_TYPE_USB = 32 const SCARD_READER_TYPE_VENDOR = 240 const SCARD_RESET_CARD = 1 const SCARD_SCOPE_SYSTEM = 2 const SCARD_SCOPE_TERMINAL = 1 const SCARD_SCOPE_USER = 0 const SCARD_SHARE_DIRECT = 3 const SCARD_SHARE_EXCLUSIVE = 1 const SCARD_SHARE_SHARED = 2 const SCARD_SPECIFIC = 6 const SCARD_STATE_ATRMATCH = 64 const SCARD_STATE_CHANGED = 2 const SCARD_STATE_EMPTY = 16 const SCARD_STATE_EXCLUSIVE = 128 const SCARD_STATE_IGNORE = 1 const SCARD_STATE_INUSE = 256 const SCARD_STATE_MUTE = 512 const SCARD_STATE_PRESENT = 32 const SCARD_STATE_UNAVAILABLE = 8 const SCARD_STATE_UNAWARE = 0 const SCARD_STATE_UNKNOWN = 4 const SCARD_STATE_UNPOWERED = 1024 const SCARD_SWALLOWED = 3 const SCARD_S_SUCCESS = 0 const SCARD_T0_CMD_LENGTH = 5 type SCARD_T0_COMMAND = TSCARD_T0_COMMAND const SCARD_T0_HEADER_LENGTH = 7 type SCARD_T0_REQUEST = TSCARD_T0_REQUEST const SCARD_T1_EPILOGUE_LENGTH = 2 const SCARD_T1_MAX_IFS = 254 const SCARD_T1_PROLOGUE_LENGTH = 3 type SCARD_T1_REQUEST = TSCARD_T1_REQUEST const SCARD_UNKNOWN = 0 const SCARD_UNPOWER_CARD = 2 const SCARD_WARM_RESET = 2 const SCERR_NOCARDNAME = 16384 const SCERR_NOGUIDS = 32768 const SCF_ISSECURE = 1 type SCHANNEL_ALG = TSCHANNEL_ALG const SCHANNEL_ENC_KEY = 1 const SCHANNEL_MAC_KEY = 0 const SCHED_E_SERVICE_NOT_LOCALSYSTEM = 6200 const SCHEME_OID_RETRIEVE_ENCODED_OBJECTW_FUNC = "SchemeDllRetrieveEncodedObjectW" const SCHEME_OID_RETRIEVE_ENCODED_OBJECT_FUNC = "SchemeDllRetrieveEncodedObject" type SCODE = TSCODE type SCONTEXT_QUEUE = TSCONTEXT_QUEUE const SCOPE_SECURITY_INFORMATION = 64 type SCOPE_TABLE_AMD64 = TSCOPE_TABLE_AMD64 const SCREEN_FONTTYPE = 8192 type SCROLLBARINFO = TSCROLLBARINFO type SCROLLINFO = TSCROLLINFO const SCROLLLOCK_ON = 64 type SCRUB_DATA_INPUT = TSCRUB_DATA_INPUT const SCRUB_DATA_INPUT_FLAG_RESUME = 1 const SCRUB_DATA_INPUT_FLAG_SKIP_IN_SYNC = 2 const SCRUB_DATA_INPUT_FLAG_SKIP_NON_INTEGRITY_DATA = 4 type SCRUB_DATA_OUTPUT = TSCRUB_DATA_OUTPUT const SCRUB_DATA_OUTPUT_FLAG_INCOMPLETE = 1 const SCRUB_DATA_OUTPUT_FLAG_NON_USER_DATA_RANGE = 65536 const SCS_32BIT_BINARY = 0 const SCS_64BIT_BINARY = 6 const SCS_CAP_COMPSTR = 1 const SCS_CAP_MAKEREAD = 2 const SCS_CAP_SETRECONVERTSTRING = 4 const SCS_CHANGEATTR = 18 const SCS_CHANGECLAUSE = 36 const SCS_DOS_BINARY = 1 const SCS_OS216_BINARY = 5 const SCS_PIF_BINARY = 3 const SCS_POSIX_BINARY = 4 const SCS_QUERYRECONVERTSTRING = 131072 const SCS_SETRECONVERTSTRING = 65536 const SCS_SETSTR = 9 const SCS_WOW_BINARY = 2 type SC_ACTION = TSC_ACTION type SC_ACTION_TYPE = TSC_ACTION_TYPE const SC_ARRANGE = 61712 const SC_CLOSE = 61536 const SC_CONTEXTHELP = 61824 const SC_DEFAULT = 61792 const SC_DLG_FORCE_UI = 4 const SC_DLG_MINIMAL_UI = 1 const SC_DLG_NO_UI = 2 type SC_ENUM_TYPE = TSC_ENUM_TYPE const SC_GROUP_IDENTIFIER = 43 const SC_GROUP_IDENTIFIERA = 43 const SC_GROUP_IDENTIFIERW = 43 type SC_HANDLE = TSC_HANDLE type SC_HANDLE__ = TSC_HANDLE__ const SC_HOTKEY = 61776 const SC_HSCROLL = 61568 const SC_ICON = 61472 const SC_KEYMENU = 61696 type SC_LOCK = TSC_LOCK const SC_MANAGER_ALL_ACCESS = 983103 const SC_MANAGER_CONNECT = 1 const SC_MANAGER_CREATE_SERVICE = 2 const SC_MANAGER_ENUMERATE_SERVICE = 4 const SC_MANAGER_LOCK = 8 const SC_MANAGER_MODIFY_BOOT_CONFIG = 32 const SC_MANAGER_QUERY_LOCK_STATUS = 16 const SC_MAXIMIZE = 61488 const SC_MINIMIZE = 61472 const SC_MONITORPOWER = 61808 const SC_MOUSEMENU = 61584 const SC_MOVE = 61456 const SC_NEXTWINDOW = 61504 const SC_PREVWINDOW = 61520 const SC_RESTORE = 61728 const SC_SCREENSAVE = 61760 const SC_SEPARATOR = 61455 const SC_SIZE = 61440 type SC_STATUS_TYPE = TSC_STATUS_TYPE const SC_TASKLIST = 61744 const SC_VSCROLL = 61552 const SC_ZOOM = 61488 const SCardAddReaderToGroup = 0 const SCardConnect = 0 const SCardForgetCardType = 0 const SCardForgetReader = 0 const SCardForgetReaderGroup = 0 const SCardGetCardTypeProviderName = 0 const SCardGetProviderId = 0 const SCardGetReaderCapabilities = 0 const SCardGetStatusChange = 0 const SCardIntroduceCardType = 0 const SCardIntroduceReader = 0 const SCardIntroduceReaderGroup = 0 const SCardListCardTypes = 0 const SCardListCards = 0 const SCardListInterfaces = 0 const SCardListReaderGroups = 0 const SCardListReaders = 0 const SCardLocateCards = 0 const SCardLocateCardsByATR = 0 const SCardReadCache = 0 const SCardRemoveReaderFromGroup = 0 const SCardSetCardTypeProviderName = 0 const SCardSetReaderCapabilities = 0 const SCardStatus = 0 const SCardUIDlgSelectCard = 0 const SCardWriteCache = 0 type SChannelHookCallInfo = TSChannelHookCallInfo const SDC_ALLOW_CHANGES = 1024 const SDC_ALLOW_PATH_ORDER_CHANGES = 8192 const SDC_APPLY = 128 const SDC_FORCE_MODE_ENUMERATION = 4096 const SDC_NO_OPTIMIZATION = 256 const SDC_PATH_PERSIST_IF_REQUIRED = 2048 const SDC_SAVE_TO_DATABASE = 512 const SDC_TOPOLOGY_CLONE = 2 const SDC_TOPOLOGY_EXTEND = 4 const SDC_TOPOLOGY_EXTERNAL = 8 const SDC_TOPOLOGY_INTERNAL = 1 const SDC_TOPOLOGY_SUPPLIED = 16 const SDC_USE_DATABASE_CURRENT = 15 const SDC_USE_SUPPLIED_DISPLAY_CONFIG = 32 const SDC_VALIDATE = 64 const SDC_VIRTUAL_MODE_AWARE = 32768 type SD_CHANGE_MACHINE_SID_INPUT = TSD_CHANGE_MACHINE_SID_INPUT type SD_CHANGE_MACHINE_SID_OUTPUT = TSD_CHANGE_MACHINE_SID_OUTPUT const SD_GLOBAL_CHANGE_TYPE_MACHINE_SID = 1 const SEARCH_ALL = 0 const SEARCH_ALL_NO_SEQ = 4 const SEARCH_ALTERNATE = 2 const SEARCH_ALT_NO_SEQ = 6 const SEARCH_PRIMARY = 1 const SEARCH_PRI_NO_SEQ = 5 const SECTION_ALL_ACCESS = 983071 const SECTION_EXTEND_SIZE = 16 const SECTION_MAP_EXECUTE = 8 const SECTION_MAP_EXECUTE_EXPLICIT = 32 const SECTION_MAP_READ = 4 const SECTION_MAP_WRITE = 2 const SECTION_QUERY = 1 const SECURITY_ANONYMOUS = 0 const SECURITY_ANONYMOUS_LOGON_RID = 7 const SECURITY_APPPOOL_ID_BASE_RID = 82 const SECURITY_APPPOOL_ID_RID_COUNT = 6 const SECURITY_APP_PACKAGE_BASE_RID = 2 const SECURITY_APP_PACKAGE_RID_COUNT = 8 type SECURITY_ATTRIBUTES = TSECURITY_ATTRIBUTES const SECURITY_AUTHENTICATED_USER_RID = 11 const SECURITY_AUTHENTICATION_AUTHORITY_ASSERTED_RID = 1 const SECURITY_AUTHENTICATION_AUTHORITY_RID_COUNT = 1 const SECURITY_AUTHENTICATION_SERVICE_ASSERTED_RID = 2 const SECURITY_BATCH_RID = 3 const SECURITY_BUILTIN_APP_PACKAGE_RID_COUNT = 2 const SECURITY_BUILTIN_CAPABILITY_RID_COUNT = 2 const SECURITY_BUILTIN_DOMAIN_RID = 32 const SECURITY_BUILTIN_PACKAGE_ANY_PACKAGE = 1 const SECURITY_BUILTIN_PACKAGE_ANY_RESTRICTED_PACKAGE = 2 type SECURITY_CAPABILITIES = TSECURITY_CAPABILITIES const SECURITY_CAPABILITY_APPOINTMENTS = 11 const SECURITY_CAPABILITY_BASE_RID = 3 const SECURITY_CAPABILITY_CONTACTS = 12 const SECURITY_CAPABILITY_DOCUMENTS_LIBRARY = 7 const SECURITY_CAPABILITY_ENTERPRISE_AUTHENTICATION = 8 const SECURITY_CAPABILITY_INTERNET_CLIENT = 1 const SECURITY_CAPABILITY_INTERNET_CLIENT_SERVER = 2 const SECURITY_CAPABILITY_INTERNET_EXPLORER = 4096 const SECURITY_CAPABILITY_MUSIC_LIBRARY = 6 const SECURITY_CAPABILITY_PICTURES_LIBRARY = 4 const SECURITY_CAPABILITY_PRIVATE_NETWORK_CLIENT_SERVER = 3 const SECURITY_CAPABILITY_REMOVABLE_STORAGE = 10 const SECURITY_CAPABILITY_RID_COUNT = 5 const SECURITY_CAPABILITY_SHARED_USER_CERTIFICATES = 9 const SECURITY_CAPABILITY_VIDEOS_LIBRARY = 5 const SECURITY_CLOUD_INFRASTRUCTURE_SERVICES_ID_BASE_RID = 85 const SECURITY_CLOUD_INFRASTRUCTURE_SERVICES_ID_RID_COUNT = 6 const SECURITY_COM_ID_BASE_RID = 89 const SECURITY_CONTEXT_TRACKING = 262144 type SECURITY_CONTEXT_TRACKING_MODE = TSECURITY_CONTEXT_TRACKING_MODE const SECURITY_CREATOR_GROUP_RID = 1 const SECURITY_CREATOR_GROUP_SERVER_RID = 3 const SECURITY_CREATOR_OWNER_RID = 0 const SECURITY_CREATOR_OWNER_RIGHTS_RID = 4 const SECURITY_CREATOR_OWNER_SERVER_RID = 2 const SECURITY_CRED_TYPE_BASE_RID = 65 const SECURITY_CRED_TYPE_RID_COUNT = 2 const SECURITY_CRED_TYPE_THIS_ORG_CERT_RID = 1 const SECURITY_DASHOST_ID_BASE_RID = 92 const SECURITY_DASHOST_ID_RID_COUNT = 6 const SECURITY_DELEGATION = 0 type SECURITY_DESCRIPTOR = TSECURITY_DESCRIPTOR type SECURITY_DESCRIPTOR_CONTROL = TSECURITY_DESCRIPTOR_CONTROL const SECURITY_DESCRIPTOR_MIN_LENGTH = 0 type SECURITY_DESCRIPTOR_RELATIVE = TSECURITY_DESCRIPTOR_RELATIVE const SECURITY_DESCRIPTOR_REVISION = 1 const SECURITY_DESCRIPTOR_REVISION1 = 1 const SECURITY_DIALUP_RID = 1 const SECURITY_DYNAMIC_TRACKING = 1 const SECURITY_EFFECTIVE_ONLY = 524288 const SECURITY_ENTERPRISE_CONTROLLERS_RID = 9 const SECURITY_ENTERPRISE_READONLY_CONTROLLERS_RID = 22 const SECURITY_IDENTIFICATION = 0 const SECURITY_IE_STATE_GREEN = 0 const SECURITY_IE_STATE_RED = 1 const SECURITY_IMPERSONATION = 0 type SECURITY_IMPERSONATION_LEVEL = TSECURITY_IMPERSONATION_LEVEL type SECURITY_INFORMATION = TSECURITY_INFORMATION const SECURITY_INTERACTIVE_RID = 4 const SECURITY_IUSER_RID = 17 const SECURITY_LOCAL_LOGON_RID = 1 const SECURITY_LOCAL_RID = 0 const SECURITY_LOCAL_SERVICE_RID = 19 const SECURITY_LOCAL_SYSTEM_RID = 18 const SECURITY_LOGON_IDS_RID = 5 const SECURITY_LOGON_IDS_RID_COUNT = 3 const SECURITY_MANDATORY_HIGH_RID = 12288 const SECURITY_MANDATORY_LOW_RID = 4096 const SECURITY_MANDATORY_MAXIMUM_USER_RID = 16384 const SECURITY_MANDATORY_MEDIUM_RID = 8192 const SECURITY_MANDATORY_PROTECTED_PROCESS_RID = 20480 const SECURITY_MANDATORY_SYSTEM_RID = 16384 const SECURITY_MANDATORY_UNTRUSTED_RID = 0 const SECURITY_MAX_ALWAYS_FILTERED = 999 const SECURITY_MAX_BASE_RID = 111 const SECURITY_MAX_IMPERSONATION_LEVEL = 0 const SECURITY_MAX_SID_SIZE = 0 const SECURITY_MIN_BASE_RID = 80 const SECURITY_MIN_IMPERSONATION_LEVEL = 0 const SECURITY_MIN_NEVER_FILTERED = 1000 const SECURITY_NETWORK_RID = 2 const SECURITY_NETWORK_SERVICE_RID = 20 const SECURITY_NFS_ID_BASE_RID = 88 const SECURITY_NT_NON_UNIQUE = 21 const SECURITY_NT_NON_UNIQUE_SUB_AUTH_COUNT = 3 const SECURITY_NULL_RID = 0 const SECURITY_OTHER_ORGANIZATION_RID = 1000 const SECURITY_PACKAGE_BASE_RID = 64 const SECURITY_PACKAGE_DIGEST_RID = 21 const SECURITY_PACKAGE_NTLM_RID = 10 const SECURITY_PACKAGE_RID_COUNT = 2 const SECURITY_PACKAGE_SCHANNEL_RID = 14 const SECURITY_PRINCIPAL_SELF_RID = 10 const SECURITY_PROXY_RID = 8 type SECURITY_QUALITY_OF_SERVICE = TSECURITY_QUALITY_OF_SERVICE const SECURITY_RDV_GFX_BASE_RID = 91 const SECURITY_REMOTE_LOGON_RID = 14 const SECURITY_RESERVED_ID_BASE_RID = 81 const SECURITY_RESTRICTED_CODE_RID = 12 const SECURITY_SERVER_LOGON_RID = 9 const SECURITY_SERVICE_ID_BASE_RID = 80 const SECURITY_SERVICE_ID_RID_COUNT = 6 const SECURITY_SERVICE_RID = 6 const SECURITY_SQOS_PRESENT = 1048576 const SECURITY_STATIC_TRACKING = 0 type SECURITY_STATUS = TSECURITY_STATUS const SECURITY_TASK_ID_BASE_RID = 87 const SECURITY_TERMINAL_SERVER_RID = 13 const SECURITY_THIS_ORGANIZATION_RID = 15 const SECURITY_TRUSTED_INSTALLER_RID1 = 956008885 const SECURITY_TRUSTED_INSTALLER_RID2 = 3418522649 const SECURITY_TRUSTED_INSTALLER_RID3 = 1831038044 const SECURITY_TRUSTED_INSTALLER_RID4 = 1853292631 const SECURITY_TRUSTED_INSTALLER_RID5 = 2271478464 const SECURITY_USERMODEDRIVERHOST_ID_BASE_RID = 84 const SECURITY_USERMODEDRIVERHOST_ID_RID_COUNT = 6 const SECURITY_VALID_SQOS_FLAGS = 2031616 const SECURITY_VIRTUALACCOUNT_ID_RID_COUNT = 6 const SECURITY_VIRTUALSERVER_ID_BASE_RID = 83 const SECURITY_VIRTUALSERVER_ID_RID_COUNT = 6 const SECURITY_WINDOWSMOBILE_ID_BASE_RID = 112 const SECURITY_WINDOW_MANAGER_BASE_RID = 90 const SECURITY_WMIHOST_ID_BASE_RID = 86 const SECURITY_WMIHOST_ID_RID_COUNT = 6 const SECURITY_WORLD_RID = 0 const SECURITY_WRITE_RESTRICTED_CODE_RID = 33 const SEC_64K_PAGES = 524288 const SEC_COMMIT = 134217728 const SEC_E_NOT_SUPPORTED = "SEC_E_UNSUPPORTED_FUNCTION" const SEC_E_NO_SPM = "SEC_E_INTERNAL_ERROR" const SEC_FILE = 8388608 const SEC_IMAGE = 16777216 const SEC_IMAGE_NO_EXECUTE = 285212672 const SEC_LARGE_PAGES = 2147483648 const SEC_NOCACHE = 268435456 const SEC_PARTITION_OWNER_HANDLE = 262144 const SEC_PROTECTED_IMAGE = 33554432 const SEC_RESERVE = 67108864 const SEC_WINNT_AUTH_IDENTITY = 0 type SEC_WINNT_AUTH_IDENTITY_A = TSEC_WINNT_AUTH_IDENTITY_A const SEC_WINNT_AUTH_IDENTITY_ANSI = 1 const SEC_WINNT_AUTH_IDENTITY_UNICODE = 2 type SEC_WINNT_AUTH_IDENTITY_W = TSEC_WINNT_AUTH_IDENTITY_W const SEC_WRITECOMBINE = 1073741824 const SEE_MASK_ASYNCOK = 1048576 const SEE_MASK_CLASSKEY = 3 const SEE_MASK_CLASSNAME = 1 const SEE_MASK_CONNECTNETDRV = 128 const SEE_MASK_DEFAULT = 0 const SEE_MASK_DOENVSUBST = 512 const SEE_MASK_FLAG_DDEWAIT = 256 const SEE_MASK_FLAG_HINST_IS_SITE = 134217728 const SEE_MASK_FLAG_LOG_USAGE = 67108864 const SEE_MASK_FLAG_NO_UI = 1024 const SEE_MASK_HMONITOR = 2097152 const SEE_MASK_HOTKEY = 32 const SEE_MASK_IDLIST = 4 const SEE_MASK_INVOKEIDLIST = 12 const SEE_MASK_NOASYNC = 256 const SEE_MASK_NOCLOSEPROCESS = 64 const SEE_MASK_NOQUERYCLASSSTORE = 16777216 const SEE_MASK_NOZONECHECKS = 8388608 const SEE_MASK_NO_CONSOLE = 32768 const SEE_MASK_UNICODE = 16384 const SEE_MASK_WAITFORINPUTIDLE = 33554432 const SEF_AVOID_OWNER_CHECK = 16 const SEF_AVOID_OWNER_RESTRICTION = 4096 const SEF_AVOID_PRIVILEGE_CHECK = 8 const SEF_DACL_AUTO_INHERIT = 1 const SEF_DEFAULT_DESCRIPTOR_FOR_OBJECT = 4 const SEF_DEFAULT_GROUP_FROM_PARENT = 64 const SEF_DEFAULT_OWNER_FROM_PARENT = 32 const SEF_MACL_NO_EXECUTE_UP = 1024 const SEF_MACL_NO_READ_UP = 512 const SEF_MACL_NO_WRITE_UP = 256 const SEF_MACL_VALID_FLAGS = 1792 const SEF_SACL_AUTO_INHERIT = 2 const SELECTDIB = 41 const SELECTPAPERSOURCE = 18 const SELECT_CAP_CONVERSION = 1 const SELECT_CAP_SENTENCE = 2 const SEMAPHORE_ALL_ACCESS = 2031619 const SEMAPHORE_MODIFY_STATE = 2 const SEM_FAILCRITICALERRORS = 1 const SEM_NOALIGNMENTFAULTEXCEPT = 4 const SEM_NOGPFAULTERRORBOX = 2 const SEM_NOOPENFILEERRORBOX = 32768 type SENDASYNCPROC = TSENDASYNCPROC type SENDCMDINPARAMS = TSENDCMDINPARAMS type SENDCMDOUTPARAMS = TSENDCMDOUTPARAMS type SERIALIZEDPROPERTYVALUE = TSERIALIZEDPROPERTYVALUE type SERIALKEYS = TSERIALKEYS type SERIALKEYSA = TSERIALKEYSA type SERIALKEYSW = TSERIALKEYSW const SERIAL_NUMBER_LENGTH = 32 const SERKF_AVAILABLE = 2 const SERKF_INDICATOR = 4 const SERKF_SERIALKEYSON = 1 type SERVENT = TSERVENT type SERVERCALL = TSERVERCALL const SERVER_ACCESS_ADMINISTER = 1 const SERVER_ACCESS_ENUMERATE = 2 const SERVER_ALL_ACCESS = 983043 const SERVER_EXECUTE = 131074 const SERVER_READ = 131074 type SERVER_ROUTINE = TSERVER_ROUTINE const SERVER_WRITE = 131075 const SERVICES_ACTIVE_DATABASEA = "ServicesActive" const SERVICES_ACTIVE_DATABASEW = "ServicesActive" const SERVICES_FAILED_DATABASEA = "ServicesFailed" const SERVICES_FAILED_DATABASEW = "ServicesFailed" const SERVICE_ACCEPT_HARDWAREPROFILECHANGE = 32 const SERVICE_ACCEPT_LOWRESOURCES = 8192 const SERVICE_ACCEPT_NETBINDCHANGE = 16 const SERVICE_ACCEPT_PARAMCHANGE = 8 const SERVICE_ACCEPT_PAUSE_CONTINUE = 2 const SERVICE_ACCEPT_POWEREVENT = 64 const SERVICE_ACCEPT_PRESHUTDOWN = 256 const SERVICE_ACCEPT_SESSIONCHANGE = 128 const SERVICE_ACCEPT_SHUTDOWN = 4 const SERVICE_ACCEPT_STOP = 1 const SERVICE_ACCEPT_SYSTEMLOWRESOURCES = 16384 const SERVICE_ACCEPT_TIMECHANGE = 512 const SERVICE_ACCEPT_TRIGGEREVENT = 1024 const SERVICE_ACCEPT_USER_LOGOFF = 2048 const SERVICE_ACTIVE = 1 const SERVICE_ADAPTER = 4 const SERVICE_ALL_ACCESS = 983551 const SERVICE_AUTO_START = 2 const SERVICE_BOOT_START = 0 const SERVICE_CHANGE_CONFIG = 2 const SERVICE_CONFIG_DELAYED_AUTO_START_INFO = 3 const SERVICE_CONFIG_DESCRIPTION = 1 const SERVICE_CONFIG_FAILURE_ACTIONS = 2 const SERVICE_CONFIG_FAILURE_ACTIONS_FLAG = 4 const SERVICE_CONFIG_LAUNCH_PROTECTED = 12 const SERVICE_CONFIG_PREFERRED_NODE = 9 const SERVICE_CONFIG_PRESHUTDOWN_INFO = 7 const SERVICE_CONFIG_REQUIRED_PRIVILEGES_INFO = 6 const SERVICE_CONFIG_SERVICE_SID_INFO = 5 const SERVICE_CONFIG_TRIGGER_INFO = 8 const SERVICE_CONTINUE_PENDING = 5 const SERVICE_CONTROL_CONTINUE = 3 const SERVICE_CONTROL_DEVICEEVENT = 11 const SERVICE_CONTROL_HARDWAREPROFILECHANGE = 12 const SERVICE_CONTROL_INTERROGATE = 4 const SERVICE_CONTROL_LOWRESOURCES = 96 const SERVICE_CONTROL_NETBINDADD = 7 const SERVICE_CONTROL_NETBINDDISABLE = 10 const SERVICE_CONTROL_NETBINDENABLE = 9 const SERVICE_CONTROL_NETBINDREMOVE = 8 const SERVICE_CONTROL_PARAMCHANGE = 6 const SERVICE_CONTROL_PAUSE = 2 const SERVICE_CONTROL_POWEREVENT = 13 const SERVICE_CONTROL_PRESHUTDOWN = 15 const SERVICE_CONTROL_SESSIONCHANGE = 14 const SERVICE_CONTROL_SHUTDOWN = 5 const SERVICE_CONTROL_STATUS_REASON_INFO = 1 type SERVICE_CONTROL_STATUS_REASON_PARAMS = TSERVICE_CONTROL_STATUS_REASON_PARAMS type SERVICE_CONTROL_STATUS_REASON_PARAMSA = TSERVICE_CONTROL_STATUS_REASON_PARAMSA type SERVICE_CONTROL_STATUS_REASON_PARAMSW = TSERVICE_CONTROL_STATUS_REASON_PARAMSW const SERVICE_CONTROL_STOP = 1 const SERVICE_CONTROL_SYSTEMLOWRESOURCES = 97 const SERVICE_CONTROL_TIMECHANGE = 16 const SERVICE_CONTROL_TRIGGEREVENT = 32 const SERVICE_CONTROL_USER_LOGOFF = 17 type SERVICE_DELAYED_AUTO_START_INFO = TSERVICE_DELAYED_AUTO_START_INFO const SERVICE_DEMAND_START = 3 type SERVICE_DESCRIPTION = TSERVICE_DESCRIPTION type SERVICE_DESCRIPTIONA = TSERVICE_DESCRIPTIONA type SERVICE_DESCRIPTIONW = TSERVICE_DESCRIPTIONW const SERVICE_DISABLED = 4 const SERVICE_DRIVER = 11 const SERVICE_DYNAMIC_INFORMATION_LEVEL_START_REASON = 1 const SERVICE_ENUMERATE_DEPENDENTS = 8 const SERVICE_ERROR_CRITICAL = 3 const SERVICE_ERROR_IGNORE = 0 const SERVICE_ERROR_NORMAL = 1 const SERVICE_ERROR_SEVERE = 2 type SERVICE_ERROR_TYPE = TSERVICE_ERROR_TYPE type SERVICE_FAILURE_ACTIONS = TSERVICE_FAILURE_ACTIONS type SERVICE_FAILURE_ACTIONSA = TSERVICE_FAILURE_ACTIONSA type SERVICE_FAILURE_ACTIONSW = TSERVICE_FAILURE_ACTIONSW type SERVICE_FAILURE_ACTIONS_FLAG = TSERVICE_FAILURE_ACTIONS_FLAG const SERVICE_FILE_SYSTEM_DRIVER = 2 const SERVICE_INACTIVE = 2 const SERVICE_INTERACTIVE_PROCESS = 256 const SERVICE_INTERROGATE = 128 const SERVICE_KERNEL_DRIVER = 1 const SERVICE_LAUNCH_PROTECTED_ANTIMALWARE_LIGHT = 3 const SERVICE_LAUNCH_PROTECTED_NONE = 0 const SERVICE_LAUNCH_PROTECTED_WINDOWS = 1 const SERVICE_LAUNCH_PROTECTED_WINDOWS_LIGHT = 2 type SERVICE_LOAD_TYPE = TSERVICE_LOAD_TYPE type SERVICE_NODE_TYPE = TSERVICE_NODE_TYPE type SERVICE_NOTIFY = TSERVICE_NOTIFY type SERVICE_NOTIFYA = TSERVICE_NOTIFYA type SERVICE_NOTIFYW = TSERVICE_NOTIFYW const SERVICE_NOTIFY_CONTINUE_PENDING = 16 const SERVICE_NOTIFY_CREATED = 128 const SERVICE_NOTIFY_DELETED = 256 const SERVICE_NOTIFY_DELETE_PENDING = 512 const SERVICE_NOTIFY_PAUSED = 64 const SERVICE_NOTIFY_PAUSE_PENDING = 32 const SERVICE_NOTIFY_RUNNING = 8 const SERVICE_NOTIFY_START_PENDING = 2 const SERVICE_NOTIFY_STATUS_CHANGE = 2 const SERVICE_NOTIFY_STATUS_CHANGE_1 = 1 const SERVICE_NOTIFY_STATUS_CHANGE_2 = 2 const SERVICE_NOTIFY_STOPPED = 1 const SERVICE_NOTIFY_STOP_PENDING = 4 const SERVICE_NO_CHANGE = 4294967295 const SERVICE_PAUSED = 7 const SERVICE_PAUSE_CONTINUE = 64 const SERVICE_PAUSE_PENDING = 6 type SERVICE_PRESHUTDOWN_INFO = TSERVICE_PRESHUTDOWN_INFO const SERVICE_QUERY_CONFIG = 1 const SERVICE_QUERY_STATUS = 4 const SERVICE_RECOGNIZER_DRIVER = 8 type SERVICE_REQUIRED_PRIVILEGES_INFO = TSERVICE_REQUIRED_PRIVILEGES_INFO type SERVICE_REQUIRED_PRIVILEGES_INFOA = TSERVICE_REQUIRED_PRIVILEGES_INFOA type SERVICE_REQUIRED_PRIVILEGES_INFOW = TSERVICE_REQUIRED_PRIVILEGES_INFOW const SERVICE_RUNNING = 4 const SERVICE_RUNS_IN_SYSTEM_PROCESS = 1 type SERVICE_SID_INFO = TSERVICE_SID_INFO const SERVICE_SID_TYPE_NONE = 0 const SERVICE_SID_TYPE_RESTRICTED = 3 const SERVICE_SID_TYPE_UNRESTRICTED = 1 const SERVICE_START = 16 const SERVICE_START_PENDING = 2 const SERVICE_START_REASON_AUTO = 2 const SERVICE_START_REASON_DELAYEDAUTO = 16 const SERVICE_START_REASON_DEMAND = 1 const SERVICE_START_REASON_RESTART_ON_FAILURE = 8 const SERVICE_START_REASON_TRIGGER = 4 const SERVICE_STATE_ALL = 3 type SERVICE_STATUS = TSERVICE_STATUS type SERVICE_STATUS_HANDLE = TSERVICE_STATUS_HANDLE type SERVICE_STATUS_HANDLE__ = TSERVICE_STATUS_HANDLE__ type SERVICE_STATUS_PROCESS = TSERVICE_STATUS_PROCESS const SERVICE_STOP = 32 const SERVICE_STOPPED = 1 const SERVICE_STOP_PENDING = 3 const SERVICE_STOP_REASON_FLAG_CUSTOM = 536870912 const SERVICE_STOP_REASON_FLAG_MAX = 2147483648 const SERVICE_STOP_REASON_FLAG_MIN = 0 const SERVICE_STOP_REASON_FLAG_PLANNED = 1073741824 const SERVICE_STOP_REASON_FLAG_UNPLANNED = 268435456 const SERVICE_STOP_REASON_MAJOR_APPLICATION = 327680 const SERVICE_STOP_REASON_MAJOR_HARDWARE = 131072 const SERVICE_STOP_REASON_MAJOR_MAX = 458752 const SERVICE_STOP_REASON_MAJOR_MAX_CUSTOM = 16711680 const SERVICE_STOP_REASON_MAJOR_MIN = 0 const SERVICE_STOP_REASON_MAJOR_MIN_CUSTOM = 4194304 const SERVICE_STOP_REASON_MAJOR_NONE = 393216 const SERVICE_STOP_REASON_MAJOR_OPERATINGSYSTEM = 196608 const SERVICE_STOP_REASON_MAJOR_OTHER = 65536 const SERVICE_STOP_REASON_MAJOR_SOFTWARE = 262144 const SERVICE_STOP_REASON_MINOR_DISK = 8 const SERVICE_STOP_REASON_MINOR_ENVIRONMENT = 10 const SERVICE_STOP_REASON_MINOR_HARDWARE_DRIVER = 11 const SERVICE_STOP_REASON_MINOR_HUNG = 6 const SERVICE_STOP_REASON_MINOR_INSTALLATION = 3 const SERVICE_STOP_REASON_MINOR_MAINTENANCE = 2 const SERVICE_STOP_REASON_MINOR_MAX = 25 const SERVICE_STOP_REASON_MINOR_MAX_CUSTOM = 65535 const SERVICE_STOP_REASON_MINOR_MEMOTYLIMIT = 24 const SERVICE_STOP_REASON_MINOR_MIN = 0 const SERVICE_STOP_REASON_MINOR_MIN_CUSTOM = 256 const SERVICE_STOP_REASON_MINOR_MMC = 22 const SERVICE_STOP_REASON_MINOR_NETWORKCARD = 9 const SERVICE_STOP_REASON_MINOR_NETWORK_CONNECTIVITY = 17 const SERVICE_STOP_REASON_MINOR_NONE = 23 const SERVICE_STOP_REASON_MINOR_OTHER = 1 const SERVICE_STOP_REASON_MINOR_OTHERDRIVER = 12 const SERVICE_STOP_REASON_MINOR_RECONFIG = 5 const SERVICE_STOP_REASON_MINOR_SECURITY = 16 const SERVICE_STOP_REASON_MINOR_SECURITYFIX = 15 const SERVICE_STOP_REASON_MINOR_SECURITYFIX_UNINSTALL = 21 const SERVICE_STOP_REASON_MINOR_SERVICEPACK = 13 const SERVICE_STOP_REASON_MINOR_SERVICEPACK_UNINSTALL = 19 const SERVICE_STOP_REASON_MINOR_SOFTWARE_UPDATE = 14 const SERVICE_STOP_REASON_MINOR_SOFTWARE_UPDATE_UNINSTALL = 20 const SERVICE_STOP_REASON_MINOR_UNSTABLE = 7 const SERVICE_STOP_REASON_MINOR_UPGRADE = 4 const SERVICE_STOP_REASON_MINOR_WMI = 18 const SERVICE_SYSTEM_START = 1 type SERVICE_TABLE_ENTRY = TSERVICE_TABLE_ENTRY type SERVICE_TABLE_ENTRYA = TSERVICE_TABLE_ENTRYA type SERVICE_TABLE_ENTRYW = TSERVICE_TABLE_ENTRYW const SERVICE_TRIGGER_DATA_TYPE_BINARY = 1 const SERVICE_TRIGGER_DATA_TYPE_KEYWORD_ALL = 5 const SERVICE_TRIGGER_DATA_TYPE_KEYWORD_ANY = 4 const SERVICE_TRIGGER_DATA_TYPE_LEVEL = 3 const SERVICE_TRIGGER_DATA_TYPE_STRING = 2 const SERVICE_TRIGGER_TYPE_AGGREGATE = 30 const SERVICE_TRIGGER_TYPE_CUSTOM = 20 const SERVICE_TRIGGER_TYPE_CUSTOM_SYSTEM_STATE_CHANGE = 7 const SERVICE_TRIGGER_TYPE_DEVICE_INTERFACE_ARRIVAL = 1 const SERVICE_TRIGGER_TYPE_DOMAIN_JOIN = 3 const SERVICE_TRIGGER_TYPE_FIREWALL_PORT_EVENT = 4 const SERVICE_TRIGGER_TYPE_GROUP_POLICY = 5 const SERVICE_TRIGGER_TYPE_IP_ADDRESS_AVAILABILITY = 2 const SERVICE_TRIGGER_TYPE_NETWORK_ENDPOINT = 6 const SERVICE_TYPE_ALL = 319 const SERVICE_USER_DEFINED_CONTROL = 256 const SERVICE_WIN32 = 48 const SERVICE_WIN32_OWN_PROCESS = 16 const SERVICE_WIN32_SHARE_PROCESS = 32 const SESSION_ABORTED = 6 const SESSION_ALL_ACCESS = 983043 type SESSION_BUFFER = TSESSION_BUFFER const SESSION_ESTABLISHED = 3 type SESSION_HEADER = TSESSION_HEADER const SESSION_MODIFY_ACCESS = 2 const SESSION_QUERY_ACCESS = 1 const SETABORTPROC = 9 const SETALLJUSTVALUES = 771 const SETBREAK = 8 const SETCHARSET = 772 const SETCOLORTABLE = 4 const SETCOPYCOUNT = 17 const SETDIBSCALING = 32 const SETDTR = 5 const SETICMPROFILE_EMBEDED = 1 const SETKERNTRACK = 770 const SETLINECAP = 21 const SETLINEJOIN = 22 const SETMITERLIMIT = 23 const SETRGBSTRINGA = "commdlg_SetRGBColor" const SETRGBSTRINGW = "commdlg_SetRGBColor" const SETRTS = 3 const SETWALLPAPER_DEFAULT = -1 const SETXOFF = 1 const SETXON = 2 const SET_ARC_DIRECTION = 4102 const SET_BACKGROUND_COLOR = 4103 const SET_BOUNDS = 4109 const SET_CLIP_BOX = 4108 const SET_FEATURE_IN_REGISTRY = 4 const SET_FEATURE_ON_PROCESS = 2 const SET_FEATURE_ON_THREAD = 1 const SET_FEATURE_ON_THREAD_INTERNET = 64 const SET_FEATURE_ON_THREAD_INTRANET = 16 const SET_FEATURE_ON_THREAD_LOCALMACHINE = 8 const SET_FEATURE_ON_THREAD_RESTRICTED = 128 const SET_FEATURE_ON_THREAD_TRUSTED = 32 const SET_MIRROR_MODE = 4110 type SET_PARTITION_INFORMATION = TSET_PARTITION_INFORMATION type SET_PARTITION_INFORMATION_EX = TSET_PARTITION_INFORMATION_EX type SET_PARTITION_INFORMATION_GPT = TSET_PARTITION_INFORMATION_GPT type SET_PARTITION_INFORMATION_MBR = TSET_PARTITION_INFORMATION_MBR const SET_POLY_MODE = 4104 type SET_POWER_SETTING_VALUE = TSET_POWER_SETTING_VALUE const SET_REPAIR_DELETE_CROSSLINK = 4 const SET_REPAIR_DISABLED_AND_BUGCHECK_ON_CORRUPT = 16 const SET_REPAIR_ENABLED = 1 const SET_REPAIR_VALID_MASK = 31 const SET_REPAIR_VOLUME_BITMAP_SCAN = 2 const SET_REPAIR_WARN_ABOUT_DATA_LOSS = 8 const SET_SCREEN_ANGLE = 4105 const SET_SPREAD = 4106 const SET_TAPE_DRIVE_INFORMATION = 1 const SET_TAPE_MEDIA_INFORMATION = 0 type SET_VIRTUAL_DISK_INFO = TSET_VIRTUAL_DISK_INFO type SET_VIRTUAL_DISK_INFO_VERSION = TSET_VIRTUAL_DISK_INFO_VERSION const SEVERITY_ERROR = 1 const SEVERITY_SUCCESS = 0 type SE_ACCESS_REPLY = TSE_ACCESS_REPLY type SE_ACCESS_REQUEST = TSE_ACCESS_REQUEST const SE_DACL_AUTO_INHERITED = 1024 const SE_DACL_AUTO_INHERIT_REQ = 256 const SE_DACL_DEFAULTED = 8 const SE_DACL_PRESENT = 4 const SE_DACL_PROTECTED = 4096 const SE_ERR_ACCESSDENIED = 5 const SE_ERR_ASSOCINCOMPLETE = 27 const SE_ERR_DDEBUSY = 30 const SE_ERR_DDEFAIL = 29 const SE_ERR_DDETIMEOUT = 28 const SE_ERR_DLLNOTFOUND = 32 const SE_ERR_FNF = 2 const SE_ERR_NOASSOC = 31 const SE_ERR_OOM = 8 const SE_ERR_PNF = 3 const SE_ERR_SHARE = 26 const SE_GROUP_DEFAULTED = 2 const SE_GROUP_ENABLED = 4 const SE_GROUP_ENABLED_BY_DEFAULT = 2 const SE_GROUP_INTEGRITY = 32 const SE_GROUP_INTEGRITY_ENABLED = 64 const SE_GROUP_LOGON_ID = 3221225472 const SE_GROUP_MANDATORY = 1 const SE_GROUP_OWNER = 8 const SE_GROUP_RESOURCE = 536870912 const SE_GROUP_USE_FOR_DENY_ONLY = 16 const SE_GROUP_VALID_ATTRIBUTES = 3758096511 type SE_IMPERSONATION_STATE = TSE_IMPERSONATION_STATE type SE_LEARNING_MODE_DATA_TYPE = TSE_LEARNING_MODE_DATA_TYPE const SE_LEARNING_MODE_FLAG_PERMISSIVE = 1 const SE_OWNER_DEFAULTED = 1 const SE_PRIVILEGE_ENABLED = 2 const SE_PRIVILEGE_ENABLED_BY_DEFAULT = 1 const SE_PRIVILEGE_REMOVED = 4 const SE_PRIVILEGE_USED_FOR_ACCESS = 2147483648 const SE_PRIVILEGE_VALID_ATTRIBUTES = 2147483655 const SE_RM_CONTROL_VALID = 16384 const SE_SACL_AUTO_INHERITED = 2048 const SE_SACL_AUTO_INHERIT_REQ = 512 const SE_SACL_DEFAULTED = 32 const SE_SACL_PRESENT = 16 const SE_SACL_PROTECTED = 8192 type SE_SECURITY_DESCRIPTOR = TSE_SECURITY_DESCRIPTOR const SE_SECURITY_DESCRIPTOR_FLAG_NO_LABEL_ACE = 2 const SE_SECURITY_DESCRIPTOR_FLAG_NO_OWNER_ACE = 1 const SE_SECURITY_DESCRIPTOR_VALID_FLAGS = 3 const SE_SELF_RELATIVE = 32768 type SF_TYPE = TSF_TYPE const SHADEBLENDCAPS = 120 type SHANDLE_PTR = TSHANDLE_PTR const SHAREVISTRINGA = "commdlg_ShareViolation" const SHAREVISTRINGW = "commdlg_ShareViolation" type SHCREATEPROCESSINFOW = TSHCREATEPROCESSINFOW type SHELLEXECUTEINFO = TSHELLEXECUTEINFO type SHELLEXECUTEINFOA = TSHELLEXECUTEINFOA type SHELLEXECUTEINFOW = TSHELLEXECUTEINFOW type SHELLHOOKINFO = TSHELLHOOKINFO const SHERB_NOCONFIRMATION = 1 const SHERB_NOPROGRESSUI = 2 const SHERB_NOSOUND = 4 const SHEmptyRecycleBin = 0 const SHEnumerateUnreadMailAccounts = 0 type SHFILEINFO = TSHFILEINFO type SHFILEINFOA = TSHFILEINFOA type SHFILEINFOW = TSHFILEINFOW type SHFILEOPSTRUCT = TSHFILEOPSTRUCT type SHFILEOPSTRUCTA = TSHFILEOPSTRUCTA type SHFILEOPSTRUCTW = TSHFILEOPSTRUCTW const SHFileOperation = 0 const SHGFI_ADDOVERLAYS = 32 const SHGFI_ATTRIBUTES = 2048 const SHGFI_ATTR_SPECIFIED = 131072 const SHGFI_DISPLAYNAME = 512 const SHGFI_EXETYPE = 8192 const SHGFI_ICON = 256 const SHGFI_ICONLOCATION = 4096 const SHGFI_LARGEICON = 0 const SHGFI_LINKOVERLAY = 32768 const SHGFI_OPENICON = 2 const SHGFI_OVERLAYINDEX = 64 const SHGFI_PIDL = 8 const SHGFI_SELECTED = 65536 const SHGFI_SHELLICONSIZE = 4 const SHGFI_SMALLICON = 1 const SHGFI_SYSICONINDEX = 16384 const SHGFI_TYPENAME = 1024 const SHGFI_USEFILEATTRIBUTES = 16 const SHGNLI_NOLNK = 8 const SHGNLI_NOLOCNAME = 16 const SHGNLI_NOUNIQUE = 4 const SHGNLI_PIDL = 1 const SHGNLI_PREFIXNAME = 2 const SHGNLI_USEURLEXT = 32 const SHGSI_ICON = 256 const SHGSI_ICONLOCATION = 0 const SHGSI_LARGEICON = 0 const SHGSI_LINKOVERLAY = 32768 const SHGSI_SELECTED = 65536 const SHGSI_SHELLICONSIZE = 4 const SHGSI_SMALLICON = 1 const SHGSI_SYSICONINDEX = 16384 const SHGetDiskFreeSpace = 0 const SHGetDiskFreeSpaceEx = 0 const SHGetFileInfo = 0 const SHGetNewLinkInfo = 0 const SHGetUnreadMailCount = 0 const SHIFTJIS_CHARSET = 128 const SHIFT_PRESSED = 16 const SHIL_EXTRALARGE = 2 const SHIL_JUMBO = 4 const SHIL_LARGE = 0 const SHIL_LAST = 4 const SHIL_SMALL = 1 const SHIL_SYSSMALL = 3 const SHInvokePrinterCommand = 0 type SHNAMEMAPPING = TSHNAMEMAPPING type SHNAMEMAPPINGA = TSHNAMEMAPPINGA type SHNAMEMAPPINGW = TSHNAMEMAPPINGW type SHORT = TSHORT const SHOW_FULLSCREEN = 3 const SHOW_ICONWINDOW = 2 const SHOW_OPENNOACTIVATE = 4 const SHOW_OPENWINDOW = 1 type SHQUERYRBINFO = TSHQUERYRBINFO const SHQueryRecycleBin = 0 type SHRINK_VOLUME_INFORMATION = TSHRINK_VOLUME_INFORMATION type SHRINK_VOLUME_REQUEST_TYPES = TSHRINK_VOLUME_REQUEST_TYPES type SHSTOCKICONID = TSHSTOCKICONID type SHSTOCKICONINFO = TSHSTOCKICONINFO const SHSetUnreadMailCount = 0 const SHTDN_REASON_FLAG_CLEAN_UI = 67108864 const SHTDN_REASON_FLAG_COMMENT_REQUIRED = 16777216 const SHTDN_REASON_FLAG_DIRTY_PROBLEM_ID_REQUIRED = 33554432 const SHTDN_REASON_FLAG_DIRTY_UI = 134217728 const SHTDN_REASON_FLAG_PLANNED = 2147483648 const SHTDN_REASON_FLAG_USER_DEFINED = 1073741824 const SHTDN_REASON_LEGACY_API = 2147942400 const SHTDN_REASON_MAJOR_APPLICATION = 262144 const SHTDN_REASON_MAJOR_HARDWARE = 65536 const SHTDN_REASON_MAJOR_LEGACY_API = 458752 const SHTDN_REASON_MAJOR_NONE = 0 const SHTDN_REASON_MAJOR_OPERATINGSYSTEM = 131072 const SHTDN_REASON_MAJOR_OTHER = 0 const SHTDN_REASON_MAJOR_POWER = 393216 const SHTDN_REASON_MAJOR_SOFTWARE = 196608 const SHTDN_REASON_MAJOR_SYSTEM = 327680 const SHTDN_REASON_MINOR_BLUESCREEN = 15 const SHTDN_REASON_MINOR_CORDUNPLUGGED = 11 const SHTDN_REASON_MINOR_DC_DEMOTION = 34 const SHTDN_REASON_MINOR_DC_PROMOTION = 33 const SHTDN_REASON_MINOR_DISK = 7 const SHTDN_REASON_MINOR_ENVIRONMENT = 12 const SHTDN_REASON_MINOR_HARDWARE_DRIVER = 13 const SHTDN_REASON_MINOR_HOTFIX = 17 const SHTDN_REASON_MINOR_HOTFIX_UNINSTALL = 23 const SHTDN_REASON_MINOR_HUNG = 5 const SHTDN_REASON_MINOR_INSTALLATION = 2 const SHTDN_REASON_MINOR_MAINTENANCE = 1 const SHTDN_REASON_MINOR_MMC = 25 const SHTDN_REASON_MINOR_NETWORKCARD = 9 const SHTDN_REASON_MINOR_NETWORK_CONNECTIVITY = 20 const SHTDN_REASON_MINOR_NONE = 255 const SHTDN_REASON_MINOR_OTHER = 0 const SHTDN_REASON_MINOR_OTHERDRIVER = 14 const SHTDN_REASON_MINOR_POWER_SUPPLY = 10 const SHTDN_REASON_MINOR_PROCESSOR = 8 const SHTDN_REASON_MINOR_RECONFIG = 4 const SHTDN_REASON_MINOR_SECURITY = 19 const SHTDN_REASON_MINOR_SECURITYFIX = 18 const SHTDN_REASON_MINOR_SECURITYFIX_UNINSTALL = 24 const SHTDN_REASON_MINOR_SERVICEPACK = 16 const SHTDN_REASON_MINOR_SERVICEPACK_UNINSTALL = 22 const SHTDN_REASON_MINOR_SYSTEMRESTORE = 26 const SHTDN_REASON_MINOR_TERMSRV = 32 const SHTDN_REASON_MINOR_UNSTABLE = 6 const SHTDN_REASON_MINOR_UPGRADE = 3 const SHTDN_REASON_MINOR_WMI = 21 const SHTDN_REASON_UNKNOWN = 255 const SHTDN_REASON_VALID_BIT_MASK = 3238002687 const SHUTDOWN_ARSO = 8192 const SHUTDOWN_FORCE_OTHERS = 1 const SHUTDOWN_FORCE_SELF = 2 const SHUTDOWN_GRACE_OVERRIDE = 32 const SHUTDOWN_HYBRID = 512 const SHUTDOWN_INSTALL_UPDATES = 64 const SHUTDOWN_MOBILE_UI = 4096 const SHUTDOWN_NOREBOOT = 16 const SHUTDOWN_NORETRY = 1 const SHUTDOWN_POWEROFF = 8 const SHUTDOWN_RESTART = 4 const SHUTDOWN_RESTARTAPPS = 128 const SHUTDOWN_RESTART_BOOTOPTIONS = 1024 const SHUTDOWN_SKIP_SVC_PRESHUTDOWN = 256 const SHUTDOWN_SOFT_REBOOT = 2048 const SHUTDOWN_TYPE_LEN = 32 type SID = TSID type SID_AND_ATTRIBUTES = TSID_AND_ATTRIBUTES type SID_AND_ATTRIBUTES_ARRAY = TSID_AND_ATTRIBUTES_ARRAY type SID_AND_ATTRIBUTES_HASH = TSID_AND_ATTRIBUTES_HASH type SID_HASH_ENTRY = TSID_HASH_ENTRY const SID_HASH_SIZE = 32 const SID_IBindHost = 0 type SID_IDENTIFIER_AUTHORITY = TSID_IDENTIFIER_AUTHORITY const SID_MAX_SUB_AUTHORITIES = 15 type SID_NAME_USE = TSID_NAME_USE const SID_RECOMMENDED_SUB_AUTHORITIES = 1 const SID_REVISION = 1 const SID_SBindHost = 0 const SID_SInternetHostSecurityManager = 0 const SID_SInternetSecurityManager = 0 const SID_SInternetSecurityManagerEx = 0 const SID_SInternetSecurityManagerEx2 = 0 const SIF_ALL = 23 const SIF_DISABLENOSCROLL = 8 const SIF_PAGE = 2 const SIF_POS = 4 const SIF_RANGE = 1 const SIF_TRACKPOS = 16 const SIID_INVALID = -1 const SIMPLEBLOB = 1 const SIMPLEREGION = 2 const SIMULATED_FONTTYPE = 32768 type SINGLE_LIST_ENTRY = TSINGLE_LIST_ENTRY const SITE_PIN_RULES_ALL_SUBDOMAINS_FLAG = 1 type SIZE = TSIZE const SIZEFULLSCREEN = 2 const SIZEICONIC = 1 type SIZEL = TSIZEL const SIZENORMAL = 0 const SIZEOF_RFPO_DATA = 16 const SIZEPALETTE = 104 const SIZEZOOMHIDE = 4 const SIZEZOOMSHOW = 3 const SIZE_MAXHIDE = 4 const SIZE_MAXIMIZED = 2 const SIZE_MAXSHOW = 3 const SIZE_MINIMIZED = 1 const SIZE_RESTORED = 0 type SIZE_T = TSIZE_T type SI_COPYFILE = TSI_COPYFILE const SKF_AUDIBLEFEEDBACK = 64 const SKF_AVAILABLE = 2 const SKF_CONFIRMHOTKEY = 8 const SKF_HOTKEYACTIVE = 4 const SKF_HOTKEYSOUND = 16 const SKF_INDICATOR = 32 const SKF_LALTLATCHED = 268435456 const SKF_LALTLOCKED = 1048576 const SKF_LCTLLATCHED = 67108864 const SKF_LCTLLOCKED = 262144 const SKF_LSHIFTLATCHED = 16777216 const SKF_LSHIFTLOCKED = 65536 const SKF_LWINLATCHED = 1073741824 const SKF_LWINLOCKED = 4194304 const SKF_RALTLATCHED = 536870912 const SKF_RALTLOCKED = 2097152 const SKF_RCTLLATCHED = 134217728 const SKF_RCTLLOCKED = 524288 const SKF_RSHIFTLATCHED = 33554432 const SKF_RSHIFTLOCKED = 131072 const SKF_RWINLATCHED = 2147483648 const SKF_RWINLOCKED = 8388608 const SKF_STICKYKEYSON = 1 const SKF_TRISTATE = 128 const SKF_TWOKEYSOFF = 256 const SLE_ERROR = 1 const SLE_MINORERROR = 2 const SLE_WARNING = 3 type SLIST_ENTRY = TSLIST_ENTRY type SLIST_HEADER = TSLIST_HEADER type SMALL_RECT = TSMALL_RECT const SMART_ABORT_OFFLINE_SELFTEST = 127 const SMART_CMD = 176 const SMART_CYL_HI = 194 const SMART_CYL_LOW = 79 const SMART_ERROR_NO_MEM = 7 const SMART_EXTENDED_SELFTEST_CAPTIVE = 130 const SMART_EXTENDED_SELFTEST_OFFLINE = 2 const SMART_GET_VERSION = 475264 const SMART_IDE_ERROR = 1 const SMART_INVALID_BUFFER = 4 const SMART_INVALID_COMMAND = 3 const SMART_INVALID_DRIVE = 5 const SMART_INVALID_FLAG = 2 const SMART_INVALID_IOCTL = 6 const SMART_INVALID_REGISTER = 8 const SMART_LOG_SECTOR_SIZE = 512 const SMART_NOT_SUPPORTED = 9 const SMART_NO_ERROR = 0 const SMART_NO_IDE_DEVICE = 10 const SMART_OFFLINE_ROUTINE_OFFLINE = 0 const SMART_RCV_DRIVE_DATA = 508040 const SMART_READ_LOG = 213 const SMART_SEND_DRIVE_COMMAND = 508036 const SMART_SHORT_SELFTEST_CAPTIVE = 129 const SMART_SHORT_SELFTEST_OFFLINE = 1 const SMART_WRITE_LOG = 214 const SMTO_ABORTIFHUNG = 2 const SMTO_BLOCK = 1 const SMTO_ERRORONEXIT = 32 const SMTO_NORMAL = 0 const SMTO_NOTIMEOUTIFNOTHUNG = 8 const SM_ARRANGE = 56 const SM_CARETBLINKINGENABLED = 8194 const SM_CLEANBOOT = 67 const SM_CMETRICS = 97 const SM_CMONITORS = 80 const SM_CMOUSEBUTTONS = 43 const SM_CONVERTIBLESLATEMODE = 8195 const SM_CXBORDER = 5 const SM_CXCURSOR = 13 const SM_CXDLGFRAME = 7 const SM_CXDOUBLECLK = 36 const SM_CXDRAG = 68 const SM_CXEDGE = 45 const SM_CXFIXEDFRAME = 7 const SM_CXFOCUSBORDER = 83 const SM_CXFRAME = 32 const SM_CXFULLSCREEN = 16 const SM_CXHSCROLL = 21 const SM_CXHTHUMB = 10 const SM_CXICON = 11 const SM_CXICONSPACING = 38 const SM_CXMAXIMIZED = 61 const SM_CXMAXTRACK = 59 const SM_CXMENUCHECK = 71 const SM_CXMENUSIZE = 54 const SM_CXMIN = 28 const SM_CXMINIMIZED = 57 const SM_CXMINSPACING = 47 const SM_CXMINTRACK = 34 const SM_CXPADDEDBORDER = 92 const SM_CXSCREEN = 0 const SM_CXSIZE = 30 const SM_CXSIZEFRAME = 32 const SM_CXSMICON = 49 const SM_CXSMSIZE = 52 const SM_CXVIRTUALSCREEN = 78 const SM_CXVSCROLL = 2 const SM_CYBORDER = 6 const SM_CYCAPTION = 4 const SM_CYCURSOR = 14 const SM_CYDLGFRAME = 8 const SM_CYDOUBLECLK = 37 const SM_CYDRAG = 69 const SM_CYEDGE = 46 const SM_CYFIXEDFRAME = 8 const SM_CYFOCUSBORDER = 84 const SM_CYFRAME = 33 const SM_CYFULLSCREEN = 17 const SM_CYHSCROLL = 3 const SM_CYICON = 12 const SM_CYICONSPACING = 39 const SM_CYKANJIWINDOW = 18 const SM_CYMAXIMIZED = 62 const SM_CYMAXTRACK = 60 const SM_CYMENU = 15 const SM_CYMENUCHECK = 72 const SM_CYMENUSIZE = 55 const SM_CYMIN = 29 const SM_CYMINIMIZED = 58 const SM_CYMINSPACING = 48 const SM_CYMINTRACK = 35 const SM_CYSCREEN = 1 const SM_CYSIZE = 31 const SM_CYSIZEFRAME = 33 const SM_CYSMCAPTION = 51 const SM_CYSMICON = 50 const SM_CYSMSIZE = 53 const SM_CYVIRTUALSCREEN = 79 const SM_CYVSCROLL = 20 const SM_CYVTHUMB = 9 const SM_DBCSENABLED = 42 const SM_DEBUG = 22 const SM_DIGITIZER = 94 const SM_IMMENABLED = 82 const SM_MAXIMUMTOUCHES = 95 const SM_MEDIACENTER = 87 const SM_MENUDROPALIGNMENT = 40 const SM_MIDEASTENABLED = 74 const SM_MOUSEHORIZONTALWHEELPRESENT = 91 const SM_MOUSEPRESENT = 19 const SM_MOUSEWHEELPRESENT = 75 const SM_NETWORK = 63 const SM_PENWINDOWS = 41 const SM_REMOTECONTROL = 8193 const SM_REMOTESESSION = 4096 const SM_RESERVED1 = 24 const SM_RESERVED2 = 25 const SM_RESERVED3 = 26 const SM_RESERVED4 = 27 const SM_SAMEDISPLAYFORMAT = 81 const SM_SECURE = 44 const SM_SERVERR2 = 89 const SM_SHOWSOUNDS = 70 const SM_SHUTTINGDOWN = 8192 const SM_SLOWMACHINE = 73 const SM_STARTER = 88 const SM_SWAPBUTTON = 23 const SM_SYSTEMDOCKED = 8196 const SM_TABLETPC = 86 const SM_XVIRTUALSCREEN = 76 const SM_YVIRTUALSCREEN = 77 const SNAPSHOT_POLICY_ALWAYS = 1 const SNAPSHOT_POLICY_NEVER = 0 const SNAPSHOT_POLICY_UNPLANNED = 2 type SNB = TSNB const SNDMSG = 0 const SND_ALIAS = 65536 const SND_ALIAS_ID = 1114112 const SND_ALIAS_START = 0 const SND_APPLICATION = 128 const SND_ASYNC = 1 const SND_FILENAME = 131072 const SND_LOOP = 8 const SND_MEMORY = 4 const SND_NODEFAULT = 2 const SND_NOSTOP = 16 const SND_NOWAIT = 8192 const SND_PURGE = 64 const SND_RESOURCE = 262148 const SND_SYNC = 0 type SOCKADDR = TSOCKADDR type SOCKADDR_IN = TSOCKADDR_IN type SOCKET = TSOCKET const SOCKET_ERROR = -1 type SOFTDISTINFO = TSOFTDISTINFO const SOFTDIST_ADSTATE_AVAILABLE = 1 const SOFTDIST_ADSTATE_DOWNLOADED = 2 const SOFTDIST_ADSTATE_INSTALLED = 3 const SOFTDIST_ADSTATE_NONE = 0 const SOFTDIST_FLAG_DELETE_SUBSCRIPTION = 8 const SOFTDIST_FLAG_USAGE_AUTOINSTALL = 4 const SOFTDIST_FLAG_USAGE_EMAIL = 1 const SOFTDIST_FLAG_USAGE_PRECACHE = 2 const SOFTKEYBOARD_TYPE_C1 = 2 const SOFTKEYBOARD_TYPE_T1 = 1 type SOLE_AUTHENTICATION_INFO = TSOLE_AUTHENTICATION_INFO type SOLE_AUTHENTICATION_LIST = TSOLE_AUTHENTICATION_LIST type SOLE_AUTHENTICATION_SERVICE = TSOLE_AUTHENTICATION_SERVICE const SOMAXCONN = 5 const SORTED_CTL_EXT_COUNT_OFFSET = 4 const SORTED_CTL_EXT_FLAGS_OFFSET = 0 const SORTED_CTL_EXT_HASHED_SUBJECT_IDENTIFIER_FLAG = 1 const SORTED_CTL_EXT_HASH_BUCKET_OFFSET = 12 const SORTED_CTL_EXT_MAX_COLLISION_OFFSET = 8 const SORT_CHINESE_BIG5 = 0 const SORT_CHINESE_BOPOMOFO = 3 const SORT_CHINESE_PRC = 2 const SORT_CHINESE_PRCP = 0 const SORT_CHINESE_RADICALSTROKE = 4 const SORT_CHINESE_UNICODE = 1 const SORT_DEFAULT = 0 const SORT_DIGITSASNUMBERS = 8 const SORT_GEORGIAN_MODERN = 1 const SORT_GEORGIAN_TRADITIONAL = 0 const SORT_GERMAN_PHONE_BOOK = 1 const SORT_HUNGARIAN_DEFAULT = 0 const SORT_HUNGARIAN_TECHNICAL = 1 const SORT_INVARIANT_MATH = 1 const SORT_JAPANESE_RADICALSTROKE = 4 const SORT_JAPANESE_UNICODE = 1 const SORT_JAPANESE_XJIS = 0 const SORT_KOREAN_KSC = 0 const SORT_KOREAN_UNICODE = 1 const SORT_STRINGSORT = 4096 type SOUNDSENTRY = TSOUNDSENTRY type SOUNDSENTRYA = TSOUNDSENTRYA type SOUNDSENTRYW = TSOUNDSENTRYW const SOUND_SYSTEM_APPEND = 14 const SOUND_SYSTEM_APPSTART = 12 const SOUND_SYSTEM_BEEP = 3 const SOUND_SYSTEM_ERROR = 4 const SOUND_SYSTEM_FAULT = 13 const SOUND_SYSTEM_INFORMATION = 7 const SOUND_SYSTEM_MAXIMIZE = 8 const SOUND_SYSTEM_MENUCOMMAND = 15 const SOUND_SYSTEM_MENUPOPUP = 16 const SOUND_SYSTEM_MINIMIZE = 9 const SOUND_SYSTEM_QUESTION = 5 const SOUND_SYSTEM_RESTOREDOWN = 11 const SOUND_SYSTEM_RESTOREUP = 10 const SOUND_SYSTEM_SHUTDOWN = 2 const SOUND_SYSTEM_STARTUP = 1 const SOUND_SYSTEM_WARNING = 6 const SO_CONNDATA = 28672 const SO_CONNDATALEN = 28676 const SO_CONNECT_TIME = 28684 const SO_CONNOPT = 28673 const SO_CONNOPTLEN = 28677 const SO_DISCDATA = 28674 const SO_DISCDATALEN = 28678 const SO_DISCOPT = 28675 const SO_DISCOPTLEN = 28679 const SO_MAXDG = 28681 const SO_MAXPATHDG = 28682 const SO_OPENTYPE = 28680 const SO_SYNCHRONOUS_ALERT = 16 const SO_SYNCHRONOUS_NONALERT = 32 const SO_UPDATE_ACCEPT_CONTEXT = 28683 const SPACEPARITY = 4 const SPCLPASSTHROUGH2 = 4568 const SPECIFIC_RIGHTS_ALL = 65535 type SPHANDLE = TSPHANDLE const SPIF_SENDCHANGE = 2 const SPIF_SENDWININICHANGE = 2 const SPIF_UPDATEINIFILE = 1 const SPI_GETACCESSTIMEOUT = 60 const SPI_GETACTIVEWINDOWTRACKING = 4096 const SPI_GETACTIVEWNDTRKTIMEOUT = 8194 const SPI_GETACTIVEWNDTRKZORDER = 4108 const SPI_GETANIMATION = 72 const SPI_GETAUDIODESCRIPTION = 116 const SPI_GETBEEP = 1 const SPI_GETBLOCKSENDINPUTRESETS = 4134 const SPI_GETBORDER = 5 const SPI_GETCARETBROWSING = 4172 const SPI_GETCARETWIDTH = 8198 const SPI_GETCLEARTYPE = 4168 const SPI_GETCLIENTAREAANIMATION = 4162 const SPI_GETCOMBOBOXANIMATION = 4100 const SPI_GETCONTACTVISUALIZATION = 8216 const SPI_GETCURSORSHADOW = 4122 const SPI_GETDEFAULTINPUTLANG = 89 const SPI_GETDESKWALLPAPER = 115 const SPI_GETDISABLEOVERLAPPEDCONTENT = 4160 const SPI_GETDOCKMOVING = 144 const SPI_GETDRAGFROMMAXIMIZE = 140 const SPI_GETDRAGFULLWINDOWS = 38 const SPI_GETDROPSHADOW = 4132 const SPI_GETFASTTASKSWITCH = 35 const SPI_GETFILTERKEYS = 50 const SPI_GETFLATMENU = 4130 const SPI_GETFOCUSBORDERHEIGHT = 8208 const SPI_GETFOCUSBORDERWIDTH = 8206 const SPI_GETFONTSMOOTHING = 74 const SPI_GETFONTSMOOTHINGCONTRAST = 8204 const SPI_GETFONTSMOOTHINGORIENTATION = 8210 const SPI_GETFONTSMOOTHINGTYPE = 8202 const SPI_GETFOREGROUNDFLASHCOUNT = 8196 const SPI_GETFOREGROUNDLOCKTIMEOUT = 8192 const SPI_GETGESTUREVISUALIZATION = 8218 const SPI_GETGRADIENTCAPTIONS = 4104 const SPI_GETGRIDGRANULARITY = 18 const SPI_GETHIGHCONTRAST = 66 const SPI_GETHOTTRACKING = 4110 const SPI_GETHUNGAPPTIMEOUT = 120 const SPI_GETICONMETRICS = 45 const SPI_GETICONTITLELOGFONT = 31 const SPI_GETICONTITLEWRAP = 25 const SPI_GETKEYBOARDCUES = 4106 const SPI_GETKEYBOARDDELAY = 22 const SPI_GETKEYBOARDPREF = 68 const SPI_GETKEYBOARDSPEED = 10 const SPI_GETLISTBOXSMOOTHSCROLLING = 4102 const SPI_GETLOGICALDPIOVERRIDE = 158 const SPI_GETLOWPOWERACTIVE = 83 const SPI_GETLOWPOWERTIMEOUT = 79 const SPI_GETMENUANIMATION = 4098 const SPI_GETMENUDROPALIGNMENT = 27 const SPI_GETMENUFADE = 4114 const SPI_GETMENURECT = 162 const SPI_GETMENUSHOWDELAY = 106 const SPI_GETMENUUNDERLINES = 4106 const SPI_GETMESSAGEDURATION = 8214 const SPI_GETMINIMIZEDMETRICS = 43 const SPI_GETMINIMUMHITRADIUS = 8212 const SPI_GETMOUSE = 3 const SPI_GETMOUSECLICKLOCK = 4126 const SPI_GETMOUSECLICKLOCKTIME = 8200 const SPI_GETMOUSECORNERCLIPLENGTH = 160 const SPI_GETMOUSEDOCKTHRESHOLD = 126 const SPI_GETMOUSEDRAGOUTTHRESHOLD = 132 const SPI_GETMOUSEHOVERHEIGHT = 100 const SPI_GETMOUSEHOVERTIME = 102 const SPI_GETMOUSEHOVERWIDTH = 98 const SPI_GETMOUSEKEYS = 54 const SPI_GETMOUSESIDEMOVETHRESHOLD = 136 const SPI_GETMOUSESONAR = 4124 const SPI_GETMOUSESPEED = 112 const SPI_GETMOUSETRAILS = 94 const SPI_GETMOUSEVANISH = 4128 const SPI_GETMOUSEWHEELROUTING = 8220 const SPI_GETNONCLIENTMETRICS = 41 const SPI_GETPENARBITRATIONTYPE = 8224 const SPI_GETPENDOCKTHRESHOLD = 128 const SPI_GETPENDRAGOUTTHRESHOLD = 134 const SPI_GETPENSIDEMOVETHRESHOLD = 138 const SPI_GETPENVISUALIZATION = 8222 const SPI_GETPOWEROFFACTIVE = 84 const SPI_GETPOWEROFFTIMEOUT = 80 const SPI_GETSCREENREADER = 70 const SPI_GETSCREENSAVEACTIVE = 16 const SPI_GETSCREENSAVERRUNNING = 114 const SPI_GETSCREENSAVESECURE = 118 const SPI_GETSCREENSAVETIMEOUT = 14 const SPI_GETSELECTIONFADE = 4116 const SPI_GETSERIALKEYS = 62 const SPI_GETSHOWIMEUI = 110 const SPI_GETSHOWSOUNDS = 56 const SPI_GETSNAPSIZING = 142 const SPI_GETSNAPTODEFBUTTON = 95 const SPI_GETSOUNDSENTRY = 64 const SPI_GETSPEECHRECOGNITION = 4170 const SPI_GETSTICKYKEYS = 58 const SPI_GETSYSTEMLANGUAGEBAR = 4176 const SPI_GETTHREADLOCALINPUTSETTINGS = 4174 const SPI_GETTOGGLEKEYS = 52 const SPI_GETTOOLTIPANIMATION = 4118 const SPI_GETTOOLTIPFADE = 4120 const SPI_GETTOUCHPREDICTIONPARAMETERS = 156 const SPI_GETUIEFFECTS = 4158 const SPI_GETWAITTOKILLSERVICETIMEOUT = 124 const SPI_GETWAITTOKILLTIMEOUT = 122 const SPI_GETWHEELSCROLLCHARS = 108 const SPI_GETWHEELSCROLLLINES = 104 const SPI_GETWINARRANGING = 130 const SPI_GETWINDOWSEXTENSION = 92 const SPI_GETWORKAREA = 48 const SPI_ICONHORIZONTALSPACING = 13 const SPI_ICONVERTICALSPACING = 24 const SPI_LANGDRIVER = 12 const SPI_SCREENSAVERRUNNING = 97 const SPI_SETACCESSTIMEOUT = 61 const SPI_SETACTIVEWINDOWTRACKING = 4097 const SPI_SETACTIVEWNDTRKTIMEOUT = 8195 const SPI_SETACTIVEWNDTRKZORDER = 4109 const SPI_SETANIMATION = 73 const SPI_SETAUDIODESCRIPTION = 117 const SPI_SETBEEP = 2 const SPI_SETBLOCKSENDINPUTRESETS = 4135 const SPI_SETBORDER = 6 const SPI_SETCARETBROWSING = 4173 const SPI_SETCARETWIDTH = 8199 const SPI_SETCLEARTYPE = 4169 const SPI_SETCLIENTAREAANIMATION = 4163 const SPI_SETCOMBOBOXANIMATION = 4101 const SPI_SETCONTACTVISUALIZATION = 8217 const SPI_SETCURSORS = 87 const SPI_SETCURSORSHADOW = 4123 const SPI_SETDEFAULTINPUTLANG = 90 const SPI_SETDESKPATTERN = 21 const SPI_SETDESKWALLPAPER = 20 const SPI_SETDISABLEOVERLAPPEDCONTENT = 4161 const SPI_SETDOCKMOVING = 145 const SPI_SETDOUBLECLICKTIME = 32 const SPI_SETDOUBLECLKHEIGHT = 30 const SPI_SETDOUBLECLKWIDTH = 29 const SPI_SETDRAGFROMMAXIMIZE = 141 const SPI_SETDRAGFULLWINDOWS = 37 const SPI_SETDRAGHEIGHT = 77 const SPI_SETDRAGWIDTH = 76 const SPI_SETDROPSHADOW = 4133 const SPI_SETFASTTASKSWITCH = 36 const SPI_SETFILTERKEYS = 51 const SPI_SETFLATMENU = 4131 const SPI_SETFOCUSBORDERHEIGHT = 8209 const SPI_SETFOCUSBORDERWIDTH = 8207 const SPI_SETFONTSMOOTHING = 75 const SPI_SETFONTSMOOTHINGCONTRAST = 8205 const SPI_SETFONTSMOOTHINGORIENTATION = 8211 const SPI_SETFONTSMOOTHINGTYPE = 8203 const SPI_SETFOREGROUNDFLASHCOUNT = 8197 const SPI_SETFOREGROUNDLOCKTIMEOUT = 8193 const SPI_SETGESTUREVISUALIZATION = 8219 const SPI_SETGRADIENTCAPTIONS = 4105 const SPI_SETGRIDGRANULARITY = 19 const SPI_SETHANDHELD = 78 const SPI_SETHIGHCONTRAST = 67 const SPI_SETHOTTRACKING = 4111 const SPI_SETHUNGAPPTIMEOUT = 121 const SPI_SETICONMETRICS = 46 const SPI_SETICONS = 88 const SPI_SETICONTITLELOGFONT = 34 const SPI_SETICONTITLEWRAP = 26 const SPI_SETKEYBOARDCUES = 4107 const SPI_SETKEYBOARDDELAY = 23 const SPI_SETKEYBOARDPREF = 69 const SPI_SETKEYBOARDSPEED = 11 const SPI_SETLANGTOGGLE = 91 const SPI_SETLISTBOXSMOOTHSCROLLING = 4103 const SPI_SETLOGICALDPIOVERRIDE = 159 const SPI_SETLOWPOWERACTIVE = 85 const SPI_SETLOWPOWERTIMEOUT = 81 const SPI_SETMENUANIMATION = 4099 const SPI_SETMENUDROPALIGNMENT = 28 const SPI_SETMENUFADE = 4115 const SPI_SETMENURECT = 163 const SPI_SETMENUSHOWDELAY = 107 const SPI_SETMENUUNDERLINES = 4107 const SPI_SETMESSAGEDURATION = 8215 const SPI_SETMINIMIZEDMETRICS = 44 const SPI_SETMINIMUMHITRADIUS = 8213 const SPI_SETMOUSE = 4 const SPI_SETMOUSEBUTTONSWAP = 33 const SPI_SETMOUSECLICKLOCK = 4127 const SPI_SETMOUSECLICKLOCKTIME = 8201 const SPI_SETMOUSECORNERCLIPLENGTH = 161 const SPI_SETMOUSEDOCKTHRESHOLD = 127 const SPI_SETMOUSEDRAGOUTTHRESHOLD = 133 const SPI_SETMOUSEHOVERHEIGHT = 101 const SPI_SETMOUSEHOVERTIME = 103 const SPI_SETMOUSEHOVERWIDTH = 99 const SPI_SETMOUSEKEYS = 55 const SPI_SETMOUSESIDEMOVETHRESHOLD = 137 const SPI_SETMOUSESONAR = 4125 const SPI_SETMOUSESPEED = 113 const SPI_SETMOUSETRAILS = 93 const SPI_SETMOUSEVANISH = 4129 const SPI_SETMOUSEWHEELROUTING = 8221 const SPI_SETNONCLIENTMETRICS = 42 const SPI_SETPENARBITRATIONTYPE = 8225 const SPI_SETPENDOCKTHRESHOLD = 129 const SPI_SETPENDRAGOUTTHRESHOLD = 135 const SPI_SETPENSIDEMOVETHRESHOLD = 139 const SPI_SETPENVISUALIZATION = 8223 const SPI_SETPENWINDOWS = 49 const SPI_SETPOWEROFFACTIVE = 86 const SPI_SETPOWEROFFTIMEOUT = 82 const SPI_SETSCREENREADER = 71 const SPI_SETSCREENSAVEACTIVE = 17 const SPI_SETSCREENSAVERRUNNING = 97 const SPI_SETSCREENSAVESECURE = 119 const SPI_SETSCREENSAVETIMEOUT = 15 const SPI_SETSELECTIONFADE = 4117 const SPI_SETSERIALKEYS = 63 const SPI_SETSHOWIMEUI = 111 const SPI_SETSHOWSOUNDS = 57 const SPI_SETSNAPSIZING = 143 const SPI_SETSNAPTODEFBUTTON = 96 const SPI_SETSOUNDSENTRY = 65 const SPI_SETSPEECHRECOGNITION = 4171 const SPI_SETSTICKYKEYS = 59 const SPI_SETSYSTEMLANGUAGEBAR = 4177 const SPI_SETTHREADLOCALINPUTSETTINGS = 4175 const SPI_SETTOGGLEKEYS = 53 const SPI_SETTOOLTIPANIMATION = 4119 const SPI_SETTOOLTIPFADE = 4121 const SPI_SETTOUCHPREDICTIONPARAMETERS = 157 const SPI_SETUIEFFECTS = 4159 const SPI_SETWAITTOKILLSERVICETIMEOUT = 125 const SPI_SETWAITTOKILLTIMEOUT = 123 const SPI_SETWHEELSCROLLCHARS = 109 const SPI_SETWHEELSCROLLLINES = 105 const SPI_SETWINARRANGING = 131 const SPI_SETWORKAREA = 47 const SPOINTER_32 = 0 const SPOOL_FILE_PERSISTENT = 1 const SPOOL_FILE_TEMPORARY = 2 const SPVERSION_MASK = 65280 const SP_APPABORT = -2 const SP_ERROR = -1 const SP_NOTREPORTED = 16384 const SP_OUTOFDISK = -4 const SP_OUTOFMEMORY = -5 const SP_USERABORT = -3 const SQLITE_LOCKFILEEX_FLAGS = 1 const SQLITE_LOCKFILE_FLAGS = 3 const SQLITE_MAX_PATHLEN = 260 const SQLITE_OMIT_SEH = 1 const SQLITE_OS_WIN = 1 const SQLITE_OS_WINCE = 0 const SQLITE_OS_WINNT = 1 const SQLITE_OS_WIN_THREADS = 1 const SQLITE_WIN32_CREATEFILEMAPPINGA = 0 const SQLITE_WIN32_GETVERSIONEX = 0 const SQLITE_WIN32_IOERR_RETRY = 10 const SQLITE_WIN32_IOERR_RETRY_DELAY = 25 const SQLITE_WIN32_MAX_ERRMSG_CHARS = 1024 const SQLITE_WIN32_MAX_PATH_BYTES = 1040 const SQLITE_WIN32_MAX_PATH_CHARS = 260 const SQLITE_WIN32_VOLATILE = 0 const SQLITE_WINNT_MAX_PATH_BYTES = 0 const SQLITE_WINNT_MAX_PATH_CHARS = 32767 const SRB_TYPE_SCSI_REQUEST_BLOCK = 0 const SRB_TYPE_STORAGE_REQUEST_BLOCK = 1 type SRWLOCK = TSRWLOCK const SRWLOCK_INIT = "RTL_SRWLOCK_INIT" const SSF_AVAILABLE = 2 const SSF_INDICATOR = 4 const SSF_SOUNDSENTRYON = 1 const SSGF_DISPLAY = 3 const SSGF_NONE = 0 type SSIZE_T = TSSIZE_T const SSL_ECCPUBLIC_BLOB = "SSLECCPUBLICBLOB" type SSL_EXTRA_CERT_CHAIN_POLICY_PARA = TSSL_EXTRA_CERT_CHAIN_POLICY_PARA const SSL_F12_ERROR_TEXT_LENGTH = 256 type SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS = TSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS const SSL_HPKP_HEADER_COUNT = 2 type SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA = TSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA const SSL_HPKP_PKP_HEADER_INDEX = 0 const SSL_HPKP_PKP_RO_HEADER_INDEX = 1 const SSL_KEY_PIN_ERROR_TEXT_LENGTH = 512 type SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA = TSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA type SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS = TSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS const SSL_OBJECT_LOCATOR_CERT_VALIDATION_CONFIG_FUNC = "SslObjectLocatorInitializeCertValidationConfig" const SSL_OBJECT_LOCATOR_ISSUER_LIST_FUNC = "SslObjectLocatorInitializeIssuerList" const SSL_OBJECT_LOCATOR_PFX_FUNC = "SslObjectLocatorInitializePfx" const SSTF_BORDER = 2 const SSTF_CHARS = 1 const SSTF_DISPLAY = 3 const SSTF_NONE = 0 const SSWF_CUSTOM = 4 const SSWF_DISPLAY = 3 const SSWF_NONE = 0 const SSWF_TITLE = 1 const SSWF_WINDOW = 2 const SS_BITMAP = 14 const SS_BLACKFRAME = 7 const SS_BLACKRECT = 4 const SS_CENTER = 1 const SS_CENTERIMAGE = 512 const SS_EDITCONTROL = 8192 const SS_ELLIPSISMASK = 49152 const SS_ENDELLIPSIS = 16384 const SS_ENHMETAFILE = 15 const SS_ETCHEDFRAME = 18 const SS_ETCHEDHORZ = 16 const SS_ETCHEDVERT = 17 const SS_GRAYFRAME = 8 const SS_GRAYRECT = 5 const SS_ICON = 3 const SS_LEFT = 0 const SS_LEFTNOWORDWRAP = 12 const SS_NOPREFIX = 128 const SS_NOTIFY = 256 const SS_OWNERDRAW = 13 const SS_PATHELLIPSIS = 32768 const SS_REALSIZECONTROL = 64 const SS_REALSIZEIMAGE = 2048 const SS_RIGHT = 2 const SS_RIGHTJUST = 1024 const SS_SIMPLE = 11 const SS_SUNKEN = 4096 const SS_TYPEMASK = 31 const SS_USERITEM = 10 const SS_WHITEFRAME = 9 const SS_WHITERECT = 6 const SS_WORDELLIPSIS = 49152 const STACK_SIZE_PARAM_IS_A_RESERVATION = 65536 const STAMP_AXESLIST = 134245473 const STAMP_CFF2 = 134248035 const STAMP_DESIGNVECTOR = 134248036 const STAMP_TRUETYPE_VARIATION = 134248052 const STANDARD_RIGHTS_ALL = 2031616 const STANDARD_RIGHTS_EXECUTE = 131072 const STANDARD_RIGHTS_READ = 131072 const STANDARD_RIGHTS_REQUIRED = 983040 const STANDARD_RIGHTS_WRITE = 131072 const STARTDOC = 10 const STARTF_FORCEOFFFEEDBACK = 128 const STARTF_FORCEONFEEDBACK = 64 const STARTF_PREVENTPINNING = 8192 const STARTF_RUNFULLSCREEN = 32 const STARTF_TITLEISAPPID = 4096 const STARTF_TITLEISLINKNAME = 2048 const STARTF_UNTRUSTEDSOURCE = 32768 const STARTF_USECOUNTCHARS = 8 const STARTF_USEFILLATTRIBUTE = 16 const STARTF_USEHOTKEY = 512 const STARTF_USEPOSITION = 4 const STARTF_USESHOWWINDOW = 1 const STARTF_USESIZE = 2 const STARTF_USESTDHANDLES = 256 type STARTING_LCN_INPUT_BUFFER = TSTARTING_LCN_INPUT_BUFFER type STARTING_VCN_INPUT_BUFFER = TSTARTING_VCN_INPUT_BUFFER type STARTUPINFO = TSTARTUPINFO type STARTUPINFOA = TSTARTUPINFOA type STARTUPINFOEX = TSTARTUPINFOEX type STARTUPINFOEXA = TSTARTUPINFOEXA type STARTUPINFOEXW = TSTARTUPINFOEXW type STARTUPINFOW = TSTARTUPINFOW const START_PAGE_GENERAL = 4294967295 type STATDATA = TSTATDATA const STATE_SYSTEM_ALERT_HIGH = 268435456 const STATE_SYSTEM_ALERT_LOW = 67108864 const STATE_SYSTEM_ALERT_MEDIUM = 134217728 const STATE_SYSTEM_ANIMATED = 16384 const STATE_SYSTEM_BUSY = 2048 const STATE_SYSTEM_CHECKED = 16 const STATE_SYSTEM_COLLAPSED = 1024 const STATE_SYSTEM_DEFAULT = 256 const STATE_SYSTEM_EXPANDED = 512 const STATE_SYSTEM_EXTSELECTABLE = 33554432 const STATE_SYSTEM_FLOATING = 4096 const STATE_SYSTEM_FOCUSABLE = 1048576 const STATE_SYSTEM_FOCUSED = 4 const STATE_SYSTEM_HOTTRACKED = 128 const STATE_SYSTEM_INDETERMINATE = 32 const STATE_SYSTEM_INVISIBLE = 32768 const STATE_SYSTEM_LINKED = 4194304 const STATE_SYSTEM_MARQUEED = 8192 const STATE_SYSTEM_MIXED = 32 const STATE_SYSTEM_MOVEABLE = 262144 const STATE_SYSTEM_MULTISELECTABLE = 16777216 const STATE_SYSTEM_OFFSCREEN = 65536 const STATE_SYSTEM_PRESSED = 8 const STATE_SYSTEM_PROTECTED = 536870912 const STATE_SYSTEM_READONLY = 64 const STATE_SYSTEM_SELECTABLE = 2097152 const STATE_SYSTEM_SELECTED = 2 const STATE_SYSTEM_SELFVOICING = 524288 const STATE_SYSTEM_SIZEABLE = 131072 const STATE_SYSTEM_TRAVERSED = 8388608 const STATE_SYSTEM_UNAVAILABLE = 1 const STATE_SYSTEM_VALID = 1073741823 type STATFLAG = TSTATFLAG type STATPROPSETSTG = TSTATPROPSETSTG type STATPROPSTG = TSTATPROPSTG type STATSTG = TSTATSTG const STDAPIVCALLTYPE = "__cdecl" const STDMETHODVCALLTYPE = "__cdecl" type STDMSHLFLAGS = TSTDMSHLFLAGS const STDOLE2_LCID = 0 const STDOLE2_MAJORVERNUM = 2 const STDOLE2_MINORVERNUM = 0 const STDOLE_LCID = 0 const STDOLE_MAJORVERNUM = 1 const STDOLE_MINORVERNUM = 0 const STD_ERROR_HANDLE = -12 const STD_INPUT_HANDLE = -10 const STD_OUTPUT_HANDLE = -11 type STGC = TSTGC type STGFMT = TSTGFMT const STGFMT_ANY = 4 const STGFMT_DOCFILE = 5 const STGFMT_DOCUMENT = 0 const STGFMT_FILE = 3 const STGFMT_NATIVE = 1 const STGFMT_STORAGE = 0 type STGMEDIUM = TSTGMEDIUM type STGMOVE = TSTGMOVE const STGM_CONVERT = 131072 const STGM_CREATE = 4096 const STGM_DELETEONRELEASE = 67108864 const STGM_DIRECT = 0 const STGM_DIRECT_SWMR = 4194304 const STGM_FAILIFTHERE = 0 const STGM_NOSCRATCH = 1048576 const STGM_NOSNAPSHOT = 2097152 const STGM_PRIORITY = 262144 const STGM_READ = 0 const STGM_READWRITE = 2 const STGM_SHARE_DENY_NONE = 64 const STGM_SHARE_DENY_READ = 48 const STGM_SHARE_DENY_WRITE = 32 const STGM_SHARE_EXCLUSIVE = 16 const STGM_SIMPLE = 134217728 const STGM_TRANSACTED = 65536 const STGM_WRITE = 1 type STGOPTIONS = TSTGOPTIONS const STGOPTIONS_VERSION = 2 type STGTY = TSTGTY const STGTY_REPEAT = 256 const STG_LAYOUT_INTERLEAVED = 1 const STG_LAYOUT_SEQUENTIAL = 0 const STG_TOEND = 4294967295 type STICKYKEYS = TSTICKYKEYS const STILL_ACTIVE = "STATUS_PENDING" const STM_GETICON = 369 const STM_GETIMAGE = 371 const STM_MSGMAX = 372 const STM_SETICON = 368 const STM_SETIMAGE = 370 const STN_CLICKED = 0 const STN_DBLCLK = 1 const STN_DISABLE = 3 const STN_ENABLE = 2 const STOCK_LAST = 19 type STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR = TSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR type STORAGE_ADAPTER_DESCRIPTOR = TSTORAGE_ADAPTER_DESCRIPTOR const STORAGE_ADDRESS_TYPE_BTL8 = 0 type STORAGE_ALLOCATE_BC_STREAM_INPUT = TSTORAGE_ALLOCATE_BC_STREAM_INPUT type STORAGE_ALLOCATE_BC_STREAM_OUTPUT = TSTORAGE_ALLOCATE_BC_STREAM_OUTPUT type STORAGE_ASSOCIATION_TYPE = TSTORAGE_ASSOCIATION_TYPE type STORAGE_BREAK_RESERVATION_REQUEST = TSTORAGE_BREAK_RESERVATION_REQUEST type STORAGE_BUS_RESET_REQUEST = TSTORAGE_BUS_RESET_REQUEST type STORAGE_BUS_TYPE = TSTORAGE_BUS_TYPE type STORAGE_CRYPTO_ALGORITHM_ID = TSTORAGE_CRYPTO_ALGORITHM_ID type STORAGE_CRYPTO_CAPABILITY = TSTORAGE_CRYPTO_CAPABILITY const STORAGE_CRYPTO_CAPABILITY_VERSION_1 = 1 type STORAGE_CRYPTO_DESCRIPTOR = TSTORAGE_CRYPTO_DESCRIPTOR const STORAGE_CRYPTO_DESCRIPTOR_VERSION_1 = 1 type STORAGE_CRYPTO_KEY_SIZE = TSTORAGE_CRYPTO_KEY_SIZE type STORAGE_DEPENDENCY_INFO = TSTORAGE_DEPENDENCY_INFO type STORAGE_DEPENDENCY_INFO_TYPE_1 = TSTORAGE_DEPENDENCY_INFO_TYPE_1 type STORAGE_DEPENDENCY_INFO_TYPE_2 = TSTORAGE_DEPENDENCY_INFO_TYPE_2 type STORAGE_DEPENDENCY_INFO_VERSION = TSTORAGE_DEPENDENCY_INFO_VERSION type STORAGE_DESCRIPTOR_HEADER = TSTORAGE_DESCRIPTOR_HEADER type STORAGE_DEVICE_DESCRIPTOR = TSTORAGE_DEVICE_DESCRIPTOR type STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR = TSTORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR const STORAGE_DEVICE_FLAGS_PAGE_83_DEVICEGUID = 4 const STORAGE_DEVICE_FLAGS_RANDOM_DEVICEGUID_REASON_CONFLICT = 1 const STORAGE_DEVICE_FLAGS_RANDOM_DEVICEGUID_REASON_NOHWID = 2 type STORAGE_DEVICE_ID_DESCRIPTOR = TSTORAGE_DEVICE_ID_DESCRIPTOR type STORAGE_DEVICE_NUMBER = TSTORAGE_DEVICE_NUMBER type STORAGE_DEVICE_NUMBERS = TSTORAGE_DEVICE_NUMBERS type STORAGE_DEVICE_NUMBER_EX = TSTORAGE_DEVICE_NUMBER_EX type STORAGE_DEVICE_RESILIENCY_DESCRIPTOR = TSTORAGE_DEVICE_RESILIENCY_DESCRIPTOR type STORAGE_DEVICE_TIERING_DESCRIPTOR = TSTORAGE_DEVICE_TIERING_DESCRIPTOR type STORAGE_FAILURE_PREDICTION_CONFIG = TSTORAGE_FAILURE_PREDICTION_CONFIG const STORAGE_FAILURE_PREDICTION_CONFIG_V1 = 1 type STORAGE_GET_BC_PROPERTIES_OUTPUT = TSTORAGE_GET_BC_PROPERTIES_OUTPUT type STORAGE_HOTPLUG_INFO = TSTORAGE_HOTPLUG_INFO type STORAGE_IDENTIFIER = TSTORAGE_IDENTIFIER type STORAGE_IDENTIFIER_CODE_SET = TSTORAGE_IDENTIFIER_CODE_SET type STORAGE_IDENTIFIER_TYPE = TSTORAGE_IDENTIFIER_TYPE type STORAGE_ID_NAA_FORMAT = TSTORAGE_ID_NAA_FORMAT const STORAGE_INFO_FLAGS_ALIGNED_DEVICE = 1 const STORAGE_INFO_FLAGS_PARTITION_ALIGNED_ON_DEVICE = 2 const STORAGE_INFO_OFFSET_UNKNOWN = 4294967295 type STORAGE_LB_PROVISIONING_MAP_RESOURCES = TSTORAGE_LB_PROVISIONING_MAP_RESOURCES type STORAGE_MEDIA_SERIAL_NUMBER_DATA = TSTORAGE_MEDIA_SERIAL_NUMBER_DATA type STORAGE_MEDIA_TYPE = TSTORAGE_MEDIA_TYPE type STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR = TSTORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR type STORAGE_MINIPORT_DESCRIPTOR = TSTORAGE_MINIPORT_DESCRIPTOR type STORAGE_PORT_CODE_SET = TSTORAGE_PORT_CODE_SET type STORAGE_PREDICT_FAILURE = TSTORAGE_PREDICT_FAILURE type STORAGE_PRIORITY_HINT_SUPPORT = TSTORAGE_PRIORITY_HINT_SUPPORT const STORAGE_PRIORITY_HINT_SUPPORTED = 1 type STORAGE_PROPERTY_ID = TSTORAGE_PROPERTY_ID type STORAGE_PROPERTY_QUERY = TSTORAGE_PROPERTY_QUERY type STORAGE_PROPERTY_SET = TSTORAGE_PROPERTY_SET type STORAGE_PROTOCOL_ATA_DATA_TYPE = TSTORAGE_PROTOCOL_ATA_DATA_TYPE type STORAGE_PROTOCOL_DATA_DESCRIPTOR = TSTORAGE_PROTOCOL_DATA_DESCRIPTOR type STORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT = TSTORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT type STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE = TSTORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE type STORAGE_PROTOCOL_NVME_DATA_TYPE = TSTORAGE_PROTOCOL_NVME_DATA_TYPE type STORAGE_PROTOCOL_SPECIFIC_DATA = TSTORAGE_PROTOCOL_SPECIFIC_DATA type STORAGE_PROTOCOL_SPECIFIC_DATA_EXT = TSTORAGE_PROTOCOL_SPECIFIC_DATA_EXT type STORAGE_PROTOCOL_TYPE = TSTORAGE_PROTOCOL_TYPE type STORAGE_PROTOCOL_UFS_DATA_TYPE = TSTORAGE_PROTOCOL_UFS_DATA_TYPE type STORAGE_QUERY_TYPE = TSTORAGE_QUERY_TYPE type STORAGE_READ_CAPACITY = TSTORAGE_READ_CAPACITY type STORAGE_RPMB_DESCRIPTOR = TSTORAGE_RPMB_DESCRIPTOR const STORAGE_RPMB_DESCRIPTOR_VERSION_1 = 1 type STORAGE_RPMB_FRAME_TYPE = TSTORAGE_RPMB_FRAME_TYPE const STORAGE_RPMB_MINIMUM_RELIABLE_WRITE_SIZE = 512 type STORAGE_SET_TYPE = TSTORAGE_SET_TYPE type STORAGE_TIER = TSTORAGE_TIER type STORAGE_TIER_CLASS = TSTORAGE_TIER_CLASS const STORAGE_TIER_DESCRIPTION_LENGTH = 512 const STORAGE_TIER_FLAG_NO_SEEK_PENALTY = 131072 const STORAGE_TIER_FLAG_PARITY = 8388608 const STORAGE_TIER_FLAG_READ_CACHE = 4194304 const STORAGE_TIER_FLAG_SMR = 16777216 const STORAGE_TIER_FLAG_WRITE_BACK_CACHE = 2097152 type STORAGE_TIER_MEDIA_TYPE = TSTORAGE_TIER_MEDIA_TYPE const STORAGE_TIER_NAME_LENGTH = 256 type STORAGE_WRITE_CACHE_PROPERTY = TSTORAGE_WRITE_CACHE_PROPERTY const STREAM_CLEAR_ENCRYPTION = 4 const STREAM_CONTAINS_GHOSTED_FILE_EXTENTS = 16 const STREAM_CONTAINS_PROPERTIES = 4 const STREAM_CONTAINS_SECURITY = 2 type STREAM_INFO_LEVELS = TSTREAM_INFO_LEVELS const STREAM_MODIFIED_WHEN_READ = 1 const STREAM_NORMAL_ATTRIBUTE = 0 type STREAM_SEEK = TSTREAM_SEEK const STREAM_SET_ENCRYPTION = 3 const STREAM_SPARSE_ATTRIBUTE = 8 const STRETCHBLT = 2048 const STRETCH_ANDSCANS = 1 const STRETCH_DELETESCANS = 3 const STRETCH_HALFTONE = 4 const STRETCH_ORSCANS = 2 const STRICT = 1 const STRUNCATE = 80 type STUB_PHASE = TSTUB_PHASE type STUB_THUNK = TSTUB_THUNK type STYLEBUF = TSTYLEBUF type STYLEBUFA = TSTYLEBUFA type STYLEBUFW = TSTYLEBUFW type STYLESTRUCT = TSTYLESTRUCT const STYLE_DESCRIPTION_SIZE = 32 const ST_ADVISE = 2 const ST_BLOCKED = 8 const ST_BLOCKNEXT = 128 const ST_CLIENT = 16 const ST_CONNECTED = 1 const ST_INLIST = 64 const ST_ISLOCAL = 4 const ST_ISSELF = 256 const ST_TERMINATED = 32 const SUBLANG_AFRIKAANS_SOUTH_AFRICA = 1 const SUBLANG_ALBANIAN_ALBANIA = 1 const SUBLANG_ALSATIAN_FRANCE = 1 const SUBLANG_AMHARIC_ETHIOPIA = 1 const SUBLANG_ARABIC_ALGERIA = 5 const SUBLANG_ARABIC_BAHRAIN = 15 const SUBLANG_ARABIC_EGYPT = 3 const SUBLANG_ARABIC_IRAQ = 2 const SUBLANG_ARABIC_JORDAN = 11 const SUBLANG_ARABIC_KUWAIT = 13 const SUBLANG_ARABIC_LEBANON = 12 const SUBLANG_ARABIC_LIBYA = 4 const SUBLANG_ARABIC_MOROCCO = 6 const SUBLANG_ARABIC_OMAN = 8 const SUBLANG_ARABIC_QATAR = 16 const SUBLANG_ARABIC_SAUDI_ARABIA = 1 const SUBLANG_ARABIC_SYRIA = 10 const SUBLANG_ARABIC_TUNISIA = 7 const SUBLANG_ARABIC_UAE = 14 const SUBLANG_ARABIC_YEMEN = 9 const SUBLANG_ARMENIAN_ARMENIA = 1 const SUBLANG_ASSAMESE_INDIA = 1 const SUBLANG_AZERBAIJANI_AZERBAIJAN_CYRILLIC = 2 const SUBLANG_AZERBAIJANI_AZERBAIJAN_LATIN = 1 const SUBLANG_AZERI_CYRILLIC = 2 const SUBLANG_AZERI_LATIN = 1 const SUBLANG_BANGLA_BANGLADESH = 2 const SUBLANG_BANGLA_INDIA = 1 const SUBLANG_BASHKIR_RUSSIA = 1 const SUBLANG_BASQUE_BASQUE = 1 const SUBLANG_BELARUSIAN_BELARUS = 1 const SUBLANG_BENGALI_BANGLADESH = 2 const SUBLANG_BENGALI_INDIA = 1 const SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC = 8 const SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN = 5 const SUBLANG_BRETON_FRANCE = 1 const SUBLANG_BULGARIAN_BULGARIA = 1 const SUBLANG_CATALAN_CATALAN = 1 const SUBLANG_CENTRAL_KURDISH_IRAQ = 1 const SUBLANG_CHEROKEE_CHEROKEE = 1 const SUBLANG_CHINESE_HONGKONG = 3 const SUBLANG_CHINESE_MACAU = 5 const SUBLANG_CHINESE_SIMPLIFIED = 2 const SUBLANG_CHINESE_SINGAPORE = 4 const SUBLANG_CHINESE_TRADITIONAL = 1 const SUBLANG_CORSICAN_FRANCE = 1 const SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN = 4 const SUBLANG_CROATIAN_CROATIA = 1 const SUBLANG_CUSTOM_DEFAULT = 3 const SUBLANG_CUSTOM_UNSPECIFIED = 4 const SUBLANG_CZECH_CZECH_REPUBLIC = 1 const SUBLANG_DANISH_DENMARK = 1 const SUBLANG_DARI_AFGHANISTAN = 1 const SUBLANG_DEFAULT = 1 const SUBLANG_DIVEHI_MALDIVES = 1 const SUBLANG_DUTCH = 1 const SUBLANG_DUTCH_BELGIAN = 2 const SUBLANG_ENGLISH_AUS = 3 const SUBLANG_ENGLISH_BELIZE = 10 const SUBLANG_ENGLISH_CAN = 4 const SUBLANG_ENGLISH_CARIBBEAN = 9 const SUBLANG_ENGLISH_EIRE = 6 const SUBLANG_ENGLISH_INDIA = 16 const SUBLANG_ENGLISH_IRELAND = 6 const SUBLANG_ENGLISH_JAMAICA = 8 const SUBLANG_ENGLISH_MALAYSIA = 17 const SUBLANG_ENGLISH_NZ = 5 const SUBLANG_ENGLISH_PHILIPPINES = 13 const SUBLANG_ENGLISH_SINGAPORE = 18 const SUBLANG_ENGLISH_SOUTH_AFRICA = 7 const SUBLANG_ENGLISH_TRINIDAD = 11 const SUBLANG_ENGLISH_UK = 2 const SUBLANG_ENGLISH_US = 1 const SUBLANG_ENGLISH_ZIMBABWE = 12 const SUBLANG_ESTONIAN_ESTONIA = 1 const SUBLANG_FAEROESE_FAROE_ISLANDS = 1 const SUBLANG_FILIPINO_PHILIPPINES = 1 const SUBLANG_FINNISH_FINLAND = 1 const SUBLANG_FRENCH = 1 const SUBLANG_FRENCH_BELGIAN = 2 const SUBLANG_FRENCH_CANADIAN = 3 const SUBLANG_FRENCH_LUXEMBOURG = 5 const SUBLANG_FRENCH_MONACO = 6 const SUBLANG_FRENCH_SWISS = 4 const SUBLANG_FRISIAN_NETHERLANDS = 1 const SUBLANG_FULAH_SENEGAL = 2 const SUBLANG_GALICIAN_GALICIAN = 1 const SUBLANG_GEORGIAN_GEORGIA = 1 const SUBLANG_GERMAN = 1 const SUBLANG_GERMAN_AUSTRIAN = 3 const SUBLANG_GERMAN_LIECHTENSTEIN = 5 const SUBLANG_GERMAN_LUXEMBOURG = 4 const SUBLANG_GERMAN_SWISS = 2 const SUBLANG_GREEK_GREECE = 1 const SUBLANG_GREENLANDIC_GREENLAND = 1 const SUBLANG_GUJARATI_INDIA = 1 const SUBLANG_HAUSA_NIGERIA = 1 const SUBLANG_HAUSA_NIGERIA_LATIN = 1 const SUBLANG_HAWAIIAN_US = 1 const SUBLANG_HEBREW_ISRAEL = 1 const SUBLANG_HINDI_INDIA = 1 const SUBLANG_HUNGARIAN_HUNGARY = 1 const SUBLANG_ICELANDIC_ICELAND = 1 const SUBLANG_IGBO_NIGERIA = 1 const SUBLANG_INDONESIAN_INDONESIA = 1 const SUBLANG_INUKTITUT_CANADA = 1 const SUBLANG_INUKTITUT_CANADA_LATIN = 2 const SUBLANG_IRISH_IRELAND = 2 const SUBLANG_ITALIAN = 1 const SUBLANG_ITALIAN_SWISS = 2 const SUBLANG_JAPANESE_JAPAN = 1 const SUBLANG_KANNADA_INDIA = 1 const SUBLANG_KASHMIRI_INDIA = 2 const SUBLANG_KASHMIRI_SASIA = 2 const SUBLANG_KAZAK_KAZAKHSTAN = 1 const SUBLANG_KHMER_CAMBODIA = 1 const SUBLANG_KICHE_GUATEMALA = 1 const SUBLANG_KINYARWANDA_RWANDA = 1 const SUBLANG_KONKANI_INDIA = 1 const SUBLANG_KOREAN = 1 const SUBLANG_KYRGYZ_KYRGYZSTAN = 1 const SUBLANG_LAO_LAO = 1 const SUBLANG_LAO_LAO_PDR = 1 const SUBLANG_LATVIAN_LATVIA = 1 const SUBLANG_LITHUANIAN = 1 const SUBLANG_LITHUANIAN_LITHUANIA = 1 const SUBLANG_LOWER_SORBIAN_GERMANY = 2 const SUBLANG_LUXEMBOURGISH_LUXEMBOURG = 1 const SUBLANG_MACEDONIAN_MACEDONIA = 1 const SUBLANG_MALAYALAM_INDIA = 1 const SUBLANG_MALAY_BRUNEI_DARUSSALAM = 2 const SUBLANG_MALAY_MALAYSIA = 1 const SUBLANG_MALTESE_MALTA = 1 const SUBLANG_MAORI_NEW_ZEALAND = 1 const SUBLANG_MAPUDUNGUN_CHILE = 1 const SUBLANG_MARATHI_INDIA = 1 const SUBLANG_MOHAWK_MOHAWK = 1 const SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA = 1 const SUBLANG_MONGOLIAN_PRC = 2 const SUBLANG_NEPALI_INDIA = 2 const SUBLANG_NEPALI_NEPAL = 1 const SUBLANG_NEUTRAL = 0 const SUBLANG_NORWEGIAN_BOKMAL = 1 const SUBLANG_NORWEGIAN_NYNORSK = 2 const SUBLANG_OCCITAN_FRANCE = 1 const SUBLANG_ORIYA_INDIA = 1 const SUBLANG_PASHTO_AFGHANISTAN = 1 const SUBLANG_PERSIAN_IRAN = 1 const SUBLANG_POLISH_POLAND = 1 const SUBLANG_PORTUGUESE = 2 const SUBLANG_PORTUGUESE_BRAZILIAN = 1 const SUBLANG_PORTUGUESE_PORTUGAL = 2 const SUBLANG_PULAR_SENEGAL = 2 const SUBLANG_PUNJABI_INDIA = 1 const SUBLANG_PUNJABI_PAKISTAN = 2 const SUBLANG_QUECHUA_BOLIVIA = 1 const SUBLANG_QUECHUA_ECUADOR = 2 const SUBLANG_QUECHUA_PERU = 3 const SUBLANG_ROMANIAN_ROMANIA = 1 const SUBLANG_ROMANSH_SWITZERLAND = 1 const SUBLANG_RUSSIAN_RUSSIA = 1 const SUBLANG_SAKHA_RUSSIA = 1 const SUBLANG_SAMI_INARI_FINLAND = 9 const SUBLANG_SAMI_LULE_NORWAY = 4 const SUBLANG_SAMI_LULE_SWEDEN = 5 const SUBLANG_SAMI_NORTHERN_FINLAND = 3 const SUBLANG_SAMI_NORTHERN_NORWAY = 1 const SUBLANG_SAMI_NORTHERN_SWEDEN = 2 const SUBLANG_SAMI_SKOLT_FINLAND = 8 const SUBLANG_SAMI_SOUTHERN_NORWAY = 6 const SUBLANG_SAMI_SOUTHERN_SWEDEN = 7 const SUBLANG_SANSKRIT_INDIA = 1 const SUBLANG_SCOTTISH_GAELIC = 1 const SUBLANG_SERBIAN_BOSNIA_HERZEGOVINA_CYRILLIC = 7 const SUBLANG_SERBIAN_BOSNIA_HERZEGOVINA_LATIN = 6 const SUBLANG_SERBIAN_CYRILLIC = 3 const SUBLANG_SERBIAN_LATIN = 2 const SUBLANG_SERBIAN_MONTENEGRO_CYRILLIC = 12 const SUBLANG_SERBIAN_MONTENEGRO_LATIN = 11 const SUBLANG_SERBIAN_SERBIA_CYRILLIC = 10 const SUBLANG_SERBIAN_SERBIA_LATIN = 9 const SUBLANG_SINDHI_AFGHANISTAN = 2 const SUBLANG_SINDHI_INDIA = 1 const SUBLANG_SINDHI_PAKISTAN = 2 const SUBLANG_SINHALESE_SRI_LANKA = 1 const SUBLANG_SLOVAK_SLOVAKIA = 1 const SUBLANG_SLOVENIAN_SLOVENIA = 1 const SUBLANG_SOTHO_NORTHERN_SOUTH_AFRICA = 1 const SUBLANG_SPANISH = 1 const SUBLANG_SPANISH_ARGENTINA = 11 const SUBLANG_SPANISH_BOLIVIA = 16 const SUBLANG_SPANISH_CHILE = 13 const SUBLANG_SPANISH_COLOMBIA = 9 const SUBLANG_SPANISH_COSTA_RICA = 5 const SUBLANG_SPANISH_DOMINICAN_REPUBLIC = 7 const SUBLANG_SPANISH_ECUADOR = 12 const SUBLANG_SPANISH_EL_SALVADOR = 17 const SUBLANG_SPANISH_GUATEMALA = 4 const SUBLANG_SPANISH_HONDURAS = 18 const SUBLANG_SPANISH_MEXICAN = 2 const SUBLANG_SPANISH_MODERN = 3 const SUBLANG_SPANISH_NICARAGUA = 19 const SUBLANG_SPANISH_PANAMA = 6 const SUBLANG_SPANISH_PARAGUAY = 15 const SUBLANG_SPANISH_PERU = 10 const SUBLANG_SPANISH_PUERTO_RICO = 20 const SUBLANG_SPANISH_URUGUAY = 14 const SUBLANG_SPANISH_US = 21 const SUBLANG_SPANISH_VENEZUELA = 8 const SUBLANG_SWAHILI_KENYA = 1 const SUBLANG_SWEDISH = 1 const SUBLANG_SWEDISH_FINLAND = 2 const SUBLANG_SWEDISH_SWEDEN = 1 const SUBLANG_SYRIAC = 1 const SUBLANG_SYRIAC_SYRIA = 1 const SUBLANG_SYS_DEFAULT = 2 const SUBLANG_TAJIK_TAJIKISTAN = 1 const SUBLANG_TAMAZIGHT_ALGERIA_LATIN = 2 const SUBLANG_TAMAZIGHT_MOROCCO_TIFINAGH = 4 const SUBLANG_TAMIL_INDIA = 1 const SUBLANG_TAMIL_SRI_LANKA = 2 const SUBLANG_TATAR_RUSSIA = 1 const SUBLANG_TELUGU_INDIA = 1 const SUBLANG_THAI_THAILAND = 1 const SUBLANG_TIBETAN_BHUTAN = 2 const SUBLANG_TIBETAN_PRC = 1 const SUBLANG_TIGRIGNA_ERITREA = 2 const SUBLANG_TIGRINYA_ERITREA = 2 const SUBLANG_TIGRINYA_ETHIOPIA = 1 const SUBLANG_TSWANA_BOTSWANA = 2 const SUBLANG_TSWANA_SOUTH_AFRICA = 1 const SUBLANG_TURKISH_TURKEY = 1 const SUBLANG_TURKMEN_TURKMENISTAN = 1 const SUBLANG_UIGHUR_PRC = 1 const SUBLANG_UI_CUSTOM_DEFAULT = 5 const SUBLANG_UKRAINIAN_UKRAINE = 1 const SUBLANG_UPPER_SORBIAN_GERMANY = 1 const SUBLANG_URDU_INDIA = 2 const SUBLANG_URDU_PAKISTAN = 1 const SUBLANG_UZBEK_CYRILLIC = 2 const SUBLANG_UZBEK_LATIN = 1 const SUBLANG_VALENCIAN_VALENCIA = 2 const SUBLANG_VIETNAMESE_VIETNAM = 1 const SUBLANG_WELSH_UNITED_KINGDOM = 1 const SUBLANG_WOLOF_SENEGAL = 1 const SUBLANG_XHOSA_SOUTH_AFRICA = 1 const SUBLANG_YAKUT_RUSSIA = 1 const SUBLANG_YI_PRC = 1 const SUBLANG_YORUBA_NIGERIA = 1 const SUBLANG_ZULU_SOUTH_AFRICA = 1 const SUBVERSION_MASK = 255 const SUCCESSFUL_ACCESS_ACE_FLAG = 64 type SUPPORTED_OS_INFO = TSUPPORTED_OS_INFO const SUPPORT_LANG_NUMBER = 32 const SWP_ASYNCWINDOWPOS = 16384 const SWP_DEFERERASE = 8192 const SWP_DRAWFRAME = 32 const SWP_FRAMECHANGED = 32 const SWP_HIDEWINDOW = 128 const SWP_NOACTIVATE = 16 const SWP_NOCOPYBITS = 256 const SWP_NOMOVE = 2 const SWP_NOOWNERZORDER = 512 const SWP_NOREDRAW = 8 const SWP_NOREPOSITION = 512 const SWP_NOSENDCHANGING = 1024 const SWP_NOSIZE = 1 const SWP_NOZORDER = 4 const SWP_SHOWWINDOW = 64 const SW_ERASE = 4 const SW_FORCEMINIMIZE = 11 const SW_HIDE = 0 const SW_INVALIDATE = 2 const SW_MAX = 11 const SW_MAXIMIZE = 3 const SW_MINIMIZE = 6 const SW_NORMAL = 1 const SW_OTHERUNZOOM = 4 const SW_OTHERZOOM = 2 const SW_PARENTCLOSING = 1 const SW_PARENTOPENING = 3 const SW_RESTORE = 9 const SW_SCROLLCHILDREN = 1 const SW_SHOW = 5 const SW_SHOWDEFAULT = 10 const SW_SHOWMAXIMIZED = 3 const SW_SHOWMINIMIZED = 2 const SW_SHOWMINNOACTIVE = 7 const SW_SHOWNA = 8 const SW_SHOWNOACTIVATE = 4 const SW_SHOWNORMAL = 1 const SW_SMOOTHSCROLL = 16 const SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE = 2 const SYMBOLIC_LINK_FLAG_DIRECTORY = 1 const SYMBOL_CHARSET = 2 const SYMBOL_FONTTYPE = 524288 const SYMLINK_FLAG_RELATIVE = 1 const SYMMETRICWRAPKEYBLOB = 11 type SYNCHRONIZATION_BARRIER = TSYNCHRONIZATION_BARRIER const SYNCHRONIZATION_BARRIER_FLAGS_BLOCK_ONLY = 2 const SYNCHRONIZATION_BARRIER_FLAGS_NO_DELETE = 4 const SYNCHRONIZATION_BARRIER_FLAGS_SPIN_ONLY = 1 const SYNCHRONIZE = 1048576 const SYSCALL = 0 type SYSKIND = TSYSKIND const SYSPAL_ERROR = 0 const SYSPAL_NOSTATIC = 2 const SYSPAL_NOSTATIC256 = 3 const SYSPAL_STATIC = 1 const SYSRGN = 4 type SYSTEMTIME = TSYSTEMTIME type SYSTEM_ALARM_ACE = TSYSTEM_ALARM_ACE const SYSTEM_ALARM_ACE_TYPE = 3 type SYSTEM_ALARM_CALLBACK_ACE = TSYSTEM_ALARM_CALLBACK_ACE const SYSTEM_ALARM_CALLBACK_ACE_TYPE = 14 type SYSTEM_ALARM_CALLBACK_OBJECT_ACE = TSYSTEM_ALARM_CALLBACK_OBJECT_ACE const SYSTEM_ALARM_CALLBACK_OBJECT_ACE_TYPE = 16 type SYSTEM_ALARM_OBJECT_ACE = TSYSTEM_ALARM_OBJECT_ACE const SYSTEM_ALARM_OBJECT_ACE_TYPE = 8 type SYSTEM_AUDIT_ACE = TSYSTEM_AUDIT_ACE const SYSTEM_AUDIT_ACE_TYPE = 2 type SYSTEM_AUDIT_CALLBACK_ACE = TSYSTEM_AUDIT_CALLBACK_ACE const SYSTEM_AUDIT_CALLBACK_ACE_TYPE = 13 type SYSTEM_AUDIT_CALLBACK_OBJECT_ACE = TSYSTEM_AUDIT_CALLBACK_OBJECT_ACE const SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE = 15 type SYSTEM_AUDIT_OBJECT_ACE = TSYSTEM_AUDIT_OBJECT_ACE const SYSTEM_AUDIT_OBJECT_ACE_TYPE = 7 type SYSTEM_BATTERY_STATE = TSYSTEM_BATTERY_STATE const SYSTEM_CACHE_ALIGNMENT_SIZE = 64 const SYSTEM_FIXED_FONT = 16 const SYSTEM_FONT = 13 type SYSTEM_INFO = TSYSTEM_INFO type SYSTEM_LOGICAL_PROCESSOR_INFORMATION = TSYSTEM_LOGICAL_PROCESSOR_INFORMATION type SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = TSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX type SYSTEM_MANDATORY_LABEL_ACE = TSYSTEM_MANDATORY_LABEL_ACE const SYSTEM_MANDATORY_LABEL_ACE_TYPE = 17 const SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP = 4 const SYSTEM_MANDATORY_LABEL_NO_READ_UP = 2 const SYSTEM_MANDATORY_LABEL_NO_WRITE_UP = 1 const SYSTEM_MANDATORY_LABEL_VALID_MASK = 7 type SYSTEM_POWER_CAPABILITIES = TSYSTEM_POWER_CAPABILITIES type SYSTEM_POWER_CONDITION = TSYSTEM_POWER_CONDITION type SYSTEM_POWER_LEVEL = TSYSTEM_POWER_LEVEL type SYSTEM_POWER_POLICY = TSYSTEM_POWER_POLICY type SYSTEM_POWER_STATE = TSYSTEM_POWER_STATE type SYSTEM_POWER_STATUS = TSYSTEM_POWER_STATUS type SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = TSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION type SYSTEM_RESOURCE_ATTRIBUTE_ACE = TSYSTEM_RESOURCE_ATTRIBUTE_ACE const SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE = 18 type SYSTEM_SCOPED_POLICY_ID_ACE = TSYSTEM_SCOPED_POLICY_ID_ACE const SYSTEM_SCOPED_POLICY_ID_ACE_TYPE = 19 const SYSTEM_STATUS_FLAG_POWER_SAVING_ON = 1 type SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION = TSYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION const SYS_OPEN = 20 type SZM_FLAGS = TSZM_FLAGS const S_ALLTHRESHOLD = 2 const S_ASYNCHRONOUS = "MK_S_ASYNCHRONOUS" const S_LEGATO = 1 const S_NORMAL = 0 const S_PERIOD1024 = 1 const S_PERIOD2048 = 2 const S_PERIOD512 = 0 const S_PERIODVOICE = 3 const S_QUEUEEMPTY = 0 const S_SERBDNT = -5 const S_SERDCC = -7 const S_SERDDR = -14 const S_SERDFQ = -13 const S_SERDLN = -6 const S_SERDMD = -10 const S_SERDPT = -12 const S_SERDSH = -11 const S_SERDSR = -15 const S_SERDST = -16 const S_SERDTP = -8 const S_SERDVL = -9 const S_SERDVNA = -1 const S_SERMACT = -3 const S_SEROFM = -2 const S_SERQFUL = -4 const S_STACCATO = 2 const S_THRESHOLD = 1 const S_WHITE1024 = 5 const S_WHITE2048 = 6 const S_WHITE512 = 4 const S_WHITEVOICE = 7 const ScrollConsoleScreenBuffer = 0 const SearchPath = 0 const SecureZeroMemory = 0 const SendDlgItemMessage = 0 const SendMessage = 0 const SendMessageCallback = 0 const SendMessageTimeout = 0 const SendNotifyMessage = 0 type ServerInformation = TServerInformation const SetCalendarInfo = 0 const SetClassLong = 0 const SetClassLongPtr = 0 const SetComputerName = 0 const SetComputerNameEx = 0 const SetConsoleNumberOfCommands = 0 const SetConsoleTitle = 0 const SetCurrentDirectory = 0 const SetDefaultCommConfig = 0 const SetDefaultPrinter = 0 const SetDlgItemText = 0 const SetDllDirectory = 0 const SetEnvironmentStrings = 0 const SetEnvironmentVariable = 0 const SetFileAttributes = 0 const SetFileAttributesTransacted = 0 const SetFileSecurity = 0 const SetFileShortName = 0 const SetFirmwareEnvironmentVariable = 0 const SetFirmwareEnvironmentVariableEx = 0 const SetForm = 0 const SetICMProfile = 0 const SetJob = 0 const SetLocaleInfo = 0 const SetMenuItemInfo = 0 const SetPort = 0 const SetPrinter = 0 const SetPrinterData = 0 const SetPrinterDataEx = 0 const SetProp = 0 const SetUserObjectInformation = 0 const SetVolumeLabel = 0 const SetVolumeMountPoint = 0 const SetWindowLong = 0 const SetWindowLongPtr = 0 const SetWindowText = 0 const SetWindowsHook = 0 const SetWindowsHookEx = 0 const ShellAbout = 0 const ShellExecute = 0 const ShellExecuteEx = 0 const ShellMessageBox = 0 const Shell_NotifyIcon = 0 type ShmRegion = TShmRegion type ShutdownType = TShutdownType const StartDoc = 0 const StartDocPrinter = 0 type StartParam = TStartParam const StartService = 0 const StartServiceCtrlDispatcher = 0 const StorageIdTypeNAA = 0 type StorageLayout = TStorageLayout const StoragePortClassGuid = 0 const SystemParametersInfo = 0 type TABC = struct { FabcA int32 FabcB TUINT FabcC int32 } type TABCFLOAT = struct { FabcfA TFLOAT FabcfB TFLOAT FabcfC TFLOAT } type TABORTPROC = uintptr type TACCEL = struct { FfVirt TBYTE Fkey TWORD Fcmd TWORD } type TACCESSTIMEOUT = struct { FcbSize TUINT FdwFlags TDWORD FiTimeOutMSec TDWORD } type TACCESS_ALLOWED_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TACCESS_ALLOWED_CALLBACK_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TACCESS_ALLOWED_CALLBACK_OBJECT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FFlags TDWORD FObjectType TGUID FInheritedObjectType TGUID FSidStart TDWORD } type TACCESS_ALLOWED_OBJECT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FFlags TDWORD FObjectType TGUID FInheritedObjectType TGUID FSidStart TDWORD } type TACCESS_DENIED_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TACCESS_DENIED_CALLBACK_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TACCESS_DENIED_CALLBACK_OBJECT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FFlags TDWORD FObjectType TGUID FInheritedObjectType TGUID FSidStart TDWORD } type TACCESS_DENIED_OBJECT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FFlags TDWORD FObjectType TGUID FInheritedObjectType TGUID FSidStart TDWORD } type TACCESS_MASK = uint32 type TACCESS_REASON = uint32 type TACCESS_REASONS = struct { FData [32]TACCESS_REASON } type TACCESS_REASON_TYPE = int32 type TACE_HEADER = struct { FAceType TBYTE FAceFlags TBYTE FAceSize TWORD } type TACL = struct { FAclRevision TBYTE FSbz1 TBYTE FAclSize TWORD FAceCount TWORD FSbz2 TWORD } type TACL_INFORMATION_CLASS = int32 type TACL_REVISION_INFORMATION = struct { FAclRevision TDWORD } type TACL_SIZE_INFORMATION = struct { FAceCount TDWORD FAclBytesInUse TDWORD FAclBytesFree TDWORD } type TACTCTX = struct { FcbSize TULONG FdwFlags TDWORD FlpSource TLPCSTR FwProcessorArchitecture TUSHORT FwLangId TLANGID FlpAssemblyDirectory TLPCSTR FlpResourceName TLPCSTR FlpApplicationName TLPCSTR FhModule THMODULE } type TACTCTXA = struct { FcbSize TULONG FdwFlags TDWORD FlpSource TLPCSTR FwProcessorArchitecture TUSHORT FwLangId TLANGID FlpAssemblyDirectory TLPCSTR FlpResourceName TLPCSTR FlpApplicationName TLPCSTR FhModule THMODULE } type TACTCTXW = struct { FcbSize TULONG FdwFlags TDWORD FlpSource TLPCWSTR FwProcessorArchitecture TUSHORT FwLangId TLANGID FlpAssemblyDirectory TLPCWSTR FlpResourceName TLPCWSTR FlpApplicationName TLPCWSTR FhModule THMODULE } type TACTCTX_COMPATIBILITY_ELEMENT_TYPE = int32 type TACTCTX_REQUESTED_RUN_LEVEL = int32 type TACTCTX_SECTION_KEYED_DATA = struct { FcbSize TULONG FulDataFormatVersion TULONG FlpData TPVOID FulLength TULONG FlpSectionGlobalData TPVOID FulSectionGlobalDataLength TULONG FlpSectionBase TPVOID FulSectionTotalLength TULONG FhActCtx THANDLE FulAssemblyRosterIndex TULONG FulFlags TULONG FAssemblyMetadata TACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA } type TACTCTX_SECTION_KEYED_DATA_2600 = struct { FcbSize TULONG FulDataFormatVersion TULONG FlpData TPVOID FulLength TULONG FlpSectionGlobalData TPVOID FulSectionGlobalDataLength TULONG FlpSectionBase TPVOID FulSectionTotalLength TULONG FhActCtx THANDLE FulAssemblyRosterIndex TULONG } type TACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = struct { FlpInformation TPVOID FlpSectionBase TPVOID FulSectionLength TULONG FlpSectionGlobalDataBase TPVOID FulSectionGlobalDataLength TULONG } type TACTION_HEADER = struct { Ftransport_id TULONG Faction_code TUSHORT Freserved TUSHORT } type TACTIVATION_CONTEXT_BASIC_INFORMATION = struct { FhActCtx THANDLE FdwFlags TDWORD } type TACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = struct { FElementCount TDWORD } type TACTIVATION_CONTEXT_DETAILED_INFORMATION = struct { FdwFlags TDWORD FulFormatVersion TDWORD FulAssemblyCount TDWORD FulRootManifestPathType TDWORD FulRootManifestPathChars TDWORD FulRootConfigurationPathType TDWORD FulRootConfigurationPathChars TDWORD FulAppDirPathType TDWORD FulAppDirPathChars TDWORD FlpRootManifestPath TPCWSTR FlpRootConfigurationPath TPCWSTR FlpAppDirPath TPCWSTR } type TACTIVATION_CONTEXT_INFO_CLASS = int32 type TACTIVATION_CONTEXT_QUERY_INDEX = struct { FulAssemblyIndex TDWORD FulFileIndexInAssembly TDWORD } type TACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = struct { FulFlags TDWORD FRunLevel TACTCTX_REQUESTED_RUN_LEVEL FUiAccess TDWORD } type TADAPTER_STATUS = struct { Fadapter_address [6]TUCHAR Frev_major TUCHAR Freserved0 TUCHAR Fadapter_type TUCHAR Frev_minor TUCHAR Fduration TWORD Ffrmr_recv TWORD Ffrmr_xmit TWORD Fiframe_recv_err TWORD Fxmit_aborts TWORD Fxmit_success TDWORD Frecv_success TDWORD Fiframe_xmit_err TWORD Frecv_buff_unavail TWORD Ft1_timeouts TWORD Fti_timeouts TWORD Freserved1 TDWORD Ffree_ncbs TWORD Fmax_cfg_ncbs TWORD Fmax_ncbs TWORD Fxmit_buf_unavail TWORD Fmax_dgram_size TWORD Fpending_sess TWORD Fmax_cfg_sess TWORD Fmax_sess TWORD Fmax_sess_pkt_size TWORD Fname_count TWORD } type TADDJOB_INFO_1 = struct { FPath TLPSTR FJobId TDWORD } type TADDJOB_INFO_1A = struct { FPath TLPSTR FJobId TDWORD } type TADDJOB_INFO_1W = struct { FPath TLPWSTR FJobId TDWORD } type TADMINISTRATOR_POWER_POLICY = struct { FMinSleep TSYSTEM_POWER_STATE FMaxSleep TSYSTEM_POWER_STATE FMinVideoTimeout TDWORD FMaxVideoTimeout TDWORD FMinSpindownTimeout TDWORD FMaxSpindownTimeout TDWORD } type TADVF = int32 type TAKE_SNAPSHOT_VHDSET_FLAG = TTAKE_SNAPSHOT_VHDSET_FLAG type TAKE_SNAPSHOT_VHDSET_PARAMETERS = TTAKE_SNAPSHOT_VHDSET_PARAMETERS type TAKE_SNAPSHOT_VHDSET_VERSION = TTAKE_SNAPSHOT_VHDSET_VERSION type TALG_ID = uint32 type TALTTABINFO = struct { FcbSize TDWORD FcItems int32 FcColumns int32 FcRows int32 FiColFocus int32 FiRowFocus int32 FcxItem int32 FcyItem int32 FptStart TPOINT } type TANIMATIONINFO = struct { FcbSize TUINT FiMinAnimate int32 } type TANON_OBJECT_HEADER = struct { FSig1 TWORD FSig2 TWORD FVersion TWORD FMachine TWORD FTimeDateStamp TDWORD FClassID TCLSID FSizeOfData TDWORD } type TANON_OBJECT_HEADER_BIGOBJ = struct { FSig1 TWORD FSig2 TWORD FVersion TWORD FMachine TWORD FTimeDateStamp TDWORD FClassID TCLSID FSizeOfData TDWORD FFlags TDWORD FMetaDataSize TDWORD FMetaDataOffset TDWORD FNumberOfSections TDWORD FPointerToSymbolTable TDWORD FNumberOfSymbols TDWORD } type TANON_OBJECT_HEADER_V2 = struct { FSig1 TWORD FSig2 TWORD FVersion TWORD FMachine TWORD FTimeDateStamp TDWORD FClassID TCLSID FSizeOfData TDWORD FFlags TDWORD FMetaDataSize TDWORD FMetaDataOffset TDWORD } type TAPARTMENTID = uint32 type TAPC_CALLBACK_FUNCTION = uintptr const TAPE_ABSOLUTE_BLOCK = 1 const TAPE_ABSOLUTE_POSITION = 0 const TAPE_CHECK_FOR_DRIVE_PROBLEM = 2 type TAPE_CREATE_PARTITION = TTAPE_CREATE_PARTITION const TAPE_DRIVE_ABSOLUTE_BLK = 2147487744 const TAPE_DRIVE_ABS_BLK_IMMED = 2147491840 const TAPE_DRIVE_CLEAN_REQUESTS = 33554432 const TAPE_DRIVE_COMPRESSION = 131072 const TAPE_DRIVE_ECC = 65536 const TAPE_DRIVE_EJECT_MEDIA = 16777216 const TAPE_DRIVE_END_OF_DATA = 2147549184 const TAPE_DRIVE_EOT_WZ_SIZE = 8192 const TAPE_DRIVE_ERASE_BOP_ONLY = 64 const TAPE_DRIVE_ERASE_IMMEDIATE = 128 const TAPE_DRIVE_ERASE_LONG = 32 const TAPE_DRIVE_ERASE_SHORT = 16 const TAPE_DRIVE_FILEMARKS = 2147745792 const TAPE_DRIVE_FIXED = 1 const TAPE_DRIVE_FIXED_BLOCK = 1024 const TAPE_DRIVE_FORMAT = 2684354560 const TAPE_DRIVE_FORMAT_IMMEDIATE = 3221225472 const TAPE_DRIVE_GET_ABSOLUTE_BLK = 1048576 const TAPE_DRIVE_GET_LOGICAL_BLK = 2097152 const TAPE_DRIVE_HIGH_FEATURES = 2147483648 const TAPE_DRIVE_INITIATOR = 4 const TAPE_DRIVE_LOAD_UNLD_IMMED = 2147483680 const TAPE_DRIVE_LOAD_UNLOAD = 2147483649 const TAPE_DRIVE_LOCK_UNLK_IMMED = 2147483776 const TAPE_DRIVE_LOCK_UNLOCK = 2147483652 const TAPE_DRIVE_LOGICAL_BLK = 2147500032 const TAPE_DRIVE_LOG_BLK_IMMED = 2147516416 const TAPE_DRIVE_PADDING = 262144 type TAPE_DRIVE_PROBLEM_TYPE = TTAPE_DRIVE_PROBLEM_TYPE const TAPE_DRIVE_RELATIVE_BLKS = 2147614720 const TAPE_DRIVE_REPORT_SMKS = 524288 const TAPE_DRIVE_RESERVED_BIT = 2147483648 const TAPE_DRIVE_REVERSE_POSITION = 2151677952 const TAPE_DRIVE_REWIND_IMMEDIATE = 2147483656 const TAPE_DRIVE_SELECT = 2 const TAPE_DRIVE_SEQUENTIAL_FMKS = 2148007936 const TAPE_DRIVE_SEQUENTIAL_SMKS = 2149580800 const TAPE_DRIVE_SETMARKS = 2148532224 const TAPE_DRIVE_SET_BLOCK_SIZE = 2147483664 const TAPE_DRIVE_SET_CMP_BOP_ONLY = 67108864 const TAPE_DRIVE_SET_COMPRESSION = 2147484160 const TAPE_DRIVE_SET_ECC = 2147483904 const TAPE_DRIVE_SET_EOT_WZ_SIZE = 4194304 const TAPE_DRIVE_SET_PADDING = 2147484672 const TAPE_DRIVE_SET_REPORT_SMKS = 2147485696 const TAPE_DRIVE_SPACE_IMMEDIATE = 2155872256 const TAPE_DRIVE_TAPE_CAPACITY = 256 const TAPE_DRIVE_TAPE_REMAINING = 512 const TAPE_DRIVE_TENSION = 2147483650 const TAPE_DRIVE_TENSION_IMMED = 2147483712 const TAPE_DRIVE_VARIABLE_BLOCK = 2048 const TAPE_DRIVE_WRITE_FILEMARKS = 2181038080 const TAPE_DRIVE_WRITE_LONG_FMKS = 2281701376 const TAPE_DRIVE_WRITE_MARK_IMMED = 2415919104 const TAPE_DRIVE_WRITE_PROTECT = 4096 const TAPE_DRIVE_WRITE_SETMARKS = 2164260864 const TAPE_DRIVE_WRITE_SHORT_FMKS = 2214592512 type TAPE_ERASE = TTAPE_ERASE const TAPE_ERASE_LONG = 1 const TAPE_ERASE_SHORT = 0 const TAPE_FILEMARKS = 1 const TAPE_FIXED_PARTITIONS = 0 const TAPE_FORMAT = 5 type TAPE_GET_DRIVE_PARAMETERS = TTAPE_GET_DRIVE_PARAMETERS type TAPE_GET_MEDIA_PARAMETERS = TTAPE_GET_MEDIA_PARAMETERS type TAPE_GET_POSITION = TTAPE_GET_POSITION type TAPE_GET_STATISTICS = TTAPE_GET_STATISTICS const TAPE_INITIATOR_PARTITIONS = 2 const TAPE_LOAD = 0 const TAPE_LOCK = 3 const TAPE_LOGICAL_BLOCK = 2 const TAPE_LOGICAL_POSITION = 1 const TAPE_LONG_FILEMARKS = 3 type TAPE_PREPARE = TTAPE_PREPARE const TAPE_PSEUDO_LOGICAL_BLOCK = 3 const TAPE_PSEUDO_LOGICAL_POSITION = 2 const TAPE_QUERY_DEVICE_ERROR_DATA = 4 const TAPE_QUERY_DRIVE_PARAMETERS = 0 const TAPE_QUERY_IO_ERROR_DATA = 3 const TAPE_QUERY_MEDIA_CAPACITY = 1 const TAPE_RESET_STATISTICS = 2 const TAPE_RETURN_ENV_INFO = 1 const TAPE_RETURN_STATISTICS = 0 const TAPE_REWIND = 0 const TAPE_SELECT_PARTITIONS = 1 const TAPE_SETMARKS = 0 type TAPE_SET_DRIVE_PARAMETERS = TTAPE_SET_DRIVE_PARAMETERS type TAPE_SET_MEDIA_PARAMETERS = TTAPE_SET_MEDIA_PARAMETERS type TAPE_SET_POSITION = TTAPE_SET_POSITION const TAPE_SHORT_FILEMARKS = 2 const TAPE_SPACE_END_OF_DATA = 4 const TAPE_SPACE_FILEMARKS = 6 const TAPE_SPACE_RELATIVE_BLOCKS = 5 const TAPE_SPACE_SEQUENTIAL_FMKS = 7 const TAPE_SPACE_SEQUENTIAL_SMKS = 9 const TAPE_SPACE_SETMARKS = 8 type TAPE_STATISTICS = TTAPE_STATISTICS const TAPE_TENSION = 2 const TAPE_UNLOAD = 1 const TAPE_UNLOCK = 4 type TAPE_WMI_OPERATIONS = TTAPE_WMI_OPERATIONS type TAPE_WRITE_MARKS = TTAPE_WRITE_MARKS type TAPPBARDATA = struct { FcbSize TDWORD FhWnd THWND FuCallbackMessage TUINT FuEdge TUINT Frc TRECT FlParam TLPARAM } type TAPPLICATION_RECOVERY_CALLBACK = uintptr type TAPPLY_SNAPSHOT_VHDSET_FLAG = int32 type TAPPLY_SNAPSHOT_VHDSET_PARAMETERS = struct { FVersion TAPPLY_SNAPSHOT_VHDSET_VERSION F__ccgo1_4 struct { FVersion1 struct { FSnapshotId TGUID FLeafSnapshotId TGUID } } } type TAPPLY_SNAPSHOT_VHDSET_VERSION = int32 type TAPP_LOCAL_DEVICE_ID = struct { Fvalue [32]TBYTE } type TAPTTYPE = int32 type TAPTTYPEQUALIFIER = int32 const TARGET_IS_NT351_OR_WIN95_OR_LATER = 1 const TARGET_IS_NT40_OR_LATER = 1 const TARGET_IS_NT50_OR_LATER = 1 const TARGET_IS_NT51_OR_LATER = 1 const TARGET_IS_NT60_OR_LATER = 1 const TARGET_IS_NT61_OR_LATER = 1 type TARRAYDESC = struct { FtdescElem TTYPEDESC FcDims TUSHORT Frgbounds [1]TSAFEARRAYBOUND } type TARRAY_INFO = struct { FDimension int32 FBufferConformanceMark uintptr FBufferVarianceMark uintptr FMaxCountArray uintptr FOffsetArray uintptr FActualCountArray uintptr } type TAR_STATE = int32 type TASSEMBLY_FILE_DETAILED_INFORMATION = struct { FulFlags TDWORD FulFilenameLength TDWORD FulPathLength TDWORD FlpFileName TPCWSTR FlpFilePath TPCWSTR } type TASSOCCLASS = int32 type TASSOCIATIONELEMENT = struct { Fac TASSOCCLASS FhkClass THKEY FpszClass TPCWSTR } type TATOM = uint16 type TATTACH_VIRTUAL_DISK_FLAG = int32 type TATTACH_VIRTUAL_DISK_PARAMETERS = struct { FVersion TATTACH_VIRTUAL_DISK_VERSION F__ccgo1_4 struct { FVersion1 struct { FReserved TULONG } } } type TATTACH_VIRTUAL_DISK_VERSION = int32 type TAUDIODESCRIPTION = struct { FcbSize TUINT FEnabled TWINBOOL FLocale TLCID } type TAUDIT_EVENT_TYPE = int32 type TAUTHENTICATEF = int32 type TAUTHENTICATEINFO = struct { FdwFlags TDWORD FdwReserved TDWORD } type TAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA = struct { FcbSize TDWORD FdwRegPolicySettings TDWORD FpSignerInfo TPCMSG_SIGNER_INFO } type TAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS = struct { FcbSize TDWORD FfCommercial TWINBOOL } type TAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA = struct { FcbSize TDWORD FdwRegPolicySettings TDWORD FfCommercial TWINBOOL } type TAUXCAPS = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FwTechnology TWORD FwReserved1 TWORD FdwSupport TDWORD } type TAUXCAPS2 = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FwTechnology TWORD FwReserved1 TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TAUXCAPS2A = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FwTechnology TWORD FwReserved1 TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TAUXCAPS2W = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FwTechnology TWORD FwReserved1 TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TAUXCAPSA = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FwTechnology TWORD FwReserved1 TWORD FdwSupport TDWORD } type TAUXCAPSW = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FwTechnology TWORD FwReserved1 TWORD FdwSupport TDWORD } type TAXESLIST = struct { FaxlReserved TDWORD FaxlNumAxes TDWORD FaxlAxisInfo [16]TAXISINFOA } type TAXESLISTA = struct { FaxlReserved TDWORD FaxlNumAxes TDWORD FaxlAxisInfo [16]TAXISINFOA } type TAXESLISTW = struct { FaxlReserved TDWORD FaxlNumAxes TDWORD FaxlAxisInfo [16]TAXISINFOW } type TAXISINFO = struct { FaxMinValue TLONG FaxMaxValue TLONG FaxAxisName [16]TBYTE } type TAXISINFOA = struct { FaxMinValue TLONG FaxMaxValue TLONG FaxAxisName [16]TBYTE } type TAXISINFOW = struct { FaxMinValue TLONG FaxMaxValue TLONG FaxAxisName [16]TWCHAR } const TA_BASELINE = 24 const TA_BOTTOM = 8 const TA_CENTER = 6 const TA_LEFT = 0 const TA_MASK = 287 const TA_NOUPDATECP = 0 const TA_RIGHT = 2 const TA_RTLREADING = 256 const TA_TOP = 0 const TA_UPDATECP = 1 type TApplicationType = int32 type TAsyncIAdviseSink = struct { FlpVtbl uintptr } type TAsyncIAdviseSink2 = struct { FlpVtbl uintptr } type TAsyncIAdviseSink2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FBegin_OnDataChange uintptr FFinish_OnDataChange uintptr FBegin_OnViewChange uintptr FFinish_OnViewChange uintptr FBegin_OnRename uintptr FFinish_OnRename uintptr FBegin_OnSave uintptr FFinish_OnSave uintptr FBegin_OnClose uintptr FFinish_OnClose uintptr FBegin_OnLinkSrcChange uintptr FFinish_OnLinkSrcChange uintptr } type TAsyncIAdviseSinkVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FBegin_OnDataChange uintptr FFinish_OnDataChange uintptr FBegin_OnViewChange uintptr FFinish_OnViewChange uintptr FBegin_OnRename uintptr FFinish_OnRename uintptr FBegin_OnSave uintptr FFinish_OnSave uintptr FBegin_OnClose uintptr FFinish_OnClose uintptr } type TAsyncIMultiQI = struct { FlpVtbl uintptr } type TAsyncIMultiQIVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FBegin_QueryMultipleInterfaces uintptr FFinish_QueryMultipleInterfaces uintptr } type TAsyncIUnknown = struct { FlpVtbl uintptr } type TAsyncIUnknownVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FBegin_QueryInterface uintptr FFinish_QueryInterface uintptr FBegin_AddRef uintptr FFinish_AddRef uintptr FBegin_Release uintptr FFinish_Release uintptr } type TBAD_TRACK_NUMBER = uint16 type TBATTERY_REPORTING_SCALE = struct { FGranularity TDWORD FCapacity TDWORD } type TBCHAR = uint8 type TBCRYPT_ALGORITHM_IDENTIFIER = struct { FpszName TLPWSTR FdwClass TULONG FdwFlags TULONG } type TBCRYPT_ALG_HANDLE = uintptr type TBCRYPT_AUTH_TAG_LENGTHS_STRUCT = struct { FdwMinLength TULONG FdwMaxLength TULONG FdwIncrement TULONG } type TBCRYPT_DH_KEY_BLOB = struct { FdwMagic TULONG FcbKey TULONG } type TBCRYPT_DH_PARAMETER_HEADER = struct { FcbLength TULONG FdwMagic TULONG FcbKeyLength TULONG } type TBCRYPT_DSA_KEY_BLOB = struct { FdwMagic TULONG FcbKey TULONG FCount [4]TUCHAR FSeed [20]TUCHAR Fq [20]TUCHAR } type TBCRYPT_DSA_KEY_BLOB_V2 = struct { FdwMagic TULONG FcbKey TULONG FhashAlgorithm THASHALGORITHM_ENUM FstandardVersion TDSAFIPSVERSION_ENUM FcbSeedLength TULONG FcbGroupSize TULONG FCount [4]TUCHAR } type TBCRYPT_DSA_PARAMETER_HEADER = struct { FcbLength TULONG FdwMagic TULONG FcbKeyLength TULONG FCount [4]TUCHAR FSeed [20]TUCHAR Fq [20]TUCHAR } type TBCRYPT_DSA_PARAMETER_HEADER_V2 = struct { FcbLength TULONG FdwMagic TULONG FcbKeyLength TULONG FhashAlgorithm THASHALGORITHM_ENUM FstandardVersion TDSAFIPSVERSION_ENUM FcbSeedLength TULONG FcbGroupSize TULONG FCount [4]TUCHAR } type TBCRYPT_ECCKEY_BLOB = struct { FdwMagic TULONG FcbKey TULONG } type TBCRYPT_ECC_CURVE_NAMES = struct { FdwEccCurveNames TULONG FpEccCurveNames uintptr } type TBCRYPT_HANDLE = uintptr type TBCRYPT_HASH_HANDLE = uintptr type TBCRYPT_HASH_OPERATION_TYPE = int32 type TBCRYPT_INTERFACE_VERSION = struct { FMajorVersion TUSHORT FMinorVersion TUSHORT } type TBCRYPT_KEY_BLOB = struct { FMagic TULONG } type TBCRYPT_KEY_DATA_BLOB_HEADER = struct { FdwMagic TULONG FdwVersion TULONG FcbKeyData TULONG } type TBCRYPT_KEY_HANDLE = uintptr type TBCRYPT_KEY_LENGTHS_STRUCT = struct { FdwMinLength TULONG FdwMaxLength TULONG FdwIncrement TULONG } type TBCRYPT_MULTI_HASH_OPERATION = struct { FiHash TULONG FhashOperation TBCRYPT_HASH_OPERATION_TYPE FpbBuffer TPUCHAR FcbBuffer TULONG } type TBCRYPT_MULTI_OBJECT_LENGTH_STRUCT = struct { FcbPerObject TULONG FcbPerElement TULONG } type TBCRYPT_MULTI_OPERATION_TYPE = int32 type TBCRYPT_OAEP_PADDING_INFO = struct { FpszAlgId TLPCWSTR FpbLabel TPUCHAR FcbLabel TULONG } type TBCRYPT_OID = struct { FcbOID TULONG FpbOID TPUCHAR } type TBCRYPT_OID_LIST = struct { FdwOIDCount TULONG FpOIDs uintptr } type TBCRYPT_PKCS1_PADDING_INFO = struct { FpszAlgId TLPCWSTR } type TBCRYPT_PROVIDER_NAME = struct { FpszProviderName TLPWSTR } type TBCRYPT_PSS_PADDING_INFO = struct { FpszAlgId TLPCWSTR FcbSalt TULONG } type TBCRYPT_RSAKEY_BLOB = struct { FMagic TULONG FBitLength TULONG FcbPublicExp TULONG FcbModulus TULONG FcbPrime1 TULONG FcbPrime2 TULONG } type TBCRYPT_SECRET_HANDLE = uintptr type TBCryptBuffer = struct { FcbBuffer TULONG FBufferType TULONG FpvBuffer TPVOID } type TBCryptBufferDesc = struct { FulVersion TULONG FcBuffers TULONG FpBuffers TPBCryptBuffer } type TBEM_FREE_INTERFACE_CALLBACK = uintptr type TBIDI_REQUEST_CONTAINER = struct { FVersion TDWORD FFlags TDWORD FCount TDWORD FaData [1]TBIDI_REQUEST_DATA } type TBIDI_REQUEST_DATA = struct { FdwReqNumber TDWORD FpSchema TLPWSTR Fdata TBIDI_DATA } type TBIDI_RESPONSE_CONTAINER = struct { FVersion TDWORD FFlags TDWORD FCount TDWORD FaData [1]TBIDI_RESPONSE_DATA } type TBIDI_RESPONSE_DATA = struct { FdwResult TDWORD FdwReqNumber TDWORD FpSchema TLPWSTR Fdata TBIDI_DATA } type TBIDI_TYPE = int32 type TBINARY_CONTAINER = struct { FcbBuf TDWORD FpData TLPBYTE } type TBINDF = uint32 type TBINDF2 = uint32 type TBINDHANDLETYPES = int32 type TBINDINFO = struct { FcbSize TULONG FszExtraInfo TLPWSTR FstgmedData TSTGMEDIUM FgrfBindInfoF TDWORD FdwBindVerb TDWORD FszCustomVerb TLPWSTR FcbstgmedData TDWORD FdwOptions TDWORD FdwOptionsFlags TDWORD FdwCodePage TDWORD FsecurityAttributes TSECURITY_ATTRIBUTES Fiid TIID FpUnk uintptr FdwReserved TDWORD } type TBINDINFOF = int32 type TBINDINFO_OPTIONS = int32 type TBINDPTR = struct { Flpvardesc [0]uintptr Flptcomp [0]uintptr Flpfuncdesc uintptr } type TBINDSPEED = int32 type TBINDSTATUS = int32 type TBINDSTRING = int32 type TBINDVERB = int32 type TBIND_FLAGS = int32 type TBIND_OPTS = struct { FcbStruct TDWORD FgrfFlags TDWORD FgrfMode TDWORD FdwTickCountDeadline TDWORD } type TBIND_OPTS2 = struct { FcbStruct TDWORD FgrfFlags TDWORD FgrfMode TDWORD FdwTickCountDeadline TDWORD FdwTrackFlags TDWORD FdwClassContext TDWORD Flocale TLCID FpServerInfo uintptr } type TBIND_OPTS3 = struct { FcbStruct TDWORD FgrfFlags TDWORD FgrfMode TDWORD FdwTickCountDeadline TDWORD FdwTrackFlags TDWORD FdwClassContext TDWORD Flocale TLCID FpServerInfo uintptr Fhwnd THWND } type TBIN_TYPES = int32 type TBITMAP = struct { FbmType TLONG FbmWidth TLONG FbmHeight TLONG FbmWidthBytes TLONG FbmPlanes TWORD FbmBitsPixel TWORD FbmBits TLPVOID } type TBITMAPCOREHEADER = struct { FbcSize TDWORD FbcWidth TWORD FbcHeight TWORD FbcPlanes TWORD FbcBitCount TWORD } type TBITMAPCOREINFO = struct { FbmciHeader TBITMAPCOREHEADER FbmciColors [1]TRGBTRIPLE } type TBITMAPFILEHEADER = struct { FbfType TWORD FbfSize TDWORD FbfReserved1 TWORD FbfReserved2 TWORD FbfOffBits TDWORD } type TBITMAPINFO = struct { FbmiHeader TBITMAPINFOHEADER FbmiColors [1]TRGBQUAD } type TBITMAPINFOHEADER = struct { FbiSize TDWORD FbiWidth TLONG FbiHeight TLONG FbiPlanes TWORD FbiBitCount TWORD FbiCompression TDWORD FbiSizeImage TDWORD FbiXPelsPerMeter TLONG FbiYPelsPerMeter TLONG FbiClrUsed TDWORD FbiClrImportant TDWORD } type TBITMAPV4HEADER = struct { FbV4Size TDWORD FbV4Width TLONG FbV4Height TLONG FbV4Planes TWORD FbV4BitCount TWORD FbV4V4Compression TDWORD FbV4SizeImage TDWORD FbV4XPelsPerMeter TLONG FbV4YPelsPerMeter TLONG FbV4ClrUsed TDWORD FbV4ClrImportant TDWORD FbV4RedMask TDWORD FbV4GreenMask TDWORD FbV4BlueMask TDWORD FbV4AlphaMask TDWORD FbV4CSType TDWORD FbV4Endpoints TCIEXYZTRIPLE FbV4GammaRed TDWORD FbV4GammaGreen TDWORD FbV4GammaBlue TDWORD } type TBITMAPV5HEADER = struct { FbV5Size TDWORD FbV5Width TLONG FbV5Height TLONG FbV5Planes TWORD FbV5BitCount TWORD FbV5Compression TDWORD FbV5SizeImage TDWORD FbV5XPelsPerMeter TLONG FbV5YPelsPerMeter TLONG FbV5ClrUsed TDWORD FbV5ClrImportant TDWORD FbV5RedMask TDWORD FbV5GreenMask TDWORD FbV5BlueMask TDWORD FbV5AlphaMask TDWORD FbV5CSType TDWORD FbV5Endpoints TCIEXYZTRIPLE FbV5GammaRed TDWORD FbV5GammaGreen TDWORD FbV5GammaBlue TDWORD FbV5Intent TDWORD FbV5ProfileData TDWORD FbV5ProfileSize TDWORD FbV5Reserved TDWORD } type TBLENDFUNCTION = struct { FBlendOp TBYTE FBlendFlags TBYTE FSourceConstantAlpha TBYTE FAlphaFormat TBYTE } type TBLOB = struct { FcbSize TULONG FpBlobData uintptr } type TBLOBHEADER = struct { FbType TBYTE FbVersion TBYTE Freserved TWORD FaiKeyAlg TALG_ID } type TBOOL = int32 type TBOOLEAN = uint8 type TBORDERWIDTHS = struct { Fleft TLONG Ftop TLONG Fright TLONG Fbottom TLONG } type TBSCF = int32 type TBSMINFO = struct { FcbSize TUINT Fhdesk THDESK Fhwnd THWND Fluid TLUID } type TBSTR = uintptr type TBSTRBLOB = struct { FcbSize TULONG FpData uintptr } const TBS_SUCCESS = 0 type TBULK_SECURITY_TEST_DATA = struct { FDesiredAccess TACCESS_MASK FSecurityIds [1]TDWORD } type TBYTE = uint8 type TBYTE_BLOB = struct { FclSize TULONG FabData [1]Tbyte } type TBYTE_SIZEDARR = struct { FclSize TULONG FpData uintptr } type TBY_HANDLE_FILE_INFORMATION = struct { FdwFileAttributes TDWORD FftCreationTime TFILETIME FftLastAccessTime TFILETIME FftLastWriteTime TFILETIME FdwVolumeSerialNumber TDWORD FnFileSizeHigh TDWORD FnFileSizeLow TDWORD FnNumberOfLinks TDWORD FnFileIndexHigh TDWORD FnFileIndexLow TDWORD } type TBinaryParam = struct { FBuffer uintptr FSize int16 } type TCABOOL = struct { FcElems TULONG FpElems uintptr } type TCABSTR = struct { FcElems TULONG FpElems uintptr } type TCABSTRBLOB = struct { FcElems TULONG FpElems uintptr } type TCAC = struct { FcElems TULONG FpElems uintptr } type TCACHE_DESCRIPTOR = struct { FLevel TBYTE FAssociativity TBYTE FLineSize TWORD FSize TDWORD FType TPROCESSOR_CACHE_TYPE } type TCACHE_RELATIONSHIP = struct { FLevel TBYTE FAssociativity TBYTE FLineSize TWORD FCacheSize TDWORD FType TPROCESSOR_CACHE_TYPE FReserved [20]TBYTE FGroupMask TGROUP_AFFINITY } type TCACLIPDATA = struct { FcElems TULONG FpElems uintptr } type TCACLSID = struct { FcElems TULONG FpElems uintptr } type TCACY = struct { FcElems TULONG FpElems uintptr } type TCADATE = struct { FcElems TULONG FpElems uintptr } type TCADBL = struct { FcElems TULONG FpElems uintptr } type TCAFILETIME = struct { FcElems TULONG FpElems uintptr } type TCAFLT = struct { FcElems TULONG FpElems uintptr } type TCAH = struct { FcElems TULONG FpElems uintptr } type TCAI = struct { FcElems TULONG FpElems uintptr } type TCAL = struct { FcElems TULONG FpElems uintptr } type TCALID = uint32 type TCALINFO_ENUMPROCA = uintptr type TCALINFO_ENUMPROCEXA = uintptr type TCALINFO_ENUMPROCEXEX = uintptr type TCALINFO_ENUMPROCEXW = uintptr type TCALINFO_ENUMPROCW = uintptr type TCALLCONV = int32 type TCALLTYPE = int32 type TCALPSTR = struct { FcElems TULONG FpElems uintptr } type TCALPWSTR = struct { FcElems TULONG FpElems uintptr } type TCALTYPE = uint32 type TCANDIDATEFORM = struct { FdwIndex TDWORD FdwStyle TDWORD FptCurrentPos TPOINT FrcArea TRECT } type TCANDIDATELIST = struct { FdwSize TDWORD FdwStyle TDWORD FdwCount TDWORD FdwSelection TDWORD FdwPageStart TDWORD FdwPageSize TDWORD FdwOffset [1]TDWORD } type TCAPROPVARIANT = struct { FcElems TULONG FpElems uintptr } type TCASCODE = struct { FcElems TULONG FpElems uintptr } type TCAUB = struct { FcElems TULONG FpElems uintptr } type TCAUH = struct { FcElems TULONG FpElems uintptr } type TCAUI = struct { FcElems TULONG FpElems uintptr } type TCAUL = struct { FcElems TULONG FpElems uintptr } type TCBTACTIVATESTRUCT = struct { FfMouse TWINBOOL FhWndActive THWND } type TCBT_CREATEWND = struct { Flpcs uintptr FhwndInsertAfter THWND } type TCBT_CREATEWNDA = struct { Flpcs uintptr FhwndInsertAfter THWND } type TCBT_CREATEWNDW = struct { Flpcs uintptr FhwndInsertAfter THWND } type TCCERT_STORE_PROV_FIND_INFO = struct { FcbSize TDWORD FdwMsgAndCertEncodingType TDWORD FdwFindFlags TDWORD FdwFindType TDWORD FpvFindPara uintptr } type TCCHAR = int8 type TCERT_ACCESS_DESCRIPTION = struct { FpszAccessMethod TLPSTR FAccessLocation TCERT_ALT_NAME_ENTRY } type TCERT_ALT_NAME_INFO = struct { FcAltEntry TDWORD FrgAltEntry TPCERT_ALT_NAME_ENTRY } type TCERT_AUTHORITY_INFO_ACCESS = struct { FcAccDescr TDWORD FrgAccDescr TPCERT_ACCESS_DESCRIPTION } type TCERT_AUTHORITY_KEY_ID2_INFO = struct { FKeyId TCRYPT_DATA_BLOB FAuthorityCertIssuer TCERT_ALT_NAME_INFO FAuthorityCertSerialNumber TCRYPT_INTEGER_BLOB } type TCERT_AUTHORITY_KEY_ID_INFO = struct { FKeyId TCRYPT_DATA_BLOB FCertIssuer TCERT_NAME_BLOB FCertSerialNumber TCRYPT_INTEGER_BLOB } type TCERT_BASIC_CONSTRAINTS2_INFO = struct { FfCA TWINBOOL FfPathLenConstraint TWINBOOL FdwPathLenConstraint TDWORD } type TCERT_BASIC_CONSTRAINTS_INFO = struct { FSubjectType TCRYPT_BIT_BLOB FfPathLenConstraint TWINBOOL FdwPathLenConstraint TDWORD FcSubtreesConstraint TDWORD FrgSubtreesConstraint uintptr } type TCERT_BIOMETRIC_EXT_INFO = struct { FcBiometricData TDWORD FrgBiometricData TPCERT_BIOMETRIC_DATA } type TCERT_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCERT_CHAIN = struct { FcCerts TDWORD Fcerts TPCERT_BLOB FkeyLocatorInfo TCRYPT_KEY_PROV_INFO } type TCERT_CHAIN_CONTEXT = struct { FcbSize TDWORD FTrustStatus TCERT_TRUST_STATUS FcChain TDWORD FrgpChain uintptr FcLowerQualityChainContext TDWORD FrgpLowerQualityChainContext uintptr FfHasRevocationFreshnessTime TWINBOOL FdwRevocationFreshnessTime TDWORD FdwCreateFlags TDWORD FChainId TGUID } type TCERT_CHAIN_ELEMENT = struct { FcbSize TDWORD FpCertContext TPCCERT_CONTEXT FTrustStatus TCERT_TRUST_STATUS FpRevocationInfo TPCERT_REVOCATION_INFO FpIssuanceUsage TPCERT_ENHKEY_USAGE FpApplicationUsage TPCERT_ENHKEY_USAGE FpwszExtendedErrorInfo TLPCWSTR } type TCERT_CHAIN_ENGINE_CONFIG = struct { FcbSize TDWORD FhRestrictedRoot THCERTSTORE FhRestrictedTrust THCERTSTORE FhRestrictedOther THCERTSTORE FcAdditionalStore TDWORD FrghAdditionalStore uintptr FdwFlags TDWORD FdwUrlRetrievalTimeout TDWORD FMaximumCachedCertificates TDWORD FCycleDetectionModulus TDWORD FhExclusiveRoot THCERTSTORE FhExclusiveTrustedPeople THCERTSTORE FdwExclusiveFlags TDWORD } type TCERT_CHAIN_FIND_BY_ISSUER_PARA = struct { FcbSize TDWORD FpszUsageIdentifier TLPCSTR FdwKeySpec TDWORD FdwAcquirePrivateKeyFlags TDWORD FcIssuer TDWORD FrgIssuer uintptr FpfnFindCallback TPFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK FpvFindArg uintptr } type TCERT_CHAIN_FIND_ISSUER_PARA = struct { FcbSize TDWORD FpszUsageIdentifier TLPCSTR FdwKeySpec TDWORD FdwAcquirePrivateKeyFlags TDWORD FcIssuer TDWORD FrgIssuer uintptr FpfnFindCallback TPFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK FpvFindArg uintptr } type TCERT_CHAIN_PARA = struct { FcbSize TDWORD FRequestedUsage TCERT_USAGE_MATCH } type TCERT_CHAIN_POLICY_PARA = struct { FcbSize TDWORD FdwFlags TDWORD FpvExtraPolicyPara uintptr } type TCERT_CHAIN_POLICY_STATUS = struct { FcbSize TDWORD FdwError TDWORD FlChainIndex TLONG FlElementIndex TLONG FpvExtraPolicyStatus uintptr } type TCERT_CONTEXT = struct { FdwCertEncodingType TDWORD FpbCertEncoded uintptr FcbCertEncoded TDWORD FpCertInfo TPCERT_INFO FhCertStore THCERTSTORE } type TCERT_CREATE_CONTEXT_PARA = struct { FcbSize TDWORD FpfnFree TPFN_CRYPT_FREE FpvFree uintptr FpfnSort TPFN_CERT_CREATE_CONTEXT_SORT_FUNC FpvSort uintptr } type TCERT_CRL_CONTEXT_PAIR = struct { FpCertContext TPCCERT_CONTEXT FpCrlContext TPCCRL_CONTEXT } type TCERT_DH_PARAMETERS = struct { Fp TCRYPT_UINT_BLOB Fg TCRYPT_UINT_BLOB } type TCERT_DSS_PARAMETERS = struct { Fp TCRYPT_UINT_BLOB Fq TCRYPT_UINT_BLOB Fg TCRYPT_UINT_BLOB } type TCERT_ECC_SIGNATURE = struct { Fr TCRYPT_UINT_BLOB Fs TCRYPT_UINT_BLOB } type TCERT_ENHKEY_USAGE = struct { FcUsageIdentifier TDWORD FrgpszUsageIdentifier uintptr } type TCERT_EXTENSION = struct { FpszObjId TLPSTR FfCritical TWINBOOL FValue TCRYPT_OBJID_BLOB } type TCERT_EXTENSIONS = struct { FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCERT_FORTEZZA_DATA_PROP = struct { FSerialNumber [8]uint8 FCertIndex int32 FCertLabel [36]uint8 } type TCERT_GENERAL_SUBTREE = struct { FBase TCERT_ALT_NAME_ENTRY FdwMinimum TDWORD FfMaximum TWINBOOL FdwMaximum TDWORD } type TCERT_HASHED_URL = struct { FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FHash TCRYPT_HASH_BLOB FpwszUrl TLPWSTR } type TCERT_INFO = struct { FdwVersion TDWORD FSerialNumber TCRYPT_INTEGER_BLOB FSignatureAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FIssuer TCERT_NAME_BLOB FNotBefore TFILETIME FNotAfter TFILETIME FSubject TCERT_NAME_BLOB FSubjectPublicKeyInfo TCERT_PUBLIC_KEY_INFO FIssuerUniqueId TCRYPT_BIT_BLOB FSubjectUniqueId TCRYPT_BIT_BLOB FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCERT_ISSUER_SERIAL_NUMBER = struct { FIssuer TCERT_NAME_BLOB FSerialNumber TCRYPT_INTEGER_BLOB } type TCERT_KEYGEN_REQUEST_INFO = struct { FdwVersion TDWORD FSubjectPublicKeyInfo TCERT_PUBLIC_KEY_INFO FpwszChallengeString TLPWSTR } type TCERT_KEY_ATTRIBUTES_INFO = struct { FKeyId TCRYPT_DATA_BLOB FIntendedKeyUsage TCRYPT_BIT_BLOB FpPrivateKeyUsagePeriod TPCERT_PRIVATE_KEY_VALIDITY } type TCERT_KEY_USAGE_RESTRICTION_INFO = struct { FcCertPolicyId TDWORD FrgCertPolicyId TPCERT_POLICY_ID FRestrictedKeyUsage TCRYPT_BIT_BLOB } type TCERT_LDAP_STORE_OPENED_PARA = struct { FpvLdapSessionHandle uintptr FpwszLdapUrl TLPCWSTR } type TCERT_LOGOTYPE_AUDIO = struct { FLogotypeDetails TCERT_LOGOTYPE_DETAILS FpLogotypeAudioInfo TPCERT_LOGOTYPE_AUDIO_INFO } type TCERT_LOGOTYPE_AUDIO_INFO = struct { FdwFileSize TDWORD FdwPlayTime TDWORD FdwChannels TDWORD FdwSampleRate TDWORD FpwszLanguage TLPWSTR } type TCERT_LOGOTYPE_DATA = struct { FcLogotypeImage TDWORD FrgLogotypeImage TPCERT_LOGOTYPE_IMAGE FcLogotypeAudio TDWORD FrgLogotypeAudio TPCERT_LOGOTYPE_AUDIO } type TCERT_LOGOTYPE_DETAILS = struct { FpwszMimeType TLPWSTR FcHashedUrl TDWORD FrgHashedUrl TPCERT_HASHED_URL } type TCERT_LOGOTYPE_EXT_INFO = struct { FcCommunityLogo TDWORD FrgCommunityLogo TPCERT_LOGOTYPE_INFO FpIssuerLogo TPCERT_LOGOTYPE_INFO FpSubjectLogo TPCERT_LOGOTYPE_INFO FcOtherLogo TDWORD FrgOtherLogo TPCERT_OTHER_LOGOTYPE_INFO } type TCERT_LOGOTYPE_IMAGE = struct { FLogotypeDetails TCERT_LOGOTYPE_DETAILS FpLogotypeImageInfo TPCERT_LOGOTYPE_IMAGE_INFO } type TCERT_LOGOTYPE_IMAGE_INFO = struct { FdwLogotypeImageInfoChoice TDWORD FdwFileSize TDWORD FdwXSize TDWORD FdwYSize TDWORD FdwLogotypeImageResolutionChoice TDWORD F__ccgo5_20 struct { FdwTableSize [0]TDWORD FdwNumBits TDWORD } FpwszLanguage TLPWSTR } type TCERT_LOGOTYPE_REFERENCE = struct { FcHashedUrl TDWORD FrgHashedUrl TPCERT_HASHED_URL } type TCERT_NAME_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCERT_NAME_CONSTRAINTS_INFO = struct { FcPermittedSubtree TDWORD FrgPermittedSubtree TPCERT_GENERAL_SUBTREE FcExcludedSubtree TDWORD FrgExcludedSubtree TPCERT_GENERAL_SUBTREE } type TCERT_NAME_INFO = struct { FcRDN TDWORD FrgRDN TPCERT_RDN } type TCERT_NAME_VALUE = struct { FdwValueType TDWORD FValue TCERT_RDN_VALUE_BLOB } type TCERT_OR_CRL_BLOB = struct { FdwChoice TDWORD FcbEncoded TDWORD FpbEncoded uintptr } type TCERT_OR_CRL_BUNDLE = struct { FcItem TDWORD FrgItem TPCERT_OR_CRL_BLOB } type TCERT_OTHER_LOGOTYPE_INFO = struct { FpszObjId TLPSTR FLogotypeInfo TCERT_LOGOTYPE_INFO } type TCERT_OTHER_NAME = struct { FpszObjId TLPSTR FValue TCRYPT_OBJID_BLOB } type TCERT_PAIR = struct { FForward TCERT_BLOB FReverse TCERT_BLOB } type TCERT_PHYSICAL_STORE_INFO = struct { FcbSize TDWORD FpszOpenStoreProvider TLPSTR FdwOpenEncodingType TDWORD FdwOpenFlags TDWORD FOpenParameters TCRYPT_DATA_BLOB FdwFlags TDWORD FdwPriority TDWORD } type TCERT_POLICIES_INFO = struct { FcPolicyInfo TDWORD FrgPolicyInfo uintptr } type TCERT_POLICY95_QUALIFIER1 = struct { FpszPracticesReference TLPWSTR FpszNoticeIdentifier TLPSTR FpszNSINoticeIdentifier TLPSTR FcCPSURLs TDWORD FrgCPSURLs uintptr } type TCERT_POLICY_CONSTRAINTS_INFO = struct { FfRequireExplicitPolicy TWINBOOL FdwRequireExplicitPolicySkipCerts TDWORD FfInhibitPolicyMapping TWINBOOL FdwInhibitPolicyMappingSkipCerts TDWORD } type TCERT_POLICY_ID = struct { FcCertPolicyElementId TDWORD FrgpszCertPolicyElementId uintptr } type TCERT_POLICY_INFO = struct { FpszPolicyIdentifier TLPSTR FcPolicyQualifier TDWORD FrgPolicyQualifier uintptr } type TCERT_POLICY_MAPPING = struct { FpszIssuerDomainPolicy TLPSTR FpszSubjectDomainPolicy TLPSTR } type TCERT_POLICY_MAPPINGS_INFO = struct { FcPolicyMapping TDWORD FrgPolicyMapping TPCERT_POLICY_MAPPING } type TCERT_POLICY_QUALIFIER_INFO = struct { FpszPolicyQualifierId TLPSTR FQualifier TCRYPT_OBJID_BLOB } type TCERT_POLICY_QUALIFIER_NOTICE_REFERENCE = struct { FpszOrganization TLPSTR FcNoticeNumbers TDWORD FrgNoticeNumbers uintptr } type TCERT_POLICY_QUALIFIER_USER_NOTICE = struct { FpNoticeReference uintptr FpszDisplayText TLPWSTR } type TCERT_PRIVATE_KEY_VALIDITY = struct { FNotBefore TFILETIME FNotAfter TFILETIME } type TCERT_PUBLIC_KEY_INFO = struct { FAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FPublicKey TCRYPT_BIT_BLOB } type TCERT_QC_STATEMENT = struct { FpszStatementId TLPSTR FStatementInfo TCRYPT_OBJID_BLOB } type TCERT_QC_STATEMENTS_EXT_INFO = struct { FcStatement TDWORD FrgStatement TPCERT_QC_STATEMENT } type TCERT_RDN = struct { FcRDNAttr TDWORD FrgRDNAttr TPCERT_RDN_ATTR } type TCERT_RDN_ATTR = struct { FpszObjId TLPSTR FdwValueType TDWORD FValue TCERT_RDN_VALUE_BLOB } type TCERT_RDN_VALUE_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCERT_REGISTRY_STORE_CLIENT_GPT_PARA = struct { FhKeyBase THKEY FpwszRegPath TLPWSTR } type TCERT_REGISTRY_STORE_ROAMING_PARA = struct { FhKey THKEY FpwszStoreDirectory TLPWSTR } type TCERT_REQUEST_INFO = struct { FdwVersion TDWORD FSubject TCERT_NAME_BLOB FSubjectPublicKeyInfo TCERT_PUBLIC_KEY_INFO FcAttribute TDWORD FrgAttribute TPCRYPT_ATTRIBUTE } type TCERT_REVOCATION_CHAIN_PARA = struct { FcbSize TDWORD FhChainEngine THCERTCHAINENGINE FhAdditionalStore THCERTSTORE FdwChainFlags TDWORD FdwUrlRetrievalTimeout TDWORD FpftCurrentTime TLPFILETIME FpftCacheResync TLPFILETIME FcbMaxUrlRetrievalByteCount TDWORD } type TCERT_REVOCATION_CRL_INFO = struct { FcbSize TDWORD FpBaseCrlContext TPCCRL_CONTEXT FpDeltaCrlContext TPCCRL_CONTEXT FpCrlEntry TPCRL_ENTRY FfDeltaCrlEntry TWINBOOL } type TCERT_REVOCATION_INFO = struct { FcbSize TDWORD FdwRevocationResult TDWORD FpszRevocationOid TLPCSTR FpvOidSpecificInfo TLPVOID FfHasFreshnessTime TWINBOOL FdwFreshnessTime TDWORD FpCrlInfo TPCERT_REVOCATION_CRL_INFO } type TCERT_REVOCATION_PARA = struct { FcbSize TDWORD FpIssuerCert TPCCERT_CONTEXT FcCertStore TDWORD FrgCertStore uintptr FhCrlStore THCERTSTORE FpftTimeToUse TLPFILETIME } type TCERT_REVOCATION_STATUS = struct { FcbSize TDWORD FdwIndex TDWORD FdwError TDWORD FdwReason TDWORD FfHasFreshnessTime TWINBOOL FdwFreshnessTime TDWORD } type TCERT_SELECT_CHAIN_PARA = struct { FhChainEngine THCERTCHAINENGINE FpTime TPFILETIME FhAdditionalStore THCERTSTORE FpChainPara TPCERT_CHAIN_PARA FdwFlags TDWORD } type TCERT_SELECT_CRITERIA = struct { FdwType TDWORD FcPara TDWORD FppPara uintptr } type TCERT_SERVER_OCSP_RESPONSE_CONTEXT = struct { FcbSize TDWORD FpbEncodedOcspResponse uintptr FcbEncodedOcspResponse TDWORD } type TCERT_SERVER_OCSP_RESPONSE_OPEN_PARA = struct { FcbSize TDWORD FdwFlags TDWORD FpcbUsedSize uintptr FpwszOcspDirectory TPWSTR FpfnUpdateCallback TPFN_CERT_SERVER_OCSP_RESPONSE_UPDATE_CALLBACK FpvUpdateCallbackArg TPVOID } type TCERT_SIGNED_CONTENT_INFO = struct { FToBeSigned TCRYPT_DER_BLOB FSignatureAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FSignature TCRYPT_BIT_BLOB } type TCERT_SIMPLE_CHAIN = struct { FcbSize TDWORD FTrustStatus TCERT_TRUST_STATUS FcElement TDWORD FrgpElement uintptr FpTrustListInfo TPCERT_TRUST_LIST_INFO FfHasRevocationFreshnessTime TWINBOOL FdwRevocationFreshnessTime TDWORD } type TCERT_STORE_PROV_FIND_INFO = struct { FcbSize TDWORD FdwMsgAndCertEncodingType TDWORD FdwFindFlags TDWORD FdwFindType TDWORD FpvFindPara uintptr } type TCERT_STORE_PROV_INFO = struct { FcbSize TDWORD FcStoreProvFunc TDWORD FrgpvStoreProvFunc uintptr FhStoreProv THCERTSTOREPROV FdwStoreProvFlags TDWORD FhStoreProvFuncAddr2 THCRYPTOIDFUNCADDR } type TCERT_STRONG_SIGN_PARA = struct { FcbSize TDWORD FdwInfoChoice TDWORD F__ccgo2_8 struct { FpSerializedInfo [0]TPCERT_STRONG_SIGN_SERIALIZED_INFO FpszOID [0]TLPSTR FpvInfo uintptr } } type TCERT_STRONG_SIGN_SERIALIZED_INFO = struct { FdwFlags TDWORD FpwszCNGSignHashAlgids TLPWSTR FpwszCNGPubKeyMinBitLengths TLPWSTR } type TCERT_SUBJECT_INFO_ACCESS = struct { FcAccDescr TDWORD FrgAccDescr TPCERT_ACCESS_DESCRIPTION } type TCERT_SUPPORTED_ALGORITHM_INFO = struct { FAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FIntendedKeyUsage TCRYPT_BIT_BLOB FIntendedCertPolicies TCERT_POLICIES_INFO } type TCERT_SYSTEM_STORE_INFO = struct { FcbSize TDWORD } type TCERT_TEMPLATE_EXT = struct { FpszObjId TLPSTR FdwMajorVersion TDWORD FfMinorVersion TWINBOOL FdwMinorVersion TDWORD } type TCERT_TPM_SPECIFICATION_INFO = struct { FpwszFamily TLPWSTR FdwLevel TDWORD FdwRevision TDWORD } type TCERT_TRUST_LIST_INFO = struct { FcbSize TDWORD FpCtlEntry TPCTL_ENTRY FpCtlContext TPCCTL_CONTEXT } type TCERT_TRUST_STATUS = struct { FdwErrorStatus TDWORD FdwInfoStatus TDWORD } type TCERT_USAGE_MATCH = struct { FdwType TDWORD FUsage TCERT_ENHKEY_USAGE } type TCERT_X942_DH_PARAMETERS = struct { Fp TCRYPT_UINT_BLOB Fg TCRYPT_UINT_BLOB Fq TCRYPT_UINT_BLOB Fj TCRYPT_UINT_BLOB FpValidationParams TPCERT_X942_DH_VALIDATION_PARAMS } type TCERT_X942_DH_VALIDATION_PARAMS = struct { Fseed TCRYPT_BIT_BLOB FpgenCounter TDWORD } type TCFG_CALL_TARGET_INFO = struct { FOffset TULONG_PTR FFlags TULONG_PTR } type TCHANGEFILTERSTRUCT = struct { FcbSize TDWORD FExtStatus TDWORD } type TCHANGEKIND = int32 type TCHANGER_DEVICE_PROBLEM_TYPE = int32 type TCHANGER_ELEMENT = struct { FElementType TELEMENT_TYPE FElementAddress TDWORD } type TCHANGER_ELEMENT_LIST = struct { FElement TCHANGER_ELEMENT FNumberOfElements TDWORD } type TCHANGER_ELEMENT_STATUS = struct { FElement TCHANGER_ELEMENT FSrcElementAddress TCHANGER_ELEMENT FFlags TDWORD FExceptionCode TDWORD FTargetId TBYTE FLun TBYTE FReserved TWORD FPrimaryVolumeID [36]TBYTE FAlternateVolumeID [36]TBYTE } type TCHANGER_ELEMENT_STATUS_EX = struct { FElement TCHANGER_ELEMENT FSrcElementAddress TCHANGER_ELEMENT FFlags TDWORD FExceptionCode TDWORD FTargetId TBYTE FLun TBYTE FReserved TWORD FPrimaryVolumeID [36]TBYTE FAlternateVolumeID [36]TBYTE FVendorIdentification [8]TBYTE FProductIdentification [16]TBYTE FSerialNumber [32]TBYTE } type TCHANGER_EXCHANGE_MEDIUM = struct { FTransport TCHANGER_ELEMENT FSource TCHANGER_ELEMENT FDestination1 TCHANGER_ELEMENT FDestination2 TCHANGER_ELEMENT FFlip1 TBOOLEAN FFlip2 TBOOLEAN } type TCHANGER_INITIALIZE_ELEMENT_STATUS = struct { FElementList TCHANGER_ELEMENT_LIST FBarCodeScan TBOOLEAN } type TCHANGER_MOVE_MEDIUM = struct { FTransport TCHANGER_ELEMENT FSource TCHANGER_ELEMENT FDestination TCHANGER_ELEMENT FFlip TBOOLEAN } type TCHANGER_PRODUCT_DATA = struct { FVendorId [8]TBYTE FProductId [16]TBYTE FRevision [4]TBYTE FSerialNumber [32]TBYTE FDeviceType TBYTE } type TCHANGER_READ_ELEMENT_STATUS = struct { FElementList TCHANGER_ELEMENT_LIST FVolumeTagInfo TBOOLEAN } type TCHANGER_SEND_VOLUME_TAG_INFORMATION = struct { FStartingElement TCHANGER_ELEMENT FActionCode TDWORD FVolumeIDTemplate [40]TBYTE } type TCHANGER_SET_ACCESS = struct { FElement TCHANGER_ELEMENT FControl TDWORD } type TCHANGER_SET_POSITION = struct { FTransport TCHANGER_ELEMENT FDestination TCHANGER_ELEMENT FFlip TBOOLEAN } type TCHAR = int8 type TCHARSETINFO = struct { FciCharset TUINT FciACP TUINT Ffs TFONTSIGNATURE } type TCHAR_INFO = struct { FChar struct { FAsciiChar [0]TCHAR FUnicodeChar TWCHAR } FAttributes TWORD } type TCHOOSECOLOR = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THWND FrgbResult TCOLORREF FlpCustColors uintptr FFlags TDWORD FlCustData TLPARAM FlpfnHook TLPCCHOOKPROC FlpTemplateName TLPCSTR } type TCHOOSECOLORA = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THWND FrgbResult TCOLORREF FlpCustColors uintptr FFlags TDWORD FlCustData TLPARAM FlpfnHook TLPCCHOOKPROC FlpTemplateName TLPCSTR } type TCHOOSECOLORW = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THWND FrgbResult TCOLORREF FlpCustColors uintptr FFlags TDWORD FlCustData TLPARAM FlpfnHook TLPCCHOOKPROC FlpTemplateName TLPCWSTR } type TCHOOSEFONT = struct { FlStructSize TDWORD FhwndOwner THWND FhDC THDC FlpLogFont TLPLOGFONTA FiPointSize TINT FFlags TDWORD FrgbColors TCOLORREF FlCustData TLPARAM FlpfnHook TLPCFHOOKPROC FlpTemplateName TLPCSTR FhInstance THINSTANCE FlpszStyle TLPSTR FnFontType TWORD F___MISSING_ALIGNMENT__ TWORD FnSizeMin TINT FnSizeMax TINT } type TCHOOSEFONTA = struct { FlStructSize TDWORD FhwndOwner THWND FhDC THDC FlpLogFont TLPLOGFONTA FiPointSize TINT FFlags TDWORD FrgbColors TCOLORREF FlCustData TLPARAM FlpfnHook TLPCFHOOKPROC FlpTemplateName TLPCSTR FhInstance THINSTANCE FlpszStyle TLPSTR FnFontType TWORD F___MISSING_ALIGNMENT__ TWORD FnSizeMin TINT FnSizeMax TINT } type TCHOOSEFONTW = struct { FlStructSize TDWORD FhwndOwner THWND FhDC THDC FlpLogFont TLPLOGFONTW FiPointSize TINT FFlags TDWORD FrgbColors TCOLORREF FlCustData TLPARAM FlpfnHook TLPCFHOOKPROC FlpTemplateName TLPCWSTR FhInstance THINSTANCE FlpszStyle TLPWSTR FnFontType TWORD F___MISSING_ALIGNMENT__ TWORD FnSizeMin TINT FnSizeMax TINT } type TCIEXYZ = struct { FciexyzX TFXPT2DOT30 FciexyzY TFXPT2DOT30 FciexyzZ TFXPT2DOT30 } type TCIEXYZTRIPLE = struct { FciexyzRed TCIEXYZ FciexyzGreen TCIEXYZ FciexyzBlue TCIEXYZ } type TCIP_STATUS = int32 const TCI_SRCCHARSET = 1 const TCI_SRCCODEPAGE = 2 const TCI_SRCFONTSIG = 3 const TCI_SRCLOCALE = 4096 type TCLAIM_SECURITY_ATTRIBUTES_INFORMATION = struct { FVersion TWORD FReserved TWORD FAttributeCount TDWORD FAttribute struct { FpAttributeV1 TPCLAIM_SECURITY_ATTRIBUTE_V1 } } type TCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = struct { FpValue TPVOID FValueLength TDWORD } type TCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = struct { FName TDWORD FValueType TWORD FReserved TWORD FFlags TDWORD FValueCount TDWORD FValues struct { FpUint64 [0][1]TDWORD FppString [0][1]TDWORD FpFqbn [0][1]TDWORD FpOctetString [0][1]TDWORD FpInt64 [1]TDWORD } } type TCLAIM_SECURITY_ATTRIBUTE_V1 = struct { FName TPWSTR FValueType TWORD FReserved TWORD FFlags TDWORD FValueCount TDWORD FValues struct { FpUint64 [0]TPDWORD64 FppString [0]uintptr FpFqbn [0]TPCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE FpOctetString [0]TPCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE FpInt64 TPLONG64 } } type TCLASS_MEDIA_CHANGE_CONTEXT = struct { FMediaChangeCount TDWORD FNewState TDWORD } type TCLEANLOCALSTORAGE = struct { FpInterface uintptr FpStorage TPVOID Fflags TDWORD } type TCLIENTCREATESTRUCT = struct { FhWindowMenu THANDLE FidFirstChild TUINT } type TCLIENT_CALL_RETURN = struct { FSimple [0]TLONG_PTR FPointer uintptr } type TCLIPDATA = struct { FcbSize TULONG FulClipFmt TLONG FpClipData uintptr } type TCLIPFORMAT = uint16 type TCLSCTX = int32 type TCLSID = struct { FData1 uint32 FData2 uint16 FData3 uint16 FData4 [8]uint8 } type TCMC_ADD_ATTRIBUTES_INFO = struct { FdwCmcDataReference TDWORD FcCertReference TDWORD FrgdwCertReference uintptr FcAttribute TDWORD FrgAttribute TPCRYPT_ATTRIBUTE } type TCMC_ADD_EXTENSIONS_INFO = struct { FdwCmcDataReference TDWORD FcCertReference TDWORD FrgdwCertReference uintptr FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCMC_DATA_INFO = struct { FcTaggedAttribute TDWORD FrgTaggedAttribute TPCMC_TAGGED_ATTRIBUTE FcTaggedRequest TDWORD FrgTaggedRequest TPCMC_TAGGED_REQUEST FcTaggedContentInfo TDWORD FrgTaggedContentInfo TPCMC_TAGGED_CONTENT_INFO FcTaggedOtherMsg TDWORD FrgTaggedOtherMsg TPCMC_TAGGED_OTHER_MSG } type TCMC_PEND_INFO = struct { FPendToken TCRYPT_DATA_BLOB FPendTime TFILETIME } type TCMC_RESPONSE_INFO = struct { FcTaggedAttribute TDWORD FrgTaggedAttribute TPCMC_TAGGED_ATTRIBUTE FcTaggedContentInfo TDWORD FrgTaggedContentInfo TPCMC_TAGGED_CONTENT_INFO FcTaggedOtherMsg TDWORD FrgTaggedOtherMsg TPCMC_TAGGED_OTHER_MSG } type TCMC_TAGGED_ATTRIBUTE = struct { FdwBodyPartID TDWORD FAttribute TCRYPT_ATTRIBUTE } type TCMC_TAGGED_CERT_REQUEST = struct { FdwBodyPartID TDWORD FSignedCertRequest TCRYPT_DER_BLOB } type TCMC_TAGGED_CONTENT_INFO = struct { FdwBodyPartID TDWORD FEncodedContentInfo TCRYPT_DER_BLOB } type TCMC_TAGGED_OTHER_MSG = struct { FdwBodyPartID TDWORD FpszObjId TLPSTR FValue TCRYPT_OBJID_BLOB } type TCMSG_ATTR = struct { FcAttr TDWORD FrgAttr TPCRYPT_ATTRIBUTE } type TCMSG_CMS_SIGNER_INFO = struct { FdwVersion TDWORD FSignerId TCERT_ID FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FHashEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FEncryptedHash TCRYPT_DATA_BLOB FAuthAttrs TCRYPT_ATTRIBUTES FUnauthAttrs TCRYPT_ATTRIBUTES } type TCMSG_CNG_CONTENT_DECRYPT_INFO = struct { FcbSize TDWORD FContentEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpfnAlloc TPFN_CMSG_ALLOC FpfnFree TPFN_CMSG_FREE FhNCryptKey TNCRYPT_KEY_HANDLE FpbContentEncryptKey uintptr FcbContentEncryptKey TDWORD FhCNGContentEncryptKey TBCRYPT_KEY_HANDLE FpbCNGContentEncryptKeyObject uintptr } type TCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA = struct { FcbSize TDWORD FdwSignerIndex TDWORD Fblob TCRYPT_DATA_BLOB } type TCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA = struct { FcbSize TDWORD FdwSignerIndex TDWORD FdwUnauthAttrIndex TDWORD } type TCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA = struct { FcbSize TDWORD FhCryptProv THCRYPTPROV_LEGACY FdwSignerIndex TDWORD FdwSignerType TDWORD FpvSigner uintptr } type TCMSG_ENCRYPTED_ENCODE_INFO = struct { FcbSize TDWORD FContentEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpvEncryptionAuxInfo uintptr } type TCMSG_ENVELOPED_ENCODE_INFO = struct { FcbSize TDWORD FhCryptProv THCRYPTPROV_LEGACY FContentEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpvEncryptionAuxInfo uintptr FcRecipients TDWORD FrgpRecipients uintptr } type TCMSG_HASHED_ENCODE_INFO = struct { FcbSize TDWORD FhCryptProv THCRYPTPROV_LEGACY FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpvHashAuxInfo uintptr } type TCMSG_KEY_AGREE_KEY_ENCRYPT_INFO = struct { FcbSize TDWORD FEncryptedKey TCRYPT_DATA_BLOB } type TCMSG_KEY_TRANS_ENCRYPT_INFO = struct { FcbSize TDWORD FdwRecipientIndex TDWORD FKeyEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FEncryptedKey TCRYPT_DATA_BLOB FdwFlags TDWORD } type TCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO = struct { FcbSize TDWORD FKeyEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpvKeyEncryptionAuxInfo uintptr FhCryptProv THCRYPTPROV_LEGACY FRecipientPublicKey TCRYPT_BIT_BLOB FRecipientId TCERT_ID } type TCMSG_KEY_TRANS_RECIPIENT_INFO = struct { FdwVersion TDWORD FRecipientId TCERT_ID FKeyEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FEncryptedKey TCRYPT_DATA_BLOB } type TCMSG_MAIL_LIST_ENCRYPT_INFO = struct { FcbSize TDWORD FdwRecipientIndex TDWORD FKeyEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FEncryptedKey TCRYPT_DATA_BLOB FdwFlags TDWORD } type TCMSG_MAIL_LIST_RECIPIENT_INFO = struct { FdwVersion TDWORD FKeyId TCRYPT_DATA_BLOB FKeyEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FEncryptedKey TCRYPT_DATA_BLOB FDate TFILETIME FpOtherAttr TPCRYPT_ATTRIBUTE_TYPE_VALUE } type TCMSG_RC2_AUX_INFO = struct { FcbSize TDWORD FdwBitLen TDWORD } type TCMSG_RC4_AUX_INFO = struct { FcbSize TDWORD FdwBitLen TDWORD } type TCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO = struct { FcbSize TDWORD FRecipientPublicKey TCRYPT_BIT_BLOB FRecipientId TCERT_ID FDate TFILETIME FpOtherAttr TPCRYPT_ATTRIBUTE_TYPE_VALUE } type TCMSG_RECIPIENT_ENCRYPTED_KEY_INFO = struct { FRecipientId TCERT_ID FEncryptedKey TCRYPT_DATA_BLOB FDate TFILETIME FpOtherAttr TPCRYPT_ATTRIBUTE_TYPE_VALUE } type TCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO = struct { FcbSize TDWORD FSignedInfo TCMSG_SIGNED_ENCODE_INFO FEnvelopedInfo TCMSG_ENVELOPED_ENCODE_INFO } type TCMSG_SIGNED_ENCODE_INFO = struct { FcbSize TDWORD FcSigners TDWORD FrgSigners TPCMSG_SIGNER_ENCODE_INFO FcCertEncoded TDWORD FrgCertEncoded TPCERT_BLOB FcCrlEncoded TDWORD FrgCrlEncoded TPCRL_BLOB } type TCMSG_SIGNER_INFO = struct { FdwVersion TDWORD FIssuer TCERT_NAME_BLOB FSerialNumber TCRYPT_INTEGER_BLOB FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FHashEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FEncryptedHash TCRYPT_DATA_BLOB FAuthAttrs TCRYPT_ATTRIBUTES FUnauthAttrs TCRYPT_ATTRIBUTES } type TCMSG_SP3_COMPATIBLE_AUX_INFO = struct { FcbSize TDWORD FdwFlags TDWORD } type TCMSG_STREAM_INFO = struct { FcbContent TDWORD FpfnStreamOutput TPFN_CMSG_STREAM_OUTPUT FpvArg uintptr } type TCMS_DH_KEY_INFO = struct { FdwVersion TDWORD FAlgid TALG_ID FpszContentEncObjId TLPSTR FPubInfo TCRYPT_DATA_BLOB FpReserved uintptr } type TCMS_KEY_INFO = struct { FdwVersion TDWORD FAlgid TALG_ID FpbOID uintptr FcbOID TDWORD } type TCM_POWER_DATA = struct { FPD_Size TDWORD FPD_MostRecentPowerState TDEVICE_POWER_STATE FPD_Capabilities TDWORD FPD_D1Latency TDWORD FPD_D2Latency TDWORD FPD_D3Latency TDWORD FPD_PowerStateMapping [7]TDEVICE_POWER_STATE FPD_DeepestSystemWake TSYSTEM_POWER_STATE } type TCM_Power_Data_s = TCM_POWER_DATA type TCOAUTHIDENTITY = struct { FUser uintptr FUserLength TULONG FDomain uintptr FDomainLength TULONG FPassword uintptr FPasswordLength TULONG FFlags TULONG } type TCOAUTHINFO = struct { FdwAuthnSvc TDWORD FdwAuthzSvc TDWORD FpwszServerPrincName TLPWSTR FdwAuthnLevel TDWORD FdwImpersonationLevel TDWORD FpAuthIdentityData uintptr FdwCapabilities TDWORD } type TCODEBASEHOLD = struct { FcbSize TULONG FszDistUnit TLPWSTR FszCodeBase TLPWSTR FdwVersionMS TDWORD FdwVersionLS TDWORD FdwStyle TDWORD } type TCODEPAGE_ENUMPROCA = uintptr type TCODEPAGE_ENUMPROCW = uintptr type TCOINIT = int32 type TCOINITBASE = int32 type TCOLOR16 = uint16 type TCOLORADJUSTMENT = struct { FcaSize TWORD FcaFlags TWORD FcaIlluminantIndex TWORD FcaRedGamma TWORD FcaGreenGamma TWORD FcaBlueGamma TWORD FcaReferenceBlack TWORD FcaReferenceWhite TWORD FcaContrast TSHORT FcaBrightness TSHORT FcaColorfulness TSHORT FcaRedGreenTint TSHORT } type TCOLORREF = uint32 type TCOMBOBOXINFO = struct { FcbSize TDWORD FrcItem TRECT FrcButton TRECT FstateButton TDWORD FhwndCombo THWND FhwndItem THWND FhwndList THWND } type TCOMMCONFIG = struct { FdwSize TDWORD FwVersion TWORD FwReserved TWORD Fdcb TDCB FdwProviderSubType TDWORD FdwProviderOffset TDWORD FdwProviderSize TDWORD FwcProviderData [1]TWCHAR } type TCOMMPROP = struct { FwPacketLength TWORD FwPacketVersion TWORD FdwServiceMask TDWORD FdwReserved1 TDWORD FdwMaxTxQueue TDWORD FdwMaxRxQueue TDWORD FdwMaxBaud TDWORD FdwProvSubType TDWORD FdwProvCapabilities TDWORD FdwSettableParams TDWORD FdwSettableBaud TDWORD FwSettableData TWORD FwSettableStopParity TWORD FdwCurrentTxQueue TDWORD FdwCurrentRxQueue TDWORD FdwProvSpec1 TDWORD FdwProvSpec2 TDWORD FwcProvChar [1]TWCHAR } type TCOMMTIMEOUTS = struct { FReadIntervalTimeout TDWORD FReadTotalTimeoutMultiplier TDWORD FReadTotalTimeoutConstant TDWORD FWriteTotalTimeoutMultiplier TDWORD FWriteTotalTimeoutConstant TDWORD } type TCOMM_FAULT_OFFSETS = struct { FCommOffset int16 FFaultOffset int16 } type TCOMPACT_VIRTUAL_DISK_FLAG = int32 type TCOMPACT_VIRTUAL_DISK_PARAMETERS = struct { FVersion TCOMPACT_VIRTUAL_DISK_VERSION F__ccgo1_4 struct { FVersion1 struct { FReserved TULONG } } } type TCOMPACT_VIRTUAL_DISK_VERSION = int32 type TCOMPAREITEMSTRUCT = struct { FCtlType TUINT FCtlID TUINT FhwndItem THWND FitemID1 TUINT FitemData1 TULONG_PTR FitemID2 TUINT FitemData2 TULONG_PTR FdwLocaleId TDWORD } type TCOMPARTMENT_ID = int32 type TCOMPATIBILITY_CONTEXT_ELEMENT = struct { FId TGUID FType TACTCTX_COMPATIBILITY_ELEMENT_TYPE } type TCOMPONENT_FILTER = struct { FComponentFlags TDWORD } type TCOMPOSITIONFORM = struct { FdwStyle TDWORD FptCurrentPos TPOINT FrcArea TRECT } type TCOMPUTER_NAME_FORMAT = int32 type TCOMSD = int32 type TCOMSTAT = struct { F__ccgo0 uint32 FcbInQue TDWORD FcbOutQue TDWORD } type TCONDITION_VARIABLE = struct { FPtr TPVOID } type TCONFIRMSAFETY = struct { Fclsid TCLSID FpUnk uintptr FdwFlags TDWORD } type TCONNECTDLGSTRUCT = struct { FcbStructure TDWORD FhwndOwner THWND FlpConnRes TLPNETRESOURCEA FdwFlags TDWORD FdwDevNum TDWORD } type TCONNECTDLGSTRUCTA = struct { FcbStructure TDWORD FhwndOwner THWND FlpConnRes TLPNETRESOURCEA FdwFlags TDWORD FdwDevNum TDWORD } type TCONNECTDLGSTRUCTW = struct { FcbStructure TDWORD FhwndOwner THWND FlpConnRes TLPNETRESOURCEW FdwFlags TDWORD FdwDevNum TDWORD } type TCONSOLE_CURSOR_INFO = struct { FdwSize TDWORD FbVisible TWINBOOL } type TCONSOLE_FONT_INFO = struct { FnFont TDWORD FdwFontSize TCOORD } type TCONSOLE_FONT_INFOEX = struct { FcbSize TULONG FnFont TDWORD FdwFontSize TCOORD FFontFamily TUINT FFontWeight TUINT FFaceName [32]TWCHAR } type TCONSOLE_HISTORY_INFO = struct { FcbSize TUINT FHistoryBufferSize TUINT FNumberOfHistoryBuffers TUINT FdwFlags TDWORD } type TCONSOLE_READCONSOLE_CONTROL = struct { FnLength TULONG FnInitialChars TULONG FdwCtrlWakeupMask TULONG FdwControlKeyState TULONG } type TCONSOLE_SCREEN_BUFFER_INFO = struct { FdwSize TCOORD FdwCursorPosition TCOORD FwAttributes TWORD FsrWindow TSMALL_RECT FdwMaximumWindowSize TCOORD } type TCONSOLE_SCREEN_BUFFER_INFOEX = struct { FcbSize TULONG FdwSize TCOORD FdwCursorPosition TCOORD FwAttributes TWORD FsrWindow TSMALL_RECT FdwMaximumWindowSize TCOORD FwPopupAttributes TWORD FbFullscreenSupported TWINBOOL FColorTable [16]TCOLORREF } type TCONSOLE_SELECTION_INFO = struct { FdwFlags TDWORD FdwSelectionAnchor TCOORD FsrSelection TSMALL_RECT } type TCONVCONTEXT = struct { Fcb TUINT FwFlags TUINT FwCountryID TUINT FiCodePage int32 FdwLangID TDWORD FdwSecurity TDWORD Fqos TSECURITY_QUALITY_OF_SERVICE } type TCONVINFO = struct { Fcb TDWORD FhUser TDWORD_PTR FhConvPartner THCONV FhszSvcPartner THSZ FhszServiceReq THSZ FhszTopic THSZ FhszItem THSZ FwFmt TUINT FwType TUINT FwStatus TUINT FwConvst TUINT FwLastError TUINT FhConvList THCONVLIST FConvCtxt TCONVCONTEXT Fhwnd THWND FhwndPartner THWND } type TCOORD = struct { FX TSHORT FY TSHORT } type TCOPYDATASTRUCT = struct { FdwData TULONG_PTR FcbData TDWORD FlpData TPVOID } type TCOPYFILE2_COPY_PHASE = int32 type TCOPYFILE2_EXTENDED_PARAMETERS = struct { FdwSize TDWORD FdwCopyFlags TDWORD FpfCancel uintptr FpProgressRoutine TPCOPYFILE2_PROGRESS_ROUTINE FpvCallbackContext TPVOID } type TCOPYFILE2_MESSAGE_ACTION = int32 type TCOPYFILE2_MESSAGE_TYPE = int32 type TCOSERVERINFO = struct { FdwReserved1 TDWORD FpwszName TLPWSTR FpAuthInfo uintptr FdwReserved2 TDWORD } type TCOWAIT_FLAGS = int32 type TCO_MARSHALING_CONTEXT_ATTRIBUTES = int32 type TCO_MTA_USAGE_COOKIE = uintptr type TCO_MTA_USAGE_COOKIE__ = struct { Funused int32 } type TCPINFO = struct { FMaxCharSize TUINT FDefaultChar [2]TBYTE FLeadByte [12]TBYTE } type TCPINFOEX = struct { FMaxCharSize TUINT FDefaultChar [2]TBYTE FLeadByte [12]TBYTE FUnicodeDefaultChar TWCHAR FCodePage TUINT FCodePageName [260]TCHAR } type TCPINFOEXA = struct { FMaxCharSize TUINT FDefaultChar [2]TBYTE FLeadByte [12]TBYTE FUnicodeDefaultChar TWCHAR FCodePage TUINT FCodePageName [260]TCHAR } type TCPINFOEXW = struct { FMaxCharSize TUINT FDefaultChar [2]TBYTE FLeadByte [12]TBYTE FUnicodeDefaultChar TWCHAR FCodePage TUINT FCodePageName [260]TWCHAR } type TCPS_URLS = struct { FpszURL TLPWSTR FpAlgorithm uintptr FpDigest uintptr } const TCP_BSDURGENT = 28672 const TCP_NODELAY = 1 type TCREATEFILE2_EXTENDED_PARAMETERS = struct { FdwSize TDWORD FdwFileAttributes TDWORD FdwFileFlags TDWORD FdwSecurityQosFlags TDWORD FlpSecurityAttributes TLPSECURITY_ATTRIBUTES FhTemplateFile THANDLE } type TCREATESTRUCT = struct { FlpCreateParams TLPVOID FhInstance THINSTANCE FhMenu THMENU FhwndParent THWND Fcy int32 Fcx int32 Fy int32 Fx int32 Fstyle TLONG FlpszName TLPCSTR FlpszClass TLPCSTR FdwExStyle TDWORD } type TCREATESTRUCTA = struct { FlpCreateParams TLPVOID FhInstance THINSTANCE FhMenu THMENU FhwndParent THWND Fcy int32 Fcx int32 Fy int32 Fx int32 Fstyle TLONG FlpszName TLPCSTR FlpszClass TLPCSTR FdwExStyle TDWORD } type TCREATESTRUCTW = struct { FlpCreateParams TLPVOID FhInstance THINSTANCE FhMenu THMENU FhwndParent THWND Fcy int32 Fcx int32 Fy int32 Fx int32 Fstyle TLONG FlpszName TLPCWSTR FlpszClass TLPCWSTR FdwExStyle TDWORD } type TCREATE_DISK = struct { FPartitionStyle TPARTITION_STYLE F__ccgo1_4 struct { FGpt [0]TCREATE_DISK_GPT FMbr TCREATE_DISK_MBR F__ccgo_pad2 [16]byte } } type TCREATE_DISK_GPT = struct { FDiskId TGUID FMaxPartitionCount TDWORD } type TCREATE_DISK_MBR = struct { FSignature TDWORD } type TCREATE_PROCESS_DEBUG_INFO = struct { FhFile THANDLE FhProcess THANDLE FhThread THANDLE FlpBaseOfImage TLPVOID FdwDebugInfoFileOffset TDWORD FnDebugInfoSize TDWORD FlpThreadLocalBase TLPVOID FlpStartAddress TLPTHREAD_START_ROUTINE FlpImageName TLPVOID FfUnicode TWORD } type TCREATE_THREAD_DEBUG_INFO = struct { FhThread THANDLE FlpThreadLocalBase TLPVOID FlpStartAddress TLPTHREAD_START_ROUTINE } type TCREATE_VIRTUAL_DISK_FLAG = int32 type TCREATE_VIRTUAL_DISK_VERSION = int32 type TCRGB = struct { FbRed TBYTE FbGreen TBYTE FbBlue TBYTE FbExtra TBYTE } type TCRITICAL_SECTION = struct { FDebugInfo TPRTL_CRITICAL_SECTION_DEBUG FLockCount TLONG FRecursionCount TLONG FOwningThread THANDLE FLockSemaphore THANDLE FSpinCount TULONG_PTR } type TCRITICAL_SECTION_DEBUG = struct { FType TWORD FCreatorBackTraceIndex TWORD FCriticalSection uintptr FProcessLocksList TLIST_ENTRY FEntryCount TDWORD FContentionCount TDWORD FFlags TDWORD FCreatorBackTraceIndexHigh TWORD FSpareWORD TWORD } type TCRL_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRL_CONTEXT = struct { FdwCertEncodingType TDWORD FpbCrlEncoded uintptr FcbCrlEncoded TDWORD FpCrlInfo TPCRL_INFO FhCertStore THCERTSTORE } type TCRL_DIST_POINT = struct { FDistPointName TCRL_DIST_POINT_NAME FReasonFlags TCRYPT_BIT_BLOB FCRLIssuer TCERT_ALT_NAME_INFO } type TCRL_DIST_POINTS_INFO = struct { FcDistPoint TDWORD FrgDistPoint TPCRL_DIST_POINT } type TCRL_ENTRY = struct { FSerialNumber TCRYPT_INTEGER_BLOB FRevocationDate TFILETIME FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCRL_FIND_ISSUED_FOR_PARA = struct { FpSubjectCert TPCCERT_CONTEXT FpIssuerCert TPCCERT_CONTEXT } type TCRL_INFO = struct { FdwVersion TDWORD FSignatureAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FIssuer TCERT_NAME_BLOB FThisUpdate TFILETIME FNextUpdate TFILETIME FcCRLEntry TDWORD FrgCRLEntry TPCRL_ENTRY FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCRL_ISSUING_DIST_POINT = struct { FDistPointName TCRL_DIST_POINT_NAME FfOnlyContainsUserCerts TWINBOOL FfOnlyContainsCACerts TWINBOOL FOnlySomeReasonFlags TCRYPT_BIT_BLOB FfIndirectCRL TWINBOOL } type TCRL_REVOCATION_INFO = struct { FpCrlEntry TPCRL_ENTRY FpCrlContext TPCCRL_CONTEXT FpCrlIssuerChain TPCCERT_CHAIN_CONTEXT } type TCRM_PROTOCOL_ID = struct { FData1 uint32 FData2 uint16 FData3 uint16 FData4 [8]uint8 } type TCROSS_CERT_DIST_POINTS_INFO = struct { FdwSyncDeltaTime TDWORD FcDistPoint TDWORD FrgDistPoint TPCERT_ALT_NAME_INFO } type TCRYPTNET_URL_CACHE_FLUSH_INFO = struct { FcbSize TDWORD FdwExemptSeconds TDWORD FExpireTime TFILETIME } type TCRYPTNET_URL_CACHE_PRE_FETCH_INFO = struct { FcbSize TDWORD FdwObjectType TDWORD FdwError TDWORD FdwReserved TDWORD FThisUpdateTime TFILETIME FNextUpdateTime TFILETIME FPublishTime TFILETIME } type TCRYPTNET_URL_CACHE_RESPONSE_INFO = struct { FcbSize TDWORD FwResponseType TWORD FwResponseFlags TWORD FLastModifiedTime TFILETIME FdwMaxAge TDWORD FpwszETag TLPCWSTR FdwProxyId TDWORD } type TCRYPTPROTECT_PROMPTSTRUCT = struct { FcbSize TDWORD FdwPromptFlags TDWORD FhwndApp THWND FszPrompt TLPCWSTR } type TCRYPT_3DES_KEY_STATE = struct { FKey [24]uint8 FIV [8]uint8 FFeedback [8]uint8 } type TCRYPT_AES_128_KEY_STATE = struct { FKey [16]uint8 FIV [16]uint8 FEncryptionState [11][16]uint8 FDecryptionState [11][16]uint8 FFeedback [16]uint8 } type TCRYPT_AES_256_KEY_STATE = struct { FKey [32]uint8 FIV [16]uint8 FEncryptionState [15][16]uint8 FDecryptionState [15][16]uint8 FFeedback [16]uint8 } type TCRYPT_ALGORITHM_IDENTIFIER = struct { FpszObjId TLPSTR FParameters TCRYPT_OBJID_BLOB } type TCRYPT_ASYNC_RETRIEVAL_COMPLETION = struct { FpfnCompletion TPFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC FpvCompletion TLPVOID } type TCRYPT_ATTRIBUTE = struct { FpszObjId TLPSTR FcValue TDWORD FrgValue TPCRYPT_ATTR_BLOB } type TCRYPT_ATTRIBUTES = struct { FcAttr TDWORD FrgAttr TPCRYPT_ATTRIBUTE } type TCRYPT_ATTRIBUTE_TYPE_VALUE = struct { FpszObjId TLPSTR FValue TCRYPT_OBJID_BLOB } type TCRYPT_ATTR_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRYPT_BIT_BLOB = struct { FcbData TDWORD FpbData uintptr FcUnusedBits TDWORD } type TCRYPT_BLOB_ARRAY = struct { FcBlob TDWORD FrgBlob TPCRYPT_DATA_BLOB } type TCRYPT_CONTENT_INFO = struct { FpszObjId TLPSTR FContent TCRYPT_DER_BLOB } type TCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY = struct { FpszObjId TLPSTR FcValue TDWORD FrgValue TPCRYPT_DER_BLOB } type TCRYPT_CONTEXTS = struct { FcContexts TULONG FrgpszContexts uintptr } type TCRYPT_CONTEXT_CONFIG = struct { FdwFlags TULONG FdwReserved TULONG } type TCRYPT_CONTEXT_FUNCTIONS = struct { FcFunctions TULONG FrgpszFunctions uintptr } type TCRYPT_CONTEXT_FUNCTION_CONFIG = struct { FdwFlags TULONG FdwReserved TULONG } type TCRYPT_CONTEXT_FUNCTION_PROVIDERS = struct { FcProviders TULONG FrgpszProviders uintptr } type TCRYPT_CREDENTIALS = struct { FcbSize TDWORD FpszCredentialsOid TLPCSTR FpvCredentials TLPVOID } type TCRYPT_CSP_PROVIDER = struct { FdwKeySpec TDWORD FpwszProviderName TLPWSTR FSignature TCRYPT_BIT_BLOB } type TCRYPT_DATA_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRYPT_DECODE_PARA = struct { FcbSize TDWORD FpfnAlloc TPFN_CRYPT_ALLOC FpfnFree TPFN_CRYPT_FREE } type TCRYPT_DECRYPT_MESSAGE_PARA = struct { FcbSize TDWORD FdwMsgAndCertEncodingType TDWORD FcCertStore TDWORD FrghCertStore uintptr } type TCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA = struct { FcOID TDWORD FrgpszOID uintptr } type TCRYPT_DER_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRYPT_DES_KEY_STATE = struct { FKey [8]uint8 FIV [8]uint8 FFeedback [8]uint8 } type TCRYPT_DIGEST_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRYPT_ECC_CMS_SHARED_INFO = struct { FAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FEntityUInfo TCRYPT_DATA_BLOB FrgbSuppPubInfo [4]TBYTE } type TCRYPT_ECC_PRIVATE_KEY_INFO = struct { FdwVersion TDWORD FPrivateKey TCRYPT_DER_BLOB FszCurveOid TLPSTR FPublicKey TCRYPT_BIT_BLOB } type TCRYPT_ENCODE_PARA = struct { FcbSize TDWORD FpfnAlloc TPFN_CRYPT_ALLOC FpfnFree TPFN_CRYPT_FREE } type TCRYPT_ENCRYPTED_PRIVATE_KEY_INFO = struct { FEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FEncryptedPrivateKey TCRYPT_DATA_BLOB } type TCRYPT_ENCRYPT_MESSAGE_PARA = struct { FcbSize TDWORD FdwMsgEncodingType TDWORD FhCryptProv THCRYPTPROV_LEGACY FContentEncryptionAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpvEncryptionAuxInfo uintptr FdwFlags TDWORD FdwInnerContentType TDWORD } type TCRYPT_ENROLLMENT_NAME_VALUE_PAIR = struct { FpwszName TLPWSTR FpwszValue TLPWSTR } type TCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO = struct { FcbSize TDWORD FiDeltaCrlIndicator int32 FpftCacheResync TLPFILETIME FpLastSyncTime TLPFILETIME FpMaxAgeTime TLPFILETIME FpChainPara TPCERT_REVOCATION_CHAIN_PARA FpDeltaCrlIndicator TPCRYPT_INTEGER_BLOB } type TCRYPT_HASH_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRYPT_HASH_INFO = struct { FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FHash TCRYPT_HASH_BLOB } type TCRYPT_HASH_MESSAGE_PARA = struct { FcbSize TDWORD FdwMsgEncodingType TDWORD FhCryptProv THCRYPTPROV_LEGACY FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpvHashAuxInfo uintptr } type TCRYPT_IMAGE_REF = struct { FpszImage TPWSTR FdwFlags TULONG } type TCRYPT_IMAGE_REG = struct { FpszImage TPWSTR FcInterfaces TULONG FrgpInterfaces uintptr } type TCRYPT_INTEGER_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRYPT_INTERFACE_REG = struct { FdwInterface TULONG FdwFlags TULONG FcFunctions TULONG FrgpszFunctions uintptr } type TCRYPT_KEY_PROV_INFO = struct { FpwszContainerName TLPWSTR FpwszProvName TLPWSTR FdwProvType TDWORD FdwFlags TDWORD FcProvParam TDWORD FrgProvParam TPCRYPT_KEY_PROV_PARAM FdwKeySpec TDWORD } type TCRYPT_KEY_PROV_PARAM = struct { FdwParam TDWORD FpbData uintptr FcbData TDWORD FdwFlags TDWORD } type TCRYPT_KEY_SIGN_MESSAGE_PARA = struct { FcbSize TDWORD FdwMsgAndCertEncodingType TDWORD F__ccgo2_8 struct { FhNCryptKey [0]TNCRYPT_KEY_HANDLE FhCryptProv THCRYPTPROV } FdwKeySpec TDWORD FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpvHashAuxInfo uintptr FPubKeyAlgorithm TCRYPT_ALGORITHM_IDENTIFIER } type TCRYPT_KEY_VERIFY_MESSAGE_PARA = struct { FcbSize TDWORD FdwMsgEncodingType TDWORD FhCryptProv THCRYPTPROV_LEGACY } type TCRYPT_MASK_GEN_ALGORITHM = struct { FpszObjId TLPSTR FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER } type TCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE = struct { FcbSize TDWORD FpfnGet TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET FpfnRelease TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE FpfnFreePassword TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD FpfnFree TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE FpfnFreeIdentifier TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER } type TCRYPT_OBJID_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRYPT_OBJID_TABLE = struct { FdwAlgId TDWORD FpszObjId TLPCSTR } type TCRYPT_OID_FUNC_ENTRY = struct { FpszOID TLPCSTR FpvFuncAddr uintptr } type TCRYPT_PASSWORD_CREDENTIALS = struct { FcbSize TDWORD FpszUsername TLPSTR FpszPassword TLPSTR } type TCRYPT_PASSWORD_CREDENTIALSA = struct { FcbSize TDWORD FpszUsername TLPSTR FpszPassword TLPSTR } type TCRYPT_PASSWORD_CREDENTIALSW = struct { FcbSize TDWORD FpszUsername TLPWSTR FpszPassword TLPWSTR } type TCRYPT_PKCS12_PBE_PARAMS = struct { FiIterations int32 FcbSalt TULONG } type TCRYPT_PKCS8_EXPORT_PARAMS = struct { FhCryptProv THCRYPTPROV FdwKeySpec TDWORD FpszPrivateKeyObjId TLPSTR FpEncryptPrivateKeyFunc TPCRYPT_ENCRYPT_PRIVATE_KEY_FUNC FpVoidEncryptFunc TLPVOID } type TCRYPT_PKCS8_IMPORT_PARAMS = struct { FPrivateKey TCRYPT_DIGEST_BLOB FpResolvehCryptProvFunc TPCRYPT_RESOLVE_HCRYPTPROV_FUNC FpVoidResolveFunc TLPVOID FpDecryptPrivateKeyFunc TPCRYPT_DECRYPT_PRIVATE_KEY_FUNC FpVoidDecryptFunc TLPVOID } type TCRYPT_PRIVATE_KEY_BLOB_AND_PARAMS = struct { FPrivateKey TCRYPT_DIGEST_BLOB FpResolvehCryptProvFunc TPCRYPT_RESOLVE_HCRYPTPROV_FUNC FpVoidResolveFunc TLPVOID FpDecryptPrivateKeyFunc TPCRYPT_DECRYPT_PRIVATE_KEY_FUNC FpVoidDecryptFunc TLPVOID } type TCRYPT_PRIVATE_KEY_INFO = struct { FVersion TDWORD FAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FPrivateKey TCRYPT_DER_BLOB FpAttributes TPCRYPT_ATTRIBUTES } type TCRYPT_PROPERTY_REF = struct { FpszProperty TPWSTR FcbValue TULONG FpbValue TPUCHAR } type TCRYPT_PROVIDERS = struct { FcProviders TULONG FrgpszProviders uintptr } type TCRYPT_PROVIDER_REF = struct { FdwInterface TULONG FpszFunction TPWSTR FpszProvider TPWSTR FcProperties TULONG FrgpProperties uintptr FpUM TPCRYPT_IMAGE_REF FpKM TPCRYPT_IMAGE_REF } type TCRYPT_PROVIDER_REFS = struct { FcProviders TULONG FrgpProviders uintptr } type TCRYPT_PROVIDER_REG = struct { FcAliases TULONG FrgpszAliases uintptr FpUM TPCRYPT_IMAGE_REG FpKM TPCRYPT_IMAGE_REG } type TCRYPT_PSOURCE_ALGORITHM = struct { FpszObjId TLPSTR FEncodingParameters TCRYPT_DATA_BLOB } type TCRYPT_RC2_CBC_PARAMETERS = struct { FdwVersion TDWORD FfIV TWINBOOL FrgbIV [8]TBYTE } type TCRYPT_RC4_KEY_STATE = struct { FKey [16]uint8 FSBox [256]uint8 Fi uint8 Fj uint8 } type TCRYPT_RETRIEVE_AUX_INFO = struct { FcbSize TDWORD FpLastSyncTime uintptr FdwMaxUrlRetrievalByteCount TDWORD FpPreFetchInfo TPCRYPTNET_URL_CACHE_PRE_FETCH_INFO FpFlushInfo TPCRYPTNET_URL_CACHE_FLUSH_INFO FppResponseInfo uintptr FpwszCacheFileNamePrefix TLPWSTR FpftCacheResync TLPFILETIME FfProxyCacheRetrieval TWINBOOL FdwHttpStatusCode TDWORD } type TCRYPT_RSAES_OAEP_PARAMETERS = struct { FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FMaskGenAlgorithm TCRYPT_MASK_GEN_ALGORITHM FPSourceAlgorithm TCRYPT_PSOURCE_ALGORITHM } type TCRYPT_RSA_SSA_PSS_PARAMETERS = struct { FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FMaskGenAlgorithm TCRYPT_MASK_GEN_ALGORITHM FdwSaltLength TDWORD FdwTrailerField TDWORD } type TCRYPT_SEQUENCE_OF_ANY = struct { FcValue TDWORD FrgValue TPCRYPT_DER_BLOB } type TCRYPT_SIGN_MESSAGE_PARA = struct { FcbSize TDWORD FdwMsgEncodingType TDWORD FpSigningCert TPCCERT_CONTEXT FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FpvHashAuxInfo uintptr FcMsgCert TDWORD FrgpMsgCert uintptr FcMsgCrl TDWORD FrgpMsgCrl uintptr FcAuthAttr TDWORD FrgAuthAttr TPCRYPT_ATTRIBUTE FcUnauthAttr TDWORD FrgUnauthAttr TPCRYPT_ATTRIBUTE FdwFlags TDWORD FdwInnerContentType TDWORD } type TCRYPT_SMART_CARD_ROOT_INFO = struct { FrgbCardID [16]TBYTE Fluid TROOT_INFO_LUID } type TCRYPT_SMIME_CAPABILITIES = struct { FcCapability TDWORD FrgCapability TPCRYPT_SMIME_CAPABILITY } type TCRYPT_SMIME_CAPABILITY = struct { FpszObjId TLPSTR FParameters TCRYPT_OBJID_BLOB } type TCRYPT_TIMESTAMP_ACCURACY = struct { FdwSeconds TDWORD FdwMillis TDWORD FdwMicros TDWORD } type TCRYPT_TIMESTAMP_CONTEXT = struct { FcbEncoded TDWORD FpbEncoded uintptr FpTimeStamp TPCRYPT_TIMESTAMP_INFO } type TCRYPT_TIMESTAMP_INFO = struct { FdwVersion TDWORD FpszTSAPolicyId TLPSTR FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FHashedMessage TCRYPT_DER_BLOB FSerialNumber TCRYPT_INTEGER_BLOB FftTime TFILETIME FpvAccuracy TPCRYPT_TIMESTAMP_ACCURACY FfOrdering TWINBOOL FNonce TCRYPT_DER_BLOB FTsa TCRYPT_DER_BLOB FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCRYPT_TIMESTAMP_PARA = struct { FpszTSAPolicyId TLPCSTR FfRequestCerts TWINBOOL FNonce TCRYPT_INTEGER_BLOB FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCRYPT_TIMESTAMP_REQUEST = struct { FdwVersion TDWORD FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FHashedMessage TCRYPT_DER_BLOB FpszTSAPolicyId TLPSTR FNonce TCRYPT_INTEGER_BLOB FfCertReq TWINBOOL FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCRYPT_TIMESTAMP_RESPONSE = struct { FdwStatus TDWORD FcFreeText TDWORD FrgFreeText uintptr FFailureInfo TCRYPT_BIT_BLOB FContentInfo TCRYPT_DER_BLOB } type TCRYPT_TIME_STAMP_REQUEST_INFO = struct { FpszTimeStampAlgorithm TLPSTR FpszContentType TLPSTR FContent TCRYPT_OBJID_BLOB FcAttribute TDWORD FrgAttribute TPCRYPT_ATTRIBUTE } type TCRYPT_UINT_BLOB = struct { FcbData TDWORD FpbData uintptr } type TCRYPT_URL_ARRAY = struct { FcUrl TDWORD FrgwszUrl uintptr } type TCRYPT_URL_INFO = struct { FcbSize TDWORD FdwSyncDeltaTime TDWORD FcGroup TDWORD FrgcGroupEntry uintptr } type TCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO = struct { FCertSignHashCNGAlgPropData TCRYPT_DATA_BLOB FCertIssuerPubKeyBitLengthPropData TCRYPT_DATA_BLOB } type TCRYPT_VERIFY_MESSAGE_PARA = struct { FcbSize TDWORD FdwMsgAndCertEncodingType TDWORD FhCryptProv THCRYPTPROV_LEGACY FpfnGetSignerCertificate TPFN_CRYPT_GET_SIGNER_CERTIFICATE FpvGetArg uintptr } type TCRYPT_X942_OTHER_INFO = struct { FpszContentEncryptionObjId TLPSTR FrgbCounter [4]TBYTE FrgbKeyLength [4]TBYTE FPubInfo TCRYPT_DATA_BLOB } type TCSPLATFORM = struct { FdwPlatformId TDWORD FdwVersionHi TDWORD FdwVersionLo TDWORD FdwProcessorArch TDWORD } type TCS_STUB_INFO = struct { FWireCodeset uint32 FDesiredReceivingCodeset uint32 FCSArrayInfo uintptr } type TCS_TAG_GETTING_ROUTINE = uintptr type TCS_TYPE_FROM_NETCS_ROUTINE = uintptr type TCS_TYPE_LOCAL_SIZE_ROUTINE = uintptr type TCS_TYPE_NET_SIZE_ROUTINE = uintptr type TCS_TYPE_TO_NETCS_ROUTINE = uintptr type TCTL_ANY_SUBJECT_INFO = struct { FSubjectAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FSubjectIdentifier TCRYPT_DATA_BLOB } type TCTL_CONTEXT = struct { FdwMsgAndCertEncodingType TDWORD FpbCtlEncoded uintptr FcbCtlEncoded TDWORD FpCtlInfo TPCTL_INFO FhCertStore THCERTSTORE FhCryptMsg THCRYPTMSG FpbCtlContent uintptr FcbCtlContent TDWORD } type TCTL_ENTRY = struct { FSubjectIdentifier TCRYPT_DATA_BLOB FcAttribute TDWORD FrgAttribute TPCRYPT_ATTRIBUTE } type TCTL_FIND_SUBJECT_PARA = struct { FcbSize TDWORD FpUsagePara TPCTL_FIND_USAGE_PARA FdwSubjectType TDWORD FpvSubject uintptr } type TCTL_FIND_USAGE_PARA = struct { FcbSize TDWORD FSubjectUsage TCTL_USAGE FListIdentifier TCRYPT_DATA_BLOB FpSigner TPCERT_INFO } type TCTL_INFO = struct { FdwVersion TDWORD FSubjectUsage TCTL_USAGE FListIdentifier TCRYPT_DATA_BLOB FSequenceNumber TCRYPT_INTEGER_BLOB FThisUpdate TFILETIME FNextUpdate TFILETIME FSubjectAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FcCTLEntry TDWORD FrgCTLEntry TPCTL_ENTRY FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TCTL_USAGE = struct { FcUsageIdentifier TDWORD FrgpszUsageIdentifier uintptr } type TCTL_USAGE_MATCH = struct { FdwType TDWORD FUsage TCTL_USAGE } type TCTL_VERIFY_USAGE_PARA = struct { FcbSize TDWORD FListIdentifier TCRYPT_DATA_BLOB FcCtlStore TDWORD FrghCtlStore uintptr FcSignerStore TDWORD FrghSignerStore uintptr } type TCTL_VERIFY_USAGE_STATUS = struct { FcbSize TDWORD FdwError TDWORD FdwFlags TDWORD FppCtl uintptr FdwCtlEntryIndex TDWORD FppSigner uintptr FdwSignerIndex TDWORD } type TCURRENCYFMT = struct { FNumDigits TUINT FLeadingZero TUINT FGrouping TUINT FlpDecimalSep TLPSTR FlpThousandSep TLPSTR FNegativeOrder TUINT FPositiveOrder TUINT FlpCurrencySymbol TLPSTR } type TCURRENCYFMTA = struct { FNumDigits TUINT FLeadingZero TUINT FGrouping TUINT FlpDecimalSep TLPSTR FlpThousandSep TLPSTR FNegativeOrder TUINT FPositiveOrder TUINT FlpCurrencySymbol TLPSTR } type TCURRENCYFMTW = struct { FNumDigits TUINT FLeadingZero TUINT FGrouping TUINT FlpDecimalSep TLPWSTR FlpThousandSep TLPWSTR FNegativeOrder TUINT FPositiveOrder TUINT FlpCurrencySymbol TLPWSTR } type TCURSORINFO = struct { FcbSize TDWORD Fflags TDWORD FhCursor THCURSOR FptScreenPos TPOINT } type TCURSORSHAPE = struct { FxHotSpot int32 FyHotSpot int32 Fcx int32 Fcy int32 FcbWidth int32 FPlanes TBYTE FBitsPixel TBYTE } type TCUSTDATA = struct { FcCustData TDWORD FprgCustData TLPCUSTDATAITEM } type TCWMO_FLAGS = int32 type TCWPRETSTRUCT = struct { FlResult TLRESULT FlParam TLPARAM FwParam TWPARAM Fmessage TUINT Fhwnd THWND } type TCWPSTRUCT = struct { FlParam TLPARAM FwParam TWPARAM Fmessage TUINT Fhwnd THWND } const TC_CP_STROKE = 4 const TC_CR_90 = 8 const TC_CR_ANY = 16 const TC_EA_DOUBLE = 512 const TC_GP_TRAP = 2 const TC_HARDERR = 1 const TC_IA_ABLE = 1024 const TC_NORMAL = 0 const TC_OP_CHARACTER = 1 const TC_OP_STROKE = 2 const TC_RA_ABLE = 8192 const TC_RESERVED = 32768 const TC_SA_CONTIN = 256 const TC_SA_DOUBLE = 64 const TC_SA_INTEGER = 128 const TC_SCROLLBLT = 65536 const TC_SF_X_YINDEP = 32 const TC_SIGNAL = 3 const TC_SO_ABLE = 4096 const TC_UA_ABLE = 2048 const TC_VA_ABLE = 16384 type TCertKeyType = int32 type TDATADIR = int32 type TDATAINFO = struct { FulTotalSize TULONG FulavrPacketSize TULONG FulConnectSpeed TULONG FulProcessorSpeed TULONG } type TDATATYPES_INFO_1 = struct { FpName TLPSTR } type TDATATYPES_INFO_1A = struct { FpName TLPSTR } type TDATATYPES_INFO_1W = struct { FpName TLPWSTR } type TDATA_BLOB = struct { FcbData TDWORD FpbData uintptr } type TDATE = float64 type TDATEFMT_ENUMPROCA = uintptr type TDATEFMT_ENUMPROCEXA = uintptr type TDATEFMT_ENUMPROCEXEX = uintptr type TDATEFMT_ENUMPROCEXW = uintptr type TDATEFMT_ENUMPROCW = uintptr type TDCB = struct { FDCBlength TDWORD FBaudRate TDWORD F__ccgo8 uint32 FwReserved TWORD FXonLim TWORD FXoffLim TWORD FByteSize TBYTE FParity TBYTE FStopBits TBYTE FXonChar int8 FXoffChar int8 FErrorChar int8 FEofChar int8 FEvtChar int8 FwReserved1 TWORD } type TDCOM_CALL_STATE = int32 type TDDEACK = struct { F__ccgo0 uint16 } type TDDEADVISE = struct { F__ccgo0 uint16 FcfFormat int16 } type TDDEDATA = struct { F__ccgo0 uint16 FcfFormat int16 FValue [1]TBYTE } type TDDELN = struct { F__ccgo0 uint16 FcfFormat int16 } type TDDEML_MSG_HOOK_DATA = struct { FuiLo TUINT_PTR FuiHi TUINT_PTR FcbData TDWORD FData [8]TDWORD } type TDDEPOKE = struct { F__ccgo0 uint16 FcfFormat int16 FValue [1]TBYTE } type TDDEUP = struct { F__ccgo0 uint16 FcfFormat int16 Frgb [1]TBYTE } type TDEBUGHOOKINFO = struct { FidThread TDWORD FidThreadInstaller TDWORD FlParam TLPARAM FwParam TWPARAM Fcode int32 } type TDEBUG_EVENT = struct { FdwDebugEventCode TDWORD FdwProcessId TDWORD FdwThreadId TDWORD Fu struct { FCreateThread [0]TCREATE_THREAD_DEBUG_INFO FCreateProcessInfo [0]TCREATE_PROCESS_DEBUG_INFO FExitThread [0]TEXIT_THREAD_DEBUG_INFO FExitProcess [0]TEXIT_PROCESS_DEBUG_INFO FLoadDll [0]TLOAD_DLL_DEBUG_INFO FUnloadDll [0]TUNLOAD_DLL_DEBUG_INFO FDebugString [0]TOUTPUT_DEBUG_STRING_INFO FRipInfo [0]TRIP_INFO FException TEXCEPTION_DEBUG_INFO } } type TDECRYPTION_STATUS_BUFFER = struct { FNoEncryptedStreams TBOOLEAN } type TDELETEITEMSTRUCT = struct { FCtlType TUINT FCtlID TUINT FitemID TUINT FhwndItem THWND FitemData TULONG_PTR } type TDELETE_SNAPSHOT_VHDSET_FLAG = int32 type TDELETE_SNAPSHOT_VHDSET_PARAMETERS = struct { FVersion TDELETE_SNAPSHOT_VHDSET_VERSION F__ccgo1_4 struct { FVersion1 struct { FSnapshotId TGUID } } } type TDELETE_SNAPSHOT_VHDSET_VERSION = int32 type TDEPENDENT_DISK_FLAG = int32 type TDEP_SYSTEM_POLICY_TYPE = int32 type TDESCKIND = int32 type TDESIGNVECTOR = struct { FdvReserved TDWORD FdvNumAxes TDWORD FdvValues [16]TLONG } type TDESKTOPENUMPROC = uintptr type TDESKTOPENUMPROCA = uintptr type TDESKTOPENUMPROCW = uintptr type TDETACH_VIRTUAL_DISK_FLAG = int32 type TDETECTION_TYPE = int32 type TDEVICE_DATA_MANAGEMENT_SET_ACTION = uint32 type TDEVICE_DSM_NOTIFICATION_PARAMETERS = struct { FSize TULONG FFlags TULONG FNumFileTypeIDs TULONG FFileTypeID [1]TGUID } type TDEVICE_MANAGE_DATA_SET_ATTRIBUTES = struct { FSize TDWORD FAction TDEVICE_DATA_MANAGEMENT_SET_ACTION FFlags TDWORD FParameterBlockOffset TDWORD FParameterBlockLength TDWORD FDataSetRangesOffset TDWORD FDataSetRangesLength TDWORD } type TDEVICE_POWER_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FDeviceAttentionSupported TBOOLEAN FAsynchronousNotificationSupported TBOOLEAN FIdlePowerManagementEnabled TBOOLEAN FD3ColdEnabled TBOOLEAN FD3ColdSupported TBOOLEAN FNoVerifyDuringIdlePower TBOOLEAN FReserved [2]TBYTE FIdleTimeoutInMS TDWORD } type TDEVICE_POWER_STATE = int32 type TDEVICE_SEEK_PENALTY_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FIncursSeekPenalty TBOOLEAN } type TDEVICE_TRIM_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FTrimEnabled TBOOLEAN } type TDEVICE_WRITE_AGGREGATION_DESCRIPTOR = struct { FVersion TULONG FSize TULONG FBenefitsFromWriteAggregation TBOOLEAN } type TDEVMODE = struct { FdmDeviceName [32]TBYTE FdmSpecVersion TWORD FdmDriverVersion TWORD FdmSize TWORD FdmDriverExtra TWORD FdmFields TDWORD F__ccgo6_44 struct { F__ccgo1_0 [0]struct { FdmPosition TPOINTL FdmDisplayOrientation TDWORD FdmDisplayFixedOutput TDWORD } F__ccgo0_0 struct { FdmOrientation int16 FdmPaperSize int16 FdmPaperLength int16 FdmPaperWidth int16 FdmScale int16 FdmCopies int16 FdmDefaultSource int16 FdmPrintQuality int16 } } FdmColor int16 FdmDuplex int16 FdmYResolution int16 FdmTTOption int16 FdmCollate int16 FdmFormName [32]TBYTE FdmLogPixels TWORD FdmBitsPerPel TDWORD FdmPelsWidth TDWORD FdmPelsHeight TDWORD F__ccgo17_116 struct { FdmNup [0]TDWORD FdmDisplayFlags TDWORD } FdmDisplayFrequency TDWORD FdmICMMethod TDWORD FdmICMIntent TDWORD FdmMediaType TDWORD FdmDitherType TDWORD FdmReserved1 TDWORD FdmReserved2 TDWORD FdmPanningWidth TDWORD FdmPanningHeight TDWORD } type TDEVMODEA = struct { FdmDeviceName [32]TBYTE FdmSpecVersion TWORD FdmDriverVersion TWORD FdmSize TWORD FdmDriverExtra TWORD FdmFields TDWORD F__ccgo6_44 struct { F__ccgo1_0 [0]struct { FdmPosition TPOINTL FdmDisplayOrientation TDWORD FdmDisplayFixedOutput TDWORD } F__ccgo0_0 struct { FdmOrientation int16 FdmPaperSize int16 FdmPaperLength int16 FdmPaperWidth int16 FdmScale int16 FdmCopies int16 FdmDefaultSource int16 FdmPrintQuality int16 } } FdmColor int16 FdmDuplex int16 FdmYResolution int16 FdmTTOption int16 FdmCollate int16 FdmFormName [32]TBYTE FdmLogPixels TWORD FdmBitsPerPel TDWORD FdmPelsWidth TDWORD FdmPelsHeight TDWORD F__ccgo17_116 struct { FdmNup [0]TDWORD FdmDisplayFlags TDWORD } FdmDisplayFrequency TDWORD FdmICMMethod TDWORD FdmICMIntent TDWORD FdmMediaType TDWORD FdmDitherType TDWORD FdmReserved1 TDWORD FdmReserved2 TDWORD FdmPanningWidth TDWORD FdmPanningHeight TDWORD } type TDEVMODEW = struct { FdmDeviceName [32]TWCHAR FdmSpecVersion TWORD FdmDriverVersion TWORD FdmSize TWORD FdmDriverExtra TWORD FdmFields TDWORD F__ccgo6_76 struct { F__ccgo1_0 [0]struct { FdmPosition TPOINTL FdmDisplayOrientation TDWORD FdmDisplayFixedOutput TDWORD } F__ccgo0_0 struct { FdmOrientation int16 FdmPaperSize int16 FdmPaperLength int16 FdmPaperWidth int16 FdmScale int16 FdmCopies int16 FdmDefaultSource int16 FdmPrintQuality int16 } } FdmColor int16 FdmDuplex int16 FdmYResolution int16 FdmTTOption int16 FdmCollate int16 FdmFormName [32]TWCHAR FdmLogPixels TWORD FdmBitsPerPel TDWORD FdmPelsWidth TDWORD FdmPelsHeight TDWORD F__ccgo17_180 struct { FdmNup [0]TDWORD FdmDisplayFlags TDWORD } FdmDisplayFrequency TDWORD FdmICMMethod TDWORD FdmICMIntent TDWORD FdmMediaType TDWORD FdmDitherType TDWORD FdmReserved1 TDWORD FdmReserved2 TDWORD FdmPanningWidth TDWORD FdmPanningHeight TDWORD } type TDEVNAMES = struct { FwDriverOffset TWORD FwDeviceOffset TWORD FwOutputOffset TWORD FwDefault TWORD } type TDHPRIVKEY_VER3 = struct { Fmagic TDWORD FbitlenP TDWORD FbitlenQ TDWORD FbitlenJ TDWORD FbitlenX TDWORD FDSSSeed TDSSSEED } type TDHPUBKEY = struct { Fmagic TDWORD Fbitlen TDWORD } type TDHPUBKEY_VER3 = struct { Fmagic TDWORD FbitlenP TDWORD FbitlenQ TDWORD FbitlenJ TDWORD FDSSSeed TDSSSEED } type TDIALOG_CONTROL_DPI_CHANGE_BEHAVIORS = int32 type TDIALOG_DPI_CHANGE_BEHAVIORS = int32 type TDIBSECTION = struct { FdsBm TBITMAP FdsBmih TBITMAPINFOHEADER FdsBitfields [3]TDWORD FdshSection THANDLE FdsOffset TDWORD } type TDISCARDCACHE = int32 type TDISCDLGSTRUCT = struct { FcbStructure TDWORD FhwndOwner THWND FlpLocalName TLPSTR FlpRemoteName TLPSTR FdwFlags TDWORD } type TDISCDLGSTRUCTA = struct { FcbStructure TDWORD FhwndOwner THWND FlpLocalName TLPSTR FlpRemoteName TLPSTR FdwFlags TDWORD } type TDISCDLGSTRUCTW = struct { FcbStructure TDWORD FhwndOwner THWND FlpLocalName TLPWSTR FlpRemoteName TLPWSTR FdwFlags TDWORD } type TDISK_CACHE_INFORMATION = struct { FParametersSavable TBOOLEAN FReadCacheEnabled TBOOLEAN FWriteCacheEnabled TBOOLEAN FReadRetentionPriority TDISK_CACHE_RETENTION_PRIORITY FWriteRetentionPriority TDISK_CACHE_RETENTION_PRIORITY FDisablePrefetchTransferLength TWORD FPrefetchScalar TBOOLEAN F__ccgo7_16 struct { FBlockPrefetch [0]struct { FMinimum TWORD FMaximum TWORD } FScalarPrefetch struct { FMinimum TWORD FMaximum TWORD FMaximumBlocks TWORD } } } type TDISK_CACHE_RETENTION_PRIORITY = int32 type TDISK_CONTROLLER_NUMBER = struct { FControllerNumber TDWORD FDiskNumber TDWORD } type TDISK_INT13_INFO = struct { FDriveSelect TWORD FMaxCylinders TDWORD FSectorsPerTrack TWORD FMaxHeads TWORD FNumberDrives TWORD } type TDISK_LOGGING = struct { FFunction TBYTE FBufferAddress TPVOID FBufferSize TDWORD } type TDISK_PARTITION_INFO = struct { FSizeOfPartitionInfo TDWORD FPartitionStyle TPARTITION_STYLE F__ccgo2_8 struct { FGpt [0]struct { FDiskId TGUID } FMbr struct { FSignature TDWORD FCheckSum TDWORD } F__ccgo_pad2 [8]byte } } type TDISPID = int32 type TDISPLAYCONFIG_2DREGION = struct { Fcx TUINT32 Fcy TUINT32 } type TDISPLAYCONFIG_ADAPTER_NAME = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER FadapterDevicePath [128]TWCHAR } type TDISPLAYCONFIG_COLOR_ENCODING = uint32 type TDISPLAYCONFIG_DESKTOP_IMAGE_INFO = struct { FPathSourceSize TPOINTL FDesktopImageRegion TRECTL FDesktopImageClip TRECTL } type TDISPLAYCONFIG_DEVICE_INFO_HEADER = struct { Ftype1 TDISPLAYCONFIG_DEVICE_INFO_TYPE Fsize TUINT32 FadapterId TLUID Fid TUINT32 } type TDISPLAYCONFIG_DEVICE_INFO_TYPE = uint32 type TDISPLAYCONFIG_GET_ADVANCED_COLOR_INFO = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER F__ccgo1_20 struct { Fvalue [0]TUINT32 F__ccgo0_0 struct { F__ccgo0 uint32 } } FcolorEncoding TDISPLAYCONFIG_COLOR_ENCODING FbitsPerColorChannel TUINT32 } type TDISPLAYCONFIG_MODE_INFO_TYPE = uint32 type TDISPLAYCONFIG_PATH_INFO = struct { FsourceInfo TDISPLAYCONFIG_PATH_SOURCE_INFO FtargetInfo TDISPLAYCONFIG_PATH_TARGET_INFO Fflags TUINT32 } type TDISPLAYCONFIG_PATH_SOURCE_INFO = struct { FadapterId TLUID Fid TUINT32 F__ccgo2_12 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FmodeInfoIdx TUINT32 } FstatusFlags TUINT32 } type TDISPLAYCONFIG_PATH_TARGET_INFO = struct { FadapterId TLUID Fid TUINT32 F__ccgo2_12 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FmodeInfoIdx TUINT32 } FoutputTechnology TDISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY Frotation TDISPLAYCONFIG_ROTATION Fscaling TDISPLAYCONFIG_SCALING FrefreshRate TDISPLAYCONFIG_RATIONAL FscanLineOrdering TDISPLAYCONFIG_SCANLINE_ORDERING FtargetAvailable TWINBOOL FstatusFlags TUINT32 } type TDISPLAYCONFIG_PIXELFORMAT = uint32 type TDISPLAYCONFIG_RATIONAL = struct { FNumerator TUINT32 FDenominator TUINT32 } type TDISPLAYCONFIG_ROTATION = uint32 type TDISPLAYCONFIG_SCALING = uint32 type TDISPLAYCONFIG_SCANLINE_ORDERING = uint32 type TDISPLAYCONFIG_SDR_WHITE_LEVEL = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER FSDRWhiteLevel TULONG } type TDISPLAYCONFIG_SET_ADVANCED_COLOR_STATE = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER F__ccgo1_20 struct { Fvalue [0]TUINT32 F__ccgo0_0 struct { F__ccgo0 uint32 } } } type TDISPLAYCONFIG_SET_TARGET_PERSISTENCE = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER F__ccgo1_20 struct { Fvalue [0]TUINT32 F__ccgo0_0 struct { F__ccgo0 uint32 } } } type TDISPLAYCONFIG_SOURCE_DEVICE_NAME = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER FviewGdiDeviceName [32]TWCHAR } type TDISPLAYCONFIG_SOURCE_MODE = struct { Fwidth TUINT32 Fheight TUINT32 FpixelFormat TDISPLAYCONFIG_PIXELFORMAT Fposition TPOINTL } type TDISPLAYCONFIG_SUPPORT_VIRTUAL_RESOLUTION = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER F__ccgo1_20 struct { Fvalue [0]TUINT32 F__ccgo0_0 struct { F__ccgo0 uint32 } } } type TDISPLAYCONFIG_TARGET_BASE_TYPE = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER FbaseOutputTechnology TDISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY } type TDISPLAYCONFIG_TARGET_DEVICE_NAME = struct { Fheader TDISPLAYCONFIG_DEVICE_INFO_HEADER Fflags TDISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS FoutputTechnology TDISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY FedidManufactureId TUINT16 FedidProductCodeId TUINT16 FconnectorInstance TUINT32 FmonitorFriendlyDeviceName [64]TWCHAR FmonitorDevicePath [128]TWCHAR } type TDISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS = struct { F__ccgo0_0 struct { Fvalue [0]TUINT32 F__ccgo0_0 struct { F__ccgo0 uint32 } } } type TDISPLAYCONFIG_TOPOLOGY_ID = uint32 type TDISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY = int32 type TDISPLAY_DEVICE = struct { Fcb TDWORD FDeviceName [32]TCHAR FDeviceString [128]TCHAR FStateFlags TDWORD FDeviceID [128]TCHAR FDeviceKey [128]TCHAR } type TDISPLAY_DEVICEA = struct { Fcb TDWORD FDeviceName [32]TCHAR FDeviceString [128]TCHAR FStateFlags TDWORD FDeviceID [128]TCHAR FDeviceKey [128]TCHAR } type TDISPLAY_DEVICEW = struct { Fcb TDWORD FDeviceName [32]TWCHAR FDeviceString [128]TWCHAR FStateFlags TDWORD FDeviceID [128]TWCHAR FDeviceKey [128]TWCHAR } type TDISPPARAMS = struct { Frgvarg uintptr FrgdispidNamedArgs uintptr FcArgs TUINT FcNamedArgs TUINT } type TDLGITEMTEMPLATE = struct { Fstyle TDWORD FdwExtendedStyle TDWORD Fx int16 Fy int16 Fcx int16 Fcy int16 Fid TWORD } type TDLGPROC = uintptr type TDLGTEMPLATE = struct { Fstyle TDWORD FdwExtendedStyle TDWORD Fcdit TWORD Fx int16 Fy int16 Fcx int16 Fcy int16 } type TDLL_DIRECTORY_COOKIE = uintptr type TDOCINFO = struct { FcbSize int32 FlpszDocName TLPCSTR FlpszOutput TLPCSTR FlpszDatatype TLPCSTR FfwType TDWORD } type TDOCINFOA = struct { FcbSize int32 FlpszDocName TLPCSTR FlpszOutput TLPCSTR FlpszDatatype TLPCSTR FfwType TDWORD } type TDOCINFOW = struct { FcbSize int32 FlpszDocName TLPCWSTR FlpszOutput TLPCWSTR FlpszDatatype TLPCWSTR FfwType TDWORD } type TDOC_INFO_1 = struct { FpDocName TLPSTR FpOutputFile TLPSTR FpDatatype TLPSTR } type TDOC_INFO_1A = struct { FpDocName TLPSTR FpOutputFile TLPSTR FpDatatype TLPSTR } type TDOC_INFO_1W = struct { FpDocName TLPWSTR FpOutputFile TLPWSTR FpDatatype TLPWSTR } type TDOC_INFO_2 = struct { FpDocName TLPSTR FpOutputFile TLPSTR FpDatatype TLPSTR FdwMode TDWORD FJobId TDWORD } type TDOC_INFO_2A = struct { FpDocName TLPSTR FpOutputFile TLPSTR FpDatatype TLPSTR FdwMode TDWORD FJobId TDWORD } type TDOC_INFO_2W = struct { FpDocName TLPWSTR FpOutputFile TLPWSTR FpDatatype TLPWSTR FdwMode TDWORD FJobId TDWORD } type TDOC_INFO_3 = struct { FpDocName TLPSTR FpOutputFile TLPSTR FpDatatype TLPSTR FdwFlags TDWORD } type TDOC_INFO_3A = struct { FpDocName TLPSTR FpOutputFile TLPSTR FpDatatype TLPSTR FdwFlags TDWORD } type TDOC_INFO_3W = struct { FpDocName TLPWSTR FpOutputFile TLPWSTR FpDatatype TLPWSTR FdwFlags TDWORD } type TDOMNodeType = int32 type TDOUBLE = float64 type TDPI_AWARENESS = int32 type TDPI_AWARENESS_CONTEXT = uintptr type TDPI_AWARENESS_CONTEXT__ = struct { Funused int32 } type TDPI_HOSTING_BEHAVIOR = int32 type TDRAGINFO = struct { FuSize TUINT Fpt TPOINT FfNC TWINBOOL FlpFileList TLPSTR FgrfKeyState TDWORD } type TDRAGINFOA = struct { FuSize TUINT Fpt TPOINT FfNC TWINBOOL FlpFileList TLPSTR FgrfKeyState TDWORD } type TDRAGINFOW = struct { FuSize TUINT Fpt TPOINT FfNC TWINBOOL FlpFileList TLPWSTR FgrfKeyState TDWORD } type TDRAWITEMSTRUCT = struct { FCtlType TUINT FCtlID TUINT FitemID TUINT FitemAction TUINT FitemState TUINT FhwndItem THWND FhDC THDC FrcItem TRECT FitemData TULONG_PTR } type TDRAWPATRECT = struct { FptPosition TPOINT FptSize TPOINT FwStyle TWORD FwPattern TWORD } type TDRAWSTATEPROC = uintptr type TDRAWTEXTPARAMS = struct { FcbSize TUINT FiTabLength int32 FiLeftMargin int32 FiRightMargin int32 FuiLengthDrawn TUINT } type TDRIVERPROC = uintptr type TDRIVERSTATUS = struct { FbDriverError TBYTE FbIDEError TBYTE FbReserved [2]TBYTE FdwReserved [2]TDWORD } type TDRIVER_INFO_1 = struct { FpName TLPSTR } type TDRIVER_INFO_1A = struct { FpName TLPSTR } type TDRIVER_INFO_1W = struct { FpName TLPWSTR } type TDRIVER_INFO_2 = struct { FcVersion TDWORD FpName TLPSTR FpEnvironment TLPSTR FpDriverPath TLPSTR FpDataFile TLPSTR FpConfigFile TLPSTR } type TDRIVER_INFO_2A = struct { FcVersion TDWORD FpName TLPSTR FpEnvironment TLPSTR FpDriverPath TLPSTR FpDataFile TLPSTR FpConfigFile TLPSTR } type TDRIVER_INFO_2W = struct { FcVersion TDWORD FpName TLPWSTR FpEnvironment TLPWSTR FpDriverPath TLPWSTR FpDataFile TLPWSTR FpConfigFile TLPWSTR } type TDRIVER_INFO_3 = struct { FcVersion TDWORD FpName TLPSTR FpEnvironment TLPSTR FpDriverPath TLPSTR FpDataFile TLPSTR FpConfigFile TLPSTR FpHelpFile TLPSTR FpDependentFiles TLPSTR FpMonitorName TLPSTR FpDefaultDataType TLPSTR } type TDRIVER_INFO_3A = struct { FcVersion TDWORD FpName TLPSTR FpEnvironment TLPSTR FpDriverPath TLPSTR FpDataFile TLPSTR FpConfigFile TLPSTR FpHelpFile TLPSTR FpDependentFiles TLPSTR FpMonitorName TLPSTR FpDefaultDataType TLPSTR } type TDRIVER_INFO_3W = struct { FcVersion TDWORD FpName TLPWSTR FpEnvironment TLPWSTR FpDriverPath TLPWSTR FpDataFile TLPWSTR FpConfigFile TLPWSTR FpHelpFile TLPWSTR FpDependentFiles TLPWSTR FpMonitorName TLPWSTR FpDefaultDataType TLPWSTR } type TDRIVER_INFO_4 = struct { FcVersion TDWORD FpName TLPSTR FpEnvironment TLPSTR FpDriverPath TLPSTR FpDataFile TLPSTR FpConfigFile TLPSTR FpHelpFile TLPSTR FpDependentFiles TLPSTR FpMonitorName TLPSTR FpDefaultDataType TLPSTR FpszzPreviousNames TLPSTR } type TDRIVER_INFO_4A = struct { FcVersion TDWORD FpName TLPSTR FpEnvironment TLPSTR FpDriverPath TLPSTR FpDataFile TLPSTR FpConfigFile TLPSTR FpHelpFile TLPSTR FpDependentFiles TLPSTR FpMonitorName TLPSTR FpDefaultDataType TLPSTR FpszzPreviousNames TLPSTR } type TDRIVER_INFO_4W = struct { FcVersion TDWORD FpName TLPWSTR FpEnvironment TLPWSTR FpDriverPath TLPWSTR FpDataFile TLPWSTR FpConfigFile TLPWSTR FpHelpFile TLPWSTR FpDependentFiles TLPWSTR FpMonitorName TLPWSTR FpDefaultDataType TLPWSTR FpszzPreviousNames TLPWSTR } type TDRIVER_INFO_5 = struct { FcVersion TDWORD FpName TLPSTR FpEnvironment TLPSTR FpDriverPath TLPSTR FpDataFile TLPSTR FpConfigFile TLPSTR FdwDriverAttributes TDWORD FdwConfigVersion TDWORD FdwDriverVersion TDWORD } type TDRIVER_INFO_5A = struct { FcVersion TDWORD FpName TLPSTR FpEnvironment TLPSTR FpDriverPath TLPSTR FpDataFile TLPSTR FpConfigFile TLPSTR FdwDriverAttributes TDWORD FdwConfigVersion TDWORD FdwDriverVersion TDWORD } type TDRIVER_INFO_5W = struct { FcVersion TDWORD FpName TLPWSTR FpEnvironment TLPWSTR FpDriverPath TLPWSTR FpDataFile TLPWSTR FpConfigFile TLPWSTR FdwDriverAttributes TDWORD FdwConfigVersion TDWORD FdwDriverVersion TDWORD } type TDRIVE_LAYOUT_INFORMATION_MBR = struct { FSignature TDWORD } type TDROPSTRUCT = struct { FhwndSource THWND FhwndSink THWND FwFmt TDWORD FdwData TULONG_PTR FptDrop TPOINT FdwControlData TDWORD } type TDRVCONFIGINFO = struct { FdwDCISize TDWORD FlpszDCISectionName TLPCWSTR FlpszDCIAliasName TLPCWSTR } type TDRVCONFIGINFOEX = struct { FdwDCISize TDWORD FlpszDCISectionName TLPCWSTR FlpszDCIAliasName TLPCWSTR FdnDevNode TDWORD } type TDSAFIPSVERSION_ENUM = int32 type TDSSPRIVKEY_VER3 = struct { Fmagic TDWORD FbitlenP TDWORD FbitlenQ TDWORD FbitlenJ TDWORD FbitlenX TDWORD FDSSSeed TDSSSEED } type TDSSPUBKEY = struct { Fmagic TDWORD Fbitlen TDWORD } type TDSSPUBKEY_VER3 = struct { Fmagic TDWORD FbitlenP TDWORD FbitlenQ TDWORD FbitlenJ TDWORD FDSSSeed TDSSSEED } type TDSSSEED = struct { Fcounter TDWORD Fseed [20]TBYTE } type TDVASPECT = int32 type TDVTARGETDEVICE = struct { FtdSize TDWORD FtdDriverNameOffset TWORD FtdDeviceNameOffset TWORD FtdPortNameOffset TWORD FtdExtDevmodeOffset TWORD FtdData [1]TBYTE } type TDWORD = uint32 type TDWORD32 = uint32 type TDWORD64 = uint64 type TDWORDLONG = uint64 type TDWORD_BLOB = struct { FclSize TULONG FalData [1]TULONG } type TDWORD_SIZEDARR = struct { FclSize TULONG FpData uintptr } type TDYNAMIC_TIME_ZONE_INFORMATION = struct { FBias TLONG FStandardName [32]TWCHAR FStandardDate TSYSTEMTIME FStandardBias TLONG FDaylightName [32]TWCHAR FDaylightDate TSYSTEMTIME FDaylightBias TLONG FTimeZoneKeyName [128]TWCHAR FDynamicDaylightTimeDisabled TBOOLEAN } const TECHNOLOGY = 2 type TEDITWORDBREAKPROC = uintptr type TEDITWORDBREAKPROCA = uintptr type TEDITWORDBREAKPROCW = uintptr type TEFS_CERTIFICATE_BLOB = struct { FdwCertEncodingType TDWORD FcbData TDWORD FpbData TPBYTE } type TEFS_HASH_BLOB = struct { FcbData TDWORD FpbData TPBYTE } type TEFS_KEY_INFO = struct { FdwVersion TDWORD FEntropy TULONG FAlgorithm TALG_ID FKeyLength TULONG } type TEFS_RPC_BLOB = struct { FcbData TDWORD FpbData TPBYTE } type TEKPUBKEY = TTEKPUBKEY type TELEMENT_TYPE = int32 type TEMR = struct { FiType TDWORD FnSize TDWORD } type TEMRABORTPATH = struct { Femr TEMR } type TEMRALPHABLEND = struct { Femr TEMR FrclBounds TRECTL FxDest TLONG FyDest TLONG FcxDest TLONG FcyDest TLONG FdwRop TDWORD FxSrc TLONG FySrc TLONG FxformSrc TXFORM FcrBkColorSrc TCOLORREF FiUsageSrc TDWORD FoffBmiSrc TDWORD FcbBmiSrc TDWORD FoffBitsSrc TDWORD FcbBitsSrc TDWORD FcxSrc TLONG FcySrc TLONG } type TEMRANGLEARC = struct { Femr TEMR FptlCenter TPOINTL FnRadius TDWORD FeStartAngle TFLOAT FeSweepAngle TFLOAT } type TEMRARC = struct { Femr TEMR FrclBox TRECTL FptlStart TPOINTL FptlEnd TPOINTL } type TEMRARCTO = struct { Femr TEMR FrclBox TRECTL FptlStart TPOINTL FptlEnd TPOINTL } type TEMRBEGINPATH = struct { Femr TEMR } type TEMRBITBLT = struct { Femr TEMR FrclBounds TRECTL FxDest TLONG FyDest TLONG FcxDest TLONG FcyDest TLONG FdwRop TDWORD FxSrc TLONG FySrc TLONG FxformSrc TXFORM FcrBkColorSrc TCOLORREF FiUsageSrc TDWORD FoffBmiSrc TDWORD FcbBmiSrc TDWORD FoffBitsSrc TDWORD FcbBitsSrc TDWORD } type TEMRCHORD = struct { Femr TEMR FrclBox TRECTL FptlStart TPOINTL FptlEnd TPOINTL } type TEMRCLOSEFIGURE = struct { Femr TEMR } type TEMRCOLORCORRECTPALETTE = struct { Femr TEMR FihPalette TDWORD FnFirstEntry TDWORD FnPalEntries TDWORD FnReserved TDWORD } type TEMRCOLORMATCHTOTARGET = struct { Femr TEMR FdwAction TDWORD FdwFlags TDWORD FcbName TDWORD FcbData TDWORD FData [1]TBYTE } type TEMRCREATEBRUSHINDIRECT = struct { Femr TEMR FihBrush TDWORD Flb TLOGBRUSH32 } type TEMRCREATECOLORSPACE = struct { Femr TEMR FihCS TDWORD Flcs TLOGCOLORSPACEA } type TEMRCREATECOLORSPACEW = struct { Femr TEMR FihCS TDWORD Flcs TLOGCOLORSPACEW FdwFlags TDWORD FcbData TDWORD FData [1]TBYTE } type TEMRCREATEDIBPATTERNBRUSHPT = struct { Femr TEMR FihBrush TDWORD FiUsage TDWORD FoffBmi TDWORD FcbBmi TDWORD FoffBits TDWORD FcbBits TDWORD } type TEMRCREATEMONOBRUSH = struct { Femr TEMR FihBrush TDWORD FiUsage TDWORD FoffBmi TDWORD FcbBmi TDWORD FoffBits TDWORD FcbBits TDWORD } type TEMRCREATEPALETTE = struct { Femr TEMR FihPal TDWORD Flgpl TLOGPALETTE } type TEMRCREATEPEN = struct { Femr TEMR FihPen TDWORD Flopn TLOGPEN } type TEMRDELETECOLORSPACE = struct { Femr TEMR FihCS TDWORD } type TEMRDELETEOBJECT = struct { Femr TEMR FihObject TDWORD } type TEMRDRAWESCAPE = struct { Femr TEMR FiEscape TINT FcbEscData TINT FEscData [1]TBYTE } type TEMRELLIPSE = struct { Femr TEMR FrclBox TRECTL } type TEMRENDPATH = struct { Femr TEMR } type TEMREOF = struct { Femr TEMR FnPalEntries TDWORD FoffPalEntries TDWORD FnSizeLast TDWORD } type TEMREXCLUDECLIPRECT = struct { Femr TEMR FrclClip TRECTL } type TEMREXTCREATEFONTINDIRECTW = struct { Femr TEMR FihFont TDWORD Felfw TEXTLOGFONTW } type TEMREXTCREATEPEN = struct { Femr TEMR FihPen TDWORD FoffBmi TDWORD FcbBmi TDWORD FoffBits TDWORD FcbBits TDWORD Felp TEXTLOGPEN } type TEMREXTESCAPE = struct { Femr TEMR FiEscape TINT FcbEscData TINT FEscData [1]TBYTE } type TEMREXTFLOODFILL = struct { Femr TEMR FptlStart TPOINTL FcrColor TCOLORREF FiMode TDWORD } type TEMREXTSELECTCLIPRGN = struct { Femr TEMR FcbRgnData TDWORD FiMode TDWORD FRgnData [1]TBYTE } type TEMREXTTEXTOUTA = struct { Femr TEMR FrclBounds TRECTL FiGraphicsMode TDWORD FexScale TFLOAT FeyScale TFLOAT Femrtext TEMRTEXT } type TEMREXTTEXTOUTW = struct { Femr TEMR FrclBounds TRECTL FiGraphicsMode TDWORD FexScale TFLOAT FeyScale TFLOAT Femrtext TEMRTEXT } type TEMRFILLPATH = struct { Femr TEMR FrclBounds TRECTL } type TEMRFILLRGN = struct { Femr TEMR FrclBounds TRECTL FcbRgnData TDWORD FihBrush TDWORD FRgnData [1]TBYTE } type TEMRFLATTENPATH = struct { Femr TEMR } type TEMRFORMAT = struct { FdSignature TDWORD FnVersion TDWORD FcbData TDWORD FoffData TDWORD } type TEMRFRAMERGN = struct { Femr TEMR FrclBounds TRECTL FcbRgnData TDWORD FihBrush TDWORD FszlStroke TSIZEL FRgnData [1]TBYTE } type TEMRGDICOMMENT = struct { Femr TEMR FcbData TDWORD FData [1]TBYTE } type TEMRGLSBOUNDEDRECORD = struct { Femr TEMR FrclBounds TRECTL FcbData TDWORD FData [1]TBYTE } type TEMRGLSRECORD = struct { Femr TEMR FcbData TDWORD FData [1]TBYTE } type TEMRGRADIENTFILL = struct { Femr TEMR FrclBounds TRECTL FnVer TDWORD FnTri TDWORD FulMode TULONG FVer [1]TTRIVERTEX } type TEMRINTERSECTCLIPRECT = struct { Femr TEMR FrclClip TRECTL } type TEMRINVERTRGN = struct { Femr TEMR FrclBounds TRECTL FcbRgnData TDWORD FRgnData [1]TBYTE } type TEMRLINETO = struct { Femr TEMR Fptl TPOINTL } type TEMRMASKBLT = struct { Femr TEMR FrclBounds TRECTL FxDest TLONG FyDest TLONG FcxDest TLONG FcyDest TLONG FdwRop TDWORD FxSrc TLONG FySrc TLONG FxformSrc TXFORM FcrBkColorSrc TCOLORREF FiUsageSrc TDWORD FoffBmiSrc TDWORD FcbBmiSrc TDWORD FoffBitsSrc TDWORD FcbBitsSrc TDWORD FxMask TLONG FyMask TLONG FiUsageMask TDWORD FoffBmiMask TDWORD FcbBmiMask TDWORD FoffBitsMask TDWORD FcbBitsMask TDWORD } type TEMRMODIFYWORLDTRANSFORM = struct { Femr TEMR Fxform TXFORM FiMode TDWORD } type TEMRMOVETOEX = struct { Femr TEMR Fptl TPOINTL } type TEMRNAMEDESCAPE = struct { Femr TEMR FiEscape TINT FcbDriver TINT FcbEscData TINT FEscData [1]TBYTE } type TEMROFFSETCLIPRGN = struct { Femr TEMR FptlOffset TPOINTL } type TEMRPAINTRGN = struct { Femr TEMR FrclBounds TRECTL FcbRgnData TDWORD FRgnData [1]TBYTE } type TEMRPIE = struct { Femr TEMR FrclBox TRECTL FptlStart TPOINTL FptlEnd TPOINTL } type TEMRPIXELFORMAT = struct { Femr TEMR Fpfd TPIXELFORMATDESCRIPTOR } type TEMRPLGBLT = struct { Femr TEMR FrclBounds TRECTL FaptlDest [3]TPOINTL FxSrc TLONG FySrc TLONG FcxSrc TLONG FcySrc TLONG FxformSrc TXFORM FcrBkColorSrc TCOLORREF FiUsageSrc TDWORD FoffBmiSrc TDWORD FcbBmiSrc TDWORD FoffBitsSrc TDWORD FcbBitsSrc TDWORD FxMask TLONG FyMask TLONG FiUsageMask TDWORD FoffBmiMask TDWORD FcbBmiMask TDWORD FoffBitsMask TDWORD FcbBitsMask TDWORD } type TEMRPOLYBEZIER = struct { Femr TEMR FrclBounds TRECTL Fcptl TDWORD Faptl [1]TPOINTL } type TEMRPOLYBEZIER16 = struct { Femr TEMR FrclBounds TRECTL Fcpts TDWORD Fapts [1]TPOINTS } type TEMRPOLYBEZIERTO = struct { Femr TEMR FrclBounds TRECTL Fcptl TDWORD Faptl [1]TPOINTL } type TEMRPOLYBEZIERTO16 = struct { Femr TEMR FrclBounds TRECTL Fcpts TDWORD Fapts [1]TPOINTS } type TEMRPOLYDRAW = struct { Femr TEMR FrclBounds TRECTL Fcptl TDWORD Faptl [1]TPOINTL FabTypes [1]TBYTE } type TEMRPOLYDRAW16 = struct { Femr TEMR FrclBounds TRECTL Fcpts TDWORD Fapts [1]TPOINTS FabTypes [1]TBYTE } type TEMRPOLYGON = struct { Femr TEMR FrclBounds TRECTL Fcptl TDWORD Faptl [1]TPOINTL } type TEMRPOLYGON16 = struct { Femr TEMR FrclBounds TRECTL Fcpts TDWORD Fapts [1]TPOINTS } type TEMRPOLYLINE = struct { Femr TEMR FrclBounds TRECTL Fcptl TDWORD Faptl [1]TPOINTL } type TEMRPOLYLINE16 = struct { Femr TEMR FrclBounds TRECTL Fcpts TDWORD Fapts [1]TPOINTS } type TEMRPOLYLINETO = struct { Femr TEMR FrclBounds TRECTL Fcptl TDWORD Faptl [1]TPOINTL } type TEMRPOLYLINETO16 = struct { Femr TEMR FrclBounds TRECTL Fcpts TDWORD Fapts [1]TPOINTS } type TEMRPOLYPOLYGON = struct { Femr TEMR FrclBounds TRECTL FnPolys TDWORD Fcptl TDWORD FaPolyCounts [1]TDWORD Faptl [1]TPOINTL } type TEMRPOLYPOLYGON16 = struct { Femr TEMR FrclBounds TRECTL FnPolys TDWORD Fcpts TDWORD FaPolyCounts [1]TDWORD Fapts [1]TPOINTS } type TEMRPOLYPOLYLINE = struct { Femr TEMR FrclBounds TRECTL FnPolys TDWORD Fcptl TDWORD FaPolyCounts [1]TDWORD Faptl [1]TPOINTL } type TEMRPOLYPOLYLINE16 = struct { Femr TEMR FrclBounds TRECTL FnPolys TDWORD Fcpts TDWORD FaPolyCounts [1]TDWORD Fapts [1]TPOINTS } type TEMRPOLYTEXTOUTA = struct { Femr TEMR FrclBounds TRECTL FiGraphicsMode TDWORD FexScale TFLOAT FeyScale TFLOAT FcStrings TLONG Faemrtext [1]TEMRTEXT } type TEMRPOLYTEXTOUTW = struct { Femr TEMR FrclBounds TRECTL FiGraphicsMode TDWORD FexScale TFLOAT FeyScale TFLOAT FcStrings TLONG Faemrtext [1]TEMRTEXT } type TEMRREALIZEPALETTE = struct { Femr TEMR } type TEMRRECTANGLE = struct { Femr TEMR FrclBox TRECTL } type TEMRRESIZEPALETTE = struct { Femr TEMR FihPal TDWORD FcEntries TDWORD } type TEMRRESTOREDC = struct { Femr TEMR FiRelative TLONG } type TEMRROUNDRECT = struct { Femr TEMR FrclBox TRECTL FszlCorner TSIZEL } type TEMRSAVEDC = struct { Femr TEMR } type TEMRSCALEVIEWPORTEXTEX = struct { Femr TEMR FxNum TLONG FxDenom TLONG FyNum TLONG FyDenom TLONG } type TEMRSCALEWINDOWEXTEX = struct { Femr TEMR FxNum TLONG FxDenom TLONG FyNum TLONG FyDenom TLONG } type TEMRSELECTCLIPPATH = struct { Femr TEMR FiMode TDWORD } type TEMRSELECTCOLORSPACE = struct { Femr TEMR FihCS TDWORD } type TEMRSELECTOBJECT = struct { Femr TEMR FihObject TDWORD } type TEMRSELECTPALETTE = struct { Femr TEMR FihPal TDWORD } type TEMRSETARCDIRECTION = struct { Femr TEMR FiArcDirection TDWORD } type TEMRSETBKCOLOR = struct { Femr TEMR FcrColor TCOLORREF } type TEMRSETBKMODE = struct { Femr TEMR FiMode TDWORD } type TEMRSETBRUSHORGEX = struct { Femr TEMR FptlOrigin TPOINTL } type TEMRSETCOLORADJUSTMENT = struct { Femr TEMR FColorAdjustment TCOLORADJUSTMENT } type TEMRSETCOLORSPACE = struct { Femr TEMR FihCS TDWORD } type TEMRSETDIBITSTODEVICE = struct { Femr TEMR FrclBounds TRECTL FxDest TLONG FyDest TLONG FxSrc TLONG FySrc TLONG FcxSrc TLONG FcySrc TLONG FoffBmiSrc TDWORD FcbBmiSrc TDWORD FoffBitsSrc TDWORD FcbBitsSrc TDWORD FiUsageSrc TDWORD FiStartScan TDWORD FcScans TDWORD } type TEMRSETICMMODE = struct { Femr TEMR FiMode TDWORD } type TEMRSETICMPROFILE = struct { Femr TEMR FdwFlags TDWORD FcbName TDWORD FcbData TDWORD FData [1]TBYTE } type TEMRSETICMPROFILEA = struct { Femr TEMR FdwFlags TDWORD FcbName TDWORD FcbData TDWORD FData [1]TBYTE } type TEMRSETICMPROFILEW = struct { Femr TEMR FdwFlags TDWORD FcbName TDWORD FcbData TDWORD FData [1]TBYTE } type TEMRSETLAYOUT = struct { Femr TEMR FiMode TDWORD } type TEMRSETMAPMODE = struct { Femr TEMR FiMode TDWORD } type TEMRSETMAPPERFLAGS = struct { Femr TEMR FdwFlags TDWORD } type TEMRSETMETARGN = struct { Femr TEMR } type TEMRSETMITERLIMIT = struct { Femr TEMR FeMiterLimit TFLOAT } type TEMRSETPALETTEENTRIES = struct { Femr TEMR FihPal TDWORD FiStart TDWORD FcEntries TDWORD FaPalEntries [1]TPALETTEENTRY } type TEMRSETPIXELV = struct { Femr TEMR FptlPixel TPOINTL FcrColor TCOLORREF } type TEMRSETPOLYFILLMODE = struct { Femr TEMR FiMode TDWORD } type TEMRSETROP2 = struct { Femr TEMR FiMode TDWORD } type TEMRSETSTRETCHBLTMODE = struct { Femr TEMR FiMode TDWORD } type TEMRSETTEXTALIGN = struct { Femr TEMR FiMode TDWORD } type TEMRSETTEXTCOLOR = struct { Femr TEMR FcrColor TCOLORREF } type TEMRSETVIEWPORTEXTEX = struct { Femr TEMR FszlExtent TSIZEL } type TEMRSETVIEWPORTORGEX = struct { Femr TEMR FptlOrigin TPOINTL } type TEMRSETWINDOWEXTEX = struct { Femr TEMR FszlExtent TSIZEL } type TEMRSETWINDOWORGEX = struct { Femr TEMR FptlOrigin TPOINTL } type TEMRSETWORLDTRANSFORM = struct { Femr TEMR Fxform TXFORM } type TEMRSTRETCHBLT = struct { Femr TEMR FrclBounds TRECTL FxDest TLONG FyDest TLONG FcxDest TLONG FcyDest TLONG FdwRop TDWORD FxSrc TLONG FySrc TLONG FxformSrc TXFORM FcrBkColorSrc TCOLORREF FiUsageSrc TDWORD FoffBmiSrc TDWORD FcbBmiSrc TDWORD FoffBitsSrc TDWORD FcbBitsSrc TDWORD FcxSrc TLONG FcySrc TLONG } type TEMRSTRETCHDIBITS = struct { Femr TEMR FrclBounds TRECTL FxDest TLONG FyDest TLONG FxSrc TLONG FySrc TLONG FcxSrc TLONG FcySrc TLONG FoffBmiSrc TDWORD FcbBmiSrc TDWORD FoffBitsSrc TDWORD FcbBitsSrc TDWORD FiUsageSrc TDWORD FdwRop TDWORD FcxDest TLONG FcyDest TLONG } type TEMRSTROKEANDFILLPATH = struct { Femr TEMR FrclBounds TRECTL } type TEMRSTROKEPATH = struct { Femr TEMR FrclBounds TRECTL } type TEMRTEXT = struct { FptlReference TPOINTL FnChars TDWORD FoffString TDWORD FfOptions TDWORD Frcl TRECTL FoffDx TDWORD } type TEMRTRANSPARENTBLT = struct { Femr TEMR FrclBounds TRECTL FxDest TLONG FyDest TLONG FcxDest TLONG FcyDest TLONG FdwRop TDWORD FxSrc TLONG FySrc TLONG FxformSrc TXFORM FcrBkColorSrc TCOLORREF FiUsageSrc TDWORD FoffBmiSrc TDWORD FcbBmiSrc TDWORD FoffBitsSrc TDWORD FcbBitsSrc TDWORD FcxSrc TLONG FcySrc TLONG } type TEMRWIDENPATH = struct { Femr TEMR } type TENCRYPTION_BUFFER = struct { FEncryptionOperation TDWORD FPrivate [1]TBYTE } type TENCRYPTION_CERTIFICATE = struct { FcbTotalLength TDWORD FpUserSid uintptr FpCertBlob TPEFS_CERTIFICATE_BLOB } type TENCRYPTION_CERTIFICATE_HASH = struct { FcbTotalLength TDWORD FpUserSid uintptr FpHash TPEFS_HASH_BLOB FlpDisplayInformation TLPWSTR } type TENCRYPTION_CERTIFICATE_HASH_LIST = struct { FnCert_Hash TDWORD FpUsers uintptr } type TENCRYPTION_CERTIFICATE_LIST = struct { FnUsers TDWORD FpUsers uintptr } type TENHMETAHEADER = struct { FiType TDWORD FnSize TDWORD FrclBounds TRECTL FrclFrame TRECTL FdSignature TDWORD FnVersion TDWORD FnBytes TDWORD FnRecords TDWORD FnHandles TWORD FsReserved TWORD FnDescription TDWORD FoffDescription TDWORD FnPalEntries TDWORD FszlDevice TSIZEL FszlMillimeters TSIZEL FcbPixelFormat TDWORD FoffPixelFormat TDWORD FbOpenGL TDWORD FszlMicrometers TSIZEL } type TENHMETARECORD = struct { FiType TDWORD FnSize TDWORD FdParm [1]TDWORD } type TENHMFENUMPROC = uintptr type TENLISTMENT_BASIC_INFORMATION = struct { FEnlistmentId TGUID FTransactionId TGUID FResourceManagerId TGUID } type TENLISTMENT_CRM_INFORMATION = struct { FCrmTransactionManagerId TGUID FCrmResourceManagerId TGUID FCrmEnlistmentId TGUID } type TENLISTMENT_INFORMATION_CLASS = int32 type TENUMLOGFONT = struct { FelfLogFont TLOGFONTA FelfFullName [64]TBYTE FelfStyle [32]TBYTE } type TENUMLOGFONTA = struct { FelfLogFont TLOGFONTA FelfFullName [64]TBYTE FelfStyle [32]TBYTE } type TENUMLOGFONTEX = struct { FelfLogFont TLOGFONTA FelfFullName [64]TBYTE FelfStyle [32]TBYTE FelfScript [32]TBYTE } type TENUMLOGFONTEXA = struct { FelfLogFont TLOGFONTA FelfFullName [64]TBYTE FelfStyle [32]TBYTE FelfScript [32]TBYTE } type TENUMLOGFONTEXDV = struct { FelfEnumLogfontEx TENUMLOGFONTEXA FelfDesignVector TDESIGNVECTOR } type TENUMLOGFONTEXDVA = struct { FelfEnumLogfontEx TENUMLOGFONTEXA FelfDesignVector TDESIGNVECTOR } type TENUMLOGFONTEXDVW = struct { FelfEnumLogfontEx TENUMLOGFONTEXW FelfDesignVector TDESIGNVECTOR } type TENUMLOGFONTEXW = struct { FelfLogFont TLOGFONTW FelfFullName [64]TWCHAR FelfStyle [32]TWCHAR FelfScript [32]TWCHAR } type TENUMLOGFONTW = struct { FelfLogFont TLOGFONTW FelfFullName [64]TWCHAR FelfStyle [32]TWCHAR } type TENUMRESLANGPROCA = uintptr type TENUMRESLANGPROCW = uintptr type TENUMRESNAMEPROCA = uintptr type TENUMRESNAMEPROCW = uintptr type TENUMRESTYPEPROCA = uintptr type TENUMRESTYPEPROCW = uintptr type TENUMTEXTMETRIC = struct { FetmNewTextMetricEx TNEWTEXTMETRICEXA FetmAxesList TAXESLISTA } type TENUMTEXTMETRICA = struct { FetmNewTextMetricEx TNEWTEXTMETRICEXA FetmAxesList TAXESLISTA } type TENUMTEXTMETRICW = struct { FetmNewTextMetricEx TNEWTEXTMETRICEXW FetmAxesList TAXESLISTW } type TENUMUILANG = struct { FNumOfEnumUILang TULONG FSizeOfEnumUIBuffer TULONG FpEnumUIBuffer uintptr } type TENUM_SERVICE_STATUS = struct { FlpServiceName TLPSTR FlpDisplayName TLPSTR FServiceStatus TSERVICE_STATUS } type TENUM_SERVICE_STATUSA = struct { FlpServiceName TLPSTR FlpDisplayName TLPSTR FServiceStatus TSERVICE_STATUS } type TENUM_SERVICE_STATUSW = struct { FlpServiceName TLPWSTR FlpDisplayName TLPWSTR FServiceStatus TSERVICE_STATUS } type TENUM_SERVICE_STATUS_PROCESS = struct { FlpServiceName TLPSTR FlpDisplayName TLPSTR FServiceStatusProcess TSERVICE_STATUS_PROCESS } type TENUM_SERVICE_STATUS_PROCESSA = struct { FlpServiceName TLPSTR FlpDisplayName TLPSTR FServiceStatusProcess TSERVICE_STATUS_PROCESS } type TENUM_SERVICE_STATUS_PROCESSW = struct { FlpServiceName TLPWSTR FlpDisplayName TLPWSTR FServiceStatusProcess TSERVICE_STATUS_PROCESS } type TEOLE_AUTHENTICATION_CAPABILITIES = int32 type TEPrintXPSJobOperation = int32 type TEPrintXPSJobProgress = int32 type TEVENTLOGRECORD = struct { FLength TDWORD FReserved TDWORD FRecordNumber TDWORD FTimeGenerated TDWORD FTimeWritten TDWORD FEventID TDWORD FEventType TWORD FNumStrings TWORD FEventCategory TWORD FReservedFlags TWORD FClosingRecordNumber TDWORD FStringOffset TDWORD FUserSidLength TDWORD FUserSidOffset TDWORD FDataLength TDWORD FDataOffset TDWORD } type TEVENTLOG_FULL_INFORMATION = struct { FdwFull TDWORD } type TEVENTMSG = struct { Fmessage TUINT FparamL TUINT FparamH TUINT Ftime TDWORD Fhwnd THWND } type TEVENTSFORLOGFILE = struct { FulSize TDWORD FszLogicalLogFile [256]TWCHAR FulNumRecords TDWORD } type TEV_EXTRA_CERT_CHAIN_POLICY_PARA = struct { FcbSize TDWORD FdwRootProgramQualifierFlags TDWORD } type TEV_EXTRA_CERT_CHAIN_POLICY_STATUS = struct { FcbSize TDWORD FdwQualifiers TDWORD FdwIssuanceUsageIndex TDWORD } type TEXCEPINFO = struct { FwCode TWORD FwReserved TWORD FbstrSource TBSTR FbstrDescription TBSTR FbstrHelpFile TBSTR FdwHelpContext TDWORD FpvReserved TPVOID FpfnDeferredFillIn uintptr Fscode TSCODE } type TEXCEPTION_DEBUG_INFO = struct { FExceptionRecord TEXCEPTION_RECORD FdwFirstChance TDWORD } type TEXCEPTION_POINTERS = struct { FExceptionRecord TPEXCEPTION_RECORD FContextRecord TPCONTEXT } type TEXCEPTION_RECORD = struct { FExceptionCode TDWORD FExceptionFlags TDWORD FExceptionRecord uintptr FExceptionAddress TPVOID FNumberParameters TDWORD FExceptionInformation [15]TULONG_PTR } type TEXCEPTION_RECORD32 = struct { FExceptionCode TDWORD FExceptionFlags TDWORD FExceptionRecord TDWORD FExceptionAddress TDWORD FNumberParameters TDWORD FExceptionInformation [15]TDWORD } type TEXECUTION_STATE = uint32 type TEXFAT_STATISTICS = struct { FCreateHits TDWORD FSuccessfulCreates TDWORD FFailedCreates TDWORD FNonCachedReads TDWORD FNonCachedReadBytes TDWORD FNonCachedWrites TDWORD FNonCachedWriteBytes TDWORD FNonCachedDiskReads TDWORD FNonCachedDiskWrites TDWORD } type TEXIT_PROCESS_DEBUG_INFO = struct { FdwExitCode TDWORD } type TEXIT_THREAD_DEBUG_INFO = struct { FdwExitCode TDWORD } type TEXPAND_VIRTUAL_DISK_FLAG = int32 type TEXPAND_VIRTUAL_DISK_VERSION = int32 type TEXPR_EVAL = uintptr const TEXTCAPS = 34 type TEXTCONN = int32 type TEXTENDED_ENCRYPTED_DATA_INFO = struct { FExtendedCode TULONG FLength TULONG FFlags TULONG FReserved TULONG } type TEXTLOGFONT = struct { FelfLogFont TLOGFONTA FelfFullName [64]TBYTE FelfStyle [32]TBYTE FelfVersion TDWORD FelfStyleSize TDWORD FelfMatch TDWORD FelfReserved TDWORD FelfVendorId [4]TBYTE FelfCulture TDWORD FelfPanose TPANOSE } type TEXTLOGFONTA = struct { FelfLogFont TLOGFONTA FelfFullName [64]TBYTE FelfStyle [32]TBYTE FelfVersion TDWORD FelfStyleSize TDWORD FelfMatch TDWORD FelfReserved TDWORD FelfVendorId [4]TBYTE FelfCulture TDWORD FelfPanose TPANOSE } type TEXTLOGFONTW = struct { FelfLogFont TLOGFONTW FelfFullName [64]TWCHAR FelfStyle [32]TWCHAR FelfVersion TDWORD FelfStyleSize TDWORD FelfMatch TDWORD FelfReserved TDWORD FelfVendorId [4]TBYTE FelfCulture TDWORD FelfPanose TPANOSE } type TEXTLOGPEN = struct { FelpPenStyle TDWORD FelpWidth TDWORD FelpBrushStyle TUINT FelpColor TCOLORREF FelpHatch TULONG_PTR FelpNumEntries TDWORD FelpStyleEntry [1]TDWORD } type TEXTLOGPEN32 = struct { FelpPenStyle TDWORD FelpWidth TDWORD FelpBrushStyle TUINT FelpColor TCOLORREF FelpHatch TULONG FelpNumEntries TDWORD FelpStyleEntry [1]TDWORD } type TEXTMETRIC = TTEXTMETRIC type TEXTMETRICA = TTEXTMETRICA type TEXTMETRICW = TTEXTMETRICW // C documentation // // /* State information for the randomness gatherer. */ type TEntropyGatherer = struct { Fa uintptr Fna int32 Fi int32 FnXor int32 } type TExtendedErrorParamTypes = int32 type TFARPROC = uintptr type TFAT_STATISTICS = struct { FCreateHits TDWORD FSuccessfulCreates TDWORD FFailedCreates TDWORD FNonCachedReads TDWORD FNonCachedReadBytes TDWORD FNonCachedWrites TDWORD FNonCachedWriteBytes TDWORD FNonCachedDiskReads TDWORD FNonCachedDiskWrites TDWORD } type TFCHAR = uint8 type TFD_SET = struct { Ffd_count Tu_int Ffd_array [64]TSOCKET } type TFEEDBACK_TYPE = uint32 type TFILE = struct { F_ptr uintptr F_cnt int32 F_base uintptr F_flag int32 F_file int32 F_charbuf int32 F_bufsiz int32 F_tmpfname uintptr } type TFILEMUIINFO = struct { FdwSize TDWORD FdwVersion TDWORD FdwFileType TDWORD FpChecksum [16]TBYTE FpServiceChecksum [16]TBYTE FdwLanguageNameOffset TDWORD FdwTypeIDMainSize TDWORD FdwTypeIDMainOffset TDWORD FdwTypeNameMainOffset TDWORD FdwTypeIDMUISize TDWORD FdwTypeIDMUIOffset TDWORD FdwTypeNameMUIOffset TDWORD FabBuffer [8]TBYTE } type TFILEOP_FLAGS = uint16 type TFILESYSTEM_STATISTICS = struct { FFileSystemType TWORD FVersion TWORD FSizeOfCompleteStructure TDWORD FUserFileReads TDWORD FUserFileReadBytes TDWORD FUserDiskReads TDWORD FUserFileWrites TDWORD FUserFileWriteBytes TDWORD FUserDiskWrites TDWORD FMetaDataReads TDWORD FMetaDataReadBytes TDWORD FMetaDataDiskReads TDWORD FMetaDataWrites TDWORD FMetaDataWriteBytes TDWORD FMetaDataDiskWrites TDWORD } type TFILETIME = struct { FdwLowDateTime TDWORD FdwHighDateTime TDWORD } type TFILE_ALIGNMENT_INFO = struct { FAlignmentRequirement TULONG } type TFILE_ATTRIBUTE_TAG_INFO = struct { FFileAttributes TDWORD FReparseTag TDWORD } type TFILE_CASE_SENSITIVE_INFO = struct { FFlags TULONG } type TFILE_DISPOSITION_INFO = struct { FDeleteFileA TBOOLEAN } type TFILE_DISPOSITION_INFO_EX = struct { FFlags TDWORD } type TFILE_FS_PERSISTENT_VOLUME_INFORMATION = struct { FVolumeFlags TULONG FFlagMask TULONG FVersion TULONG FReserved TULONG } type TFILE_ID_128 = struct { FIdentifier [16]TBYTE } type TFILE_ID_TYPE = int32 type TFILE_INFO_BY_HANDLE_CLASS = int32 type TFILE_IO_PRIORITY_HINT_INFO = struct { FPriorityHint TPRIORITY_HINT } type TFILE_MAKE_COMPATIBLE_BUFFER = struct { FCloseDisc TBOOLEAN } type TFILE_NAME_INFO = struct { FFileNameLength TDWORD FFileName [1]TWCHAR } type TFILE_NOTIFY_INFORMATION = struct { FNextEntryOffset TDWORD FAction TDWORD FFileNameLength TDWORD FFileName [1]TWCHAR } type TFILE_OBJECTID_BUFFER = struct { FObjectId [16]TBYTE F__ccgo1_16 struct { FExtendedInfo [0][48]TBYTE F__ccgo0_0 struct { FBirthVolumeId [16]TBYTE FBirthObjectId [16]TBYTE FDomainId [16]TBYTE } } } type TFILE_PROVIDER_EXTERNAL_INFO_V0 = struct { FVersion TDWORD FAlgorithm TDWORD } type TFILE_PROVIDER_EXTERNAL_INFO_V1 = struct { FVersion TDWORD FAlgorithm TDWORD FFlags TDWORD } type TFILE_QUERY_SPARING_BUFFER = struct { FSparingUnitBytes TULONG FSoftwareSparing TBOOLEAN FTotalSpareBlocks TULONG FFreeSpareBlocks TULONG } type TFILE_REMOTE_PROTOCOL_INFO = struct { FStructureVersion TUSHORT FStructureSize TUSHORT FProtocol TULONG FProtocolMajorVersion TUSHORT FProtocolMinorVersion TUSHORT FProtocolRevision TUSHORT FReserved TUSHORT FFlags TULONG FGenericReserved struct { FReserved [8]TULONG } FProtocolSpecific struct { FReserved [0][16]TULONG FSmb2 struct { FServer struct { FCapabilities TULONG } FShare struct { FCapabilities TULONG FCachingFlags TULONG } } F__ccgo_pad2 [52]byte } } type TFILE_RENAME_INFO = struct { F__ccgo0_0 struct { FFlags [0]TDWORD FReplaceIfExists TBOOLEAN F__ccgo_pad2 [3]byte } FRootDirectory THANDLE FFileNameLength TDWORD FFileName [1]TWCHAR } type TFILE_SET_DEFECT_MGMT_BUFFER = struct { FDisable TBOOLEAN } type TFILE_SET_SPARSE_BUFFER = struct { FSetSparse TBOOLEAN } type TFILE_STORAGE_INFO = struct { FLogicalBytesPerSector TULONG FPhysicalBytesPerSectorForAtomicity TULONG FPhysicalBytesPerSectorForPerformance TULONG FFileSystemEffectivePhysicalBytesPerSectorForAtomicity TULONG FFlags TULONG FByteOffsetForSectorAlignment TULONG FByteOffsetForPartitionAlignment TULONG } type TFILE_SYSTEM_RECOGNITION_INFORMATION = struct { FFileSystem [9]TCHAR } type TFILE_SYSTEM_RECOGNITION_STRUCTURE = struct { FJmp [3]TUCHAR FFsName [8]TUCHAR FMustBeZero [5]TUCHAR FIdentifier TULONG FLength TUSHORT FChecksum TUSHORT } type TFILE_TYPE_NOTIFICATION_INPUT = struct { FFlags TULONG FNumFileTypeIDs TULONG FFileTypeID [1]TGUID } type TFILTERKEYS = struct { FcbSize TUINT FdwFlags TDWORD FiWaitMSec TDWORD FiDelayMSec TDWORD FiRepeatMSec TDWORD FiBounceMSec TDWORD } type TFINDEX_INFO_LEVELS = int32 type TFINDEX_SEARCH_OPS = int32 type TFINDREPLACE = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FFlags TDWORD FlpstrFindWhat TLPSTR FlpstrReplaceWith TLPSTR FwFindWhatLen TWORD FwReplaceWithLen TWORD FlCustData TLPARAM FlpfnHook TLPFRHOOKPROC FlpTemplateName TLPCSTR } type TFINDREPLACEA = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FFlags TDWORD FlpstrFindWhat TLPSTR FlpstrReplaceWith TLPSTR FwFindWhatLen TWORD FwReplaceWithLen TWORD FlCustData TLPARAM FlpfnHook TLPFRHOOKPROC FlpTemplateName TLPCSTR } type TFINDREPLACEW = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FFlags TDWORD FlpstrFindWhat TLPWSTR FlpstrReplaceWith TLPWSTR FwFindWhatLen TWORD FwReplaceWithLen TWORD FlCustData TLPARAM FlpfnHook TLPFRHOOKPROC FlpTemplateName TLPCWSTR } type TFIND_BY_SID_DATA = struct { FRestart TDWORD FSid TSID } type TFIND_BY_SID_OUTPUT = struct { FNextEntryOffset TDWORD FFileIndex TDWORD FFileNameLength TDWORD FFileName [1]TWCHAR } type TFIND_NAME_BUFFER = struct { Flength TUCHAR Faccess_control TUCHAR Fframe_control TUCHAR Fdestination_addr [6]TUCHAR Fsource_addr [6]TUCHAR Frouting_info [18]TUCHAR } type TFIND_NAME_HEADER = struct { Fnode_count TWORD Freserved TUCHAR Funique_group TUCHAR } type TFIRMWARE_TYPE = int32 type TFIXED = struct { Ffract TWORD Fvalue int16 } type TFLAGGED_BYTE_BLOB = struct { FfFlags TULONG FclSize TULONG FabData [1]Tbyte } type TFLAGGED_WORD_BLOB = struct { FfFlags TULONG FclSize TULONG FasData [1]uint16 } type TFLAG_STGMEDIUM = struct { FContextFlags TLONG FfPassOwnership TLONG FStgmed TSTGMEDIUM } type TFLASHWINFO = struct { FcbSize TUINT Fhwnd THWND FdwFlags TDWORD FuCount TUINT FdwTimeout TDWORD } type TFLOAT = float32 type TFLONG = uint32 type TFMTID = struct { FData1 uint32 FData2 uint16 FData3 uint16 FData4 [8]uint8 } type TFOCUS_EVENT_RECORD = struct { FbSetFocus TWINBOOL } type TFONTENUMPROC = uintptr type TFONTENUMPROCA = uintptr type TFONTENUMPROCW = uintptr type TFONTSIGNATURE = struct { FfsUsb [4]TDWORD FfsCsb [2]TDWORD } type TFORMATETC = struct { FcfFormat TCLIPFORMAT Fptd uintptr FdwAspect TDWORD Flindex TLONG Ftymed TDWORD } type TFORMAT_EX_PARAMETERS = struct { FMediaType TMEDIA_TYPE FStartCylinderNumber TDWORD FEndCylinderNumber TDWORD FStartHeadNumber TDWORD FEndHeadNumber TDWORD FFormatGapLength TWORD FSectorsPerTrack TWORD FSectorNumber [1]TWORD } type TFORMAT_PARAMETERS = struct { FMediaType TMEDIA_TYPE FStartCylinderNumber TDWORD FEndCylinderNumber TDWORD FStartHeadNumber TDWORD FEndHeadNumber TDWORD } type TFORM_INFO_1 = struct { FFlags TDWORD FpName TLPSTR FSize TSIZEL FImageableArea TRECTL } type TFORM_INFO_1A = struct { FFlags TDWORD FpName TLPSTR FSize TSIZEL FImageableArea TRECTL } type TFORM_INFO_1W = struct { FFlags TDWORD FpName TLPWSTR FSize TSIZEL FImageableArea TRECTL } type TFORM_INFO_2 = struct { FFlags TDWORD FpName TLPSTR FSize TSIZEL FImageableArea TRECTL FpKeyword TLPCSTR FStringType TDWORD FpMuiDll TLPCSTR FdwResourceId TDWORD FpDisplayName TLPCSTR FwLangId TLANGID } type TFORM_INFO_2A = struct { FFlags TDWORD FpName TLPSTR FSize TSIZEL FImageableArea TRECTL FpKeyword TLPCSTR FStringType TDWORD FpMuiDll TLPCSTR FdwResourceId TDWORD FpDisplayName TLPCSTR FwLangId TLANGID } type TFORM_INFO_2W = struct { FFlags TDWORD FpName TLPWSTR FSize TSIZEL FImageableArea TRECTL FpKeyword TLPCSTR FStringType TDWORD FpMuiDll TLPCWSTR FdwResourceId TDWORD FpDisplayName TLPCWSTR FwLangId TLANGID } type TFOURCC = uint32 type TFPO_DATA = struct { FulOffStart TDWORD FcbProcSize TDWORD FcdwLocals TDWORD FcdwParams TWORD F__ccgo14 uint16 } type TFSCTL_QUERY_FAT_BPB_BUFFER = struct { FFirst0x24BytesOfBootSector [36]TBYTE } type TFSHORT = uint16 type TFULL_PTR_TO_REFID_ELEMENT = struct { FNext uintptr FPointer uintptr FRefId uint32 FState uint8 } type TFULL_PTR_XLAT_TABLES = struct { FRefIdToPointer struct { FXlatTable uintptr FStateTable uintptr FNumberOfEntries uint32 } FPointerToRefId struct { FXlatTable uintptr FNumberOfBuckets uint32 FHashMask uint32 } FNextRefId uint32 FXlatSide TXLAT_SIDE } type TFUNCDESC = struct { Fmemid TMEMBERID Flprgscode uintptr FlprgelemdescParam uintptr Ffunckind TFUNCKIND Finvkind TINVOKEKIND Fcallconv TCALLCONV FcParams TSHORT FcParamsOpt TSHORT FoVft TSHORT FcScodes TSHORT FelemdescFunc TELEMDESC FwFuncFlags TWORD } type TFUNCFLAGS = int32 type TFUNCKIND = int32 type TFXPT16DOT16 = int32 type TFXPT2DOT30 = int32 const TF_DISCONNECT = 1 const TF_REUSE_SOCKET = 2 const TF_WRITE_BEHIND = 4 type TGCP_RESULTS = struct { FlStructSize TDWORD FlpOutString TLPSTR FlpOrder uintptr FlpDx uintptr FlpCaretPos uintptr FlpClass TLPSTR FlpGlyphs TLPWSTR FnGlyphs TUINT FnMaxFit int32 } type TGCP_RESULTSA = struct { FlStructSize TDWORD FlpOutString TLPSTR FlpOrder uintptr FlpDx uintptr FlpCaretPos uintptr FlpClass TLPSTR FlpGlyphs TLPWSTR FnGlyphs TUINT FnMaxFit int32 } type TGCP_RESULTSW = struct { FlStructSize TDWORD FlpOutString TLPWSTR FlpOrder uintptr FlpDx uintptr FlpCaretPos uintptr FlpClass TLPSTR FlpGlyphs TLPWSTR FnGlyphs TUINT FnMaxFit int32 } type TGDI_NONREMOTE = struct { FfContext TLONG Fu t__WIDL_wtypes_generated_name_00000002 } type TGDI_OBJECT = struct { FObjectType TDWORD Fu t__WIDL_objidl_generated_name_0000000C } type TGENERIC_BINDING_INFO = struct { FpObj uintptr FSize uint32 FpfnBind TGENERIC_BINDING_ROUTINE FpfnUnbind TGENERIC_UNBIND_ROUTINE } type TGENERIC_BINDING_ROUTINE = uintptr type TGENERIC_BINDING_ROUTINE_PAIR = struct { FpfnBind TGENERIC_BINDING_ROUTINE FpfnUnbind TGENERIC_UNBIND_ROUTINE } type TGENERIC_MAPPING = struct { FGenericRead TACCESS_MASK FGenericWrite TACCESS_MASK FGenericExecute TACCESS_MASK FGenericAll TACCESS_MASK } type TGENERIC_UNBIND_ROUTINE = uintptr type TGEOCLASS = uint32 type TGEOID = int32 type TGEOTYPE = uint32 type TGEO_ENUMPROC = uintptr type TGESTURECONFIG = struct { FdwID TDWORD FdwWant TDWORD FdwBlock TDWORD } type TGESTURENOTIFYSTRUCT = struct { FcbSize TUINT FdwFlags TDWORD FhwndTarget THWND FptsLocation TPOINTS FdwInstanceID TDWORD } type TGETVERSIONINPARAMS = struct { FbVersion TBYTE FbRevision TBYTE FbReserved TBYTE FbIDEDeviceMap TBYTE FfCapabilities TDWORD FdwReserved [4]TDWORD } type TGET_CHANGER_PARAMETERS = struct { FSize TDWORD FNumberTransportElements TWORD FNumberStorageElements TWORD FNumberCleanerSlots TWORD FNumberIEElements TWORD FNumberDataTransferElements TWORD FNumberOfDoors TWORD FFirstSlotNumber TWORD FFirstDriveNumber TWORD FFirstTransportNumber TWORD FFirstIEPortNumber TWORD FFirstCleanerSlotAddress TWORD FMagazineSize TWORD FDriveCleanTimeout TDWORD FFeatures0 TDWORD FFeatures1 TDWORD FMoveFromTransport TBYTE FMoveFromSlot TBYTE FMoveFromIePort TBYTE FMoveFromDrive TBYTE FExchangeFromTransport TBYTE FExchangeFromSlot TBYTE FExchangeFromIePort TBYTE FExchangeFromDrive TBYTE FLockUnlockCapabilities TBYTE FPositionCapabilities TBYTE FReserved1 [2]TBYTE FReserved2 [2]TDWORD } type TGET_FILEEX_INFO_LEVELS = int32 type TGET_STORAGE_DEPENDENCY_FLAG = int32 type TGET_VIRTUAL_DISK_INFO_VERSION = int32 type TGLOBALHANDLE = uintptr type TGLOBALOPT_EH_VALUES = int32 type TGLOBALOPT_PROPERTIES = int32 type TGLOBALOPT_RO_FLAGS = int32 type TGLOBALOPT_RPCTP_VALUES = int32 type TGLOBALOPT_UNMARSHALING_POLICY_VALUES = int32 type TGLYPHMETRICS = struct { FgmBlackBoxX TUINT FgmBlackBoxY TUINT FgmptGlyphOrigin TPOINT FgmCellIncX int16 FgmCellIncY int16 } type TGLYPHMETRICSFLOAT = struct { FgmfBlackBoxX TFLOAT FgmfBlackBoxY TFLOAT FgmfptGlyphOrigin TPOINTFLOAT FgmfCellIncX TFLOAT FgmfCellIncY TFLOAT } type TGLYPHSET = struct { FcbThis TDWORD FflAccel TDWORD FcGlyphsSupported TDWORD FcRanges TDWORD Franges [1]TWCRANGE } type TGOBJENUMPROC = uintptr type TGRADIENT_RECT = struct { FUpperLeft TULONG FLowerRight TULONG } type TGRADIENT_TRIANGLE = struct { FVertex1 TULONG FVertex2 TULONG FVertex3 TULONG } type TGRAYSTRINGPROC = uintptr type TGROUP_AFFINITY = struct { FMask TKAFFINITY FGroup TWORD FReserved [3]TWORD } type TGROUP_RELATIONSHIP = struct { FMaximumGroupCount TWORD FActiveGroupCount TWORD FReserved [20]TBYTE FGroupInfo [1]TPROCESSOR_GROUP_INFO } type TGUID = struct { FData1 uint32 FData2 uint16 FData3 uint16 FData4 [8]uint8 } type TGUITHREADINFO = struct { FcbSize TDWORD Fflags TDWORD FhwndActive THWND FhwndFocus THWND FhwndCapture THWND FhwndMenuOwner THWND FhwndMoveSize THWND FhwndCaret THWND FrcCaret TRECT } type THACCEL = uintptr type THACCEL__ = struct { Funused int32 } const THAI_CHARSET = 222 type THANDLE = uintptr type THANDLETABLE = struct { FobjectHandle [1]THGDIOBJ } type THARDWAREHOOKSTRUCT = struct { Fhwnd THWND Fmessage TUINT FwParam TWPARAM FlParam TLPARAM } type THARDWAREINPUT = struct { FuMsg TDWORD FwParamL TWORD FwParamH TWORD } type THARDWARE_COUNTER_TYPE = int32 type THASHALGORITHM_ENUM = int32 type THBITMAP = uintptr type THBITMAP__ = struct { Funused int32 } type THBRUSH = uintptr type THBRUSH__ = struct { Funused int32 } type THCERTCHAINENGINE = uintptr type THCERTSTORE = uintptr type THCERTSTOREPROV = uintptr type THCERT_SERVER_OCSP_RESPONSE = uintptr type THCOLORSPACE = uintptr type THCOLORSPACE__ = struct { Funused int32 } type THCONTEXT = uintptr type THCONV = uintptr type THCONVLIST = uintptr type THCONVLIST__ = struct { Funused int32 } type THCONV__ = struct { Funused int32 } type THCRYPTASYNC = uintptr type THCRYPTDEFAULTCONTEXT = uintptr type THCRYPTMSG = uintptr type THCRYPTOIDFUNCADDR = uintptr type THCRYPTOIDFUNCSET = uintptr type THCURSOR = uintptr type THDC = uintptr type THDC__ = struct { Funused int32 } type THDDEDATA = uintptr type THDDEDATA__ = struct { Funused int32 } type THDESK = uintptr type THDESK__ = struct { Funused int32 } type THDEVNOTIFY = uintptr type THDROP = uintptr type THDROP__ = struct { Funused int32 } type THDRVR = uintptr type THDRVR__ = struct { Funused int32 } type THDTYPE = TTHDTYPE type THDWP = uintptr type THEAP_INFORMATION_CLASS = int32 type THEAP_SUMMARY = struct { Fcb TDWORD FcbAllocated TSIZE_T FcbCommitted TSIZE_T FcbReserved TSIZE_T FcbMaxReserve TSIZE_T } type THELPINFO = struct { FcbSize TUINT FiContextType int32 FiCtrlId int32 FhItemHandle THANDLE FdwContextId TDWORD_PTR FMousePos TPOINT } type THELPPOLY = uint32 type THELPWININFO = struct { FwStructSize int32 Fx int32 Fy int32 Fdx int32 Fdy int32 FwMax int32 FrgchMember [2]TCHAR } type THELPWININFOA = struct { FwStructSize int32 Fx int32 Fy int32 Fdx int32 Fdy int32 FwMax int32 FrgchMember [2]TCHAR } type THELPWININFOW = struct { FwStructSize int32 Fx int32 Fy int32 Fdx int32 Fdy int32 FwMax int32 FrgchMember [2]TWCHAR } type THENHMETAFILE = uintptr type THENHMETAFILE__ = struct { Funused int32 } type THFILE = int32 type THFONT = uintptr type THFONT__ = struct { Funused int32 } type THGDIOBJ = uintptr type THGESTUREINFO = uintptr type THGESTUREINFO__ = struct { Funused int32 } type THGLOBAL = uintptr type THGLRC = uintptr type THGLRC__ = struct { Funused int32 } type THHOOK = uintptr type THHOOK__ = struct { Funused int32 } type THICON = uintptr type THICON__ = struct { Funused int32 } type THIGHCONTRAST = struct { FcbSize TUINT FdwFlags TDWORD FlpszDefaultScheme TLPSTR } type THIGHCONTRASTA = struct { FcbSize TUINT FdwFlags TDWORD FlpszDefaultScheme TLPSTR } type THIGHCONTRASTW = struct { FcbSize TUINT FdwFlags TDWORD FlpszDefaultScheme TLPWSTR } type THIMC = uintptr type THIMCC = uintptr type THIMCC__ = struct { Funused int32 } type THIMC__ = struct { Funused int32 } type THINSTANCE = uintptr type THINSTANCE__ = struct { Funused int32 } const THIS = 0 type THISTOGRAM_BUCKET = struct { FReads TDWORD FWrites TDWORD } const THIS_ = 0 type THIT_LOGGING_INFO = struct { FdwStructSize TDWORD FlpszLoggedUrlName TLPSTR FStartTime TSYSTEMTIME FEndTime TSYSTEMTIME FlpszExtendedInfo TLPSTR } type THKEY = uintptr type THKEY__ = struct { Funused int32 } type THKL = uintptr type THKL__ = struct { Funused int32 } type THLOCAL = uintptr type THLSURF = uintptr type THLSURF__ = struct { Funused int32 } type THMAC_INFO = struct { FHashAlgid TALG_ID FpbInnerString uintptr FcbInnerString TDWORD FpbOuterString uintptr FcbOuterString TDWORD } type THMENU = uintptr type THMENU__ = struct { Funused int32 } type THMETAFILE = uintptr type THMETAFILEPICT = uintptr type THMETAFILE__ = struct { Funused int32 } type THMIDI = uintptr type THMIDIIN = uintptr type THMIDIIN__ = struct { Funused int32 } type THMIDIOUT = uintptr type THMIDIOUT__ = struct { Funused int32 } type THMIDISTRM = uintptr type THMIDISTRM__ = struct { Funused int32 } type THMIDI__ = struct { Funused int32 } type THMIXER = uintptr type THMIXEROBJ = uintptr type THMIXEROBJ__ = struct { Funused int32 } type THMIXER__ = struct { Funused int32 } type THMMIO = uintptr type THMMIO__ = struct { Funused int32 } type THMODULE = uintptr type THMONITOR = uintptr type THMONITOR__ = struct { Funused int32 } type THOLEMENU = uintptr type THOOKPROC = uintptr type THOSTENT = struct { Fh_name uintptr Fh_aliases uintptr Fh_addrtype int16 Fh_length int16 Fh_addr_list uintptr } type THPALETTE = uintptr type THPALETTE__ = struct { Funused int32 } type THPEN = uintptr type THPEN__ = struct { Funused int32 } type THPOWERNOTIFY = uintptr type THPROPSHEETPAGE = uintptr type THPSTR = uintptr type THRAWINPUT = uintptr type THRAWINPUT__ = struct { Funused int32 } const THREAD_ALL_ACCESS = 2097151 const THREAD_BASE_PRIORITY_IDLE = -15 const THREAD_BASE_PRIORITY_LOWRT = 15 const THREAD_BASE_PRIORITY_MAX = 2 const THREAD_BASE_PRIORITY_MIN = -2 const THREAD_DIRECT_IMPERSONATION = 512 const THREAD_GET_CONTEXT = 8 const THREAD_IMPERSONATE = 256 type THREAD_INFORMATION_CLASS = TTHREAD_INFORMATION_CLASS const THREAD_MODE_BACKGROUND_BEGIN = 65536 const THREAD_MODE_BACKGROUND_END = 131072 const THREAD_PRIORITY_ABOVE_NORMAL = 1 const THREAD_PRIORITY_BELOW_NORMAL = -1 const THREAD_PRIORITY_ERROR_RETURN = 2147483647 const THREAD_PRIORITY_HIGHEST = 2 const THREAD_PRIORITY_IDLE = -15 const THREAD_PRIORITY_LOWEST = -2 const THREAD_PRIORITY_NORMAL = 0 const THREAD_PRIORITY_TIME_CRITICAL = 15 const THREAD_PROFILING_FLAG_DISPATCH = 1 const THREAD_QUERY_INFORMATION = 64 const THREAD_QUERY_LIMITED_INFORMATION = 2048 const THREAD_SET_CONTEXT = 16 const THREAD_SET_INFORMATION = 32 const THREAD_SET_LIMITED_INFORMATION = 1024 const THREAD_SET_THREAD_TOKEN = 128 const THREAD_SUSPEND_RESUME = 2 const THREAD_TERMINATE = 1 type THREFTYPE = uint32 type THRESULT = int32 type THRGN = uintptr type THRGN__ = struct { Funused int32 } type THRSRC = uintptr type THRSRC__ = struct { Funused int32 } type THSPRITE = uintptr type THSPRITE__ = struct { Funused int32 } type THSTR = uintptr type THSTR__ = struct { Funused int32 } type THSZ = uintptr type THSZPAIR = struct { FhszSvc THSZ FhszTopic THSZ } type THSZ__ = struct { Funused int32 } type THTASK = uintptr type THTASK__ = struct { Funused int32 } type THTOUCHINPUT = uintptr type THTOUCHINPUT__ = struct { Funused int32 } type THTTPSPolicyCallbackData = struct { F__ccgo0_0 struct { FcbSize [0]TDWORD FcbStruct TDWORD } FdwAuthType TDWORD FfdwChecks TDWORD FpwszServerName uintptr } type THUMPD = uintptr type THUMPD__ = struct { Funused int32 } type THWAVE = uintptr type THWAVEIN = uintptr type THWAVEIN__ = struct { Funused int32 } type THWAVEOUT = uintptr type THWAVEOUT__ = struct { Funused int32 } type THWAVE__ = struct { Funused int32 } type THWINEVENTHOOK = uintptr type THWINEVENTHOOK__ = struct { Funused int32 } type THWINSTA = uintptr type THWINSTA__ = struct { Funused int32 } type THWND = uintptr type THWND__ = struct { Funused int32 } type THW_PROFILE_INFO = struct { FdwDockInfo TDWORD FszHwProfileGuid [39]TCHAR FszHwProfileName [80]TCHAR } type THW_PROFILE_INFOA = struct { FdwDockInfo TDWORD FszHwProfileGuid [39]TCHAR FszHwProfileName [80]TCHAR } type THW_PROFILE_INFOW = struct { FdwDockInfo TDWORD FszHwProfileGuid [39]TWCHAR FszHwProfileName [80]TWCHAR } type THYPER_SIZEDARR = struct { FclSize TULONG FpData uintptr } type TIAddrExclusionControl = struct { FlpVtbl uintptr } type TIAddrExclusionControlVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetCurrentAddrExclusionList uintptr FUpdateAddrExclusionList uintptr } type TIAddrTrackingControl = struct { FlpVtbl uintptr } type TIAddrTrackingControlVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FEnableCOMDynamicAddrTracking uintptr FDisableCOMDynamicAddrTracking uintptr } type TIAdviseSink = struct { FlpVtbl uintptr } type TIAdviseSink2 = struct { FlpVtbl uintptr } type TIAdviseSink2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FOnDataChange uintptr FOnViewChange uintptr FOnRename uintptr FOnSave uintptr FOnClose uintptr FOnLinkSrcChange uintptr } type TIAdviseSinkVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FOnDataChange uintptr FOnViewChange uintptr FOnRename uintptr FOnSave uintptr FOnClose uintptr } type TIAgileObject = struct { FlpVtbl uintptr } type TIAgileObjectVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr } type TIAgileReference = struct { FlpVtbl uintptr } type TIAgileReferenceVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FResolve uintptr } type TIApartmentShutdown = struct { FlpVtbl uintptr } type TIApartmentShutdownVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FOnUninitialize uintptr } type TIAsyncManager = struct { FlpVtbl uintptr } type TIAsyncManagerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCompleteCall uintptr FGetCallContext uintptr FGetState uintptr } type TIAsyncRpcChannelBuffer = struct { FlpVtbl uintptr } type TIAsyncRpcChannelBufferVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetBuffer uintptr FSendReceive uintptr FFreeBuffer uintptr FGetDestCtx uintptr FIsConnected uintptr FGetProtocolVersion uintptr FSend uintptr FReceive uintptr FGetDestCtxEx uintptr } type TIAuthenticate = struct { FlpVtbl uintptr } type TIAuthenticateEx = struct { FlpVtbl uintptr } type TIAuthenticateExVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAuthenticate uintptr FAuthenticateEx uintptr } type TIAuthenticateVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAuthenticate uintptr } type TIBindCallbackRedirect = struct { FlpVtbl uintptr } type TIBindCallbackRedirectVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRedirect uintptr } type TIBindCtx = struct { FlpVtbl uintptr } type TIBindCtxVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRegisterObjectBound uintptr FRevokeObjectBound uintptr FReleaseBoundObjects uintptr FSetBindOptions uintptr FGetBindOptions uintptr FGetRunningObjectTable uintptr FRegisterObjectParam uintptr FGetObjectParam uintptr FEnumObjectParam uintptr FRevokeObjectParam uintptr } type TIBindHost = struct { FlpVtbl uintptr } type TIBindHostVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateMoniker uintptr FMonikerBindToStorage uintptr FMonikerBindToObject uintptr } type TIBindProtocol = struct { FlpVtbl uintptr } type TIBindProtocolVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateBinding uintptr } type TIBindStatusCallback = struct { FlpVtbl uintptr } type TIBindStatusCallbackEx = struct { FlpVtbl uintptr } type TIBindStatusCallbackExVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FOnStartBinding uintptr FGetPriority uintptr FOnLowResource uintptr FOnProgress uintptr FOnStopBinding uintptr FGetBindInfo uintptr FOnDataAvailable uintptr FOnObjectAvailable uintptr FGetBindInfoEx uintptr } type TIBindStatusCallbackVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FOnStartBinding uintptr FGetPriority uintptr FOnLowResource uintptr FOnProgress uintptr FOnStopBinding uintptr FGetBindInfo uintptr FOnDataAvailable uintptr FOnObjectAvailable uintptr } type TIBinding = struct { FlpVtbl uintptr } type TIBindingVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAbort uintptr FSuspend uintptr FResume uintptr FSetPriority uintptr FGetPriority uintptr FGetBindResult uintptr } type TIBlockingLock = struct { FlpVtbl uintptr } type TIBlockingLockVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FLock uintptr FUnlock uintptr } type TICMENUMPROCA = uintptr type TICMENUMPROCW = uintptr type TICONINFO = struct { FfIcon TWINBOOL FxHotspot TDWORD FyHotspot TDWORD FhbmMask THBITMAP FhbmColor THBITMAP } type TICONINFOEX = struct { FcbSize TDWORD FfIcon TWINBOOL FxHotspot TDWORD FyHotspot TDWORD FhbmMask THBITMAP FhbmColor THBITMAP FwResID TWORD FszModName [260]TCHAR FszResName [260]TCHAR } type TICONINFOEXA = struct { FcbSize TDWORD FfIcon TWINBOOL FxHotspot TDWORD FyHotspot TDWORD FhbmMask THBITMAP FhbmColor THBITMAP FwResID TWORD FszModName [260]TCHAR FszResName [260]TCHAR } type TICONINFOEXW = struct { FcbSize TDWORD FfIcon TWINBOOL FxHotspot TDWORD FyHotspot TDWORD FhbmMask THBITMAP FhbmColor THBITMAP FwResID TWORD FszModName [260]TWCHAR FszResName [260]TWCHAR } type TICONMETRICS = struct { FcbSize TUINT FiHorzSpacing int32 FiVertSpacing int32 FiTitleWrap int32 FlfFont TLOGFONTA } type TICONMETRICSA = struct { FcbSize TUINT FiHorzSpacing int32 FiVertSpacing int32 FiTitleWrap int32 FlfFont TLOGFONTA } type TICONMETRICSW = struct { FcbSize TUINT FiHorzSpacing int32 FiVertSpacing int32 FiTitleWrap int32 FlfFont TLOGFONTW } type TICallFactory = struct { FlpVtbl uintptr } type TICallFactoryVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateCall uintptr } type TICancelMethodCalls = struct { FlpVtbl uintptr } type TICancelMethodCallsVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCancel uintptr FTestCancel uintptr } type TICatalogFileInfo = struct { FlpVtbl uintptr } type TICatalogFileInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetCatalogFile uintptr FGetJavaTrust uintptr } type TIChannelHook = struct { FlpVtbl uintptr } type TIChannelHookVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FClientGetSize uintptr FClientFillBuffer uintptr FClientNotify uintptr FServerNotify uintptr FServerGetSize uintptr FServerFillBuffer uintptr } type TIClassActivator = struct { FlpVtbl uintptr } type TIClassActivatorVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetClassObject uintptr } type TIClassFactory = struct { FlpVtbl uintptr } type TIClassFactoryVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateInstance uintptr FLockServer uintptr } type TIClientSecurity = struct { FlpVtbl uintptr } type TIClientSecurityVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FQueryBlanket uintptr FSetBlanket uintptr FCopyProxy uintptr } type TICodeInstall = struct { FlpVtbl uintptr } type TICodeInstallVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FOnCodeInstallProblem uintptr } type TIComThreadingInfo = struct { FlpVtbl uintptr } type TIComThreadingInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetCurrentApartmentType uintptr FGetCurrentThreadType uintptr FGetCurrentLogicalThreadId uintptr FSetCurrentLogicalThreadId uintptr } type TIContinue = struct { FlpVtbl uintptr } type TIContinueVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FFContinue uintptr } type TICreateErrorInfo = struct { FlpVtbl uintptr } type TICreateErrorInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetGUID uintptr FSetSource uintptr FSetDescription uintptr FSetHelpFile uintptr FSetHelpContext uintptr } type TICreateTypeInfo = struct { FlpVtbl uintptr } type TICreateTypeInfo2 = struct { FlpVtbl uintptr } type TICreateTypeInfo2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetGuid uintptr FSetTypeFlags uintptr FSetDocString uintptr FSetHelpContext uintptr FSetVersion uintptr FAddRefTypeInfo uintptr FAddFuncDesc uintptr FAddImplType uintptr FSetImplTypeFlags uintptr FSetAlignment uintptr FSetSchema uintptr FAddVarDesc uintptr FSetFuncAndParamNames uintptr FSetVarName uintptr FSetTypeDescAlias uintptr FDefineFuncAsDllEntry uintptr FSetFuncDocString uintptr FSetVarDocString uintptr FSetFuncHelpContext uintptr FSetVarHelpContext uintptr FSetMops uintptr FSetTypeIdldesc uintptr FLayOut uintptr FDeleteFuncDesc uintptr FDeleteFuncDescByMemId uintptr FDeleteVarDesc uintptr FDeleteVarDescByMemId uintptr FDeleteImplType uintptr FSetCustData uintptr FSetFuncCustData uintptr FSetParamCustData uintptr FSetVarCustData uintptr FSetImplTypeCustData uintptr FSetHelpStringContext uintptr FSetFuncHelpStringContext uintptr FSetVarHelpStringContext uintptr FInvalidate uintptr FSetName uintptr } type TICreateTypeInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetGuid uintptr FSetTypeFlags uintptr FSetDocString uintptr FSetHelpContext uintptr FSetVersion uintptr FAddRefTypeInfo uintptr FAddFuncDesc uintptr FAddImplType uintptr FSetImplTypeFlags uintptr FSetAlignment uintptr FSetSchema uintptr FAddVarDesc uintptr FSetFuncAndParamNames uintptr FSetVarName uintptr FSetTypeDescAlias uintptr FDefineFuncAsDllEntry uintptr FSetFuncDocString uintptr FSetVarDocString uintptr FSetFuncHelpContext uintptr FSetVarHelpContext uintptr FSetMops uintptr FSetTypeIdldesc uintptr FLayOut uintptr } type TICreateTypeLib = struct { FlpVtbl uintptr } type TICreateTypeLib2 = struct { FlpVtbl uintptr } type TICreateTypeLib2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateTypeInfo uintptr FSetName uintptr FSetVersion uintptr FSetGuid uintptr FSetDocString uintptr FSetHelpFileName uintptr FSetHelpContext uintptr FSetLcid uintptr FSetLibFlags uintptr FSaveAllChanges uintptr FDeleteTypeInfo uintptr FSetCustData uintptr FSetHelpStringContext uintptr FSetHelpStringDll uintptr } type TICreateTypeLibVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateTypeInfo uintptr FSetName uintptr FSetVersion uintptr FSetGuid uintptr FSetDocString uintptr FSetHelpFileName uintptr FSetHelpContext uintptr FSetLcid uintptr FSetLibFlags uintptr FSaveAllChanges uintptr } type TIDEREGS = struct { FbFeaturesReg TBYTE FbSectorCountReg TBYTE FbSectorNumberReg TBYTE FbCylLowReg TBYTE FbCylHighReg TBYTE FbDriveHeadReg TBYTE FbCommandReg TBYTE FbReserved TBYTE } type TIDLDESC = struct { FdwReserved TULONG_PTR FwIDLFlags TUSHORT } type TIDL_CS_CONVERT = int32 type TIDataAdviseHolder = struct { FlpVtbl uintptr } type TIDataAdviseHolderVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAdvise uintptr FUnadvise uintptr FEnumAdvise uintptr FSendOnDataChange uintptr } type TIDataFilter = struct { FlpVtbl uintptr } type TIDataFilterVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FDoEncode uintptr FDoDecode uintptr FSetEncodingLevel uintptr } type TIDataObject = struct { FlpVtbl uintptr } type TIDataObjectVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetData uintptr FGetDataHere uintptr FQueryGetData uintptr FGetCanonicalFormatEtc uintptr FSetData uintptr FEnumFormatEtc uintptr FDAdvise uintptr FDUnadvise uintptr FEnumDAdvise uintptr } type TIDirectWriterLock = struct { FlpVtbl uintptr } type TIDirectWriterLockVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FWaitForWriteAccess uintptr FReleaseWriteAccess uintptr FHaveWriteAccess uintptr } type TIDispatch = struct { FlpVtbl uintptr } type TIDispatchVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr } type TIDropSource = struct { FlpVtbl uintptr } type TIDropSourceNotify = struct { FlpVtbl uintptr } type TIDropSourceNotifyVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FDragEnterTarget uintptr FDragLeaveTarget uintptr } type TIDropSourceVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FQueryContinueDrag uintptr FGiveFeedback uintptr } type TIDropTarget = struct { FlpVtbl uintptr } type TIDropTargetVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FDragEnter uintptr FDragOver uintptr FDragLeave uintptr FDrop uintptr } type TIDummyHICONIncluder = struct { FlpVtbl uintptr } type TIDummyHICONIncluderVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FDummy uintptr } type TIEncodingFilterFactory = struct { FlpVtbl uintptr } type TIEncodingFilterFactoryVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FFindBestFilter uintptr FGetDefaultFilter uintptr } type TIEnumFORMATETC = struct { FlpVtbl uintptr } type TIEnumFORMATETCVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumMoniker = struct { FlpVtbl uintptr } type TIEnumMonikerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumOLEVERB = struct { FlpVtbl uintptr } type TIEnumOLEVERBVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumSTATDATA = struct { FlpVtbl uintptr } type TIEnumSTATDATAVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumSTATPROPSETSTG = struct { FlpVtbl uintptr } type TIEnumSTATPROPSETSTGVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumSTATPROPSTG = struct { FlpVtbl uintptr } type TIEnumSTATPROPSTGVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumSTATSTG = struct { FlpVtbl uintptr } type TIEnumSTATSTGVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumString = struct { FlpVtbl uintptr } type TIEnumStringVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumUnknown = struct { FlpVtbl uintptr } type TIEnumUnknownVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIEnumVARIANT = struct { FlpVtbl uintptr } type TIEnumVARIANTVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNext uintptr FSkip uintptr FReset uintptr FClone uintptr } type TIErrorInfo = struct { FlpVtbl uintptr } type TIErrorInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetGUID uintptr FGetSource uintptr FGetDescription uintptr FGetHelpFile uintptr FGetHelpContext uintptr } type TIErrorLog = struct { FlpVtbl uintptr } type TIErrorLogVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAddError uintptr } type TIExternalConnection = struct { FlpVtbl uintptr } type TIExternalConnectionVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAddConnection uintptr FReleaseConnection uintptr } type TIFastRundown = struct { FlpVtbl uintptr } type TIFastRundownVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr } type TIFillLockBytes = struct { FlpVtbl uintptr } type TIFillLockBytesVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FFillAppend uintptr FFillAt uintptr FSetFillSize uintptr FTerminate uintptr } type TIForegroundTransfer = struct { FlpVtbl uintptr } type TIForegroundTransferVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAllowForegroundTransfer uintptr } type TIGetBindHandle = struct { FlpVtbl uintptr } type TIGetBindHandleVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetBindHandle uintptr } type TIGlobalInterfaceTable = struct { FlpVtbl uintptr } type TIGlobalInterfaceTableVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRegisterInterfaceInGlobal uintptr FRevokeInterfaceFromGlobal uintptr FGetInterfaceFromGlobal uintptr } type TIGlobalOptions = struct { FlpVtbl uintptr } type TIGlobalOptionsVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSet uintptr FQuery uintptr } type TIHttpNegotiate = struct { FlpVtbl uintptr } type TIHttpNegotiate2 = struct { FlpVtbl uintptr } type TIHttpNegotiate2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FBeginningTransaction uintptr FOnResponse uintptr FGetRootSecurityId uintptr } type TIHttpNegotiate3 = struct { FlpVtbl uintptr } type TIHttpNegotiate3Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FBeginningTransaction uintptr FOnResponse uintptr FGetRootSecurityId uintptr FGetSerializedClientCertContext uintptr } type TIHttpNegotiateVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FBeginningTransaction uintptr FOnResponse uintptr } type TIHttpSecurity = struct { FlpVtbl uintptr } type TIHttpSecurityVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FOnSecurityProblem uintptr } type TIID = struct { FData1 uint32 FData2 uint16 FData3 uint16 FData4 [8]uint8 } type TIInitializeSpy = struct { FlpVtbl uintptr } type TIInitializeSpyVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FPreInitialize uintptr FPostInitialize uintptr FPreUninitialize uintptr FPostUninitialize uintptr } type TIInternalUnknown = struct { FlpVtbl uintptr } type TIInternalUnknownVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FQueryInternalInterface uintptr } type TIInternet = struct { FlpVtbl uintptr } type TIInternetBindInfo = struct { FlpVtbl uintptr } type TIInternetBindInfoEx = struct { FlpVtbl uintptr } type TIInternetBindInfoExVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetBindInfo uintptr FGetBindString uintptr FGetBindInfoEx uintptr } type TIInternetBindInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetBindInfo uintptr FGetBindString uintptr } type TIInternetHostSecurityManager = struct { FlpVtbl uintptr } type TIInternetHostSecurityManagerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetSecurityId uintptr FProcessUrlAction uintptr FQueryCustomPolicy uintptr } type TIInternetPriority = struct { FlpVtbl uintptr } type TIInternetPriorityVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetPriority uintptr FGetPriority uintptr } type TIInternetProtocol = struct { FlpVtbl uintptr } type TIInternetProtocolEx = struct { FlpVtbl uintptr } type TIInternetProtocolExVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FStart uintptr FContinue uintptr FAbort uintptr FTerminate uintptr FSuspend uintptr FResume uintptr FRead uintptr FSeek uintptr FLockRequest uintptr FUnlockRequest uintptr FStartEx uintptr } type TIInternetProtocolInfo = struct { FlpVtbl uintptr } type TIInternetProtocolInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FParseUrl uintptr FCombineUrl uintptr FCompareUrl uintptr FQueryInfo uintptr } type TIInternetProtocolRoot = struct { FlpVtbl uintptr } type TIInternetProtocolRootVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FStart uintptr FContinue uintptr FAbort uintptr FTerminate uintptr FSuspend uintptr FResume uintptr } type TIInternetProtocolSink = struct { FlpVtbl uintptr } type TIInternetProtocolSinkStackable = struct { FlpVtbl uintptr } type TIInternetProtocolSinkStackableVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSwitchSink uintptr FCommitSwitch uintptr FRollbackSwitch uintptr } type TIInternetProtocolSinkVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSwitch uintptr FReportProgress uintptr FReportData uintptr FReportResult uintptr } type TIInternetProtocolVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FStart uintptr FContinue uintptr FAbort uintptr FTerminate uintptr FSuspend uintptr FResume uintptr FRead uintptr FSeek uintptr FLockRequest uintptr FUnlockRequest uintptr } type TIInternetSecurityManager = struct { FlpVtbl uintptr } type TIInternetSecurityManagerEx = struct { FlpVtbl uintptr } type TIInternetSecurityManagerEx2 = struct { FlpVtbl uintptr } type TIInternetSecurityManagerEx2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetSecuritySite uintptr FGetSecuritySite uintptr FMapUrlToZone uintptr FGetSecurityId uintptr FProcessUrlAction uintptr FQueryCustomPolicy uintptr FSetZoneMapping uintptr FGetZoneMappings uintptr FProcessUrlActionEx uintptr FMapUrlToZoneEx2 uintptr FProcessUrlActionEx2 uintptr FGetSecurityIdEx2 uintptr FQueryCustomPolicyEx2 uintptr } type TIInternetSecurityManagerExVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetSecuritySite uintptr FGetSecuritySite uintptr FMapUrlToZone uintptr FGetSecurityId uintptr FProcessUrlAction uintptr FQueryCustomPolicy uintptr FSetZoneMapping uintptr FGetZoneMappings uintptr FProcessUrlActionEx uintptr } type TIInternetSecurityManagerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetSecuritySite uintptr FGetSecuritySite uintptr FMapUrlToZone uintptr FGetSecurityId uintptr FProcessUrlAction uintptr FQueryCustomPolicy uintptr FSetZoneMapping uintptr FGetZoneMappings uintptr } type TIInternetSecurityMgrSite = struct { FlpVtbl uintptr } type TIInternetSecurityMgrSiteVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FEnableModeless uintptr } type TIInternetSession = struct { FlpVtbl uintptr } type TIInternetSessionVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRegisterNameSpace uintptr FUnregisterNameSpace uintptr FRegisterMimeFilter uintptr FUnregisterMimeFilter uintptr FCreateBinding uintptr FSetSessionOption uintptr FGetSessionOption uintptr } type TIInternetThreadSwitch = struct { FlpVtbl uintptr } type TIInternetThreadSwitchVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FPrepare uintptr FContinue uintptr } type TIInternetVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr } type TIInternetZoneManager = struct { FlpVtbl uintptr } type TIInternetZoneManagerEx = struct { FlpVtbl uintptr } type TIInternetZoneManagerEx2 = struct { FlpVtbl uintptr } type TIInternetZoneManagerEx2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetZoneAttributes uintptr FSetZoneAttributes uintptr FGetZoneCustomPolicy uintptr FSetZoneCustomPolicy uintptr FGetZoneActionPolicy uintptr FSetZoneActionPolicy uintptr FPromptAction uintptr FLogAction uintptr FCreateZoneEnumerator uintptr FGetZoneAt uintptr FDestroyZoneEnumerator uintptr FCopyTemplatePoliciesToZone uintptr FGetZoneActionPolicyEx uintptr FSetZoneActionPolicyEx uintptr FGetZoneAttributesEx uintptr FGetZoneSecurityState uintptr FGetIESecurityState uintptr FFixUnsecureSettings uintptr } type TIInternetZoneManagerExVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetZoneAttributes uintptr FSetZoneAttributes uintptr FGetZoneCustomPolicy uintptr FSetZoneCustomPolicy uintptr FGetZoneActionPolicy uintptr FSetZoneActionPolicy uintptr FPromptAction uintptr FLogAction uintptr FCreateZoneEnumerator uintptr FGetZoneAt uintptr FDestroyZoneEnumerator uintptr FCopyTemplatePoliciesToZone uintptr FGetZoneActionPolicyEx uintptr FSetZoneActionPolicyEx uintptr } type TIInternetZoneManagerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetZoneAttributes uintptr FSetZoneAttributes uintptr FGetZoneCustomPolicy uintptr FSetZoneCustomPolicy uintptr FGetZoneActionPolicy uintptr FSetZoneActionPolicy uintptr FPromptAction uintptr FLogAction uintptr FCreateZoneEnumerator uintptr FGetZoneAt uintptr FDestroyZoneEnumerator uintptr FCopyTemplatePoliciesToZone uintptr } type TILayoutStorage = struct { FlpVtbl uintptr } type TILayoutStorageVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FLayoutScript uintptr FBeginMonitor uintptr FEndMonitor uintptr FReLayoutDocfile uintptr FReLayoutDocfileOnILockBytes uintptr } type TILockBytes = struct { FlpVtbl uintptr } type TILockBytesVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FReadAt uintptr FWriteAt uintptr FFlush uintptr FSetSize uintptr FLockRegion uintptr FUnlockRegion uintptr FStat uintptr } type TIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = struct { FBeginAddress TDWORD FEndAddress TDWORD FExceptionHandler TDWORD FHandlerData TDWORD FPrologEndAddress TDWORD } type TIMAGE_ARCHITECTURE_ENTRY = struct { FFixupInstRVA TDWORD FNewInst TDWORD } type TIMAGE_ARCHITECTURE_HEADER = struct { F__ccgo0 uint32 FFirstEntryRVA TDWORD } type TIMAGE_ARCHIVE_MEMBER_HEADER = struct { FName [16]TBYTE FDate [12]TBYTE FUserID [6]TBYTE FGroupID [6]TBYTE FMode [8]TBYTE FSize [10]TBYTE FEndHeader [2]TBYTE } type TIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = struct { FBeginAddress TDWORD F__ccgo1_4 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FUnwindData TDWORD } } type TIMAGE_ARM_RUNTIME_FUNCTION_ENTRY = struct { FBeginAddress TDWORD F__ccgo1_4 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FUnwindData TDWORD } } type TIMAGE_AUX_SYMBOL = struct { FFile [0]struct { FName [18]TBYTE } FSection [0]struct { FLength TDWORD FNumberOfRelocations TWORD FNumberOfLinenumbers TWORD FCheckSum TDWORD FNumber TSHORT FSelection TBYTE } FTokenDef [0]TIMAGE_AUX_SYMBOL_TOKEN_DEF FCRC [0]struct { Fcrc TDWORD FrgbReserved [14]TBYTE } FSym struct { FTagIndex TDWORD FMisc struct { FTotalSize [0]TDWORD FLnSz struct { FLinenumber TWORD FSize TWORD } } FFcnAry struct { FArray [0]struct { FDimension [4]TWORD } FFunction struct { FPointerToLinenumber TDWORD FPointerToNextFunction TDWORD } } FTvIndex TWORD } } type TIMAGE_AUX_SYMBOL_EX = struct { FFile [0]struct { FName [20]TBYTE } FSection [0]struct { FLength TDWORD FNumberOfRelocations TWORD FNumberOfLinenumbers TWORD FCheckSum TDWORD FNumber TSHORT FSelection TBYTE FbReserved TBYTE FHighNumber TSHORT FrgbReserved [2]TBYTE } F__ccgo3_0 [0]struct { FTokenDef TIMAGE_AUX_SYMBOL_TOKEN_DEF FrgbReserved [2]TBYTE } FCRC [0]struct { Fcrc TDWORD FrgbReserved [16]TBYTE } FSym struct { FWeakDefaultSymIndex TDWORD FWeakSearchType TDWORD FrgbReserved [12]TBYTE } F__ccgo_pad5 [4]byte } type TIMAGE_AUX_SYMBOL_TOKEN_DEF = struct { FbAuxType TBYTE FbReserved TBYTE FSymbolTableIndex TDWORD FrgbReserved [12]TBYTE } type TIMAGE_AUX_SYMBOL_TYPE = int32 type TIMAGE_BASE_RELOCATION = struct { FVirtualAddress TDWORD FSizeOfBlock TDWORD } type TIMAGE_BOUND_FORWARDER_REF = struct { FTimeDateStamp TDWORD FOffsetModuleName TWORD FReserved TWORD } type TIMAGE_BOUND_IMPORT_DESCRIPTOR = struct { FTimeDateStamp TDWORD FOffsetModuleName TWORD FNumberOfModuleForwarderRefs TWORD } type TIMAGE_CE_RUNTIME_FUNCTION_ENTRY = struct { FFuncStart TDWORD F__ccgo4 uint32 } type TIMAGE_COFF_SYMBOLS_HEADER = struct { FNumberOfSymbols TDWORD FLvaToFirstSymbol TDWORD FNumberOfLinenumbers TDWORD FLvaToFirstLinenumber TDWORD FRvaToFirstByteOfCode TDWORD FRvaToLastByteOfCode TDWORD FRvaToFirstByteOfData TDWORD FRvaToLastByteOfData TDWORD } type TIMAGE_COR20_HEADER = struct { Fcb TDWORD FMajorRuntimeVersion TWORD FMinorRuntimeVersion TWORD FMetaData TIMAGE_DATA_DIRECTORY FFlags TDWORD F__ccgo5_20 struct { FEntryPointRVA [0]TDWORD FEntryPointToken TDWORD } FResources TIMAGE_DATA_DIRECTORY FStrongNameSignature TIMAGE_DATA_DIRECTORY FCodeManagerTable TIMAGE_DATA_DIRECTORY FVTableFixups TIMAGE_DATA_DIRECTORY FExportAddressTableJumps TIMAGE_DATA_DIRECTORY FManagedNativeHeader TIMAGE_DATA_DIRECTORY } type TIMAGE_DATA_DIRECTORY = struct { FVirtualAddress TDWORD FSize TDWORD } type TIMAGE_DEBUG_DIRECTORY = struct { FCharacteristics TDWORD FTimeDateStamp TDWORD FMajorVersion TWORD FMinorVersion TWORD FType TDWORD FSizeOfData TDWORD FAddressOfRawData TDWORD FPointerToRawData TDWORD } type TIMAGE_DEBUG_MISC = struct { FDataType TDWORD FLength TDWORD FUnicode TBOOLEAN FReserved [3]TBYTE FData [1]TBYTE } type TIMAGE_DELAYLOAD_DESCRIPTOR = struct { FAttributes struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FAllAttributes TDWORD } FDllNameRVA TDWORD FModuleHandleRVA TDWORD FImportAddressTableRVA TDWORD FImportNameTableRVA TDWORD FBoundImportAddressTableRVA TDWORD FUnloadInformationTableRVA TDWORD FTimeDateStamp TDWORD } type TIMAGE_DOS_HEADER = struct { Fe_magic TWORD Fe_cblp TWORD Fe_cp TWORD Fe_crlc TWORD Fe_cparhdr TWORD Fe_minalloc TWORD Fe_maxalloc TWORD Fe_ss TWORD Fe_sp TWORD Fe_csum TWORD Fe_ip TWORD Fe_cs TWORD Fe_lfarlc TWORD Fe_ovno TWORD Fe_res [4]TWORD Fe_oemid TWORD Fe_oeminfo TWORD Fe_res2 [10]TWORD Fe_lfanew TLONG } type TIMAGE_EXPORT_DIRECTORY = struct { FCharacteristics TDWORD FTimeDateStamp TDWORD FMajorVersion TWORD FMinorVersion TWORD FName TDWORD FBase TDWORD FNumberOfFunctions TDWORD FNumberOfNames TDWORD FAddressOfFunctions TDWORD FAddressOfNames TDWORD FAddressOfNameOrdinals TDWORD } type TIMAGE_FILE_HEADER = struct { FMachine TWORD FNumberOfSections TWORD FTimeDateStamp TDWORD FPointerToSymbolTable TDWORD FNumberOfSymbols TDWORD FSizeOfOptionalHeader TWORD FCharacteristics TWORD } type TIMAGE_FUNCTION_ENTRY = struct { FStartingAddress TDWORD FEndingAddress TDWORD FEndOfPrologue TDWORD } type TIMAGE_IA64_RUNTIME_FUNCTION_ENTRY = struct { FBeginAddress TDWORD FEndAddress TDWORD F__ccgo2_8 struct { FUnwindData [0]TDWORD FUnwindInfoAddress TDWORD } } type TIMAGE_IMPORT_BY_NAME = struct { FHint TWORD FName [1]TCHAR } type TIMAGE_IMPORT_DESCRIPTOR = struct { F__ccgo0_0 struct { FOriginalFirstThunk [0]TDWORD FCharacteristics TDWORD } FTimeDateStamp TDWORD FForwarderChain TDWORD FName TDWORD FFirstThunk TDWORD } type TIMAGE_LINENUMBER = struct { FType struct { FVirtualAddress [0]TDWORD FSymbolTableIndex TDWORD } FLinenumber TWORD } type TIMAGE_LOAD_CONFIG_DIRECTORY32 = struct { FSize TDWORD FTimeDateStamp TDWORD FMajorVersion TWORD FMinorVersion TWORD FGlobalFlagsClear TDWORD FGlobalFlagsSet TDWORD FCriticalSectionDefaultTimeout TDWORD FDeCommitFreeBlockThreshold TDWORD FDeCommitTotalFreeThreshold TDWORD FLockPrefixTable TDWORD FMaximumAllocationSize TDWORD FVirtualMemoryThreshold TDWORD FProcessHeapFlags TDWORD FProcessAffinityMask TDWORD FCSDVersion TWORD FReserved1 TWORD FEditList TDWORD FSecurityCookie TDWORD FSEHandlerTable TDWORD FSEHandlerCount TDWORD } type TIMAGE_NT_HEADERS32 = struct { FSignature TDWORD FFileHeader TIMAGE_FILE_HEADER FOptionalHeader TIMAGE_OPTIONAL_HEADER32 } type TIMAGE_OPTIONAL_HEADER32 = struct { FMagic TWORD FMajorLinkerVersion TBYTE FMinorLinkerVersion TBYTE FSizeOfCode TDWORD FSizeOfInitializedData TDWORD FSizeOfUninitializedData TDWORD FAddressOfEntryPoint TDWORD FBaseOfCode TDWORD FBaseOfData TDWORD FImageBase TDWORD FSectionAlignment TDWORD FFileAlignment TDWORD FMajorOperatingSystemVersion TWORD FMinorOperatingSystemVersion TWORD FMajorImageVersion TWORD FMinorImageVersion TWORD FMajorSubsystemVersion TWORD FMinorSubsystemVersion TWORD FWin32VersionValue TDWORD FSizeOfImage TDWORD FSizeOfHeaders TDWORD FCheckSum TDWORD FSubsystem TWORD FDllCharacteristics TWORD FSizeOfStackReserve TDWORD FSizeOfStackCommit TDWORD FSizeOfHeapReserve TDWORD FSizeOfHeapCommit TDWORD FLoaderFlags TDWORD FNumberOfRvaAndSizes TDWORD FDataDirectory [16]TIMAGE_DATA_DIRECTORY } type TIMAGE_OS2_HEADER = struct { Fne_magic TWORD Fne_ver TCHAR Fne_rev TCHAR Fne_enttab TWORD Fne_cbenttab TWORD Fne_crc TLONG Fne_flags TWORD Fne_autodata TWORD Fne_heap TWORD Fne_stack TWORD Fne_csip TLONG Fne_sssp TLONG Fne_cseg TWORD Fne_cmod TWORD Fne_cbnrestab TWORD Fne_segtab TWORD Fne_rsrctab TWORD Fne_restab TWORD Fne_modtab TWORD Fne_imptab TWORD Fne_nrestab TLONG Fne_cmovent TWORD Fne_align TWORD Fne_cres TWORD Fne_exetyp TBYTE Fne_flagsothers TBYTE Fne_pretthunks TWORD Fne_psegrefbytes TWORD Fne_swaparea TWORD Fne_expver TWORD } type TIMAGE_RELOCATION = struct { F__ccgo0_0 struct { FRelocCount [0]TDWORD FVirtualAddress TDWORD } FSymbolTableIndex TDWORD FType TWORD } type TIMAGE_RESOURCE_DATA_ENTRY = struct { FOffsetToData TDWORD FSize TDWORD FCodePage TDWORD FReserved TDWORD } type TIMAGE_RESOURCE_DIRECTORY = struct { FCharacteristics TDWORD FTimeDateStamp TDWORD FMajorVersion TWORD FMinorVersion TWORD FNumberOfNamedEntries TWORD FNumberOfIdEntries TWORD } type TIMAGE_RESOURCE_DIRECTORY_ENTRY = struct { F__ccgo0_0 struct { FName [0]TDWORD FId [0]TWORD F__ccgo0_0 struct { F__ccgo0 uint32 } } F__ccgo1_4 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FOffsetToData TDWORD } } type TIMAGE_RESOURCE_DIRECTORY_STRING = struct { FLength TWORD FNameString [1]TCHAR } type TIMAGE_RESOURCE_DIR_STRING_U = struct { FLength TWORD FNameString [1]TWCHAR } type TIMAGE_ROM_HEADERS = struct { FFileHeader TIMAGE_FILE_HEADER FOptionalHeader TIMAGE_ROM_OPTIONAL_HEADER } type TIMAGE_ROM_OPTIONAL_HEADER = struct { FMagic TWORD FMajorLinkerVersion TBYTE FMinorLinkerVersion TBYTE FSizeOfCode TDWORD FSizeOfInitializedData TDWORD FSizeOfUninitializedData TDWORD FAddressOfEntryPoint TDWORD FBaseOfCode TDWORD FBaseOfData TDWORD FBaseOfBss TDWORD FGprMask TDWORD FCprMask [4]TDWORD FGpValue TDWORD } type TIMAGE_RUNTIME_FUNCTION_ENTRY = struct { FBeginAddress TDWORD FEndAddress TDWORD F__ccgo2_8 struct { FUnwindData [0]TDWORD FUnwindInfoAddress TDWORD } } type TIMAGE_SECTION_HEADER = struct { FName [8]TBYTE FMisc struct { FVirtualSize [0]TDWORD FPhysicalAddress TDWORD } FVirtualAddress TDWORD FSizeOfRawData TDWORD FPointerToRawData TDWORD FPointerToRelocations TDWORD FPointerToLinenumbers TDWORD FNumberOfRelocations TWORD FNumberOfLinenumbers TWORD FCharacteristics TDWORD } type TIMAGE_SEPARATE_DEBUG_HEADER = struct { FSignature TWORD FFlags TWORD FMachine TWORD FCharacteristics TWORD FTimeDateStamp TDWORD FCheckSum TDWORD FImageBase TDWORD FSizeOfImage TDWORD FNumberOfSections TDWORD FExportedNamesSize TDWORD FDebugDirectorySize TDWORD FSectionAlignment TDWORD FReserved [2]TDWORD } type TIMAGE_SYMBOL = struct { FN struct { FName [0]struct { FShort TDWORD FLong TDWORD } FLongName [0][2]TDWORD FShortName [8]TBYTE } FValue TDWORD FSectionNumber TSHORT FType TWORD FStorageClass TBYTE FNumberOfAuxSymbols TBYTE } type TIMAGE_SYMBOL_EX = struct { FN struct { FName [0]struct { FShort TDWORD FLong TDWORD } FLongName [0][2]TDWORD FShortName [8]TBYTE } FValue TDWORD FSectionNumber TLONG FType TWORD FStorageClass TBYTE FNumberOfAuxSymbols TBYTE } type TIMAGE_THUNK_DATA32 = struct { Fu1 struct { FFunction [0]TDWORD FOrdinal [0]TDWORD FAddressOfData [0]TDWORD FForwarderString TDWORD } } type TIMAGE_TLS_DIRECTORY32 = struct { FStartAddressOfRawData TDWORD FEndAddressOfRawData TDWORD FAddressOfIndex TDWORD FAddressOfCallBacks TDWORD FSizeOfZeroFill TDWORD FCharacteristics TDWORD } type TIMAGE_VXD_HEADER = struct { Fe32_magic TWORD Fe32_border TBYTE Fe32_worder TBYTE Fe32_level TDWORD Fe32_cpu TWORD Fe32_os TWORD Fe32_ver TDWORD Fe32_mflags TDWORD Fe32_mpages TDWORD Fe32_startobj TDWORD Fe32_eip TDWORD Fe32_stackobj TDWORD Fe32_esp TDWORD Fe32_pagesize TDWORD Fe32_lastpagesize TDWORD Fe32_fixupsize TDWORD Fe32_fixupsum TDWORD Fe32_ldrsize TDWORD Fe32_ldrsum TDWORD Fe32_objtab TDWORD Fe32_objcnt TDWORD Fe32_objmap TDWORD Fe32_itermap TDWORD Fe32_rsrctab TDWORD Fe32_rsrccnt TDWORD Fe32_restab TDWORD Fe32_enttab TDWORD Fe32_dirtab TDWORD Fe32_dircnt TDWORD Fe32_fpagetab TDWORD Fe32_frectab TDWORD Fe32_impmod TDWORD Fe32_impmodcnt TDWORD Fe32_impproc TDWORD Fe32_pagesum TDWORD Fe32_datapage TDWORD Fe32_preload TDWORD Fe32_nrestab TDWORD Fe32_cbnrestab TDWORD Fe32_nressum TDWORD Fe32_autodata TDWORD Fe32_debuginfo TDWORD Fe32_debuglen TDWORD Fe32_instpreload TDWORD Fe32_instdemand TDWORD Fe32_heapsize TDWORD Fe32_res3 [12]TBYTE Fe32_winresoff TDWORD Fe32_winreslen TDWORD Fe32_devid TWORD Fe32_ddkver TWORD } type TIMCENUMPROC = uintptr type TIMECAPS = TTIMECAPS type TIMECHARPOSITION = struct { FdwSize TDWORD FdwCharPos TDWORD Fpt TPOINT FcLineHeight TUINT FrcDocument TRECT } const TIMEFMT_ENUMPROC = 0 type TIMEFMT_ENUMPROCA = TTIMEFMT_ENUMPROCA type TIMEFMT_ENUMPROCEX = TTIMEFMT_ENUMPROCEX type TIMEFMT_ENUMPROCW = TTIMEFMT_ENUMPROCW type TIMEMENUITEMINFO = struct { FcbSize TUINT FfType TUINT FfState TUINT FwID TUINT FhbmpChecked THBITMAP FhbmpUnchecked THBITMAP FdwItemData TDWORD FszString [80]TCHAR FhbmpItem THBITMAP } type TIMEMENUITEMINFOA = struct { FcbSize TUINT FfType TUINT FfState TUINT FwID TUINT FhbmpChecked THBITMAP FhbmpUnchecked THBITMAP FdwItemData TDWORD FszString [80]TCHAR FhbmpItem THBITMAP } type TIMEMENUITEMINFOW = struct { FcbSize TUINT FfType TUINT FfState TUINT FwID TUINT FhbmpChecked THBITMAP FhbmpUnchecked THBITMAP FdwItemData TDWORD FszString [80]TWCHAR FhbmpItem THBITMAP } const TIMEOUT_ASYNC = 4294967295 type TIMERPROC = TTIMERPROC const TIMERR_BASE = 96 const TIMERR_NOCANDO = 97 const TIMERR_NOERROR = 0 const TIMERR_STRUCT = 129 const TIMERV_COALESCING_MAX = 2147483637 const TIMERV_COALESCING_MIN = 1 const TIMERV_DEFAULT_COALESCING = 0 const TIMERV_NO_COALESCING = 4294967295 const TIMER_ALL_ACCESS = 2031619 const TIMER_MODIFY_STATE = 2 const TIMER_QUERY_STATE = 1 const TIMESTAMP_DONT_HASH_DATA = 1 const TIMESTAMP_FAILURE_BAD_ALG = 0 const TIMESTAMP_FAILURE_BAD_FORMAT = 5 const TIMESTAMP_FAILURE_BAD_REQUEST = 2 const TIMESTAMP_FAILURE_EXTENSION_NOT_SUPPORTED = 16 const TIMESTAMP_FAILURE_INFO_NOT_AVAILABLE = 17 const TIMESTAMP_FAILURE_POLICY_NOT_SUPPORTED = 15 const TIMESTAMP_FAILURE_SYSTEM_FAILURE = 25 const TIMESTAMP_FAILURE_TIME_NOT_AVAILABLE = 14 const TIMESTAMP_NO_AUTH_RETRIEVAL = 131072 const TIMESTAMP_STATUS_GRANTED = 0 const TIMESTAMP_STATUS_GRANTED_WITH_MODS = 1 const TIMESTAMP_STATUS_REJECTED = 2 const TIMESTAMP_STATUS_REVOCATION_WARNING = 4 const TIMESTAMP_STATUS_REVOKED = 5 const TIMESTAMP_STATUS_WAITING = 3 const TIMESTAMP_VERIFY_CONTEXT_SIGNATURE = 32 const TIMESTAMP_VERSION = 1 type TIMEVAL = TTIMEVAL const TIME_BYTES = 4 const TIME_CALLBACK_EVENT_PULSE = 32 const TIME_CALLBACK_EVENT_SET = 16 const TIME_CALLBACK_FUNCTION = 0 const TIME_FORCE24HOURFORMAT = 8 const TIME_KILL_SYNCHRONOUS = 256 const TIME_MIDI = 16 const TIME_MS = 1 const TIME_NOMINUTESORSECONDS = 1 const TIME_NOSECONDS = 2 const TIME_NOTIMEMARKER = 4 const TIME_ONESHOT = 0 const TIME_PERIODIC = 1 const TIME_SAMPLES = 2 const TIME_SMPTE = 8 const TIME_TICKS = 32 const TIME_VALID_OID_FLUSH_OBJECT_FUNC = "TimeValidDllFlushObject" const TIME_VALID_OID_GET_OBJECT_FUNC = "TimeValidDllGetObject" const TIME_ZONE_ID_DAYLIGHT = 2 const TIME_ZONE_ID_STANDARD = 1 const TIME_ZONE_ID_UNKNOWN = 0 type TIME_ZONE_INFORMATION = TTIME_ZONE_INFORMATION type TIMPORT_OBJECT_HEADER = struct { FSig1 TWORD FSig2 TWORD FVersion TWORD FMachine TWORD FTimeDateStamp TDWORD FSizeOfData TDWORD F__ccgo6_16 struct { FHint [0]TWORD FOrdinal TWORD } F__ccgo18 uint16 } type TIMPORT_OBJECT_NAME_TYPE = int32 type TIMPORT_OBJECT_TYPE = int32 type TIMalloc = struct { FlpVtbl uintptr } type TIMallocSpy = struct { FlpVtbl uintptr } type TIMallocSpyVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FPreAlloc uintptr FPostAlloc uintptr FPreFree uintptr FPostFree uintptr FPreRealloc uintptr FPostRealloc uintptr FPreGetSize uintptr FPostGetSize uintptr FPreDidAlloc uintptr FPostDidAlloc uintptr FPreHeapMinimize uintptr FPostHeapMinimize uintptr } type TIMallocVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAlloc uintptr FRealloc uintptr FFree uintptr FGetSize uintptr FDidAlloc uintptr FHeapMinimize uintptr } type TIMarshal = struct { FlpVtbl uintptr } type TIMarshal2 = struct { FlpVtbl uintptr } type TIMarshal2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetUnmarshalClass uintptr FGetMarshalSizeMax uintptr FMarshalInterface uintptr FUnmarshalInterface uintptr FReleaseMarshalData uintptr FDisconnectObject uintptr } type TIMarshalVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetUnmarshalClass uintptr FGetMarshalSizeMax uintptr FMarshalInterface uintptr FUnmarshalInterface uintptr FReleaseMarshalData uintptr FDisconnectObject uintptr } type TIMarshalingStream = struct { FlpVtbl uintptr } type TIMarshalingStreamVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRead uintptr FWrite uintptr FSeek uintptr FSetSize uintptr FCopyTo uintptr FCommit uintptr FRevert uintptr FLockRegion uintptr FUnlockRegion uintptr FStat uintptr FClone uintptr FGetMarshalingContextAttribute uintptr } type TIMessageFilter = struct { FlpVtbl uintptr } type TIMessageFilterVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FHandleInComingCall uintptr FRetryRejectedCall uintptr FMessagePending uintptr } type TIMoniker = struct { FlpVtbl uintptr } type TIMonikerProp = struct { FlpVtbl uintptr } type TIMonikerPropVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FPutProperty uintptr } type TIMonikerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetClassID uintptr FIsDirty uintptr FLoad uintptr FSave uintptr FGetSizeMax uintptr FBindToObject uintptr FBindToStorage uintptr FReduce uintptr FComposeWith uintptr FEnum uintptr FIsEqual uintptr FHash uintptr FIsRunning uintptr FGetTimeOfLastChange uintptr FInverse uintptr FCommonPrefixWith uintptr FRelativePathTo uintptr FGetDisplayName uintptr FParseDisplayName uintptr FIsSystemMoniker uintptr } type TIMultiQI = struct { FlpVtbl uintptr } type TIMultiQIVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FQueryMultipleInterfaces uintptr } type TINIT_ONCE = struct { FPtr TPVOID } type TINPUT_INJECTION_VALUE = struct { Fpage TUSHORT Fusage TUSHORT Fvalue TINT32 Findex TUSHORT } type TINPUT_MESSAGE_DEVICE_TYPE = int32 type TINPUT_MESSAGE_ORIGIN_ID = int32 type TINPUT_MESSAGE_SOURCE = struct { FdeviceType TINPUT_MESSAGE_DEVICE_TYPE ForiginId TINPUT_MESSAGE_ORIGIN_ID } type TINPUT_RECORD = struct { FEventType TWORD FEvent struct { FMouseEvent [0]TMOUSE_EVENT_RECORD FWindowBufferSizeEvent [0]TWINDOW_BUFFER_SIZE_RECORD FMenuEvent [0]TMENU_EVENT_RECORD FFocusEvent [0]TFOCUS_EVENT_RECORD FKeyEvent TKEY_EVENT_RECORD } } type TINPUT_TRANSFORM = struct { F__ccgo0_0 struct { Fm [0][4][4]float32 F__ccgo0_0 struct { F_11 float32 F_12 float32 F_13 float32 F_14 float32 F_21 float32 F_22 float32 F_23 float32 F_24 float32 F_31 float32 F_32 float32 F_33 float32 F_34 float32 F_41 float32 F_42 float32 F_43 float32 F_44 float32 } } } type TINT = int32 type TINT16 = int16 type TINT32 = int32 type TINT64 = int64 type TINT8 = int8 type TINTERFACEDATA = struct { Fpmethdata uintptr FcMembers TUINT } type TINTERFACEINFO = struct { FpUnk uintptr Fiid TIID FwMethod TWORD } type TINTERNETFEATURELIST = int32 type TINVOKEKIND = int32 type TIN_ADDR = struct { FS_un struct { FS_un_w [0]struct { Fs_w1 Tu_short Fs_w2 Tu_short } FS_addr [0]Tu_long FS_un_b struct { Fs_b1 Tu_char Fs_b2 Tu_char Fs_b3 Tu_char Fs_b4 Tu_char } } } type TINoMarshal = struct { FlpVtbl uintptr } type TINoMarshalVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr } type TIOleAdviseHolder = struct { FlpVtbl uintptr } type TIOleAdviseHolderVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAdvise uintptr FUnadvise uintptr FEnumAdvise uintptr FSendOnRename uintptr FSendOnSave uintptr FSendOnClose uintptr } type TIOleCache = struct { FlpVtbl uintptr } type TIOleCache2 = struct { FlpVtbl uintptr } type TIOleCache2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCache uintptr FUncache uintptr FEnumCache uintptr FInitCache uintptr FSetData uintptr FUpdateCache uintptr FDiscardCache uintptr } type TIOleCacheControl = struct { FlpVtbl uintptr } type TIOleCacheControlVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FOnRun uintptr FOnStop uintptr } type TIOleCacheVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCache uintptr FUncache uintptr FEnumCache uintptr FInitCache uintptr FSetData uintptr } type TIOleClientSite = struct { FlpVtbl uintptr } type TIOleClientSiteVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSaveObject uintptr FGetMoniker uintptr FGetContainer uintptr FShowObject uintptr FOnShowWindow uintptr FRequestNewObjectLayout uintptr } type TIOleContainer = struct { FlpVtbl uintptr } type TIOleContainerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FParseDisplayName uintptr FEnumObjects uintptr FLockContainer uintptr } type TIOleInPlaceActiveObject = struct { FlpVtbl uintptr } type TIOleInPlaceActiveObjectVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FContextSensitiveHelp uintptr FTranslateAcceleratorA uintptr FOnFrameWindowActivate uintptr FOnDocWindowActivate uintptr FResizeBorder uintptr FEnableModeless uintptr } type TIOleInPlaceFrame = struct { FlpVtbl uintptr } type TIOleInPlaceFrameVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FContextSensitiveHelp uintptr FGetBorder uintptr FRequestBorderSpace uintptr FSetBorderSpace uintptr FSetActiveObject uintptr FInsertMenus uintptr FSetMenu uintptr FRemoveMenus uintptr FSetStatusText uintptr FEnableModeless uintptr FTranslateAcceleratorA uintptr } type TIOleInPlaceObject = struct { FlpVtbl uintptr } type TIOleInPlaceObjectVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FContextSensitiveHelp uintptr FInPlaceDeactivate uintptr FUIDeactivate uintptr FSetObjectRects uintptr FReactivateAndUndo uintptr } type TIOleInPlaceSite = struct { FlpVtbl uintptr } type TIOleInPlaceSiteVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FContextSensitiveHelp uintptr FCanInPlaceActivate uintptr FOnInPlaceActivate uintptr FOnUIActivate uintptr FGetWindowContext uintptr FScroll uintptr FOnUIDeactivate uintptr FOnInPlaceDeactivate uintptr FDiscardUndoState uintptr FDeactivateAndUndo uintptr FOnPosRectChange uintptr } type TIOleInPlaceUIWindow = struct { FlpVtbl uintptr } type TIOleInPlaceUIWindowVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FContextSensitiveHelp uintptr FGetBorder uintptr FRequestBorderSpace uintptr FSetBorderSpace uintptr FSetActiveObject uintptr } type TIOleItemContainer = struct { FlpVtbl uintptr } type TIOleItemContainerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FParseDisplayName uintptr FEnumObjects uintptr FLockContainer uintptr FGetObjectA uintptr FGetObjectStorage uintptr FIsRunning uintptr } type TIOleLink = struct { FlpVtbl uintptr } type TIOleLinkVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetUpdateOptions uintptr FGetUpdateOptions uintptr FSetSourceMoniker uintptr FGetSourceMoniker uintptr FSetSourceDisplayName uintptr FGetSourceDisplayName uintptr FBindToSource uintptr FBindIfRunning uintptr FGetBoundSource uintptr FUnbindSource uintptr FUpdate uintptr } type TIOleObject = struct { FlpVtbl uintptr } type TIOleObjectVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetClientSite uintptr FGetClientSite uintptr FSetHostNames uintptr FClose uintptr FSetMoniker uintptr FGetMoniker uintptr FInitFromData uintptr FGetClipboardData uintptr FDoVerb uintptr FEnumVerbs uintptr FUpdate uintptr FIsUpToDate uintptr FGetUserClassID uintptr FGetUserType uintptr FSetExtent uintptr FGetExtent uintptr FAdvise uintptr FUnadvise uintptr FEnumAdvise uintptr FGetMiscStatus uintptr FSetColorScheme uintptr } type TIOleWindow = struct { FlpVtbl uintptr } type TIOleWindowVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr FContextSensitiveHelp uintptr } type TIOplockStorage = struct { FlpVtbl uintptr } type TIOplockStorageVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateStorageEx uintptr FOpenStorageEx uintptr } type TIPSFactoryBuffer = struct { FlpVtbl uintptr } type TIPSFactoryBufferVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateProxy uintptr FCreateStub uintptr } type TIP_MREQ = struct { Fimr_multiaddr Tin_addr Fimr_interface Tin_addr } type TIParseDisplayName = struct { FlpVtbl uintptr } type TIParseDisplayNameVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FParseDisplayName uintptr } type TIPersist = struct { FlpVtbl uintptr } type TIPersistFile = struct { FlpVtbl uintptr } type TIPersistFileVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetClassID uintptr FIsDirty uintptr FLoad uintptr FSave uintptr FSaveCompleted uintptr FGetCurFile uintptr } type TIPersistMoniker = struct { FlpVtbl uintptr } type TIPersistMonikerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetClassID uintptr FIsDirty uintptr FLoad uintptr FSave uintptr FSaveCompleted uintptr FGetCurMoniker uintptr } type TIPersistStorage = struct { FlpVtbl uintptr } type TIPersistStorageVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetClassID uintptr FIsDirty uintptr FInitNew uintptr FLoad uintptr FSave uintptr FSaveCompleted uintptr FHandsOffStorage uintptr } type TIPersistStream = struct { FlpVtbl uintptr } type TIPersistStreamVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetClassID uintptr FIsDirty uintptr FLoad uintptr FSave uintptr FGetSizeMax uintptr } type TIPersistVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetClassID uintptr } type TIPipeByte = struct { FlpVtbl uintptr } type TIPipeByteVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FPull uintptr FPush uintptr } type TIPipeDouble = struct { FlpVtbl uintptr } type TIPipeDoubleVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FPull uintptr FPush uintptr } type TIPipeLong = struct { FlpVtbl uintptr } type TIPipeLongVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FPull uintptr FPush uintptr } type TIPrintDialogCallback = struct { FlpVtbl uintptr } type TIPrintDialogCallbackVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FInitDone uintptr FSelectionChange uintptr FHandleMessage uintptr } type TIPrintDialogServices = struct { FlpVtbl uintptr } type TIPrintDialogServicesVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetCurrentDevMode uintptr FGetCurrentPrinterName uintptr FGetCurrentPortName uintptr } type TIProcessInitControl = struct { FlpVtbl uintptr } type TIProcessInitControlVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FResetInitializerTimeout uintptr } type TIProcessLock = struct { FlpVtbl uintptr } type TIProcessLockVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAddRefOnProcess uintptr FReleaseRefOnProcess uintptr } type TIProgressNotify = struct { FlpVtbl uintptr } type TIProgressNotifyVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FOnProgress uintptr } type TIPropertyBag = struct { FlpVtbl uintptr } type TIPropertyBagVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRead uintptr FWrite uintptr } type TIPropertySetStorage = struct { FlpVtbl uintptr } type TIPropertySetStorageVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreate uintptr FOpen uintptr FDelete uintptr FEnum uintptr } type TIPropertyStorage = struct { FlpVtbl uintptr } type TIPropertyStorageVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FReadMultiple uintptr FWriteMultiple uintptr FDeleteMultiple uintptr FReadPropertyNames uintptr FWritePropertyNames uintptr FDeletePropertyNames uintptr FCommit uintptr FRevert uintptr FEnum uintptr FSetTimes uintptr FSetClass uintptr FStat uintptr } type TIROTData = struct { FlpVtbl uintptr } type TIROTDataVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetComparisonData uintptr } type TIRecordInfo = struct { FlpVtbl uintptr } type TIRecordInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRecordInit uintptr FRecordClear uintptr FRecordCopy uintptr FGetGuid uintptr FGetName uintptr FGetSize uintptr FGetTypeInfo uintptr FGetField uintptr FGetFieldNoCopy uintptr FPutField uintptr FPutFieldNoCopy uintptr FGetFieldNames uintptr FIsMatchingType uintptr FRecordCreate uintptr FRecordCreateCopy uintptr FRecordDestroy uintptr } type TIReleaseMarshalBuffers = struct { FlpVtbl uintptr } type TIReleaseMarshalBuffersVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FReleaseMarshalBuffer uintptr } type TIRootStorage = struct { FlpVtbl uintptr } type TIRootStorageVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSwitchToFile uintptr } type TIRpcChannelBuffer = struct { FlpVtbl uintptr } type TIRpcChannelBuffer2 = struct { FlpVtbl uintptr } type TIRpcChannelBuffer2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetBuffer uintptr FSendReceive uintptr FFreeBuffer uintptr FGetDestCtx uintptr FIsConnected uintptr FGetProtocolVersion uintptr } type TIRpcChannelBuffer3 = struct { FlpVtbl uintptr } type TIRpcChannelBuffer3Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetBuffer uintptr FSendReceive uintptr FFreeBuffer uintptr FGetDestCtx uintptr FIsConnected uintptr FGetProtocolVersion uintptr FSend uintptr FReceive uintptr FCancel uintptr FGetCallContext uintptr FGetDestCtxEx uintptr FGetState uintptr FRegisterAsync uintptr } type TIRpcChannelBufferVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetBuffer uintptr FSendReceive uintptr FFreeBuffer uintptr FGetDestCtx uintptr FIsConnected uintptr } type TIRpcHelper = struct { FlpVtbl uintptr } type TIRpcHelperVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetDCOMProtocolVersion uintptr FGetIIDFromOBJREF uintptr } type TIRpcOptions = struct { FlpVtbl uintptr } type TIRpcOptionsVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSet uintptr FQuery uintptr } type TIRpcProxyBuffer = struct { FlpVtbl uintptr } type TIRpcProxyBufferVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FConnect uintptr FDisconnect uintptr } type TIRpcStubBuffer = struct { FlpVtbl uintptr } type TIRpcStubBufferVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FConnect uintptr FDisconnect uintptr FInvoke uintptr FIsIIDSupported uintptr FCountRefs uintptr FDebugServerQueryInterface uintptr FDebugServerRelease uintptr } type TIRpcSyntaxNegotiate = struct { FlpVtbl uintptr } type TIRpcSyntaxNegotiateVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FNegotiateSyntax uintptr } type TIRunnableObject = struct { FlpVtbl uintptr } type TIRunnableObjectVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetRunningClass uintptr FRun uintptr FIsRunning uintptr FLockRunning uintptr FSetContainedObject uintptr } type TIRunningObjectTable = struct { FlpVtbl uintptr } type TIRunningObjectTableVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRegister uintptr FRevoke uintptr FIsRunning uintptr FGetObjectA uintptr FNoteChangeTime uintptr FGetTimeOfLastChange uintptr FEnumRunning uintptr } type TISequentialStream = struct { FlpVtbl uintptr } type TISequentialStreamVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRead uintptr FWrite uintptr } type TIServerSecurity = struct { FlpVtbl uintptr } type TIServerSecurityVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FQueryBlanket uintptr FImpersonateClient uintptr FRevertToSelf uintptr FIsImpersonating uintptr } type TIServiceProvider = struct { FlpVtbl uintptr } type TIServiceProviderVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FQueryService uintptr } type TISoftDistExt = struct { FlpVtbl uintptr } type TISoftDistExtVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FProcessSoftDist uintptr FGetFirstCodeBase uintptr FGetNextCodeBase uintptr FAsyncInstallDistributionUnit uintptr } type TIStdMarshalInfo = struct { FlpVtbl uintptr } type TIStdMarshalInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetClassForHandler uintptr } type TIStorage = struct { FlpVtbl uintptr } type TIStorageVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateStream uintptr FOpenStream uintptr FCreateStorage uintptr FOpenStorage uintptr FCopyTo uintptr FMoveElementTo uintptr FCommit uintptr FRevert uintptr FEnumElements uintptr FDestroyElement uintptr FRenameElement uintptr FSetElementTimes uintptr FSetClass uintptr FSetStateBits uintptr FStat uintptr } type TIStream = struct { FlpVtbl uintptr } type TIStreamVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRead uintptr FWrite uintptr FSeek uintptr FSetSize uintptr FCopyTo uintptr FCommit uintptr FRevert uintptr FLockRegion uintptr FUnlockRegion uintptr FStat uintptr FClone uintptr } type TISupportErrorInfo = struct { FlpVtbl uintptr } type TISupportErrorInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FInterfaceSupportsErrorInfo uintptr } type TISurrogate = struct { FlpVtbl uintptr } type TISurrogateService = struct { FlpVtbl uintptr } type TISurrogateServiceVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FInit uintptr FApplicationLaunch uintptr FApplicationFree uintptr FCatalogRefresh uintptr FProcessShutdown uintptr } type TISurrogateVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FLoadDllServer uintptr FFreeSurrogate uintptr } type TISynchronize = struct { FlpVtbl uintptr } type TISynchronizeContainer = struct { FlpVtbl uintptr } type TISynchronizeContainerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAddSynchronize uintptr FWaitMultiple uintptr } type TISynchronizeEvent = struct { FlpVtbl uintptr } type TISynchronizeEventVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetHandle uintptr FSetEventHandle uintptr } type TISynchronizeHandle = struct { FlpVtbl uintptr } type TISynchronizeHandleVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetHandle uintptr } type TISynchronizeMutex = struct { FlpVtbl uintptr } type TISynchronizeMutexVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FWait uintptr FSignal uintptr FReset uintptr FReleaseMutex uintptr } type TISynchronizeVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FWait uintptr FSignal uintptr FReset uintptr } type TITLEBARINFO = TTITLEBARINFO type TITLEBARINFOEX = TTITLEBARINFOEX type TIThumbnailExtractor = struct { FlpVtbl uintptr } type TIThumbnailExtractorVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FExtractThumbnail uintptr FOnFileUpdated uintptr } type TITimeAndNoticeControl = struct { FlpVtbl uintptr } type TITimeAndNoticeControlVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSuppressChanges uintptr } type TITypeChangeEvents = struct { FlpVtbl uintptr } type TITypeChangeEventsVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FRequestTypeChange uintptr FAfterTypeChange uintptr } type TITypeComp = struct { FlpVtbl uintptr } type TITypeCompVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FBind uintptr FBindType uintptr } type TITypeFactory = struct { FlpVtbl uintptr } type TITypeFactoryVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateFromTypeInfo uintptr } type TITypeInfo = struct { FlpVtbl uintptr } type TITypeInfo2 = struct { FlpVtbl uintptr } type TITypeInfo2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeAttr uintptr FGetTypeComp uintptr FGetFuncDesc uintptr FGetVarDesc uintptr FGetNames uintptr FGetRefTypeOfImplType uintptr FGetImplTypeFlags uintptr FGetIDsOfNames uintptr FInvoke uintptr FGetDocumentation uintptr FGetDllEntry uintptr FGetRefTypeInfo uintptr FAddressOfMember uintptr FCreateInstance uintptr FGetMops uintptr FGetContainingTypeLib uintptr FReleaseTypeAttr uintptr FReleaseFuncDesc uintptr FReleaseVarDesc uintptr FGetTypeKind uintptr FGetTypeFlags uintptr FGetFuncIndexOfMemId uintptr FGetVarIndexOfMemId uintptr FGetCustData uintptr FGetFuncCustData uintptr FGetParamCustData uintptr FGetVarCustData uintptr FGetImplTypeCustData uintptr FGetDocumentation2 uintptr FGetAllCustData uintptr FGetAllFuncCustData uintptr FGetAllParamCustData uintptr FGetAllVarCustData uintptr FGetAllImplTypeCustData uintptr } type TITypeInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeAttr uintptr FGetTypeComp uintptr FGetFuncDesc uintptr FGetVarDesc uintptr FGetNames uintptr FGetRefTypeOfImplType uintptr FGetImplTypeFlags uintptr FGetIDsOfNames uintptr FInvoke uintptr FGetDocumentation uintptr FGetDllEntry uintptr FGetRefTypeInfo uintptr FAddressOfMember uintptr FCreateInstance uintptr FGetMops uintptr FGetContainingTypeLib uintptr FReleaseTypeAttr uintptr FReleaseFuncDesc uintptr FReleaseVarDesc uintptr } type TITypeLib = struct { FlpVtbl uintptr } type TITypeLib2 = struct { FlpVtbl uintptr } type TITypeLib2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetTypeInfoType uintptr FGetTypeInfoOfGuid uintptr FGetLibAttr uintptr FGetTypeComp uintptr FGetDocumentation uintptr FIsName uintptr FFindName uintptr FReleaseTLibAttr uintptr FGetCustData uintptr FGetLibStatistics uintptr FGetDocumentation2 uintptr FGetAllCustData uintptr } type TITypeLibVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetTypeInfoType uintptr FGetTypeInfoOfGuid uintptr FGetLibAttr uintptr FGetTypeComp uintptr FGetDocumentation uintptr FIsName uintptr FFindName uintptr FReleaseTLibAttr uintptr } type TITypeMarshal = struct { FlpVtbl uintptr } type TITypeMarshalVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSize uintptr FMarshal uintptr FUnmarshal uintptr FFree uintptr } type TIUnknown = struct { FlpVtbl uintptr } type TIUnknownVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr } type TIUri = struct { FlpVtbl uintptr } type TIUriBuilder = struct { FlpVtbl uintptr } type TIUriBuilderFactory = struct { FlpVtbl uintptr } type TIUriBuilderFactoryVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateIUriBuilder uintptr FCreateInitializedIUriBuilder uintptr } type TIUriBuilderVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FCreateUriSimple uintptr FCreateUri uintptr FCreateUriWithFlags uintptr FGetIUri uintptr FSetIUri uintptr FGetFragment uintptr FGetHost uintptr FGetPassword uintptr FGetPath uintptr FGetPort uintptr FGetQuery uintptr FGetSchemeName uintptr FGetUserNameA uintptr FSetFragment uintptr FSetHost uintptr FSetPassword uintptr FSetPath uintptr FSetPort uintptr FSetQuery uintptr FSetSchemeName uintptr FSetUserName uintptr FRemoveProperties uintptr FHasBeenModified uintptr } type TIUriContainer = struct { FlpVtbl uintptr } type TIUriContainerVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetIUri uintptr } type TIUriVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetPropertyBSTR uintptr FGetPropertyLength uintptr FGetPropertyDWORD uintptr FHasProperty uintptr FGetAbsoluteUri uintptr FGetAuthority uintptr FGetDisplayUri uintptr FGetDomain uintptr FGetExtension uintptr FGetFragment uintptr FGetHost uintptr FGetPassword uintptr FGetPath uintptr FGetPathAndQuery uintptr FGetQuery uintptr FGetRawUri uintptr FGetSchemeName uintptr FGetUserInfo uintptr FGetUserNameA uintptr FGetHostType uintptr FGetPort uintptr FGetScheme uintptr FGetZone uintptr FGetProperties uintptr FIsEqual uintptr } type TIUrlMon = struct { FlpVtbl uintptr } type TIUrlMonVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FAsyncGetClassBits uintptr } type TIViewObject = struct { FlpVtbl uintptr } type TIViewObject2 = struct { FlpVtbl uintptr } type TIViewObject2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FDraw uintptr FGetColorSet uintptr FFreeze uintptr FUnfreeze uintptr FSetAdvise uintptr FGetAdvise uintptr FGetExtent uintptr } type TIViewObjectVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FDraw uintptr FGetColorSet uintptr FFreeze uintptr FUnfreeze uintptr FSetAdvise uintptr FGetAdvise uintptr } type TIWaitMultiple = struct { FlpVtbl uintptr } type TIWaitMultipleVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FWaitMultiple uintptr FAddSynchronize uintptr } type TIWinInetCacheHints = struct { FlpVtbl uintptr } type TIWinInetCacheHints2 = struct { FlpVtbl uintptr } type TIWinInetCacheHints2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetCacheExtension uintptr FSetCacheExtension2 uintptr } type TIWinInetCacheHintsVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetCacheExtension uintptr } type TIWinInetFileStream = struct { FlpVtbl uintptr } type TIWinInetFileStreamVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FSetHandleForUnlock uintptr FSetDeleteFile uintptr } type TIWinInetHttpInfo = struct { FlpVtbl uintptr } type TIWinInetHttpInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FQueryOption uintptr FQueryInfo uintptr } type TIWinInetHttpTimeouts = struct { FlpVtbl uintptr } type TIWinInetHttpTimeoutsVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetRequestTimeouts uintptr } type TIWinInetInfo = struct { FlpVtbl uintptr } type TIWinInetInfoVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FQueryOption uintptr } type TIWindowForBindingUI = struct { FlpVtbl uintptr } type TIWindowForBindingUIVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWindow uintptr } type TIWrappedProtocol = struct { FlpVtbl uintptr } type TIWrappedProtocolVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetWrapperCode uintptr } type TIXMLAttribute = struct { FlpVtbl uintptr } type TIXMLAttributeVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_name uintptr Fget_value uintptr } type TIXMLDOMAttribute = struct { FlpVtbl uintptr } type TIXMLDOMAttributeVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_name uintptr Fget_value uintptr Fput_value uintptr } type TIXMLDOMCDATASection = struct { FlpVtbl uintptr } type TIXMLDOMCDATASectionVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_data uintptr Fput_data uintptr Fget_length uintptr FsubstringData uintptr FappendData uintptr FinsertData uintptr FdeleteData uintptr FreplaceData uintptr FsplitText uintptr } type TIXMLDOMCharacterData = struct { FlpVtbl uintptr } type TIXMLDOMCharacterDataVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_data uintptr Fput_data uintptr Fget_length uintptr FsubstringData uintptr FappendData uintptr FinsertData uintptr FdeleteData uintptr FreplaceData uintptr } type TIXMLDOMComment = struct { FlpVtbl uintptr } type TIXMLDOMCommentVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_data uintptr Fput_data uintptr Fget_length uintptr FsubstringData uintptr FappendData uintptr FinsertData uintptr FdeleteData uintptr FreplaceData uintptr } type TIXMLDOMDocument = struct { FlpVtbl uintptr } type TIXMLDOMDocumentFragment = struct { FlpVtbl uintptr } type TIXMLDOMDocumentFragmentVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr } type TIXMLDOMDocumentType = struct { FlpVtbl uintptr } type TIXMLDOMDocumentTypeVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_name uintptr Fget_entities uintptr Fget_notations uintptr } type TIXMLDOMDocumentVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_doctype uintptr Fget_implementation uintptr Fget_documentElement uintptr Fputref_documentElement uintptr FcreateElement uintptr FcreateDocumentFragment uintptr FcreateTextNode uintptr FcreateComment uintptr FcreateCDATASection uintptr FcreateProcessingInstruction uintptr FcreateAttribute uintptr FcreateEntityReference uintptr FgetElementsByTagName uintptr FcreateNode uintptr FnodeFromID uintptr Fload uintptr Fget_readyState uintptr Fget_parseError uintptr Fget_url uintptr Fget_async uintptr Fput_async uintptr Fabort uintptr FloadXML uintptr Fsave uintptr Fget_validateOnParse uintptr Fput_validateOnParse uintptr Fget_resolveExternals uintptr Fput_resolveExternals uintptr Fget_preserveWhiteSpace uintptr Fput_preserveWhiteSpace uintptr Fput_onreadystatechange uintptr Fput_ondataavailable uintptr Fput_ontransformnode uintptr } type TIXMLDOMElement = struct { FlpVtbl uintptr } type TIXMLDOMElementVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_tagName uintptr FgetAttribute uintptr FsetAttribute uintptr FremoveAttribute uintptr FgetAttributeNode uintptr FsetAttributeNode uintptr FremoveAttributeNode uintptr FgetElementsByTagName uintptr Fnormalize uintptr } type TIXMLDOMEntity = struct { FlpVtbl uintptr } type TIXMLDOMEntityReference = struct { FlpVtbl uintptr } type TIXMLDOMEntityReferenceVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr } type TIXMLDOMEntityVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_publicId uintptr Fget_systemId uintptr Fget_notationName uintptr } type TIXMLDOMImplementation = struct { FlpVtbl uintptr } type TIXMLDOMImplementationVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr FhasFeature uintptr } type TIXMLDOMNamedNodeMap = struct { FlpVtbl uintptr } type TIXMLDOMNamedNodeMapVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr FgetNamedItem uintptr FsetNamedItem uintptr FremoveNamedItem uintptr Fget_item uintptr Fget_length uintptr FgetQualifiedItem uintptr FremoveQualifiedItem uintptr FnextNode uintptr Freset uintptr Fget__newEnum uintptr } type TIXMLDOMNode = struct { FlpVtbl uintptr } type TIXMLDOMNodeList = struct { FlpVtbl uintptr } type TIXMLDOMNodeListVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_item uintptr Fget_length uintptr FnextNode uintptr Freset uintptr Fget__newEnum uintptr } type TIXMLDOMNodeVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr } type TIXMLDOMNotation = struct { FlpVtbl uintptr } type TIXMLDOMNotationVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_publicId uintptr Fget_systemId uintptr } type TIXMLDOMParseError = struct { FlpVtbl uintptr } type TIXMLDOMParseErrorVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_errorCode uintptr Fget_url uintptr Fget_reason uintptr Fget_srcText uintptr Fget_line uintptr Fget_linepos uintptr Fget_filepos uintptr } type TIXMLDOMProcessingInstruction = struct { FlpVtbl uintptr } type TIXMLDOMProcessingInstructionVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_target uintptr Fget_data uintptr Fput_data uintptr } type TIXMLDOMText = struct { FlpVtbl uintptr } type TIXMLDOMTextVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr Fget_data uintptr Fput_data uintptr Fget_length uintptr FsubstringData uintptr FappendData uintptr FinsertData uintptr FdeleteData uintptr FreplaceData uintptr FsplitText uintptr } type TIXMLDSOControl = struct { FlpVtbl uintptr } type TIXMLDSOControlVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_XMLDocument uintptr Fput_XMLDocument uintptr Fget_JavaDSOCompatible uintptr Fput_JavaDSOCompatible uintptr Fget_readyState uintptr } type TIXMLDocument = struct { FlpVtbl uintptr } type TIXMLDocument2 = struct { FlpVtbl uintptr } type TIXMLDocument2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_root uintptr Fget_fileSize uintptr Fget_fileModifiedDate uintptr Fget_fileUpdatedDate uintptr Fget_URL uintptr Fput_URL uintptr Fget_mimeType uintptr Fget_readyState uintptr Fget_charset uintptr Fput_charset uintptr Fget_version uintptr Fget_doctype uintptr Fget_dtdURL uintptr FcreateElement uintptr Fget_async uintptr Fput_async uintptr } type TIXMLDocumentVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_root uintptr Fget_fileSize uintptr Fget_fileModifiedDate uintptr Fget_fileUpdatedDate uintptr Fget_URL uintptr Fput_URL uintptr Fget_mimeType uintptr Fget_readyState uintptr Fget_charset uintptr Fput_charset uintptr Fget_version uintptr Fget_doctype uintptr Fget_dtdURL uintptr FcreateElement uintptr } type TIXMLElement = struct { FlpVtbl uintptr } type TIXMLElement2 = struct { FlpVtbl uintptr } type TIXMLElement2Vtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_tagName uintptr Fput_tagName uintptr Fget_parent uintptr FsetAttribute uintptr FgetAttribute uintptr FremoveAttribute uintptr Fget_children uintptr Fget_type uintptr Fget_text uintptr Fput_text uintptr FaddChild uintptr FremoveChild uintptr Fget_attributes uintptr } type TIXMLElementCollection = struct { FlpVtbl uintptr } type TIXMLElementCollectionVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fput_length uintptr Fget_length uintptr Fget__newEnum uintptr Fitem uintptr } type TIXMLElementVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_tagName uintptr Fput_tagName uintptr Fget_parent uintptr FsetAttribute uintptr FgetAttribute uintptr FremoveAttribute uintptr Fget_children uintptr Fget_type uintptr Fget_text uintptr Fput_text uintptr FaddChild uintptr FremoveChild uintptr } type TIXMLError = struct { FlpVtbl uintptr } type TIXMLErrorVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetErrorInfo uintptr } type TIXMLHttpRequest = struct { FlpVtbl uintptr } type TIXMLHttpRequestVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fopen uintptr FsetRequestHeader uintptr FgetResponseHeader uintptr FgetAllResponseHeaders uintptr Fsend uintptr Fabort uintptr Fget_status uintptr Fget_statusText uintptr Fget_responseXML uintptr Fget_responseText uintptr Fget_responseBody uintptr Fget_responseStream uintptr Fget_readyState uintptr Fput_onreadystatechange uintptr } type TIXTLRuntime = struct { FlpVtbl uintptr } type TIXTLRuntimeVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr Fget_nodeName uintptr Fget_nodeValue uintptr Fput_nodeValue uintptr Fget_nodeType uintptr Fget_parentNode uintptr Fget_childNodes uintptr Fget_firstChild uintptr Fget_lastChild uintptr Fget_previousSibling uintptr Fget_nextSibling uintptr Fget_attributes uintptr FinsertBefore uintptr FreplaceChild uintptr FremoveChild uintptr FappendChild uintptr FhasChildNodes uintptr Fget_ownerDocument uintptr FcloneNode uintptr Fget_nodeTypeString uintptr Fget_text uintptr Fput_text uintptr Fget_specified uintptr Fget_definition uintptr Fget_nodeTypedValue uintptr Fput_nodeTypedValue uintptr Fget_dataType uintptr Fput_dataType uintptr Fget_xml uintptr FtransformNode uintptr FselectNodes uintptr FselectSingleNode uintptr Fget_parsed uintptr Fget_namespaceURI uintptr Fget_prefix uintptr Fget_baseName uintptr FtransformNodeToObject uintptr FuniqueID uintptr Fdepth uintptr FchildNumber uintptr FancestorChildNumber uintptr FabsoluteChildNumber uintptr FformatIndex uintptr FformatNumber uintptr FformatDate uintptr FformatTime uintptr } type TIZoneIdentifier = struct { FlpVtbl uintptr } type TIZoneIdentifierVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetId uintptr FSetId uintptr FRemove uintptr } type TI_RPC_HANDLE = uintptr type TI_RPC_MUTEX = uintptr type TI_RpcFreeCalloutStateFn = uintptr type TI_RpcPerformCalloutFn = uintptr type TI_RpcProxyCallbackInterface = struct { FIsValidMachineFn TI_RpcProxyIsValidMachineFn FGetClientAddressFn TI_RpcProxyGetClientAddressFn FGetConnectionTimeoutFn TI_RpcProxyGetConnectionTimeoutFn FPerformCalloutFn TI_RpcPerformCalloutFn FFreeCalloutStateFn TI_RpcFreeCalloutStateFn } type TI_RpcProxyGetClientAddressFn = uintptr type TI_RpcProxyGetConnectionTimeoutFn = uintptr type TI_RpcProxyIsValidMachineFn = uintptr type TJOBOBJECTINFOCLASS = int32 type TJOBOBJECT_ASSOCIATE_COMPLETION_PORT = struct { FCompletionKey TPVOID FCompletionPort THANDLE } type TJOBOBJECT_BASIC_PROCESS_ID_LIST = struct { FNumberOfAssignedProcesses TDWORD FNumberOfProcessIdsInList TDWORD FProcessIdList [1]TULONG_PTR } type TJOBOBJECT_BASIC_UI_RESTRICTIONS = struct { FUIRestrictionsClass TDWORD } type TJOBOBJECT_CPU_RATE_CONTROL_INFORMATION = struct { FControlFlags TDWORD F__ccgo1_4 struct { FWeight [0]TDWORD FCpuRate TDWORD } } type TJOBOBJECT_END_OF_JOB_TIME_INFORMATION = struct { FEndOfJobTimeAction TDWORD } type TJOBOBJECT_JOBSET_INFORMATION = struct { FMemberLevel TDWORD } type TJOBOBJECT_RATE_CONTROL_TOLERANCE = int32 type TJOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL = int32 type TJOBOBJECT_SECURITY_LIMIT_INFORMATION = struct { FSecurityLimitFlags TDWORD FJobToken THANDLE FSidsToDisable TPTOKEN_GROUPS FPrivilegesToDelete TPTOKEN_PRIVILEGES FRestrictedSids TPTOKEN_GROUPS } type TJOB_INFO_1 = struct { FJobId TDWORD FpPrinterName TLPSTR FpMachineName TLPSTR FpUserName TLPSTR FpDocument TLPSTR FpDatatype TLPSTR FpStatus TLPSTR FStatus TDWORD FPriority TDWORD FPosition TDWORD FTotalPages TDWORD FPagesPrinted TDWORD FSubmitted TSYSTEMTIME } type TJOB_INFO_1A = struct { FJobId TDWORD FpPrinterName TLPSTR FpMachineName TLPSTR FpUserName TLPSTR FpDocument TLPSTR FpDatatype TLPSTR FpStatus TLPSTR FStatus TDWORD FPriority TDWORD FPosition TDWORD FTotalPages TDWORD FPagesPrinted TDWORD FSubmitted TSYSTEMTIME } type TJOB_INFO_1W = struct { FJobId TDWORD FpPrinterName TLPWSTR FpMachineName TLPWSTR FpUserName TLPWSTR FpDocument TLPWSTR FpDatatype TLPWSTR FpStatus TLPWSTR FStatus TDWORD FPriority TDWORD FPosition TDWORD FTotalPages TDWORD FPagesPrinted TDWORD FSubmitted TSYSTEMTIME } type TJOB_INFO_2 = struct { FJobId TDWORD FpPrinterName TLPSTR FpMachineName TLPSTR FpUserName TLPSTR FpDocument TLPSTR FpNotifyName TLPSTR FpDatatype TLPSTR FpPrintProcessor TLPSTR FpParameters TLPSTR FpDriverName TLPSTR FpDevMode TLPDEVMODEA FpStatus TLPSTR FpSecurityDescriptor TPSECURITY_DESCRIPTOR FStatus TDWORD FPriority TDWORD FPosition TDWORD FStartTime TDWORD FUntilTime TDWORD FTotalPages TDWORD FSize TDWORD FSubmitted TSYSTEMTIME FTime TDWORD FPagesPrinted TDWORD } type TJOB_INFO_2A = struct { FJobId TDWORD FpPrinterName TLPSTR FpMachineName TLPSTR FpUserName TLPSTR FpDocument TLPSTR FpNotifyName TLPSTR FpDatatype TLPSTR FpPrintProcessor TLPSTR FpParameters TLPSTR FpDriverName TLPSTR FpDevMode TLPDEVMODEA FpStatus TLPSTR FpSecurityDescriptor TPSECURITY_DESCRIPTOR FStatus TDWORD FPriority TDWORD FPosition TDWORD FStartTime TDWORD FUntilTime TDWORD FTotalPages TDWORD FSize TDWORD FSubmitted TSYSTEMTIME FTime TDWORD FPagesPrinted TDWORD } type TJOB_INFO_2W = struct { FJobId TDWORD FpPrinterName TLPWSTR FpMachineName TLPWSTR FpUserName TLPWSTR FpDocument TLPWSTR FpNotifyName TLPWSTR FpDatatype TLPWSTR FpPrintProcessor TLPWSTR FpParameters TLPWSTR FpDriverName TLPWSTR FpDevMode TLPDEVMODEW FpStatus TLPWSTR FpSecurityDescriptor TPSECURITY_DESCRIPTOR FStatus TDWORD FPriority TDWORD FPosition TDWORD FStartTime TDWORD FUntilTime TDWORD FTotalPages TDWORD FSize TDWORD FSubmitted TSYSTEMTIME FTime TDWORD FPagesPrinted TDWORD } type TJOB_INFO_3 = struct { FJobId TDWORD FNextJobId TDWORD FReserved TDWORD } type TJOB_SET_ARRAY = struct { FJobHandle THANDLE FMemberLevel TDWORD FFlags TDWORD } type TJOYCAPS = struct { FwMid TWORD FwPid TWORD FszPname [32]TCHAR FwXmin TUINT FwXmax TUINT FwYmin TUINT FwYmax TUINT FwZmin TUINT FwZmax TUINT FwNumButtons TUINT FwPeriodMin TUINT FwPeriodMax TUINT FwRmin TUINT FwRmax TUINT FwUmin TUINT FwUmax TUINT FwVmin TUINT FwVmax TUINT FwCaps TUINT FwMaxAxes TUINT FwNumAxes TUINT FwMaxButtons TUINT FszRegKey [32]TCHAR FszOEMVxD [260]TCHAR } type TJOYCAPS2 = struct { FwMid TWORD FwPid TWORD FszPname [32]TCHAR FwXmin TUINT FwXmax TUINT FwYmin TUINT FwYmax TUINT FwZmin TUINT FwZmax TUINT FwNumButtons TUINT FwPeriodMin TUINT FwPeriodMax TUINT FwRmin TUINT FwRmax TUINT FwUmin TUINT FwUmax TUINT FwVmin TUINT FwVmax TUINT FwCaps TUINT FwMaxAxes TUINT FwNumAxes TUINT FwMaxButtons TUINT FszRegKey [32]TCHAR FszOEMVxD [260]TCHAR FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TJOYCAPS2A = struct { FwMid TWORD FwPid TWORD FszPname [32]TCHAR FwXmin TUINT FwXmax TUINT FwYmin TUINT FwYmax TUINT FwZmin TUINT FwZmax TUINT FwNumButtons TUINT FwPeriodMin TUINT FwPeriodMax TUINT FwRmin TUINT FwRmax TUINT FwUmin TUINT FwUmax TUINT FwVmin TUINT FwVmax TUINT FwCaps TUINT FwMaxAxes TUINT FwNumAxes TUINT FwMaxButtons TUINT FszRegKey [32]TCHAR FszOEMVxD [260]TCHAR FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TJOYCAPS2W = struct { FwMid TWORD FwPid TWORD FszPname [32]TWCHAR FwXmin TUINT FwXmax TUINT FwYmin TUINT FwYmax TUINT FwZmin TUINT FwZmax TUINT FwNumButtons TUINT FwPeriodMin TUINT FwPeriodMax TUINT FwRmin TUINT FwRmax TUINT FwUmin TUINT FwUmax TUINT FwVmin TUINT FwVmax TUINT FwCaps TUINT FwMaxAxes TUINT FwNumAxes TUINT FwMaxButtons TUINT FszRegKey [32]TWCHAR FszOEMVxD [260]TWCHAR FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TJOYCAPSA = struct { FwMid TWORD FwPid TWORD FszPname [32]TCHAR FwXmin TUINT FwXmax TUINT FwYmin TUINT FwYmax TUINT FwZmin TUINT FwZmax TUINT FwNumButtons TUINT FwPeriodMin TUINT FwPeriodMax TUINT FwRmin TUINT FwRmax TUINT FwUmin TUINT FwUmax TUINT FwVmin TUINT FwVmax TUINT FwCaps TUINT FwMaxAxes TUINT FwNumAxes TUINT FwMaxButtons TUINT FszRegKey [32]TCHAR FszOEMVxD [260]TCHAR } type TJOYCAPSW = struct { FwMid TWORD FwPid TWORD FszPname [32]TWCHAR FwXmin TUINT FwXmax TUINT FwYmin TUINT FwYmax TUINT FwZmin TUINT FwZmax TUINT FwNumButtons TUINT FwPeriodMin TUINT FwPeriodMax TUINT FwRmin TUINT FwRmax TUINT FwUmin TUINT FwUmax TUINT FwVmin TUINT FwVmax TUINT FwCaps TUINT FwMaxAxes TUINT FwNumAxes TUINT FwMaxButtons TUINT FszRegKey [32]TWCHAR FszOEMVxD [260]TWCHAR } type TJOYINFO = struct { FwXpos TUINT FwYpos TUINT FwZpos TUINT FwButtons TUINT } type TJOYINFOEX = struct { FdwSize TDWORD FdwFlags TDWORD FdwXpos TDWORD FdwYpos TDWORD FdwZpos TDWORD FdwRpos TDWORD FdwUpos TDWORD FdwVpos TDWORD FdwButtons TDWORD FdwButtonNumber TDWORD FdwPOV TDWORD FdwReserved1 TDWORD FdwReserved2 TDWORD } type TKBDLLHOOKSTRUCT = struct { FvkCode TDWORD FscanCode TDWORD Fflags TDWORD Ftime TDWORD FdwExtraInfo TULONG_PTR } type TKCRM_MARSHAL_HEADER = struct { FVersionMajor TULONG FVersionMinor TULONG FNumProtocols TULONG FUnused TULONG } type TKCRM_PROTOCOL_BLOB = struct { FProtocolId TCRM_PROTOCOL_ID FStaticInfoLength TULONG FTransactionIdInfoLength TULONG FUnused1 TULONG FUnused2 TULONG } type TKCRM_TRANSACTION_BLOB = struct { FUOW TGUID FTmIdentity TGUID FIsolationLevel TULONG FIsolationFlags TULONG FTimeout TULONG FDescription [64]TWCHAR } type TKEAPUBKEY = struct { Fmagic TDWORD Fbitlen TDWORD } type TKERNINGPAIR = struct { FwFirst TWORD FwSecond TWORD FiKernAmount int32 } type TKEYARRAY = [128]TWORD type TKEYBDINPUT = struct { FwVk TWORD FwScan TWORD FdwFlags TDWORD Ftime TDWORD FdwExtraInfo TULONG_PTR } type TKEY_EVENT_RECORD = struct { FbKeyDown TWINBOOL FwRepeatCount TWORD FwVirtualKeyCode TWORD FwVirtualScanCode TWORD FuChar struct { FAsciiChar [0]TCHAR FUnicodeChar TWCHAR } FdwControlKeyState TDWORD } type TKEY_TYPE_SUBTYPE = struct { FdwKeySpec TDWORD FType TGUID FSubtype TGUID } const TKF_AVAILABLE = 2 const TKF_CONFIRMHOTKEY = 8 const TKF_HOTKEYACTIVE = 4 const TKF_HOTKEYSOUND = 16 const TKF_INDICATOR = 32 const TKF_TOGGLEKEYSON = 1 type TKTMOBJECT_CURSOR = struct { FLastQuery TGUID FObjectIdCount TDWORD FObjectIds [1]TGUID } type TKTMOBJECT_TYPE = int32 type TLANA_ENUM = struct { Flength TUCHAR Flana [255]TUCHAR } type TLANGGROUPLOCALE_ENUMPROCA = uintptr type TLANGGROUPLOCALE_ENUMPROCW = uintptr type TLANGID = uint16 type TLANGUAGEGROUP_ENUMPROCA = uintptr type TLANGUAGEGROUP_ENUMPROCW = uintptr type TLASTINPUTINFO = struct { FcbSize TUINT FdwTime TDWORD } type TLATENCY_TIME = int32 type TLAYERPLANEDESCRIPTOR = struct { FnSize TWORD FnVersion TWORD FdwFlags TDWORD FiPixelType TBYTE FcColorBits TBYTE FcRedBits TBYTE FcRedShift TBYTE FcGreenBits TBYTE FcGreenShift TBYTE FcBlueBits TBYTE FcBlueShift TBYTE FcAlphaBits TBYTE FcAlphaShift TBYTE FcAccumBits TBYTE FcAccumRedBits TBYTE FcAccumGreenBits TBYTE FcAccumBlueBits TBYTE FcAccumAlphaBits TBYTE FcDepthBits TBYTE FcStencilBits TBYTE FcAuxBuffers TBYTE FiLayerPlane TBYTE FbReserved TBYTE FcrTransparent TCOLORREF } type TLCID = uint32 type TLCSCSTYPE = int32 type TLCSGAMUTMATCH = int32 type TLCTYPE = uint32 type TLC_ID = struct { FwLanguage uint16 FwCountry uint16 FwCodePage uint16 } type TLDT_ENTRY = struct { FLimitLow TWORD FBaseLow TWORD FHighWord struct { FBits [0]struct { F__ccgo0 uint32 } FBytes struct { FBaseMid TBYTE FFlags1 TBYTE FFlags2 TBYTE FBaseHi TBYTE } } } type TLGRPID = uint32 type TLIBATTR = TTLIBATTR type TLIBFLAGS = int32 type TLINEDDAPROC = uintptr type TLINGER = struct { Fl_onoff Tu_short Fl_linger Tu_short } type TLINKSRCDESCRIPTOR = struct { FcbSize TULONG Fclsid TCLSID FdwDrawAspect TDWORD Fsizel TSIZEL Fpointl TPOINTL FdwStatus TDWORD FdwFullUserTypeName TDWORD FdwSrcOfCopy TDWORD } type TLIST_ENTRY = struct { FFlink uintptr FBlink uintptr } type TLIST_ENTRY32 = struct { FFlink TDWORD FBlink TDWORD } type TLOAD_DLL_DEBUG_INFO = struct { FhFile THANDLE FlpBaseOfDll TLPVOID FdwDebugInfoFileOffset TDWORD FnDebugInfoSize TDWORD FlpImageName TLPVOID FfUnicode TWORD } type TLOCALESIGNATURE = struct { FlsUsb [4]TDWORD FlsCsbDefault [2]TDWORD FlsCsbSupported [2]TDWORD } type TLOCALE_ENUMPROCA = uintptr type TLOCALE_ENUMPROCEX = uintptr type TLOCALE_ENUMPROCW = uintptr type TLOCALHANDLE = uintptr type TLOCKTYPE = int32 type TLOGBRUSH = struct { FlbStyle TUINT FlbColor TCOLORREF FlbHatch TULONG_PTR } type TLOGBRUSH32 = struct { FlbStyle TUINT FlbColor TCOLORREF FlbHatch TULONG } type TLOGCOLORSPACE = struct { FlcsSignature TDWORD FlcsVersion TDWORD FlcsSize TDWORD FlcsCSType TLCSCSTYPE FlcsIntent TLCSGAMUTMATCH FlcsEndpoints TCIEXYZTRIPLE FlcsGammaRed TDWORD FlcsGammaGreen TDWORD FlcsGammaBlue TDWORD FlcsFilename [260]TCHAR } type TLOGCOLORSPACEA = struct { FlcsSignature TDWORD FlcsVersion TDWORD FlcsSize TDWORD FlcsCSType TLCSCSTYPE FlcsIntent TLCSGAMUTMATCH FlcsEndpoints TCIEXYZTRIPLE FlcsGammaRed TDWORD FlcsGammaGreen TDWORD FlcsGammaBlue TDWORD FlcsFilename [260]TCHAR } type TLOGCOLORSPACEW = struct { FlcsSignature TDWORD FlcsVersion TDWORD FlcsSize TDWORD FlcsCSType TLCSCSTYPE FlcsIntent TLCSGAMUTMATCH FlcsEndpoints TCIEXYZTRIPLE FlcsGammaRed TDWORD FlcsGammaGreen TDWORD FlcsGammaBlue TDWORD FlcsFilename [260]TWCHAR } type TLOGFONT = struct { FlfHeight TLONG FlfWidth TLONG FlfEscapement TLONG FlfOrientation TLONG FlfWeight TLONG FlfItalic TBYTE FlfUnderline TBYTE FlfStrikeOut TBYTE FlfCharSet TBYTE FlfOutPrecision TBYTE FlfClipPrecision TBYTE FlfQuality TBYTE FlfPitchAndFamily TBYTE FlfFaceName [32]TCHAR } type TLOGFONTA = struct { FlfHeight TLONG FlfWidth TLONG FlfEscapement TLONG FlfOrientation TLONG FlfWeight TLONG FlfItalic TBYTE FlfUnderline TBYTE FlfStrikeOut TBYTE FlfCharSet TBYTE FlfOutPrecision TBYTE FlfClipPrecision TBYTE FlfQuality TBYTE FlfPitchAndFamily TBYTE FlfFaceName [32]TCHAR } type TLOGFONTW = struct { FlfHeight TLONG FlfWidth TLONG FlfEscapement TLONG FlfOrientation TLONG FlfWeight TLONG FlfItalic TBYTE FlfUnderline TBYTE FlfStrikeOut TBYTE FlfCharSet TBYTE FlfOutPrecision TBYTE FlfClipPrecision TBYTE FlfQuality TBYTE FlfPitchAndFamily TBYTE FlfFaceName [32]TWCHAR } type TLOGICAL_PROCESSOR_RELATIONSHIP = int32 type TLOGPALETTE = struct { FpalVersion TWORD FpalNumEntries TWORD FpalPalEntry [1]TPALETTEENTRY } type TLOGPEN = struct { FlopnStyle TUINT FlopnWidth TPOINT FlopnColor TCOLORREF } type TLONG = int32 type TLONG32 = int32 type TLONG64 = int64 type TLONGLONG = int64 type TLOOKUP_STREAM_FROM_CLUSTER_OUTPUT = struct { FOffset TDWORD FNumberOfMatches TDWORD FBufferSizeRequired TDWORD } type TLPABC = uintptr type TLPABCFLOAT = uintptr type TLPACCEL = uintptr type TLPACCESSTIMEOUT = uintptr type TLPADDJOB_INFO_1 = uintptr type TLPADDJOB_INFO_1A = uintptr type TLPADDJOB_INFO_1W = uintptr type TLPADDREXCLUSIONCONTROL = uintptr type TLPADDRTRACKINGCONTROL = uintptr type TLPADVISESINK = uintptr type TLPADVISESINK2 = uintptr type TLPALTTABINFO = uintptr type TLPANIMATIONINFO = uintptr type TLPAUDIODESCRIPTION = uintptr type TLPAUTHENTICATION = uintptr type TLPAUTHENTICATIONEX = uintptr type TLPAUXCAPS = uintptr type TLPAUXCAPS2 = uintptr type TLPAUXCAPS2A = uintptr type TLPAUXCAPS2W = uintptr type TLPAUXCAPSA = uintptr type TLPAUXCAPSW = uintptr type TLPAXESLIST = uintptr type TLPAXESLISTA = uintptr type TLPAXESLISTW = uintptr type TLPAXISINFO = uintptr type TLPAXISINFOA = uintptr type TLPAXISINFOW = uintptr type TLPBC = uintptr type TLPBIDI_DATA = uintptr type TLPBIDI_REQUEST_CONTAINER = uintptr type TLPBIDI_REQUEST_DATA = uintptr type TLPBIDI_RESPONSE_CONTAINER = uintptr type TLPBIDI_RESPONSE_DATA = uintptr type TLPBINDCALLBACKREDIRECT = uintptr type TLPBINDCTX = uintptr type TLPBINDHOST = uintptr type TLPBINDING = uintptr type TLPBINDPROTOCOL = uintptr type TLPBINDPTR = uintptr type TLPBINDSTATUSCALLBACK = uintptr type TLPBINDSTATUSCALLBACKEX = uintptr type TLPBIND_OPTS = uintptr type TLPBIND_OPTS2 = uintptr type TLPBIND_OPTS3 = uintptr type TLPBITMAP = uintptr type TLPBITMAPCOREHEADER = uintptr type TLPBITMAPCOREINFO = uintptr type TLPBITMAPFILEHEADER = uintptr type TLPBITMAPINFO = uintptr type TLPBITMAPINFOHEADER = uintptr type TLPBITMAPV4HEADER = uintptr type TLPBITMAPV5HEADER = uintptr type TLPBLOB = uintptr type TLPBOOL = uintptr type TLPBORDERWIDTHS = uintptr type TLPBSTR = uintptr type TLPBSTRBLOB = uintptr type TLPBYTE = uintptr type TLPBY_HANDLE_FILE_INFORMATION = uintptr type TLPCANCELMETHODCALLS = uintptr type TLPCANDIDATEFORM = uintptr type TLPCANDIDATELIST = uintptr type TLPCATALOGFILEINFO = uintptr type TLPCBORDERWIDTHS = uintptr type TLPCBTACTIVATESTRUCT = uintptr type TLPCBT_CREATEWND = uintptr type TLPCBT_CREATEWNDA = uintptr type TLPCBT_CREATEWNDW = uintptr type TLPCBYTE = uintptr type TLPCCH = uintptr type TLPCCHOOKPROC = uintptr type TLPCDLGTEMPLATE = uintptr type TLPCDLGTEMPLATEA = uintptr type TLPCDLGTEMPLATEW = uintptr type TLPCFHOOKPROC = uintptr type TLPCGUID = uintptr type TLPCH = uintptr type TLPCHARSETINFO = uintptr type TLPCHOOSECOLOR = uintptr type TLPCHOOSECOLORA = uintptr type TLPCHOOSECOLORW = uintptr type TLPCHOOSEFONT = uintptr type TLPCHOOSEFONTA = uintptr type TLPCHOOSEFONTW = uintptr type TLPCIEXYZ = uintptr type TLPCIEXYZTRIPLE = uintptr type TLPCLASSFACTORY = uintptr type TLPCLIENTCREATESTRUCT = uintptr type TLPCLIPFORMAT = uintptr type TLPCLSID = uintptr type TLPCMENUINFO = uintptr type TLPCMENUITEMINFO = uintptr type TLPCMENUITEMINFOA = uintptr type TLPCMENUITEMINFOW = uintptr type TLPCMMCKINFO = uintptr type TLPCMMIOINFO = uintptr type TLPCODEBASEHOLD = uintptr type TLPCODEINSTALL = uintptr type TLPCOLESTR = uintptr type TLPCOLORADJUSTMENT = uintptr type TLPCOLORREF = uintptr type TLPCOMBOBOXINFO = uintptr type TLPCOMMCONFIG = uintptr type TLPCOMMPROP = uintptr type TLPCOMMTIMEOUTS = uintptr type TLPCOMPAREITEMSTRUCT = uintptr type TLPCOMPOSITIONFORM = uintptr type TLPCOMSTAT = uintptr type TLPCONNECTDLGSTRUCT = uintptr type TLPCONNECTDLGSTRUCTA = uintptr type TLPCONNECTDLGSTRUCTW = uintptr type TLPCONTEXT = uintptr type TLPCPINFO = uintptr type TLPCPINFOEX = uintptr type TLPCPINFOEXA = uintptr type TLPCPINFOEXW = uintptr type TLPCPROPSHEETHEADERA = uintptr type TLPCPROPSHEETHEADERW = uintptr type TLPCPROPSHEETPAGEA = uintptr type TLPCPROPSHEETPAGEA_LATEST = uintptr type TLPCPROPSHEETPAGEA_V1 = uintptr type TLPCPROPSHEETPAGEA_V2 = uintptr type TLPCPROPSHEETPAGEA_V3 = uintptr type TLPCPROPSHEETPAGEW = uintptr type TLPCPROPSHEETPAGEW_LATEST = uintptr type TLPCPROPSHEETPAGEW_V1 = uintptr type TLPCPROPSHEETPAGEW_V2 = uintptr type TLPCPROPSHEETPAGEW_V3 = uintptr type TLPCREATEERRORINFO = uintptr type TLPCREATEFILE2_EXTENDED_PARAMETERS = uintptr type TLPCREATESTRUCT = uintptr type TLPCREATESTRUCTA = uintptr type TLPCREATESTRUCTW = uintptr type TLPCREATETYPEINFO = uintptr type TLPCREATETYPEINFO2 = uintptr type TLPCREATETYPELIB = uintptr type TLPCREATETYPELIB2 = uintptr type TLPCREATE_PROCESS_DEBUG_INFO = uintptr type TLPCREATE_THREAD_DEBUG_INFO = uintptr type TLPCRECT = uintptr type TLPCRECTL = uintptr type TLPCRITICAL_SECTION = uintptr type TLPCRITICAL_SECTION_DEBUG = uintptr type TLPCSCARD_IO_REQUEST = uintptr type TLPCSCROLLINFO = uintptr type TLPCSTR = uintptr type TLPCTCH = uintptr type TLPCTSTR = uintptr type TLPCURRENCYFMT = uintptr type TLPCURRENCYFMTA = uintptr type TLPCURRENCYFMTW = uintptr type TLPCURSORINFO = uintptr type TLPCURSORSHAPE = uintptr type TLPCUSTDATA = uintptr type TLPCUSTDATAITEM = uintptr type TLPCUTSTR = uintptr type TLPCUWCHAR = uintptr type TLPCUWSTR = uintptr type TLPCVOID = uintptr type TLPCWAVEFORMATEX = uintptr type TLPCWCH = uintptr type TLPCWCHAR = uintptr type TLPCWPRETSTRUCT = uintptr type TLPCWPSTRUCT = uintptr type TLPCWSTR = uintptr type TLPCY = uintptr type TLPDATAADVISEHOLDER = uintptr type TLPDATAFILTER = uintptr type TLPDATAOBJECT = uintptr type TLPDATATYPES_INFO_1 = uintptr type TLPDATATYPES_INFO_1A = uintptr type TLPDATATYPES_INFO_1W = uintptr type TLPDCB = uintptr type TLPDEBUGHOOKINFO = uintptr type TLPDEBUG_EVENT = uintptr type TLPDECIMAL = uintptr type TLPDELETEITEMSTRUCT = uintptr type TLPDESIGNVECTOR = uintptr type TLPDEVMODE = uintptr type TLPDEVMODEA = uintptr type TLPDEVMODEW = uintptr type TLPDEVNAMES = uintptr type TLPDIBSECTION = uintptr type TLPDISCDLGSTRUCT = uintptr type TLPDISCDLGSTRUCTA = uintptr type TLPDISCDLGSTRUCTW = uintptr type TLPDISPATCH = uintptr type TLPDISPLAY_DEVICE = uintptr type TLPDISPLAY_DEVICEA = uintptr type TLPDISPLAY_DEVICEW = uintptr type TLPDLGITEMTEMPLATE = uintptr type TLPDLGITEMTEMPLATEA = uintptr type TLPDLGITEMTEMPLATEW = uintptr type TLPDLGTEMPLATE = uintptr type TLPDLGTEMPLATEA = uintptr type TLPDLGTEMPLATEW = uintptr type TLPDOCINFO = uintptr type TLPDOCINFOA = uintptr type TLPDOCINFOW = uintptr type TLPDOC_INFO_1 = uintptr type TLPDOC_INFO_1A = uintptr type TLPDOC_INFO_1W = uintptr type TLPDOC_INFO_2 = uintptr type TLPDOC_INFO_2A = uintptr type TLPDOC_INFO_2W = uintptr type TLPDOC_INFO_3 = uintptr type TLPDOC_INFO_3A = uintptr type TLPDOC_INFO_3W = uintptr type TLPDRAGINFO = uintptr type TLPDRAGINFOA = uintptr type TLPDRAGINFOW = uintptr type TLPDRAWITEMSTRUCT = uintptr type TLPDRAWTEXTPARAMS = uintptr type TLPDRIVERSTATUS = uintptr type TLPDRIVER_INFO_1 = uintptr type TLPDRIVER_INFO_1A = uintptr type TLPDRIVER_INFO_1W = uintptr type TLPDRIVER_INFO_2 = uintptr type TLPDRIVER_INFO_2A = uintptr type TLPDRIVER_INFO_2W = uintptr type TLPDRIVER_INFO_3 = uintptr type TLPDRIVER_INFO_3A = uintptr type TLPDRIVER_INFO_3W = uintptr type TLPDRIVER_INFO_4 = uintptr type TLPDRIVER_INFO_4A = uintptr type TLPDRIVER_INFO_4W = uintptr type TLPDRIVER_INFO_5 = uintptr type TLPDRIVER_INFO_5A = uintptr type TLPDRIVER_INFO_5W = uintptr type TLPDRIVER_INFO_6 = uintptr type TLPDRIVER_INFO_6A = uintptr type TLPDRIVER_INFO_6W = uintptr type TLPDRIVER_INFO_8 = uintptr type TLPDRIVER_INFO_8A = uintptr type TLPDRIVER_INFO_8W = uintptr type TLPDROPSOURCE = uintptr type TLPDROPSTRUCT = uintptr type TLPDROPTARGET = uintptr type TLPDRVCALLBACK = uintptr type TLPDRVCONFIGINFO = uintptr type TLPDRVCONFIGINFOEX = uintptr type TLPDWORD = uintptr type TLPELEMDESC = uintptr type TLPENCLAVE_ROUTINE = uintptr type TLPENCODINGFILTERFACTORY = uintptr type TLPENHMETAHEADER = uintptr type TLPENHMETARECORD = uintptr type TLPENUMFORMATETC = uintptr type TLPENUMLOGFONT = uintptr type TLPENUMLOGFONTA = uintptr type TLPENUMLOGFONTEX = uintptr type TLPENUMLOGFONTEXA = uintptr type TLPENUMLOGFONTEXDV = uintptr type TLPENUMLOGFONTEXDVA = uintptr type TLPENUMLOGFONTEXDVW = uintptr type TLPENUMLOGFONTEXW = uintptr type TLPENUMLOGFONTW = uintptr type TLPENUMMONIKER = uintptr type TLPENUMOLEVERB = uintptr type TLPENUMSTATDATA = uintptr type TLPENUMSTATPROPSETSTG = uintptr type TLPENUMSTATPROPSTG = uintptr type TLPENUMSTATSTG = uintptr type TLPENUMSTRING = uintptr type TLPENUMTEXTMETRIC = uintptr type TLPENUMTEXTMETRICA = uintptr type TLPENUMTEXTMETRICW = uintptr type TLPENUMUNKNOWN = uintptr type TLPENUMVARIANT = uintptr type TLPENUM_SERVICE_STATUS = uintptr type TLPENUM_SERVICE_STATUSA = uintptr type TLPENUM_SERVICE_STATUSW = uintptr type TLPENUM_SERVICE_STATUS_PROCESS = uintptr type TLPENUM_SERVICE_STATUS_PROCESSA = uintptr type TLPENUM_SERVICE_STATUS_PROCESSW = uintptr type TLPERRORINFO = uintptr type TLPERRORLOG = uintptr type TLPEVENTLOG_FULL_INFORMATION = uintptr type TLPEVENTMSG = uintptr type TLPEVENTMSGMSG = uintptr type TLPEXCEPINFO = uintptr type TLPEXCEPTION_DEBUG_INFO = uintptr type TLPEXCEPTION_POINTERS = uintptr type TLPEXCEPTION_RECORD = uintptr type TLPEXIT_PROCESS_DEBUG_INFO = uintptr type TLPEXIT_THREAD_DEBUG_INFO = uintptr type TLPEXTERNALCONNECTION = uintptr type TLPEXTLOGFONT = uintptr type TLPEXTLOGFONTA = uintptr type TLPEXTLOGFONTW = uintptr type TLPEXTLOGPEN = uintptr type TLPEXTLOGPEN32 = uintptr type TLPFD_SET = uintptr type TLPFIBER_START_ROUTINE = uintptr type TLPFILETIME = uintptr type TLPFILE_ID_DESCRIPTOR = uintptr type TLPFILTERKEYS = uintptr type TLPFINDREPLACE = uintptr type TLPFINDREPLACEA = uintptr type TLPFINDREPLACEW = uintptr type TLPFMTID = uintptr type TLPFNADDPROPSHEETPAGE = uintptr type TLPFNADDPROPSHEETPAGES = uintptr type TLPFNCANUNLOADNOW = uintptr type TLPFNDEVCAPS = uintptr type TLPFNDEVMODE = uintptr type TLPFNGETCLASSOBJECT = uintptr type TLPFNPSPCALLBACKA = uintptr type TLPFNPSPCALLBACKW = uintptr type TLPFONTSIGNATURE = uintptr type TLPFORMATETC = uintptr type TLPFORM_INFO_1 = uintptr type TLPFORM_INFO_1A = uintptr type TLPFORM_INFO_1W = uintptr type TLPFRHOOKPROC = uintptr type TLPFUNCDESC = uintptr type TLPFXPT16DOT16 = uintptr type TLPFXPT2DOT30 = uintptr type TLPGCP_RESULTS = uintptr type TLPGCP_RESULTSA = uintptr type TLPGCP_RESULTSW = uintptr type TLPGETBINDHANDLE = uintptr type TLPGETVERSIONINPARAMS = uintptr type TLPGLOBALINTERFACETABLE = uintptr type TLPGLYPHMETRICS = uintptr type TLPGLYPHMETRICSFLOAT = uintptr type TLPGLYPHSET = uintptr type TLPGRADIENT_RECT = uintptr type TLPGRADIENT_TRIANGLE = uintptr type TLPGUID = uintptr type TLPGUITHREADINFO = uintptr type TLPHANDLE = uintptr type TLPHANDLER_FUNCTION = uintptr type TLPHANDLER_FUNCTION_EX = uintptr type TLPHANDLETABLE = uintptr type TLPHARDWAREHOOKSTRUCT = uintptr type TLPHARDWAREINPUT = uintptr type TLPHEAP_SUMMARY = uintptr type TLPHELPINFO = uintptr type TLPHELPWININFO = uintptr type TLPHELPWININFOA = uintptr type TLPHELPWININFOW = uintptr type TLPHIGHCONTRAST = uintptr type TLPHIGHCONTRASTA = uintptr type TLPHIGHCONTRASTW = uintptr type TLPHIT_LOGGING_INFO = uintptr type TLPHKL = uintptr type TLPHMIDI = uintptr type TLPHMIDIIN = uintptr type TLPHMIDIOUT = uintptr type TLPHMIDISTRM = uintptr type TLPHMIXER = uintptr type TLPHMIXEROBJ = uintptr type TLPHOSTENT = uintptr type TLPHTTPNEGOTIATE = uintptr type TLPHTTPNEGOTIATE2 = uintptr type TLPHTTPNEGOTIATE3 = uintptr type TLPHTTPSECURITY = uintptr type TLPHWAVEIN = uintptr type TLPHWAVEOUT = uintptr type TLPHW_PROFILE_INFO = uintptr type TLPHW_PROFILE_INFOA = uintptr type TLPHW_PROFILE_INFOW = uintptr type TLPICONMETRICS = uintptr type TLPICONMETRICSA = uintptr type TLPICONMETRICSW = uintptr type TLPIDEREGS = uintptr type TLPIDLDESC = uintptr type TLPIID = uintptr type TLPIINTERNET = uintptr type TLPIINTERNETBINDINFO = uintptr type TLPIINTERNETBINDINFOEX = uintptr type TLPIINTERNETPRIORITY = uintptr type TLPIINTERNETPROTOCOL = uintptr type TLPIINTERNETPROTOCOLINFO = uintptr type TLPIINTERNETPROTOCOLROOT = uintptr type TLPIINTERNETPROTOCOLSINK = uintptr type TLPIINTERNETPROTOCOLSINKStackable = uintptr type TLPIINTERNETSESSION = uintptr type TLPIINTERNETTHREADSWITCH = uintptr type TLPIMECHARPOSITION = uintptr type TLPIMEMENUITEMINFO = uintptr type TLPIMEMENUITEMINFOA = uintptr type TLPIMEMENUITEMINFOW = uintptr type TLPINITIALIZESPY = uintptr type TLPINIT_ONCE = uintptr type TLPINPUT = uintptr type TLPINT = uintptr type TLPINTERFACEDATA = uintptr type TLPINTERFACEINFO = uintptr type TLPIN_ADDR = uintptr type TLPIWRAPPEDPROTOCOL = uintptr type TLPJIT_DEBUG_INFO = uintptr type TLPJIT_DEBUG_INFO32 = uintptr type TLPJIT_DEBUG_INFO64 = uintptr type TLPJOB_INFO_1 = uintptr type TLPJOB_INFO_1A = uintptr type TLPJOB_INFO_1W = uintptr type TLPJOB_INFO_2 = uintptr type TLPJOB_INFO_2A = uintptr type TLPJOB_INFO_2W = uintptr type TLPJOB_INFO_3 = uintptr type TLPJOYCAPS = uintptr type TLPJOYCAPS2 = uintptr type TLPJOYCAPS2A = uintptr type TLPJOYCAPS2W = uintptr type TLPJOYCAPSA = uintptr type TLPJOYCAPSW = uintptr type TLPJOYINFO = uintptr type TLPJOYINFOEX = uintptr type TLPKBDLLHOOKSTRUCT = uintptr type TLPKERNINGPAIR = uintptr type TLPKEYARRAY = uintptr type TLPKEYBDINPUT = uintptr type TLPLAYERPLANEDESCRIPTOR = uintptr type TLPLC_ID = uintptr type TLPLDT_ENTRY = uintptr type TLPLINGER = uintptr type TLPLINKSRCDESCRIPTOR = uintptr type TLPLOAD_DLL_DEBUG_INFO = uintptr type TLPLOCALESIGNATURE = uintptr type TLPLOCKBYTES = uintptr type TLPLOGBRUSH = uintptr type TLPLOGBRUSH32 = uintptr type TLPLOGCOLORSPACE = uintptr type TLPLOGCOLORSPACEA = uintptr type TLPLOGCOLORSPACEW = uintptr type TLPLOGFONT = uintptr type TLPLOGFONTA = uintptr type TLPLOGFONTW = uintptr type TLPLOGPALETTE = uintptr type TLPLOGPEN = uintptr type TLPLONG = uintptr type TLPMALLOC = uintptr type TLPMALLOCSPY = uintptr type TLPMARSHAL = uintptr type TLPMARSHAL2 = uintptr type TLPMAT2 = uintptr type TLPMCI_ANIM_OPEN_PARMS = uintptr type TLPMCI_ANIM_OPEN_PARMSA = uintptr type TLPMCI_ANIM_OPEN_PARMSW = uintptr type TLPMCI_ANIM_PLAY_PARMS = uintptr type TLPMCI_ANIM_RECT_PARMS = uintptr type TLPMCI_ANIM_STEP_PARMS = uintptr type TLPMCI_ANIM_UPDATE_PARMS = uintptr type TLPMCI_ANIM_WINDOW_PARMS = uintptr type TLPMCI_ANIM_WINDOW_PARMSA = uintptr type TLPMCI_ANIM_WINDOW_PARMSW = uintptr type TLPMCI_BREAK_PARMS = uintptr type TLPMCI_GENERIC_PARMS = uintptr type TLPMCI_GETDEVCAPS_PARMS = uintptr type TLPMCI_INFO_PARMS = uintptr type TLPMCI_INFO_PARMSA = uintptr type TLPMCI_INFO_PARMSW = uintptr type TLPMCI_LOAD_PARMS = uintptr type TLPMCI_LOAD_PARMSA = uintptr type TLPMCI_LOAD_PARMSW = uintptr type TLPMCI_OPEN_PARMS = uintptr type TLPMCI_OPEN_PARMSA = uintptr type TLPMCI_OPEN_PARMSW = uintptr type TLPMCI_OVLY_LOAD_PARMS = uintptr type TLPMCI_OVLY_LOAD_PARMSA = uintptr type TLPMCI_OVLY_LOAD_PARMSW = uintptr type TLPMCI_OVLY_OPEN_PARMS = uintptr type TLPMCI_OVLY_OPEN_PARMSA = uintptr type TLPMCI_OVLY_OPEN_PARMSW = uintptr type TLPMCI_OVLY_RECT_PARMS = uintptr type TLPMCI_OVLY_SAVE_PARMS = uintptr type TLPMCI_OVLY_SAVE_PARMSA = uintptr type TLPMCI_OVLY_SAVE_PARMSW = uintptr type TLPMCI_OVLY_WINDOW_PARMS = uintptr type TLPMCI_OVLY_WINDOW_PARMSA = uintptr type TLPMCI_OVLY_WINDOW_PARMSW = uintptr type TLPMCI_PLAY_PARMS = uintptr type TLPMCI_RECORD_PARMS = uintptr type TLPMCI_SAVE_PARMS = uintptr type TLPMCI_SAVE_PARMSA = uintptr type TLPMCI_SAVE_PARMSW = uintptr type TLPMCI_SEEK_PARMS = uintptr type TLPMCI_SEQ_SET_PARMS = uintptr type TLPMCI_SET_PARMS = uintptr type TLPMCI_STATUS_PARMS = uintptr type TLPMCI_SYSINFO_PARMS = uintptr type TLPMCI_SYSINFO_PARMSA = uintptr type TLPMCI_SYSINFO_PARMSW = uintptr type TLPMCI_VD_ESCAPE_PARMS = uintptr type TLPMCI_VD_ESCAPE_PARMSA = uintptr type TLPMCI_VD_ESCAPE_PARMSW = uintptr type TLPMCI_VD_PLAY_PARMS = uintptr type TLPMCI_VD_STEP_PARMS = uintptr type TLPMCI_WAVE_DELETE_PARMS = uintptr type TLPMCI_WAVE_OPEN_PARMS = uintptr type TLPMCI_WAVE_OPEN_PARMSA = uintptr type TLPMCI_WAVE_OPEN_PARMSW = uintptr type TLPMCI_WAVE_SET_PARMS = uintptr type TLPMDICREATESTRUCT = uintptr type TLPMDICREATESTRUCTA = uintptr type TLPMDICREATESTRUCTW = uintptr type TLPMDINEXTMENU = uintptr type TLPMEASUREITEMSTRUCT = uintptr type TLPMEMORYSTATUS = uintptr type TLPMEMORYSTATUSEX = uintptr type TLPMENUBARINFO = uintptr type TLPMENUINFO = uintptr type TLPMENUITEMINFO = uintptr type TLPMENUITEMINFOA = uintptr type TLPMENUITEMINFOW = uintptr type TLPMENUTEMPLATE = uintptr type TLPMENUTEMPLATEA = uintptr type TLPMENUTEMPLATEW = uintptr type TLPMESSAGEFILTER = uintptr type TLPMETAFILEPICT = uintptr type TLPMETAHEADER = uintptr type TLPMETARECORD = uintptr type TLPMETHODDATA = uintptr type TLPMIDICALLBACK = uintptr type TLPMIDIHDR = uintptr type TLPMIDIINCAPS = uintptr type TLPMIDIINCAPS2 = uintptr type TLPMIDIINCAPS2A = uintptr type TLPMIDIINCAPS2W = uintptr type TLPMIDIINCAPSA = uintptr type TLPMIDIINCAPSW = uintptr type TLPMIDIOUTCAPS = uintptr type TLPMIDIOUTCAPS2 = uintptr type TLPMIDIOUTCAPS2A = uintptr type TLPMIDIOUTCAPS2W = uintptr type TLPMIDIOUTCAPSA = uintptr type TLPMIDIOUTCAPSW = uintptr type TLPMIDIPROPTEMPO = uintptr type TLPMIDIPROPTIMEDIV = uintptr type TLPMINIMIZEDMETRICS = uintptr type TLPMINMAXINFO = uintptr type TLPMIXERCAPS = uintptr type TLPMIXERCAPS2 = uintptr type TLPMIXERCAPS2A = uintptr type TLPMIXERCAPS2W = uintptr type TLPMIXERCAPSA = uintptr type TLPMIXERCAPSW = uintptr type TLPMIXERCONTROL = uintptr type TLPMIXERCONTROLA = uintptr type TLPMIXERCONTROLDETAILS = uintptr type TLPMIXERCONTROLDETAILS_BOOLEAN = uintptr type TLPMIXERCONTROLDETAILS_LISTTEXT = uintptr type TLPMIXERCONTROLDETAILS_LISTTEXTA = uintptr type TLPMIXERCONTROLDETAILS_LISTTEXTW = uintptr type TLPMIXERCONTROLDETAILS_SIGNED = uintptr type TLPMIXERCONTROLDETAILS_UNSIGNED = uintptr type TLPMIXERCONTROLW = uintptr type TLPMIXERLINE = uintptr type TLPMIXERLINEA = uintptr type TLPMIXERLINECONTROLS = uintptr type TLPMIXERLINECONTROLSA = uintptr type TLPMIXERLINECONTROLSW = uintptr type TLPMIXERLINEW = uintptr type TLPMMCKINFO = uintptr type TLPMMIOINFO = uintptr type TLPMMIOPROC = uintptr type TLPMMTIME = uintptr type TLPMODEMDEVCAPS = uintptr type TLPMODEMSETTINGS = uintptr type TLPMONIKER = uintptr type TLPMONIKERPROP = uintptr type TLPMONITORINFO = uintptr type TLPMONITORINFOEX = uintptr type TLPMONITORINFOEXA = uintptr type TLPMONITORINFOEXW = uintptr type TLPMONITOR_INFO_1 = uintptr type TLPMONITOR_INFO_1A = uintptr type TLPMONITOR_INFO_1W = uintptr type TLPMONITOR_INFO_2 = uintptr type TLPMONITOR_INFO_2A = uintptr type TLPMONITOR_INFO_2W = uintptr type TLPMOUSEHOOKSTRUCT = uintptr type TLPMOUSEHOOKSTRUCTEX = uintptr type TLPMOUSEINPUT = uintptr type TLPMOUSEKEYS = uintptr type TLPMOUSEMOVEPOINT = uintptr type TLPMSG = uintptr type TLPMSGBOXPARAMS = uintptr type TLPMSGBOXPARAMSA = uintptr type TLPMSGBOXPARAMSW = uintptr type TLPMSLLHOOKSTRUCT = uintptr type TLPMULTIKEYHELP = uintptr type TLPMULTIKEYHELPA = uintptr type TLPMULTIKEYHELPW = uintptr type TLPMULTIQI = uintptr type TLPNCCALCSIZE_PARAMS = uintptr type TLPNETCONNECTINFOSTRUCT = uintptr type TLPNETINFOSTRUCT = uintptr type TLPNETRESOURCE = uintptr type TLPNETRESOURCEA = uintptr type TLPNETRESOURCEW = uintptr type TLPNEWTEXTMETRIC = uintptr type TLPNEWTEXTMETRICA = uintptr type TLPNEWTEXTMETRICW = uintptr type TLPNLSVERSIONINFO = uintptr type TLPNLSVERSIONINFOEX = uintptr type TLPNMHDR = uintptr type TLPNONCLIENTMETRICS = uintptr type TLPNONCLIENTMETRICSA = uintptr type TLPNONCLIENTMETRICSW = uintptr type TLPNUMBERFMT = uintptr type TLPNUMBERFMTA = uintptr type TLPNUMBERFMTW = uintptr type TLPOBJECTDESCRIPTOR = uintptr type TLPOCNCHKPROC = uintptr type TLPOCNCONNPROCA = uintptr type TLPOCNCONNPROCW = uintptr type TLPOCNDSCPROC = uintptr type TLPOFNHOOKPROC = uintptr type TLPOFNOTIFY = uintptr type TLPOFNOTIFYA = uintptr type TLPOFNOTIFYEX = uintptr type TLPOFNOTIFYEXA = uintptr type TLPOFNOTIFYEXW = uintptr type TLPOFNOTIFYW = uintptr type TLPOFSTRUCT = uintptr type TLPOLEADVISEHOLDER = uintptr type TLPOLECACHE = uintptr type TLPOLECACHE2 = uintptr type TLPOLECACHECONTROL = uintptr type TLPOLECLIENTSITE = uintptr type TLPOLECONTAINER = uintptr type TLPOLEINPLACEACTIVEOBJECT = uintptr type TLPOLEINPLACEFRAME = uintptr type TLPOLEINPLACEFRAMEINFO = uintptr type TLPOLEINPLACEOBJECT = uintptr type TLPOLEINPLACESITE = uintptr type TLPOLEINPLACEUIWINDOW = uintptr type TLPOLEITEMCONTAINER = uintptr type TLPOLELINK = uintptr type TLPOLEMENUGROUPWIDTHS = uintptr type TLPOLEOBJECT = uintptr type TLPOLERENDER = uintptr type TLPOLESTR = uintptr type TLPOLESTREAM = uintptr type TLPOLESTREAMVTBL = uintptr type TLPOLEUPDATE = uintptr type TLPOLEVERB = uintptr type TLPOLEWINDOW = uintptr type TLPOPENCARDNAME = uintptr type TLPOPENCARDNAMEA = uintptr type TLPOPENCARDNAMEW = uintptr type TLPOPENCARDNAME_EX = uintptr type TLPOPENCARDNAME_EXA = uintptr type TLPOPENCARDNAME_EXW = uintptr type TLPOPENCARD_SEARCH_CRITERIA = uintptr type TLPOPENCARD_SEARCH_CRITERIAA = uintptr type TLPOPENCARD_SEARCH_CRITERIAW = uintptr type TLPOPENFILENAME = uintptr type TLPOPENFILENAMEA = uintptr type TLPOPENFILENAMEW = uintptr type TLPOPENFILENAME_NT4 = uintptr type TLPOPENFILENAME_NT4A = uintptr type TLPOPENFILENAME_NT4W = uintptr type TLPOSVERSIONINFO = uintptr type TLPOSVERSIONINFOA = uintptr type TLPOSVERSIONINFOEX = uintptr type TLPOSVERSIONINFOEXA = uintptr type TLPOSVERSIONINFOEXW = uintptr type TLPOSVERSIONINFOW = uintptr type TLPOUTLINETEXTMETRIC = uintptr type TLPOUTLINETEXTMETRICA = uintptr type TLPOUTLINETEXTMETRICW = uintptr type TLPOUTPUT_DEBUG_STRING_INFO = uintptr type TLPOVERLAPPED = uintptr type TLPOVERLAPPED_COMPLETION_ROUTINE = uintptr type TLPOVERLAPPED_ENTRY = uintptr type TLPPAGEPAINTHOOK = uintptr type TLPPAGESETUPDLG = uintptr type TLPPAGESETUPDLGA = uintptr type TLPPAGESETUPDLGW = uintptr type TLPPAGESETUPHOOK = uintptr type TLPPAINTSTRUCT = uintptr type TLPPALETTEENTRY = uintptr type TLPPANOSE = uintptr type TLPPARAMDATA = uintptr type TLPPARAMDESC = uintptr type TLPPARAMDESCEX = uintptr type TLPPARSEDISPLAYNAME = uintptr type TLPPATCHARRAY = uintptr type TLPPATTERN = uintptr type TLPPCMWAVEFORMAT = uintptr type TLPPELARRAY = uintptr type TLPPERSIST = uintptr type TLPPERSISTFILE = uintptr type TLPPERSISTMONIKER = uintptr type TLPPERSISTSTORAGE = uintptr type TLPPERSISTSTREAM = uintptr type TLPPIXELFORMATDESCRIPTOR = uintptr type TLPPOINT = uintptr type TLPPOINTFX = uintptr type TLPPOINTS = uintptr type TLPPOLYTEXT = uintptr type TLPPOLYTEXTA = uintptr type TLPPOLYTEXTW = uintptr type TLPPORT_INFO_1 = uintptr type TLPPORT_INFO_1A = uintptr type TLPPORT_INFO_1W = uintptr type TLPPORT_INFO_2 = uintptr type TLPPORT_INFO_2A = uintptr type TLPPORT_INFO_2W = uintptr type TLPPORT_INFO_3 = uintptr type TLPPORT_INFO_3A = uintptr type TLPPORT_INFO_3W = uintptr type TLPPOWER_REQUEST_CONTEXT = uintptr type TLPPRINTDLG = uintptr type TLPPRINTDLGA = uintptr type TLPPRINTDLGEX = uintptr type TLPPRINTDLGEXA = uintptr type TLPPRINTDLGEXW = uintptr type TLPPRINTDLGW = uintptr type TLPPRINTER_DEFAULTS = uintptr type TLPPRINTER_DEFAULTSA = uintptr type TLPPRINTER_DEFAULTSW = uintptr type TLPPRINTER_ENUM_VALUES = uintptr type TLPPRINTER_ENUM_VALUESA = uintptr type TLPPRINTER_ENUM_VALUESW = uintptr type TLPPRINTER_INFO_1 = uintptr type TLPPRINTER_INFO_1A = uintptr type TLPPRINTER_INFO_1W = uintptr type TLPPRINTER_INFO_2 = uintptr type TLPPRINTER_INFO_2A = uintptr type TLPPRINTER_INFO_2W = uintptr type TLPPRINTER_INFO_3 = uintptr type TLPPRINTER_INFO_4 = uintptr type TLPPRINTER_INFO_4A = uintptr type TLPPRINTER_INFO_4W = uintptr type TLPPRINTER_INFO_5 = uintptr type TLPPRINTER_INFO_5A = uintptr type TLPPRINTER_INFO_5W = uintptr type TLPPRINTER_INFO_6 = uintptr type TLPPRINTER_INFO_7 = uintptr type TLPPRINTER_INFO_7A = uintptr type TLPPRINTER_INFO_7W = uintptr type TLPPRINTER_INFO_8 = uintptr type TLPPRINTER_INFO_8A = uintptr type TLPPRINTER_INFO_8W = uintptr type TLPPRINTER_INFO_9 = uintptr type TLPPRINTER_INFO_9A = uintptr type TLPPRINTER_INFO_9W = uintptr type TLPPRINTER_NOTIFY_INFO = uintptr type TLPPRINTER_NOTIFY_INFO_DATA = uintptr type TLPPRINTER_NOTIFY_OPTIONS = uintptr type TLPPRINTER_NOTIFY_OPTIONS_TYPE = uintptr type TLPPRINTHOOKPROC = uintptr type TLPPRINTPAGERANGE = uintptr type TLPPRINTPROCESSOR_INFO_1 = uintptr type TLPPRINTPROCESSOR_INFO_1A = uintptr type TLPPRINTPROCESSOR_INFO_1W = uintptr type TLPPROCESS_HEAP_ENTRY = uintptr type TLPPROCESS_INFORMATION = uintptr type TLPPROC_THREAD_ATTRIBUTE_LIST = uintptr type TLPPROGRESS_ROUTINE = uintptr type TLPPROPERTYBAG = uintptr type TLPPROPERTYSETSTORAGE = uintptr type TLPPROPERTYSTORAGE = uintptr type TLPPROPSHEETHEADERA = uintptr type TLPPROPSHEETHEADERW = uintptr type TLPPROPSHEETPAGEA = uintptr type TLPPROPSHEETPAGEA_LATEST = uintptr type TLPPROPSHEETPAGEA_V1 = uintptr type TLPPROPSHEETPAGEA_V2 = uintptr type TLPPROPSHEETPAGEA_V3 = uintptr type TLPPROPSHEETPAGEW = uintptr type TLPPROPSHEETPAGEW_LATEST = uintptr type TLPPROPSHEETPAGEW_V1 = uintptr type TLPPROPSHEETPAGEW_V2 = uintptr type TLPPROPSHEETPAGEW_V3 = uintptr type TLPPROPVARIANT = uintptr type TLPPROTOCOL_ARGUMENT = uintptr type TLPPROTOENT = uintptr type TLPPROVIDOR_INFO_1 = uintptr type TLPPROVIDOR_INFO_1A = uintptr type TLPPROVIDOR_INFO_1W = uintptr type TLPPROVIDOR_INFO_2 = uintptr type TLPPROVIDOR_INFO_2A = uintptr type TLPPROVIDOR_INFO_2W = uintptr type TLPPSHNOTIFY = uintptr type TLPQUERY_SERVICE_CONFIG = uintptr type TLPQUERY_SERVICE_CONFIGA = uintptr type TLPQUERY_SERVICE_CONFIGW = uintptr type TLPQUERY_SERVICE_LOCK_STATUS = uintptr type TLPQUERY_SERVICE_LOCK_STATUSA = uintptr type TLPQUERY_SERVICE_LOCK_STATUSW = uintptr type TLPRASTERIZER_STATUS = uintptr type TLPRAWHID = uintptr type TLPRAWINPUT = uintptr type TLPRAWINPUTDEVICE = uintptr type TLPRAWINPUTHEADER = uintptr type TLPRAWKEYBOARD = uintptr type TLPRAWMOUSE = uintptr type TLPRECONVERTSTRING = uintptr type TLPRECORDINFO = uintptr type TLPRECT = uintptr type TLPRECTL = uintptr type TLPREGISTERWORD = uintptr type TLPREGISTERWORDA = uintptr type TLPREGISTERWORDW = uintptr type TLPREMFORMATETC = uintptr type TLPREMOTE_NAME_INFO = uintptr type TLPREMOTE_NAME_INFOA = uintptr type TLPREMOTE_NAME_INFOW = uintptr type TLPREMSECURITY_ATTRIBUTES = uintptr type TLPRGBQUAD = uintptr type TLPRGBTRIPLE = uintptr type TLPRGNDATA = uintptr type TLPRID_DEVICE_INFO = uintptr type TLPRIP_INFO = uintptr type TLPROOTSTORAGE = uintptr type TLPRUNNABLEOBJECT = uintptr type TLPRUNNINGOBJECTTABLE = uintptr type TLPSAFEARRAY = uintptr type TLPSAFEARRAYBOUND = uintptr type TLPSCARDCONTEXT = uintptr type TLPSCARDHANDLE = uintptr type TLPSCARD_ATRMASK = uintptr type TLPSCARD_IO_REQUEST = uintptr type TLPSCARD_READERSTATE = uintptr type TLPSCARD_READERSTATEA = uintptr type TLPSCARD_READERSTATEW = uintptr type TLPSCARD_T0_COMMAND = uintptr type TLPSCARD_T0_REQUEST = uintptr type TLPSCARD_T1_REQUEST = uintptr type TLPSCROLLBARINFO = uintptr type TLPSCROLLINFO = uintptr type TLPSC_ACTION = uintptr type TLPSC_HANDLE = uintptr type TLPSECURITY_ATTRIBUTES = uintptr type TLPSECURITY_CAPABILITIES = uintptr type TLPSENDCMDINPARAMS = uintptr type TLPSENDCMDOUTPARAMS = uintptr type TLPSERIALKEYS = uintptr type TLPSERIALKEYSA = uintptr type TLPSERIALKEYSW = uintptr type TLPSERVENT = uintptr type TLPSERVICEPROVIDER = uintptr type TLPSERVICE_DELAYED_AUTO_START_INFO = uintptr type TLPSERVICE_DESCRIPTION = uintptr type TLPSERVICE_DESCRIPTIONA = uintptr type TLPSERVICE_DESCRIPTIONW = uintptr type TLPSERVICE_FAILURE_ACTIONS = uintptr type TLPSERVICE_FAILURE_ACTIONSA = uintptr type TLPSERVICE_FAILURE_ACTIONSW = uintptr type TLPSERVICE_FAILURE_ACTIONS_FLAG = uintptr type TLPSERVICE_MAIN_FUNCTIONA = uintptr type TLPSERVICE_MAIN_FUNCTIONW = uintptr type TLPSERVICE_PRESHUTDOWN_INFO = uintptr type TLPSERVICE_REQUIRED_PRIVILEGES_INFOA = uintptr type TLPSERVICE_REQUIRED_PRIVILEGES_INFOW = uintptr type TLPSERVICE_SID_INFO = uintptr type TLPSERVICE_STATUS = uintptr type TLPSERVICE_STATUS_PROCESS = uintptr type TLPSERVICE_TABLE_ENTRY = uintptr type TLPSERVICE_TABLE_ENTRYA = uintptr type TLPSERVICE_TABLE_ENTRYW = uintptr type TLPSETUPHOOKPROC = uintptr type TLPSHELLEXECUTEINFO = uintptr type TLPSHELLEXECUTEINFOA = uintptr type TLPSHELLEXECUTEINFOW = uintptr type TLPSHELLHOOKINFO = uintptr type TLPSHFILEOPSTRUCT = uintptr type TLPSHFILEOPSTRUCTA = uintptr type TLPSHFILEOPSTRUCTW = uintptr type TLPSHNAMEMAPPING = uintptr type TLPSHNAMEMAPPINGA = uintptr type TLPSHNAMEMAPPINGW = uintptr type TLPSHQUERYRBINFO = uintptr type TLPSIZE = uintptr type TLPSIZEL = uintptr type TLPSOCKADDR = uintptr type TLPSOCKADDR_IN = uintptr type TLPSOFTDISTINFO = uintptr type TLPSOUNDSENTRY = uintptr type TLPSOUNDSENTRYA = uintptr type TLPSOUNDSENTRYW = uintptr type TLPSTARTUPINFO = uintptr type TLPSTARTUPINFOA = uintptr type TLPSTARTUPINFOEX = uintptr type TLPSTARTUPINFOEXA = uintptr type TLPSTARTUPINFOEXW = uintptr type TLPSTARTUPINFOW = uintptr type TLPSTATDATA = uintptr type TLPSTDMARSHALINFO = uintptr type TLPSTGMEDIUM = uintptr type TLPSTICKYKEYS = uintptr type TLPSTORAGE = uintptr type TLPSTR = uintptr type TLPSTREAM = uintptr type TLPSTYLEBUF = uintptr type TLPSTYLEBUFA = uintptr type TLPSTYLEBUFW = uintptr type TLPSTYLESTRUCT = uintptr type TLPSUPPORTERRORINFO = uintptr type TLPSURROGATE = uintptr type TLPSYNCHRONIZATION_BARRIER = uintptr type TLPSYSTEMTIME = uintptr type TLPSYSTEM_INFO = uintptr type TLPSYSTEM_POWER_STATUS = uintptr type TLPTCH = uintptr type TLPTEXTMETRIC = uintptr type TLPTEXTMETRICA = uintptr type TLPTEXTMETRICW = uintptr type TLPTHREAD_START_ROUTINE = uintptr type TLPTIMECALLBACK = uintptr type TLPTIMECAPS = uintptr type TLPTIMEVAL = uintptr type TLPTIME_ZONE_INFORMATION = uintptr type TLPTITLEBARINFO = uintptr type TLPTITLEBARINFOEX = uintptr type TLPTLIBATTR = uintptr type TLPTOGGLEKEYS = uintptr type TLPTOP_LEVEL_EXCEPTION_FILTER = uintptr type TLPTPMPARAMS = uintptr type TLPTRACKMOUSEEVENT = uintptr type TLPTRANSMIT_FILE_BUFFERS = uintptr type TLPTRIVERTEX = uintptr type TLPTSTR = uintptr type TLPTTPOLYCURVE = uintptr type TLPTTPOLYGONHEADER = uintptr type TLPTYPEATTR = uintptr type TLPTYPECHANGEEVENTS = uintptr type TLPTYPECOMP = uintptr type TLPTYPEINFO = uintptr type TLPTYPEINFO2 = uintptr type TLPTYPELIB = uintptr type TLPTYPELIB2 = uintptr type TLPUINT = uintptr type TLPUNIVERSAL_NAME_INFO = uintptr type TLPUNIVERSAL_NAME_INFOA = uintptr type TLPUNIVERSAL_NAME_INFOW = uintptr type TLPUNKNOWN = uintptr type TLPUNLOAD_DLL_DEBUG_INFO = uintptr type TLPURLZONEMANAGER = uintptr type TLPUTSTR = uintptr type TLPUWSTR = uintptr type TLPVARDESC = uintptr type TLPVARIANT = uintptr type TLPVARIANTARG = uintptr type TLPVERSIONEDSTREAM = uintptr type TLPVIDEOPARAMETERS = uintptr type TLPVIEWOBJECT = uintptr type TLPVIEWOBJECT2 = uintptr type TLPVOID = uintptr type TLPWAVECALLBACK = uintptr type TLPWAVEFORMAT = uintptr type TLPWAVEFORMATEX = uintptr type TLPWAVEHDR = uintptr type TLPWAVEINCAPS = uintptr type TLPWAVEINCAPS2 = uintptr type TLPWAVEINCAPS2A = uintptr type TLPWAVEINCAPS2W = uintptr type TLPWAVEINCAPSA = uintptr type TLPWAVEINCAPSW = uintptr type TLPWAVEOUTCAPS = uintptr type TLPWAVEOUTCAPS2 = uintptr type TLPWAVEOUTCAPS2A = uintptr type TLPWAVEOUTCAPS2W = uintptr type TLPWAVEOUTCAPSA = uintptr type TLPWAVEOUTCAPSW = uintptr type TLPWCH = uintptr type TLPWCRANGE = uintptr type TLPWGLSWAP = uintptr type TLPWIN32_FILE_ATTRIBUTE_DATA = uintptr type TLPWIN32_FIND_DATA = uintptr type TLPWIN32_FIND_DATAA = uintptr type TLPWIN32_FIND_DATAW = uintptr type TLPWIN32_STREAM_ID = uintptr type TLPWINDOWFORBINDINGUI = uintptr type TLPWINDOWINFO = uintptr type TLPWINDOWPLACEMENT = uintptr type TLPWINDOWPOS = uintptr type TLPWININETCACHEHINTS = uintptr type TLPWININETCACHEHINTS2 = uintptr type TLPWININETFILESTREAM = uintptr type TLPWININETHTTPINFO = uintptr type TLPWININETINFO = uintptr type TLPWNDCLASS = uintptr type TLPWNDCLASSA = uintptr type TLPWNDCLASSEX = uintptr type TLPWNDCLASSEXA = uintptr type TLPWNDCLASSEXW = uintptr type TLPWNDCLASSW = uintptr type TLPWORD = uintptr type TLPWSADATA = uintptr type TLPWSTR = uintptr type TLPXFORM = uintptr type TLPZONEATTRIBUTES = uintptr type TLSTATUS = int32 const TLS_MINIMUM_AVAILABLE = 64 type TLUID = struct { FLowPart TDWORD FHighPart TLONG } type TLUID_AND_ATTRIBUTES = struct { FLuid TLUID FAttributes TDWORD } type TLUID_AND_ATTRIBUTES_ARRAY = [1]TLUID_AND_ATTRIBUTES type TMACHINE_ATTRIBUTES = int32 type TMALLOC_FREE_STRUCT = struct { FpfnAllocate uintptr FpfnFree uintptr } type TMANDATORY_LEVEL = int32 type TMARK_HANDLE_INFO = struct { FUsnSourceInfo TDWORD FVolumeHandle THANDLE FHandleInfo TDWORD } type TMAT2 = struct { FeM11 TFIXED FeM12 TFIXED FeM21 TFIXED FeM22 TFIXED } type TMCIDEVICEID = uint32 type TMCIERROR = uint32 type TMCI_ANIM_OPEN_PARMS = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCSTR FlpstrElementName TLPCSTR FlpstrAlias TLPCSTR FdwStyle TDWORD FhWndParent THWND } type TMCI_ANIM_OPEN_PARMSA = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCSTR FlpstrElementName TLPCSTR FlpstrAlias TLPCSTR FdwStyle TDWORD FhWndParent THWND } type TMCI_ANIM_OPEN_PARMSW = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCWSTR FlpstrElementName TLPCWSTR FlpstrAlias TLPCWSTR FdwStyle TDWORD FhWndParent THWND } type TMCI_ANIM_PLAY_PARMS = struct { FdwCallback TDWORD_PTR FdwFrom TDWORD FdwTo TDWORD FdwSpeed TDWORD } type TMCI_ANIM_RECT_PARMS = struct { FdwCallback TDWORD_PTR Frc TRECT } type TMCI_ANIM_STEP_PARMS = struct { FdwCallback TDWORD_PTR FdwFrames TDWORD } type TMCI_ANIM_UPDATE_PARMS = struct { FdwCallback TDWORD_PTR Frc TRECT FhDC THDC } type TMCI_ANIM_WINDOW_PARMS = struct { FdwCallback TDWORD_PTR FhWnd THWND FnCmdShow TUINT FlpstrText TLPCSTR } type TMCI_ANIM_WINDOW_PARMSA = struct { FdwCallback TDWORD_PTR FhWnd THWND FnCmdShow TUINT FlpstrText TLPCSTR } type TMCI_ANIM_WINDOW_PARMSW = struct { FdwCallback TDWORD_PTR FhWnd THWND FnCmdShow TUINT FlpstrText TLPCWSTR } type TMCI_BREAK_PARMS = struct { FdwCallback TDWORD_PTR FnVirtKey int32 FhwndBreak THWND } type TMCI_GENERIC_PARMS = struct { FdwCallback TDWORD_PTR } type TMCI_GETDEVCAPS_PARMS = struct { FdwCallback TDWORD_PTR FdwReturn TDWORD FdwItem TDWORD } type TMCI_INFO_PARMS = struct { FdwCallback TDWORD_PTR FlpstrReturn TLPSTR FdwRetSize TDWORD } type TMCI_INFO_PARMSA = struct { FdwCallback TDWORD_PTR FlpstrReturn TLPSTR FdwRetSize TDWORD } type TMCI_INFO_PARMSW = struct { FdwCallback TDWORD_PTR FlpstrReturn TLPWSTR FdwRetSize TDWORD } type TMCI_LOAD_PARMS = struct { FdwCallback TDWORD_PTR Flpfilename TLPCSTR } type TMCI_LOAD_PARMSA = struct { FdwCallback TDWORD_PTR Flpfilename TLPCSTR } type TMCI_LOAD_PARMSW = struct { FdwCallback TDWORD_PTR Flpfilename TLPCWSTR } type TMCI_OPEN_PARMS = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCSTR FlpstrElementName TLPCSTR FlpstrAlias TLPCSTR } type TMCI_OPEN_PARMSA = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCSTR FlpstrElementName TLPCSTR FlpstrAlias TLPCSTR } type TMCI_OPEN_PARMSW = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCWSTR FlpstrElementName TLPCWSTR FlpstrAlias TLPCWSTR } type TMCI_OVLY_LOAD_PARMS = struct { FdwCallback TDWORD_PTR Flpfilename TLPCSTR Frc TRECT } type TMCI_OVLY_LOAD_PARMSA = struct { FdwCallback TDWORD_PTR Flpfilename TLPCSTR Frc TRECT } type TMCI_OVLY_LOAD_PARMSW = struct { FdwCallback TDWORD_PTR Flpfilename TLPCWSTR Frc TRECT } type TMCI_OVLY_OPEN_PARMS = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCSTR FlpstrElementName TLPCSTR FlpstrAlias TLPCSTR FdwStyle TDWORD FhWndParent THWND } type TMCI_OVLY_OPEN_PARMSA = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCSTR FlpstrElementName TLPCSTR FlpstrAlias TLPCSTR FdwStyle TDWORD FhWndParent THWND } type TMCI_OVLY_OPEN_PARMSW = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCWSTR FlpstrElementName TLPCWSTR FlpstrAlias TLPCWSTR FdwStyle TDWORD FhWndParent THWND } type TMCI_OVLY_RECT_PARMS = struct { FdwCallback TDWORD_PTR Frc TRECT } type TMCI_OVLY_SAVE_PARMS = struct { FdwCallback TDWORD_PTR Flpfilename TLPCSTR Frc TRECT } type TMCI_OVLY_SAVE_PARMSA = struct { FdwCallback TDWORD_PTR Flpfilename TLPCSTR Frc TRECT } type TMCI_OVLY_SAVE_PARMSW = struct { FdwCallback TDWORD_PTR Flpfilename TLPCWSTR Frc TRECT } type TMCI_OVLY_WINDOW_PARMS = struct { FdwCallback TDWORD_PTR FhWnd THWND FnCmdShow TUINT FlpstrText TLPCSTR } type TMCI_OVLY_WINDOW_PARMSA = struct { FdwCallback TDWORD_PTR FhWnd THWND FnCmdShow TUINT FlpstrText TLPCSTR } type TMCI_OVLY_WINDOW_PARMSW = struct { FdwCallback TDWORD_PTR FhWnd THWND FnCmdShow TUINT FlpstrText TLPCWSTR } type TMCI_PLAY_PARMS = struct { FdwCallback TDWORD_PTR FdwFrom TDWORD FdwTo TDWORD } type TMCI_RECORD_PARMS = struct { FdwCallback TDWORD_PTR FdwFrom TDWORD FdwTo TDWORD } type TMCI_SAVE_PARMS = struct { FdwCallback TDWORD_PTR Flpfilename TLPCSTR } type TMCI_SAVE_PARMSA = struct { FdwCallback TDWORD_PTR Flpfilename TLPCSTR } type TMCI_SAVE_PARMSW = struct { FdwCallback TDWORD_PTR Flpfilename TLPCWSTR } type TMCI_SEEK_PARMS = struct { FdwCallback TDWORD_PTR FdwTo TDWORD } type TMCI_SEQ_SET_PARMS = struct { FdwCallback TDWORD_PTR FdwTimeFormat TDWORD FdwAudio TDWORD FdwTempo TDWORD FdwPort TDWORD FdwSlave TDWORD FdwMaster TDWORD FdwOffset TDWORD } type TMCI_SET_PARMS = struct { FdwCallback TDWORD_PTR FdwTimeFormat TDWORD FdwAudio TDWORD } type TMCI_STATUS_PARMS = struct { FdwCallback TDWORD_PTR FdwReturn TDWORD_PTR FdwItem TDWORD FdwTrack TDWORD } type TMCI_SYSINFO_PARMS = struct { FdwCallback TDWORD_PTR FlpstrReturn TLPSTR FdwRetSize TDWORD FdwNumber TDWORD FwDeviceType TUINT } type TMCI_SYSINFO_PARMSA = struct { FdwCallback TDWORD_PTR FlpstrReturn TLPSTR FdwRetSize TDWORD FdwNumber TDWORD FwDeviceType TUINT } type TMCI_SYSINFO_PARMSW = struct { FdwCallback TDWORD_PTR FlpstrReturn TLPWSTR FdwRetSize TDWORD FdwNumber TDWORD FwDeviceType TUINT } type TMCI_VD_ESCAPE_PARMS = struct { FdwCallback TDWORD_PTR FlpstrCommand TLPCSTR } type TMCI_VD_ESCAPE_PARMSA = struct { FdwCallback TDWORD_PTR FlpstrCommand TLPCSTR } type TMCI_VD_ESCAPE_PARMSW = struct { FdwCallback TDWORD_PTR FlpstrCommand TLPCWSTR } type TMCI_VD_PLAY_PARMS = struct { FdwCallback TDWORD_PTR FdwFrom TDWORD FdwTo TDWORD FdwSpeed TDWORD } type TMCI_VD_STEP_PARMS = struct { FdwCallback TDWORD_PTR FdwFrames TDWORD } type TMCI_WAVE_DELETE_PARMS = struct { FdwCallback TDWORD_PTR FdwFrom TDWORD FdwTo TDWORD } type TMCI_WAVE_OPEN_PARMS = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCSTR FlpstrElementName TLPCSTR FlpstrAlias TLPCSTR FdwBufferSeconds TDWORD } type TMCI_WAVE_OPEN_PARMSA = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCSTR FlpstrElementName TLPCSTR FlpstrAlias TLPCSTR FdwBufferSeconds TDWORD } type TMCI_WAVE_OPEN_PARMSW = struct { FdwCallback TDWORD_PTR FwDeviceID TMCIDEVICEID FlpstrDeviceType TLPCWSTR FlpstrElementName TLPCWSTR FlpstrAlias TLPCWSTR FdwBufferSeconds TDWORD } type TMCI_WAVE_SET_PARMS = struct { FdwCallback TDWORD_PTR FdwTimeFormat TDWORD FdwAudio TDWORD FwInput TUINT FwOutput TUINT FwFormatTag TWORD FwReserved2 TWORD FnChannels TWORD FwReserved3 TWORD FnSamplesPerSec TDWORD FnAvgBytesPerSec TDWORD FnBlockAlign TWORD FwReserved4 TWORD FwBitsPerSample TWORD FwReserved5 TWORD } type TMDICREATESTRUCT = struct { FszClass TLPCSTR FszTitle TLPCSTR FhOwner THANDLE Fx int32 Fy int32 Fcx int32 Fcy int32 Fstyle TDWORD FlParam TLPARAM } type TMDICREATESTRUCTA = struct { FszClass TLPCSTR FszTitle TLPCSTR FhOwner THANDLE Fx int32 Fy int32 Fcx int32 Fcy int32 Fstyle TDWORD FlParam TLPARAM } type TMDICREATESTRUCTW = struct { FszClass TLPCWSTR FszTitle TLPCWSTR FhOwner THANDLE Fx int32 Fy int32 Fcx int32 Fcy int32 Fstyle TDWORD FlParam TLPARAM } type TMDINEXTMENU = struct { FhmenuIn THMENU FhmenuNext THMENU FhwndNext THWND } type TMEASUREITEMSTRUCT = struct { FCtlType TUINT FCtlID TUINT FitemID TUINT FitemWidth TUINT FitemHeight TUINT FitemData TULONG_PTR } type TMEDIA_TYPE = int32 type TMEMBERID = int32 type TMEMCTX = int32 type TMEMORYSTATUS = struct { FdwLength TDWORD FdwMemoryLoad TDWORD FdwTotalPhys TSIZE_T FdwAvailPhys TSIZE_T FdwTotalPageFile TSIZE_T FdwAvailPageFile TSIZE_T FdwTotalVirtual TSIZE_T FdwAvailVirtual TSIZE_T } type TMEMORY_BASIC_INFORMATION = struct { FBaseAddress TPVOID FAllocationBase TPVOID FAllocationProtect TDWORD FRegionSize TSIZE_T FState TDWORD FProtect TDWORD FType TDWORD } type TMEMORY_BASIC_INFORMATION32 = struct { FBaseAddress TDWORD FAllocationBase TDWORD FAllocationProtect TDWORD FRegionSize TDWORD FState TDWORD FProtect TDWORD FType TDWORD } type TMEMORY_PRIORITY_INFORMATION = struct { FMemoryPriority TULONG } type TMEMORY_RESOURCE_NOTIFICATION_TYPE = int32 type TMEM_ADDRESS_REQUIREMENTS = struct { FLowestStartingAddress TPVOID FHighestEndingAddress TPVOID FAlignment TSIZE_T } type TMEM_EXTENDED_PARAMETER_TYPE = int32 type TMEM_SECTION_EXTENDED_PARAMETER_TYPE = int32 type TMENUGETOBJECTINFO = struct { FdwFlags TDWORD FuPos TUINT Fhmenu THMENU Friid TPVOID FpvObj TPVOID } type TMENUINFO = struct { FcbSize TDWORD FfMask TDWORD FdwStyle TDWORD FcyMax TUINT FhbrBack THBRUSH FdwContextHelpID TDWORD FdwMenuData TULONG_PTR } type TMENUITEMINFO = struct { FcbSize TUINT FfMask TUINT FfType TUINT FfState TUINT FwID TUINT FhSubMenu THMENU FhbmpChecked THBITMAP FhbmpUnchecked THBITMAP FdwItemData TULONG_PTR FdwTypeData TLPSTR Fcch TUINT FhbmpItem THBITMAP } type TMENUITEMINFOA = struct { FcbSize TUINT FfMask TUINT FfType TUINT FfState TUINT FwID TUINT FhSubMenu THMENU FhbmpChecked THBITMAP FhbmpUnchecked THBITMAP FdwItemData TULONG_PTR FdwTypeData TLPSTR Fcch TUINT FhbmpItem THBITMAP } type TMENUITEMINFOW = struct { FcbSize TUINT FfMask TUINT FfType TUINT FfState TUINT FwID TUINT FhSubMenu THMENU FhbmpChecked THBITMAP FhbmpUnchecked THBITMAP FdwItemData TULONG_PTR FdwTypeData TLPWSTR Fcch TUINT FhbmpItem THBITMAP } type TMENUITEMTEMPLATE = struct { FmtOption TWORD FmtID TWORD FmtString [1]TWCHAR } type TMENUITEMTEMPLATEHEADER = struct { FversionNumber TWORD Foffset TWORD } type TMENUTEMPLATE = struct{} type TMENUTEMPLATEA = struct{} type TMENUTEMPLATEW = struct{} type TMENU_EVENT_RECORD = struct { FdwCommandId TUINT } type TMERGE_VIRTUAL_DISK_FLAG = int32 type TMERGE_VIRTUAL_DISK_PARAMETERS = struct { FVersion TMERGE_VIRTUAL_DISK_VERSION F__ccgo1_4 struct { FVersion2 [0]struct { FMergeSourceDepth TULONG FMergeTargetDepth TULONG } FVersion1 struct { FMergeDepth TULONG } F__ccgo_pad2 [4]byte } } type TMERGE_VIRTUAL_DISK_VERSION = int32 type TMESSAGE_RESOURCE_BLOCK = struct { FLowId TDWORD FHighId TDWORD FOffsetToEntries TDWORD } type TMESSAGE_RESOURCE_DATA = struct { FNumberOfBlocks TDWORD FBlocks [1]TMESSAGE_RESOURCE_BLOCK } type TMESSAGE_RESOURCE_ENTRY = struct { FLength TWORD FFlags TWORD FText [1]TBYTE } type TMETAFILEPICT = struct { Fmm TLONG FxExt TLONG FyExt TLONG FhMF THMETAFILE } type TMETAHEADER = struct { FmtType TWORD FmtHeaderSize TWORD FmtVersion TWORD FmtSize TDWORD FmtNoObjects TWORD FmtMaxRecord TDWORD FmtNoParameters TWORD } type TMETARECORD = struct { FrdSize TDWORD FrdFunction TWORD FrdParm [1]TWORD } type TMETHODDATA = struct { FszName uintptr Fppdata uintptr Fdispid TDISPID FiMeth TUINT Fcc TCALLCONV FcArgs TUINT FwFlags TWORD FvtReturn TVARTYPE } const TME_CANCEL = 2147483648 const TME_HOVER = 1 const TME_LEAVE = 2 const TME_NONCLIENT = 16 const TME_QUERY = 1073741824 type TMFENUMPROC = uintptr type TMIDIEVENT = struct { FdwDeltaTime TDWORD FdwStreamID TDWORD FdwEvent TDWORD FdwParms [1]TDWORD } type TMIDIHDR = struct { FlpData TLPSTR FdwBufferLength TDWORD FdwBytesRecorded TDWORD FdwUser TDWORD_PTR FdwFlags TDWORD FlpNext uintptr Freserved TDWORD_PTR FdwOffset TDWORD FdwReserved [8]TDWORD_PTR } type TMIDIINCAPS = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwSupport TDWORD } type TMIDIINCAPS2 = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIDIINCAPS2A = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIDIINCAPS2W = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIDIINCAPSA = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwSupport TDWORD } type TMIDIINCAPSW = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FdwSupport TDWORD } type TMIDIOUTCAPS = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FwTechnology TWORD FwVoices TWORD FwNotes TWORD FwChannelMask TWORD FdwSupport TDWORD } type TMIDIOUTCAPS2 = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FwTechnology TWORD FwVoices TWORD FwNotes TWORD FwChannelMask TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIDIOUTCAPS2A = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FwTechnology TWORD FwVoices TWORD FwNotes TWORD FwChannelMask TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIDIOUTCAPS2W = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FwTechnology TWORD FwVoices TWORD FwNotes TWORD FwChannelMask TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIDIOUTCAPSA = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FwTechnology TWORD FwVoices TWORD FwNotes TWORD FwChannelMask TWORD FdwSupport TDWORD } type TMIDIOUTCAPSW = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FwTechnology TWORD FwVoices TWORD FwNotes TWORD FwChannelMask TWORD FdwSupport TDWORD } type TMIDIPROPTEMPO = struct { FcbStruct TDWORD FdwTempo TDWORD } type TMIDIPROPTIMEDIV = struct { FcbStruct TDWORD FdwTimeDiv TDWORD } type TMIDISTRMBUFFVER = struct { FdwVersion TDWORD FdwMid TDWORD FdwOEMVersion TDWORD } type TMIDL_FORMAT_STRING = struct { FPad int16 } type TMIDL_SERVER_INFO = struct { FpStubDesc TPMIDL_STUB_DESC FDispatchTable uintptr FProcString TPFORMAT_STRING FFmtStringOffset uintptr FThunkTable uintptr FpTransferSyntax TPRPC_SYNTAX_IDENTIFIER FnCount TULONG_PTR FpSyntaxInfo TPMIDL_SYNTAX_INFO } type TMIDL_STUBLESS_PROXY_INFO = struct { FpStubDesc TPMIDL_STUB_DESC FProcFormatString TPFORMAT_STRING FFormatStringOffset uintptr FpTransferSyntax TPRPC_SYNTAX_IDENTIFIER FnCount TULONG_PTR FpSyntaxInfo TPMIDL_SYNTAX_INFO } type TMIDL_STUB_DESC = struct { FRpcInterfaceInformation uintptr FpfnAllocate uintptr FpfnFree uintptr FIMPLICIT_HANDLE_INFO struct { FpPrimitiveHandle [0]uintptr FpGenericBindingInfo [0]TPGENERIC_BINDING_INFO FpAutoHandle uintptr } FapfnNdrRundownRoutines uintptr FaGenericBindingRoutinePairs uintptr FapfnExprEval uintptr FaXmitQuintuple uintptr FpFormatTypes uintptr FfCheckBounds int32 FVersion uint32 FpMallocFreeStruct uintptr FMIDLVersion int32 FCommFaultOffsets uintptr FaUserMarshalQuadruple uintptr FNotifyRoutineTable uintptr FmFlags TULONG_PTR FCsRoutineTables uintptr FReserved4 uintptr FReserved5 TULONG_PTR } type TMIDL_SYNTAX_INFO = struct { FTransferSyntax TRPC_SYNTAX_IDENTIFIER FDispatchTable uintptr FProcString TPFORMAT_STRING FFmtStringOffset uintptr FTypeString TPFORMAT_STRING FaUserMarshalQuadruple uintptr FpReserved1 TULONG_PTR FpReserved2 TULONG_PTR } type TMINIMIZEDMETRICS = struct { FcbSize TUINT FiWidth int32 FiHorzGap int32 FiVertGap int32 FiArrange int32 } type TMINMAXINFO = struct { FptReserved TPOINT FptMaxSize TPOINT FptMaxPosition TPOINT FptMinTrackSize TPOINT FptMaxTrackSize TPOINT } type TMIRROR_VIRTUAL_DISK_FLAG = int32 type TMIRROR_VIRTUAL_DISK_VERSION = int32 type TMIXERCAPS = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FfdwSupport TDWORD FcDestinations TDWORD } type TMIXERCAPS2 = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FfdwSupport TDWORD FcDestinations TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIXERCAPS2A = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FfdwSupport TDWORD FcDestinations TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIXERCAPS2W = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FfdwSupport TDWORD FcDestinations TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TMIXERCAPSA = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FfdwSupport TDWORD FcDestinations TDWORD } type TMIXERCAPSW = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FfdwSupport TDWORD FcDestinations TDWORD } type TMIXERCONTROL = struct { FcbStruct TDWORD FdwControlID TDWORD FdwControlType TDWORD FfdwControl TDWORD FcMultipleItems TDWORD FszShortName [16]TCHAR FszName [64]TCHAR FBounds struct { F__ccgo1_0 [0]struct { FdwMinimum TDWORD FdwMaximum TDWORD } FdwReserved [0][6]TDWORD F__ccgo0_0 struct { FlMinimum TLONG FlMaximum TLONG } F__ccgo_pad3 [16]byte } FMetrics struct { FcbCustomData [0]TDWORD FdwReserved [0][6]TDWORD FcSteps TDWORD F__ccgo_pad3 [20]byte } } type TMIXERCONTROLA = struct { FcbStruct TDWORD FdwControlID TDWORD FdwControlType TDWORD FfdwControl TDWORD FcMultipleItems TDWORD FszShortName [16]TCHAR FszName [64]TCHAR FBounds struct { F__ccgo1_0 [0]struct { FdwMinimum TDWORD FdwMaximum TDWORD } FdwReserved [0][6]TDWORD F__ccgo0_0 struct { FlMinimum TLONG FlMaximum TLONG } F__ccgo_pad3 [16]byte } FMetrics struct { FcbCustomData [0]TDWORD FdwReserved [0][6]TDWORD FcSteps TDWORD F__ccgo_pad3 [20]byte } } type TMIXERCONTROLDETAILS_BOOLEAN = struct { FfValue TLONG } type TMIXERCONTROLDETAILS_LISTTEXT = struct { FdwParam1 TDWORD FdwParam2 TDWORD FszName [64]TCHAR } type TMIXERCONTROLDETAILS_LISTTEXTA = struct { FdwParam1 TDWORD FdwParam2 TDWORD FszName [64]TCHAR } type TMIXERCONTROLDETAILS_LISTTEXTW = struct { FdwParam1 TDWORD FdwParam2 TDWORD FszName [64]TWCHAR } type TMIXERCONTROLDETAILS_SIGNED = struct { FlValue TLONG } type TMIXERCONTROLDETAILS_UNSIGNED = struct { FdwValue TDWORD } type TMIXERCONTROLW = struct { FcbStruct TDWORD FdwControlID TDWORD FdwControlType TDWORD FfdwControl TDWORD FcMultipleItems TDWORD FszShortName [16]TWCHAR FszName [64]TWCHAR FBounds struct { F__ccgo1_0 [0]struct { FdwMinimum TDWORD FdwMaximum TDWORD } FdwReserved [0][6]TDWORD F__ccgo0_0 struct { FlMinimum TLONG FlMaximum TLONG } F__ccgo_pad3 [16]byte } FMetrics struct { FcbCustomData [0]TDWORD FdwReserved [0][6]TDWORD FcSteps TDWORD F__ccgo_pad3 [20]byte } } type TMIXERLINE = struct { FcbStruct TDWORD FdwDestination TDWORD FdwSource TDWORD FdwLineID TDWORD FfdwLine TDWORD FdwUser TDWORD_PTR FdwComponentType TDWORD FcChannels TDWORD FcConnections TDWORD FcControls TDWORD FszShortName [16]TCHAR FszName [64]TCHAR FTarget struct { FdwType TDWORD FdwDeviceID TDWORD FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR } } type TMIXERLINEA = struct { FcbStruct TDWORD FdwDestination TDWORD FdwSource TDWORD FdwLineID TDWORD FfdwLine TDWORD FdwUser TDWORD_PTR FdwComponentType TDWORD FcChannels TDWORD FcConnections TDWORD FcControls TDWORD FszShortName [16]TCHAR FszName [64]TCHAR FTarget struct { FdwType TDWORD FdwDeviceID TDWORD FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR } } type TMIXERLINECONTROLS = struct { FcbStruct TDWORD FdwLineID TDWORD F__ccgo2_8 struct { FdwControlType [0]TDWORD FdwControlID TDWORD } FcControls TDWORD Fcbmxctrl TDWORD Fpamxctrl TLPMIXERCONTROLA } type TMIXERLINECONTROLSA = struct { FcbStruct TDWORD FdwLineID TDWORD F__ccgo2_8 struct { FdwControlType [0]TDWORD FdwControlID TDWORD } FcControls TDWORD Fcbmxctrl TDWORD Fpamxctrl TLPMIXERCONTROLA } type TMIXERLINECONTROLSW = struct { FcbStruct TDWORD FdwLineID TDWORD F__ccgo2_8 struct { FdwControlType [0]TDWORD FdwControlID TDWORD } FcControls TDWORD Fcbmxctrl TDWORD Fpamxctrl TLPMIXERCONTROLW } type TMIXERLINEW = struct { FcbStruct TDWORD FdwDestination TDWORD FdwSource TDWORD FdwLineID TDWORD FfdwLine TDWORD FdwUser TDWORD_PTR FdwComponentType TDWORD FcChannels TDWORD FcConnections TDWORD FcControls TDWORD FszShortName [16]TWCHAR FszName [64]TWCHAR FTarget struct { FdwType TDWORD FdwDeviceID TDWORD FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR } } type TMKRREDUCE = int32 type TMKSYS = int32 type TMMCKINFO = struct { Fckid TFOURCC Fcksize TDWORD FfccType TFOURCC FdwDataOffset TDWORD FdwFlags TDWORD } type TMMIOINFO = struct { FdwFlags TDWORD FfccIOProc TFOURCC FpIOProc TLPMMIOPROC FwErrorRet TUINT Fhtask THTASK FcchBuffer TLONG FpchBuffer THPSTR FpchNext THPSTR FpchEndRead THPSTR FpchEndWrite THPSTR FlBufOffset TLONG FlDiskOffset TLONG FadwInfo [3]TDWORD FdwReserved1 TDWORD FdwReserved2 TDWORD Fhmmio THMMIO } type TMMRESULT = uint32 type TMMTIME = struct { FwType TUINT Fu struct { Fsample [0]TDWORD Fcb [0]TDWORD Fticks [0]TDWORD Fsmpte [0]struct { Fhour TBYTE Fmin TBYTE Fsec TBYTE Fframe TBYTE Ffps TBYTE Fdummy TBYTE Fpad [2]TBYTE } Fmidi [0]struct { Fsongptrpos TDWORD } Fms TDWORD F__ccgo_pad6 [4]byte } } type TMMVERSION = uint32 type TMODEMDEVCAPS = struct { FdwActualSize TDWORD FdwRequiredSize TDWORD FdwDevSpecificOffset TDWORD FdwDevSpecificSize TDWORD FdwModemProviderVersion TDWORD FdwModemManufacturerOffset TDWORD FdwModemManufacturerSize TDWORD FdwModemModelOffset TDWORD FdwModemModelSize TDWORD FdwModemVersionOffset TDWORD FdwModemVersionSize TDWORD FdwDialOptions TDWORD FdwCallSetupFailTimer TDWORD FdwInactivityTimeout TDWORD FdwSpeakerVolume TDWORD FdwSpeakerMode TDWORD FdwModemOptions TDWORD FdwMaxDTERate TDWORD FdwMaxDCERate TDWORD FabVariablePortion [1]TBYTE } type TMODEMSETTINGS = struct { FdwActualSize TDWORD FdwRequiredSize TDWORD FdwDevSpecificOffset TDWORD FdwDevSpecificSize TDWORD FdwCallSetupFailTimer TDWORD FdwInactivityTimeout TDWORD FdwSpeakerVolume TDWORD FdwSpeakerMode TDWORD FdwPreferredModemOptions TDWORD FdwNegotiatedModemOptions TDWORD FdwNegotiatedDCERate TDWORD FabVariablePortion [1]TBYTE } type TMODIFY_VHDSET_FLAG = int32 type TMODIFY_VHDSET_VERSION = int32 type TMONCBSTRUCT = struct { Fcb TUINT FdwTime TDWORD FhTask THANDLE FdwRet TDWORD FwType TUINT FwFmt TUINT FhConv THCONV Fhsz1 THSZ Fhsz2 THSZ FhData THDDEDATA FdwData1 TULONG_PTR FdwData2 TULONG_PTR Fcc TCONVCONTEXT FcbData TDWORD FData [8]TDWORD } type TMONCONVSTRUCT = struct { Fcb TUINT FfConnect TWINBOOL FdwTime TDWORD FhTask THANDLE FhszSvc THSZ FhszTopic THSZ FhConvClient THCONV FhConvServer THCONV } type TMONERRSTRUCT = struct { Fcb TUINT FwLastError TUINT FdwTime TDWORD FhTask THANDLE } type TMONHSZSTRUCT = struct { Fcb TUINT FfsAction TWINBOOL FdwTime TDWORD Fhsz THSZ FhTask THANDLE Fstr [1]TCHAR } type TMONHSZSTRUCTA = struct { Fcb TUINT FfsAction TWINBOOL FdwTime TDWORD Fhsz THSZ FhTask THANDLE Fstr [1]TCHAR } type TMONHSZSTRUCTW = struct { Fcb TUINT FfsAction TWINBOOL FdwTime TDWORD Fhsz THSZ FhTask THANDLE Fstr [1]TWCHAR } type TMONIKERPROPERTY = int32 type TMONITORENUMPROC = uintptr type TMONITORINFO = struct { FcbSize TDWORD FrcMonitor TRECT FrcWork TRECT FdwFlags TDWORD } type TMONITORINFOEX = struct { F__ccgo0_0 struct { FcbSize TDWORD FrcMonitor TRECT FrcWork TRECT FdwFlags TDWORD } FszDevice [32]TCHAR } type TMONITORINFOEXA = struct { F__ccgo0_0 struct { FcbSize TDWORD FrcMonitor TRECT FrcWork TRECT FdwFlags TDWORD } FszDevice [32]TCHAR } type TMONITORINFOEXW = struct { F__ccgo0_0 struct { FcbSize TDWORD FrcMonitor TRECT FrcWork TRECT FdwFlags TDWORD } FszDevice [32]TWCHAR } type TMONITOR_DISPLAY_STATE = int32 type TMONITOR_INFO_1 = struct { FpName TLPSTR } type TMONITOR_INFO_1A = struct { FpName TLPSTR } type TMONITOR_INFO_1W = struct { FpName TLPWSTR } type TMONITOR_INFO_2 = struct { FpName TLPSTR FpEnvironment TLPSTR FpDLLName TLPSTR } type TMONITOR_INFO_2A = struct { FpName TLPSTR FpEnvironment TLPSTR FpDLLName TLPSTR } type TMONITOR_INFO_2W = struct { FpName TLPWSTR FpEnvironment TLPWSTR FpDLLName TLPWSTR } type TMONLINKSTRUCT = struct { Fcb TUINT FdwTime TDWORD FhTask THANDLE FfEstablished TWINBOOL FfNoData TWINBOOL FhszSvc THSZ FhszTopic THSZ FhszItem THSZ FwFmt TUINT FfServer TWINBOOL FhConvServer THCONV FhConvClient THCONV } type TMONMSGSTRUCT = struct { Fcb TUINT FhwndTo THWND FdwTime TDWORD FhTask THANDLE FwMsg TUINT FwParam TWPARAM FlParam TLPARAM Fdmhd TDDEML_MSG_HOOK_DATA } type TMOUSEHOOKSTRUCT = struct { Fpt TPOINT Fhwnd THWND FwHitTestCode TUINT FdwExtraInfo TULONG_PTR } type TMOUSEHOOKSTRUCTEX = struct { F__unnamed TMOUSEHOOKSTRUCT FmouseData TDWORD } type TMOUSEINPUT = struct { Fdx TLONG Fdy TLONG FmouseData TDWORD FdwFlags TDWORD Ftime TDWORD FdwExtraInfo TULONG_PTR } type TMOUSEKEYS = struct { FcbSize TUINT FdwFlags TDWORD FiMaxSpeed TDWORD FiTimeToMaxSpeed TDWORD FiCtrlSpeed TDWORD FdwReserved1 TDWORD FdwReserved2 TDWORD } type TMOUSEMOVEPOINT = struct { Fx int32 Fy int32 Ftime TDWORD FdwExtraInfo TULONG_PTR } type TMOUSE_EVENT_RECORD = struct { FdwMousePosition TCOORD FdwButtonState TDWORD FdwControlKeyState TDWORD FdwEventFlags TDWORD } const TMPF_DEVICE = 8 const TMPF_FIXED_PITCH = 1 const TMPF_TRUETYPE = 4 const TMPF_VECTOR = 2 const TMP_MAX = 32767 const TMP_MAX_S = 32767 type TMSG = struct { Fhwnd THWND Fmessage TUINT FwParam TWPARAM FlParam TLPARAM Ftime TDWORD Fpt TPOINT } type TMSGBOXCALLBACK = uintptr type TMSGBOXPARAMS = struct { FcbSize TUINT FhwndOwner THWND FhInstance THINSTANCE FlpszText TLPCSTR FlpszCaption TLPCSTR FdwStyle TDWORD FlpszIcon TLPCSTR FdwContextHelpId TDWORD_PTR FlpfnMsgBoxCallback TMSGBOXCALLBACK FdwLanguageId TDWORD } type TMSGBOXPARAMSA = struct { FcbSize TUINT FhwndOwner THWND FhInstance THINSTANCE FlpszText TLPCSTR FlpszCaption TLPCSTR FdwStyle TDWORD FlpszIcon TLPCSTR FdwContextHelpId TDWORD_PTR FlpfnMsgBoxCallback TMSGBOXCALLBACK FdwLanguageId TDWORD } type TMSGBOXPARAMSW = struct { FcbSize TUINT FhwndOwner THWND FhInstance THINSTANCE FlpszText TLPCWSTR FlpszCaption TLPCWSTR FdwStyle TDWORD FlpszIcon TLPCWSTR FdwContextHelpId TDWORD_PTR FlpfnMsgBoxCallback TMSGBOXCALLBACK FdwLanguageId TDWORD } type TMSHCTX = int32 type TMSHLFLAGS = int32 type TMSLLHOOKSTRUCT = struct { Fpt TPOINT FmouseData TDWORD Fflags TDWORD Ftime TDWORD FdwExtraInfo TULONG_PTR } type TMULTIKEYHELP = struct { FmkSize TDWORD FmkKeylist TCHAR FszKeyphrase [1]TCHAR } type TMULTIKEYHELPA = struct { FmkSize TDWORD FmkKeylist TCHAR FszKeyphrase [1]TCHAR } type TMULTIKEYHELPW = struct { FmkSize TDWORD FmkKeylist TWCHAR FszKeyphrase [1]TWCHAR } type TMULTI_QI = struct { FpIID uintptr FpItf uintptr Fhr THRESULT } type TNAMEENUMPROCA = uintptr type TNAMEENUMPROCW = uintptr type TNAME_BUFFER = struct { Fname [16]TUCHAR Fname_num TUCHAR Fname_flags TUCHAR } type TNCCALCSIZE_PARAMS = struct { Frgrc [3]TRECT Flppos TPWINDOWPOS } type TNCRYPT_ALLOC_PARA = struct { FcbSize TDWORD FpfnAlloc TPFN_NCRYPT_ALLOC FpfnFree TPFN_NCRYPT_FREE } type TNCRYPT_CIPHER_PADDING_INFO = struct { FcbSize TULONG FdwFlags TDWORD FpbIV TPUCHAR FcbIV TULONG FpbOtherInfo TPUCHAR FcbOtherInfo TULONG } type TNCRYPT_KEY_BLOB_HEADER = struct { FcbSize TULONG FdwMagic TULONG FcbAlgName TULONG FcbKeyData TULONG } type TNCRYPT_SUPPORTED_LENGTHS = struct { FdwMinLength TDWORD FdwMaxLength TDWORD FdwIncrement TDWORD FdwDefaultLength TDWORD } type TNCRYPT_UI_POLICY = struct { FdwVersion TDWORD FdwFlags TDWORD FpszCreationTitle TLPCWSTR FpszFriendlyName TLPCWSTR FpszDescription TLPCWSTR } type TNC_ADDRESS = struct { FpAddrInfo uintptr FPortNumber TUSHORT FPrefixLength TBYTE } type TNCryptAlgorithmName = struct { FpszName TLPWSTR FdwClass TDWORD FdwAlgOperations TDWORD FdwFlags TDWORD } type TNCryptBuffer = struct { FcbBuffer TULONG FBufferType TULONG FpvBuffer TPVOID } type TNCryptBufferDesc = struct { FulVersion TULONG FcBuffers TULONG FpBuffers TPBCryptBuffer } type TNCryptKeyName = struct { FpszName TLPWSTR FpszAlgid TLPWSTR FdwLegacyKeySpec TDWORD FdwFlags TDWORD } type TNCryptProviderName = struct { FpszName TLPWSTR FpszComment TLPWSTR } type TNDR_CCONTEXT = uintptr type TNDR_CS_ROUTINES = struct { FpSizeConvertRoutines uintptr FpTagGettingRoutines uintptr } type TNDR_CS_SIZE_CONVERT_ROUTINES = struct { FpfnNetSize TCS_TYPE_NET_SIZE_ROUTINE FpfnToNetCs TCS_TYPE_TO_NETCS_ROUTINE FpfnLocalSize TCS_TYPE_LOCAL_SIZE_ROUTINE FpfnFromNetCs TCS_TYPE_FROM_NETCS_ROUTINE } type TNDR_NOTIFY2_ROUTINE = uintptr type TNDR_NOTIFY_ROUTINE = uintptr type TNDR_RUNDOWN = uintptr type TNDR_SCONTEXT = uintptr type TNDR_USER_MARSHAL_INFO_LEVEL1 = struct { FBuffer uintptr FBufferSize uint32 FpfnAllocate uintptr FpfnFree uintptr FpRpcChannelBuffer uintptr FReserved [5]TULONG_PTR } type TNEARPROC = uintptr type TNETCONNECTINFOSTRUCT = struct { FcbStructure TDWORD FdwFlags TDWORD FdwSpeed TDWORD FdwDelay TDWORD FdwOptDataSize TDWORD } type TNETINFOSTRUCT = struct { FcbStructure TDWORD FdwProviderVersion TDWORD FdwStatus TDWORD FdwCharacteristics TDWORD FdwHandle TULONG_PTR FwNetType TWORD FdwPrinters TDWORD FdwDrives TDWORD } type TNETRESOURCE = struct { FdwScope TDWORD FdwType TDWORD FdwDisplayType TDWORD FdwUsage TDWORD FlpLocalName TLPSTR FlpRemoteName TLPSTR FlpComment TLPSTR FlpProvider TLPSTR } type TNETRESOURCEA = struct { FdwScope TDWORD FdwType TDWORD FdwDisplayType TDWORD FdwUsage TDWORD FlpLocalName TLPSTR FlpRemoteName TLPSTR FlpComment TLPSTR FlpProvider TLPSTR } type TNETRESOURCEW = struct { FdwScope TDWORD FdwType TDWORD FdwDisplayType TDWORD FdwUsage TDWORD FlpLocalName TLPWSTR FlpRemoteName TLPWSTR FlpComment TLPWSTR FlpProvider TLPWSTR } type TNEWTEXTMETRIC = struct { FtmHeight TLONG FtmAscent TLONG FtmDescent TLONG FtmInternalLeading TLONG FtmExternalLeading TLONG FtmAveCharWidth TLONG FtmMaxCharWidth TLONG FtmWeight TLONG FtmOverhang TLONG FtmDigitizedAspectX TLONG FtmDigitizedAspectY TLONG FtmFirstChar TBYTE FtmLastChar TBYTE FtmDefaultChar TBYTE FtmBreakChar TBYTE FtmItalic TBYTE FtmUnderlined TBYTE FtmStruckOut TBYTE FtmPitchAndFamily TBYTE FtmCharSet TBYTE FntmFlags TDWORD FntmSizeEM TUINT FntmCellHeight TUINT FntmAvgWidth TUINT } type TNEWTEXTMETRICA = struct { FtmHeight TLONG FtmAscent TLONG FtmDescent TLONG FtmInternalLeading TLONG FtmExternalLeading TLONG FtmAveCharWidth TLONG FtmMaxCharWidth TLONG FtmWeight TLONG FtmOverhang TLONG FtmDigitizedAspectX TLONG FtmDigitizedAspectY TLONG FtmFirstChar TBYTE FtmLastChar TBYTE FtmDefaultChar TBYTE FtmBreakChar TBYTE FtmItalic TBYTE FtmUnderlined TBYTE FtmStruckOut TBYTE FtmPitchAndFamily TBYTE FtmCharSet TBYTE FntmFlags TDWORD FntmSizeEM TUINT FntmCellHeight TUINT FntmAvgWidth TUINT } type TNEWTEXTMETRICEX = struct { FntmTm TNEWTEXTMETRICA FntmFontSig TFONTSIGNATURE } type TNEWTEXTMETRICEXA = struct { FntmTm TNEWTEXTMETRICA FntmFontSig TFONTSIGNATURE } type TNEWTEXTMETRICEXW = struct { FntmTm TNEWTEXTMETRICW FntmFontSig TFONTSIGNATURE } type TNEWTEXTMETRICW = struct { FtmHeight TLONG FtmAscent TLONG FtmDescent TLONG FtmInternalLeading TLONG FtmExternalLeading TLONG FtmAveCharWidth TLONG FtmMaxCharWidth TLONG FtmWeight TLONG FtmOverhang TLONG FtmDigitizedAspectX TLONG FtmDigitizedAspectY TLONG FtmFirstChar TWCHAR FtmLastChar TWCHAR FtmDefaultChar TWCHAR FtmBreakChar TWCHAR FtmItalic TBYTE FtmUnderlined TBYTE FtmStruckOut TBYTE FtmPitchAndFamily TBYTE FtmCharSet TBYTE FntmFlags TDWORD FntmSizeEM TUINT FntmCellHeight TUINT FntmAvgWidth TUINT } type TNLSVERSIONINFO = struct { FdwNLSVersionInfoSize TDWORD FdwNLSVersion TDWORD FdwDefinedVersion TDWORD FdwEffectiveId TDWORD FguidCustomVersion TGUID } type TNLSVERSIONINFOEX = struct { FdwNLSVersionInfoSize TDWORD FdwNLSVersion TDWORD FdwDefinedVersion TDWORD FdwEffectiveId TDWORD FguidCustomVersion TGUID } type TNLS_FUNCTION = uint32 type TNMHDR = struct { FhwndFrom THWND FidFrom TUINT_PTR Fcode TUINT } type TNONCLIENTMETRICS = struct { FcbSize TUINT FiBorderWidth int32 FiScrollWidth int32 FiScrollHeight int32 FiCaptionWidth int32 FiCaptionHeight int32 FlfCaptionFont TLOGFONTA FiSmCaptionWidth int32 FiSmCaptionHeight int32 FlfSmCaptionFont TLOGFONTA FiMenuWidth int32 FiMenuHeight int32 FlfMenuFont TLOGFONTA FlfStatusFont TLOGFONTA FlfMessageFont TLOGFONTA FiPaddedBorderWidth int32 } type TNONCLIENTMETRICSA = struct { FcbSize TUINT FiBorderWidth int32 FiScrollWidth int32 FiScrollHeight int32 FiCaptionWidth int32 FiCaptionHeight int32 FlfCaptionFont TLOGFONTA FiSmCaptionWidth int32 FiSmCaptionHeight int32 FlfSmCaptionFont TLOGFONTA FiMenuWidth int32 FiMenuHeight int32 FlfMenuFont TLOGFONTA FlfStatusFont TLOGFONTA FlfMessageFont TLOGFONTA FiPaddedBorderWidth int32 } type TNONCLIENTMETRICSW = struct { FcbSize TUINT FiBorderWidth int32 FiScrollWidth int32 FiScrollHeight int32 FiCaptionWidth int32 FiCaptionHeight int32 FlfCaptionFont TLOGFONTW FiSmCaptionWidth int32 FiSmCaptionHeight int32 FlfSmCaptionFont TLOGFONTW FiMenuWidth int32 FiMenuHeight int32 FlfMenuFont TLOGFONTW FlfStatusFont TLOGFONTW FlfMessageFont TLOGFONTW FiPaddedBorderWidth int32 } type TNORM_FORM = int32 type TNOTIFICATION_MASK = uint32 type TNOTIFYICONIDENTIFIER = struct { FcbSize TDWORD FhWnd THWND FuID TUINT FguidItem TGUID } type TNOTIFY_USER_POWER_SETTING = struct { FGuid TGUID } type TNPABC = uintptr type TNPABCFLOAT = uintptr type TNPAUXCAPS = uintptr type TNPAUXCAPS2 = uintptr type TNPAUXCAPS2A = uintptr type TNPAUXCAPS2W = uintptr type TNPAUXCAPSA = uintptr type TNPAUXCAPSW = uintptr type TNPBITMAP = uintptr type TNPCANDIDATEFORM = uintptr type TNPCANDIDATELIST = uintptr type TNPCHARSETINFO = uintptr type TNPCOMPOSITIONFORM = uintptr type TNPCWPRETSTRUCT = uintptr type TNPCWPSTRUCT = uintptr type TNPDEBUGHOOKINFO = uintptr type TNPDEVMODE = uintptr type TNPDEVMODEA = uintptr type TNPDEVMODEW = uintptr type TNPDRVCONFIGINFO = uintptr type TNPDRVCONFIGINFOEX = uintptr type TNPEVENTMSG = uintptr type TNPEVENTMSGMSG = uintptr type TNPEXTLOGFONT = uintptr type TNPEXTLOGFONTA = uintptr type TNPEXTLOGFONTW = uintptr type TNPEXTLOGPEN = uintptr type TNPEXTLOGPEN32 = uintptr type TNPIMECHARPOSITION = uintptr type TNPIMEMENUITEMINFO = uintptr type TNPIMEMENUITEMINFOA = uintptr type TNPIMEMENUITEMINFOW = uintptr type TNPJOYCAPS = uintptr type TNPJOYCAPS2 = uintptr type TNPJOYCAPS2A = uintptr type TNPJOYCAPS2W = uintptr type TNPJOYCAPSA = uintptr type TNPJOYCAPSW = uintptr type TNPJOYINFO = uintptr type TNPJOYINFOEX = uintptr type TNPLOGBRUSH = uintptr type TNPLOGBRUSH32 = uintptr type TNPLOGFONT = uintptr type TNPLOGFONTA = uintptr type TNPLOGFONTW = uintptr type TNPLOGPALETTE = uintptr type TNPLOGPEN = uintptr type TNPMIDIHDR = uintptr type TNPMIDIINCAPS = uintptr type TNPMIDIINCAPS2 = uintptr type TNPMIDIINCAPS2A = uintptr type TNPMIDIINCAPS2W = uintptr type TNPMIDIINCAPSA = uintptr type TNPMIDIINCAPSW = uintptr type TNPMIDIOUTCAPS = uintptr type TNPMIDIOUTCAPS2 = uintptr type TNPMIDIOUTCAPS2A = uintptr type TNPMIDIOUTCAPS2W = uintptr type TNPMIDIOUTCAPSA = uintptr type TNPMIDIOUTCAPSW = uintptr type TNPMMCKINFO = uintptr type TNPMMIOINFO = uintptr type TNPMMTIME = uintptr type TNPMSG = uintptr type TNPNEWTEXTMETRIC = uintptr type TNPNEWTEXTMETRICA = uintptr type TNPNEWTEXTMETRICW = uintptr type TNPOUTLINETEXTMETRIC = uintptr type TNPOUTLINETEXTMETRICA = uintptr type TNPOUTLINETEXTMETRICW = uintptr type TNPPAINTSTRUCT = uintptr type TNPPATTERN = uintptr type TNPPCMWAVEFORMAT = uintptr type TNPPELARRAY = uintptr type TNPPOINT = uintptr type TNPPOLYTEXT = uintptr type TNPPOLYTEXTA = uintptr type TNPPOLYTEXTW = uintptr type TNPRECONVERTSTRING = uintptr type TNPRECT = uintptr type TNPREGISTERWORD = uintptr type TNPREGISTERWORDA = uintptr type TNPREGISTERWORDW = uintptr type TNPRGBTRIPLE = uintptr type TNPRGNDATA = uintptr type TNPSTR = uintptr type TNPSTYLEBUF = uintptr type TNPSTYLEBUFA = uintptr type TNPSTYLEBUFW = uintptr type TNPTEXTMETRIC = uintptr type TNPTEXTMETRICA = uintptr type TNPTEXTMETRICW = uintptr type TNPTIMECAPS = uintptr type TNPWAVEFORMAT = uintptr type TNPWAVEFORMATEX = uintptr type TNPWAVEHDR = uintptr type TNPWAVEINCAPS = uintptr type TNPWAVEINCAPS2 = uintptr type TNPWAVEINCAPS2A = uintptr type TNPWAVEINCAPS2W = uintptr type TNPWAVEINCAPSA = uintptr type TNPWAVEINCAPSW = uintptr type TNPWAVEOUTCAPS = uintptr type TNPWAVEOUTCAPS2 = uintptr type TNPWAVEOUTCAPS2A = uintptr type TNPWAVEOUTCAPS2W = uintptr type TNPWAVEOUTCAPSA = uintptr type TNPWAVEOUTCAPSW = uintptr type TNPWNDCLASS = uintptr type TNPWNDCLASSA = uintptr type TNPWNDCLASSEX = uintptr type TNPWNDCLASSEXA = uintptr type TNPWNDCLASSEXW = uintptr type TNPWNDCLASSW = uintptr type TNTFS_EXTENDED_VOLUME_DATA = struct { FByteCount TDWORD FMajorVersion TWORD FMinorVersion TWORD } type TNTFS_STATISTICS = struct { FLogFileFullExceptions TDWORD FOtherExceptions TDWORD FMftReads TDWORD FMftReadBytes TDWORD FMftWrites TDWORD FMftWriteBytes TDWORD FMftWritesUserLevel struct { FWrite TWORD FCreate TWORD FSetInfo TWORD FFlush TWORD } FMftWritesFlushForLogFileFull TWORD FMftWritesLazyWriter TWORD FMftWritesUserRequest TWORD FMft2Writes TDWORD FMft2WriteBytes TDWORD FMft2WritesUserLevel struct { FWrite TWORD FCreate TWORD FSetInfo TWORD FFlush TWORD } FMft2WritesFlushForLogFileFull TWORD FMft2WritesLazyWriter TWORD FMft2WritesUserRequest TWORD FRootIndexReads TDWORD FRootIndexReadBytes TDWORD FRootIndexWrites TDWORD FRootIndexWriteBytes TDWORD FBitmapReads TDWORD FBitmapReadBytes TDWORD FBitmapWrites TDWORD FBitmapWriteBytes TDWORD FBitmapWritesFlushForLogFileFull TWORD FBitmapWritesLazyWriter TWORD FBitmapWritesUserRequest TWORD FBitmapWritesUserLevel struct { FWrite TWORD FCreate TWORD FSetInfo TWORD } FMftBitmapReads TDWORD FMftBitmapReadBytes TDWORD FMftBitmapWrites TDWORD FMftBitmapWriteBytes TDWORD FMftBitmapWritesFlushForLogFileFull TWORD FMftBitmapWritesLazyWriter TWORD FMftBitmapWritesUserRequest TWORD FMftBitmapWritesUserLevel struct { FWrite TWORD FCreate TWORD FSetInfo TWORD FFlush TWORD } FUserIndexReads TDWORD FUserIndexReadBytes TDWORD FUserIndexWrites TDWORD FUserIndexWriteBytes TDWORD FLogFileReads TDWORD FLogFileReadBytes TDWORD FLogFileWrites TDWORD FLogFileWriteBytes TDWORD FAllocate struct { FCalls TDWORD FClusters TDWORD FHints TDWORD FRunsReturned TDWORD FHintsHonored TDWORD FHintsClusters TDWORD FCache TDWORD FCacheClusters TDWORD FCacheMiss TDWORD FCacheMissClusters TDWORD } } type TNTSTATUS = int32 type TNT_TIB32 = struct { FExceptionList TDWORD FStackBase TDWORD FStackLimit TDWORD FSubSystemTib TDWORD F__ccgo4_16 struct { FVersion [0]TDWORD FFiberData TDWORD } FArbitraryUserPointer TDWORD FSelf TDWORD } type TNUMA_NODE_RELATIONSHIP = struct { FNodeNumber TDWORD FReserved [20]TBYTE FGroupMask TGROUP_AFFINITY } type TNUMBERFMT = struct { FNumDigits TUINT FLeadingZero TUINT FGrouping TUINT FlpDecimalSep TLPSTR FlpThousandSep TLPSTR FNegativeOrder TUINT } type TNUMBERFMTA = struct { FNumDigits TUINT FLeadingZero TUINT FGrouping TUINT FlpDecimalSep TLPSTR FlpThousandSep TLPSTR FNegativeOrder TUINT } type TNUMBERFMTW = struct { FNumDigits TUINT FLeadingZero TUINT FGrouping TUINT FlpDecimalSep TLPWSTR FlpThousandSep TLPWSTR FNegativeOrder TUINT } type TNUMPARSE = struct { FcDig TINT FdwInFlags TULONG FdwOutFlags TULONG FcchUsed TINT FnBaseShift TINT FnPwr10 TINT } type TNWPSTR = uintptr type TOBJECTDESCRIPTOR = struct { FcbSize TULONG Fclsid TCLSID FdwDrawAspect TDWORD Fsizel TSIZEL Fpointl TPOINTL FdwStatus TDWORD FdwFullUserTypeName TDWORD FdwSrcOfCopy TDWORD } type TOBJECTID = struct { FLineage TGUID FUniquifier TDWORD } type TOBJECT_TYPE_LIST = struct { FLevel TWORD FSbz TWORD FObjectType uintptr } type TOCSP_BASIC_RESPONSE_INFO = struct { FdwVersion TDWORD FdwResponderIdChoice TDWORD F__ccgo2_8 struct { FByKeyResponderId [0]TCRYPT_HASH_BLOB FByNameResponderId TCERT_NAME_BLOB } FProducedAt TFILETIME FcResponseEntry TDWORD FrgResponseEntry TPOCSP_BASIC_RESPONSE_ENTRY FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TOCSP_BASIC_REVOKED_INFO = struct { FRevocationDate TFILETIME FdwCrlReasonCode TDWORD } type TOCSP_BASIC_SIGNED_RESPONSE_INFO = struct { FToBeSigned TCRYPT_DER_BLOB FSignatureInfo TOCSP_SIGNATURE_INFO } type TOCSP_CERT_ID = struct { FHashAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FIssuerNameHash TCRYPT_HASH_BLOB FIssuerKeyHash TCRYPT_HASH_BLOB FSerialNumber TCRYPT_INTEGER_BLOB } type TOCSP_REQUEST_ENTRY = struct { FCertId TOCSP_CERT_ID FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TOCSP_REQUEST_INFO = struct { FdwVersion TDWORD FpRequestorName TPCERT_ALT_NAME_ENTRY FcRequestEntry TDWORD FrgRequestEntry TPOCSP_REQUEST_ENTRY FcExtension TDWORD FrgExtension TPCERT_EXTENSION } type TOCSP_RESPONSE_INFO = struct { FdwStatus TDWORD FpszObjId TLPSTR FValue TCRYPT_OBJID_BLOB } type TOCSP_SIGNATURE_INFO = struct { FSignatureAlgorithm TCRYPT_ALGORITHM_IDENTIFIER FSignature TCRYPT_BIT_BLOB FcCertEncoded TDWORD FrgCertEncoded TPCERT_BLOB } type TOCSP_SIGNED_REQUEST_INFO = struct { FToBeSigned TCRYPT_DER_BLOB FpOptionalSignatureInfo TPOCSP_SIGNATURE_INFO } type TOFFER_PRIORITY = int32 type TOFNOTIFY = struct { Fhdr TNMHDR FlpOFN TLPOPENFILENAMEA FpszFile TLPSTR } type TOFNOTIFYA = struct { Fhdr TNMHDR FlpOFN TLPOPENFILENAMEA FpszFile TLPSTR } type TOFNOTIFYEX = struct { Fhdr TNMHDR FlpOFN TLPOPENFILENAMEA Fpsf TLPVOID Fpidl TLPVOID } type TOFNOTIFYEXA = struct { Fhdr TNMHDR FlpOFN TLPOPENFILENAMEA Fpsf TLPVOID Fpidl TLPVOID } type TOFNOTIFYEXW = struct { Fhdr TNMHDR FlpOFN TLPOPENFILENAMEW Fpsf TLPVOID Fpidl TLPVOID } type TOFNOTIFYW = struct { Fhdr TNMHDR FlpOFN TLPOPENFILENAMEW FpszFile TLPWSTR } type TOFSTRUCT = struct { FcBytes TBYTE FfFixedDisk TBYTE FnErrCode TWORD FReserved1 TWORD FReserved2 TWORD FszPathName [128]TCHAR } type TOGGLEKEYS = TTOGGLEKEYS type TOIBDG_FLAGS = int32 type TOKEN_ACCESS_INFORMATION = TTOKEN_ACCESS_INFORMATION const TOKEN_ADJUST_DEFAULT = 128 const TOKEN_ADJUST_GROUPS = 64 const TOKEN_ADJUST_PRIVILEGES = 32 const TOKEN_ADJUST_SESSIONID = 256 const TOKEN_ALL_ACCESS = 983551 const TOKEN_ALL_ACCESS_P = 983295 type TOKEN_APPCONTAINER_INFORMATION = TTOKEN_APPCONTAINER_INFORMATION const TOKEN_ASSIGN_PRIMARY = 1 type TOKEN_AUDIT_POLICY = TTOKEN_AUDIT_POLICY type TOKEN_CONTROL = TTOKEN_CONTROL type TOKEN_DEFAULT_DACL = TTOKEN_DEFAULT_DACL type TOKEN_DEVICE_CLAIMS = TTOKEN_DEVICE_CLAIMS const TOKEN_DUPLICATE = 2 type TOKEN_ELEVATION = TTOKEN_ELEVATION type TOKEN_ELEVATION_TYPE = TTOKEN_ELEVATION_TYPE const TOKEN_EXECUTE = 131072 type TOKEN_GROUPS = TTOKEN_GROUPS type TOKEN_GROUPS_AND_PRIVILEGES = TTOKEN_GROUPS_AND_PRIVILEGES const TOKEN_IMPERSONATE = 4 type TOKEN_INFORMATION_CLASS = TTOKEN_INFORMATION_CLASS type TOKEN_LINKED_TOKEN = TTOKEN_LINKED_TOKEN type TOKEN_MANDATORY_LABEL = TTOKEN_MANDATORY_LABEL type TOKEN_MANDATORY_POLICY = TTOKEN_MANDATORY_POLICY const TOKEN_MANDATORY_POLICY_NEW_PROCESS_MIN = 2 const TOKEN_MANDATORY_POLICY_NO_WRITE_UP = 1 const TOKEN_MANDATORY_POLICY_OFF = 0 const TOKEN_MANDATORY_POLICY_VALID_MASK = 3 type TOKEN_ORIGIN = TTOKEN_ORIGIN type TOKEN_OWNER = TTOKEN_OWNER type TOKEN_PRIMARY_GROUP = TTOKEN_PRIMARY_GROUP type TOKEN_PRIVILEGES = TTOKEN_PRIVILEGES const TOKEN_QUERY = 8 const TOKEN_QUERY_SOURCE = 16 const TOKEN_READ = 131080 type TOKEN_SOURCE = TTOKEN_SOURCE const TOKEN_SOURCE_LENGTH = 8 type TOKEN_STATISTICS = TTOKEN_STATISTICS type TOKEN_TYPE = TTOKEN_TYPE type TOKEN_USER = TTOKEN_USER type TOKEN_USER_CLAIMS = TTOKEN_USER_CLAIMS const TOKEN_WRITE = 131296 type TOLDFONTENUMPROCA = uintptr type TOLDFONTENUMPROCW = uintptr type TOLECHAR = uint16 type TOLECLOSE = int32 type TOLECONTF = int32 type TOLEGETMONIKER = int32 type TOLEINPLACEFRAMEINFO = struct { Fcb TUINT FfMDIApp TWINBOOL FhwndFrame THWND Fhaccel THACCEL FcAccelEntries TUINT } type TOLELINKBIND = int32 type TOLEMENUGROUPWIDTHS = struct { Fwidth [6]TLONG } type TOLEMISC = int32 type TOLERENDER = int32 type TOLESTREAM = struct { Flpstbl TLPOLESTREAMVTBL } type TOLESTREAMVTBL = struct { FGet uintptr FPut uintptr } type TOLEUPDATE = int32 type TOLEVERB = struct { FlVerb TLONG FlpszVerbName TLPOLESTR FfuFlags TDWORD FgrfAttribs TDWORD } type TOLEVERBATTRIB = int32 type TOLEWHICHMK = int32 type TOPENCARDNAME = struct { FdwStructSize TDWORD FhwndOwner THWND FhSCardContext TSCARDCONTEXT FlpstrGroupNames TLPSTR FnMaxGroupNames TDWORD FlpstrCardNames TLPSTR FnMaxCardNames TDWORD FrgguidInterfaces TLPCGUID FcguidInterfaces TDWORD FlpstrRdr TLPSTR FnMaxRdr TDWORD FlpstrCard TLPSTR FnMaxCard TDWORD FlpstrTitle TLPCSTR FdwFlags TDWORD FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD FdwActiveProtocol TDWORD FlpfnConnect TLPOCNCONNPROCA FlpfnCheck TLPOCNCHKPROC FlpfnDisconnect TLPOCNDSCPROC FhCardHandle TSCARDHANDLE } type TOPENCARDNAMEA = struct { FdwStructSize TDWORD FhwndOwner THWND FhSCardContext TSCARDCONTEXT FlpstrGroupNames TLPSTR FnMaxGroupNames TDWORD FlpstrCardNames TLPSTR FnMaxCardNames TDWORD FrgguidInterfaces TLPCGUID FcguidInterfaces TDWORD FlpstrRdr TLPSTR FnMaxRdr TDWORD FlpstrCard TLPSTR FnMaxCard TDWORD FlpstrTitle TLPCSTR FdwFlags TDWORD FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD FdwActiveProtocol TDWORD FlpfnConnect TLPOCNCONNPROCA FlpfnCheck TLPOCNCHKPROC FlpfnDisconnect TLPOCNDSCPROC FhCardHandle TSCARDHANDLE } type TOPENCARDNAMEW = struct { FdwStructSize TDWORD FhwndOwner THWND FhSCardContext TSCARDCONTEXT FlpstrGroupNames TLPWSTR FnMaxGroupNames TDWORD FlpstrCardNames TLPWSTR FnMaxCardNames TDWORD FrgguidInterfaces TLPCGUID FcguidInterfaces TDWORD FlpstrRdr TLPWSTR FnMaxRdr TDWORD FlpstrCard TLPWSTR FnMaxCard TDWORD FlpstrTitle TLPCWSTR FdwFlags TDWORD FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD FdwActiveProtocol TDWORD FlpfnConnect TLPOCNCONNPROCW FlpfnCheck TLPOCNCHKPROC FlpfnDisconnect TLPOCNDSCPROC FhCardHandle TSCARDHANDLE } type TOPENCARDNAME_EX = struct { FdwStructSize TDWORD FhSCardContext TSCARDCONTEXT FhwndOwner THWND FdwFlags TDWORD FlpstrTitle TLPCSTR FlpstrSearchDesc TLPCSTR FhIcon THICON FpOpenCardSearchCriteria TPOPENCARD_SEARCH_CRITERIAA FlpfnConnect TLPOCNCONNPROCA FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD FlpstrRdr TLPSTR FnMaxRdr TDWORD FlpstrCard TLPSTR FnMaxCard TDWORD FdwActiveProtocol TDWORD FhCardHandle TSCARDHANDLE } type TOPENCARDNAME_EXA = struct { FdwStructSize TDWORD FhSCardContext TSCARDCONTEXT FhwndOwner THWND FdwFlags TDWORD FlpstrTitle TLPCSTR FlpstrSearchDesc TLPCSTR FhIcon THICON FpOpenCardSearchCriteria TPOPENCARD_SEARCH_CRITERIAA FlpfnConnect TLPOCNCONNPROCA FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD FlpstrRdr TLPSTR FnMaxRdr TDWORD FlpstrCard TLPSTR FnMaxCard TDWORD FdwActiveProtocol TDWORD FhCardHandle TSCARDHANDLE } type TOPENCARDNAME_EXW = struct { FdwStructSize TDWORD FhSCardContext TSCARDCONTEXT FhwndOwner THWND FdwFlags TDWORD FlpstrTitle TLPCWSTR FlpstrSearchDesc TLPCWSTR FhIcon THICON FpOpenCardSearchCriteria TPOPENCARD_SEARCH_CRITERIAW FlpfnConnect TLPOCNCONNPROCW FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD FlpstrRdr TLPWSTR FnMaxRdr TDWORD FlpstrCard TLPWSTR FnMaxCard TDWORD FdwActiveProtocol TDWORD FhCardHandle TSCARDHANDLE } type TOPENCARD_SEARCH_CRITERIA = struct { FdwStructSize TDWORD FlpstrGroupNames TLPSTR FnMaxGroupNames TDWORD FrgguidInterfaces TLPCGUID FcguidInterfaces TDWORD FlpstrCardNames TLPSTR FnMaxCardNames TDWORD FlpfnCheck TLPOCNCHKPROC FlpfnConnect TLPOCNCONNPROCA FlpfnDisconnect TLPOCNDSCPROC FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD } type TOPENCARD_SEARCH_CRITERIAA = struct { FdwStructSize TDWORD FlpstrGroupNames TLPSTR FnMaxGroupNames TDWORD FrgguidInterfaces TLPCGUID FcguidInterfaces TDWORD FlpstrCardNames TLPSTR FnMaxCardNames TDWORD FlpfnCheck TLPOCNCHKPROC FlpfnConnect TLPOCNCONNPROCA FlpfnDisconnect TLPOCNDSCPROC FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD } type TOPENCARD_SEARCH_CRITERIAW = struct { FdwStructSize TDWORD FlpstrGroupNames TLPWSTR FnMaxGroupNames TDWORD FrgguidInterfaces TLPCGUID FcguidInterfaces TDWORD FlpstrCardNames TLPWSTR FnMaxCardNames TDWORD FlpfnCheck TLPOCNCHKPROC FlpfnConnect TLPOCNCONNPROCW FlpfnDisconnect TLPOCNDSCPROC FpvUserData TLPVOID FdwShareMode TDWORD FdwPreferredProtocols TDWORD } type TOPENFILENAME = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FlpstrFilter TLPCSTR FlpstrCustomFilter TLPSTR FnMaxCustFilter TDWORD FnFilterIndex TDWORD FlpstrFile TLPSTR FnMaxFile TDWORD FlpstrFileTitle TLPSTR FnMaxFileTitle TDWORD FlpstrInitialDir TLPCSTR FlpstrTitle TLPCSTR FFlags TDWORD FnFileOffset TWORD FnFileExtension TWORD FlpstrDefExt TLPCSTR FlCustData TLPARAM FlpfnHook TLPOFNHOOKPROC FlpTemplateName TLPCSTR FpvReserved uintptr FdwReserved TDWORD FFlagsEx TDWORD } type TOPENFILENAMEA = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FlpstrFilter TLPCSTR FlpstrCustomFilter TLPSTR FnMaxCustFilter TDWORD FnFilterIndex TDWORD FlpstrFile TLPSTR FnMaxFile TDWORD FlpstrFileTitle TLPSTR FnMaxFileTitle TDWORD FlpstrInitialDir TLPCSTR FlpstrTitle TLPCSTR FFlags TDWORD FnFileOffset TWORD FnFileExtension TWORD FlpstrDefExt TLPCSTR FlCustData TLPARAM FlpfnHook TLPOFNHOOKPROC FlpTemplateName TLPCSTR FpvReserved uintptr FdwReserved TDWORD FFlagsEx TDWORD } type TOPENFILENAMEW = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FlpstrFilter TLPCWSTR FlpstrCustomFilter TLPWSTR FnMaxCustFilter TDWORD FnFilterIndex TDWORD FlpstrFile TLPWSTR FnMaxFile TDWORD FlpstrFileTitle TLPWSTR FnMaxFileTitle TDWORD FlpstrInitialDir TLPCWSTR FlpstrTitle TLPCWSTR FFlags TDWORD FnFileOffset TWORD FnFileExtension TWORD FlpstrDefExt TLPCWSTR FlCustData TLPARAM FlpfnHook TLPOFNHOOKPROC FlpTemplateName TLPCWSTR FpvReserved uintptr FdwReserved TDWORD FFlagsEx TDWORD } type TOPENFILENAME_NT4 = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FlpstrFilter TLPCSTR FlpstrCustomFilter TLPSTR FnMaxCustFilter TDWORD FnFilterIndex TDWORD FlpstrFile TLPSTR FnMaxFile TDWORD FlpstrFileTitle TLPSTR FnMaxFileTitle TDWORD FlpstrInitialDir TLPCSTR FlpstrTitle TLPCSTR FFlags TDWORD FnFileOffset TWORD FnFileExtension TWORD FlpstrDefExt TLPCSTR FlCustData TLPARAM FlpfnHook TLPOFNHOOKPROC FlpTemplateName TLPCSTR } type TOPENFILENAME_NT4A = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FlpstrFilter TLPCSTR FlpstrCustomFilter TLPSTR FnMaxCustFilter TDWORD FnFilterIndex TDWORD FlpstrFile TLPSTR FnMaxFile TDWORD FlpstrFileTitle TLPSTR FnMaxFileTitle TDWORD FlpstrInitialDir TLPCSTR FlpstrTitle TLPCSTR FFlags TDWORD FnFileOffset TWORD FnFileExtension TWORD FlpstrDefExt TLPCSTR FlCustData TLPARAM FlpfnHook TLPOFNHOOKPROC FlpTemplateName TLPCSTR } type TOPENFILENAME_NT4W = struct { FlStructSize TDWORD FhwndOwner THWND FhInstance THINSTANCE FlpstrFilter TLPCWSTR FlpstrCustomFilter TLPWSTR FnMaxCustFilter TDWORD FnFilterIndex TDWORD FlpstrFile TLPWSTR FnMaxFile TDWORD FlpstrFileTitle TLPWSTR FnMaxFileTitle TDWORD FlpstrInitialDir TLPCWSTR FlpstrTitle TLPCWSTR FFlags TDWORD FnFileOffset TWORD FnFileExtension TWORD FlpstrDefExt TLPCWSTR FlCustData TLPARAM FlpfnHook TLPOFNHOOKPROC FlpTemplateName TLPCWSTR } type TOPEN_PRINTER_PROPS_INFO = struct { FdwSize TDWORD FpszSheetName TLPSTR FuSheetIndex TUINT FdwFlags TDWORD FbModal TWINBOOL } type TOPEN_PRINTER_PROPS_INFOA = struct { FdwSize TDWORD FpszSheetName TLPSTR FuSheetIndex TUINT FdwFlags TDWORD FbModal TWINBOOL } type TOPEN_PRINTER_PROPS_INFOW = struct { FdwSize TDWORD FpszSheetName TLPWSTR FuSheetIndex TUINT FdwFlags TDWORD FbModal TWINBOOL } type TOPEN_VIRTUAL_DISK_FLAG = int32 type TOPEN_VIRTUAL_DISK_PARAMETERS = struct { FVersion TOPEN_VIRTUAL_DISK_VERSION F__ccgo1_4 struct { FVersion2 [0]struct { FGetInfoOnly TWINBOOL FReadOnly TWINBOOL FResiliencyGuid TGUID } FVersion1 struct { FRWDepth TULONG } F__ccgo_pad2 [20]byte } } type TOPEN_VIRTUAL_DISK_VERSION = int32 type TOPERATION_END_PARAMETERS = struct { FVersion TULONG FOperationId TOPERATION_ID FFlags TULONG } type TOPERATION_ID = uint32 type TOPERATION_START_PARAMETERS = struct { FVersion TULONG FOperationId TOPERATION_ID FFlags TULONG } type TORIENTATION_PREFERENCE = int32 type TOSVERSIONINFO = struct { FdwOSVersionInfoSize TDWORD FdwMajorVersion TDWORD FdwMinorVersion TDWORD FdwBuildNumber TDWORD FdwPlatformId TDWORD FszCSDVersion [128]TCHAR } type TOSVERSIONINFOA = struct { FdwOSVersionInfoSize TDWORD FdwMajorVersion TDWORD FdwMinorVersion TDWORD FdwBuildNumber TDWORD FdwPlatformId TDWORD FszCSDVersion [128]TCHAR } type TOSVERSIONINFOEX = struct { FdwOSVersionInfoSize TDWORD FdwMajorVersion TDWORD FdwMinorVersion TDWORD FdwBuildNumber TDWORD FdwPlatformId TDWORD FszCSDVersion [128]TCHAR FwServicePackMajor TWORD FwServicePackMinor TWORD FwSuiteMask TWORD FwProductType TBYTE FwReserved TBYTE } type TOSVERSIONINFOEXA = struct { FdwOSVersionInfoSize TDWORD FdwMajorVersion TDWORD FdwMinorVersion TDWORD FdwBuildNumber TDWORD FdwPlatformId TDWORD FszCSDVersion [128]TCHAR FwServicePackMajor TWORD FwServicePackMinor TWORD FwSuiteMask TWORD FwProductType TBYTE FwReserved TBYTE } type TOSVERSIONINFOEXW = struct { FdwOSVersionInfoSize TDWORD FdwMajorVersion TDWORD FdwMinorVersion TDWORD FdwBuildNumber TDWORD FdwPlatformId TDWORD FszCSDVersion [128]TWCHAR FwServicePackMajor TWORD FwServicePackMinor TWORD FwSuiteMask TWORD FwProductType TBYTE FwReserved TBYTE } type TOSVERSIONINFOW = struct { FdwOSVersionInfoSize TDWORD FdwMajorVersion TDWORD FdwMinorVersion TDWORD FdwBuildNumber TDWORD FdwPlatformId TDWORD FszCSDVersion [128]TWCHAR } const TOUCHEVENTF_DOWN = 2 const TOUCHEVENTF_INRANGE = 8 const TOUCHEVENTF_MOVE = 1 const TOUCHEVENTF_NOCOALESCE = 32 const TOUCHEVENTF_PALM = 128 const TOUCHEVENTF_PEN = 64 const TOUCHEVENTF_PRIMARY = 16 const TOUCHEVENTF_UP = 4 type TOUCHINPUT = TTOUCHINPUT const TOUCHINPUTMASKF_CONTACTAREA = 4 const TOUCHINPUTMASKF_EXTRAINFO = 2 const TOUCHINPUTMASKF_TIMEFROMSYSTEM = 1 type TOUCHPREDICTIONPARAMETERS = TTOUCHPREDICTIONPARAMETERS const TOUCHPREDICTIONPARAMETERS_DEFAULT_LATENCY = 8 const TOUCHPREDICTIONPARAMETERS_DEFAULT_RLS_DELTA = 0 const TOUCHPREDICTIONPARAMETERS_DEFAULT_RLS_EXPO_SMOOTH_ALPHA = 0 const TOUCHPREDICTIONPARAMETERS_DEFAULT_RLS_LAMBDA_LEARNING_RATE = 0 const TOUCHPREDICTIONPARAMETERS_DEFAULT_RLS_LAMBDA_MAX = 0 const TOUCHPREDICTIONPARAMETERS_DEFAULT_RLS_LAMBDA_MIN = 0 const TOUCHPREDICTIONPARAMETERS_DEFAULT_SAMPLETIME = 8 const TOUCHPREDICTIONPARAMETERS_DEFAULT_USE_HW_TIMESTAMP = 1 const TOUCH_FEEDBACK_DEFAULT = 1 const TOUCH_FEEDBACK_INDIRECT = 2 const TOUCH_FEEDBACK_NONE = 3 type TOUCH_FLAGS = TTOUCH_FLAGS const TOUCH_FLAG_NONE = 0 const TOUCH_HIT_TESTING_CLIENT = 1 const TOUCH_HIT_TESTING_DEFAULT = 0 type TOUCH_HIT_TESTING_INPUT = TTOUCH_HIT_TESTING_INPUT const TOUCH_HIT_TESTING_NONE = 2 const TOUCH_HIT_TESTING_PROXIMITY_CLOSEST = 0 type TOUCH_HIT_TESTING_PROXIMITY_EVALUATION = TTOUCH_HIT_TESTING_PROXIMITY_EVALUATION const TOUCH_HIT_TESTING_PROXIMITY_FARTHEST = 4095 type TOUCH_MASK = TTOUCH_MASK const TOUCH_MASK_CONTACTAREA = 1 const TOUCH_MASK_NONE = 0 const TOUCH_MASK_ORIENTATION = 2 const TOUCH_MASK_PRESSURE = 4 type TOUTLINETEXTMETRIC = struct { FotmSize TUINT FotmTextMetrics TTEXTMETRICA FotmFiller TBYTE FotmPanoseNumber TPANOSE FotmfsSelection TUINT FotmfsType TUINT FotmsCharSlopeRise int32 FotmsCharSlopeRun int32 FotmItalicAngle int32 FotmEMSquare TUINT FotmAscent int32 FotmDescent int32 FotmLineGap TUINT FotmsCapEmHeight TUINT FotmsXHeight TUINT FotmrcFontBox TRECT FotmMacAscent int32 FotmMacDescent int32 FotmMacLineGap TUINT FotmusMinimumPPEM TUINT FotmptSubscriptSize TPOINT FotmptSubscriptOffset TPOINT FotmptSuperscriptSize TPOINT FotmptSuperscriptOffset TPOINT FotmsStrikeoutSize TUINT FotmsStrikeoutPosition int32 FotmsUnderscoreSize int32 FotmsUnderscorePosition int32 FotmpFamilyName TPSTR FotmpFaceName TPSTR FotmpStyleName TPSTR FotmpFullName TPSTR } type TOUTLINETEXTMETRICA = struct { FotmSize TUINT FotmTextMetrics TTEXTMETRICA FotmFiller TBYTE FotmPanoseNumber TPANOSE FotmfsSelection TUINT FotmfsType TUINT FotmsCharSlopeRise int32 FotmsCharSlopeRun int32 FotmItalicAngle int32 FotmEMSquare TUINT FotmAscent int32 FotmDescent int32 FotmLineGap TUINT FotmsCapEmHeight TUINT FotmsXHeight TUINT FotmrcFontBox TRECT FotmMacAscent int32 FotmMacDescent int32 FotmMacLineGap TUINT FotmusMinimumPPEM TUINT FotmptSubscriptSize TPOINT FotmptSubscriptOffset TPOINT FotmptSuperscriptSize TPOINT FotmptSuperscriptOffset TPOINT FotmsStrikeoutSize TUINT FotmsStrikeoutPosition int32 FotmsUnderscoreSize int32 FotmsUnderscorePosition int32 FotmpFamilyName TPSTR FotmpFaceName TPSTR FotmpStyleName TPSTR FotmpFullName TPSTR } type TOUTLINETEXTMETRICW = struct { FotmSize TUINT FotmTextMetrics TTEXTMETRICW FotmFiller TBYTE FotmPanoseNumber TPANOSE FotmfsSelection TUINT FotmfsType TUINT FotmsCharSlopeRise int32 FotmsCharSlopeRun int32 FotmItalicAngle int32 FotmEMSquare TUINT FotmAscent int32 FotmDescent int32 FotmLineGap TUINT FotmsCapEmHeight TUINT FotmsXHeight TUINT FotmrcFontBox TRECT FotmMacAscent int32 FotmMacDescent int32 FotmMacLineGap TUINT FotmusMinimumPPEM TUINT FotmptSubscriptSize TPOINT FotmptSubscriptOffset TPOINT FotmptSuperscriptSize TPOINT FotmptSuperscriptOffset TPOINT FotmsStrikeoutSize TUINT FotmsStrikeoutPosition int32 FotmsUnderscoreSize int32 FotmsUnderscorePosition int32 FotmpFamilyName TPSTR FotmpFaceName TPSTR FotmpStyleName TPSTR FotmpFullName TPSTR } type TOUTPUT_DEBUG_STRING_INFO = struct { FlpDebugStringData TLPSTR FfUnicode TWORD FnDebugStringLength TWORD } type TOVERLAPPED_ENTRY = struct { FlpCompletionKey TULONG_PTR FlpOverlapped TLPOVERLAPPED FInternal TULONG_PTR FdwNumberOfBytesTransferred TDWORD } type TPABC = uintptr type TPABCFLOAT = uintptr type TPACCESS_ALLOWED_ACE = uintptr type TPACCESS_ALLOWED_CALLBACK_ACE = uintptr type TPACCESS_ALLOWED_CALLBACK_OBJECT_ACE = uintptr type TPACCESS_ALLOWED_OBJECT_ACE = uintptr type TPACCESS_DENIED_ACE = uintptr type TPACCESS_DENIED_CALLBACK_ACE = uintptr type TPACCESS_DENIED_CALLBACK_OBJECT_ACE = uintptr type TPACCESS_DENIED_OBJECT_ACE = uintptr type TPACCESS_MASK = uintptr type TPACCESS_REASONS = uintptr type TPACCESS_TOKEN = uintptr type TPACE_HEADER = uintptr type TPACKEDEVENTINFO = struct { FulSize TDWORD FulNumEventsForLogFile TDWORD } type TPACL = uintptr type TPACL_REVISION_INFORMATION = uintptr type TPACL_SIZE_INFORMATION = uintptr type TPACTCTX = uintptr type TPACTCTXA = uintptr type TPACTCTXW = uintptr type TPACTCTX_SECTION_KEYED_DATA = uintptr type TPACTCTX_SECTION_KEYED_DATA_2600 = uintptr type TPACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = uintptr type TPACTION_HEADER = uintptr type TPACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = uintptr type TPACTIVATION_CONTEXT_BASIC_INFORMATION = uintptr type TPACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = uintptr type TPACTIVATION_CONTEXT_DETAILED_INFORMATION = uintptr type TPACTIVATION_CONTEXT_QUERY_INDEX = uintptr type TPACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = uintptr type TPADAPTER_STATUS = uintptr type TPADDJOB_INFO_1 = uintptr type TPADDJOB_INFO_1A = uintptr type TPADDJOB_INFO_1W = uintptr type TPADMINISTRATOR_POWER_POLICY = uintptr type TPAGESETUPDLG = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FFlags TDWORD FptPaperSize TPOINT FrtMinMargin TRECT FrtMargin TRECT FhInstance THINSTANCE FlCustData TLPARAM FlpfnPageSetupHook TLPPAGESETUPHOOK FlpfnPagePaintHook TLPPAGEPAINTHOOK FlpPageSetupTemplateName TLPCSTR FhPageSetupTemplate THGLOBAL } type TPAGESETUPDLGA = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FFlags TDWORD FptPaperSize TPOINT FrtMinMargin TRECT FrtMargin TRECT FhInstance THINSTANCE FlCustData TLPARAM FlpfnPageSetupHook TLPPAGESETUPHOOK FlpfnPagePaintHook TLPPAGEPAINTHOOK FlpPageSetupTemplateName TLPCSTR FhPageSetupTemplate THGLOBAL } type TPAGESETUPDLGW = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FFlags TDWORD FptPaperSize TPOINT FrtMinMargin TRECT FrtMargin TRECT FhInstance THINSTANCE FlCustData TLPARAM FlpfnPageSetupHook TLPPAGESETUPHOOK FlpfnPagePaintHook TLPPAGEPAINTHOOK FlpPageSetupTemplateName TLPCWSTR FhPageSetupTemplate THGLOBAL } type TPAINTSTRUCT = struct { Fhdc THDC FfErase TWINBOOL FrcPaint TRECT FfRestore TWINBOOL FfIncUpdate TWINBOOL FrgbReserved [32]TBYTE } type TPALETTEENTRY = struct { FpeRed TBYTE FpeGreen TBYTE FpeBlue TBYTE FpeFlags TBYTE } type TPALTTABINFO = uintptr type TPANOSE = struct { FbFamilyType TBYTE FbSerifStyle TBYTE FbWeight TBYTE FbProportion TBYTE FbContrast TBYTE FbStrokeVariation TBYTE FbArmStyle TBYTE FbLetterform TBYTE FbMidline TBYTE FbXHeight TBYTE } type TPAPCFUNC = uintptr type TPAPPBARDATA = uintptr type TPAPPLICATIONLAUNCH_SETTING_VALUE = uintptr type TPAPPLY_SNAPSHOT_VHDSET_FLAG = uintptr type TPAPPLY_SNAPSHOT_VHDSET_PARAMETERS = uintptr type TPAPP_MEMORY_INFORMATION = uintptr type TPARAMDATA = struct { FszName uintptr Fvt TVARTYPE } type TPARAMDESC = struct { Fpparamdescex TLPPARAMDESCEX FwParamFlags TUSHORT } type TPARAM_OFFSETTABLE = uintptr type TPARRAY_INFO = uintptr type TPARSEACTION = int32 type TPARTITION_INFORMATION_MBR = struct { FPartitionType TBYTE FBootIndicator TBOOLEAN FRecognizedPartition TBOOLEAN FHiddenSectors TDWORD FPartitionId TGUID } type TPARTITION_STYLE = int32 type TPAR_STATE = uintptr type TPASSEMBLY_FILE_DETAILED_INFORMATION = uintptr type TPATCHARRAY = [128]TWORD type TPATHNAME_BUFFER = struct { FPathNameLength TDWORD FName [1]TWCHAR } type TPATTACH_VIRTUAL_DISK_PARAMETERS = uintptr type TPATTERN = struct { FlbStyle TUINT FlbColor TCOLORREF FlbHatch TULONG_PTR } type TPAUDIT_EVENT_TYPE = uintptr type TPAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA = uintptr type TPAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS = uintptr type TPAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA = uintptr type TPAUXCAPS = uintptr type TPAUXCAPS2 = uintptr type TPAUXCAPS2A = uintptr type TPAUXCAPS2W = uintptr type TPAUXCAPSA = uintptr type TPAUXCAPSW = uintptr type TPAXESLIST = uintptr type TPAXESLISTA = uintptr type TPAXESLISTW = uintptr type TPAXISINFO = uintptr type TPAXISINFOA = uintptr type TPAXISINFOW = uintptr type TPBAD_MEMORY_CALLBACK_ROUTINE = uintptr type TPBAD_TRACK_NUMBER = uintptr type TPBATTERY_REPORTING_SCALE = uintptr type TPBCRYPT_AUTHENTICATED_CIPHER_MODE_INFO = uintptr type TPBCRYPT_DH_KEY_BLOB = uintptr type TPBCRYPT_DSA_KEY_BLOB = uintptr type TPBCRYPT_DSA_KEY_BLOB_V2 = uintptr type TPBCRYPT_ECCKEY_BLOB = uintptr type TPBCRYPT_INTERFACE_VERSION = uintptr type TPBCRYPT_KEY_DATA_BLOB_HEADER = uintptr type TPBCryptBuffer = uintptr type TPBCryptBufferDesc = uintptr type TPBIDI_DATA = uintptr type TPBIDI_REQUEST_CONTAINER = uintptr type TPBIDI_REQUEST_DATA = uintptr type TPBIDI_RESPONSE_CONTAINER = uintptr type TPBIDI_RESPONSE_DATA = uintptr type TPBINARY_CONTAINER = uintptr type TPBIN_COUNT = uintptr type TPBIN_RANGE = uintptr type TPBIN_RESULTS = uintptr type TPBITMAP = uintptr type TPBITMAPCOREHEADER = uintptr type TPBITMAPCOREINFO = uintptr type TPBITMAPFILEHEADER = uintptr type TPBITMAPINFO = uintptr type TPBITMAPINFOHEADER = uintptr type TPBITMAPV4HEADER = uintptr type TPBITMAPV5HEADER = uintptr type TPBLENDFUNCTION = uintptr type TPBOOL = uintptr type TPBOOLEAN = uintptr type TPBOOT_AREA_INFO = uintptr type TPBSMINFO = uintptr type TPBULK_SECURITY_TEST_DATA = uintptr type TPBYTE = uintptr type TPBY_HANDLE_FILE_INFORMATION = uintptr type TPCACHE_DESCRIPTOR = uintptr type TPCACHE_RELATIONSHIP = uintptr type TPCACTCTX = uintptr type TPCACTCTXA = uintptr type TPCACTCTXW = uintptr type TPCACTCTX_SECTION_KEYED_DATA = uintptr type TPCACTCTX_SECTION_KEYED_DATA_2600 = uintptr type TPCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = uintptr type TPCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = uintptr type TPCACTIVATION_CONTEXT_BASIC_INFORMATION = uintptr type TPCACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = uintptr type TPCACTIVATION_CONTEXT_DETAILED_INFORMATION = uintptr type TPCACTIVATION_CONTEXT_QUERY_INDEX = uintptr type TPCACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = uintptr type TPCANDIDATEFORM = uintptr type TPCANDIDATELIST = uintptr type TPCASSEMBLY_FILE_DETAILED_INFORMATION = uintptr type TPCCERT_CHAIN_CONTEXT = uintptr type TPCCERT_CHAIN_ELEMENT = uintptr type TPCCERT_CONTEXT = uintptr type TPCCERT_CRL_CONTEXT_PAIR = uintptr type TPCCERT_ENHKEY_USAGE = uintptr type TPCCERT_EXTENSION = uintptr type TPCCERT_SELECT_CHAIN_PARA = uintptr type TPCCERT_SELECT_CRITERIA = uintptr type TPCCERT_SERVER_OCSP_RESPONSE_CONTEXT = uintptr type TPCCERT_SIMPLE_CHAIN = uintptr type TPCCERT_STORE_PROV_FIND_INFO = uintptr type TPCCERT_STRONG_SIGN_PARA = uintptr type TPCCH = uintptr type TPCCOMPATIBILITY_CONTEXT_ELEMENT = uintptr type TPCCRL_CONTEXT = uintptr type TPCCRYPT_OID_INFO = uintptr type TPCCTL_CONTEXT = uintptr type TPCCTL_USAGE = uintptr type TPCERT_ACCESS_DESCRIPTION = uintptr type TPCERT_ALT_NAME_ENTRY = uintptr type TPCERT_ALT_NAME_INFO = uintptr type TPCERT_AUTHORITY_INFO_ACCESS = uintptr type TPCERT_AUTHORITY_KEY_ID2_INFO = uintptr type TPCERT_AUTHORITY_KEY_ID_INFO = uintptr type TPCERT_BASIC_CONSTRAINTS2_INFO = uintptr type TPCERT_BASIC_CONSTRAINTS_INFO = uintptr type TPCERT_BIOMETRIC_DATA = uintptr type TPCERT_BIOMETRIC_EXT_INFO = uintptr type TPCERT_BLOB = uintptr type TPCERT_CHAIN = uintptr type TPCERT_CHAIN_CONTEXT = uintptr type TPCERT_CHAIN_ELEMENT = uintptr type TPCERT_CHAIN_ENGINE_CONFIG = uintptr type TPCERT_CHAIN_FIND_BY_ISSUER_PARA = uintptr type TPCERT_CHAIN_FIND_ISSUER_PARA = uintptr type TPCERT_CHAIN_PARA = uintptr type TPCERT_CHAIN_POLICY_PARA = uintptr type TPCERT_CHAIN_POLICY_STATUS = uintptr type TPCERT_CONTEXT = uintptr type TPCERT_CREATE_CONTEXT_PARA = uintptr type TPCERT_CRL_CONTEXT_PAIR = uintptr type TPCERT_DH_PARAMETERS = uintptr type TPCERT_DSS_PARAMETERS = uintptr type TPCERT_ECC_SIGNATURE = uintptr type TPCERT_ENHKEY_USAGE = uintptr type TPCERT_EXTENSION = uintptr type TPCERT_EXTENSIONS = uintptr type TPCERT_GENERAL_SUBTREE = uintptr type TPCERT_HASHED_URL = uintptr type TPCERT_ID = uintptr type TPCERT_INFO = uintptr type TPCERT_ISSUER_SERIAL_NUMBER = uintptr type TPCERT_KEYGEN_REQUEST_INFO = uintptr type TPCERT_KEY_ATTRIBUTES_INFO = uintptr type TPCERT_KEY_CONTEXT = uintptr type TPCERT_KEY_USAGE_RESTRICTION_INFO = uintptr type TPCERT_LDAP_STORE_OPENED_PARA = uintptr type TPCERT_LOGOTYPE_AUDIO = uintptr type TPCERT_LOGOTYPE_AUDIO_INFO = uintptr type TPCERT_LOGOTYPE_DATA = uintptr type TPCERT_LOGOTYPE_DETAILS = uintptr type TPCERT_LOGOTYPE_EXT_INFO = uintptr type TPCERT_LOGOTYPE_IMAGE = uintptr type TPCERT_LOGOTYPE_IMAGE_INFO = uintptr type TPCERT_LOGOTYPE_INFO = uintptr type TPCERT_LOGOTYPE_REFERENCE = uintptr type TPCERT_NAME_BLOB = uintptr type TPCERT_NAME_CONSTRAINTS_INFO = uintptr type TPCERT_NAME_INFO = uintptr type TPCERT_NAME_VALUE = uintptr type TPCERT_OR_CRL_BLOB = uintptr type TPCERT_OR_CRL_BUNDLE = uintptr type TPCERT_OTHER_LOGOTYPE_INFO = uintptr type TPCERT_OTHER_NAME = uintptr type TPCERT_PAIR = uintptr type TPCERT_PHYSICAL_STORE_INFO = uintptr type TPCERT_POLICIES_INFO = uintptr type TPCERT_POLICY95_QUALIFIER1 = uintptr type TPCERT_POLICY_CONSTRAINTS_INFO = uintptr type TPCERT_POLICY_ID = uintptr type TPCERT_POLICY_INFO = uintptr type TPCERT_POLICY_MAPPING = uintptr type TPCERT_POLICY_MAPPINGS_INFO = uintptr type TPCERT_POLICY_QUALIFIER_INFO = uintptr type TPCERT_POLICY_QUALIFIER_NOTICE_REFERENCE = uintptr type TPCERT_POLICY_QUALIFIER_USER_NOTICE = uintptr type TPCERT_PRIVATE_KEY_VALIDITY = uintptr type TPCERT_PUBLIC_KEY_INFO = uintptr type TPCERT_QC_STATEMENT = uintptr type TPCERT_QC_STATEMENTS_EXT_INFO = uintptr type TPCERT_RDN = uintptr type TPCERT_RDN_ATTR = uintptr type TPCERT_RDN_VALUE_BLOB = uintptr type TPCERT_REGISTRY_STORE_CLIENT_GPT_PARA = uintptr type TPCERT_REGISTRY_STORE_ROAMING_PARA = uintptr type TPCERT_REQUEST_INFO = uintptr type TPCERT_REVOCATION_CHAIN_PARA = uintptr type TPCERT_REVOCATION_CRL_INFO = uintptr type TPCERT_REVOCATION_INFO = uintptr type TPCERT_REVOCATION_PARA = uintptr type TPCERT_REVOCATION_STATUS = uintptr type TPCERT_SELECT_CHAIN_PARA = uintptr type TPCERT_SELECT_CRITERIA = uintptr type TPCERT_SERVER_OCSP_RESPONSE_CONTEXT = uintptr type TPCERT_SERVER_OCSP_RESPONSE_OPEN_PARA = uintptr type TPCERT_SIGNED_CONTENT_INFO = uintptr type TPCERT_SIMPLE_CHAIN = uintptr type TPCERT_STORE_PROV_FIND_INFO = uintptr type TPCERT_STORE_PROV_INFO = uintptr type TPCERT_STRONG_SIGN_PARA = uintptr type TPCERT_STRONG_SIGN_SERIALIZED_INFO = uintptr type TPCERT_SUBJECT_INFO_ACCESS = uintptr type TPCERT_SUPPORTED_ALGORITHM_INFO = uintptr type TPCERT_SYSTEM_STORE_INFO = uintptr type TPCERT_SYSTEM_STORE_RELOCATE_PARA = uintptr type TPCERT_TEMPLATE_EXT = uintptr type TPCERT_TPM_SPECIFICATION_INFO = uintptr type TPCERT_TRUST_LIST_INFO = uintptr type TPCERT_TRUST_STATUS = uintptr type TPCERT_USAGE_MATCH = uintptr type TPCERT_X942_DH_PARAMETERS = uintptr type TPCERT_X942_DH_VALIDATION_PARAMS = uintptr type TPCFG_CALL_TARGET_INFO = uintptr type TPCGESTUREINFO = uintptr type TPCH = uintptr type TPCHANGEFILTERSTRUCT = uintptr type TPCHANGER_DEVICE_PROBLEM_TYPE = uintptr type TPCHANGER_ELEMENT = uintptr type TPCHANGER_ELEMENT_LIST = uintptr type TPCHANGER_ELEMENT_STATUS = uintptr type TPCHANGER_ELEMENT_STATUS_EX = uintptr type TPCHANGER_EXCHANGE_MEDIUM = uintptr type TPCHANGER_INITIALIZE_ELEMENT_STATUS = uintptr type TPCHANGER_MOVE_MEDIUM = uintptr type TPCHANGER_PRODUCT_DATA = uintptr type TPCHANGER_READ_ELEMENT_STATUS = uintptr type TPCHANGER_SEND_VOLUME_TAG_INFORMATION = uintptr type TPCHANGER_SET_ACCESS = uintptr type TPCHANGER_SET_POSITION = uintptr type TPCHAR = uintptr type TPCHARSETINFO = uintptr type TPCHAR_INFO = uintptr type TPCIMAGE_DELAYLOAD_DESCRIPTOR = uintptr type TPCLAIMS_BLOB = uintptr type TPCLAIM_SECURITY_ATTRIBUTES_INFORMATION = uintptr type TPCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE = uintptr type TPCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = uintptr type TPCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = uintptr type TPCLAIM_SECURITY_ATTRIBUTE_V1 = uintptr type TPCLASS_MEDIA_CHANGE_CONTEXT = uintptr type TPCMC_ADD_ATTRIBUTES_INFO = uintptr type TPCMC_ADD_EXTENSIONS_INFO = uintptr type TPCMC_DATA_INFO = uintptr type TPCMC_PEND_INFO = uintptr type TPCMC_RESPONSE_INFO = uintptr type TPCMC_STATUS_INFO = uintptr type TPCMC_TAGGED_ATTRIBUTE = uintptr type TPCMC_TAGGED_CERT_REQUEST = uintptr type TPCMC_TAGGED_CONTENT_INFO = uintptr type TPCMC_TAGGED_OTHER_MSG = uintptr type TPCMC_TAGGED_REQUEST = uintptr type TPCMSG_ATTR = uintptr type TPCMSG_CMS_RECIPIENT_INFO = uintptr type TPCMSG_CMS_SIGNER_INFO = uintptr type TPCMSG_CNG_CONTENT_DECRYPT_INFO = uintptr type TPCMSG_CONTENT_ENCRYPT_INFO = uintptr type TPCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA = uintptr type TPCMSG_CTRL_DECRYPT_PARA = uintptr type TPCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA = uintptr type TPCMSG_CTRL_KEY_AGREE_DECRYPT_PARA = uintptr type TPCMSG_CTRL_KEY_TRANS_DECRYPT_PARA = uintptr type TPCMSG_CTRL_MAIL_LIST_DECRYPT_PARA = uintptr type TPCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA = uintptr type TPCMSG_ENCRYPTED_ENCODE_INFO = uintptr type TPCMSG_ENVELOPED_ENCODE_INFO = uintptr type TPCMSG_HASHED_ENCODE_INFO = uintptr type TPCMSG_KEY_AGREE_ENCRYPT_INFO = uintptr type TPCMSG_KEY_AGREE_KEY_ENCRYPT_INFO = uintptr type TPCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO = uintptr type TPCMSG_KEY_AGREE_RECIPIENT_INFO = uintptr type TPCMSG_KEY_TRANS_ENCRYPT_INFO = uintptr type TPCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO = uintptr type TPCMSG_KEY_TRANS_RECIPIENT_INFO = uintptr type TPCMSG_MAIL_LIST_ENCRYPT_INFO = uintptr type TPCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO = uintptr type TPCMSG_MAIL_LIST_RECIPIENT_INFO = uintptr type TPCMSG_RC2_AUX_INFO = uintptr type TPCMSG_RC4_AUX_INFO = uintptr type TPCMSG_RECIPIENT_ENCODE_INFO = uintptr type TPCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO = uintptr type TPCMSG_RECIPIENT_ENCRYPTED_KEY_INFO = uintptr type TPCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO = uintptr type TPCMSG_SIGNED_ENCODE_INFO = uintptr type TPCMSG_SIGNER_ENCODE_INFO = uintptr type TPCMSG_SIGNER_INFO = uintptr type TPCMSG_SP3_COMPATIBLE_AUX_INFO = uintptr type TPCMSG_STREAM_INFO = uintptr type TPCMS_DH_KEY_INFO = uintptr type TPCMS_KEY_INFO = uintptr type TPCMWAVEFORMAT = struct { Fwf TWAVEFORMAT FwBitsPerSample TWORD } type TPCM_POWER_DATA = uintptr type TPCNZCH = uintptr type TPCNZTCH = uintptr type TPCNZWCH = uintptr type TPCOLORADJUSTMENT = uintptr type TPCOMBOBOXINFO = uintptr type TPCOMPACT_VIRTUAL_DISK_PARAMETERS = uintptr type TPCOMPAREITEMSTRUCT = uintptr type TPCOMPARTMENT_ID = uintptr type TPCOMPATIBILITY_CONTEXT_ELEMENT = uintptr type TPCOMPONENT_FILTER = uintptr type TPCOMPOSITIONFORM = uintptr type TPCONDITION_VARIABLE = uintptr type TPCONSOLE_CURSOR_INFO = uintptr type TPCONSOLE_FONT_INFO = uintptr type TPCONSOLE_FONT_INFOEX = uintptr type TPCONSOLE_HISTORY_INFO = uintptr type TPCONSOLE_READCONSOLE_CONTROL = uintptr type TPCONSOLE_SCREEN_BUFFER_INFO = uintptr type TPCONSOLE_SCREEN_BUFFER_INFOEX = uintptr type TPCONSOLE_SELECTION_INFO = uintptr type TPCONTEXT = uintptr type TPCONVCONTEXT = uintptr type TPCONVINFO = uintptr type TPCOORD = uintptr type TPCOPYDATASTRUCT = uintptr type TPCOPYFILE2_PROGRESS_ROUTINE = uintptr type TPCORE_PRINTER_DRIVER = uintptr type TPCORE_PRINTER_DRIVERA = uintptr type TPCORE_PRINTER_DRIVERW = uintptr type TPCPS_URLS = uintptr type TPCRAWINPUTDEVICE = uintptr type TPCREATEFILE2_EXTENDED_PARAMETERS = uintptr type TPCREATE_DISK = uintptr type TPCREATE_DISK_GPT = uintptr type TPCREATE_DISK_MBR = uintptr type TPCREATE_USN_JOURNAL_DATA = uintptr type TPCREATE_VIRTUAL_DISK_PARAMETERS = uintptr type TPCREDIRECTION_DESCRIPTOR = uintptr type TPCREDIRECTION_FUNCTION_DESCRIPTOR = uintptr type TPCRITICAL_SECTION = uintptr type TPCRITICAL_SECTION_DEBUG = uintptr type TPCRL_BLOB = uintptr type TPCRL_CONTEXT = uintptr type TPCRL_DIST_POINT = uintptr type TPCRL_DIST_POINTS_INFO = uintptr type TPCRL_DIST_POINT_NAME = uintptr type TPCRL_ENTRY = uintptr type TPCRL_FIND_ISSUED_FOR_PARA = uintptr type TPCRL_INFO = uintptr type TPCRL_ISSUING_DIST_POINT = uintptr type TPCRL_REVOCATION_INFO = uintptr type TPCRM_PROTOCOL_ID = uintptr type TPCROSS_CERT_DIST_POINTS_INFO = uintptr type TPCRYPTNET_URL_CACHE_FLUSH_INFO = uintptr type TPCRYPTNET_URL_CACHE_PRE_FETCH_INFO = uintptr type TPCRYPTNET_URL_CACHE_RESPONSE_INFO = uintptr type TPCRYPTPROTECT_PROMPTSTRUCT = uintptr type TPCRYPT_3DES_KEY_STATE = uintptr type TPCRYPT_AES_128_KEY_STATE = uintptr type TPCRYPT_AES_256_KEY_STATE = uintptr type TPCRYPT_ALGORITHM_IDENTIFIER = uintptr type TPCRYPT_ASYNC_RETRIEVAL_COMPLETION = uintptr type TPCRYPT_ATTRIBUTE = uintptr type TPCRYPT_ATTRIBUTES = uintptr type TPCRYPT_ATTRIBUTE_TYPE_VALUE = uintptr type TPCRYPT_ATTR_BLOB = uintptr type TPCRYPT_BIT_BLOB = uintptr type TPCRYPT_BLOB_ARRAY = uintptr type TPCRYPT_CONTENT_INFO = uintptr type TPCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY = uintptr type TPCRYPT_CONTEXTS = uintptr type TPCRYPT_CONTEXT_CONFIG = uintptr type TPCRYPT_CONTEXT_FUNCTIONS = uintptr type TPCRYPT_CONTEXT_FUNCTION_CONFIG = uintptr type TPCRYPT_CONTEXT_FUNCTION_PROVIDERS = uintptr type TPCRYPT_CREDENTIALS = uintptr type TPCRYPT_CSP_PROVIDER = uintptr type TPCRYPT_DATA_BLOB = uintptr type TPCRYPT_DECODE_PARA = uintptr type TPCRYPT_DECRYPT_MESSAGE_PARA = uintptr type TPCRYPT_DECRYPT_PRIVATE_KEY_FUNC = uintptr type TPCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA = uintptr type TPCRYPT_DER_BLOB = uintptr type TPCRYPT_DES_KEY_STATE = uintptr type TPCRYPT_DIGEST_BLOB = uintptr type TPCRYPT_ECC_CMS_SHARED_INFO = uintptr type TPCRYPT_ECC_PRIVATE_KEY_INFO = uintptr type TPCRYPT_ENCODE_PARA = uintptr type TPCRYPT_ENCRYPTED_PRIVATE_KEY_INFO = uintptr type TPCRYPT_ENCRYPT_MESSAGE_PARA = uintptr type TPCRYPT_ENCRYPT_PRIVATE_KEY_FUNC = uintptr type TPCRYPT_ENROLLMENT_NAME_VALUE_PAIR = uintptr type TPCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO = uintptr type TPCRYPT_HASH_BLOB = uintptr type TPCRYPT_HASH_INFO = uintptr type TPCRYPT_HASH_MESSAGE_PARA = uintptr type TPCRYPT_IMAGE_REF = uintptr type TPCRYPT_IMAGE_REG = uintptr type TPCRYPT_INTEGER_BLOB = uintptr type TPCRYPT_INTERFACE_REG = uintptr type TPCRYPT_KEY_PROV_INFO = uintptr type TPCRYPT_KEY_PROV_PARAM = uintptr type TPCRYPT_KEY_SIGN_MESSAGE_PARA = uintptr type TPCRYPT_KEY_VERIFY_MESSAGE_PARA = uintptr type TPCRYPT_MASK_GEN_ALGORITHM = uintptr type TPCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE = uintptr type TPCRYPT_OBJID_BLOB = uintptr type TPCRYPT_OBJID_TABLE = uintptr type TPCRYPT_OID_FUNC_ENTRY = uintptr type TPCRYPT_OID_INFO = uintptr type TPCRYPT_PASSWORD_CREDENTIALS = uintptr type TPCRYPT_PASSWORD_CREDENTIALSA = uintptr type TPCRYPT_PASSWORD_CREDENTIALSW = uintptr type TPCRYPT_PKCS8_EXPORT_PARAMS = uintptr type TPCRYPT_PKCS8_IMPORT_PARAMS = uintptr type TPCRYPT_PRIVATE_KEY_BLOB_AND_PARAMS = uintptr type TPCRYPT_PRIVATE_KEY_INFO = uintptr type TPCRYPT_PROPERTY_REF = uintptr type TPCRYPT_PROVIDERS = uintptr type TPCRYPT_PROVIDER_REF = uintptr type TPCRYPT_PROVIDER_REFS = uintptr type TPCRYPT_PROVIDER_REG = uintptr type TPCRYPT_PSOURCE_ALGORITHM = uintptr type TPCRYPT_RC2_CBC_PARAMETERS = uintptr type TPCRYPT_RC4_KEY_STATE = uintptr type TPCRYPT_RESOLVE_HCRYPTPROV_FUNC = uintptr type TPCRYPT_RETRIEVE_AUX_INFO = uintptr type TPCRYPT_RSAES_OAEP_PARAMETERS = uintptr type TPCRYPT_RSA_SSA_PSS_PARAMETERS = uintptr type TPCRYPT_SEQUENCE_OF_ANY = uintptr type TPCRYPT_SIGN_MESSAGE_PARA = uintptr type TPCRYPT_SMART_CARD_ROOT_INFO = uintptr type TPCRYPT_SMIME_CAPABILITIES = uintptr type TPCRYPT_SMIME_CAPABILITY = uintptr type TPCRYPT_TIMESTAMP_ACCURACY = uintptr type TPCRYPT_TIMESTAMP_CONTEXT = uintptr type TPCRYPT_TIMESTAMP_INFO = uintptr type TPCRYPT_TIMESTAMP_PARA = uintptr type TPCRYPT_TIMESTAMP_REQUEST = uintptr type TPCRYPT_TIMESTAMP_RESPONSE = uintptr type TPCRYPT_TIME_STAMP_REQUEST_INFO = uintptr type TPCRYPT_UINT_BLOB = uintptr type TPCRYPT_URL_ARRAY = uintptr type TPCRYPT_URL_INFO = uintptr type TPCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO = uintptr type TPCRYPT_VERIFY_MESSAGE_PARA = uintptr type TPCRYPT_X942_OTHER_INFO = uintptr type TPCSTR = uintptr type TPCSV_NAMESPACE_INFO = uintptr type TPCTCH = uintptr type TPCTL_ANY_SUBJECT_INFO = uintptr type TPCTL_CONTEXT = uintptr type TPCTL_ENTRY = uintptr type TPCTL_FIND_SUBJECT_PARA = uintptr type TPCTL_FIND_USAGE_PARA = uintptr type TPCTL_INFO = uintptr type TPCTL_USAGE = uintptr type TPCTL_USAGE_MATCH = uintptr type TPCTL_VERIFY_USAGE_PARA = uintptr type TPCTL_VERIFY_USAGE_STATUS = uintptr type TPCTOUCHINPUT = uintptr type TPCTSTR = uintptr type TPCUCSCHAR = uintptr type TPCUCSSTR = uintptr type TPCUNZTCH = uintptr type TPCUNZWCH = uintptr type TPCURSORINFO = uintptr type TPCUTSTR = uintptr type TPCUUCSCHAR = uintptr type TPCUUCSSTR = uintptr type TPCUWCHAR = uintptr type TPCUWSTR = uintptr type TPCUZZTSTR = uintptr type TPCUZZWSTR = uintptr type TPCWCH = uintptr type TPCWCHAR = uintptr type TPCWPRETSTRUCT = uintptr type TPCWPSTRUCT = uintptr type TPCWSTR = uintptr type TPCZPSTR = uintptr type TPCZPWSTR = uintptr type TPCZZSTR = uintptr type TPCZZTSTR = uintptr type TPCZZWSTR = uintptr type TPDATATYPES_INFO_1 = uintptr type TPDATATYPES_INFO_1A = uintptr type TPDATATYPES_INFO_1W = uintptr type TPDATA_BLOB = uintptr type TPDDEML_MSG_HOOK_DATA = uintptr type TPDEBUGHOOKINFO = uintptr type TPDECRYPTION_STATUS_BUFFER = uintptr type TPDELETEITEMSTRUCT = uintptr type TPDELETE_SNAPSHOT_VHDSET_FLAG = uintptr type TPDELETE_SNAPSHOT_VHDSET_PARAMETERS = uintptr type TPDELETE_SNAPSHOT_VHDSET_VERSION = uintptr type TPDELETE_USN_JOURNAL_DATA = uintptr type TPDESIGNVECTOR = uintptr type TPDEVICE_COPY_OFFLOAD_DESCRIPTOR = uintptr type TPDEVICE_DATA_SET_RANGE = uintptr type TPDEVICE_DSM_NOTIFICATION_PARAMETERS = uintptr type TPDEVICE_LB_PROVISIONING_DESCRIPTOR = uintptr type TPDEVICE_MANAGE_DATA_SET_ATTRIBUTES = uintptr type TPDEVICE_MEDIA_INFO = uintptr type TPDEVICE_POWER_DESCRIPTOR = uintptr type TPDEVICE_POWER_STATE = uintptr type TPDEVICE_SEEK_PENALTY_DESCRIPTOR = uintptr type TPDEVICE_TRIM_DESCRIPTOR = uintptr type TPDEVICE_WRITE_AGGREGATION_DESCRIPTOR = uintptr type TPDEVMODE = uintptr type TPDEVMODEA = uintptr type TPDEVMODEW = uintptr type TPDIBSECTION = uintptr type TPDISK_CACHE_INFORMATION = uintptr type TPDISK_CONTROLLER_NUMBER = uintptr type TPDISK_DETECTION_INFO = uintptr type TPDISK_EXTENT = uintptr type TPDISK_EX_INT13_INFO = uintptr type TPDISK_GEOMETRY = uintptr type TPDISK_GEOMETRY_EX = uintptr type TPDISK_GROW_PARTITION = uintptr type TPDISK_HISTOGRAM = uintptr type TPDISK_INT13_INFO = uintptr type TPDISK_LOGGING = uintptr type TPDISK_PARTITION_INFO = uintptr type TPDISK_PERFORMANCE = uintptr type TPDISK_RECORD = uintptr type TPDISPLAY_DEVICE = uintptr type TPDISPLAY_DEVICEA = uintptr type TPDISPLAY_DEVICEW = uintptr type TPDLGITEMTEMPLATE = uintptr type TPDLGITEMTEMPLATEA = uintptr type TPDLGITEMTEMPLATEW = uintptr type TPDLL_DIRECTORY_COOKIE = uintptr type TPDOC_INFO_1 = uintptr type TPDOC_INFO_1A = uintptr type TPDOC_INFO_1W = uintptr type TPDOC_INFO_2 = uintptr type TPDOC_INFO_2A = uintptr type TPDOC_INFO_2W = uintptr type TPDOC_INFO_3 = uintptr type TPDOC_INFO_3A = uintptr type TPDOC_INFO_3W = uintptr type TPDRAWITEMSTRUCT = uintptr type TPDRAWPATRECT = uintptr type TPDRIVERSTATUS = uintptr type TPDRIVER_INFO_1 = uintptr type TPDRIVER_INFO_1A = uintptr type TPDRIVER_INFO_1W = uintptr type TPDRIVER_INFO_2 = uintptr type TPDRIVER_INFO_2A = uintptr type TPDRIVER_INFO_2W = uintptr type TPDRIVER_INFO_3 = uintptr type TPDRIVER_INFO_3A = uintptr type TPDRIVER_INFO_3W = uintptr type TPDRIVER_INFO_4 = uintptr type TPDRIVER_INFO_4A = uintptr type TPDRIVER_INFO_4W = uintptr type TPDRIVER_INFO_5 = uintptr type TPDRIVER_INFO_5A = uintptr type TPDRIVER_INFO_5W = uintptr type TPDRIVER_INFO_6 = uintptr type TPDRIVER_INFO_6A = uintptr type TPDRIVER_INFO_6W = uintptr type TPDRIVER_INFO_8 = uintptr type TPDRIVER_INFO_8A = uintptr type TPDRIVER_INFO_8W = uintptr type TPDRIVE_LAYOUT_INFORMATION = uintptr type TPDRIVE_LAYOUT_INFORMATION_EX = uintptr type TPDRIVE_LAYOUT_INFORMATION_GPT = uintptr type TPDRIVE_LAYOUT_INFORMATION_MBR = uintptr type TPDROPSTRUCT = uintptr type TPDRVCALLBACK = uintptr type TPDRVCONFIGINFO = uintptr type TPDRVCONFIGINFOEX = uintptr type TPDWORD = uintptr type TPDWORD32 = uintptr type TPDWORD64 = uintptr type TPDWORDLONG = uintptr type TPDWORD_PTR = uintptr type TPDYNAMIC_TIME_ZONE_INFORMATION = uintptr type TPEFS_CERTIFICATE_BLOB = uintptr type TPEFS_HASH_BLOB = uintptr type TPEFS_KEY_INFO = uintptr type TPEFS_RPC_BLOB = uintptr type TPELARRAY = struct { FpaXCount TLONG FpaYCount TLONG FpaXExt TLONG FpaYExt TLONG FpaRGBs TBYTE } type TPELEMENT_TYPE = uintptr type TPEMR = uintptr type TPEMRABORTPATH = uintptr type TPEMRALPHABLEND = uintptr type TPEMRANGLEARC = uintptr type TPEMRARC = uintptr type TPEMRARCTO = uintptr type TPEMRBEGINPATH = uintptr type TPEMRBITBLT = uintptr type TPEMRCHORD = uintptr type TPEMRCLOSEFIGURE = uintptr type TPEMRCOLORCORRECTPALETTE = uintptr type TPEMRCOLORMATCHTOTARGET = uintptr type TPEMRCREATEBRUSHINDIRECT = uintptr type TPEMRCREATECOLORSPACE = uintptr type TPEMRCREATECOLORSPACEW = uintptr type TPEMRCREATEDIBPATTERNBRUSHPT = uintptr type TPEMRCREATEMONOBRUSH = uintptr type TPEMRCREATEPALETTE = uintptr type TPEMRCREATEPEN = uintptr type TPEMRDELETECOLORSPACE = uintptr type TPEMRDELETEOBJECT = uintptr type TPEMRDRAWESCAPE = uintptr type TPEMRELLIPSE = uintptr type TPEMRENDPATH = uintptr type TPEMREOF = uintptr type TPEMREXCLUDECLIPRECT = uintptr type TPEMREXTCREATEFONTINDIRECTW = uintptr type TPEMREXTCREATEPEN = uintptr type TPEMREXTESCAPE = uintptr type TPEMREXTFLOODFILL = uintptr type TPEMREXTSELECTCLIPRGN = uintptr type TPEMREXTTEXTOUTA = uintptr type TPEMREXTTEXTOUTW = uintptr type TPEMRFILLPATH = uintptr type TPEMRFILLRGN = uintptr type TPEMRFLATTENPATH = uintptr type TPEMRFORMAT = uintptr type TPEMRFRAMERGN = uintptr type TPEMRGDICOMMENT = uintptr type TPEMRGLSBOUNDEDRECORD = uintptr type TPEMRGLSRECORD = uintptr type TPEMRGRADIENTFILL = uintptr type TPEMRINTERSECTCLIPRECT = uintptr type TPEMRINVERTRGN = uintptr type TPEMRLINETO = uintptr type TPEMRMASKBLT = uintptr type TPEMRMODIFYWORLDTRANSFORM = uintptr type TPEMRMOVETOEX = uintptr type TPEMRNAMEDESCAPE = uintptr type TPEMROFFSETCLIPRGN = uintptr type TPEMRPAINTRGN = uintptr type TPEMRPIE = uintptr type TPEMRPIXELFORMAT = uintptr type TPEMRPLGBLT = uintptr type TPEMRPOLYBEZIER = uintptr type TPEMRPOLYBEZIER16 = uintptr type TPEMRPOLYBEZIERTO = uintptr type TPEMRPOLYBEZIERTO16 = uintptr type TPEMRPOLYDRAW = uintptr type TPEMRPOLYDRAW16 = uintptr type TPEMRPOLYGON = uintptr type TPEMRPOLYGON16 = uintptr type TPEMRPOLYLINE = uintptr type TPEMRPOLYLINE16 = uintptr type TPEMRPOLYLINETO = uintptr type TPEMRPOLYLINETO16 = uintptr type TPEMRPOLYPOLYGON = uintptr type TPEMRPOLYPOLYGON16 = uintptr type TPEMRPOLYPOLYLINE = uintptr type TPEMRPOLYPOLYLINE16 = uintptr type TPEMRPOLYTEXTOUTA = uintptr type TPEMRPOLYTEXTOUTW = uintptr type TPEMRREALIZEPALETTE = uintptr type TPEMRRECTANGLE = uintptr type TPEMRRESIZEPALETTE = uintptr type TPEMRRESTOREDC = uintptr type TPEMRROUNDRECT = uintptr type TPEMRSAVEDC = uintptr type TPEMRSCALEVIEWPORTEXTEX = uintptr type TPEMRSCALEWINDOWEXTEX = uintptr type TPEMRSELECTCLIPPATH = uintptr type TPEMRSELECTCOLORSPACE = uintptr type TPEMRSELECTOBJECT = uintptr type TPEMRSELECTPALETTE = uintptr type TPEMRSETARCDIRECTION = uintptr type TPEMRSETBKCOLOR = uintptr type TPEMRSETBKMODE = uintptr type TPEMRSETBRUSHORGEX = uintptr type TPEMRSETCOLORADJUSTMENT = uintptr type TPEMRSETCOLORSPACE = uintptr type TPEMRSETDIBITSTODEVICE = uintptr type TPEMRSETICMMODE = uintptr type TPEMRSETICMPROFILE = uintptr type TPEMRSETICMPROFILEA = uintptr type TPEMRSETICMPROFILEW = uintptr type TPEMRSETLAYOUT = uintptr type TPEMRSETMAPMODE = uintptr type TPEMRSETMAPPERFLAGS = uintptr type TPEMRSETMETARGN = uintptr type TPEMRSETMITERLIMIT = uintptr type TPEMRSETPALETTEENTRIES = uintptr type TPEMRSETPIXELV = uintptr type TPEMRSETPOLYFILLMODE = uintptr type TPEMRSETROP2 = uintptr type TPEMRSETSTRETCHBLTMODE = uintptr type TPEMRSETTEXTALIGN = uintptr type TPEMRSETTEXTCOLOR = uintptr type TPEMRSETVIEWPORTEXTEX = uintptr type TPEMRSETVIEWPORTORGEX = uintptr type TPEMRSETWINDOWEXTEX = uintptr type TPEMRSETWINDOWORGEX = uintptr type TPEMRSETWORLDTRANSFORM = uintptr type TPEMRSTRETCHBLT = uintptr type TPEMRSTRETCHDIBITS = uintptr type TPEMRSTROKEANDFILLPATH = uintptr type TPEMRSTROKEPATH = uintptr type TPEMRTEXT = uintptr type TPEMRTRANSPARENTBLT = uintptr type TPEMRWIDENPATH = uintptr type TPENCLAVE_ROUTINE = uintptr type TPENCRYPTED_DATA_INFO = uintptr type TPENCRYPTION_BUFFER = uintptr type TPENCRYPTION_CERTIFICATE = uintptr type TPENCRYPTION_CERTIFICATE_HASH = uintptr type TPENCRYPTION_CERTIFICATE_HASH_LIST = uintptr type TPENCRYPTION_CERTIFICATE_LIST = uintptr type TPENDINGMSG = int32 type TPENDINGTYPE = int32 type TPENHMETAHEADER = uintptr type TPENHMETARECORD = uintptr type TPENLISTMENT_BASIC_INFORMATION = uintptr type TPENLISTMENT_CRM_INFORMATION = uintptr type TPENUMLOGFONTEXDV = uintptr type TPENUMLOGFONTEXDVA = uintptr type TPENUMLOGFONTEXDVW = uintptr type TPENUMTEXTMETRIC = uintptr type TPENUMTEXTMETRICA = uintptr type TPENUMTEXTMETRICW = uintptr type TPENUMUILANG = uintptr type TPEN_FLAGS = uint32 type TPEN_MASK = uint32 type TPERF_COUNTER_BLOCK = struct { FByteLength TDWORD } type TPERF_INSTANCE_DEFINITION = struct { FByteLength TDWORD FParentObjectTitleIndex TDWORD FParentObjectInstance TDWORD FUniqueID TLONG FNameOffset TDWORD FNameLength TDWORD } type TPERSISTENT_RESERVE_COMMAND = struct { FVersion TULONG FSize TULONG F__ccgo2_8 struct { FPR_OUT [0]struct { F__ccgo0 uint8 F__ccgo1 uint8 } FPR_IN struct { F__ccgo0 uint8 FAllocationLength TUSHORT } } } type TPEVENTLOGRECORD = uintptr type TPEVENTMSG = uintptr type TPEVENTMSGMSG = uintptr type TPEVENTSFORLOGFILE = uintptr type TPEV_EXTRA_CERT_CHAIN_POLICY_PARA = uintptr type TPEV_EXTRA_CERT_CHAIN_POLICY_STATUS = uintptr type TPEXCEPTION_HANDLER = uintptr type TPEXCEPTION_POINTERS = uintptr type TPEXCEPTION_RECORD = uintptr type TPEXCEPTION_RECORD32 = uintptr type TPEXCEPTION_RECORD64 = uintptr type TPEXCEPTION_REGISTRATION = uintptr type TPEXCEPTION_REGISTRATION_RECORD = uintptr type TPEXCEPTION_ROUTINE = uintptr type TPEXECUTION_STATE = uintptr type TPEXFAT_STATISTICS = uintptr type TPEXPAND_VIRTUAL_DISK_PARAMETERS = uintptr type TPEXTENDED_ENCRYPTED_DATA_INFO = uintptr type TPEXTLOGFONT = uintptr type TPEXTLOGFONTA = uintptr type TPEXTLOGFONTW = uintptr type TPEXTLOGPEN = uintptr type TPEXTLOGPEN32 = uintptr type TPFAT_STATISTICS = uintptr type TPFD_SET = uintptr type TPFE_EXPORT_FUNC = uintptr type TPFE_IMPORT_FUNC = uintptr type TPFIBER_CALLOUT_ROUTINE = uintptr type TPFIBER_START_ROUTINE = uintptr type TPFILEMUIINFO = uintptr type TPFILESYSTEM_STATISTICS = uintptr type TPFILETIME = uintptr type TPFILE_ALIGNMENT_INFO = uintptr type TPFILE_ALLOCATED_RANGE_BUFFER = uintptr type TPFILE_ALLOCATION_INFO = uintptr type TPFILE_ATTRIBUTE_TAG_INFO = uintptr type TPFILE_BASIC_INFO = uintptr type TPFILE_CASE_SENSITIVE_INFO = uintptr type TPFILE_COMPRESSION_INFO = uintptr type TPFILE_DISPOSITION_INFO = uintptr type TPFILE_DISPOSITION_INFO_EX = uintptr type TPFILE_END_OF_FILE_INFO = uintptr type TPFILE_FS_PERSISTENT_VOLUME_INFORMATION = uintptr type TPFILE_FULL_DIR_INFO = uintptr type TPFILE_ID_128 = uintptr type TPFILE_ID_BOTH_DIR_INFO = uintptr type TPFILE_ID_EXTD_DIR_INFO = uintptr type TPFILE_ID_INFO = uintptr type TPFILE_ID_TYPE = uintptr type TPFILE_INFO_BY_HANDLE_CLASS = uintptr type TPFILE_IO_PRIORITY_HINT_INFO = uintptr type TPFILE_MAKE_COMPATIBLE_BUFFER = uintptr type TPFILE_NAME_INFO = uintptr type TPFILE_NOTIFY_INFORMATION = uintptr type TPFILE_OBJECTID_BUFFER = uintptr type TPFILE_PREFETCH = uintptr type TPFILE_PREFETCH_EX = uintptr type TPFILE_PROVIDER_EXTERNAL_INFO_V0 = uintptr type TPFILE_PROVIDER_EXTERNAL_INFO_V1 = uintptr type TPFILE_QUERY_ON_DISK_VOL_INFO_BUFFER = uintptr type TPFILE_QUERY_SPARING_BUFFER = uintptr type TPFILE_REMOTE_PROTOCOL_INFO = uintptr type TPFILE_RENAME_INFO = uintptr type TPFILE_SEGMENT_ELEMENT = uintptr type TPFILE_SET_DEFECT_MGMT_BUFFER = uintptr type TPFILE_SET_SPARSE_BUFFER = uintptr type TPFILE_STANDARD_INFO = uintptr type TPFILE_STORAGE_INFO = uintptr type TPFILE_STREAM_INFO = uintptr type TPFILE_SYSTEM_RECOGNITION_INFORMATION = uintptr type TPFILE_TYPE_NOTIFICATION_INPUT = uintptr type TPFILE_ZERO_DATA_INFORMATION = uintptr type TPFIND_BY_SID_DATA = uintptr type TPFIND_BY_SID_OUTPUT = uintptr type TPFIND_NAME_BUFFER = uintptr type TPFIND_NAME_HEADER = uintptr type TPFIRMWARE_TYPE = uintptr type TPFLASHWINFO = uintptr type TPFLOAT = uintptr type TPFLOAT128 = uintptr type TPFLS_CALLBACK_FUNCTION = uintptr type TPFNCALLBACK = uintptr type TPFNCANSHAREFOLDERW = uintptr type TPFNGETPROFILEPATHA = uintptr type TPFNGETPROFILEPATHW = uintptr type TPFNPROCESSPOLICIESA = uintptr type TPFNPROCESSPOLICIESW = uintptr type TPFNPROPSHEETCALLBACK = uintptr type TPFNRECONCILEPROFILEA = uintptr type TPFNRECONCILEPROFILEW = uintptr type TPFNSHOWSHAREFOLDERUIW = uintptr type TPFN_CANCEL_ASYNC_RETRIEVAL_FUNC = uintptr type TPFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK = uintptr type TPFN_CERT_CREATE_CONTEXT_SORT_FUNC = uintptr type TPFN_CERT_DLL_OPEN_STORE_PROV_FUNC = uintptr type TPFN_CERT_ENUM_PHYSICAL_STORE = uintptr type TPFN_CERT_ENUM_SYSTEM_STORE = uintptr type TPFN_CERT_ENUM_SYSTEM_STORE_LOCATION = uintptr type TPFN_CERT_IS_WEAK_HASH = uintptr type TPFN_CERT_SERVER_OCSP_RESPONSE_UPDATE_CALLBACK = uintptr type TPFN_CERT_STORE_PROV_CLOSE = uintptr type TPFN_CERT_STORE_PROV_CONTROL = uintptr type TPFN_CERT_STORE_PROV_DELETE_CERT = uintptr type TPFN_CERT_STORE_PROV_DELETE_CRL = uintptr type TPFN_CERT_STORE_PROV_DELETE_CTL = uintptr type TPFN_CERT_STORE_PROV_FIND_CERT = uintptr type TPFN_CERT_STORE_PROV_FIND_CRL = uintptr type TPFN_CERT_STORE_PROV_FIND_CTL = uintptr type TPFN_CERT_STORE_PROV_FREE_FIND_CERT = uintptr type TPFN_CERT_STORE_PROV_FREE_FIND_CRL = uintptr type TPFN_CERT_STORE_PROV_FREE_FIND_CTL = uintptr type TPFN_CERT_STORE_PROV_GET_CERT_PROPERTY = uintptr type TPFN_CERT_STORE_PROV_GET_CRL_PROPERTY = uintptr type TPFN_CERT_STORE_PROV_GET_CTL_PROPERTY = uintptr type TPFN_CERT_STORE_PROV_READ_CERT = uintptr type TPFN_CERT_STORE_PROV_READ_CRL = uintptr type TPFN_CERT_STORE_PROV_READ_CTL = uintptr type TPFN_CERT_STORE_PROV_SET_CERT_PROPERTY = uintptr type TPFN_CERT_STORE_PROV_SET_CRL_PROPERTY = uintptr type TPFN_CERT_STORE_PROV_SET_CTL_PROPERTY = uintptr type TPFN_CERT_STORE_PROV_WRITE_CERT = uintptr type TPFN_CERT_STORE_PROV_WRITE_CRL = uintptr type TPFN_CERT_STORE_PROV_WRITE_CTL = uintptr type TPFN_CMSG_ALLOC = uintptr type TPFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY = uintptr type TPFN_CMSG_CNG_IMPORT_KEY_AGREE = uintptr type TPFN_CMSG_CNG_IMPORT_KEY_TRANS = uintptr type TPFN_CMSG_EXPORT_ENCRYPT_KEY = uintptr type TPFN_CMSG_EXPORT_KEY_AGREE = uintptr type TPFN_CMSG_EXPORT_KEY_TRANS = uintptr type TPFN_CMSG_EXPORT_MAIL_LIST = uintptr type TPFN_CMSG_FREE = uintptr type TPFN_CMSG_GEN_CONTENT_ENCRYPT_KEY = uintptr type TPFN_CMSG_GEN_ENCRYPT_KEY = uintptr type TPFN_CMSG_IMPORT_ENCRYPT_KEY = uintptr type TPFN_CMSG_IMPORT_KEY_AGREE = uintptr type TPFN_CMSG_IMPORT_KEY_TRANS = uintptr type TPFN_CMSG_IMPORT_MAIL_LIST = uintptr type TPFN_CMSG_STREAM_OUTPUT = uintptr type TPFN_CRYPT_ALLOC = uintptr type TPFN_CRYPT_ASYNC_PARAM_FREE_FUNC = uintptr type TPFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC = uintptr type TPFN_CRYPT_CANCEL_RETRIEVAL = uintptr type TPFN_CRYPT_ENUM_KEYID_PROP = uintptr type TPFN_CRYPT_ENUM_OID_FUNC = uintptr type TPFN_CRYPT_ENUM_OID_INFO = uintptr type TPFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC = uintptr type TPFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_FROM_BCRYPT_HANDLE_FUNC = uintptr type TPFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC = uintptr type TPFN_CRYPT_FREE = uintptr type TPFN_CRYPT_GET_SIGNER_CERTIFICATE = uintptr type TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH = uintptr type TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE = uintptr type TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER = uintptr type TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD = uintptr type TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET = uintptr type TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE = uintptr type TPFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE = uintptr type TPFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC = uintptr type TPFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC = uintptr type TPFN_EXPORT_PRIV_KEY_FUNC = uintptr type TPFN_FREE_ENCODED_OBJECT_FUNC = uintptr type TPFN_IMPORT_PRIV_KEY_FUNC = uintptr type TPFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC = uintptr type TPFN_NCRYPT_ALLOC = uintptr type TPFN_NCRYPT_FREE = uintptr type TPFN_RPCNOTIFICATION_ROUTINE = uintptr type TPFN_SC_NOTIFY_CALLBACK = uintptr type TPFOCUS_EVENT_RECORD = uintptr type TPFONTSIGNATURE = uintptr type TPFORMAT_EX_PARAMETERS = uintptr type TPFORMAT_PARAMETERS = uintptr type TPFORMAT_STRING = uintptr type TPFORM_INFO_1 = uintptr type TPFORM_INFO_1A = uintptr type TPFORM_INFO_1W = uintptr type TPFORM_INFO_2 = uintptr type TPFORM_INFO_2A = uintptr type TPFORM_INFO_2W = uintptr type TPFPO_DATA = uintptr type TPFSCTL_QUERY_FAT_BPB_BUFFER = uintptr type TPFULL_PTR_TO_REFID_ELEMENT = uintptr type TPFULL_PTR_XLAT_TABLES = uintptr type TPGENERIC_BINDING_INFO = uintptr type TPGENERIC_BINDING_ROUTINE_PAIR = uintptr type TPGENERIC_MAPPING = uintptr type TPGESTURECONFIG = uintptr type TPGESTUREINFO = uintptr type TPGESTURENOTIFYSTRUCT = uintptr type TPGETVERSIONINPARAMS = uintptr type TPGET_CHANGER_PARAMETERS = uintptr type TPGET_LENGTH_INFORMATION = uintptr type TPGET_MEDIA_TYPES = uintptr type TPGET_MODULE_HANDLE_EXA = uintptr type TPGET_MODULE_HANDLE_EXW = uintptr type TPGET_SYSTEM_WOW64_DIRECTORY_A = uintptr type TPGET_SYSTEM_WOW64_DIRECTORY_W = uintptr type TPGET_VIRTUAL_DISK_INFO = uintptr type TPGLYPHMETRICSFLOAT = uintptr type TPGLYPHSET = uintptr type TPGRADIENT_RECT = uintptr type TPGRADIENT_TRIANGLE = uintptr type TPGROUP_AFFINITY = uintptr type TPGROUP_RELATIONSHIP = uintptr type TPGUITHREADINFO = uintptr type TPHALF_PTR = uintptr type TPHANDLE = uintptr type TPHANDLER_ROUTINE = uintptr type TPHANDLETABLE = uintptr type TPHARDWAREHOOKSTRUCT = uintptr type TPHARDWAREINPUT = uintptr type TPHARDWARE_COUNTER_DATA = uintptr type TPHARDWARE_COUNTER_TYPE = uintptr type TPHCRYPTASYNC = uintptr type TPHDEVNOTIFY = uintptr type TPHEAP_SUMMARY = uintptr type TPHELPWININFO = uintptr type TPHELPWININFOA = uintptr type TPHELPWININFOW = uintptr type TPHISTOGRAM_BUCKET = uintptr type TPHKEY = uintptr type TPHMAC_INFO = uintptr type TPHOSTENT = uintptr type TPHPOWERNOTIFY = uintptr type TPHSZPAIR = uintptr type TPHTTPSPolicyCallbackData = uintptr type TPICONINFO = uintptr type TPICONINFOEX = uintptr type TPICONINFOEXA = uintptr type TPICONINFOEXW = uintptr type TPICONMETRICS = uintptr type TPICONMETRICSA = uintptr type TPICONMETRICSW = uintptr type TPIDEREGS = uintptr type TPIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = uintptr type TPIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = uintptr type TPIMAGE_ARCHITECTURE_ENTRY = uintptr type TPIMAGE_ARCHITECTURE_HEADER = uintptr type TPIMAGE_ARCHIVE_MEMBER_HEADER = uintptr type TPIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = uintptr type TPIMAGE_ARM_RUNTIME_FUNCTION_ENTRY = uintptr type TPIMAGE_AUX_SYMBOL = uintptr type TPIMAGE_AUX_SYMBOL_EX = uintptr type TPIMAGE_AUX_SYMBOL_TOKEN_DEF = uintptr type TPIMAGE_BASE_RELOCATION = uintptr type TPIMAGE_BOUND_FORWARDER_REF = uintptr type TPIMAGE_BOUND_IMPORT_DESCRIPTOR = uintptr type TPIMAGE_CE_RUNTIME_FUNCTION_ENTRY = uintptr type TPIMAGE_COFF_SYMBOLS_HEADER = uintptr type TPIMAGE_COR20_HEADER = uintptr type TPIMAGE_DATA_DIRECTORY = uintptr type TPIMAGE_DEBUG_DIRECTORY = uintptr type TPIMAGE_DEBUG_MISC = uintptr type TPIMAGE_DELAYLOAD_DESCRIPTOR = uintptr type TPIMAGE_DOS_HEADER = uintptr type TPIMAGE_EXPORT_DIRECTORY = uintptr type TPIMAGE_FILE_HEADER = uintptr type TPIMAGE_FUNCTION_ENTRY = uintptr type TPIMAGE_FUNCTION_ENTRY64 = uintptr type TPIMAGE_IA64_RUNTIME_FUNCTION_ENTRY = uintptr type TPIMAGE_IMPORT_BY_NAME = uintptr type TPIMAGE_IMPORT_DESCRIPTOR = uintptr type TPIMAGE_LINENUMBER = uintptr type TPIMAGE_LOAD_CONFIG_DIRECTORY = uintptr type TPIMAGE_LOAD_CONFIG_DIRECTORY32 = uintptr type TPIMAGE_LOAD_CONFIG_DIRECTORY64 = uintptr type TPIMAGE_NT_HEADERS = uintptr type TPIMAGE_NT_HEADERS32 = uintptr type TPIMAGE_NT_HEADERS64 = uintptr type TPIMAGE_OPTIONAL_HEADER = uintptr type TPIMAGE_OPTIONAL_HEADER32 = uintptr type TPIMAGE_OPTIONAL_HEADER64 = uintptr type TPIMAGE_OS2_HEADER = uintptr type TPIMAGE_RELOCATION = uintptr type TPIMAGE_RESOURCE_DATA_ENTRY = uintptr type TPIMAGE_RESOURCE_DIRECTORY = uintptr type TPIMAGE_RESOURCE_DIRECTORY_ENTRY = uintptr type TPIMAGE_RESOURCE_DIRECTORY_STRING = uintptr type TPIMAGE_RESOURCE_DIR_STRING_U = uintptr type TPIMAGE_ROM_HEADERS = uintptr type TPIMAGE_ROM_OPTIONAL_HEADER = uintptr type TPIMAGE_RUNTIME_FUNCTION_ENTRY = uintptr type TPIMAGE_SECTION_HEADER = uintptr type TPIMAGE_SEPARATE_DEBUG_HEADER = uintptr type TPIMAGE_SYMBOL = uintptr type TPIMAGE_SYMBOL_EX = uintptr type TPIMAGE_THUNK_DATA = uintptr type TPIMAGE_THUNK_DATA32 = uintptr type TPIMAGE_THUNK_DATA64 = uintptr type TPIMAGE_TLS_CALLBACK = uintptr type TPIMAGE_TLS_DIRECTORY = uintptr type TPIMAGE_TLS_DIRECTORY32 = uintptr type TPIMAGE_TLS_DIRECTORY64 = uintptr type TPIMAGE_VXD_HEADER = uintptr type TPIMECHARPOSITION = uintptr type TPIMEMENUITEMINFO = uintptr type TPIMEMENUITEMINFOA = uintptr type TPIMEMENUITEMINFOW = uintptr type TPINIT_ONCE = uintptr type TPINIT_ONCE_FN = uintptr type TPINPUT = uintptr type TPINPUT_INJECTION_VALUE = uintptr type TPINPUT_RECORD = uintptr type TPINT = uintptr type TPINT16 = uintptr type TPINT32 = uintptr type TPINT64 = uintptr type TPINT8 = uintptr type TPINT_PTR = uintptr type TPIN_ADDR = uintptr type TPIO_COUNTERS = uintptr type TPIP_MREQ = uintptr type TPISECURITY_DESCRIPTOR = uintptr type TPISECURITY_DESCRIPTOR_RELATIVE = uintptr type TPISID = uintptr type TPIXELFORMATDESCRIPTOR = struct { FnSize TWORD FnVersion TWORD FdwFlags TDWORD FiPixelType TBYTE FcColorBits TBYTE FcRedBits TBYTE FcRedShift TBYTE FcGreenBits TBYTE FcGreenShift TBYTE FcBlueBits TBYTE FcBlueShift TBYTE FcAlphaBits TBYTE FcAlphaShift TBYTE FcAccumBits TBYTE FcAccumRedBits TBYTE FcAccumGreenBits TBYTE FcAccumBlueBits TBYTE FcAccumAlphaBits TBYTE FcDepthBits TBYTE FcStencilBits TBYTE FcAuxBuffers TBYTE FiLayerType TBYTE FbReserved TBYTE FdwLayerMask TDWORD FdwVisibleMask TDWORD FdwDamageMask TDWORD } type TPI_FLAGS = int32 type TPJOBOBJECT_ASSOCIATE_COMPLETION_PORT = uintptr type TPJOBOBJECT_BASIC_ACCOUNTING_INFORMATION = uintptr type TPJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION = uintptr type TPJOBOBJECT_BASIC_LIMIT_INFORMATION = uintptr type TPJOBOBJECT_BASIC_PROCESS_ID_LIST = uintptr type TPJOBOBJECT_BASIC_UI_RESTRICTIONS = uintptr type TPJOBOBJECT_CPU_RATE_CONTROL_INFORMATION = uintptr type TPJOBOBJECT_END_OF_JOB_TIME_INFORMATION = uintptr type TPJOBOBJECT_EXTENDED_LIMIT_INFORMATION = uintptr type TPJOBOBJECT_JOBSET_INFORMATION = uintptr type TPJOBOBJECT_LIMIT_VIOLATION_INFORMATION = uintptr type TPJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION = uintptr type TPJOBOBJECT_SECURITY_LIMIT_INFORMATION = uintptr type TPJOB_INFO_1 = uintptr type TPJOB_INFO_1A = uintptr type TPJOB_INFO_1W = uintptr type TPJOB_INFO_2 = uintptr type TPJOB_INFO_2A = uintptr type TPJOB_INFO_2W = uintptr type TPJOB_INFO_3 = uintptr type TPJOB_SET_ARRAY = uintptr type TPJOYCAPS = uintptr type TPJOYCAPS2 = uintptr type TPJOYCAPS2A = uintptr type TPJOYCAPS2W = uintptr type TPJOYCAPSA = uintptr type TPJOYCAPSW = uintptr type TPJOYINFO = uintptr type TPJOYINFOEX = uintptr type TPKAFFINITY = uintptr type TPKBDLLHOOKSTRUCT = uintptr type TPKCRM_MARSHAL_HEADER = uintptr type TPKCRM_PROTOCOL_BLOB = uintptr type TPKCRM_TRANSACTION_BLOB = uintptr type TPKCS12_PBES2_EXPORT_PARAMS = struct { FdwSize TDWORD FhNcryptDescriptor TPVOID FpwszPbes2Alg TLPWSTR } type TPKEYBDINPUT = uintptr type TPKEY_EVENT_RECORD = uintptr type TPKEY_TYPE_SUBTYPE = uintptr type TPKSPIN_LOCK = uintptr type TPKTMOBJECT_CURSOR = uintptr type TPKTMOBJECT_TYPE = uintptr type TPLANA_ENUM = uintptr type TPLARGE_INTEGER = uintptr type TPLASTINPUTINFO = uintptr type TPLAYERPLANEDESCRIPTOR = uintptr type TPLCID = uintptr type TPLDT_ENTRY = uintptr type TPLINGER = uintptr type TPLINKSRCDESCRIPTOR = uintptr type TPLIST_ENTRY = uintptr type TPLIST_ENTRY32 = uintptr type TPLIST_ENTRY64 = uintptr type TPLOCALESIGNATURE = uintptr type TPLOGBRUSH = uintptr type TPLOGBRUSH32 = uintptr type TPLOGFONT = uintptr type TPLOGFONTA = uintptr type TPLOGFONTW = uintptr type TPLOGPALETTE = uintptr type TPLOGPEN = uintptr type TPLONG = uintptr type TPLONG32 = uintptr type TPLONG64 = uintptr type TPLONGLONG = uintptr type TPLONG_PTR = uintptr type TPLOOKUP_STREAM_FROM_CLUSTER_ENTRY = uintptr type TPLOOKUP_STREAM_FROM_CLUSTER_INPUT = uintptr type TPLOOKUP_STREAM_FROM_CLUSTER_OUTPUT = uintptr type TPLUID = uintptr type TPLUID_AND_ATTRIBUTES = uintptr type TPLUID_AND_ATTRIBUTES_ARRAY = uintptr type TPM128A = uintptr type TPMANDATORY_LEVEL = uintptr type TPMARK_HANDLE_INFO = uintptr type TPMCI_ANIM_OPEN_PARMS = uintptr type TPMCI_ANIM_OPEN_PARMSA = uintptr type TPMCI_ANIM_OPEN_PARMSW = uintptr type TPMCI_ANIM_PLAY_PARMS = uintptr type TPMCI_ANIM_RECT_PARMS = uintptr type TPMCI_ANIM_STEP_PARMS = uintptr type TPMCI_ANIM_UPDATE_PARMS = uintptr type TPMCI_ANIM_WINDOW_PARMS = uintptr type TPMCI_ANIM_WINDOW_PARMSA = uintptr type TPMCI_ANIM_WINDOW_PARMSW = uintptr type TPMCI_BREAK_PARMS = uintptr type TPMCI_GENERIC_PARMS = uintptr type TPMCI_GETDEVCAPS_PARMS = uintptr type TPMCI_LOAD_PARMS = uintptr type TPMCI_LOAD_PARMSA = uintptr type TPMCI_LOAD_PARMSW = uintptr type TPMCI_OPEN_PARMS = uintptr type TPMCI_OPEN_PARMSA = uintptr type TPMCI_OPEN_PARMSW = uintptr type TPMCI_OVLY_LOAD_PARMS = uintptr type TPMCI_OVLY_LOAD_PARMSA = uintptr type TPMCI_OVLY_LOAD_PARMSW = uintptr type TPMCI_OVLY_OPEN_PARMS = uintptr type TPMCI_OVLY_OPEN_PARMSA = uintptr type TPMCI_OVLY_OPEN_PARMSW = uintptr type TPMCI_OVLY_RECT_PARMS = uintptr type TPMCI_OVLY_SAVE_PARMS = uintptr type TPMCI_OVLY_SAVE_PARMSA = uintptr type TPMCI_OVLY_SAVE_PARMSW = uintptr type TPMCI_OVLY_WINDOW_PARMS = uintptr type TPMCI_OVLY_WINDOW_PARMSA = uintptr type TPMCI_OVLY_WINDOW_PARMSW = uintptr type TPMCI_PLAY_PARMS = uintptr type TPMCI_SAVE_PARMS = uintptr type TPMCI_SAVE_PARMSA = uintptr type TPMCI_SAVE_PARMSW = uintptr type TPMCI_SEEK_PARMS = uintptr type TPMCI_SEQ_SET_PARMS = uintptr type TPMCI_SET_PARMS = uintptr type TPMCI_STATUS_PARMS = uintptr type TPMCI_SYSINFO_PARMS = uintptr type TPMCI_SYSINFO_PARMSA = uintptr type TPMCI_SYSINFO_PARMSW = uintptr type TPMCI_VD_ESCAPE_PARMS = uintptr type TPMCI_VD_ESCAPE_PARMSA = uintptr type TPMCI_VD_ESCAPE_PARMSW = uintptr type TPMCI_VD_PLAY_PARMS = uintptr type TPMCI_VD_STEP_PARMS = uintptr type TPMCI_WAVE_DELETE_PARMS = uintptr type TPMCI_WAVE_OPEN_PARMS = uintptr type TPMCI_WAVE_OPEN_PARMSA = uintptr type TPMCI_WAVE_OPEN_PARMSW = uintptr type TPMCI_WAVE_SET_PARMS = uintptr type TPMDINEXTMENU = uintptr type TPMEASUREITEMSTRUCT = uintptr type TPMEDIA_TYPE = uintptr type TPMEMORY_BASIC_INFORMATION = uintptr type TPMEMORY_BASIC_INFORMATION32 = uintptr type TPMEMORY_BASIC_INFORMATION64 = uintptr type TPMEMORY_PRIORITY_INFORMATION = uintptr type TPMEM_ADDRESS_REQUIREMENTS = uintptr type TPMEM_EXTENDED_PARAMETER = uintptr type TPMEM_EXTENDED_PARAMETER_TYPE = uintptr type TPMEM_SECTION_EXTENDED_PARAMETER_TYPE = uintptr type TPMENUBARINFO = uintptr type TPMENUGETOBJECTINFO = uintptr type TPMENUITEMTEMPLATE = uintptr type TPMENUITEMTEMPLATEHEADER = uintptr type TPMENU_EVENT_RECORD = uintptr type TPMERGE_VIRTUAL_DISK_PARAMETERS = uintptr type TPMESSAGE_RESOURCE_BLOCK = uintptr type TPMESSAGE_RESOURCE_DATA = uintptr type TPMESSAGE_RESOURCE_ENTRY = uintptr type TPMETAHEADER = uintptr type TPMETARECORD = uintptr type TPMFT_ENUM_DATA = uintptr type TPMIDIHDR = uintptr type TPMIDIINCAPS = uintptr type TPMIDIINCAPS2 = uintptr type TPMIDIINCAPS2A = uintptr type TPMIDIINCAPS2W = uintptr type TPMIDIINCAPSA = uintptr type TPMIDIINCAPSW = uintptr type TPMIDIOUTCAPS = uintptr type TPMIDIOUTCAPS2 = uintptr type TPMIDIOUTCAPS2A = uintptr type TPMIDIOUTCAPS2W = uintptr type TPMIDIOUTCAPSA = uintptr type TPMIDIOUTCAPSW = uintptr type TPMIDL_SERVER_INFO = uintptr type TPMIDL_STUBLESS_PROXY_INFO = uintptr type TPMIDL_STUB_DESC = uintptr type TPMIDL_STUB_MESSAGE = uintptr type TPMIDL_SYNTAX_INFO = uintptr type TPMIDL_XMIT_TYPE = uintptr type TPMINIMIZEDMETRICS = uintptr type TPMINMAXINFO = uintptr type TPMIRROR_VIRTUAL_DISK_PARAMETERS = uintptr type TPMIXERCAPS = uintptr type TPMIXERCAPS2 = uintptr type TPMIXERCAPS2A = uintptr type TPMIXERCAPS2W = uintptr type TPMIXERCAPSA = uintptr type TPMIXERCAPSW = uintptr type TPMIXERCONTROL = uintptr type TPMIXERCONTROLA = uintptr type TPMIXERCONTROLDETAILS = uintptr type TPMIXERCONTROLDETAILS_BOOLEAN = uintptr type TPMIXERCONTROLDETAILS_LISTTEXT = uintptr type TPMIXERCONTROLDETAILS_LISTTEXTA = uintptr type TPMIXERCONTROLDETAILS_LISTTEXTW = uintptr type TPMIXERCONTROLDETAILS_SIGNED = uintptr type TPMIXERCONTROLDETAILS_UNSIGNED = uintptr type TPMIXERCONTROLW = uintptr type TPMIXERLINE = uintptr type TPMIXERLINEA = uintptr type TPMIXERLINECONTROLS = uintptr type TPMIXERLINECONTROLSA = uintptr type TPMIXERLINECONTROLSW = uintptr type TPMIXERLINEW = uintptr type TPMMCKINFO = uintptr type TPMMIOINFO = uintptr type TPMMTIME = uintptr type TPMODEMDEVCAPS = uintptr type TPMODEMSETTINGS = uintptr type TPMODIFY_VHDSET_FLAG = uintptr type TPMODIFY_VHDSET_PARAMETERS = uintptr type TPMODIFY_VHDSET_VERSION = uintptr type TPMONCBSTRUCT = uintptr type TPMONCONVSTRUCT = uintptr type TPMONERRSTRUCT = uintptr type TPMONHSZSTRUCT = uintptr type TPMONHSZSTRUCTA = uintptr type TPMONHSZSTRUCTW = uintptr type TPMONITOR_DISPLAY_STATE = uintptr type TPMONITOR_INFO_1 = uintptr type TPMONITOR_INFO_1A = uintptr type TPMONITOR_INFO_1W = uintptr type TPMONITOR_INFO_2 = uintptr type TPMONITOR_INFO_2A = uintptr type TPMONITOR_INFO_2W = uintptr type TPMONLINKSTRUCT = uintptr type TPMONMSGSTRUCT = uintptr type TPMOUSEHOOKSTRUCT = uintptr type TPMOUSEHOOKSTRUCTEX = uintptr type TPMOUSEINPUT = uintptr type TPMOUSEMOVEPOINT = uintptr type TPMOUSE_EVENT_RECORD = uintptr type TPMOVE_FILE_DATA = uintptr type TPMOVE_FILE_RECORD_DATA = uintptr type TPMPARAMS = TTPMPARAMS type TPMSG = uintptr type TPMSGBOXPARAMS = uintptr type TPMSGBOXPARAMSA = uintptr type TPMSGBOXPARAMSW = uintptr type TPMSLLHOOKSTRUCT = uintptr type TPMULTIKEYHELP = uintptr type TPMULTIKEYHELPA = uintptr type TPMULTIKEYHELPW = uintptr const TPM_BOTTOMALIGN = 32 const TPM_CENTERALIGN = 4 const TPM_HORIZONTAL = 0 const TPM_HORNEGANIMATION = 2048 const TPM_HORPOSANIMATION = 1024 const TPM_LAYOUTRTL = 32768 const TPM_LEFTALIGN = 0 const TPM_LEFTBUTTON = 0 const TPM_NOANIMATION = 16384 const TPM_NONOTIFY = 128 const TPM_RECURSE = 1 const TPM_RETURNCMD = 256 const TPM_RIGHTALIGN = 8 const TPM_RIGHTBUTTON = 2 const TPM_TOPALIGN = 0 const TPM_VCENTERALIGN = 16 const TPM_VERNEGANIMATION = 8192 const TPM_VERPOSANIMATION = 4096 const TPM_VERTICAL = 64 const TPM_WORKAREA = 65536 type TPNAME_BUFFER = uintptr type TPNCB = uintptr type TPNCRYPT_CIPHER_PADDING_INFO = uintptr type TPNCRYPT_KEY_BLOB_HEADER = uintptr type TPNC_ADDRESS = uintptr type TPNCryptBuffer = uintptr type TPNCryptBufferDesc = uintptr type TPNDR_ASYNC_MESSAGE = uintptr type TPNDR_CORRELATION_INFO = uintptr type TPNEWTEXTMETRIC = uintptr type TPNEWTEXTMETRICA = uintptr type TPNEWTEXTMETRICW = uintptr type TPNONCLIENTMETRICS = uintptr type TPNONCLIENTMETRICSA = uintptr type TPNONCLIENTMETRICSW = uintptr type TPNON_PAGED_DEBUG_INFO = uintptr type TPNOTIFYICONDATA = uintptr type TPNOTIFYICONDATAA = uintptr type TPNOTIFYICONDATAW = uintptr type TPNOTIFYICONIDENTIFIER = uintptr type TPNOTIFY_USER_POWER_SETTING = uintptr type TPNTFS_EXTENDED_VOLUME_DATA = uintptr type TPNTFS_FILE_RECORD_INPUT_BUFFER = uintptr type TPNTFS_FILE_RECORD_OUTPUT_BUFFER = uintptr type TPNTFS_STATISTICS = uintptr type TPNTFS_VOLUME_DATA_BUFFER = uintptr type TPNTSTATUS = uintptr type TPNT_TIB = uintptr type TPNT_TIB32 = uintptr type TPNT_TIB64 = uintptr type TPNUMA_NODE_RELATIONSHIP = uintptr type TPNZCH = uintptr type TPNZTCH = uintptr type TPNZWCH = uintptr type TPOBJECTDESCRIPTOR = uintptr type TPOBJECT_TYPE_LIST = uintptr type TPOCSP_BASIC_RESPONSE_ENTRY = uintptr type TPOCSP_BASIC_RESPONSE_INFO = uintptr type TPOCSP_BASIC_REVOKED_INFO = uintptr type TPOCSP_BASIC_SIGNED_RESPONSE_INFO = uintptr type TPOCSP_CERT_ID = uintptr type TPOCSP_REQUEST_ENTRY = uintptr type TPOCSP_REQUEST_INFO = uintptr type TPOCSP_RESPONSE_INFO = uintptr type TPOCSP_SIGNATURE_INFO = uintptr type TPOCSP_SIGNED_REQUEST_INFO = uintptr type TPOFSTRUCT = uintptr type TPOINT = struct { Fx TLONG Fy TLONG } type TPOINTER_BUTTON_CHANGE_TYPE = int32 type TPOINTER_DEVICE_CURSOR_INFO = struct { FcursorId TUINT32 Fcursor TPOINTER_DEVICE_CURSOR_TYPE } type TPOINTER_DEVICE_CURSOR_TYPE = uint32 type TPOINTER_DEVICE_INFO = struct { FdisplayOrientation TDWORD Fdevice THANDLE FpointerDeviceType TPOINTER_DEVICE_TYPE Fmonitor THMONITOR FstartingCursorId TULONG FmaxActiveContacts TUSHORT FproductString [520]TWCHAR } type TPOINTER_DEVICE_PROPERTY = struct { FlogicalMin TINT32 FlogicalMax TINT32 FphysicalMin TINT32 FphysicalMax TINT32 Funit TUINT32 FunitExponent TUINT32 FusagePageId TUSHORT FusageId TUSHORT } type TPOINTER_DEVICE_TYPE = uint32 type TPOINTER_FEEDBACK_MODE = int32 type TPOINTER_FLAGS = uint32 type TPOINTER_INPUT_TYPE = uint32 type TPOINTFLOAT = struct { Fx TFLOAT Fy TFLOAT } type TPOINTFX = struct { Fx TFIXED Fy TFIXED } type TPOINTL = struct { Fx TLONG Fy TLONG } type TPOINTS = struct { Fx TSHORT Fy TSHORT } type TPOLEUPDATE = uintptr type TPOLYTEXT = struct { Fx int32 Fy int32 Fn TUINT Flpstr TLPCSTR FuiFlags TUINT Frcl TRECT Fpdx uintptr } type TPOLYTEXTA = struct { Fx int32 Fy int32 Fn TUINT Flpstr TLPCSTR FuiFlags TUINT Frcl TRECT Fpdx uintptr } type TPOLYTEXTW = struct { Fx int32 Fy int32 Fn TUINT Flpstr TLPCWSTR FuiFlags TUINT Frcl TRECT Fpdx uintptr } type TPOPENCARDNAME = uintptr type TPOPENCARDNAMEA = uintptr type TPOPENCARDNAMEW = uintptr type TPOPENCARDNAME_EX = uintptr type TPOPENCARDNAME_EXA = uintptr type TPOPENCARDNAME_EXW = uintptr type TPOPENCARD_SEARCH_CRITERIA = uintptr type TPOPENCARD_SEARCH_CRITERIAA = uintptr type TPOPENCARD_SEARCH_CRITERIAW = uintptr type TPOPEN_PRINTER_PROPS_INFO = uintptr type TPOPEN_PRINTER_PROPS_INFOA = uintptr type TPOPEN_PRINTER_PROPS_INFOW = uintptr type TPOPEN_VIRTUAL_DISK_PARAMETERS = uintptr type TPOPERATION_END_PARAMETERS = uintptr type TPOPERATION_START_PARAMETERS = uintptr type TPORT_INFO_1 = struct { FpName TLPSTR } type TPORT_INFO_1A = struct { FpName TLPSTR } type TPORT_INFO_1W = struct { FpName TLPWSTR } type TPORT_INFO_2 = struct { FpPortName TLPSTR FpMonitorName TLPSTR FpDescription TLPSTR FfPortType TDWORD FReserved TDWORD } type TPORT_INFO_2A = struct { FpPortName TLPSTR FpMonitorName TLPSTR FpDescription TLPSTR FfPortType TDWORD FReserved TDWORD } type TPORT_INFO_2W = struct { FpPortName TLPWSTR FpMonitorName TLPWSTR FpDescription TLPWSTR FfPortType TDWORD FReserved TDWORD } type TPORT_INFO_3 = struct { FdwStatus TDWORD FpszStatus TLPSTR FdwSeverity TDWORD } type TPORT_INFO_3A = struct { FdwStatus TDWORD FpszStatus TLPSTR FdwSeverity TDWORD } type TPORT_INFO_3W = struct { FdwStatus TDWORD FpszStatus TLPWSTR FdwSeverity TDWORD } type TPOSVERSIONINFO = uintptr type TPOSVERSIONINFOA = uintptr type TPOSVERSIONINFOEX = uintptr type TPOSVERSIONINFOEXA = uintptr type TPOSVERSIONINFOEXW = uintptr type TPOSVERSIONINFOW = uintptr type TPOUTLINETEXTMETRIC = uintptr type TPOUTLINETEXTMETRICA = uintptr type TPOUTLINETEXTMETRICW = uintptr type TPOWERBROADCAST_SETTING = struct { FPowerSetting TGUID FDataLength TDWORD FData [1]TUCHAR } type TPOWER_ACTION = int32 type TPOWER_ACTION_POLICY = struct { FAction TPOWER_ACTION FFlags TDWORD FEventCode TDWORD } type TPOWER_IDLE_RESILIENCY = struct { FCoalescingTimeout TDWORD FIdleResiliencyPeriod TDWORD } type TPOWER_INFORMATION_LEVEL = int32 type TPOWER_MONITOR_INVOCATION = struct { FOn TBOOLEAN FConsole TBOOLEAN FRequestReason TPOWER_MONITOR_REQUEST_REASON } type TPOWER_MONITOR_REQUEST_REASON = int32 type TPOWER_PLATFORM_INFORMATION = struct { FAoAc TBOOLEAN } type TPOWER_PLATFORM_ROLE = int32 type TPOWER_REQUEST_CONTEXT = struct { FVersion TULONG FFlags TDWORD FReason struct { FSimpleReasonString [0]TLPWSTR FDetailed struct { FLocalizedReasonModule THMODULE FLocalizedReasonId TULONG FReasonStringCount TULONG FReasonStrings uintptr } } } type TPOWER_REQUEST_TYPE = int32 type TPOWER_SESSION_CONNECT = struct { FConnected TBOOLEAN FConsole TBOOLEAN } type TPOWER_SESSION_RIT_STATE = struct { FActive TBOOLEAN FLastInputTime TDWORD } type TPOWER_SESSION_TIMEOUTS = struct { FInputTimeout TDWORD FDisplayTimeout TDWORD } type TPOWER_SESSION_WINLOGON = struct { FSessionId TDWORD FConsole TBOOLEAN FLocked TBOOLEAN } type TPOWER_USER_PRESENCE = struct { FUserPresence TPOWER_USER_PRESENCE_TYPE } type TPOWER_USER_PRESENCE_TYPE = int32 type TPPACKEDEVENTINFO = uintptr type TPPAINTSTRUCT = uintptr type TPPALETTEENTRY = uintptr type TPPARAM_OFFSETTABLE = uintptr type TPPARTITION_INFORMATION = uintptr type TPPARTITION_INFORMATION_EX = uintptr type TPPARTITION_INFORMATION_GPT = uintptr type TPPARTITION_INFORMATION_MBR = uintptr type TPPATHNAME_BUFFER = uintptr type TPPATTERN = uintptr type TPPCMWAVEFORMAT = uintptr type TPPELARRAY = uintptr type TPPERFORMANCE_DATA = uintptr type TPPERF_BIN = uintptr type TPPERF_COUNTER_BLOCK = uintptr type TPPERF_COUNTER_DEFINITION = uintptr type TPPERF_DATA_BLOCK = uintptr type TPPERF_INSTANCE_DEFINITION = uintptr type TPPERF_OBJECT_TYPE = uintptr type TPPERSISTENT_RESERVE_COMMAND = uintptr type TPPIXELFORMATDESCRIPTOR = uintptr type TPPKCS12_PBES2_EXPORT_PARAMS = uintptr type TPPLEX_READ_DATA_REQUEST = uintptr type TPPM_PERFSTATE_EVENT = struct { FState TDWORD FStatus TDWORD FLatency TDWORD FSpeed TDWORD FProcessor TDWORD } type TPPM_WMI_IDLE_STATE = struct { FLatency TDWORD FPower TDWORD FTimeCheck TDWORD FPromotePercent TBYTE FDemotePercent TBYTE FStateType TBYTE FReserved TBYTE FStateFlags TDWORD FContext TDWORD FIdleHandler TDWORD FReserved1 TDWORD } type TPPM_WMI_IDLE_STATES_EX = struct { FType TDWORD FCount TDWORD FTargetState TDWORD FOldState TDWORD FTargetProcessors TPVOID FState [1]TPPM_WMI_IDLE_STATE } type TPPM_WMI_LEGACY_PERFSTATE = struct { FFrequency TDWORD FFlags TDWORD FPercentFrequency TDWORD } type TPPOINT = uintptr type TPPOINTER_TYPE_INFO = uintptr type TPPOINTFLOAT = uintptr type TPPOINTL = uintptr type TPPOINTS = uintptr type TPPOLYTEXT = uintptr type TPPOLYTEXTA = uintptr type TPPOLYTEXTW = uintptr type TPPORT_INFO_1 = uintptr type TPPORT_INFO_1A = uintptr type TPPORT_INFO_1W = uintptr type TPPORT_INFO_2 = uintptr type TPPORT_INFO_2A = uintptr type TPPORT_INFO_2W = uintptr type TPPORT_INFO_3 = uintptr type TPPORT_INFO_3A = uintptr type TPPORT_INFO_3W = uintptr type TPPOWERBROADCAST_SETTING = uintptr type TPPOWER_ACTION = uintptr type TPPOWER_ACTION_POLICY = uintptr type TPPOWER_IDLE_RESILIENCY = uintptr type TPPOWER_MONITOR_INVOCATION = uintptr type TPPOWER_PLATFORM_INFORMATION = uintptr type TPPOWER_PLATFORM_ROLE = uintptr type TPPOWER_REQUEST_CONTEXT = uintptr type TPPOWER_REQUEST_TYPE = uintptr type TPPOWER_SESSION_CONNECT = uintptr type TPPOWER_SESSION_RIT_STATE = uintptr type TPPOWER_SESSION_TIMEOUTS = uintptr type TPPOWER_SESSION_WINLOGON = uintptr type TPPOWER_USER_PRESENCE = uintptr type TPPOWER_USER_PRESENCE_TYPE = uintptr type TPPPM_IDLESTATE_EVENT = uintptr type TPPPM_IDLE_ACCOUNTING = uintptr type TPPPM_IDLE_ACCOUNTING_EX = uintptr type TPPPM_IDLE_STATE_ACCOUNTING = uintptr type TPPPM_IDLE_STATE_ACCOUNTING_EX = uintptr type TPPPM_IDLE_STATE_BUCKET_EX = uintptr type TPPPM_PERFSTATE_DOMAIN_EVENT = uintptr type TPPPM_PERFSTATE_EVENT = uintptr type TPPPM_THERMALCHANGE_EVENT = uintptr type TPPPM_THERMAL_POLICY_EVENT = uintptr type TPPPM_WMI_IDLE_STATE = uintptr type TPPPM_WMI_IDLE_STATES = uintptr type TPPPM_WMI_IDLE_STATES_EX = uintptr type TPPPM_WMI_LEGACY_PERFSTATE = uintptr type TPPPM_WMI_PERF_STATE = uintptr type TPPPM_WMI_PERF_STATES = uintptr type TPPPM_WMI_PERF_STATES_EX = uintptr type TPPREVENT_MEDIA_REMOVAL = uintptr type TPPRINTER_CONNECTION_INFO_1 = uintptr type TPPRINTER_DEFAULTS = uintptr type TPPRINTER_DEFAULTSA = uintptr type TPPRINTER_DEFAULTSW = uintptr type TPPRINTER_ENUM_VALUES = uintptr type TPPRINTER_ENUM_VALUESA = uintptr type TPPRINTER_ENUM_VALUESW = uintptr type TPPRINTER_INFO_1 = uintptr type TPPRINTER_INFO_1A = uintptr type TPPRINTER_INFO_1W = uintptr type TPPRINTER_INFO_2 = uintptr type TPPRINTER_INFO_2A = uintptr type TPPRINTER_INFO_2W = uintptr type TPPRINTER_INFO_3 = uintptr type TPPRINTER_INFO_4 = uintptr type TPPRINTER_INFO_4A = uintptr type TPPRINTER_INFO_4W = uintptr type TPPRINTER_INFO_5 = uintptr type TPPRINTER_INFO_5A = uintptr type TPPRINTER_INFO_5W = uintptr type TPPRINTER_INFO_6 = uintptr type TPPRINTER_INFO_7 = uintptr type TPPRINTER_INFO_7A = uintptr type TPPRINTER_INFO_7W = uintptr type TPPRINTER_INFO_8 = uintptr type TPPRINTER_INFO_8A = uintptr type TPPRINTER_INFO_8W = uintptr type TPPRINTER_INFO_9 = uintptr type TPPRINTER_INFO_9A = uintptr type TPPRINTER_INFO_9W = uintptr type TPPRINTER_NOTIFY_INFO = uintptr type TPPRINTER_NOTIFY_INFO_DATA = uintptr type TPPRINTER_NOTIFY_OPTIONS = uintptr type TPPRINTER_NOTIFY_OPTIONS_TYPE = uintptr type TPPRINTER_OPTIONS = uintptr type TPPRINTPROCESSOR_CAPS_1 = uintptr type TPPRINTPROCESSOR_CAPS_2 = uintptr type TPPRINTPROCESSOR_INFO_1 = uintptr type TPPRINTPROCESSOR_INFO_1A = uintptr type TPPRINTPROCESSOR_INFO_1W = uintptr type TPPRIVILEGE_SET = uintptr type TPPROCESSOR_GROUP_INFO = uintptr type TPPROCESSOR_IDLESTATE_INFO = uintptr type TPPROCESSOR_IDLESTATE_POLICY = uintptr type TPPROCESSOR_NUMBER = uintptr type TPPROCESSOR_PERFSTATE_POLICY = uintptr type TPPROCESSOR_POWER_POLICY = uintptr type TPPROCESSOR_POWER_POLICY_INFO = uintptr type TPPROCESSOR_RELATIONSHIP = uintptr type TPPROCESS_DYNAMIC_EH_CONTINUATION_TARGET = uintptr type TPPROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION = uintptr type TPPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE = uintptr type TPPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION = uintptr type TPPROCESS_HEAP_ENTRY = uintptr type TPPROCESS_INFORMATION = uintptr type TPPROCESS_LEAP_SECOND_INFO = uintptr type TPPROCESS_MEMORY_EXHAUSTION_INFO = uintptr type TPPROCESS_MEMORY_EXHAUSTION_TYPE = uintptr type TPPROCESS_MITIGATION_ASLR_POLICY = uintptr type TPPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = uintptr type TPPROCESS_MITIGATION_CHILD_PROCESS_POLICY = uintptr type TPPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = uintptr type TPPROCESS_MITIGATION_DEP_POLICY = uintptr type TPPROCESS_MITIGATION_DYNAMIC_CODE_POLICY = uintptr type TPPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = uintptr type TPPROCESS_MITIGATION_FONT_DISABLE_POLICY = uintptr type TPPROCESS_MITIGATION_IMAGE_LOAD_POLICY = uintptr type TPPROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY = uintptr type TPPROCESS_MITIGATION_POLICY = uintptr type TPPROCESS_MITIGATION_REDIRECTION_TRUST_POLICY = uintptr type TPPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY = uintptr type TPPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = uintptr type TPPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = uintptr type TPPROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY = uintptr type TPPROCESS_MITIGATION_USER_SHADOW_STACK_POLICY = uintptr type TPPROCESS_POWER_THROTTLING_STATE = uintptr type TPPROC_THREAD_ATTRIBUTE_LIST = uintptr type TPPROTOENT = uintptr type TPPROVIDER = uintptr type TPPROVIDOR_INFO_1 = uintptr type TPPROVIDOR_INFO_1A = uintptr type TPPROVIDOR_INFO_1W = uintptr type TPPROVIDOR_INFO_2 = uintptr type TPPROVIDOR_INFO_2A = uintptr type TPPROVIDOR_INFO_2W = uintptr type TPPSFEATURE_CUSTPAPER = uintptr type TPPSFEATURE_OUTPUT = uintptr type TPPSINJECTDATA = uintptr type TPPVALUE = uintptr type TPPVALUEA = uintptr type TPPVALUEW = uintptr type TPQUERYACTCTXW_FUNC = uintptr type TPQUERYHANDLER = uintptr type TPQUERY_CHANGES_VIRTUAL_DISK_RANGE = uintptr type TPQUOTA_LIMITS = uintptr type TPQUOTA_LIMITS_EX = uintptr type TPRATE_QUOTA_LIMIT = uintptr type TPRAWHID = uintptr type TPRAWINPUT = uintptr type TPRAWINPUTDEVICE = uintptr type TPRAWINPUTDEVICELIST = uintptr type TPRAWINPUTHEADER = uintptr type TPRAWKEYBOARD = uintptr type TPRAWMOUSE = uintptr type TPREAD_ELEMENT_ADDRESS_INFO = uintptr type TPREAD_USN_JOURNAL_DATA = uintptr type TPREASON_CONTEXT = uintptr type TPREASSIGN_BLOCKS = uintptr type TPREASSIGN_BLOCKS_EX = uintptr type TPRECONVERTSTRING = uintptr type TPRECT = uintptr type TPRECTL = uintptr type TPREDIRECTION_DESCRIPTOR = uintptr type TPREDIRECTION_FUNCTION_DESCRIPTOR = uintptr type TPREGISTERCLASSNAMEW = uintptr type TPREGISTERWORD = uintptr type TPREGISTERWORDA = uintptr type TPREGISTERWORDW = uintptr type TPREMSECURITY_ATTRIBUTES = uintptr type TPREPARSE_GUID_DATA_BUFFER = uintptr type TPREQUEST_OPLOCK_INPUT_BUFFER = uintptr type TPREQUEST_OPLOCK_OUTPUT_BUFFER = uintptr type TPREQUEST_RAW_ENCRYPTED_DATA = uintptr type TPRESIZE_VIRTUAL_DISK_PARAMETERS = uintptr type TPRESOURCEMANAGER_BASIC_INFORMATION = uintptr type TPRESOURCEMANAGER_COMPLETION_INFORMATION = uintptr type TPRESUME_PERFORMANCE = uintptr type TPRETRIEVAL_POINTERS_BUFFER = uintptr type TPRETRIEVAL_POINTER_BASE = uintptr type TPREVENT_MEDIA_REMOVAL = struct { FPreventMediaRemoval TBOOLEAN } type TPRGBTRIPLE = uintptr type TPRGNDATA = uintptr type TPRGNDATAHEADER = uintptr type TPRID_DEVICE_INFO = uintptr type TPRID_DEVICE_INFO_HID = uintptr type TPRID_DEVICE_INFO_KEYBOARD = uintptr type TPRID_DEVICE_INFO_MOUSE = uintptr type TPRINTDLG = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FhDC THDC FFlags TDWORD FnFromPage TWORD FnToPage TWORD FnMinPage TWORD FnMaxPage TWORD FnCopies TWORD FhInstance THINSTANCE FlCustData TLPARAM FlpfnPrintHook TLPPRINTHOOKPROC FlpfnSetupHook TLPSETUPHOOKPROC FlpPrintTemplateName TLPCSTR FlpSetupTemplateName TLPCSTR FhPrintTemplate THGLOBAL FhSetupTemplate THGLOBAL } type TPRINTDLGA = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FhDC THDC FFlags TDWORD FnFromPage TWORD FnToPage TWORD FnMinPage TWORD FnMaxPage TWORD FnCopies TWORD FhInstance THINSTANCE FlCustData TLPARAM FlpfnPrintHook TLPPRINTHOOKPROC FlpfnSetupHook TLPSETUPHOOKPROC FlpPrintTemplateName TLPCSTR FlpSetupTemplateName TLPCSTR FhPrintTemplate THGLOBAL FhSetupTemplate THGLOBAL } type TPRINTDLGEX = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FhDC THDC FFlags TDWORD FFlags2 TDWORD FExclusionFlags TDWORD FnPageRanges TDWORD FnMaxPageRanges TDWORD FlpPageRanges TLPPRINTPAGERANGE FnMinPage TDWORD FnMaxPage TDWORD FnCopies TDWORD FhInstance THINSTANCE FlpPrintTemplateName TLPCSTR FlpCallback TLPUNKNOWN FnPropertyPages TDWORD FlphPropertyPages uintptr FnStartPage TDWORD FdwResultAction TDWORD } type TPRINTDLGEXA = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FhDC THDC FFlags TDWORD FFlags2 TDWORD FExclusionFlags TDWORD FnPageRanges TDWORD FnMaxPageRanges TDWORD FlpPageRanges TLPPRINTPAGERANGE FnMinPage TDWORD FnMaxPage TDWORD FnCopies TDWORD FhInstance THINSTANCE FlpPrintTemplateName TLPCSTR FlpCallback TLPUNKNOWN FnPropertyPages TDWORD FlphPropertyPages uintptr FnStartPage TDWORD FdwResultAction TDWORD } type TPRINTDLGEXW = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FhDC THDC FFlags TDWORD FFlags2 TDWORD FExclusionFlags TDWORD FnPageRanges TDWORD FnMaxPageRanges TDWORD FlpPageRanges TLPPRINTPAGERANGE FnMinPage TDWORD FnMaxPage TDWORD FnCopies TDWORD FhInstance THINSTANCE FlpPrintTemplateName TLPCWSTR FlpCallback TLPUNKNOWN FnPropertyPages TDWORD FlphPropertyPages uintptr FnStartPage TDWORD FdwResultAction TDWORD } type TPRINTDLGW = struct { FlStructSize TDWORD FhwndOwner THWND FhDevMode THGLOBAL FhDevNames THGLOBAL FhDC THDC FFlags TDWORD FnFromPage TWORD FnToPage TWORD FnMinPage TWORD FnMaxPage TWORD FnCopies TWORD FhInstance THINSTANCE FlCustData TLPARAM FlpfnPrintHook TLPPRINTHOOKPROC FlpfnSetupHook TLPSETUPHOOKPROC FlpPrintTemplateName TLPCWSTR FlpSetupTemplateName TLPCWSTR FhPrintTemplate THGLOBAL FhSetupTemplate THGLOBAL } type TPRINTEROP_FLAGS = uint16 type TPRINTER_CONNECTION_INFO_1 = struct { FdwFlags TDWORD FpszDriverName TLPTSTR } type TPRINTER_DEFAULTS = struct { FpDatatype TLPSTR FpDevMode TLPDEVMODEA FDesiredAccess TACCESS_MASK } type TPRINTER_DEFAULTSA = struct { FpDatatype TLPSTR FpDevMode TLPDEVMODEA FDesiredAccess TACCESS_MASK } type TPRINTER_DEFAULTSW = struct { FpDatatype TLPWSTR FpDevMode TLPDEVMODEW FDesiredAccess TACCESS_MASK } type TPRINTER_ENUM_VALUES = struct { FpValueName TLPSTR FcbValueName TDWORD FdwType TDWORD FpData TLPBYTE FcbData TDWORD } type TPRINTER_ENUM_VALUESA = struct { FpValueName TLPSTR FcbValueName TDWORD FdwType TDWORD FpData TLPBYTE FcbData TDWORD } type TPRINTER_ENUM_VALUESW = struct { FpValueName TLPWSTR FcbValueName TDWORD FdwType TDWORD FpData TLPBYTE FcbData TDWORD } type TPRINTER_INFO_1 = struct { FFlags TDWORD FpDescription TLPSTR FpName TLPSTR FpComment TLPSTR } type TPRINTER_INFO_1A = struct { FFlags TDWORD FpDescription TLPSTR FpName TLPSTR FpComment TLPSTR } type TPRINTER_INFO_1W = struct { FFlags TDWORD FpDescription TLPWSTR FpName TLPWSTR FpComment TLPWSTR } type TPRINTER_INFO_2 = struct { FpServerName TLPSTR FpPrinterName TLPSTR FpShareName TLPSTR FpPortName TLPSTR FpDriverName TLPSTR FpComment TLPSTR FpLocation TLPSTR FpDevMode TLPDEVMODEA FpSepFile TLPSTR FpPrintProcessor TLPSTR FpDatatype TLPSTR FpParameters TLPSTR FpSecurityDescriptor TPSECURITY_DESCRIPTOR FAttributes TDWORD FPriority TDWORD FDefaultPriority TDWORD FStartTime TDWORD FUntilTime TDWORD FStatus TDWORD FcJobs TDWORD FAveragePPM TDWORD } type TPRINTER_INFO_2A = struct { FpServerName TLPSTR FpPrinterName TLPSTR FpShareName TLPSTR FpPortName TLPSTR FpDriverName TLPSTR FpComment TLPSTR FpLocation TLPSTR FpDevMode TLPDEVMODEA FpSepFile TLPSTR FpPrintProcessor TLPSTR FpDatatype TLPSTR FpParameters TLPSTR FpSecurityDescriptor TPSECURITY_DESCRIPTOR FAttributes TDWORD FPriority TDWORD FDefaultPriority TDWORD FStartTime TDWORD FUntilTime TDWORD FStatus TDWORD FcJobs TDWORD FAveragePPM TDWORD } type TPRINTER_INFO_2W = struct { FpServerName TLPWSTR FpPrinterName TLPWSTR FpShareName TLPWSTR FpPortName TLPWSTR FpDriverName TLPWSTR FpComment TLPWSTR FpLocation TLPWSTR FpDevMode TLPDEVMODEW FpSepFile TLPWSTR FpPrintProcessor TLPWSTR FpDatatype TLPWSTR FpParameters TLPWSTR FpSecurityDescriptor TPSECURITY_DESCRIPTOR FAttributes TDWORD FPriority TDWORD FDefaultPriority TDWORD FStartTime TDWORD FUntilTime TDWORD FStatus TDWORD FcJobs TDWORD FAveragePPM TDWORD } type TPRINTER_INFO_3 = struct { FpSecurityDescriptor TPSECURITY_DESCRIPTOR } type TPRINTER_INFO_4 = struct { FpPrinterName TLPSTR FpServerName TLPSTR FAttributes TDWORD } type TPRINTER_INFO_4A = struct { FpPrinterName TLPSTR FpServerName TLPSTR FAttributes TDWORD } type TPRINTER_INFO_4W = struct { FpPrinterName TLPWSTR FpServerName TLPWSTR FAttributes TDWORD } type TPRINTER_INFO_5 = struct { FpPrinterName TLPSTR FpPortName TLPSTR FAttributes TDWORD FDeviceNotSelectedTimeout TDWORD FTransmissionRetryTimeout TDWORD } type TPRINTER_INFO_5A = struct { FpPrinterName TLPSTR FpPortName TLPSTR FAttributes TDWORD FDeviceNotSelectedTimeout TDWORD FTransmissionRetryTimeout TDWORD } type TPRINTER_INFO_5W = struct { FpPrinterName TLPWSTR FpPortName TLPWSTR FAttributes TDWORD FDeviceNotSelectedTimeout TDWORD FTransmissionRetryTimeout TDWORD } type TPRINTER_INFO_6 = struct { FdwStatus TDWORD } type TPRINTER_INFO_7 = struct { FpszObjectGUID TLPSTR FdwAction TDWORD } type TPRINTER_INFO_7A = struct { FpszObjectGUID TLPSTR FdwAction TDWORD } type TPRINTER_INFO_7W = struct { FpszObjectGUID TLPWSTR FdwAction TDWORD } type TPRINTER_INFO_8 = struct { FpDevMode TLPDEVMODEA } type TPRINTER_INFO_8A = struct { FpDevMode TLPDEVMODEA } type TPRINTER_INFO_8W = struct { FpDevMode TLPDEVMODEW } type TPRINTER_INFO_9 = struct { FpDevMode TLPDEVMODEA } type TPRINTER_INFO_9A = struct { FpDevMode TLPDEVMODEA } type TPRINTER_INFO_9W = struct { FpDevMode TLPDEVMODEW } type TPRINTER_NOTIFY_INFO = struct { FVersion TDWORD FFlags TDWORD FCount TDWORD FaData [1]TPRINTER_NOTIFY_INFO_DATA } type TPRINTER_NOTIFY_OPTIONS = struct { FVersion TDWORD FFlags TDWORD FCount TDWORD FpTypes TPPRINTER_NOTIFY_OPTIONS_TYPE } type TPRINTER_NOTIFY_OPTIONS_TYPE = struct { FType TWORD FReserved0 TWORD FReserved1 TDWORD FReserved2 TDWORD FCount TDWORD FpFields TPWORD } type TPRINTER_OPTIONS = struct { FcbSize TUINT FdwFlags TDWORD } type TPRINTER_OPTION_FLAGS = int32 type TPRINTPAGERANGE = struct { FnFromPage TDWORD FnToPage TDWORD } type TPRINTPROCESSOR_CAPS_1 = struct { FdwLevel TDWORD FdwNupOptions TDWORD FdwPageOrderFlags TDWORD FdwNumberOfCopies TDWORD } type TPRINTPROCESSOR_CAPS_2 = struct { FdwLevel TDWORD FdwNupOptions TDWORD FdwPageOrderFlags TDWORD FdwNumberOfCopies TDWORD FdwNupDirectionCaps TDWORD FdwNupBorderCaps TDWORD FdwBookletHandlingCaps TDWORD FdwDuplexHandlingCaps TDWORD FdwScalingCaps TDWORD } type TPRINTPROCESSOR_INFO_1 = struct { FpName TLPSTR } type TPRINTPROCESSOR_INFO_1A = struct { FpName TLPSTR } type TPRINTPROCESSOR_INFO_1W = struct { FpName TLPWSTR } type TPRIORITY_HINT = int32 type TPRIVILEGE_SET = struct { FPrivilegeCount TDWORD FControl TDWORD FPrivilege [1]TLUID_AND_ATTRIBUTES } type TPRKCRM_MARSHAL_HEADER = uintptr type TPRKCRM_PROTOCOL_BLOB = uintptr type TPRKCRM_TRANSACTION_BLOB = uintptr type TPRLIST_ENTRY = uintptr type TPROC = uintptr type TPROCESSOR_CACHE_TYPE = int32 type TPROCESSOR_GROUP_INFO = struct { FMaximumProcessorCount TBYTE FActiveProcessorCount TBYTE FReserved [38]TBYTE FActiveProcessorMask TKAFFINITY } type TPROCESSOR_IDLESTATE_INFO = struct { FTimeCheck TDWORD FDemotePercent TBYTE FPromotePercent TBYTE FSpare [2]TBYTE } type TPROCESSOR_IDLESTATE_POLICY = struct { FRevision TWORD FFlags struct { F__ccgo1_0 [0]struct { F__ccgo0 uint16 } FAsWORD TWORD } FPolicyCount TDWORD FPolicy [3]TPROCESSOR_IDLESTATE_INFO } type TPROCESSOR_NUMBER = struct { FGroup TWORD FNumber TBYTE FReserved TBYTE } type TPROCESSOR_PERFSTATE_POLICY = struct { FRevision TDWORD FMaxThrottle TBYTE FMinThrottle TBYTE FBusyAdjThreshold TBYTE F__ccgo4_7 struct { FFlags [0]struct { F__ccgo1_0 [0]struct { F__ccgo0 uint8 } FAsBYTE TBYTE } FSpare TBYTE } FTimeCheck TDWORD FIncreaseTime TDWORD FDecreaseTime TDWORD FIncreasePercent TDWORD FDecreasePercent TDWORD } type TPROCESSOR_POWER_POLICY = struct { FRevision TDWORD FDynamicThrottle TBYTE FSpare [3]TBYTE F__ccgo8 uint32 FPolicyCount TDWORD FPolicy [3]TPROCESSOR_POWER_POLICY_INFO } type TPROCESSOR_POWER_POLICY_INFO = struct { FTimeCheck TDWORD FDemoteLimit TDWORD FPromoteLimit TDWORD FDemotePercent TBYTE FPromotePercent TBYTE FSpare [2]TBYTE F__ccgo16 uint32 } type TPROCESSOR_RELATIONSHIP = struct { FFlags TBYTE FReserved [21]TBYTE FGroupCount TWORD FGroupMask [1]TGROUP_AFFINITY } type TPROCESS_DYNAMIC_EH_CONTINUATION_TARGET = struct { FTargetAddress TULONG_PTR FFlags TULONG_PTR } type TPROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION = struct { FNumberOfTargets TWORD FReserved TWORD FReserved2 TDWORD FTargets TPPROCESS_DYNAMIC_EH_CONTINUATION_TARGET } type TPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE = struct { FBaseAddress TULONG_PTR FSize TSIZE_T FFlags TDWORD } type TPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION = struct { FNumberOfRanges TWORD FReserved TWORD FReserved2 TDWORD FRanges TPPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE } type TPROCESS_INFORMATION = struct { FhProcess THANDLE FhThread THANDLE FdwProcessId TDWORD FdwThreadId TDWORD } type TPROCESS_INFORMATION_CLASS = int32 type TPROCESS_LEAP_SECOND_INFO = struct { FFlags TULONG FReserved TULONG } type TPROCESS_MACHINE_INFORMATION = struct { FProcessMachine TUSHORT FRes0 TUSHORT FMachineAttributes TMACHINE_ATTRIBUTES } type TPROCESS_MEMORY_EXHAUSTION_INFO = struct { FVersion TUSHORT FReserved TUSHORT FType TPROCESS_MEMORY_EXHAUSTION_TYPE FValue TULONG_PTR } type TPROCESS_MEMORY_EXHAUSTION_TYPE = int32 type TPROCESS_MITIGATION_ASLR_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_CHILD_PROCESS_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_DEP_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } FPermanent TBOOLEAN } type TPROCESS_MITIGATION_DYNAMIC_CODE_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint8 F__ccgo4 uint32 } FFlags TDWORD F__ccgo_pad2 [4]byte } } type TPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_FONT_DISABLE_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_IMAGE_LOAD_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_POLICY = int32 type TPROCESS_MITIGATION_REDIRECTION_TRUST_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_MITIGATION_USER_SHADOW_STACK_POLICY = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FFlags TDWORD } } type TPROCESS_POWER_THROTTLING_STATE = struct { FVersion TULONG FControlMask TULONG FStateMask TULONG } type TPROCESS_PROTECTION_LEVEL_INFORMATION = struct { FProtectionLevel TDWORD } type TPROC_THREAD_ATTRIBUTE_NUM = int32 type TPROOT_INFO_LUID = uintptr type TPROPENUMPROC = uintptr type TPROPENUMPROCA = uintptr type TPROPENUMPROCEX = uintptr type TPROPENUMPROCEXA = uintptr type TPROPENUMPROCEXW = uintptr type TPROPENUMPROCW = uintptr type TPROPERTYKEY = struct { Ffmtid TGUID Fpid TDWORD } type TPROPID = uint32 type TPROPSHEETPAGE_RESOURCE = uintptr type TPROPVAR_PAD1 = uint16 type TPROPVAR_PAD2 = uint16 type TPROPVAR_PAD3 = uint16 type TPROTOCOLDATA = struct { FgrfFlags TDWORD FdwState TDWORD FpData TLPVOID FcbData TULONG } type TPROTOCOLFILTERDATA = struct { FcbSize TDWORD FpProtocolSink uintptr FpProtocol uintptr FpUnk uintptr FdwFilterFlags TDWORD } type TPROTOCOL_ARGUMENT = struct { FszMethod TLPCWSTR FszTargetUrl TLPCWSTR } type TPROTOENT = struct { Fp_name uintptr Fp_aliases uintptr Fp_proto int16 } type TPROVIDOR_INFO_1 = struct { FpName TLPSTR FpEnvironment TLPSTR FpDLLName TLPSTR } type TPROVIDOR_INFO_1A = struct { FpName TLPSTR FpEnvironment TLPSTR FpDLLName TLPSTR } type TPROVIDOR_INFO_1W = struct { FpName TLPWSTR FpEnvironment TLPWSTR FpDLLName TLPWSTR } type TPROVIDOR_INFO_2 = struct { FpOrder TLPSTR } type TPROVIDOR_INFO_2A = struct { FpOrder TLPSTR } type TPROVIDOR_INFO_2W = struct { FpOrder TLPWSTR } type TPROV_ENUMALGS = struct { FaiAlgid TALG_ID FdwBitLen TDWORD FdwNameLen TDWORD FszName [20]TCHAR } type TPROV_ENUMALGS_EX = struct { FaiAlgid TALG_ID FdwDefaultLen TDWORD FdwMinLen TDWORD FdwMaxLen TDWORD FdwProtocols TDWORD FdwNameLen TDWORD FszName [20]TCHAR FdwLongNameLen TDWORD FszLongName [40]TCHAR } type TPROXY_PHASE = int32 type TPRPCOLEMESSAGE = uintptr type TPRPC_ASYNC_NOTIFICATION_INFO = uintptr type TPRPC_ASYNC_STATE = uintptr type TPRPC_CLIENT_INFORMATION1 = uintptr type TPRPC_CLIENT_INTERFACE = uintptr type TPRPC_DISPATCH_TABLE = uintptr type TPRPC_HTTP_TRANSPORT_CREDENTIALS_A = uintptr type TPRPC_HTTP_TRANSPORT_CREDENTIALS_W = uintptr type TPRPC_IMPORT_CONTEXT_P = uintptr type TPRPC_MESSAGE = uintptr type TPRPC_POLICY = uintptr type TPRPC_PROTSEQ_ENDPOINT = uintptr type TPRPC_RUNDOWN = uintptr type TPRPC_SECURITY_QOS = uintptr type TPRPC_SECURITY_QOS_V2_A = uintptr type TPRPC_SECURITY_QOS_V2_W = uintptr type TPRPC_SECURITY_QOS_V3_A = uintptr type TPRPC_SECURITY_QOS_V3_W = uintptr type TPRPC_SERVER_INTERFACE = uintptr type TPRPC_SYNTAX_IDENTIFIER = uintptr type TPRTL_BARRIER = uintptr type TPRTL_CONDITION_VARIABLE = uintptr type TPRTL_CRITICAL_SECTION = uintptr type TPRTL_CRITICAL_SECTION_DEBUG = uintptr type TPRTL_OSVERSIONINFOEXW = uintptr type TPRTL_OSVERSIONINFOW = uintptr type TPRTL_RESOURCE_DEBUG = uintptr type TPRTL_RUN_ONCE = uintptr type TPRTL_RUN_ONCE_INIT_FN = uintptr type TPRTL_SRWLOCK = uintptr type TPRTL_UMS_SCHEDULER_ENTRY_POINT = uintptr type TPRTL_UMS_SCHEDULER_REASON = uintptr type TPRTL_UMS_THREAD_INFO_CLASS = uintptr type TPRTL_VERIFIER_DLL_DESCRIPTOR = uintptr type TPRTL_VERIFIER_PROVIDER_DESCRIPTOR = uintptr type TPRTL_VERIFIER_THUNK_DESCRIPTOR = uintptr type TPSAVEPOINT_ID = uintptr type TPSCARDCONTEXT = uintptr type TPSCARDHANDLE = uintptr type TPSCARD_ATRMASK = uintptr type TPSCARD_IO_REQUEST = uintptr type TPSCARD_READERSTATE = uintptr type TPSCARD_READERSTATEA = uintptr type TPSCARD_READERSTATEW = uintptr type TPSCARD_T0_REQUEST = uintptr type TPSCARD_T1_REQUEST = uintptr type TPSCHANNEL_ALG = uintptr type TPSCODE = uintptr type TPSCONTEXT_QUEUE = uintptr type TPSCOPE_TABLE_AMD64 = uintptr type TPSCROLLBARINFO = uintptr type TPSCRUB_DATA_INPUT = uintptr type TPSCRUB_DATA_OUTPUT = uintptr type TPSD_CHANGE_MACHINE_SID_INPUT = uintptr type TPSD_CHANGE_MACHINE_SID_OUTPUT = uintptr type TPSECURE_MEMORY_CACHE_CALLBACK = uintptr type TPSECURITY_ATTRIBUTES = uintptr type TPSECURITY_CAPABILITIES = uintptr type TPSECURITY_CONTEXT_TRACKING_MODE = uintptr type TPSECURITY_DESCRIPTOR = uintptr type TPSECURITY_DESCRIPTOR_CONTROL = uintptr type TPSECURITY_IMPERSONATION_LEVEL = uintptr type TPSECURITY_INFORMATION = uintptr type TPSECURITY_QUALITY_OF_SERVICE = uintptr type TPSEC_WINNT_AUTH_IDENTITY_A = uintptr type TPSEC_WINNT_AUTH_IDENTITY_W = uintptr type TPSENDCMDINPARAMS = uintptr type TPSENDCMDOUTPARAMS = uintptr type TPSERVENT = uintptr type TPSERVICE_CONTROL_STATUS_REASON_PARAMS = uintptr type TPSERVICE_CONTROL_STATUS_REASON_PARAMSA = uintptr type TPSERVICE_CONTROL_STATUS_REASON_PARAMSW = uintptr type TPSERVICE_NOTIFY = uintptr type TPSERVICE_NOTIFYA = uintptr type TPSERVICE_NOTIFYW = uintptr type TPSESSION_BUFFER = uintptr type TPSESSION_HEADER = uintptr type TPSET_PARTITION_INFORMATION = uintptr type TPSET_PARTITION_INFORMATION_EX = uintptr type TPSET_POWER_SETTING_VALUE = uintptr type TPSET_VIRTUAL_DISK_INFO = uintptr type TPSE_ACCESS_REPLY = uintptr type TPSE_ACCESS_REQUEST = uintptr type TPSE_IMPERSONATION_STATE = uintptr type TPSE_SECURITY_DESCRIPTOR = uintptr type TPSFEATURE_CUSTPAPER = struct { FlOrientation TLONG FlWidth TLONG FlHeight TLONG FlWidthOffset TLONG FlHeightOffset TLONG } type TPSFEATURE_OUTPUT = struct { FbPageIndependent TWINBOOL FbSetPageDevice TWINBOOL } type TPSHCREATEPROCESSINFOW = uintptr type TPSHNOTIFY = struct { Fhdr TNMHDR FlParam TLPARAM } type TPSHORT = uintptr type TPSHRINK_VOLUME_INFORMATION = uintptr type TPSID = uintptr type TPSID_AND_ATTRIBUTES = uintptr type TPSID_AND_ATTRIBUTES_ARRAY = uintptr type TPSID_AND_ATTRIBUTES_HASH = uintptr type TPSID_HASH_ENTRY = uintptr type TPSID_IDENTIFIER_AUTHORITY = uintptr type TPSID_NAME_USE = uintptr type TPSINGLE_LIST_ENTRY = uintptr type TPSINJECTDATA = struct { FDataBytes TDWORD FInjectionPoint TWORD FPageNumber TWORD } type TPSIZE = uintptr type TPSIZEL = uintptr type TPSIZE_T = uintptr type TPSI_COPYFILE = uintptr type TPSLIST_ENTRY = uintptr type TPSLIST_HEADER = uintptr type TPSMALL_RECT = uintptr type TPSOCKADDR = uintptr type TPSOCKADDR_IN = uintptr type TPSOLE_AUTHENTICATION_INFO = uintptr type TPSOLE_AUTHENTICATION_LIST = uintptr type TPSOLE_AUTHENTICATION_SERVICE = uintptr type TPSRWLOCK = uintptr type TPSSIZE_T = uintptr type TPSSL_EXTRA_CERT_CHAIN_POLICY_PARA = uintptr type TPSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS = uintptr type TPSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA = uintptr type TPSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA = uintptr type TPSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS = uintptr type TPSTARTING_LCN_INPUT_BUFFER = uintptr type TPSTARTING_VCN_INPUT_BUFFER = uintptr type TPSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR = uintptr type TPSTORAGE_ADAPTER_DESCRIPTOR = uintptr type TPSTORAGE_ALLOCATE_BC_STREAM_INPUT = uintptr type TPSTORAGE_ALLOCATE_BC_STREAM_OUTPUT = uintptr type TPSTORAGE_ASSOCIATION_TYPE = uintptr type TPSTORAGE_BREAK_RESERVATION_REQUEST = uintptr type TPSTORAGE_BUS_RESET_REQUEST = uintptr type TPSTORAGE_BUS_TYPE = uintptr type TPSTORAGE_CRYPTO_ALGORITHM_ID = uintptr type TPSTORAGE_CRYPTO_CAPABILITY = uintptr type TPSTORAGE_CRYPTO_DESCRIPTOR = uintptr type TPSTORAGE_CRYPTO_KEY_SIZE = uintptr type TPSTORAGE_DEPENDENCY_INFO = uintptr type TPSTORAGE_DEPENDENCY_INFO_TYPE_1 = uintptr type TPSTORAGE_DEPENDENCY_INFO_TYPE_2 = uintptr type TPSTORAGE_DESCRIPTOR_HEADER = uintptr type TPSTORAGE_DEVICE_DESCRIPTOR = uintptr type TPSTORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR = uintptr type TPSTORAGE_DEVICE_ID_DESCRIPTOR = uintptr type TPSTORAGE_DEVICE_NUMBER = uintptr type TPSTORAGE_DEVICE_NUMBERS = uintptr type TPSTORAGE_DEVICE_NUMBER_EX = uintptr type TPSTORAGE_DEVICE_RESILIENCY_DESCRIPTOR = uintptr type TPSTORAGE_DEVICE_TIERING_DESCRIPTOR = uintptr type TPSTORAGE_FAILURE_PREDICTION_CONFIG = uintptr type TPSTORAGE_GET_BC_PROPERTIES_OUTPUT = uintptr type TPSTORAGE_HOTPLUG_INFO = uintptr type TPSTORAGE_IDENTIFIER = uintptr type TPSTORAGE_IDENTIFIER_CODE_SET = uintptr type TPSTORAGE_IDENTIFIER_TYPE = uintptr type TPSTORAGE_ID_NAA_FORMAT = uintptr type TPSTORAGE_LB_PROVISIONING_MAP_RESOURCES = uintptr type TPSTORAGE_MEDIA_SERIAL_NUMBER_DATA = uintptr type TPSTORAGE_MEDIA_TYPE = uintptr type TPSTORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR = uintptr type TPSTORAGE_MINIPORT_DESCRIPTOR = uintptr type TPSTORAGE_PORT_CODE_SET = uintptr type TPSTORAGE_PREDICT_FAILURE = uintptr type TPSTORAGE_PRIORITY_HINT_SUPPORT = uintptr type TPSTORAGE_PROPERTY_ID = uintptr type TPSTORAGE_PROPERTY_QUERY = uintptr type TPSTORAGE_PROPERTY_SET = uintptr type TPSTORAGE_PROTOCOL_ATA_DATA_TYPE = uintptr type TPSTORAGE_PROTOCOL_DATA_DESCRIPTOR = uintptr type TPSTORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT = uintptr type TPSTORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE = uintptr type TPSTORAGE_PROTOCOL_NVME_DATA_TYPE = uintptr type TPSTORAGE_PROTOCOL_SPECIFIC_DATA = uintptr type TPSTORAGE_PROTOCOL_SPECIFIC_DATA_EXT = uintptr type TPSTORAGE_PROTOCOL_TYPE = uintptr type TPSTORAGE_PROTOCOL_UFS_DATA_TYPE = uintptr type TPSTORAGE_QUERY_TYPE = uintptr type TPSTORAGE_READ_CAPACITY = uintptr type TPSTORAGE_RPMB_DESCRIPTOR = uintptr type TPSTORAGE_RPMB_FRAME_TYPE = uintptr type TPSTORAGE_SET_TYPE = uintptr type TPSTORAGE_TIER = uintptr type TPSTORAGE_TIER_CLASS = uintptr type TPSTORAGE_TIER_MEDIA_TYPE = uintptr type TPSTORAGE_WRITE_CACHE_PROPERTY = uintptr type TPSTR = uintptr type TPSTYLEBUF = uintptr type TPSTYLEBUFA = uintptr type TPSTYLEBUFW = uintptr type TPSUACTION = int32 type TPSUPPORTED_OS_INFO = uintptr type TPSYNCHRONIZATION_BARRIER = uintptr type TPSYSTEMTIME = uintptr type TPSYSTEM_ALARM_ACE = uintptr type TPSYSTEM_ALARM_CALLBACK_ACE = uintptr type TPSYSTEM_ALARM_CALLBACK_OBJECT_ACE = uintptr type TPSYSTEM_ALARM_OBJECT_ACE = uintptr type TPSYSTEM_AUDIT_ACE = uintptr type TPSYSTEM_AUDIT_CALLBACK_ACE = uintptr type TPSYSTEM_AUDIT_CALLBACK_OBJECT_ACE = uintptr type TPSYSTEM_AUDIT_OBJECT_ACE = uintptr type TPSYSTEM_BATTERY_STATE = uintptr type TPSYSTEM_LOGICAL_PROCESSOR_INFORMATION = uintptr type TPSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = uintptr type TPSYSTEM_MANDATORY_LABEL_ACE = uintptr type TPSYSTEM_POWER_CAPABILITIES = uintptr type TPSYSTEM_POWER_LEVEL = uintptr type TPSYSTEM_POWER_POLICY = uintptr type TPSYSTEM_POWER_STATE = uintptr type TPSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = uintptr type TPSYSTEM_RESOURCE_ATTRIBUTE_ACE = uintptr type TPSYSTEM_SCOPED_POLICY_ID_ACE = uintptr type TPSYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION = uintptr type TPSZ = uintptr type TPServerInformation = uintptr type TPTAKE_SNAPSHOT_VHDSET_FLAG = uintptr type TPTAKE_SNAPSHOT_VHDSET_PARAMETERS = uintptr type TPTAPE_CREATE_PARTITION = uintptr type TPTAPE_ERASE = uintptr type TPTAPE_GET_DRIVE_PARAMETERS = uintptr type TPTAPE_GET_MEDIA_PARAMETERS = uintptr type TPTAPE_GET_POSITION = uintptr type TPTAPE_GET_STATISTICS = uintptr type TPTAPE_PREPARE = uintptr type TPTAPE_SET_DRIVE_PARAMETERS = uintptr type TPTAPE_SET_MEDIA_PARAMETERS = uintptr type TPTAPE_SET_POSITION = uintptr type TPTAPE_STATISTICS = uintptr type TPTAPE_WMI_OPERATIONS = uintptr type TPTAPE_WRITE_MARKS = uintptr type TPTBYTE = uintptr type TPTCH = uintptr type TPTCHAR = uintptr type TPTEXTMETRIC = uintptr type TPTEXTMETRICA = uintptr type TPTEXTMETRICW = uintptr type TPTHREAD_START_ROUTINE = uintptr type TPTIMECAPS = uintptr type TPTIMERAPCROUTINE = uintptr type TPTIMEVAL = uintptr type TPTIME_ZONE_INFORMATION = uintptr type TPTITLEBARINFO = uintptr type TPTITLEBARINFOEX = uintptr type TPTOKEN_ACCESS_INFORMATION = uintptr type TPTOKEN_APPCONTAINER_INFORMATION = uintptr type TPTOKEN_AUDIT_POLICY = uintptr type TPTOKEN_CONTROL = uintptr type TPTOKEN_DEFAULT_DACL = uintptr type TPTOKEN_DEVICE_CLAIMS = uintptr type TPTOKEN_ELEVATION = uintptr type TPTOKEN_ELEVATION_TYPE = uintptr type TPTOKEN_GROUPS = uintptr type TPTOKEN_GROUPS_AND_PRIVILEGES = uintptr type TPTOKEN_INFORMATION_CLASS = uintptr type TPTOKEN_LINKED_TOKEN = uintptr type TPTOKEN_MANDATORY_LABEL = uintptr type TPTOKEN_MANDATORY_POLICY = uintptr type TPTOKEN_ORIGIN = uintptr type TPTOKEN_OWNER = uintptr type TPTOKEN_PRIMARY_GROUP = uintptr type TPTOKEN_PRIVILEGES = uintptr type TPTOKEN_SOURCE = uintptr type TPTOKEN_STATISTICS = uintptr type TPTOKEN_TYPE = uintptr type TPTOKEN_USER = uintptr type TPTOKEN_USER_CLAIMS = uintptr type TPTOP_LEVEL_EXCEPTION_FILTER = uintptr type TPTOUCHINPUT = uintptr type TPTOUCHPREDICTIONPARAMETERS = uintptr type TPTOUCH_HIT_TESTING_INPUT = uintptr type TPTOUCH_HIT_TESTING_PROXIMITY_EVALUATION = uintptr type TPTP_CALLBACK_ENVIRON = uintptr type TPTP_CALLBACK_INSTANCE = uintptr type TPTP_CLEANUP_GROUP = uintptr type TPTP_CLEANUP_GROUP_CANCEL_CALLBACK = uintptr type TPTP_IO = uintptr type TPTP_POOL = uintptr type TPTP_POOL_STACK_INFORMATION = uintptr type TPTP_SIMPLE_CALLBACK = uintptr type TPTP_TIMER = uintptr type TPTP_TIMER_CALLBACK = uintptr type TPTP_VERSION = uintptr type TPTP_WAIT = uintptr type TPTP_WAIT_CALLBACK = uintptr type TPTP_WIN32_IO_CALLBACK = uintptr type TPTP_WORK = uintptr type TPTP_WORK_CALLBACK = uintptr type TPTRANSACTIONMANAGER_BASIC_INFORMATION = uintptr type TPTRANSACTIONMANAGER_LOGPATH_INFORMATION = uintptr type TPTRANSACTIONMANAGER_LOG_INFORMATION = uintptr type TPTRANSACTIONMANAGER_OLDEST_INFORMATION = uintptr type TPTRANSACTIONMANAGER_RECOVERY_INFORMATION = uintptr type TPTRANSACTION_BASIC_INFORMATION = uintptr type TPTRANSACTION_BIND_INFORMATION = uintptr type TPTRANSACTION_ENLISTMENTS_INFORMATION = uintptr type TPTRANSACTION_ENLISTMENT_PAIR = uintptr type TPTRANSACTION_LIST_ENTRY = uintptr type TPTRANSACTION_LIST_INFORMATION = uintptr type TPTRANSACTION_NOTIFICATION = uintptr type TPTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = uintptr type TPTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT = uintptr type TPTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = uintptr type TPTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = uintptr type TPTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = uintptr type TPTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = uintptr type TPTRANSACTION_PROPERTIES_INFORMATION = uintptr type TPTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = uintptr type TPTRANSMIT_FILE_BUFFERS = uintptr type TPTRIVERTEX = uintptr type TPTSTR = uintptr type TPTXFS_CREATE_MINIVERSION_INFO = uintptr type TPTXFS_GET_METADATA_INFO_OUT = uintptr type TPTXFS_GET_TRANSACTED_VERSION = uintptr type TPTXFS_LIST_TRANSACTIONS = uintptr type TPTXFS_LIST_TRANSACTIONS_ENTRY = uintptr type TPTXFS_LIST_TRANSACTION_LOCKED_FILES = uintptr type TPTXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY = uintptr type TPTXFS_MODIFY_RM = uintptr type TPTXFS_QUERY_RM_INFORMATION = uintptr type TPTXFS_READ_BACKUP_INFORMATION_OUT = uintptr type TPTXFS_ROLLFORWARD_REDO_INFORMATION = uintptr type TPTXFS_SAVEPOINT_INFORMATION = uintptr type TPTXFS_START_RM_INFORMATION = uintptr type TPTXFS_TRANSACTION_ACTIVE_INFO = uintptr type TPTXFS_WRITE_BACKUP_INFORMATION = uintptr type TPUAF = int32 type TPUAFOUT = int32 type TPUBLICKEYSTRUC = struct { FbType TBYTE FbVersion TBYTE Freserved TWORD FaiKeyAlg TALG_ID } type TPUCHAR = uintptr type TPUCSCHAR = uintptr type TPUCSSTR = uintptr type TPUHALF_PTR = uintptr type TPUINT = uintptr type TPUINT16 = uintptr type TPUINT32 = uintptr type TPUINT64 = uintptr type TPUINT8 = uintptr type TPUINT_PTR = uintptr type TPULARGE_INTEGER = uintptr type TPULONG = uintptr type TPULONG32 = uintptr type TPULONG64 = uintptr type TPULONGLONG = uintptr type TPULONG_PTR = uintptr type TPUMS_CREATE_THREAD_ATTRIBUTES = uintptr type TPUNZTCH = uintptr type TPUNZWCH = uintptr type TPUPDATELAYEREDWINDOWINFO = uintptr type TPUSAGE_PROPERTIES = uintptr type TPUSEROBJECTFLAGS = uintptr type TPUSER_ACTIVITY_PRESENCE = uintptr type TPUSHORT = uintptr type TPUSN_JOURNAL_DATA = uintptr type TPUSN_RECORD = uintptr type TPUTSTR = uintptr type TPUUCSCHAR = uintptr type TPUUCSSTR = uintptr type TPUWSTR = uintptr type TPUZZTSTR = uintptr type TPUZZWSTR = uintptr type TPVALCONTEXT = uintptr type TPVALENT = uintptr type TPVALENTA = uintptr type TPVALENTW = uintptr type TPVALUE = struct { Fpv_valuename TLPSTR Fpv_valuelen int32 Fpv_value_context TLPVOID Fpv_type TDWORD } type TPVALUEA = struct { Fpv_valuename TLPSTR Fpv_valuelen int32 Fpv_value_context TLPVOID Fpv_type TDWORD } type TPVALUEW = struct { Fpv_valuename TLPWSTR Fpv_valuelen int32 Fpv_value_context TLPVOID Fpv_type TDWORD } type TPVECTORED_EXCEPTION_HANDLER = uintptr type TPVERIFY_INFORMATION = uintptr type TPVIDEOPARAMETERS = uintptr type TPVIRTUAL_DISK_PROGRESS = uintptr type TPVIRTUAL_STORAGE_TYPE = uintptr type TPVOID = uintptr type TPVOID64 = uintptr type TPVOLUME_BITMAP_BUFFER = uintptr type TPVOLUME_DISK_EXTENTS = uintptr type TPVOLUME_GET_GPT_ATTRIBUTES_INFORMATION = uintptr type TPWAVEFORMAT = uintptr type TPWAVEFORMATEX = uintptr type TPWAVEHDR = uintptr type TPWAVEINCAPS = uintptr type TPWAVEINCAPS2 = uintptr type TPWAVEINCAPS2A = uintptr type TPWAVEINCAPS2W = uintptr type TPWAVEINCAPSA = uintptr type TPWAVEINCAPSW = uintptr type TPWAVEOUTCAPS = uintptr type TPWAVEOUTCAPS2 = uintptr type TPWAVEOUTCAPS2A = uintptr type TPWAVEOUTCAPS2W = uintptr type TPWAVEOUTCAPSA = uintptr type TPWAVEOUTCAPSW = uintptr type TPWCH = uintptr type TPWCHAR = uintptr type TPWCRANGE = uintptr type TPWGLSWAP = uintptr type TPWIN32_FIND_DATA = uintptr type TPWIN32_FIND_DATAA = uintptr type TPWIN32_FIND_DATAW = uintptr type TPWIN32_FIND_STREAM_DATA = uintptr type TPWIN32_MEMORY_RANGE_ENTRY = uintptr type TPWINDOWINFO = uintptr type TPWINDOWPLACEMENT = uintptr type TPWINDOWPOS = uintptr type TPWINDOW_BUFFER_SIZE_RECORD = uintptr type TPWNDCLASS = uintptr type TPWNDCLASSA = uintptr type TPWNDCLASSEX = uintptr type TPWNDCLASSEXA = uintptr type TPWNDCLASSEXW = uintptr type TPWNDCLASSW = uintptr type TPWOF_EXTERNAL_INFO = uintptr type TPWORD = uintptr type TPWOW64_CONTEXT = uintptr type TPWOW64_DESCRIPTOR_TABLE_ENTRY = uintptr type TPWOW64_FLOATING_SAVE_AREA = uintptr type TPWOW64_LDT_ENTRY = uintptr type TPWSTR = uintptr type TPWTSSESSION_NOTIFICATION = uintptr type TPXFORM = uintptr type TPXMIT_ROUTINE_QUINTUPLE = uintptr type TPXSAVE_AREA = uintptr type TPXSAVE_AREA_HEADER = uintptr type TPXSAVE_FORMAT = uintptr type TPXSTATE_CONFIGURATION = uintptr type TPXSTATE_CONTEXT = uintptr type TPXSTATE_FEATURE = uintptr type TPZPCSTR = uintptr type TPZPCWSTR = uintptr type TPZPSTR = uintptr type TPZPTSTR = uintptr type TPZPWSTR = uintptr type TPZZSTR = uintptr type TPZZTSTR = uintptr type TPZZWSTR = uintptr type TP_CALLBACK_ENVIRON = TTP_CALLBACK_ENVIRON type TP_CALLBACK_ENVIRON_V3 = TTP_CALLBACK_ENVIRON_V3 type TP_CALLBACK_PRIORITY = TTP_CALLBACK_PRIORITY type TP_POOL_STACK_INFORMATION = TTP_POOL_STACK_INFORMATION type TP_VERSION = TTP_VERSION type TP_WAIT_RESULT = TTP_WAIT_RESULT type TQUERYCONTEXT = struct { FdwContext TDWORD FPlatform TCSPLATFORM FLocale TLCID FdwVersionHi TDWORD FdwVersionLo TDWORD } type TQUERYOPTION = int32 type TQUERY_CHANGES_VIRTUAL_DISK_FLAG = int32 type TQUERY_SERVICE_CONFIG = struct { FdwServiceType TDWORD FdwStartType TDWORD FdwErrorControl TDWORD FlpBinaryPathName TLPSTR FlpLoadOrderGroup TLPSTR FdwTagId TDWORD FlpDependencies TLPSTR FlpServiceStartName TLPSTR FlpDisplayName TLPSTR } type TQUERY_SERVICE_CONFIGA = struct { FdwServiceType TDWORD FdwStartType TDWORD FdwErrorControl TDWORD FlpBinaryPathName TLPSTR FlpLoadOrderGroup TLPSTR FdwTagId TDWORD FlpDependencies TLPSTR FlpServiceStartName TLPSTR FlpDisplayName TLPSTR } type TQUERY_SERVICE_CONFIGW = struct { FdwServiceType TDWORD FdwStartType TDWORD FdwErrorControl TDWORD FlpBinaryPathName TLPWSTR FlpLoadOrderGroup TLPWSTR FdwTagId TDWORD FlpDependencies TLPWSTR FlpServiceStartName TLPWSTR FlpDisplayName TLPWSTR } type TQUERY_SERVICE_LOCK_STATUS = struct { FfIsLocked TDWORD FlpLockOwner TLPSTR FdwLockDuration TDWORD } type TQUERY_SERVICE_LOCK_STATUSA = struct { FfIsLocked TDWORD FlpLockOwner TLPSTR FdwLockDuration TDWORD } type TQUERY_SERVICE_LOCK_STATUSW = struct { FfIsLocked TDWORD FlpLockOwner TLPWSTR FdwLockDuration TDWORD } type TQUERY_USER_NOTIFICATION_STATE = int32 type TRACKMOUSEEVENT = TTRACKMOUSEEVENT const TRANSACTIONMANAGER_ALL_ACCESS = 983103 type TRANSACTIONMANAGER_BASIC_INFORMATION = TTRANSACTIONMANAGER_BASIC_INFORMATION const TRANSACTIONMANAGER_BIND_TRANSACTION = 32 const TRANSACTIONMANAGER_CREATE_RM = 16 const TRANSACTIONMANAGER_GENERIC_EXECUTE = 131072 const TRANSACTIONMANAGER_GENERIC_READ = 131073 const TRANSACTIONMANAGER_GENERIC_WRITE = 131102 type TRANSACTIONMANAGER_INFORMATION_CLASS = TTRANSACTIONMANAGER_INFORMATION_CLASS type TRANSACTIONMANAGER_LOGPATH_INFORMATION = TTRANSACTIONMANAGER_LOGPATH_INFORMATION type TRANSACTIONMANAGER_LOG_INFORMATION = TTRANSACTIONMANAGER_LOG_INFORMATION const TRANSACTIONMANAGER_OBJECT_NAME_LENGTH_IN_BYTES = 0 const TRANSACTIONMANAGER_OBJECT_PATH = "\\\\TransactionManager\\\\" type TRANSACTIONMANAGER_OLDEST_INFORMATION = TTRANSACTIONMANAGER_OLDEST_INFORMATION const TRANSACTIONMANAGER_QUERY_INFORMATION = 1 const TRANSACTIONMANAGER_RECOVER = 4 type TRANSACTIONMANAGER_RECOVERY_INFORMATION = TTRANSACTIONMANAGER_RECOVERY_INFORMATION const TRANSACTIONMANAGER_RENAME = 8 const TRANSACTIONMANAGER_SET_INFORMATION = 2 const TRANSACTION_ALL_ACCESS = 2031679 type TRANSACTION_BASIC_INFORMATION = TTRANSACTION_BASIC_INFORMATION type TRANSACTION_BIND_INFORMATION = TTRANSACTION_BIND_INFORMATION const TRANSACTION_COMMIT = 8 const TRANSACTION_DO_NOT_PROMOTE = 1 const TRANSACTION_ENLIST = 4 type TRANSACTION_ENLISTMENTS_INFORMATION = TTRANSACTION_ENLISTMENTS_INFORMATION type TRANSACTION_ENLISTMENT_PAIR = TTRANSACTION_ENLISTMENT_PAIR const TRANSACTION_GENERIC_EXECUTE = 1179672 const TRANSACTION_GENERIC_READ = 1179649 const TRANSACTION_GENERIC_WRITE = 1179710 type TRANSACTION_INFORMATION_CLASS = TTRANSACTION_INFORMATION_CLASS type TRANSACTION_LIST_ENTRY = TTRANSACTION_LIST_ENTRY type TRANSACTION_LIST_INFORMATION = TTRANSACTION_LIST_INFORMATION const TRANSACTION_MANAGER_COMMIT_DEFAULT = 0 const TRANSACTION_MANAGER_COMMIT_LOWEST = 8 const TRANSACTION_MANAGER_COMMIT_SYSTEM_HIVES = 4 const TRANSACTION_MANAGER_COMMIT_SYSTEM_VOLUME = 2 const TRANSACTION_MANAGER_CORRUPT_FOR_PROGRESS = 32 const TRANSACTION_MANAGER_CORRUPT_FOR_RECOVERY = 16 const TRANSACTION_MANAGER_MAXIMUM_OPTION = 63 const TRANSACTION_MANAGER_VOLATILE = 1 const TRANSACTION_MAXIMUM_OPTION = 1 type TRANSACTION_NOTIFICATION = TTRANSACTION_NOTIFICATION type TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = TTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT type TRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT = TTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT type TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = TTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT type TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = TTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT type TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = TTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT type TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = TTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT const TRANSACTION_NOTIFICATION_TM_ONLINE_FLAG_IS_CLUSTERED = 1 const TRANSACTION_NOTIFY_COMMIT = 4 const TRANSACTION_NOTIFY_COMMIT_COMPLETE = 64 const TRANSACTION_NOTIFY_COMMIT_FINALIZE = 1073741824 const TRANSACTION_NOTIFY_COMMIT_REQUEST = 67108864 const TRANSACTION_NOTIFY_DELEGATE_COMMIT = 1024 const TRANSACTION_NOTIFY_ENLIST_MASK = 262144 const TRANSACTION_NOTIFY_ENLIST_PREPREPARE = 4096 const TRANSACTION_NOTIFY_INDOUBT = 16384 const TRANSACTION_NOTIFY_LAST_RECOVER = 8192 const TRANSACTION_NOTIFY_MARSHAL = 131072 const TRANSACTION_NOTIFY_MASK = 1073741823 const TRANSACTION_NOTIFY_PREPARE = 2 const TRANSACTION_NOTIFY_PREPARE_COMPLETE = 32 const TRANSACTION_NOTIFY_PREPREPARE = 1 const TRANSACTION_NOTIFY_PREPREPARE_COMPLETE = 16 const TRANSACTION_NOTIFY_PROMOTE = 134217728 const TRANSACTION_NOTIFY_PROMOTE_NEW = 268435456 const TRANSACTION_NOTIFY_PROPAGATE_PULL = 32768 const TRANSACTION_NOTIFY_PROPAGATE_PUSH = 65536 const TRANSACTION_NOTIFY_RECOVER = 256 const TRANSACTION_NOTIFY_RECOVER_QUERY = 2048 const TRANSACTION_NOTIFY_REQUEST_OUTCOME = 536870912 const TRANSACTION_NOTIFY_RM_DISCONNECTED = 16777216 const TRANSACTION_NOTIFY_ROLLBACK = 8 const TRANSACTION_NOTIFY_ROLLBACK_COMPLETE = 128 const TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT = 512 const TRANSACTION_NOTIFY_TM_ONLINE = 33554432 const TRANSACTION_OBJECT_NAME_LENGTH_IN_BYTES = 0 const TRANSACTION_OBJECT_PATH = "\\\\Transaction\\\\" type TRANSACTION_OUTCOME = TTRANSACTION_OUTCOME const TRANSACTION_PROPAGATE = 32 type TRANSACTION_PROPERTIES_INFORMATION = TTRANSACTION_PROPERTIES_INFORMATION const TRANSACTION_QUERY_INFORMATION = 1 const TRANSACTION_RESOURCE_MANAGER_RIGHTS = 1179703 const TRANSACTION_RIGHT_RESERVED1 = 64 const TRANSACTION_ROLLBACK = 16 const TRANSACTION_SET_INFORMATION = 2 type TRANSACTION_STATE = TTRANSACTION_STATE type TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = TTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION const TRANSFORM_CTM = 4107 type TRANSMIT_FILE_BUFFERS = TTRANSMIT_FILE_BUFFERS const TRANSPARENT = 1 const TRANSPORT_TYPE_CN = 1 const TRANSPORT_TYPE_DG = 2 const TRANSPORT_TYPE_LPC = 4 const TRANSPORT_TYPE_WMSG = 8 type TRASTERIZER_STATUS = struct { FnSize int16 FwFlags int16 FnLanguageID int16 } type TRATE_QUOTA_LIMIT = struct { F__ccgo1_0 [0]struct { F__ccgo0 uint32 } FRateData TDWORD } type TRAWHID = struct { FdwSizeHid TDWORD FdwCount TDWORD FbRawData [1]TBYTE } type TRAWINPUT = struct { Fheader TRAWINPUTHEADER Fdata struct { Fkeyboard [0]TRAWKEYBOARD Fhid [0]TRAWHID Fmouse TRAWMOUSE } } type TRAWINPUTDEVICE = struct { FusUsagePage TUSHORT FusUsage TUSHORT FdwFlags TDWORD FhwndTarget THWND } type TRAWINPUTDEVICELIST = struct { FhDevice THANDLE FdwType TDWORD } type TRAWINPUTHEADER = struct { FdwType TDWORD FdwSize TDWORD FhDevice THANDLE FwParam TWPARAM } type TRAWKEYBOARD = struct { FMakeCode TUSHORT FFlags TUSHORT FReserved TUSHORT FVKey TUSHORT FMessage TUINT FExtraInformation TULONG } type TRAWMOUSE = struct { FusFlags TUSHORT F__ccgo1_4 struct { F__ccgo1_0 [0]struct { FusButtonFlags TUSHORT FusButtonData TUSHORT } FulButtons TULONG } FulRawButtons TULONG FlLastX TLONG FlLastY TLONG FulExtraInformation TULONG } type TRDR_CALLOUT_STATE = struct { FLastError TRPC_STATUS FLastEEInfo uintptr FLastCalledStage TRPC_HTTP_REDIRECTOR_STAGE FServerName uintptr FServerPort uintptr FRemoteUser uintptr FAuthType uintptr FResourceTypePresent uint8 FMetadataPresent uint8 FSessionIdPresent uint8 FInterfacePresent uint8 FResourceType TUUID FMetadata TRPC_C_OPT_METADATA_DESCRIPTOR FSessionId TUUID FInterface TRPC_SYNTAX_IDENTIFIER FCertContext uintptr } type TREAD_ELEMENT_ADDRESS_INFO = struct { FNumberOfElements TDWORD FElementStatus [1]TCHANGER_ELEMENT_STATUS } type TREASON_CONTEXT = struct { FVersion TULONG FFlags TDWORD FReason struct { FSimpleReasonString [0]TLPWSTR FDetailed struct { FLocalizedReasonModule THMODULE FLocalizedReasonId TULONG FReasonStringCount TULONG FReasonStrings uintptr } } } type TREASSIGN_BLOCKS = struct { FReserved TWORD FCount TWORD FBlockNumber [1]TDWORD } type TRECONVERTSTRING = struct { FdwSize TDWORD FdwVersion TDWORD FdwStrLen TDWORD FdwStrOffset TDWORD FdwCompStrLen TDWORD FdwCompStrOffset TDWORD FdwTargetStrLen TDWORD FdwTargetStrOffset TDWORD } type TRECT = struct { Fleft TLONG Ftop TLONG Fright TLONG Fbottom TLONG } type TRECTL = struct { Fleft TLONG Ftop TLONG Fright TLONG Fbottom TLONG } type TREDIRECTION_DESCRIPTOR = struct { FVersion TULONG FFunctionCount TULONG FRedirections TPCREDIRECTION_FUNCTION_DESCRIPTOR } type TREDIRECTION_FUNCTION_DESCRIPTOR = struct { FDllName TPCSTR FFunctionName TPCSTR FRedirectionTarget TPVOID } type TREGCLS = int32 type TREGISTERWORD = struct { FlpReading TLPSTR FlpWord TLPSTR } type TREGISTERWORDA = struct { FlpReading TLPSTR FlpWord TLPSTR } type TREGISTERWORDENUMPROCA = uintptr type TREGISTERWORDENUMPROCW = uintptr type TREGISTERWORDW = struct { FlpReading TLPWSTR FlpWord TLPWSTR } type TREGKIND = int32 type TREGSAM = uint32 type TREG_PROVIDER = struct { Fpi_R0_1val TPQUERYHANDLER Fpi_R0_allvals TPQUERYHANDLER Fpi_R3_1val TPQUERYHANDLER Fpi_R3_allvals TPQUERYHANDLER Fpi_flags TDWORD Fpi_key_context TLPVOID } type TREMOTE_NAME_INFO = struct { FlpUniversalName TLPSTR FlpConnectionName TLPSTR FlpRemainingPath TLPSTR } type TREMOTE_NAME_INFOA = struct { FlpUniversalName TLPSTR FlpConnectionName TLPSTR FlpRemainingPath TLPSTR } type TREMOTE_NAME_INFOW = struct { FlpUniversalName TLPWSTR FlpConnectionName TLPWSTR FlpRemainingPath TLPWSTR } type TREMSECURITY_ATTRIBUTES = struct { FnLength TDWORD FlpSecurityDescriptor TDWORD FbInheritHandle TWINBOOL } type TREPARSE_GUID_DATA_BUFFER = struct { FReparseTag TDWORD FReparseDataLength TWORD FReserved TWORD FReparseGuid TGUID FGenericReparseBuffer struct { FDataBuffer [1]TBYTE } } type TREQUEST_OPLOCK_INPUT_BUFFER = struct { FStructureVersion TWORD FStructureLength TWORD FRequestedOplockLevel TDWORD FFlags TDWORD } type TREQUEST_OPLOCK_OUTPUT_BUFFER = struct { FStructureVersion TWORD FStructureLength TWORD FOriginalOplockLevel TDWORD FNewOplockLevel TDWORD FFlags TDWORD FAccessMode TACCESS_MASK FShareMode TWORD } type TRESIZE_VIRTUAL_DISK_FLAG = int32 type TRESIZE_VIRTUAL_DISK_VERSION = int32 type TRESOURCEMANAGER_BASIC_INFORMATION = struct { FResourceManagerId TGUID FDescriptionLength TDWORD FDescription [1]TWCHAR } type TRESOURCEMANAGER_COMPLETION_INFORMATION = struct { FIoCompletionPortHandle THANDLE FCompletionKey TULONG_PTR } type TRESOURCEMANAGER_INFORMATION_CLASS = int32 type TRGBQUAD = struct { FrgbBlue TBYTE FrgbGreen TBYTE FrgbRed TBYTE FrgbReserved TBYTE } type TRGBTRIPLE = struct { FrgbtBlue TBYTE FrgbtGreen TBYTE FrgbtRed TBYTE } type TRGNDATA = struct { Frdh TRGNDATAHEADER FBuffer [1]int8 } type TRGNDATAHEADER = struct { FdwSize TDWORD FiType TDWORD FnCount TDWORD FnRgnSize TDWORD FrcBound TRECT } type TRID_DEVICE_INFO = struct { FcbSize TDWORD FdwType TDWORD F__ccgo2_8 struct { Fkeyboard [0]TRID_DEVICE_INFO_KEYBOARD Fhid [0]TRID_DEVICE_INFO_HID Fmouse TRID_DEVICE_INFO_MOUSE F__ccgo_pad3 [8]byte } } type TRID_DEVICE_INFO_HID = struct { FdwVendorId TDWORD FdwProductId TDWORD FdwVersionNumber TDWORD FusUsagePage TUSHORT FusUsage TUSHORT } type TRID_DEVICE_INFO_KEYBOARD = struct { FdwType TDWORD FdwSubType TDWORD FdwKeyboardMode TDWORD FdwNumberOfFunctionKeys TDWORD FdwNumberOfIndicators TDWORD FdwNumberOfKeysTotal TDWORD } type TRID_DEVICE_INFO_MOUSE = struct { FdwId TDWORD FdwNumberOfButtons TDWORD FdwSampleRate TDWORD FfHasHorizontalWheel TWINBOOL } type TRIP_INFO = struct { FdwError TDWORD FdwType TDWORD } type TRIVERTEX = TTRIVERTEX type TROOT_INFO_LUID = struct { FLowPart TDWORD FHighPart TLONG } type TRPCLT_PDU_FILTER_FUNC = uintptr type TRPCOLEDATAREP = uint32 type TRPCOLEMESSAGE = struct { Freserved1 uintptr FdataRepresentation TRPCOLEDATAREP FBuffer uintptr FcbBuffer TULONG FiMethod TULONG Freserved2 [5]uintptr FrpcFlags TULONG } type TRPCOPT_PROPERTIES = int32 type TRPCOPT_SERVER_LOCALITY_VALUES = int32 type TRPC_ASYNC_EVENT = int32 type TRPC_AUTHZ_HANDLE = uintptr type TRPC_AUTH_IDENTITY_HANDLE = uintptr type TRPC_AUTH_KEY_RETRIEVAL_FN = uintptr type TRPC_BINDING_HANDLE = uintptr type TRPC_BINDING_HANDLE_OPTIONS = struct { FVersion uint32 FFlags uint32 FComTimeout uint32 FCallTimeout uint32 } type TRPC_BINDING_HANDLE_OPTIONS_V1 = struct { FVersion uint32 FFlags uint32 FComTimeout uint32 FCallTimeout uint32 } type TRPC_BINDING_HANDLE_SECURITY = struct { FVersion uint32 FServerPrincName uintptr FAuthnLevel uint32 FAuthnSvc uint32 FAuthIdentity uintptr FSecurityQos uintptr } type TRPC_BINDING_HANDLE_SECURITY_V1 = struct { FVersion uint32 FServerPrincName uintptr FAuthnLevel uint32 FAuthnSvc uint32 FAuthIdentity uintptr FSecurityQos uintptr } type TRPC_BINDING_HANDLE_TEMPLATE = struct { FVersion uint32 FFlags uint32 FProtocolSequence uint32 FNetworkAddress uintptr FStringEndpoint uintptr Fu1 struct { FReserved uintptr } FObjectUuid TUUID } type TRPC_BINDING_HANDLE_TEMPLATE_V1 = struct { FVersion uint32 FFlags uint32 FProtocolSequence uint32 FNetworkAddress uintptr FStringEndpoint uintptr Fu1 struct { FReserved uintptr } FObjectUuid TUUID } type TRPC_BINDING_VECTOR = struct { FCount uint32 FBindingH [1]TRPC_BINDING_HANDLE } type TRPC_BUFPTR = uintptr type TRPC_CALL_ATTRIBUTES = struct { FVersion uint32 FFlags uint32 FServerPrincipalNameBufferLength uint32 FServerPrincipalName uintptr FClientPrincipalNameBufferLength uint32 FClientPrincipalName uintptr FAuthenticationLevel uint32 FAuthenticationService uint32 FNullSession TWINBOOL } type TRPC_CALL_ATTRIBUTES_A = struct { FVersion uint32 FFlags uint32 FServerPrincipalNameBufferLength uint32 FServerPrincipalName uintptr FClientPrincipalNameBufferLength uint32 FClientPrincipalName uintptr FAuthenticationLevel uint32 FAuthenticationService uint32 FNullSession TWINBOOL FKernelMode TWINBOOL FProtocolSequence uint32 FIsClientLocal TRpcCallClientLocality FClientPID THANDLE FCallStatus uint32 FCallType TRpcCallType FCallLocalAddress uintptr FOpNum uint16 FInterfaceUuid TUUID } type TRPC_CALL_ATTRIBUTES_V1_A = struct { FVersion uint32 FFlags uint32 FServerPrincipalNameBufferLength uint32 FServerPrincipalName uintptr FClientPrincipalNameBufferLength uint32 FClientPrincipalName uintptr FAuthenticationLevel uint32 FAuthenticationService uint32 FNullSession TWINBOOL } type TRPC_CALL_ATTRIBUTES_V1_W = struct { FVersion uint32 FFlags uint32 FServerPrincipalNameBufferLength uint32 FServerPrincipalName uintptr FClientPrincipalNameBufferLength uint32 FClientPrincipalName uintptr FAuthenticationLevel uint32 FAuthenticationService uint32 FNullSession TWINBOOL } type TRPC_CALL_ATTRIBUTES_V2_A = struct { FVersion uint32 FFlags uint32 FServerPrincipalNameBufferLength uint32 FServerPrincipalName uintptr FClientPrincipalNameBufferLength uint32 FClientPrincipalName uintptr FAuthenticationLevel uint32 FAuthenticationService uint32 FNullSession TWINBOOL FKernelMode TWINBOOL FProtocolSequence uint32 FIsClientLocal TRpcCallClientLocality FClientPID THANDLE FCallStatus uint32 FCallType TRpcCallType FCallLocalAddress uintptr FOpNum uint16 FInterfaceUuid TUUID } type TRPC_CALL_ATTRIBUTES_V2_W = struct { FVersion uint32 FFlags uint32 FServerPrincipalNameBufferLength uint32 FServerPrincipalName uintptr FClientPrincipalNameBufferLength uint32 FClientPrincipalName uintptr FAuthenticationLevel uint32 FAuthenticationService uint32 FNullSession TWINBOOL FKernelMode TWINBOOL FProtocolSequence uint32 FIsClientLocal TRpcCallClientLocality FClientPID THANDLE FCallStatus uint32 FCallType TRpcCallType FCallLocalAddress uintptr FOpNum uint16 FInterfaceUuid TUUID } type TRPC_CALL_ATTRIBUTES_W = struct { FVersion uint32 FFlags uint32 FServerPrincipalNameBufferLength uint32 FServerPrincipalName uintptr FClientPrincipalNameBufferLength uint32 FClientPrincipalName uintptr FAuthenticationLevel uint32 FAuthenticationService uint32 FNullSession TWINBOOL FKernelMode TWINBOOL FProtocolSequence uint32 FIsClientLocal TRpcCallClientLocality FClientPID THANDLE FCallStatus uint32 FCallType TRpcCallType FCallLocalAddress uintptr FOpNum uint16 FInterfaceUuid TUUID } type TRPC_CALL_LOCAL_ADDRESS_A = struct { FVersion uint32 FBuffer uintptr FBufferSize uint32 FAddressFormat TRpcLocalAddressFormat } type TRPC_CALL_LOCAL_ADDRESS_V1_A = struct { FVersion uint32 FBuffer uintptr FBufferSize uint32 FAddressFormat TRpcLocalAddressFormat } type TRPC_CALL_LOCAL_ADDRESS_V1_W = struct { FVersion uint32 FBuffer uintptr FBufferSize uint32 FAddressFormat TRpcLocalAddressFormat } type TRPC_CALL_LOCAL_ADDRESS_W = struct { FVersion uint32 FBuffer uintptr FBufferSize uint32 FAddressFormat TRpcLocalAddressFormat } type TRPC_CLIENT_INFORMATION1 = struct { FUserName uintptr FComputerName uintptr FPrivilege uint16 FAuthFlags uint32 } type TRPC_CLIENT_INTERFACE = struct { FLength uint32 FInterfaceId TRPC_SYNTAX_IDENTIFIER FTransferSyntax TRPC_SYNTAX_IDENTIFIER FDispatchTable TPRPC_DISPATCH_TABLE FRpcProtseqEndpointCount uint32 FRpcProtseqEndpoint TPRPC_PROTSEQ_ENDPOINT FReserved TULONG_PTR FInterpreterInfo uintptr FFlags uint32 } type TRPC_CSTR = uintptr type TRPC_C_OPT_METADATA_DESCRIPTOR = struct { FBufferSize uint32 FBuffer uintptr } type TRPC_DISPATCH_FUNCTION = uintptr type TRPC_DISPATCH_TABLE = struct { FDispatchTableCount uint32 FDispatchTable uintptr FReserved TLONG_PTR } type TRPC_EP_INQ_HANDLE = uintptr type TRPC_ERROR_ENUM_HANDLE = struct { FSignature TULONG FCurrentPos uintptr FHead uintptr } type TRPC_HTTP_PROXY_FREE_STRING = uintptr type TRPC_HTTP_REDIRECTOR_STAGE = int32 type TRPC_HTTP_TRANSPORT_CREDENTIALS_A = struct { FTransportCredentials uintptr FFlags uint32 FAuthenticationTarget uint32 FNumberOfAuthnSchemes uint32 FAuthnSchemes uintptr FServerCertificateSubject uintptr } type TRPC_HTTP_TRANSPORT_CREDENTIALS_W = struct { FTransportCredentials uintptr FFlags uint32 FAuthenticationTarget uint32 FNumberOfAuthnSchemes uint32 FAuthnSchemes uintptr FServerCertificateSubject uintptr } type TRPC_IF_HANDLE = uintptr type TRPC_IF_ID = struct { FUuid TUUID FVersMajor uint16 FVersMinor uint16 } type TRPC_IF_ID_VECTOR = struct { FCount uint32 FIfId [1]uintptr } type TRPC_IMPORT_CONTEXT_P = struct { FLookupContext TRPC_NS_HANDLE FProposedHandle TRPC_BINDING_HANDLE FBindings uintptr } type TRPC_LENGTH = uint32 type TRPC_MESSAGE = struct { FHandle TRPC_BINDING_HANDLE FDataRepresentation uint32 FBuffer uintptr FBufferLength uint32 FProcNum uint32 FTransferSyntax TPRPC_SYNTAX_IDENTIFIER FRpcInterfaceInformation uintptr FReservedForRuntime uintptr FManagerEpv uintptr FImportContext uintptr FRpcFlags uint32 } type TRPC_MGMT_AUTHORIZATION_FN = uintptr type TRPC_NEW_HTTP_PROXY_CHANNEL = uintptr type TRPC_NOTIFICATIONS = int32 type TRPC_NOTIFICATION_TYPES = int32 type TRPC_NS_HANDLE = uintptr type TRPC_POLICY = struct { FLength uint32 FEndpointFlags uint32 FNICFlags uint32 } type TRPC_PROTSEQ_ENDPOINT = struct { FRpcProtocolSequence uintptr FEndpoint uintptr } type TRPC_PROTSEQ_VECTORA = struct { FCount uint32 FProtseq [1]uintptr } type TRPC_PROTSEQ_VECTORW = struct { FCount uint32 FProtseq [1]uintptr } type TRPC_SECURITY_QOS = struct { FVersion uint32 FCapabilities uint32 FIdentityTracking uint32 FImpersonationType uint32 } type TRPC_SECURITY_QOS_V2_A = struct { FVersion uint32 FCapabilities uint32 FIdentityTracking uint32 FImpersonationType uint32 FAdditionalSecurityInfoType uint32 Fu struct { FHttpCredentials uintptr } } type TRPC_SECURITY_QOS_V2_W = struct { FVersion uint32 FCapabilities uint32 FIdentityTracking uint32 FImpersonationType uint32 FAdditionalSecurityInfoType uint32 Fu struct { FHttpCredentials uintptr } } type TRPC_SECURITY_QOS_V3_A = struct { FVersion uint32 FCapabilities uint32 FIdentityTracking uint32 FImpersonationType uint32 FAdditionalSecurityInfoType uint32 Fu struct { FHttpCredentials uintptr } FSid uintptr } type TRPC_SECURITY_QOS_V3_W = struct { FVersion uint32 FCapabilities uint32 FIdentityTracking uint32 FImpersonationType uint32 FAdditionalSecurityInfoType uint32 Fu struct { FHttpCredentials uintptr } FSid uintptr } type TRPC_SERVER_INTERFACE = struct { FLength uint32 FInterfaceId TRPC_SYNTAX_IDENTIFIER FTransferSyntax TRPC_SYNTAX_IDENTIFIER FDispatchTable TPRPC_DISPATCH_TABLE FRpcProtseqEndpointCount uint32 FRpcProtseqEndpoint TPRPC_PROTSEQ_ENDPOINT FDefaultManagerEpv uintptr FInterpreterInfo uintptr FFlags uint32 } type TRPC_SETFILTER_FUNC = uintptr type TRPC_SS_THREAD_HANDLE = uintptr type TRPC_STATS_VECTOR = struct { FCount uint32 FStats [1]uint32 } type TRPC_STATUS = int32 type TRPC_SYNTAX_IDENTIFIER = struct { FSyntaxGUID TGUID FSyntaxVersion TRPC_VERSION } type TRPC_TRANSFER_SYNTAX = struct { FUuid TUUID FVersMajor uint16 FVersMinor uint16 } type TRPC_VERSION = struct { FMajorVersion uint16 FMinorVersion uint16 } type TRPC_WSTR = uintptr type TRSAPUBKEY = struct { Fmagic TDWORD Fbitlen TDWORD Fpubexp TDWORD } type TRTL_BARRIER = struct { FReserved1 TDWORD FReserved2 TDWORD FReserved3 [2]TULONG_PTR FReserved4 TDWORD FReserved5 TDWORD } type TRTL_CONDITION_VARIABLE = struct { FPtr TPVOID } type TRTL_CRITICAL_SECTION = struct { FDebugInfo TPRTL_CRITICAL_SECTION_DEBUG FLockCount TLONG FRecursionCount TLONG FOwningThread THANDLE FLockSemaphore THANDLE FSpinCount TULONG_PTR } type TRTL_CRITICAL_SECTION_DEBUG = struct { FType TWORD FCreatorBackTraceIndex TWORD FCriticalSection uintptr FProcessLocksList TLIST_ENTRY FEntryCount TDWORD FContentionCount TDWORD FFlags TDWORD FCreatorBackTraceIndexHigh TWORD FSpareWORD TWORD } type TRTL_OSVERSIONINFOEXW = struct { FdwOSVersionInfoSize TDWORD FdwMajorVersion TDWORD FdwMinorVersion TDWORD FdwBuildNumber TDWORD FdwPlatformId TDWORD FszCSDVersion [128]TWCHAR FwServicePackMajor TWORD FwServicePackMinor TWORD FwSuiteMask TWORD FwProductType TBYTE FwReserved TBYTE } type TRTL_OSVERSIONINFOW = struct { FdwOSVersionInfoSize TDWORD FdwMajorVersion TDWORD FdwMinorVersion TDWORD FdwBuildNumber TDWORD FdwPlatformId TDWORD FszCSDVersion [128]TWCHAR } type TRTL_RESOURCE_DEBUG = struct { FType TWORD FCreatorBackTraceIndex TWORD FCriticalSection uintptr FProcessLocksList TLIST_ENTRY FEntryCount TDWORD FContentionCount TDWORD FFlags TDWORD FCreatorBackTraceIndexHigh TWORD FSpareWORD TWORD } type TRTL_RUN_ONCE = struct { FPtr TPVOID } type TRTL_SRWLOCK = struct { FPtr TPVOID } type TRTL_UMS_SCHEDULER_REASON = int32 type TRTL_UMS_THREAD_INFO_CLASS = int32 type TRTL_VERIFIER_DLL_DESCRIPTOR = struct { FDllName TPWCHAR FDllFlags TDWORD FDllAddress TPVOID FDllThunks TPRTL_VERIFIER_THUNK_DESCRIPTOR } type TRTL_VERIFIER_DLL_LOAD_CALLBACK = uintptr type TRTL_VERIFIER_DLL_UNLOAD_CALLBACK = uintptr type TRTL_VERIFIER_NTDLLHEAPFREE_CALLBACK = uintptr type TRTL_VERIFIER_PROVIDER_DESCRIPTOR = struct { FLength TDWORD FProviderDlls TPRTL_VERIFIER_DLL_DESCRIPTOR FProviderDllLoadCallback TRTL_VERIFIER_DLL_LOAD_CALLBACK FProviderDllUnloadCallback TRTL_VERIFIER_DLL_UNLOAD_CALLBACK FVerifierImage TPWSTR FVerifierFlags TDWORD FVerifierDebug TDWORD FRtlpGetStackTraceAddress TPVOID FRtlpDebugPageHeapCreate TPVOID FRtlpDebugPageHeapDestroy TPVOID FProviderNtdllHeapFreeCallback TRTL_VERIFIER_NTDLLHEAPFREE_CALLBACK } type TRTL_VERIFIER_THUNK_DESCRIPTOR = struct { FThunkName TPCHAR FThunkOldAddress TPVOID FThunkNewAddress TPVOID } const TRUETYPE_FONTTYPE = 4 const TRUNCATE_EXISTING = 5 const TRY_AGAIN = 11002 type TRemBINDINFO = struct { FcbSize TULONG FszExtraInfo TLPWSTR FgrfBindInfoF TDWORD FdwBindVerb TDWORD FszCustomVerb TLPWSTR FcbstgmedData TDWORD FdwOptions TDWORD FdwOptionsFlags TDWORD FdwCodePage TDWORD FsecurityAttributes TREMSECURITY_ATTRIBUTES Fiid TIID FpUnk uintptr FdwReserved TDWORD } type TRemFORMATETC = struct { FcfFormat TDWORD Fptd TDWORD FdwAspect TDWORD Flindex TLONG Ftymed TDWORD } type TRemHBITMAP = struct { FcbData TULONG Fdata [1]Tbyte } type TRemHBRUSH = struct { FcbData TULONG Fdata [1]Tbyte } type TRemHENHMETAFILE = struct { FcbData TULONG Fdata [1]Tbyte } type TRemHGLOBAL = struct { FfNullHGlobal TLONG FcbData TULONG Fdata [1]Tbyte } type TRemHMETAFILEPICT = struct { Fmm TLONG FxExt TLONG FyExt TLONG FcbData TULONG Fdata [1]Tbyte } type TRemHPALETTE = struct { FcbData TULONG Fdata [1]Tbyte } type TRemSNB = struct { FulCntStr TULONG FulCntChar TULONG FrgString [1]TOLECHAR } type TRemSTGMEDIUM = struct { Ftymed TDWORD FdwHandleType TDWORD FpData TULONG FpUnkForRelease TULONG FcbData TULONG Fdata [1]Tbyte } type TRemotableHandle = struct { FfContext TLONG Fu t__WIDL_wtypes_generated_name_00000009 } type TReplacesCorHdrNumericDefines = int32 type TRpcCallClientLocality = int32 type TRpcCallType = int32 type TRpcLocalAddressFormat = int32 type TSAFEARRAY = struct { FcDims TUSHORT FfFeatures TUSHORT FcbElements TULONG FcLocks TULONG FpvData TPVOID Frgsabound [1]TSAFEARRAYBOUND } type TSAFEARRAYBOUND = struct { FcElements TULONG FlLbound TLONG } type TSAFEARRAYUNION = struct { FsfType TULONG Fu t__WIDL_oaidl_generated_name_0000000E } type TSAFEARR_BRECORD = struct { FSize TULONG FaRecord uintptr } type TSAFEARR_BSTR = struct { FSize TULONG FaBstr uintptr } type TSAFEARR_DISPATCH = struct { FSize TULONG FapDispatch uintptr } type TSAFEARR_HAVEIID = struct { FSize TULONG FapUnknown uintptr Fiid TIID } type TSAFEARR_UNKNOWN = struct { FSize TULONG FapUnknown uintptr } type TSAFEARR_VARIANT = struct { FSize TULONG FaVariant uintptr } type TSAVEPOINT_ID = uint32 type TSCARD_ATRMASK = struct { FcbAtr TDWORD FrgbAtr [36]TBYTE FrgbMask [36]TBYTE } type TSCARD_IO_REQUEST = struct { FdwProtocol TDWORD FcbPciLength TDWORD } type TSCARD_READERSTATE = struct { FszReader TLPCSTR FpvUserData TLPVOID FdwCurrentState TDWORD FdwEventState TDWORD FcbAtr TDWORD FrgbAtr [36]TBYTE } type TSCARD_READERSTATEA = struct { FszReader TLPCSTR FpvUserData TLPVOID FdwCurrentState TDWORD FdwEventState TDWORD FcbAtr TDWORD FrgbAtr [36]TBYTE } type TSCARD_READERSTATEW = struct { FszReader TLPCWSTR FpvUserData TLPVOID FdwCurrentState TDWORD FdwEventState TDWORD FcbAtr TDWORD FrgbAtr [36]TBYTE } type TSCARD_T0_COMMAND = struct { FbCla TBYTE FbIns TBYTE FbP1 TBYTE FbP2 TBYTE FbP3 TBYTE } type TSCARD_T0_REQUEST = struct { FioRequest TSCARD_IO_REQUEST FbSw1 TBYTE FbSw2 TBYTE F__ccgo3_10 struct { FrgbHeader [0][5]TBYTE FCmdBytes TSCARD_T0_COMMAND } } type TSCARD_T1_REQUEST = struct { FioRequest TSCARD_IO_REQUEST } type TSCHANNEL_ALG = struct { FdwUse TDWORD FAlgid TALG_ID FcBits TDWORD FdwFlags TDWORD FdwReserved TDWORD } type TSCODE = int32 type TSCONTEXT_QUEUE = struct { FNumberOfObjects uint32 FArrayOfObjects uintptr } type TSCOPE_TABLE_AMD64 = struct { FCount TDWORD FScopeRecord [1]struct { FBeginAddress TDWORD FEndAddress TDWORD FHandlerAddress TDWORD FJumpTarget TDWORD } } type TSCROLLBARINFO = struct { FcbSize TDWORD FrcScrollBar TRECT FdxyLineButton int32 FxyThumbTop int32 FxyThumbBottom int32 Freserved int32 Frgstate [6]TDWORD } type TSCROLLINFO = struct { FcbSize TUINT FfMask TUINT FnMin int32 FnMax int32 FnPage TUINT FnPos int32 FnTrackPos int32 } type TSCRUB_DATA_INPUT = struct { FSize TDWORD FFlags TDWORD FMaximumIos TDWORD FReserved [17]TDWORD FResumeContext [816]TBYTE } type TSC_ACTION = struct { FType TSC_ACTION_TYPE FDelay TDWORD } type TSC_ACTION_TYPE = int32 type TSC_ENUM_TYPE = int32 type TSC_HANDLE = uintptr type TSC_HANDLE__ = struct { Funused int32 } type TSC_LOCK = uintptr type TSC_STATUS_TYPE = int32 type TSChannelHookCallInfo = struct { Fiid TIID FcbSize TDWORD FuCausality TGUID FdwServerPid TDWORD FiMethod TDWORD FpObject uintptr } type TSD_CHANGE_MACHINE_SID_INPUT = struct { FCurrentMachineSIDOffset TUSHORT FCurrentMachineSIDLength TUSHORT FNewMachineSIDOffset TUSHORT FNewMachineSIDLength TUSHORT } type TSECURITY_ATTRIBUTES = struct { FnLength TDWORD FlpSecurityDescriptor TLPVOID FbInheritHandle TWINBOOL } type TSECURITY_CAPABILITIES = struct { FAppContainerSid TPSID FCapabilities TPSID_AND_ATTRIBUTES FCapabilityCount TDWORD FReserved TDWORD } type TSECURITY_CONTEXT_TRACKING_MODE = uint8 type TSECURITY_DESCRIPTOR = struct { FRevision TBYTE FSbz1 TBYTE FControl TSECURITY_DESCRIPTOR_CONTROL FOwner TPSID FGroup TPSID FSacl TPACL FDacl TPACL } type TSECURITY_DESCRIPTOR_CONTROL = uint16 type TSECURITY_DESCRIPTOR_RELATIVE = struct { FRevision TBYTE FSbz1 TBYTE FControl TSECURITY_DESCRIPTOR_CONTROL FOwner TDWORD FGroup TDWORD FSacl TDWORD FDacl TDWORD } type TSECURITY_IMPERSONATION_LEVEL = int32 type TSECURITY_INFORMATION = uint32 type TSECURITY_QUALITY_OF_SERVICE = struct { FLength TDWORD FImpersonationLevel TSECURITY_IMPERSONATION_LEVEL FContextTrackingMode TSECURITY_CONTEXT_TRACKING_MODE FEffectiveOnly TBOOLEAN } type TSECURITY_STATUS = int32 type TSEC_WINNT_AUTH_IDENTITY_A = struct { FUser uintptr FUserLength uint32 FDomain uintptr FDomainLength uint32 FPassword uintptr FPasswordLength uint32 FFlags uint32 } type TSEC_WINNT_AUTH_IDENTITY_W = struct { FUser uintptr FUserLength uint32 FDomain uintptr FDomainLength uint32 FPassword uintptr FPasswordLength uint32 FFlags uint32 } type TSENDASYNCPROC = uintptr type TSENDCMDINPARAMS = struct { FcBufferSize TDWORD FirDriveRegs TIDEREGS FbDriveNumber TBYTE FbReserved [3]TBYTE FdwReserved [4]TDWORD FbBuffer [1]TBYTE } type TSENDCMDOUTPARAMS = struct { FcBufferSize TDWORD FDriverStatus TDRIVERSTATUS FbBuffer [1]TBYTE } type TSERIALIZEDPROPERTYVALUE = struct { FdwType TDWORD Frgb [1]TBYTE } type TSERIALKEYS = struct { FcbSize TUINT FdwFlags TDWORD FlpszActivePort TLPSTR FlpszPort TLPSTR FiBaudRate TUINT FiPortState TUINT FiActive TUINT } type TSERIALKEYSA = struct { FcbSize TUINT FdwFlags TDWORD FlpszActivePort TLPSTR FlpszPort TLPSTR FiBaudRate TUINT FiPortState TUINT FiActive TUINT } type TSERIALKEYSW = struct { FcbSize TUINT FdwFlags TDWORD FlpszActivePort TLPWSTR FlpszPort TLPWSTR FiBaudRate TUINT FiPortState TUINT FiActive TUINT } type TSERVERCALL = int32 type TSERVER_ROUTINE = uintptr type TSERVICE_CONTROL_STATUS_REASON_PARAMS = struct { FdwReason TDWORD FpszComment TLPSTR FServiceStatus TSERVICE_STATUS_PROCESS } type TSERVICE_CONTROL_STATUS_REASON_PARAMSA = struct { FdwReason TDWORD FpszComment TLPSTR FServiceStatus TSERVICE_STATUS_PROCESS } type TSERVICE_CONTROL_STATUS_REASON_PARAMSW = struct { FdwReason TDWORD FpszComment TLPWSTR FServiceStatus TSERVICE_STATUS_PROCESS } type TSERVICE_DELAYED_AUTO_START_INFO = struct { FfDelayedAutostart TWINBOOL } type TSERVICE_DESCRIPTION = struct { FlpDescription TLPSTR } type TSERVICE_DESCRIPTIONA = struct { FlpDescription TLPSTR } type TSERVICE_DESCRIPTIONW = struct { FlpDescription TLPWSTR } type TSERVICE_ERROR_TYPE = int32 type TSERVICE_FAILURE_ACTIONS = struct { FdwResetPeriod TDWORD FlpRebootMsg TLPSTR FlpCommand TLPSTR FcActions TDWORD FlpsaActions uintptr } type TSERVICE_FAILURE_ACTIONSA = struct { FdwResetPeriod TDWORD FlpRebootMsg TLPSTR FlpCommand TLPSTR FcActions TDWORD FlpsaActions uintptr } type TSERVICE_FAILURE_ACTIONSW = struct { FdwResetPeriod TDWORD FlpRebootMsg TLPWSTR FlpCommand TLPWSTR FcActions TDWORD FlpsaActions uintptr } type TSERVICE_FAILURE_ACTIONS_FLAG = struct { FfFailureActionsOnNonCrashFailures TWINBOOL } type TSERVICE_LOAD_TYPE = int32 type TSERVICE_NODE_TYPE = int32 type TSERVICE_NOTIFY = struct { FdwVersion TDWORD FpfnNotifyCallback TPFN_SC_NOTIFY_CALLBACK FpContext TPVOID FdwNotificationStatus TDWORD FServiceStatus TSERVICE_STATUS_PROCESS FdwNotificationTriggered TDWORD FpszServiceNames TLPSTR } type TSERVICE_NOTIFYA = struct { FdwVersion TDWORD FpfnNotifyCallback TPFN_SC_NOTIFY_CALLBACK FpContext TPVOID FdwNotificationStatus TDWORD FServiceStatus TSERVICE_STATUS_PROCESS FdwNotificationTriggered TDWORD FpszServiceNames TLPSTR } type TSERVICE_NOTIFYW = struct { FdwVersion TDWORD FpfnNotifyCallback TPFN_SC_NOTIFY_CALLBACK FpContext TPVOID FdwNotificationStatus TDWORD FServiceStatus TSERVICE_STATUS_PROCESS FdwNotificationTriggered TDWORD FpszServiceNames TLPWSTR } type TSERVICE_PRESHUTDOWN_INFO = struct { FdwPreshutdownTimeout TDWORD } type TSERVICE_REQUIRED_PRIVILEGES_INFO = struct { FpmszRequiredPrivileges TLPSTR } type TSERVICE_REQUIRED_PRIVILEGES_INFOA = struct { FpmszRequiredPrivileges TLPSTR } type TSERVICE_REQUIRED_PRIVILEGES_INFOW = struct { FpmszRequiredPrivileges TLPWSTR } type TSERVICE_SID_INFO = struct { FdwServiceSidType TDWORD } type TSERVICE_STATUS = struct { FdwServiceType TDWORD FdwCurrentState TDWORD FdwControlsAccepted TDWORD FdwWin32ExitCode TDWORD FdwServiceSpecificExitCode TDWORD FdwCheckPoint TDWORD FdwWaitHint TDWORD } type TSERVICE_STATUS_HANDLE = uintptr type TSERVICE_STATUS_HANDLE__ = struct { Funused int32 } type TSERVICE_STATUS_PROCESS = struct { FdwServiceType TDWORD FdwCurrentState TDWORD FdwControlsAccepted TDWORD FdwWin32ExitCode TDWORD FdwServiceSpecificExitCode TDWORD FdwCheckPoint TDWORD FdwWaitHint TDWORD FdwProcessId TDWORD FdwServiceFlags TDWORD } type TSERVICE_TABLE_ENTRY = struct { FlpServiceName TLPSTR FlpServiceProc TLPSERVICE_MAIN_FUNCTIONA } type TSERVICE_TABLE_ENTRYA = struct { FlpServiceName TLPSTR FlpServiceProc TLPSERVICE_MAIN_FUNCTIONA } type TSERVICE_TABLE_ENTRYW = struct { FlpServiceName TLPWSTR FlpServiceProc TLPSERVICE_MAIN_FUNCTIONW } type TSESSION_BUFFER = struct { Flsn TUCHAR Fstate TUCHAR Flocal_name [16]TUCHAR Fremote_name [16]TUCHAR Frcvs_outstanding TUCHAR Fsends_outstanding TUCHAR } type TSESSION_HEADER = struct { Fsess_name TUCHAR Fnum_sess TUCHAR Frcv_dg_outstanding TUCHAR Frcv_any_outstanding TUCHAR } type TSET_PARTITION_INFORMATION = struct { FPartitionType TBYTE } type TSET_PARTITION_INFORMATION_MBR = struct { FPartitionType TBYTE } type TSET_POWER_SETTING_VALUE = struct { FVersion TDWORD FGuid TGUID FPowerCondition TSYSTEM_POWER_CONDITION FDataLength TDWORD FData [1]TBYTE } type TSET_VIRTUAL_DISK_INFO_VERSION = int32 type TSE_ACCESS_REPLY = struct { FSize TDWORD FResultListCount TDWORD FGrantedAccess TPACCESS_MASK FAccessStatus TPDWORD FAccessReason TPACCESS_REASONS FPrivileges uintptr } type TSE_ACCESS_REQUEST = struct { FSize TDWORD FSeSecurityDescriptor TPSE_SECURITY_DESCRIPTOR FDesiredAccess TACCESS_MASK FPreviouslyGrantedAccess TACCESS_MASK FPrincipalSelfSid TPSID FGenericMapping TPGENERIC_MAPPING FObjectTypeListCount TDWORD FObjectTypeList TPOBJECT_TYPE_LIST } type TSE_IMPERSONATION_STATE = struct { FToken TPACCESS_TOKEN FCopyOnOpen TBOOLEAN FEffectiveOnly TBOOLEAN FLevel TSECURITY_IMPERSONATION_LEVEL } type TSE_LEARNING_MODE_DATA_TYPE = int32 type TSE_SECURITY_DESCRIPTOR = struct { FSize TDWORD FFlags TDWORD FSecurityDescriptor TPSECURITY_DESCRIPTOR } type TSF_TYPE = int32 type TSHCREATEPROCESSINFOW = struct { FcbSize TDWORD FfMask TULONG Fhwnd THWND FpszFile TLPCWSTR FpszParameters TLPCWSTR FpszCurrentDirectory TLPCWSTR FhUserToken THANDLE FlpProcessAttributes TLPSECURITY_ATTRIBUTES FlpThreadAttributes TLPSECURITY_ATTRIBUTES FbInheritHandles TWINBOOL FdwCreationFlags TDWORD FlpStartupInfo TLPSTARTUPINFOW FlpProcessInformation TLPPROCESS_INFORMATION } type TSHELLHOOKINFO = struct { Fhwnd THWND Frc TRECT } type TSHFILEINFO = struct { FhIcon THICON FiIcon int32 FdwAttributes TDWORD FszDisplayName [260]TCHAR FszTypeName [80]TCHAR } type TSHFILEINFOA = struct { FhIcon THICON FiIcon int32 FdwAttributes TDWORD FszDisplayName [260]TCHAR FszTypeName [80]TCHAR } type TSHFILEINFOW = struct { FhIcon THICON FiIcon int32 FdwAttributes TDWORD FszDisplayName [260]TWCHAR FszTypeName [80]TWCHAR } type TSHFILEOPSTRUCT = struct { Fhwnd THWND FwFunc TUINT FpFrom TLPCSTR FpTo TLPCSTR FfFlags TFILEOP_FLAGS FfAnyOperationsAborted TWINBOOL FhNameMappings TLPVOID FlpszProgressTitle TPCSTR } type TSHFILEOPSTRUCTA = struct { Fhwnd THWND FwFunc TUINT FpFrom TLPCSTR FpTo TLPCSTR FfFlags TFILEOP_FLAGS FfAnyOperationsAborted TWINBOOL FhNameMappings TLPVOID FlpszProgressTitle TPCSTR } type TSHFILEOPSTRUCTW = struct { Fhwnd THWND FwFunc TUINT FpFrom TLPCWSTR FpTo TLPCWSTR FfFlags TFILEOP_FLAGS FfAnyOperationsAborted TWINBOOL FhNameMappings TLPVOID FlpszProgressTitle TPCWSTR } type TSHNAMEMAPPING = struct { FpszOldPath TLPSTR FpszNewPath TLPSTR FcchOldPath int32 FcchNewPath int32 } type TSHNAMEMAPPINGA = struct { FpszOldPath TLPSTR FpszNewPath TLPSTR FcchOldPath int32 FcchNewPath int32 } type TSHNAMEMAPPINGW = struct { FpszOldPath TLPWSTR FpszNewPath TLPWSTR FcchOldPath int32 FcchNewPath int32 } type TSHORT = int16 type TSHRINK_VOLUME_REQUEST_TYPES = int32 type TSHSTOCKICONID = int32 type TSHSTOCKICONINFO = struct { FcbSize TDWORD FhIcon THICON FiSysImageIndex int32 FiIcon int32 FszPath [260]TWCHAR } type TSID = struct { FRevision TBYTE FSubAuthorityCount TBYTE FIdentifierAuthority TSID_IDENTIFIER_AUTHORITY FSubAuthority [1]TDWORD } type TSID_AND_ATTRIBUTES = struct { FSid TPSID FAttributes TDWORD } type TSID_AND_ATTRIBUTES_ARRAY = [1]TSID_AND_ATTRIBUTES type TSID_AND_ATTRIBUTES_HASH = struct { FSidCount TDWORD FSidAttr TPSID_AND_ATTRIBUTES FHash [32]TSID_HASH_ENTRY } type TSID_IDENTIFIER_AUTHORITY = struct { FValue [6]TBYTE } type TSID_NAME_USE = int32 type TSINGLE_LIST_ENTRY = struct { FNext uintptr } type TSIZE = struct { Fcx TLONG Fcy TLONG } type TSIZEL = struct { Fcx TLONG Fcy TLONG } type TSI_COPYFILE = struct { FSourceFileNameLength TDWORD FDestinationFileNameLength TDWORD FFlags TDWORD FFileNameBuffer [1]TWCHAR } type TSLIST_ENTRY = struct { FNext uintptr } type TSMALL_RECT = struct { FLeft TSHORT FTop TSHORT FRight TSHORT FBottom TSHORT } type TSNB = uintptr type TSOCKADDR = struct { Fsa_family Tu_short Fsa_data [14]int8 } type TSOCKADDR_IN = struct { Fsin_family int16 Fsin_port Tu_short Fsin_addr Tin_addr Fsin_zero [8]int8 } type TSOFTDISTINFO = struct { FcbSize TULONG FdwFlags TDWORD FdwAdState TDWORD FszTitle TLPWSTR FszAbstract TLPWSTR FszHREF TLPWSTR FdwInstalledVersionMS TDWORD FdwInstalledVersionLS TDWORD FdwUpdateVersionMS TDWORD FdwUpdateVersionLS TDWORD FdwAdvertisedVersionMS TDWORD FdwAdvertisedVersionLS TDWORD FdwReserved TDWORD } type TSOLE_AUTHENTICATION_INFO = struct { FdwAuthnSvc TDWORD FdwAuthzSvc TDWORD FpAuthInfo uintptr } type TSOLE_AUTHENTICATION_LIST = struct { FcAuthInfo TDWORD FaAuthInfo uintptr } type TSOLE_AUTHENTICATION_SERVICE = struct { FdwAuthnSvc TDWORD FdwAuthzSvc TDWORD FpPrincipalName uintptr Fhr THRESULT } type TSOUNDSENTRY = struct { FcbSize TUINT FdwFlags TDWORD FiFSTextEffect TDWORD FiFSTextEffectMSec TDWORD FiFSTextEffectColorBits TDWORD FiFSGrafEffect TDWORD FiFSGrafEffectMSec TDWORD FiFSGrafEffectColor TDWORD FiWindowsEffect TDWORD FiWindowsEffectMSec TDWORD FlpszWindowsEffectDLL TLPSTR FiWindowsEffectOrdinal TDWORD } type TSOUNDSENTRYA = struct { FcbSize TUINT FdwFlags TDWORD FiFSTextEffect TDWORD FiFSTextEffectMSec TDWORD FiFSTextEffectColorBits TDWORD FiFSGrafEffect TDWORD FiFSGrafEffectMSec TDWORD FiFSGrafEffectColor TDWORD FiWindowsEffect TDWORD FiWindowsEffectMSec TDWORD FlpszWindowsEffectDLL TLPSTR FiWindowsEffectOrdinal TDWORD } type TSOUNDSENTRYW = struct { FcbSize TUINT FdwFlags TDWORD FiFSTextEffect TDWORD FiFSTextEffectMSec TDWORD FiFSTextEffectColorBits TDWORD FiFSGrafEffect TDWORD FiFSGrafEffectMSec TDWORD FiFSGrafEffectColor TDWORD FiWindowsEffect TDWORD FiWindowsEffectMSec TDWORD FlpszWindowsEffectDLL TLPWSTR FiWindowsEffectOrdinal TDWORD } type TSPHANDLE = uintptr type TSQLiteThread = struct { Ftid uintptr Fid uint32 FxTask uintptr FpIn uintptr FpResult uintptr } type TSRWLOCK = struct { FPtr TPVOID } type TSSL_EXTRA_CERT_CHAIN_POLICY_PARA = struct { F__ccgo0_0 struct { FcbSize [0]TDWORD FcbStruct TDWORD } FdwAuthType TDWORD FfdwChecks TDWORD FpwszServerName uintptr } type TSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS = struct { FcbSize TDWORD FdwErrorLevel TDWORD FdwErrorCategory TDWORD FdwReserved TDWORD FwszErrorText [256]TWCHAR } type TSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA = struct { FcbSize TDWORD FdwReserved TDWORD FpwszServerName TLPWSTR FrgpszHpkpValue [2]TLPSTR } type TSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA = struct { FcbSize TDWORD FdwReserved TDWORD FpwszServerName TPCWSTR } type TSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS = struct { FcbSize TDWORD FlError TLONG FwszErrorText [512]TWCHAR } type TSTARTUPINFO = struct { Fcb TDWORD FlpReserved TLPSTR FlpDesktop TLPSTR FlpTitle TLPSTR FdwX TDWORD FdwY TDWORD FdwXSize TDWORD FdwYSize TDWORD FdwXCountChars TDWORD FdwYCountChars TDWORD FdwFillAttribute TDWORD FdwFlags TDWORD FwShowWindow TWORD FcbReserved2 TWORD FlpReserved2 TLPBYTE FhStdInput THANDLE FhStdOutput THANDLE FhStdError THANDLE } type TSTARTUPINFOA = struct { Fcb TDWORD FlpReserved TLPSTR FlpDesktop TLPSTR FlpTitle TLPSTR FdwX TDWORD FdwY TDWORD FdwXSize TDWORD FdwYSize TDWORD FdwXCountChars TDWORD FdwYCountChars TDWORD FdwFillAttribute TDWORD FdwFlags TDWORD FwShowWindow TWORD FcbReserved2 TWORD FlpReserved2 TLPBYTE FhStdInput THANDLE FhStdOutput THANDLE FhStdError THANDLE } type TSTARTUPINFOEX = struct { FStartupInfo TSTARTUPINFOA FlpAttributeList TLPPROC_THREAD_ATTRIBUTE_LIST } type TSTARTUPINFOEXA = struct { FStartupInfo TSTARTUPINFOA FlpAttributeList TLPPROC_THREAD_ATTRIBUTE_LIST } type TSTARTUPINFOEXW = struct { FStartupInfo TSTARTUPINFOW FlpAttributeList TLPPROC_THREAD_ATTRIBUTE_LIST } type TSTARTUPINFOW = struct { Fcb TDWORD FlpReserved TLPWSTR FlpDesktop TLPWSTR FlpTitle TLPWSTR FdwX TDWORD FdwY TDWORD FdwXSize TDWORD FdwYSize TDWORD FdwXCountChars TDWORD FdwYCountChars TDWORD FdwFillAttribute TDWORD FdwFlags TDWORD FwShowWindow TWORD FcbReserved2 TWORD FlpReserved2 TLPBYTE FhStdInput THANDLE FhStdOutput THANDLE FhStdError THANDLE } type TSTATDATA = struct { Fformatetc TFORMATETC Fadvf TDWORD FpAdvSink uintptr FdwConnection TDWORD } type TSTATFLAG = int32 type TSTATPROPSETSTG = struct { Ffmtid TFMTID Fclsid TCLSID FgrfFlags TDWORD Fmtime TFILETIME Fctime TFILETIME Fatime TFILETIME FdwOSVersion TDWORD } type TSTATPROPSTG = struct { FlpwstrName TLPOLESTR Fpropid TPROPID Fvt TVARTYPE } type TSTDMSHLFLAGS = int32 type TSTGC = int32 type TSTGFMT = uint32 type TSTGMOVE = int32 type TSTGOPTIONS = struct { FusVersion TUSHORT Freserved TUSHORT FulSectorSize TULONG FpwcsTemplateFile uintptr } type TSTGTY = int32 type TSTICKYKEYS = struct { FcbSize TUINT FdwFlags TDWORD } type TSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FBytesPerCacheLine TDWORD FBytesOffsetForCacheAlignment TDWORD FBytesPerLogicalSector TDWORD FBytesPerPhysicalSector TDWORD FBytesOffsetForSectorAlignment TDWORD } type TSTORAGE_ADAPTER_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FMaximumTransferLength TDWORD FMaximumPhysicalPages TDWORD FAlignmentMask TDWORD FAdapterUsesPio TBOOLEAN FAdapterScansDown TBOOLEAN FCommandQueueing TBOOLEAN FAcceleratedTransfer TBOOLEAN FBusType TBYTE FBusMajorVersion TWORD FBusMinorVersion TWORD FSrbType TBYTE FAddressType TBYTE } type TSTORAGE_ALLOCATE_BC_STREAM_INPUT = struct { FVersion TULONG FRequestsPerPeriod TULONG FPeriod TULONG FRetryFailures TBOOLEAN FDiscardable TBOOLEAN FReserved1 [2]TBOOLEAN FAccessType TULONG FAccessMode TULONG } type TSTORAGE_ASSOCIATION_TYPE = int32 type TSTORAGE_BREAK_RESERVATION_REQUEST = struct { FLength TDWORD F_unused TBYTE FPathId TBYTE FTargetId TBYTE FLun TBYTE } type TSTORAGE_BUS_RESET_REQUEST = struct { FPathId TBYTE } type TSTORAGE_BUS_TYPE = int32 type TSTORAGE_CRYPTO_ALGORITHM_ID = int32 type TSTORAGE_CRYPTO_CAPABILITY = struct { FVersion TDWORD FSize TDWORD FCryptoCapabilityIndex TDWORD FAlgorithmId TSTORAGE_CRYPTO_ALGORITHM_ID FKeySize TSTORAGE_CRYPTO_KEY_SIZE FDataUnitSizeBitmask TDWORD } type TSTORAGE_CRYPTO_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FNumKeysSupported TDWORD FNumCryptoCapabilities TDWORD FCryptoCapabilities [1]TSTORAGE_CRYPTO_CAPABILITY } type TSTORAGE_CRYPTO_KEY_SIZE = int32 type TSTORAGE_DEPENDENCY_INFO_TYPE_1 = struct { FDependencyTypeFlags TDEPENDENT_DISK_FLAG FProviderSpecificFlags TULONG FVirtualStorageType TVIRTUAL_STORAGE_TYPE } type TSTORAGE_DEPENDENCY_INFO_TYPE_2 = struct { FDependencyTypeFlags TDEPENDENT_DISK_FLAG FProviderSpecificFlags TULONG FVirtualStorageType TVIRTUAL_STORAGE_TYPE FAncestorLevel TULONG FDependencyDeviceName TPWSTR FHostVolumeName TPWSTR FDependentVolumeName TPWSTR FDependentVolumeRelativePath TPWSTR } type TSTORAGE_DEPENDENCY_INFO_VERSION = int32 type TSTORAGE_DESCRIPTOR_HEADER = struct { FVersion TDWORD FSize TDWORD } type TSTORAGE_DEVICE_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FDeviceType TBYTE FDeviceTypeModifier TBYTE FRemovableMedia TBOOLEAN FCommandQueueing TBOOLEAN FVendorIdOffset TDWORD FProductIdOffset TDWORD FProductRevisionOffset TDWORD FSerialNumberOffset TDWORD FBusType TSTORAGE_BUS_TYPE FRawPropertiesLength TDWORD FRawDeviceProperties [1]TBYTE } type TSTORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FNumberOfFaultDomains TDWORD FFaultDomainIds [1]TGUID } type TSTORAGE_DEVICE_ID_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FNumberOfIdentifiers TDWORD FIdentifiers [1]TBYTE } type TSTORAGE_DEVICE_NUMBER = struct { FDeviceType TDWORD FDeviceNumber TDWORD FPartitionNumber TDWORD } type TSTORAGE_DEVICE_NUMBERS = struct { FVersion TDWORD FSize TDWORD FNumberOfDevices TDWORD FDevices [1]TSTORAGE_DEVICE_NUMBER } type TSTORAGE_DEVICE_NUMBER_EX = struct { FVersion TDWORD FSize TDWORD FFlags TDWORD FDeviceType TDWORD FDeviceNumber TDWORD FDeviceGuid TGUID FPartitionNumber TDWORD } type TSTORAGE_DEVICE_RESILIENCY_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FNameOffset TDWORD FNumberOfLogicalCopies TDWORD FNumberOfPhysicalCopies TDWORD FPhysicalDiskRedundancy TDWORD FNumberOfColumns TDWORD FInterleave TDWORD } type TSTORAGE_FAILURE_PREDICTION_CONFIG = struct { FVersion TDWORD FSize TDWORD FSet TBOOLEAN FEnabled TBOOLEAN FReserved TWORD } type TSTORAGE_HOTPLUG_INFO = struct { FSize TDWORD FMediaRemovable TBOOLEAN FMediaHotplug TBOOLEAN FDeviceHotplug TBOOLEAN FWriteCacheEnableOverride TBOOLEAN } type TSTORAGE_IDENTIFIER = struct { FCodeSet TSTORAGE_IDENTIFIER_CODE_SET FType TSTORAGE_IDENTIFIER_TYPE FIdentifierSize TUSHORT FNextOffset TUSHORT FAssociation TSTORAGE_ASSOCIATION_TYPE FIdentifier [1]TUCHAR } type TSTORAGE_IDENTIFIER_CODE_SET = int32 type TSTORAGE_IDENTIFIER_TYPE = int32 type TSTORAGE_ID_NAA_FORMAT = int32 type TSTORAGE_MEDIA_SERIAL_NUMBER_DATA = struct { FReserved TUSHORT FSerialNumberLength TUSHORT } type TSTORAGE_MEDIA_TYPE = int32 type TSTORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FMediumProductType TDWORD } type TSTORAGE_MINIPORT_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FPortdriver TSTORAGE_PORT_CODE_SET FLUNResetSupported TBOOLEAN FTargetResetSupported TBOOLEAN } type TSTORAGE_PORT_CODE_SET = int32 type TSTORAGE_PREDICT_FAILURE = struct { FPredictFailure TDWORD FVendorSpecific [512]TBYTE } type TSTORAGE_PRIORITY_HINT_SUPPORT = struct { FSupportFlags TULONG } type TSTORAGE_PROPERTY_ID = int32 type TSTORAGE_PROPERTY_QUERY = struct { FPropertyId TSTORAGE_PROPERTY_ID FQueryType TSTORAGE_QUERY_TYPE FAdditionalParameters [1]TBYTE } type TSTORAGE_PROPERTY_SET = struct { FPropertyId TSTORAGE_PROPERTY_ID FSetType TSTORAGE_SET_TYPE FAdditionalParameters [1]TBYTE } type TSTORAGE_PROTOCOL_ATA_DATA_TYPE = int32 type TSTORAGE_PROTOCOL_DATA_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FProtocolSpecificData TSTORAGE_PROTOCOL_SPECIFIC_DATA } type TSTORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT = struct { FVersion TDWORD FSize TDWORD FProtocolSpecificData TSTORAGE_PROTOCOL_SPECIFIC_DATA_EXT } type TSTORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE = struct { FAsUlong [0]TDWORD F__ccgo0_0 struct { F__ccgo0 uint32 } } type TSTORAGE_PROTOCOL_NVME_DATA_TYPE = int32 type TSTORAGE_PROTOCOL_SPECIFIC_DATA = struct { FProtocolType TSTORAGE_PROTOCOL_TYPE FDataType TDWORD FProtocolDataRequestValue TDWORD FProtocolDataRequestSubValue TDWORD FProtocolDataOffset TDWORD FProtocolDataLength TDWORD FFixedProtocolReturnData TDWORD FProtocolDataRequestSubValue2 TDWORD FProtocolDataRequestSubValue3 TDWORD FProtocolDataRequestSubValue4 TDWORD } type TSTORAGE_PROTOCOL_SPECIFIC_DATA_EXT = struct { FProtocolType TSTORAGE_PROTOCOL_TYPE FDataType TDWORD FProtocolDataValue TDWORD FProtocolDataSubValue TDWORD FProtocolDataOffset TDWORD FProtocolDataLength TDWORD FFixedProtocolReturnData TDWORD FProtocolDataSubValue2 TDWORD FProtocolDataSubValue3 TDWORD FProtocolDataSubValue4 TDWORD FProtocolDataSubValue5 TDWORD FReserved [5]TDWORD } type TSTORAGE_PROTOCOL_TYPE = int32 type TSTORAGE_PROTOCOL_UFS_DATA_TYPE = int32 type TSTORAGE_QUERY_TYPE = int32 type TSTORAGE_RPMB_DESCRIPTOR = struct { FVersion TDWORD FSize TDWORD FSizeInBytes TDWORD FMaxReliableWriteSizeInBytes TDWORD FFrameFormat TSTORAGE_RPMB_FRAME_TYPE } type TSTORAGE_RPMB_FRAME_TYPE = int32 type TSTORAGE_SET_TYPE = int32 type TSTORAGE_TIER_CLASS = int32 type TSTORAGE_TIER_MEDIA_TYPE = int32 type TSTORAGE_WRITE_CACHE_PROPERTY = struct { FVersion TDWORD FSize TDWORD FWriteCacheType TWRITE_CACHE_TYPE FWriteCacheEnabled TWRITE_CACHE_ENABLE FWriteCacheChangeable TWRITE_CACHE_CHANGE FWriteThroughSupported TWRITE_THROUGH FFlushCacheSupported TBOOLEAN FUserDefinedPowerProtection TBOOLEAN FNVCacheEnabled TBOOLEAN } type TSTREAM_INFO_LEVELS = int32 type TSTREAM_SEEK = int32 type TSTUB_PHASE = int32 type TSTUB_THUNK = uintptr type TSTYLEBUF = struct { FdwStyle TDWORD FszDescription [32]TCHAR } type TSTYLEBUFA = struct { FdwStyle TDWORD FszDescription [32]TCHAR } type TSTYLEBUFW = struct { FdwStyle TDWORD FszDescription [32]TWCHAR } type TSTYLESTRUCT = struct { FstyleOld TDWORD FstyleNew TDWORD } type TSUPPORTED_OS_INFO = struct { FOsCount TWORD FMitigationExist TWORD FOsList [4]TWORD } type TSYNCHRONIZATION_BARRIER = struct { FReserved1 TDWORD FReserved2 TDWORD FReserved3 [2]TULONG_PTR FReserved4 TDWORD FReserved5 TDWORD } type TSYSKIND = int32 type TSYSTEMTIME = struct { FwYear TWORD FwMonth TWORD FwDayOfWeek TWORD FwDay TWORD FwHour TWORD FwMinute TWORD FwSecond TWORD FwMilliseconds TWORD } type TSYSTEM_ALARM_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TSYSTEM_ALARM_CALLBACK_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TSYSTEM_ALARM_CALLBACK_OBJECT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FFlags TDWORD FObjectType TGUID FInheritedObjectType TGUID FSidStart TDWORD } type TSYSTEM_ALARM_OBJECT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FFlags TDWORD FObjectType TGUID FInheritedObjectType TGUID FSidStart TDWORD } type TSYSTEM_AUDIT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TSYSTEM_AUDIT_CALLBACK_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TSYSTEM_AUDIT_CALLBACK_OBJECT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FFlags TDWORD FObjectType TGUID FInheritedObjectType TGUID FSidStart TDWORD } type TSYSTEM_AUDIT_OBJECT_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FFlags TDWORD FObjectType TGUID FInheritedObjectType TGUID FSidStart TDWORD } type TSYSTEM_BATTERY_STATE = struct { FAcOnLine TBOOLEAN FBatteryPresent TBOOLEAN FCharging TBOOLEAN FDischarging TBOOLEAN FSpare1 [4]TBOOLEAN FMaxCapacity TDWORD FRemainingCapacity TDWORD FRate TDWORD FEstimatedTime TDWORD FDefaultAlert1 TDWORD FDefaultAlert2 TDWORD } type TSYSTEM_INFO = struct { F__ccgo0_0 struct { F__ccgo1_0 [0]struct { FwProcessorArchitecture TWORD FwReserved TWORD } FdwOemId TDWORD } FdwPageSize TDWORD FlpMinimumApplicationAddress TLPVOID FlpMaximumApplicationAddress TLPVOID FdwActiveProcessorMask TDWORD_PTR FdwNumberOfProcessors TDWORD FdwProcessorType TDWORD FdwAllocationGranularity TDWORD FwProcessorLevel TWORD FwProcessorRevision TWORD } type TSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = struct { FRelationship TLOGICAL_PROCESSOR_RELATIONSHIP FSize TDWORD F__ccgo2_8 struct { FNumaNode [0]TNUMA_NODE_RELATIONSHIP FCache [0]TCACHE_RELATIONSHIP FGroup [0]TGROUP_RELATIONSHIP FProcessor TPROCESSOR_RELATIONSHIP F__ccgo_pad4 [32]byte } } type TSYSTEM_MANDATORY_LABEL_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TSYSTEM_POWER_CAPABILITIES = struct { FPowerButtonPresent TBOOLEAN FSleepButtonPresent TBOOLEAN FLidPresent TBOOLEAN FSystemS1 TBOOLEAN FSystemS2 TBOOLEAN FSystemS3 TBOOLEAN FSystemS4 TBOOLEAN FSystemS5 TBOOLEAN FHiberFilePresent TBOOLEAN FFullWake TBOOLEAN FVideoDimPresent TBOOLEAN FApmPresent TBOOLEAN FUpsPresent TBOOLEAN FThermalControl TBOOLEAN FProcessorThrottle TBOOLEAN FProcessorMinThrottle TBYTE FProcessorMaxThrottle TBYTE FFastSystemS4 TBOOLEAN Fspare2 [3]TBYTE FDiskSpinDown TBOOLEAN Fspare3 [8]TBYTE FSystemBatteriesPresent TBOOLEAN FBatteriesAreShortTerm TBOOLEAN FBatteryScale [3]TBATTERY_REPORTING_SCALE FAcOnLineWake TSYSTEM_POWER_STATE FSoftLidWake TSYSTEM_POWER_STATE FRtcWake TSYSTEM_POWER_STATE FMinDeviceWakeState TSYSTEM_POWER_STATE FDefaultLowLatencyWake TSYSTEM_POWER_STATE } type TSYSTEM_POWER_CONDITION = int32 type TSYSTEM_POWER_LEVEL = struct { FEnable TBOOLEAN FSpare [3]TBYTE FBatteryLevel TDWORD FPowerPolicy TPOWER_ACTION_POLICY FMinSystemState TSYSTEM_POWER_STATE } type TSYSTEM_POWER_POLICY = struct { FRevision TDWORD FPowerButton TPOWER_ACTION_POLICY FSleepButton TPOWER_ACTION_POLICY FLidClose TPOWER_ACTION_POLICY FLidOpenWake TSYSTEM_POWER_STATE FReserved TDWORD FIdle TPOWER_ACTION_POLICY FIdleTimeout TDWORD FIdleSensitivity TBYTE FDynamicThrottle TBYTE FSpare2 [2]TBYTE FMinSleep TSYSTEM_POWER_STATE FMaxSleep TSYSTEM_POWER_STATE FReducedLatencySleep TSYSTEM_POWER_STATE FWinLogonFlags TDWORD FSpare3 TDWORD FDozeS4Timeout TDWORD FBroadcastCapacityResolution TDWORD FDischargePolicy [4]TSYSTEM_POWER_LEVEL FVideoTimeout TDWORD FVideoDimDisplay TBOOLEAN FVideoReserved [3]TDWORD FSpindownTimeout TDWORD FOptimizeForPower TBOOLEAN FFanThrottleTolerance TBYTE FForcedThrottle TBYTE FMinThrottle TBYTE FOverThrottled TPOWER_ACTION_POLICY } type TSYSTEM_POWER_STATE = int32 type TSYSTEM_POWER_STATUS = struct { FACLineStatus TBYTE FBatteryFlag TBYTE FBatteryLifePercent TBYTE FReserved1 TBYTE FBatteryLifeTime TDWORD FBatteryFullLifeTime TDWORD } type TSYSTEM_RESOURCE_ATTRIBUTE_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TSYSTEM_SCOPED_POLICY_ID_ACE = struct { FHeader TACE_HEADER FMask TACCESS_MASK FSidStart TDWORD } type TSYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION = struct { F__ccgo0 uint32 } type TSZM_FLAGS = int32 type TShmRegion = struct { FhMap THANDLE FpMap uintptr } type TShutdownType = int32 type TStartParam = struct { Fiid TIID FpIBindCtx uintptr FpItf uintptr } type TTAKE_SNAPSHOT_VHDSET_FLAG = int32 type TTAKE_SNAPSHOT_VHDSET_PARAMETERS = struct { FVersion TTAKE_SNAPSHOT_VHDSET_VERSION F__ccgo1_4 struct { FVersion1 struct { FSnapshotId TGUID } } } type TTAKE_SNAPSHOT_VHDSET_VERSION = int32 type TTAPE_CREATE_PARTITION = struct { FMethod TDWORD FCount TDWORD FSize TDWORD } type TTAPE_DRIVE_PROBLEM_TYPE = int32 type TTAPE_ERASE = struct { FType TDWORD FImmediate TBOOLEAN } type TTAPE_GET_DRIVE_PARAMETERS = struct { FECC TBOOLEAN FCompression TBOOLEAN FDataPadding TBOOLEAN FReportSetmarks TBOOLEAN FDefaultBlockSize TDWORD FMaximumBlockSize TDWORD FMinimumBlockSize TDWORD FMaximumPartitionCount TDWORD FFeaturesLow TDWORD FFeaturesHigh TDWORD FEOTWarningZoneSize TDWORD } type TTAPE_GET_STATISTICS = struct { FOperation TDWORD } type TTAPE_PREPARE = struct { FOperation TDWORD FImmediate TBOOLEAN } type TTAPE_SET_DRIVE_PARAMETERS = struct { FECC TBOOLEAN FCompression TBOOLEAN FDataPadding TBOOLEAN FReportSetmarks TBOOLEAN FEOTWarningZoneSize TDWORD } type TTAPE_SET_MEDIA_PARAMETERS = struct { FBlockSize TDWORD } type TTAPE_WMI_OPERATIONS = struct { FMethod TDWORD FDataBufferSize TDWORD FDataBuffer TPVOID } type TTAPE_WRITE_MARKS = struct { FType TDWORD FCount TDWORD FImmediate TBOOLEAN } type TTBYTE = uint8 type TTCHAR = int8 type TTEKPUBKEY = struct { Fmagic TDWORD Fbitlen TDWORD } type TTEXTMETRIC = struct { FtmHeight TLONG FtmAscent TLONG FtmDescent TLONG FtmInternalLeading TLONG FtmExternalLeading TLONG FtmAveCharWidth TLONG FtmMaxCharWidth TLONG FtmWeight TLONG FtmOverhang TLONG FtmDigitizedAspectX TLONG FtmDigitizedAspectY TLONG FtmFirstChar TBYTE FtmLastChar TBYTE FtmDefaultChar TBYTE FtmBreakChar TBYTE FtmItalic TBYTE FtmUnderlined TBYTE FtmStruckOut TBYTE FtmPitchAndFamily TBYTE FtmCharSet TBYTE } type TTEXTMETRICA = struct { FtmHeight TLONG FtmAscent TLONG FtmDescent TLONG FtmInternalLeading TLONG FtmExternalLeading TLONG FtmAveCharWidth TLONG FtmMaxCharWidth TLONG FtmWeight TLONG FtmOverhang TLONG FtmDigitizedAspectX TLONG FtmDigitizedAspectY TLONG FtmFirstChar TBYTE FtmLastChar TBYTE FtmDefaultChar TBYTE FtmBreakChar TBYTE FtmItalic TBYTE FtmUnderlined TBYTE FtmStruckOut TBYTE FtmPitchAndFamily TBYTE FtmCharSet TBYTE } type TTEXTMETRICW = struct { FtmHeight TLONG FtmAscent TLONG FtmDescent TLONG FtmInternalLeading TLONG FtmExternalLeading TLONG FtmAveCharWidth TLONG FtmMaxCharWidth TLONG FtmWeight TLONG FtmOverhang TLONG FtmDigitizedAspectX TLONG FtmDigitizedAspectY TLONG FtmFirstChar TWCHAR FtmLastChar TWCHAR FtmDefaultChar TWCHAR FtmBreakChar TWCHAR FtmItalic TBYTE FtmUnderlined TBYTE FtmStruckOut TBYTE FtmPitchAndFamily TBYTE FtmCharSet TBYTE } type TTHDTYPE = int32 type TTHREAD_INFORMATION_CLASS = int32 type TTIMECAPS = struct { FwPeriodMin TUINT FwPeriodMax TUINT } type TTIMEFMT_ENUMPROCA = uintptr type TTIMEFMT_ENUMPROCEX = uintptr type TTIMEFMT_ENUMPROCW = uintptr type TTIMERPROC = uintptr type TTIMEVAL = struct { Ftv_sec int32 Ftv_usec int32 } type TTIME_ZONE_INFORMATION = struct { FBias TLONG FStandardName [32]TWCHAR FStandardDate TSYSTEMTIME FStandardBias TLONG FDaylightName [32]TWCHAR FDaylightDate TSYSTEMTIME FDaylightBias TLONG } type TTITLEBARINFO = struct { FcbSize TDWORD FrcTitleBar TRECT Frgstate [6]TDWORD } type TTITLEBARINFOEX = struct { FcbSize TDWORD FrcTitleBar TRECT Frgstate [6]TDWORD Frgrect [6]TRECT } type TTLIBATTR = struct { Fguid TGUID Flcid TLCID Fsyskind TSYSKIND FwMajorVerNum TWORD FwMinorVerNum TWORD FwLibFlags TWORD } type TTOGGLEKEYS = struct { FcbSize TUINT FdwFlags TDWORD } type TTOKEN_ACCESS_INFORMATION = struct { FSidHash TPSID_AND_ATTRIBUTES_HASH FRestrictedSidHash TPSID_AND_ATTRIBUTES_HASH FPrivileges TPTOKEN_PRIVILEGES FAuthenticationId TLUID FTokenType TTOKEN_TYPE FImpersonationLevel TSECURITY_IMPERSONATION_LEVEL FMandatoryPolicy TTOKEN_MANDATORY_POLICY FFlags TDWORD FAppContainerNumber TDWORD FPackageSid TPSID FCapabilitiesHash TPSID_AND_ATTRIBUTES_HASH } type TTOKEN_APPCONTAINER_INFORMATION = struct { FTokenAppContainer TPSID } type TTOKEN_AUDIT_POLICY = struct { FPerUserPolicy [29]TUCHAR } type TTOKEN_CONTROL = struct { FTokenId TLUID FAuthenticationId TLUID FModifiedId TLUID FTokenSource TTOKEN_SOURCE } type TTOKEN_DEFAULT_DACL = struct { FDefaultDacl TPACL } type TTOKEN_DEVICE_CLAIMS = struct { FDeviceClaims TPCLAIMS_BLOB } type TTOKEN_ELEVATION = struct { FTokenIsElevated TDWORD } type TTOKEN_ELEVATION_TYPE = int32 type TTOKEN_GROUPS = struct { FGroupCount TDWORD FGroups [1]TSID_AND_ATTRIBUTES } type TTOKEN_GROUPS_AND_PRIVILEGES = struct { FSidCount TDWORD FSidLength TDWORD FSids TPSID_AND_ATTRIBUTES FRestrictedSidCount TDWORD FRestrictedSidLength TDWORD FRestrictedSids TPSID_AND_ATTRIBUTES FPrivilegeCount TDWORD FPrivilegeLength TDWORD FPrivileges TPLUID_AND_ATTRIBUTES FAuthenticationId TLUID } type TTOKEN_INFORMATION_CLASS = int32 type TTOKEN_LINKED_TOKEN = struct { FLinkedToken THANDLE } type TTOKEN_MANDATORY_LABEL = struct { FLabel TSID_AND_ATTRIBUTES } type TTOKEN_MANDATORY_POLICY = struct { FPolicy TDWORD } type TTOKEN_ORIGIN = struct { FOriginatingLogonSession TLUID } type TTOKEN_OWNER = struct { FOwner TPSID } type TTOKEN_PRIMARY_GROUP = struct { FPrimaryGroup TPSID } type TTOKEN_PRIVILEGES = struct { FPrivilegeCount TDWORD FPrivileges [1]TLUID_AND_ATTRIBUTES } type TTOKEN_SOURCE = struct { FSourceName [8]TCHAR FSourceIdentifier TLUID } type TTOKEN_TYPE = int32 type TTOKEN_USER = struct { FUser TSID_AND_ATTRIBUTES } type TTOKEN_USER_CLAIMS = struct { FUserClaims TPCLAIMS_BLOB } type TTOUCHINPUT = struct { Fx TLONG Fy TLONG FhSource THANDLE FdwID TDWORD FdwFlags TDWORD FdwMask TDWORD FdwTime TDWORD FdwExtraInfo TULONG_PTR FcxContact TDWORD FcyContact TDWORD } type TTOUCHPREDICTIONPARAMETERS = struct { FcbSize TUINT FdwLatency TUINT FdwSampleTime TUINT FbUseHWTimeStamp TUINT } type TTOUCH_FLAGS = uint32 type TTOUCH_HIT_TESTING_INPUT = struct { FpointerId TUINT32 Fpoint TPOINT FboundingBox TRECT FnonOccludedBoundingBox TRECT Forientation TUINT32 } type TTOUCH_HIT_TESTING_PROXIMITY_EVALUATION = struct { Fscore TUINT16 FadjustedPoint TPOINT } type TTOUCH_MASK = uint32 type TTPMPARAMS = struct { FcbSize TUINT FrcExclude TRECT } type TTPOLYCURVE = TTTPOLYCURVE type TTPOLYGONHEADER = TTTPOLYGONHEADER type TTP_CALLBACK_ENVIRON = struct { FVersion TTP_VERSION FPool TPTP_POOL FCleanupGroup TPTP_CLEANUP_GROUP FCleanupGroupCancelCallback TPTP_CLEANUP_GROUP_CANCEL_CALLBACK FRaceDll TPVOID FActivationContext uintptr FFinalizationCallback TPTP_SIMPLE_CALLBACK Fu struct { Fs [0]struct { F__ccgo0 uint32 } FFlags TDWORD } FCallbackPriority TTP_CALLBACK_PRIORITY FSize TDWORD } type TTP_CALLBACK_ENVIRON_V3 = struct { FVersion TTP_VERSION FPool TPTP_POOL FCleanupGroup TPTP_CLEANUP_GROUP FCleanupGroupCancelCallback TPTP_CLEANUP_GROUP_CANCEL_CALLBACK FRaceDll TPVOID FActivationContext uintptr FFinalizationCallback TPTP_SIMPLE_CALLBACK Fu struct { Fs [0]struct { F__ccgo0 uint32 } FFlags TDWORD } FCallbackPriority TTP_CALLBACK_PRIORITY FSize TDWORD } type TTP_CALLBACK_PRIORITY = int32 type TTP_POOL_STACK_INFORMATION = struct { FStackReserve TSIZE_T FStackCommit TSIZE_T } type TTP_VERSION = uint32 type TTP_WAIT_RESULT = uint32 type TTRACKMOUSEEVENT = struct { FcbSize TDWORD FdwFlags TDWORD FhwndTrack THWND FdwHoverTime TDWORD } type TTRANSACTIONMANAGER_INFORMATION_CLASS = int32 type TTRANSACTIONMANAGER_LOGPATH_INFORMATION = struct { FLogPathLength TDWORD FLogPath [1]TWCHAR } type TTRANSACTIONMANAGER_LOG_INFORMATION = struct { FLogIdentity TGUID } type TTRANSACTIONMANAGER_OLDEST_INFORMATION = struct { FOldestTransactionGuid TGUID } type TTRANSACTION_BASIC_INFORMATION = struct { FTransactionId TGUID FState TDWORD FOutcome TDWORD } type TTRANSACTION_BIND_INFORMATION = struct { FTmHandle THANDLE } type TTRANSACTION_ENLISTMENTS_INFORMATION = struct { FNumberOfEnlistments TDWORD FEnlistmentPair [1]TTRANSACTION_ENLISTMENT_PAIR } type TTRANSACTION_ENLISTMENT_PAIR = struct { FEnlistmentId TGUID FResourceManagerId TGUID } type TTRANSACTION_INFORMATION_CLASS = int32 type TTRANSACTION_LIST_ENTRY = struct { FUOW TGUID } type TTRANSACTION_LIST_INFORMATION = struct { FNumberOfTransactions TDWORD FTransactionInformation [1]TTRANSACTION_LIST_ENTRY } type TTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = struct { FMarshalCookie TULONG FUOW TGUID } type TTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT = struct { FPropagationCookie TULONG FUOW TGUID FTmIdentity TGUID FBufferLength TULONG } type TTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = struct { FPropagationCookie TULONG FUOW TGUID FTmIdentity TGUID FBufferLength TULONG } type TTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = struct { FEnlistmentId TGUID FUOW TGUID } type TTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = struct { FSavepointId TSAVEPOINT_ID } type TTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = struct { FTmIdentity TGUID FFlags TULONG } type TTRANSACTION_OUTCOME = int32 type TTRANSACTION_STATE = int32 type TTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = struct { FSuperiorEnlistmentPair TTRANSACTION_ENLISTMENT_PAIR } type TTRANSMIT_FILE_BUFFERS = struct { FHead TLPVOID FHeadLength TDWORD FTail TLPVOID FTailLength TDWORD } type TTRIVERTEX = struct { Fx TLONG Fy TLONG FRed TCOLOR16 FGreen TCOLOR16 FBlue TCOLOR16 FAlpha TCOLOR16 } type TTTPOLYCURVE = struct { FwType TWORD Fcpfx TWORD Fapfx [1]TPOINTFX } type TTTPOLYGONHEADER = struct { Fcb TDWORD FdwType TDWORD FpfxStart TPOINTFX } type TTXFS_CREATE_MINIVERSION_INFO = struct { FStructureVersion TUSHORT FStructureLength TUSHORT FBaseVersion TULONG FMiniVersion TUSHORT } type TTXFS_GET_TRANSACTED_VERSION = struct { FThisBaseVersion TULONG FLatestVersion TULONG FThisMiniVersion TUSHORT FFirstMiniVersion TUSHORT FLatestMiniVersion TUSHORT } type TTXFS_READ_BACKUP_INFORMATION_OUT = struct { F__ccgo0_0 struct { FBuffer [0]TUCHAR FBufferLength TULONG } } type TTXFS_SAVEPOINT_INFORMATION = struct { FKtmTransaction THANDLE FActionCode TULONG FSavepointId TULONG } type TTXFS_TRANSACTION_ACTIVE_INFO = struct { FTransactionsActiveAtSnapshot TBOOLEAN } type TTXFS_WRITE_BACKUP_INFORMATION = struct { FBuffer TUCHAR } type TTYMED = int32 type TTYPEATTR = struct { Fguid TGUID Flcid TLCID FdwReserved TDWORD FmemidConstructor TMEMBERID FmemidDestructor TMEMBERID FlpstrSchema TLPOLESTR FcbSizeInstance TULONG Ftypekind TTYPEKIND FcFuncs TWORD FcVars TWORD FcImplTypes TWORD FcbSizeVft TWORD FcbAlignment TWORD FwTypeFlags TWORD FwMajorVerNum TWORD FwMinorVerNum TWORD FtdescAlias TTYPEDESC FidldescType TIDLDESC } type TTYPEDESC = struct { F__ccgo0_0 struct { Flpadesc [0]uintptr Fhreftype [0]THREFTYPE Flptdesc uintptr } Fvt TVARTYPE } type TTYPEFLAGS = int32 type TTYPEKIND = int32 type TTYSPEC = int32 const TT_AVAILABLE = 1 const TT_ENABLED = 2 const TT_OPENTYPE_FONTTYPE = 131072 const TT_POLYGON_TYPE = 24 const TT_PRIM_CSPLINE = 3 const TT_PRIM_LINE = 1 const TT_PRIM_QSPLINE = 2 type TUCHAR = uint8 type TUCSCHAR = uint32 type TUDATE = struct { Fst TSYSTEMTIME FwDayOfYear TUSHORT } type TUILANGUAGE_ENUMPROCA = uintptr type TUILANGUAGE_ENUMPROCW = uintptr type TUINT = uint32 type TUINT16 = uint16 type TUINT32 = uint32 type TUINT64 = uint64 type TUINT8 = uint8 type TULONG = uint32 type TULONG32 = uint32 type TULONG64 = uint64 type TULONGLONG = uint64 type TUMS_CREATE_THREAD_ATTRIBUTES = struct { FUmsVersion TDWORD FUmsContext TPVOID FUmsCompletionList TPVOID } type TUNIVERSAL_NAME_INFO = struct { FlpUniversalName TLPSTR } type TUNIVERSAL_NAME_INFOA = struct { FlpUniversalName TLPSTR } type TUNIVERSAL_NAME_INFOW = struct { FlpUniversalName TLPWSTR } type TUNLOAD_DLL_DEBUG_INFO = struct { FlpBaseOfDll TLPVOID } type TUPDATELAYEREDWINDOWINFO = struct { FcbSize TDWORD FhdcDst THDC FpptDst uintptr Fpsize uintptr FhdcSrc THDC FpptSrc uintptr FcrKey TCOLORREF Fpblend uintptr FdwFlags TDWORD FprcDirty uintptr } type TUP_BYTE_BLOB = uintptr type TUP_DWORD_BLOB = uintptr type TUP_FLAGGED_BYTE_BLOB = uintptr type TUP_FLAGGED_WORD_BLOB = uintptr type TUP_WORD_BLOB = uintptr const TURKISH_CHARSET = 162 type TURLTEMPLATE = int32 type TURLZONE = int32 type TURLZONEREG = int32 type TURL_ENCODING = int32 type TUSAGE_PROPERTIES = struct { Flevel TUSHORT Fpage TUSHORT Fusage TUSHORT FlogicalMinimum TINT32 FlogicalMaximum TINT32 Funit TUSHORT Fexponent TUSHORT Fcount TBYTE FphysicalMinimum TINT32 FphysicalMaximum TINT32 } type TUSERCLASSTYPE = int32 type TUSEROBJECTFLAGS = struct { FfInherit TWINBOOL FfReserved TWINBOOL FdwFlags TDWORD } type TUSER_ACTIVITY_PRESENCE = int32 type TUSER_MARSHAL_CB = struct { FFlags uint32 FpStubMsg TPMIDL_STUB_MESSAGE FpReserve TPFORMAT_STRING FSignature uint32 FCBType TUSER_MARSHAL_CB_TYPE FpFormat TPFORMAT_STRING FpTypeFormat TPFORMAT_STRING } type TUSER_MARSHAL_CB_TYPE = int32 type TUSER_MARSHAL_FREEING_ROUTINE = uintptr type TUSER_MARSHAL_MARSHALLING_ROUTINE = uintptr type TUSER_MARSHAL_ROUTINE_QUADRUPLE = struct { FpfnBufferSize TUSER_MARSHAL_SIZING_ROUTINE FpfnMarshall TUSER_MARSHAL_MARSHALLING_ROUTINE FpfnUnmarshall TUSER_MARSHAL_UNMARSHALLING_ROUTINE FpfnFree TUSER_MARSHAL_FREEING_ROUTINE } type TUSER_MARSHAL_SIZING_ROUTINE = uintptr type TUSER_MARSHAL_UNMARSHALLING_ROUTINE = uintptr type TUSHORT = uint16 type TUSN = int64 type TUUID = struct { FData1 uint32 FData2 uint16 FData3 uint16 FData4 [8]uint8 } type TUUID_VECTOR = struct { FCount uint32 FUuid [1]uintptr } type TUWORD = uint16 type TUri_HOST_TYPE = int32 type TUri_PROPERTY = int32 type TVALENT = struct { Fve_valuename TLPSTR Fve_valuelen TDWORD Fve_valueptr TDWORD_PTR Fve_type TDWORD } type TVALENTA = struct { Fve_valuename TLPSTR Fve_valuelen TDWORD Fve_valueptr TDWORD_PTR Fve_type TDWORD } type TVALENTW = struct { Fve_valuename TLPWSTR Fve_valuelen TDWORD Fve_valueptr TDWORD_PTR Fve_type TDWORD } type TVARFLAGS = int32 type TVARIANT_BOOL = int16 type TVARKIND = int32 type TVARTYPE = uint16 type TVERSIONEDSTREAM = struct { FguidVersion TGUID FpStream uintptr } type TVIDEOPARAMETERS = struct { FGuid TGUID FdwOffset TULONG FdwCommand TULONG FdwFlags TULONG FdwMode TULONG FdwTVStandard TULONG FdwAvailableModes TULONG FdwAvailableTVStandard TULONG FdwFlickerFilter TULONG FdwOverScanX TULONG FdwOverScanY TULONG FdwMaxUnscaledX TULONG FdwMaxUnscaledY TULONG FdwPositionX TULONG FdwPositionY TULONG FdwBrightness TULONG FdwContrast TULONG FdwCPType TULONG FdwCPCommand TULONG FdwCPStandard TULONG FdwCPKey TULONG FbCP_APSTriggerBits TULONG FbOEMCopyProtection [256]TUCHAR } type TVIRTUAL_DISK_ACCESS_MASK = int32 type TVIRTUAL_STORAGE_TYPE = struct { FDeviceId TULONG FVendorId TGUID } type TVS_FIXEDFILEINFO = struct { FdwSignature TDWORD FdwStrucVersion TDWORD FdwFileVersionMS TDWORD FdwFileVersionLS TDWORD FdwProductVersionMS TDWORD FdwProductVersionLS TDWORD FdwFileFlagsMask TDWORD FdwFileFlags TDWORD FdwFileOS TDWORD FdwFileType TDWORD FdwFileSubtype TDWORD FdwFileDateMS TDWORD FdwFileDateLS TDWORD } type TWAITORTIMERCALLBACK = uintptr type TWAITORTIMERCALLBACKFUNC = uintptr type TWAVEFORMAT = struct { FwFormatTag TWORD FnChannels TWORD FnSamplesPerSec TDWORD FnAvgBytesPerSec TDWORD FnBlockAlign TWORD } type TWAVEFORMATEX = struct { FwFormatTag TWORD FnChannels TWORD FnSamplesPerSec TDWORD FnAvgBytesPerSec TDWORD FnBlockAlign TWORD FwBitsPerSample TWORD FcbSize TWORD } type TWAVEHDR = struct { FlpData TLPSTR FdwBufferLength TDWORD FdwBytesRecorded TDWORD FdwUser TDWORD_PTR FdwFlags TDWORD FdwLoops TDWORD FlpNext uintptr Freserved TDWORD_PTR } type TWAVEINCAPS = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD } type TWAVEINCAPS2 = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TWAVEINCAPS2A = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TWAVEINCAPS2W = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TWAVEINCAPSA = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD } type TWAVEINCAPSW = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD } type TWAVEOUTCAPS = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FdwSupport TDWORD } type TWAVEOUTCAPS2 = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TWAVEOUTCAPS2A = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TWAVEOUTCAPS2W = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FdwSupport TDWORD FManufacturerGuid TGUID FProductGuid TGUID FNameGuid TGUID } type TWAVEOUTCAPSA = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FdwSupport TDWORD } type TWAVEOUTCAPSW = struct { FwMid TWORD FwPid TWORD FvDriverVersion TMMVERSION FszPname [32]TWCHAR FdwFormats TDWORD FwChannels TWORD FwReserved1 TWORD FdwSupport TDWORD } type TWCHAR = uint16 type TWCRANGE = struct { FwcLow TWCHAR FcGlyphs TUSHORT } type TWELL_KNOWN_SID_TYPE = int32 const TWF_FINETOUCH = 1 const TWF_WANTPALM = 2 type TWGLSWAP = struct { Fhdc THDC FuiFlags TUINT } type TWIN32_FILE_ATTRIBUTE_DATA = struct { FdwFileAttributes TDWORD FftCreationTime TFILETIME FftLastAccessTime TFILETIME FftLastWriteTime TFILETIME FnFileSizeHigh TDWORD FnFileSizeLow TDWORD } type TWIN32_FIND_DATA = struct { FdwFileAttributes TDWORD FftCreationTime TFILETIME FftLastAccessTime TFILETIME FftLastWriteTime TFILETIME FnFileSizeHigh TDWORD FnFileSizeLow TDWORD FdwReserved0 TDWORD FdwReserved1 TDWORD FcFileName [260]TCHAR FcAlternateFileName [14]TCHAR } type TWIN32_FIND_DATAA = struct { FdwFileAttributes TDWORD FftCreationTime TFILETIME FftLastAccessTime TFILETIME FftLastWriteTime TFILETIME FnFileSizeHigh TDWORD FnFileSizeLow TDWORD FdwReserved0 TDWORD FdwReserved1 TDWORD FcFileName [260]TCHAR FcAlternateFileName [14]TCHAR } type TWIN32_FIND_DATAW = struct { FdwFileAttributes TDWORD FftCreationTime TFILETIME FftLastAccessTime TFILETIME FftLastWriteTime TFILETIME FnFileSizeHigh TDWORD FnFileSizeLow TDWORD FdwReserved0 TDWORD FdwReserved1 TDWORD FcFileName [260]TWCHAR FcAlternateFileName [14]TWCHAR } type TWIN32_MEMORY_RANGE_ENTRY = struct { FVirtualAddress TPVOID FNumberOfBytes TSIZE_T } type TWINBOOL = int32 type TWINDOWINFO = struct { FcbSize TDWORD FrcWindow TRECT FrcClient TRECT FdwStyle TDWORD FdwExStyle TDWORD FdwWindowStatus TDWORD FcxWindowBorders TUINT FcyWindowBorders TUINT FatomWindowType TATOM FwCreatorVersion TWORD } type TWINDOWPLACEMENT = struct { Flength TUINT Fflags TUINT FshowCmd TUINT FptMinPosition TPOINT FptMaxPosition TPOINT FrcNormalPosition TRECT } type TWINDOWPOS = struct { Fhwnd THWND FhwndInsertAfter THWND Fx int32 Fy int32 Fcx int32 Fcy int32 Fflags TUINT } type TWINDOW_BUFFER_SIZE_RECORD = struct { FdwSize TCOORD } type TWINEVENTPROC = uintptr type TWINSTAENUMPROC = uintptr type TWINSTAENUMPROCA = uintptr type TWINSTAENUMPROCW = uintptr type TWNDCLASS = struct { Fstyle TUINT FlpfnWndProc TWNDPROC FcbClsExtra int32 FcbWndExtra int32 FhInstance THINSTANCE FhIcon THICON FhCursor THCURSOR FhbrBackground THBRUSH FlpszMenuName TLPCSTR FlpszClassName TLPCSTR } type TWNDCLASSA = struct { Fstyle TUINT FlpfnWndProc TWNDPROC FcbClsExtra int32 FcbWndExtra int32 FhInstance THINSTANCE FhIcon THICON FhCursor THCURSOR FhbrBackground THBRUSH FlpszMenuName TLPCSTR FlpszClassName TLPCSTR } type TWNDCLASSEX = struct { FcbSize TUINT Fstyle TUINT FlpfnWndProc TWNDPROC FcbClsExtra int32 FcbWndExtra int32 FhInstance THINSTANCE FhIcon THICON FhCursor THCURSOR FhbrBackground THBRUSH FlpszMenuName TLPCSTR FlpszClassName TLPCSTR FhIconSm THICON } type TWNDCLASSEXA = struct { FcbSize TUINT Fstyle TUINT FlpfnWndProc TWNDPROC FcbClsExtra int32 FcbWndExtra int32 FhInstance THINSTANCE FhIcon THICON FhCursor THCURSOR FhbrBackground THBRUSH FlpszMenuName TLPCSTR FlpszClassName TLPCSTR FhIconSm THICON } type TWNDCLASSEXW = struct { FcbSize TUINT Fstyle TUINT FlpfnWndProc TWNDPROC FcbClsExtra int32 FcbWndExtra int32 FhInstance THINSTANCE FhIcon THICON FhCursor THCURSOR FhbrBackground THBRUSH FlpszMenuName TLPCWSTR FlpszClassName TLPCWSTR FhIconSm THICON } type TWNDCLASSW = struct { Fstyle TUINT FlpfnWndProc TWNDPROC FcbClsExtra int32 FcbWndExtra int32 FhInstance THINSTANCE FhIcon THICON FhCursor THCURSOR FhbrBackground THBRUSH FlpszMenuName TLPCWSTR FlpszClassName TLPCWSTR } type TWNDENUMPROC = uintptr type TWNDPROC = uintptr type TWOF_EXTERNAL_INFO = struct { FVersion TDWORD FProvider TDWORD } type TWORD = uint16 type TWORD_BLOB = struct { FclSize TULONG FasData [1]uint16 } type TWORD_SIZEDARR = struct { FclSize TULONG FpData uintptr } type TWORKERCALLBACKFUNC = uintptr const TWOSTOPBITS = 2 type TWOW64_CONTEXT = struct { FContextFlags TDWORD FDr0 TDWORD FDr1 TDWORD FDr2 TDWORD FDr3 TDWORD FDr6 TDWORD FDr7 TDWORD FFloatSave TWOW64_FLOATING_SAVE_AREA FSegGs TDWORD FSegFs TDWORD FSegEs TDWORD FSegDs TDWORD FEdi TDWORD FEsi TDWORD FEbx TDWORD FEdx TDWORD FEcx TDWORD FEax TDWORD FEbp TDWORD FEip TDWORD FSegCs TDWORD FEFlags TDWORD FEsp TDWORD FSegSs TDWORD FExtendedRegisters [512]TBYTE } type TWOW64_DESCRIPTOR_TABLE_ENTRY = struct { FSelector TDWORD FDescriptor TWOW64_LDT_ENTRY } type TWOW64_FLOATING_SAVE_AREA = struct { FControlWord TDWORD FStatusWord TDWORD FTagWord TDWORD FErrorOffset TDWORD FErrorSelector TDWORD FDataOffset TDWORD FDataSelector TDWORD FRegisterArea [80]TBYTE FCr0NpxState TDWORD } type TWOW64_LDT_ENTRY = struct { FLimitLow TWORD FBaseLow TWORD FHighWord struct { FBits [0]struct { F__ccgo0 uint32 } FBytes struct { FBaseMid TBYTE FFlags1 TBYTE FFlags2 TBYTE FBaseHi TBYTE } } } type TWRITE_CACHE_CHANGE = int32 type TWRITE_CACHE_ENABLE = int32 type TWRITE_CACHE_TYPE = int32 type TWRITE_THROUGH = int32 type TWSAData = TWSADATA type TWTSSESSION_NOTIFICATION = struct { FcbSize TDWORD FdwSessionId TDWORD } type TXFORM = struct { FeM11 TFLOAT FeM12 TFLOAT FeM21 TFLOAT FeM22 TFLOAT FeDx TFLOAT FeDy TFLOAT } type TXFS_CREATE_MINIVERSION_INFO = TTXFS_CREATE_MINIVERSION_INFO type TXFS_GET_METADATA_INFO_OUT = TTXFS_GET_METADATA_INFO_OUT type TXFS_GET_TRANSACTED_VERSION = TTXFS_GET_TRANSACTED_VERSION type TXFS_LIST_TRANSACTIONS = TTXFS_LIST_TRANSACTIONS type TXFS_LIST_TRANSACTIONS_ENTRY = TTXFS_LIST_TRANSACTIONS_ENTRY type TXFS_LIST_TRANSACTION_LOCKED_FILES = TTXFS_LIST_TRANSACTION_LOCKED_FILES type TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY = TTXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY const TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY_FLAG_CREATED = 1 const TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY_FLAG_DELETED = 2 const TXFS_LOGGING_MODE_FULL = 2 const TXFS_LOGGING_MODE_SIMPLE = 1 type TXFS_MODIFY_RM = TTXFS_MODIFY_RM const TXFS_MODIFY_RM_VALID_FLAGS = 261631 type TXFS_QUERY_RM_INFORMATION = TTXFS_QUERY_RM_INFORMATION const TXFS_QUERY_RM_INFORMATION_VALID_FLAGS = 246192 type TXFS_READ_BACKUP_INFORMATION_OUT = TTXFS_READ_BACKUP_INFORMATION_OUT const TXFS_RM_FLAG_DO_NOT_RESET_RM_AT_NEXT_START = 32768 const TXFS_RM_FLAG_ENFORCE_MINIMUM_SIZE = 4096 const TXFS_RM_FLAG_GROW_LOG = 1024 const TXFS_RM_FLAG_LOGGING_MODE = 1 const TXFS_RM_FLAG_LOG_AUTO_SHRINK_PERCENTAGE = 64 const TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MAX = 4 const TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MIN = 8 const TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS = 16 const TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT = 32 const TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX = 128 const TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN = 256 const TXFS_RM_FLAG_PREFER_AVAILABILITY = 131072 const TXFS_RM_FLAG_PREFER_CONSISTENCY = 65536 const TXFS_RM_FLAG_PRESERVE_CHANGES = 8192 const TXFS_RM_FLAG_RENAME_RM = 2 const TXFS_RM_FLAG_RESET_RM_AT_NEXT_START = 16384 const TXFS_RM_FLAG_SHRINK_LOG = 2048 const TXFS_RM_STATE_ACTIVE = 2 const TXFS_RM_STATE_NOT_STARTED = 0 const TXFS_RM_STATE_SHUTTING_DOWN = 3 const TXFS_RM_STATE_STARTING = 1 const TXFS_ROLLFORWARD_REDO_FLAG_USE_LAST_REDO_LSN = 1 const TXFS_ROLLFORWARD_REDO_FLAG_USE_LAST_VIRTUAL_CLOCK = 2 type TXFS_ROLLFORWARD_REDO_INFORMATION = TTXFS_ROLLFORWARD_REDO_INFORMATION const TXFS_ROLLFORWARD_REDO_VALID_FLAGS = 3 const TXFS_SAVEPOINT_CLEAR = 4 const TXFS_SAVEPOINT_CLEAR_ALL = 16 type TXFS_SAVEPOINT_INFORMATION = TTXFS_SAVEPOINT_INFORMATION const TXFS_SAVEPOINT_ROLLBACK = 2 const TXFS_SAVEPOINT_SET = 1 const TXFS_START_RM_FLAG_LOGGING_MODE = 1024 const TXFS_START_RM_FLAG_LOG_AUTO_SHRINK_PERCENTAGE = 32 const TXFS_START_RM_FLAG_LOG_CONTAINER_COUNT_MAX = 1 const TXFS_START_RM_FLAG_LOG_CONTAINER_COUNT_MIN = 2 const TXFS_START_RM_FLAG_LOG_CONTAINER_SIZE = 4 const TXFS_START_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS = 8 const TXFS_START_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT = 16 const TXFS_START_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX = 64 const TXFS_START_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN = 128 const TXFS_START_RM_FLAG_PREFER_AVAILABILITY = 8192 const TXFS_START_RM_FLAG_PREFER_CONSISTENCY = 4096 const TXFS_START_RM_FLAG_PRESERVE_CHANGES = 2048 const TXFS_START_RM_FLAG_RECOVER_BEST_EFFORT = 512 type TXFS_START_RM_INFORMATION = TTXFS_START_RM_INFORMATION const TXFS_START_RM_VALID_FLAGS = 15999 const TXFS_TRANSACTED_VERSION_NONTRANSACTED = 4294967294 const TXFS_TRANSACTED_VERSION_UNCOMMITTED = 4294967295 type TXFS_TRANSACTION_ACTIVE_INFO = TTXFS_TRANSACTION_ACTIVE_INFO const TXFS_TRANSACTION_STATE_ACTIVE = 1 const TXFS_TRANSACTION_STATE_NONE = 0 const TXFS_TRANSACTION_STATE_NOTACTIVE = 3 const TXFS_TRANSACTION_STATE_PREPARED = 2 type TXFS_WRITE_BACKUP_INFORMATION = TTXFS_WRITE_BACKUP_INFORMATION type TXLAT_SIDE = int32 type TXMIT_HELPER_ROUTINE = uintptr type TXMIT_ROUTINE_QUINTUPLE = struct { FpfnTranslateToXmit TXMIT_HELPER_ROUTINE FpfnTranslateFromXmit TXMIT_HELPER_ROUTINE FpfnFreeXmit TXMIT_HELPER_ROUTINE FpfnFreeInst TXMIT_HELPER_ROUTINE } type TXMLDOMDocumentEvents = struct { FlpVtbl uintptr } type TXMLDOMDocumentEventsVtbl = struct { FQueryInterface uintptr FAddRef uintptr FRelease uintptr FGetTypeInfoCount uintptr FGetTypeInfo uintptr FGetIDsOfNames uintptr FInvoke uintptr } type TXMLELEM_TYPE = int32 type TXML_ERROR = struct { F_nLine uint32 F_pchBuf TBSTR F_cchBuf uint32 F_ich uint32 F_pszFound TBSTR F_pszExpected TBSTR F_reserved1 TDWORD F_reserved2 TDWORD } type TXSTATE_FEATURE = struct { FOffset TDWORD FSize TDWORD } type TYIELDPROC = uintptr type TYMED = TTYMED const TYPE1_FONTTYPE = 262144 type TYPEATTR = TTYPEATTR type TYPEDESC = TTYPEDESC type TYPEFLAGS = TTYPEFLAGS type TYPEKIND = TTYPEKIND type TYSPEC = TTYSPEC type TZAFLAGS = int32 type TZONEATTRIBUTES = struct { FcbSize TULONG FszDisplayName [260]TWCHAR FszDescription [200]TWCHAR FszIconPath [260]TWCHAR FdwTemplateMinLevel TDWORD FdwTemplateRecommended TDWORD FdwTemplateCurrentLevel TDWORD FdwFlags TDWORD } type T_ABC = TABC type T_ABCFLOAT = TABCFLOAT type T_ACCESS_ALLOWED_ACE = TACCESS_ALLOWED_ACE type T_ACCESS_ALLOWED_CALLBACK_ACE = TACCESS_ALLOWED_CALLBACK_ACE type T_ACCESS_ALLOWED_CALLBACK_OBJECT_ACE = TACCESS_ALLOWED_CALLBACK_OBJECT_ACE type T_ACCESS_ALLOWED_OBJECT_ACE = TACCESS_ALLOWED_OBJECT_ACE type T_ACCESS_DENIED_ACE = TACCESS_DENIED_ACE type T_ACCESS_DENIED_CALLBACK_ACE = TACCESS_DENIED_CALLBACK_ACE type T_ACCESS_DENIED_CALLBACK_OBJECT_ACE = TACCESS_DENIED_CALLBACK_OBJECT_ACE type T_ACCESS_DENIED_OBJECT_ACE = TACCESS_DENIED_OBJECT_ACE type T_ACCESS_REASONS = TACCESS_REASONS type T_ACE_HEADER = TACE_HEADER type T_ACL = TACL type T_ACL_REVISION_INFORMATION = TACL_REVISION_INFORMATION type T_ACL_SIZE_INFORMATION = TACL_SIZE_INFORMATION type T_ACTION_HEADER = TACTION_HEADER type T_ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = TACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION type T_ACTIVATION_CONTEXT_BASIC_INFORMATION = TACTIVATION_CONTEXT_BASIC_INFORMATION type T_ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = TACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION type T_ACTIVATION_CONTEXT_DETAILED_INFORMATION = TACTIVATION_CONTEXT_DETAILED_INFORMATION type T_ACTIVATION_CONTEXT_QUERY_INDEX = TACTIVATION_CONTEXT_QUERY_INDEX type T_ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = TACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION type T_ADAPTER_STATUS = TADAPTER_STATUS type T_ADDJOB_INFO_1A = TADDJOB_INFO_1A type T_ADDJOB_INFO_1W = TADDJOB_INFO_1W type T_ADMINISTRATOR_POWER_POLICY = TADMINISTRATOR_POWER_POLICY type T_APPLICATIONLAUNCH_SETTING_VALUE = TAPPLICATIONLAUNCH_SETTING_VALUE type T_APPLY_SNAPSHOT_VHDSET_PARAMETERS = TAPPLY_SNAPSHOT_VHDSET_PARAMETERS type T_APP_MEMORY_INFORMATION = TAPP_MEMORY_INFORMATION type T_ASSEMBLY_FILE_DETAILED_INFORMATION = TASSEMBLY_FILE_DETAILED_INFORMATION type T_ATTACH_VIRTUAL_DISK_PARAMETERS = TATTACH_VIRTUAL_DISK_PARAMETERS type T_AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA = TAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA type T_AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS = TAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS type T_AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA = TAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA type T_AppBarData = TAPPBARDATA type T_BCRYPT_ALGORITHM_IDENTIFIER = TBCRYPT_ALGORITHM_IDENTIFIER type T_BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO = TBCRYPT_AUTHENTICATED_CIPHER_MODE_INFO type T_BCRYPT_DH_KEY_BLOB = TBCRYPT_DH_KEY_BLOB type T_BCRYPT_DH_PARAMETER_HEADER = TBCRYPT_DH_PARAMETER_HEADER type T_BCRYPT_DSA_KEY_BLOB = TBCRYPT_DSA_KEY_BLOB type T_BCRYPT_DSA_KEY_BLOB_V2 = TBCRYPT_DSA_KEY_BLOB_V2 type T_BCRYPT_DSA_PARAMETER_HEADER = TBCRYPT_DSA_PARAMETER_HEADER type T_BCRYPT_DSA_PARAMETER_HEADER_V2 = TBCRYPT_DSA_PARAMETER_HEADER_V2 type T_BCRYPT_ECCKEY_BLOB = TBCRYPT_ECCKEY_BLOB type T_BCRYPT_ECC_CURVE_NAMES = TBCRYPT_ECC_CURVE_NAMES type T_BCRYPT_INTERFACE_VERSION = TBCRYPT_INTERFACE_VERSION type T_BCRYPT_KEY_BLOB = TBCRYPT_KEY_BLOB type T_BCRYPT_KEY_DATA_BLOB_HEADER = TBCRYPT_KEY_DATA_BLOB_HEADER type T_BCRYPT_MULTI_HASH_OPERATION = TBCRYPT_MULTI_HASH_OPERATION type T_BCRYPT_MULTI_OBJECT_LENGTH_STRUCT = TBCRYPT_MULTI_OBJECT_LENGTH_STRUCT type T_BCRYPT_OAEP_PADDING_INFO = TBCRYPT_OAEP_PADDING_INFO type T_BCRYPT_OID = TBCRYPT_OID type T_BCRYPT_OID_LIST = TBCRYPT_OID_LIST type T_BCRYPT_PKCS1_PADDING_INFO = TBCRYPT_PKCS1_PADDING_INFO type T_BCRYPT_PROVIDER_NAME = TBCRYPT_PROVIDER_NAME type T_BCRYPT_PSS_PADDING_INFO = TBCRYPT_PSS_PADDING_INFO type T_BCRYPT_RSAKEY_BLOB = TBCRYPT_RSAKEY_BLOB type T_BCryptBuffer = TBCryptBuffer type T_BCryptBufferDesc = TBCryptBufferDesc type T_BIDI_DATA = TBIDI_DATA type T_BIDI_REQUEST_CONTAINER = TBIDI_REQUEST_CONTAINER type T_BIDI_REQUEST_DATA = TBIDI_REQUEST_DATA type T_BIDI_RESPONSE_CONTAINER = TBIDI_RESPONSE_CONTAINER type T_BIDI_RESPONSE_DATA = TBIDI_RESPONSE_DATA type T_BINARY_CONTAINER = TBINARY_CONTAINER type T_BIN_COUNT = TBIN_COUNT type T_BIN_RANGE = TBIN_RANGE type T_BIN_RESULTS = TBIN_RESULTS type T_BLENDFUNCTION = TBLENDFUNCTION type T_BOOT_AREA_INFO = TBOOT_AREA_INFO type T_BYTE_BLOB = TBYTE_BLOB type T_BYTE_SIZEDARR = TBYTE_SIZEDARR type T_BY_HANDLE_FILE_INFORMATION = TBY_HANDLE_FILE_INFORMATION type T_CACHE_DESCRIPTOR = TCACHE_DESCRIPTOR type T_CACHE_RELATIONSHIP = TCACHE_RELATIONSHIP type T_CERTIFICATE_BLOB = TEFS_CERTIFICATE_BLOB type T_CERT_ACCESS_DESCRIPTION = TCERT_ACCESS_DESCRIPTION type T_CERT_ALT_NAME_ENTRY = TCERT_ALT_NAME_ENTRY type T_CERT_ALT_NAME_INFO = TCERT_ALT_NAME_INFO type T_CERT_AUTHORITY_INFO_ACCESS = TCERT_AUTHORITY_INFO_ACCESS type T_CERT_AUTHORITY_KEY_ID2_INFO = TCERT_AUTHORITY_KEY_ID2_INFO type T_CERT_AUTHORITY_KEY_ID_INFO = TCERT_AUTHORITY_KEY_ID_INFO type T_CERT_BASIC_CONSTRAINTS2_INFO = TCERT_BASIC_CONSTRAINTS2_INFO type T_CERT_BASIC_CONSTRAINTS_INFO = TCERT_BASIC_CONSTRAINTS_INFO type T_CERT_BIOMETRIC_DATA = TCERT_BIOMETRIC_DATA type T_CERT_BIOMETRIC_EXT_INFO = TCERT_BIOMETRIC_EXT_INFO type T_CERT_CHAIN = TCERT_CHAIN type T_CERT_CHAIN_CONTEXT = TCERT_CHAIN_CONTEXT type T_CERT_CHAIN_ELEMENT = TCERT_CHAIN_ELEMENT type T_CERT_CHAIN_ENGINE_CONFIG = TCERT_CHAIN_ENGINE_CONFIG type T_CERT_CHAIN_FIND_BY_ISSUER_PARA = TCERT_CHAIN_FIND_ISSUER_PARA type T_CERT_CHAIN_PARA = TCERT_CHAIN_PARA type T_CERT_CHAIN_POLICY_PARA = TCERT_CHAIN_POLICY_PARA type T_CERT_CHAIN_POLICY_STATUS = TCERT_CHAIN_POLICY_STATUS type T_CERT_CONTEXT = TCERT_CONTEXT type T_CERT_CREATE_CONTEXT_PARA = TCERT_CREATE_CONTEXT_PARA type T_CERT_CRL_CONTEXT_PAIR = TCERT_CRL_CONTEXT_PAIR type T_CERT_DH_PARAMETERS = TCERT_DH_PARAMETERS type T_CERT_DSS_PARAMETERS = TCERT_DSS_PARAMETERS type T_CERT_ECC_SIGNATURE = TCERT_ECC_SIGNATURE type T_CERT_EXTENSION = TCERT_EXTENSION type T_CERT_EXTENSIONS = TCERT_EXTENSIONS type T_CERT_FORTEZZA_DATA_PROP = TCERT_FORTEZZA_DATA_PROP type T_CERT_GENERAL_SUBTREE = TCERT_GENERAL_SUBTREE type T_CERT_HASHED_URL = TCERT_HASHED_URL type T_CERT_ID = TCERT_ID type T_CERT_INFO = TCERT_INFO type T_CERT_ISSUER_SERIAL_NUMBER = TCERT_ISSUER_SERIAL_NUMBER type T_CERT_KEYGEN_REQUEST_INFO = TCERT_KEYGEN_REQUEST_INFO type T_CERT_KEY_ATTRIBUTES_INFO = TCERT_KEY_ATTRIBUTES_INFO type T_CERT_KEY_CONTEXT = TCERT_KEY_CONTEXT type T_CERT_KEY_USAGE_RESTRICTION_INFO = TCERT_KEY_USAGE_RESTRICTION_INFO type T_CERT_LDAP_STORE_OPENED_PARA = TCERT_LDAP_STORE_OPENED_PARA type T_CERT_LOGOTYPE_AUDIO = TCERT_LOGOTYPE_AUDIO type T_CERT_LOGOTYPE_AUDIO_INFO = TCERT_LOGOTYPE_AUDIO_INFO type T_CERT_LOGOTYPE_DATA = TCERT_LOGOTYPE_DATA type T_CERT_LOGOTYPE_DETAILS = TCERT_LOGOTYPE_DETAILS type T_CERT_LOGOTYPE_EXT_INFO = TCERT_LOGOTYPE_EXT_INFO type T_CERT_LOGOTYPE_IMAGE = TCERT_LOGOTYPE_IMAGE type T_CERT_LOGOTYPE_IMAGE_INFO = TCERT_LOGOTYPE_IMAGE_INFO type T_CERT_LOGOTYPE_INFO = TCERT_LOGOTYPE_INFO type T_CERT_LOGOTYPE_REFERENCE = TCERT_LOGOTYPE_REFERENCE type T_CERT_NAME_CONSTRAINTS_INFO = TCERT_NAME_CONSTRAINTS_INFO type T_CERT_NAME_INFO = TCERT_NAME_INFO type T_CERT_NAME_VALUE = TCERT_NAME_VALUE type T_CERT_OR_CRL_BLOB = TCERT_OR_CRL_BLOB type T_CERT_OR_CRL_BUNDLE = TCERT_OR_CRL_BUNDLE type T_CERT_OTHER_LOGOTYPE_INFO = TCERT_OTHER_LOGOTYPE_INFO type T_CERT_OTHER_NAME = TCERT_OTHER_NAME type T_CERT_PAIR = TCERT_PAIR type T_CERT_PHYSICAL_STORE_INFO = TCERT_PHYSICAL_STORE_INFO type T_CERT_POLICIES_INFO = TCERT_POLICIES_INFO type T_CERT_POLICY95_QUALIFIER1 = TCERT_POLICY95_QUALIFIER1 type T_CERT_POLICY_CONSTRAINTS_INFO = TCERT_POLICY_CONSTRAINTS_INFO type T_CERT_POLICY_ID = TCERT_POLICY_ID type T_CERT_POLICY_INFO = TCERT_POLICY_INFO type T_CERT_POLICY_MAPPING = TCERT_POLICY_MAPPING type T_CERT_POLICY_MAPPINGS_INFO = TCERT_POLICY_MAPPINGS_INFO type T_CERT_POLICY_QUALIFIER_INFO = TCERT_POLICY_QUALIFIER_INFO type T_CERT_POLICY_QUALIFIER_NOTICE_REFERENCE = TCERT_POLICY_QUALIFIER_NOTICE_REFERENCE type T_CERT_POLICY_QUALIFIER_USER_NOTICE = TCERT_POLICY_QUALIFIER_USER_NOTICE type T_CERT_PRIVATE_KEY_VALIDITY = TCERT_PRIVATE_KEY_VALIDITY type T_CERT_PUBLIC_KEY_INFO = TCERT_PUBLIC_KEY_INFO type T_CERT_QC_STATEMENT = TCERT_QC_STATEMENT type T_CERT_QC_STATEMENTS_EXT_INFO = TCERT_QC_STATEMENTS_EXT_INFO type T_CERT_RDN = TCERT_RDN type T_CERT_RDN_ATTR = TCERT_RDN_ATTR type T_CERT_REGISTRY_STORE_CLIENT_GPT_PARA = TCERT_REGISTRY_STORE_CLIENT_GPT_PARA type T_CERT_REGISTRY_STORE_ROAMING_PARA = TCERT_REGISTRY_STORE_ROAMING_PARA type T_CERT_REQUEST_INFO = TCERT_REQUEST_INFO type T_CERT_REVOCATION_CHAIN_PARA = TCERT_REVOCATION_CHAIN_PARA type T_CERT_REVOCATION_CRL_INFO = TCERT_REVOCATION_CRL_INFO type T_CERT_REVOCATION_INFO = TCERT_REVOCATION_INFO type T_CERT_REVOCATION_PARA = TCERT_REVOCATION_PARA type T_CERT_REVOCATION_STATUS = TCERT_REVOCATION_STATUS type T_CERT_SELECT_CHAIN_PARA = TCERT_SELECT_CHAIN_PARA type T_CERT_SELECT_CRITERIA = TCERT_SELECT_CRITERIA type T_CERT_SERVER_OCSP_RESPONSE_CONTEXT = TCERT_SERVER_OCSP_RESPONSE_CONTEXT type T_CERT_SERVER_OCSP_RESPONSE_OPEN_PARA = TCERT_SERVER_OCSP_RESPONSE_OPEN_PARA type T_CERT_SIGNED_CONTENT_INFO = TCERT_SIGNED_CONTENT_INFO type T_CERT_SIMPLE_CHAIN = TCERT_SIMPLE_CHAIN type T_CERT_STORE_PROV_FIND_INFO = TCERT_STORE_PROV_FIND_INFO type T_CERT_STORE_PROV_INFO = TCERT_STORE_PROV_INFO type T_CERT_STRONG_SIGN_PARA = TCERT_STRONG_SIGN_PARA type T_CERT_STRONG_SIGN_SERIALIZED_INFO = TCERT_STRONG_SIGN_SERIALIZED_INFO type T_CERT_SUPPORTED_ALGORITHM_INFO = TCERT_SUPPORTED_ALGORITHM_INFO type T_CERT_SYSTEM_STORE_INFO = TCERT_SYSTEM_STORE_INFO type T_CERT_SYSTEM_STORE_RELOCATE_PARA = TCERT_SYSTEM_STORE_RELOCATE_PARA type T_CERT_TEMPLATE_EXT = TCERT_TEMPLATE_EXT type T_CERT_TPM_SPECIFICATION_INFO = TCERT_TPM_SPECIFICATION_INFO type T_CERT_TRUST_LIST_INFO = TCERT_TRUST_LIST_INFO type T_CERT_TRUST_STATUS = TCERT_TRUST_STATUS type T_CERT_USAGE_MATCH = TCERT_USAGE_MATCH type T_CERT_X942_DH_PARAMETERS = TCERT_X942_DH_PARAMETERS type T_CERT_X942_DH_VALIDATION_PARAMS = TCERT_X942_DH_VALIDATION_PARAMS type T_CFG_CALL_TARGET_INFO = TCFG_CALL_TARGET_INFO type T_CHANGER_ELEMENT = TCHANGER_ELEMENT type T_CHANGER_ELEMENT_LIST = TCHANGER_ELEMENT_LIST type T_CHANGER_ELEMENT_STATUS = TCHANGER_ELEMENT_STATUS type T_CHANGER_ELEMENT_STATUS_EX = TCHANGER_ELEMENT_STATUS_EX type T_CHANGER_EXCHANGE_MEDIUM = TCHANGER_EXCHANGE_MEDIUM type T_CHANGER_INITIALIZE_ELEMENT_STATUS = TCHANGER_INITIALIZE_ELEMENT_STATUS type T_CHANGER_MOVE_MEDIUM = TCHANGER_MOVE_MEDIUM type T_CHANGER_PRODUCT_DATA = TCHANGER_PRODUCT_DATA type T_CHANGER_READ_ELEMENT_STATUS = TCHANGER_READ_ELEMENT_STATUS type T_CHANGER_SEND_VOLUME_TAG_INFORMATION = TCHANGER_SEND_VOLUME_TAG_INFORMATION type T_CHANGER_SET_ACCESS = TCHANGER_SET_ACCESS type T_CHANGER_SET_POSITION = TCHANGER_SET_POSITION type T_CHAR_INFO = TCHAR_INFO type T_CLAIM_SECURITY_ATTRIBUTES_INFORMATION = TCLAIM_SECURITY_ATTRIBUTES_INFORMATION type T_CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE = TCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE type T_CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = TCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE type T_CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = TCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 type T_CLAIM_SECURITY_ATTRIBUTE_V1 = TCLAIM_SECURITY_ATTRIBUTE_V1 type T_CLASS_MEDIA_CHANGE_CONTEXT = TCLASS_MEDIA_CHANGE_CONTEXT type T_CLIENT_CALL_RETURN = TCLIENT_CALL_RETURN type T_CMC_ADD_ATTRIBUTES_INFO = TCMC_ADD_ATTRIBUTES_INFO type T_CMC_ADD_EXTENSIONS_INFO = TCMC_ADD_EXTENSIONS_INFO type T_CMC_DATA_INFO = TCMC_DATA_INFO type T_CMC_PEND_INFO = TCMC_PEND_INFO type T_CMC_RESPONSE_INFO = TCMC_RESPONSE_INFO type T_CMC_STATUS_INFO = TCMC_STATUS_INFO type T_CMC_TAGGED_ATTRIBUTE = TCMC_TAGGED_ATTRIBUTE type T_CMC_TAGGED_CERT_REQUEST = TCMC_TAGGED_CERT_REQUEST type T_CMC_TAGGED_CONTENT_INFO = TCMC_TAGGED_CONTENT_INFO type T_CMC_TAGGED_OTHER_MSG = TCMC_TAGGED_OTHER_MSG type T_CMC_TAGGED_REQUEST = TCMC_TAGGED_REQUEST type T_CMSG_CMS_RECIPIENT_INFO = TCMSG_CMS_RECIPIENT_INFO type T_CMSG_CMS_SIGNER_INFO = TCMSG_CMS_SIGNER_INFO type T_CMSG_CNG_CONTENT_DECRYPT_INFO = TCMSG_CNG_CONTENT_DECRYPT_INFO type T_CMSG_CONTENT_ENCRYPT_INFO = TCMSG_CONTENT_ENCRYPT_INFO type T_CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA = TCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA type T_CMSG_CTRL_DECRYPT_PARA = TCMSG_CTRL_DECRYPT_PARA type T_CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA = TCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA type T_CMSG_CTRL_KEY_AGREE_DECRYPT_PARA = TCMSG_CTRL_KEY_AGREE_DECRYPT_PARA type T_CMSG_CTRL_KEY_TRANS_DECRYPT_PARA = TCMSG_CTRL_KEY_TRANS_DECRYPT_PARA type T_CMSG_CTRL_MAIL_LIST_DECRYPT_PARA = TCMSG_CTRL_MAIL_LIST_DECRYPT_PARA type T_CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA = TCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA type T_CMSG_ENCRYPTED_ENCODE_INFO = TCMSG_ENCRYPTED_ENCODE_INFO type T_CMSG_ENVELOPED_ENCODE_INFO = TCMSG_ENVELOPED_ENCODE_INFO type T_CMSG_HASHED_ENCODE_INFO = TCMSG_HASHED_ENCODE_INFO type T_CMSG_KEY_AGREE_ENCRYPT_INFO = TCMSG_KEY_AGREE_ENCRYPT_INFO type T_CMSG_KEY_AGREE_KEY_ENCRYPT_INFO = TCMSG_KEY_AGREE_KEY_ENCRYPT_INFO type T_CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO = TCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO type T_CMSG_KEY_AGREE_RECIPIENT_INFO = TCMSG_KEY_AGREE_RECIPIENT_INFO type T_CMSG_KEY_TRANS_ENCRYPT_INFO = TCMSG_KEY_TRANS_ENCRYPT_INFO type T_CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO = TCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO type T_CMSG_KEY_TRANS_RECIPIENT_INFO = TCMSG_KEY_TRANS_RECIPIENT_INFO type T_CMSG_MAIL_LIST_ENCRYPT_INFO = TCMSG_MAIL_LIST_ENCRYPT_INFO type T_CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO = TCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO type T_CMSG_MAIL_LIST_RECIPIENT_INFO = TCMSG_MAIL_LIST_RECIPIENT_INFO type T_CMSG_RC2_AUX_INFO = TCMSG_RC2_AUX_INFO type T_CMSG_RC4_AUX_INFO = TCMSG_RC4_AUX_INFO type T_CMSG_RECIPIENT_ENCODE_INFO = TCMSG_RECIPIENT_ENCODE_INFO type T_CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO = TCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO type T_CMSG_RECIPIENT_ENCRYPTED_KEY_INFO = TCMSG_RECIPIENT_ENCRYPTED_KEY_INFO type T_CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO = TCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO type T_CMSG_SIGNED_ENCODE_INFO = TCMSG_SIGNED_ENCODE_INFO type T_CMSG_SIGNER_ENCODE_INFO = TCMSG_SIGNER_ENCODE_INFO type T_CMSG_SIGNER_INFO = TCMSG_SIGNER_INFO type T_CMSG_SP3_COMPATIBLE_AUX_INFO = TCMSG_SP3_COMPATIBLE_AUX_INFO type T_CMSG_STREAM_INFO = TCMSG_STREAM_INFO type T_CMS_DH_KEY_INFO = TCMS_DH_KEY_INFO type T_CMS_KEY_INFO = TCMS_KEY_INFO type T_COAUTHIDENTITY = TCOAUTHIDENTITY type T_COAUTHINFO = TCOAUTHINFO type T_COMMCONFIG = TCOMMCONFIG type T_COMMPROP = TCOMMPROP type T_COMMTIMEOUTS = TCOMMTIMEOUTS type T_COMM_FAULT_OFFSETS = TCOMM_FAULT_OFFSETS type T_COMPACT_VIRTUAL_DISK_PARAMETERS = TCOMPACT_VIRTUAL_DISK_PARAMETERS type T_COMPATIBILITY_CONTEXT_ELEMENT = TCOMPATIBILITY_CONTEXT_ELEMENT type T_COMPONENT_FILTER = TCOMPONENT_FILTER type T_COMSTAT = TCOMSTAT type T_CONNECTDLGSTRUCTA = TCONNECTDLGSTRUCTA type T_CONNECTDLGSTRUCTW = TCONNECTDLGSTRUCTW type T_CONSOLE_CURSOR_INFO = TCONSOLE_CURSOR_INFO type T_CONSOLE_FONT_INFO = TCONSOLE_FONT_INFO type T_CONSOLE_FONT_INFOEX = TCONSOLE_FONT_INFOEX type T_CONSOLE_HISTORY_INFO = TCONSOLE_HISTORY_INFO type T_CONSOLE_READCONSOLE_CONTROL = TCONSOLE_READCONSOLE_CONTROL type T_CONSOLE_SCREEN_BUFFER_INFO = TCONSOLE_SCREEN_BUFFER_INFO type T_CONSOLE_SCREEN_BUFFER_INFOEX = TCONSOLE_SCREEN_BUFFER_INFOEX type T_CONSOLE_SELECTION_INFO = TCONSOLE_SELECTION_INFO type T_COORD = TCOORD type T_CORE_PRINTER_DRIVERA = TCORE_PRINTER_DRIVERA type T_CORE_PRINTER_DRIVERW = TCORE_PRINTER_DRIVERW type T_COSERVERINFO = TCOSERVERINFO type T_CPS_URLS = TCPS_URLS type T_CREATEFILE2_EXTENDED_PARAMETERS = TCREATEFILE2_EXTENDED_PARAMETERS type T_CREATE_DISK = TCREATE_DISK type T_CREATE_DISK_GPT = TCREATE_DISK_GPT type T_CREATE_DISK_MBR = TCREATE_DISK_MBR type T_CREATE_PROCESS_DEBUG_INFO = TCREATE_PROCESS_DEBUG_INFO type T_CREATE_THREAD_DEBUG_INFO = TCREATE_THREAD_DEBUG_INFO type T_CREATE_VIRTUAL_DISK_PARAMETERS = TCREATE_VIRTUAL_DISK_PARAMETERS type T_CRL_CONTEXT = TCRL_CONTEXT type T_CRL_DIST_POINT = TCRL_DIST_POINT type T_CRL_DIST_POINTS_INFO = TCRL_DIST_POINTS_INFO type T_CRL_DIST_POINT_NAME = TCRL_DIST_POINT_NAME type T_CRL_ENTRY = TCRL_ENTRY type T_CRL_FIND_ISSUED_FOR_PARA = TCRL_FIND_ISSUED_FOR_PARA type T_CRL_INFO = TCRL_INFO type T_CRL_ISSUING_DIST_POINT = TCRL_ISSUING_DIST_POINT type T_CRL_REVOCATION_INFO = TCRL_REVOCATION_INFO type T_CROSS_CERT_DIST_POINTS_INFO = TCROSS_CERT_DIST_POINTS_INFO type T_CRT_FLOAT = struct { Ff float32 } type T_CRYPTNET_URL_CACHE_FLUSH_INFO = TCRYPTNET_URL_CACHE_FLUSH_INFO type T_CRYPTNET_URL_CACHE_PRE_FETCH_INFO = TCRYPTNET_URL_CACHE_PRE_FETCH_INFO type T_CRYPTNET_URL_CACHE_RESPONSE_INFO = TCRYPTNET_URL_CACHE_RESPONSE_INFO type T_CRYPTOAPI_BLOB = TCRYPT_INTEGER_BLOB type T_CRYPTPROTECT_PROMPTSTRUCT = TCRYPTPROTECT_PROMPTSTRUCT type T_CRYPT_3DES_KEY_STATE = TCRYPT_3DES_KEY_STATE type T_CRYPT_AES_128_KEY_STATE = TCRYPT_AES_128_KEY_STATE type T_CRYPT_AES_256_KEY_STATE = TCRYPT_AES_256_KEY_STATE type T_CRYPT_ALGORITHM_IDENTIFIER = TCRYPT_ALGORITHM_IDENTIFIER type T_CRYPT_ASYNC_RETRIEVAL_COMPLETION = TCRYPT_ASYNC_RETRIEVAL_COMPLETION type T_CRYPT_ATTRIBUTE = TCRYPT_ATTRIBUTE type T_CRYPT_ATTRIBUTES = TCRYPT_ATTRIBUTES type T_CRYPT_ATTRIBUTE_TYPE_VALUE = TCRYPT_ATTRIBUTE_TYPE_VALUE type T_CRYPT_BIT_BLOB = TCRYPT_BIT_BLOB type T_CRYPT_BLOB_ARRAY = TCRYPT_BLOB_ARRAY type T_CRYPT_CONTENT_INFO = TCRYPT_CONTENT_INFO type T_CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY = TCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY type T_CRYPT_CONTEXTS = TCRYPT_CONTEXTS type T_CRYPT_CONTEXT_CONFIG = TCRYPT_CONTEXT_CONFIG type T_CRYPT_CONTEXT_FUNCTIONS = TCRYPT_CONTEXT_FUNCTIONS type T_CRYPT_CONTEXT_FUNCTION_CONFIG = TCRYPT_CONTEXT_FUNCTION_CONFIG type T_CRYPT_CONTEXT_FUNCTION_PROVIDERS = TCRYPT_CONTEXT_FUNCTION_PROVIDERS type T_CRYPT_CREDENTIALS = TCRYPT_CREDENTIALS type T_CRYPT_CSP_PROVIDER = TCRYPT_CSP_PROVIDER type T_CRYPT_DECODE_PARA = TCRYPT_DECODE_PARA type T_CRYPT_DECRYPT_MESSAGE_PARA = TCRYPT_DECRYPT_MESSAGE_PARA type T_CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA = TCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA type T_CRYPT_DES_KEY_STATE = TCRYPT_DES_KEY_STATE type T_CRYPT_ECC_CMS_SHARED_INFO = TCRYPT_ECC_CMS_SHARED_INFO type T_CRYPT_ECC_PRIVATE_KEY_INFO = TCRYPT_ECC_PRIVATE_KEY_INFO type T_CRYPT_ENCODE_PARA = TCRYPT_ENCODE_PARA type T_CRYPT_ENCRYPTED_PRIVATE_KEY_INFO = TCRYPT_ENCRYPTED_PRIVATE_KEY_INFO type T_CRYPT_ENCRYPT_MESSAGE_PARA = TCRYPT_ENCRYPT_MESSAGE_PARA type T_CRYPT_ENROLLMENT_NAME_VALUE_PAIR = TCRYPT_ENROLLMENT_NAME_VALUE_PAIR type T_CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO = TCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO type T_CRYPT_HASH_INFO = TCRYPT_HASH_INFO type T_CRYPT_HASH_MESSAGE_PARA = TCRYPT_HASH_MESSAGE_PARA type T_CRYPT_IMAGE_REF = TCRYPT_IMAGE_REF type T_CRYPT_IMAGE_REG = TCRYPT_IMAGE_REG type T_CRYPT_INTERFACE_REG = TCRYPT_INTERFACE_REG type T_CRYPT_KEY_PROV_INFO = TCRYPT_KEY_PROV_INFO type T_CRYPT_KEY_PROV_PARAM = TCRYPT_KEY_PROV_PARAM type T_CRYPT_KEY_SIGN_MESSAGE_PARA = TCRYPT_KEY_SIGN_MESSAGE_PARA type T_CRYPT_KEY_VERIFY_MESSAGE_PARA = TCRYPT_KEY_VERIFY_MESSAGE_PARA type T_CRYPT_MASK_GEN_ALGORITHM = TCRYPT_MASK_GEN_ALGORITHM type T_CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE = TCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE type T_CRYPT_OBJID_TABLE = TCRYPT_OBJID_TABLE type T_CRYPT_OID_FUNC_ENTRY = TCRYPT_OID_FUNC_ENTRY type T_CRYPT_OID_INFO = TCRYPT_OID_INFO type T_CRYPT_PASSWORD_CREDENTIALSA = TCRYPT_PASSWORD_CREDENTIALSA type T_CRYPT_PASSWORD_CREDENTIALSW = TCRYPT_PASSWORD_CREDENTIALSW type T_CRYPT_PKCS12_PBE_PARAMS = TCRYPT_PKCS12_PBE_PARAMS type T_CRYPT_PKCS8_EXPORT_PARAMS = TCRYPT_PKCS8_EXPORT_PARAMS type T_CRYPT_PKCS8_IMPORT_PARAMS = TCRYPT_PKCS8_IMPORT_PARAMS type T_CRYPT_PRIVATE_KEY_INFO = TCRYPT_PRIVATE_KEY_INFO type T_CRYPT_PROPERTY_REF = TCRYPT_PROPERTY_REF type T_CRYPT_PROVIDERS = TCRYPT_PROVIDERS type T_CRYPT_PROVIDER_REF = TCRYPT_PROVIDER_REF type T_CRYPT_PROVIDER_REFS = TCRYPT_PROVIDER_REFS type T_CRYPT_PROVIDER_REG = TCRYPT_PROVIDER_REG type T_CRYPT_PSOURCE_ALGORITHM = TCRYPT_PSOURCE_ALGORITHM type T_CRYPT_RC2_CBC_PARAMETERS = TCRYPT_RC2_CBC_PARAMETERS type T_CRYPT_RC4_KEY_STATE = TCRYPT_RC4_KEY_STATE type T_CRYPT_RETRIEVE_AUX_INFO = TCRYPT_RETRIEVE_AUX_INFO type T_CRYPT_RSAES_OAEP_PARAMETERS = TCRYPT_RSAES_OAEP_PARAMETERS type T_CRYPT_RSA_SSA_PSS_PARAMETERS = TCRYPT_RSA_SSA_PSS_PARAMETERS type T_CRYPT_SEQUENCE_OF_ANY = TCRYPT_SEQUENCE_OF_ANY type T_CRYPT_SIGN_MESSAGE_PARA = TCRYPT_SIGN_MESSAGE_PARA type T_CRYPT_SMART_CARD_ROOT_INFO = TCRYPT_SMART_CARD_ROOT_INFO type T_CRYPT_SMIME_CAPABILITIES = TCRYPT_SMIME_CAPABILITIES type T_CRYPT_SMIME_CAPABILITY = TCRYPT_SMIME_CAPABILITY type T_CRYPT_TIMESTAMP_ACCURACY = TCRYPT_TIMESTAMP_ACCURACY type T_CRYPT_TIMESTAMP_CONTEXT = TCRYPT_TIMESTAMP_CONTEXT type T_CRYPT_TIMESTAMP_INFO = TCRYPT_TIMESTAMP_INFO type T_CRYPT_TIMESTAMP_PARA = TCRYPT_TIMESTAMP_PARA type T_CRYPT_TIMESTAMP_REQUEST = TCRYPT_TIMESTAMP_REQUEST type T_CRYPT_TIMESTAMP_RESPONSE = TCRYPT_TIMESTAMP_RESPONSE type T_CRYPT_TIME_STAMP_REQUEST_INFO = TCRYPT_TIME_STAMP_REQUEST_INFO type T_CRYPT_URL_ARRAY = TCRYPT_URL_ARRAY type T_CRYPT_URL_INFO = TCRYPT_URL_INFO type T_CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO = TCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO type T_CRYPT_VERIFY_MESSAGE_PARA = TCRYPT_VERIFY_MESSAGE_PARA type T_CRYPT_X942_OTHER_INFO = TCRYPT_X942_OTHER_INFO type T_CSV_NAMESPACE_INFO = TCSV_NAMESPACE_INFO type T_CTL_ANY_SUBJECT_INFO = TCTL_ANY_SUBJECT_INFO type T_CTL_CONTEXT = TCTL_CONTEXT type T_CTL_ENTRY = TCTL_ENTRY type T_CTL_FIND_SUBJECT_PARA = TCTL_FIND_SUBJECT_PARA type T_CTL_FIND_USAGE_PARA = TCTL_FIND_USAGE_PARA type T_CTL_INFO = TCTL_INFO type T_CTL_USAGE = TCTL_USAGE type T_CTL_USAGE_MATCH = TCTL_USAGE_MATCH type T_CTL_VERIFY_USAGE_PARA = TCTL_VERIFY_USAGE_PARA type T_CTL_VERIFY_USAGE_STATUS = TCTL_VERIFY_USAGE_STATUS type T_DATATYPES_INFO_1A = TDATATYPES_INFO_1A type T_DATATYPES_INFO_1W = TDATATYPES_INFO_1W type T_DCB = TDCB type T_DEBUG_EVENT = TDEBUG_EVENT type T_DECRYPTION_STATUS_BUFFER = TDECRYPTION_STATUS_BUFFER type T_DELETE_SNAPSHOT_VHDSET_PARAMETERS = TDELETE_SNAPSHOT_VHDSET_PARAMETERS type T_DEVICE_COPY_OFFLOAD_DESCRIPTOR = TDEVICE_COPY_OFFLOAD_DESCRIPTOR type T_DEVICE_DATA_SET_RANGE = TDEVICE_DATA_SET_RANGE type T_DEVICE_DSM_NOTIFICATION_PARAMETERS = TDEVICE_DSM_NOTIFICATION_PARAMETERS type T_DEVICE_LB_PROVISIONING_DESCRIPTOR = TDEVICE_LB_PROVISIONING_DESCRIPTOR type T_DEVICE_MANAGE_DATA_SET_ATTRIBUTES = TDEVICE_MANAGE_DATA_SET_ATTRIBUTES type T_DEVICE_MEDIA_INFO = TDEVICE_MEDIA_INFO type T_DEVICE_POWER_DESCRIPTOR = TDEVICE_POWER_DESCRIPTOR type T_DEVICE_SEEK_PENALTY_DESCRIPTOR = TDEVICE_SEEK_PENALTY_DESCRIPTOR type T_DEVICE_TRIM_DESCRIPTOR = TDEVICE_TRIM_DESCRIPTOR type T_DEVICE_WRITE_AGGREGATION_DESCRIPTOR = TDEVICE_WRITE_AGGREGATION_DESCRIPTOR type T_DISCDLGSTRUCTA = TDISCDLGSTRUCTA type T_DISCDLGSTRUCTW = TDISCDLGSTRUCTW type T_DISK_CACHE_INFORMATION = TDISK_CACHE_INFORMATION type T_DISK_CONTROLLER_NUMBER = TDISK_CONTROLLER_NUMBER type T_DISK_DETECTION_INFO = TDISK_DETECTION_INFO type T_DISK_EXTENT = TDISK_EXTENT type T_DISK_EX_INT13_INFO = TDISK_EX_INT13_INFO type T_DISK_GEOMETRY = TDISK_GEOMETRY type T_DISK_GEOMETRY_EX = TDISK_GEOMETRY_EX type T_DISK_GROW_PARTITION = TDISK_GROW_PARTITION type T_DISK_HISTOGRAM = TDISK_HISTOGRAM type T_DISK_INT13_INFO = TDISK_INT13_INFO type T_DISK_LOGGING = TDISK_LOGGING type T_DISK_PARTITION_INFO = TDISK_PARTITION_INFO type T_DISK_PERFORMANCE = TDISK_PERFORMANCE type T_DISK_RECORD = TDISK_RECORD type T_DISPLAYCONFIG_GET_ADVANCED_COLOR_INFO = TDISPLAYCONFIG_GET_ADVANCED_COLOR_INFO type T_DISPLAYCONFIG_SDR_WHITE_LEVEL = TDISPLAYCONFIG_SDR_WHITE_LEVEL type T_DISPLAYCONFIG_SET_ADVANCED_COLOR_STATE = TDISPLAYCONFIG_SET_ADVANCED_COLOR_STATE type T_DISPLAY_DEVICEA = TDISPLAY_DEVICEA type T_DISPLAY_DEVICEW = TDISPLAY_DEVICEW type T_DOCINFOA = TDOCINFOA type T_DOCINFOW = TDOCINFOW type T_DOC_INFO_1A = TDOC_INFO_1A type T_DOC_INFO_1W = TDOC_INFO_1W type T_DOC_INFO_2A = TDOC_INFO_2A type T_DOC_INFO_2W = TDOC_INFO_2W type T_DOC_INFO_3A = TDOC_INFO_3A type T_DOC_INFO_3W = TDOC_INFO_3W type T_DRAGINFOA = TDRAGINFOA type T_DRAGINFOW = TDRAGINFOW type T_DRAWPATRECT = TDRAWPATRECT type T_DRIVERSTATUS = TDRIVERSTATUS type T_DRIVER_INFO_1A = TDRIVER_INFO_1A type T_DRIVER_INFO_1W = TDRIVER_INFO_1W type T_DRIVER_INFO_2A = TDRIVER_INFO_2A type T_DRIVER_INFO_2W = TDRIVER_INFO_2W type T_DRIVER_INFO_3A = TDRIVER_INFO_3A type T_DRIVER_INFO_3W = TDRIVER_INFO_3W type T_DRIVER_INFO_4A = TDRIVER_INFO_4A type T_DRIVER_INFO_4W = TDRIVER_INFO_4W type T_DRIVER_INFO_5A = TDRIVER_INFO_5A type T_DRIVER_INFO_5W = TDRIVER_INFO_5W type T_DRIVER_INFO_6A = TDRIVER_INFO_6A type T_DRIVER_INFO_6W = TDRIVER_INFO_6W type T_DRIVER_INFO_8A = TDRIVER_INFO_8A type T_DRIVER_INFO_8W = TDRIVER_INFO_8W type T_DRIVE_LAYOUT_INFORMATION = TDRIVE_LAYOUT_INFORMATION type T_DRIVE_LAYOUT_INFORMATION_EX = TDRIVE_LAYOUT_INFORMATION_EX type T_DRIVE_LAYOUT_INFORMATION_GPT = TDRIVE_LAYOUT_INFORMATION_GPT type T_DRIVE_LAYOUT_INFORMATION_MBR = TDRIVE_LAYOUT_INFORMATION_MBR type T_DSSSEED = TDSSSEED type T_DWORD_BLOB = TDWORD_BLOB type T_EFS_HASH_BLOB = TEFS_HASH_BLOB type T_EFS_KEY_INFO = TEFS_KEY_INFO type T_EFS_RPC_BLOB = TEFS_RPC_BLOB type T_ENCRYPTED_DATA_INFO = TENCRYPTED_DATA_INFO type T_ENCRYPTION_BUFFER = TENCRYPTION_BUFFER type T_ENCRYPTION_CERTIFICATE = TENCRYPTION_CERTIFICATE type T_ENCRYPTION_CERTIFICATE_HASH = TENCRYPTION_CERTIFICATE_HASH type T_ENCRYPTION_CERTIFICATE_HASH_LIST = TENCRYPTION_CERTIFICATE_HASH_LIST type T_ENCRYPTION_CERTIFICATE_LIST = TENCRYPTION_CERTIFICATE_LIST type T_ENLISTMENT_BASIC_INFORMATION = TENLISTMENT_BASIC_INFORMATION type T_ENLISTMENT_CRM_INFORMATION = TENLISTMENT_CRM_INFORMATION type T_ENUM_SERVICE_STATUSA = TENUM_SERVICE_STATUSA type T_ENUM_SERVICE_STATUSW = TENUM_SERVICE_STATUSW type T_ENUM_SERVICE_STATUS_PROCESSA = TENUM_SERVICE_STATUS_PROCESSA type T_ENUM_SERVICE_STATUS_PROCESSW = TENUM_SERVICE_STATUS_PROCESSW type T_EVENTLOGRECORD = TEVENTLOGRECORD type T_EVENTLOG_FULL_INFORMATION = TEVENTLOG_FULL_INFORMATION type T_EVENTSFORLOGFILE = TEVENTSFORLOGFILE type T_EV_EXTRA_CERT_CHAIN_POLICY_PARA = TEV_EXTRA_CERT_CHAIN_POLICY_PARA type T_EV_EXTRA_CERT_CHAIN_POLICY_STATUS = TEV_EXTRA_CERT_CHAIN_POLICY_STATUS type T_EXCEPTION_DEBUG_INFO = TEXCEPTION_DEBUG_INFO type T_EXCEPTION_POINTERS = struct { FExceptionRecord TPEXCEPTION_RECORD FContextRecord TPCONTEXT } type T_EXCEPTION_RECORD = struct { FExceptionCode TDWORD FExceptionFlags TDWORD FExceptionRecord uintptr FExceptionAddress TPVOID FNumberParameters TDWORD FExceptionInformation [15]TULONG_PTR } type T_EXCEPTION_RECORD32 = TEXCEPTION_RECORD32 type T_EXCEPTION_RECORD64 = TEXCEPTION_RECORD64 type T_EXCEPTION_REGISTRATION_RECORD = TEXCEPTION_REGISTRATION_RECORD type T_EXFAT_STATISTICS = TEXFAT_STATISTICS type T_EXIT_PROCESS_DEBUG_INFO = TEXIT_PROCESS_DEBUG_INFO type T_EXIT_THREAD_DEBUG_INFO = TEXIT_THREAD_DEBUG_INFO type T_EXPAND_VIRTUAL_DISK_PARAMETERS = TEXPAND_VIRTUAL_DISK_PARAMETERS type T_EXTENDED_ENCRYPTED_DATA_INFO = TEXTENDED_ENCRYPTED_DATA_INFO type T_FAT_STATISTICS = TFAT_STATISTICS type T_FILEMUIINFO = TFILEMUIINFO type T_FILESYSTEM_STATISTICS = TFILESYSTEM_STATISTICS type T_FILETIME = TFILETIME type T_FILE_ALIGNMENT_INFO = TFILE_ALIGNMENT_INFO type T_FILE_ALLOCATED_RANGE_BUFFER = TFILE_ALLOCATED_RANGE_BUFFER type T_FILE_ALLOCATION_INFO = TFILE_ALLOCATION_INFO type T_FILE_ATTRIBUTE_TAG_INFO = TFILE_ATTRIBUTE_TAG_INFO type T_FILE_BASIC_INFO = TFILE_BASIC_INFO type T_FILE_CASE_SENSITIVE_INFO = TFILE_CASE_SENSITIVE_INFO type T_FILE_COMPRESSION_INFO = TFILE_COMPRESSION_INFO type T_FILE_DISPOSITION_INFO = TFILE_DISPOSITION_INFO type T_FILE_DISPOSITION_INFO_EX = TFILE_DISPOSITION_INFO_EX type T_FILE_END_OF_FILE_INFO = TFILE_END_OF_FILE_INFO type T_FILE_FS_PERSISTENT_VOLUME_INFORMATION = TFILE_FS_PERSISTENT_VOLUME_INFORMATION type T_FILE_FULL_DIR_INFO = TFILE_FULL_DIR_INFO type T_FILE_ID_BOTH_DIR_INFO = TFILE_ID_BOTH_DIR_INFO type T_FILE_ID_EXTD_DIR_INFO = TFILE_ID_EXTD_DIR_INFO type T_FILE_ID_INFO = TFILE_ID_INFO type T_FILE_IO_PRIORITY_HINT_INFO = TFILE_IO_PRIORITY_HINT_INFO type T_FILE_MAKE_COMPATIBLE_BUFFER = TFILE_MAKE_COMPATIBLE_BUFFER type T_FILE_NAME_INFO = TFILE_NAME_INFO type T_FILE_NOTIFY_INFORMATION = TFILE_NOTIFY_INFORMATION type T_FILE_OBJECTID_BUFFER = TFILE_OBJECTID_BUFFER type T_FILE_PREFETCH = TFILE_PREFETCH type T_FILE_PREFETCH_EX = TFILE_PREFETCH_EX type T_FILE_PROVIDER_EXTERNAL_INFO_V0 = TFILE_PROVIDER_EXTERNAL_INFO_V0 type T_FILE_PROVIDER_EXTERNAL_INFO_V1 = TFILE_PROVIDER_EXTERNAL_INFO_V1 type T_FILE_QUERY_ON_DISK_VOL_INFO_BUFFER = TFILE_QUERY_ON_DISK_VOL_INFO_BUFFER type T_FILE_QUERY_SPARING_BUFFER = TFILE_QUERY_SPARING_BUFFER type T_FILE_REMOTE_PROTOCOL_INFO = TFILE_REMOTE_PROTOCOL_INFO type T_FILE_RENAME_INFO = TFILE_RENAME_INFO type T_FILE_SEGMENT_ELEMENT = TFILE_SEGMENT_ELEMENT type T_FILE_SET_DEFECT_MGMT_BUFFER = TFILE_SET_DEFECT_MGMT_BUFFER type T_FILE_SET_SPARSE_BUFFER = TFILE_SET_SPARSE_BUFFER type T_FILE_STANDARD_INFO = TFILE_STANDARD_INFO type T_FILE_STORAGE_INFO = TFILE_STORAGE_INFO type T_FILE_STREAM_INFO = TFILE_STREAM_INFO type T_FILE_SYSTEM_RECOGNITION_INFORMATION = TFILE_SYSTEM_RECOGNITION_INFORMATION type T_FILE_SYSTEM_RECOGNITION_STRUCTURE = TFILE_SYSTEM_RECOGNITION_STRUCTURE type T_FILE_TYPE_NOTIFICATION_INPUT = TFILE_TYPE_NOTIFICATION_INPUT type T_FILE_ZERO_DATA_INFORMATION = TFILE_ZERO_DATA_INFORMATION type T_FIND_NAME_BUFFER = TFIND_NAME_BUFFER type T_FIND_NAME_HEADER = TFIND_NAME_HEADER type T_FIXED = TFIXED type T_FLAGGED_BYTE_BLOB = TFLAGGED_BYTE_BLOB type T_FLAGGED_WORD_BLOB = TFLAGGED_WORD_BLOB type T_FLAG_STGMEDIUM = TFLAG_STGMEDIUM type T_FLOAT128 = TFLOAT128 type T_FOCUS_EVENT_RECORD = TFOCUS_EVENT_RECORD type T_FORMAT_EX_PARAMETERS = TFORMAT_EX_PARAMETERS type T_FORMAT_PARAMETERS = TFORMAT_PARAMETERS type T_FORM_INFO_1A = TFORM_INFO_1A type T_FORM_INFO_1W = TFORM_INFO_1W type T_FORM_INFO_2A = TFORM_INFO_2A type T_FORM_INFO_2W = TFORM_INFO_2W type T_FPO_DATA = TFPO_DATA type T_FSCTL_QUERY_FAT_BPB_BUFFER = TFSCTL_QUERY_FAT_BPB_BUFFER type T_FULL_PTR_TO_REFID_ELEMENT = TFULL_PTR_TO_REFID_ELEMENT type T_FULL_PTR_XLAT_TABLES = struct { FRefIdToPointer struct { FXlatTable uintptr FStateTable uintptr FNumberOfEntries uint32 } FPointerToRefId struct { FXlatTable uintptr FNumberOfBuckets uint32 FHashMask uint32 } FNextRefId uint32 FXlatSide TXLAT_SIDE } type T_GDI_NONREMOTE = TGDI_NONREMOTE type T_GDI_OBJECT = TGDI_OBJECT type T_GENERIC_BINDING_ROUTINE_PAIR = TGENERIC_BINDING_ROUTINE_PAIR type T_GENERIC_MAPPING = TGENERIC_MAPPING type T_GETVERSIONINPARAMS = TGETVERSIONINPARAMS type T_GET_CHANGER_PARAMETERS = TGET_CHANGER_PARAMETERS type T_GET_LENGTH_INFORMATION = TGET_LENGTH_INFORMATION type T_GET_MEDIA_TYPES = TGET_MEDIA_TYPES type T_GET_VIRTUAL_DISK_INFO = TGET_VIRTUAL_DISK_INFO type T_GLYPHMETRICS = TGLYPHMETRICS type T_GLYPHMETRICSFLOAT = TGLYPHMETRICSFLOAT type T_GRADIENT_RECT = TGRADIENT_RECT type T_GRADIENT_TRIANGLE = TGRADIENT_TRIANGLE type T_GROUP_AFFINITY = TGROUP_AFFINITY type T_GROUP_RELATIONSHIP = TGROUP_RELATIONSHIP type T_GUID = TGUID type T_HARDWARE_COUNTER_DATA = THARDWARE_COUNTER_DATA type T_HEAPINFO = struct { F_pentry uintptr F_size Tsize_t F_useflag int32 } type T_HEAP_SUMMARY = THEAP_SUMMARY type T_HISTOGRAM_BUCKET = THISTOGRAM_BUCKET type T_HMAC_Info = THMAC_INFO type T_HTTPSPolicyCallbackData = THTTPSPolicyCallbackData type T_HYPER_SIZEDARR = THYPER_SIZEDARR type T_ICONINFO = TICONINFO type T_ICONINFOEXA = TICONINFOEXA type T_ICONINFOEXW = TICONINFOEXW type T_IDEREGS = TIDEREGS type T_IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = TIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY type T_IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = TIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY type T_IMAGE_ARCHIVE_MEMBER_HEADER = TIMAGE_ARCHIVE_MEMBER_HEADER type T_IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = TIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY type T_IMAGE_ARM_RUNTIME_FUNCTION_ENTRY = TIMAGE_ARM_RUNTIME_FUNCTION_ENTRY type T_IMAGE_AUX_SYMBOL = TIMAGE_AUX_SYMBOL type T_IMAGE_AUX_SYMBOL_EX = TIMAGE_AUX_SYMBOL_EX type T_IMAGE_BASE_RELOCATION = TIMAGE_BASE_RELOCATION type T_IMAGE_BOUND_FORWARDER_REF = TIMAGE_BOUND_FORWARDER_REF type T_IMAGE_BOUND_IMPORT_DESCRIPTOR = TIMAGE_BOUND_IMPORT_DESCRIPTOR type T_IMAGE_CE_RUNTIME_FUNCTION_ENTRY = TIMAGE_CE_RUNTIME_FUNCTION_ENTRY type T_IMAGE_COFF_SYMBOLS_HEADER = TIMAGE_COFF_SYMBOLS_HEADER type T_IMAGE_DATA_DIRECTORY = TIMAGE_DATA_DIRECTORY type T_IMAGE_DEBUG_DIRECTORY = TIMAGE_DEBUG_DIRECTORY type T_IMAGE_DEBUG_MISC = TIMAGE_DEBUG_MISC type T_IMAGE_DELAYLOAD_DESCRIPTOR = TIMAGE_DELAYLOAD_DESCRIPTOR type T_IMAGE_DOS_HEADER = TIMAGE_DOS_HEADER type T_IMAGE_EXPORT_DIRECTORY = TIMAGE_EXPORT_DIRECTORY type T_IMAGE_FILE_HEADER = TIMAGE_FILE_HEADER type T_IMAGE_FUNCTION_ENTRY = TIMAGE_FUNCTION_ENTRY type T_IMAGE_FUNCTION_ENTRY64 = TIMAGE_FUNCTION_ENTRY64 type T_IMAGE_IMPORT_BY_NAME = TIMAGE_IMPORT_BY_NAME type T_IMAGE_IMPORT_DESCRIPTOR = TIMAGE_IMPORT_DESCRIPTOR type T_IMAGE_LINENUMBER = TIMAGE_LINENUMBER type T_IMAGE_NT_HEADERS = TIMAGE_NT_HEADERS32 type T_IMAGE_NT_HEADERS64 = TIMAGE_NT_HEADERS64 type T_IMAGE_OPTIONAL_HEADER = TIMAGE_OPTIONAL_HEADER32 type T_IMAGE_OPTIONAL_HEADER64 = TIMAGE_OPTIONAL_HEADER64 type T_IMAGE_OS2_HEADER = TIMAGE_OS2_HEADER type T_IMAGE_RELOCATION = TIMAGE_RELOCATION type T_IMAGE_RESOURCE_DATA_ENTRY = TIMAGE_RESOURCE_DATA_ENTRY type T_IMAGE_RESOURCE_DIRECTORY = TIMAGE_RESOURCE_DIRECTORY type T_IMAGE_RESOURCE_DIRECTORY_ENTRY = TIMAGE_RESOURCE_DIRECTORY_ENTRY type T_IMAGE_RESOURCE_DIRECTORY_STRING = TIMAGE_RESOURCE_DIRECTORY_STRING type T_IMAGE_RESOURCE_DIR_STRING_U = TIMAGE_RESOURCE_DIR_STRING_U type T_IMAGE_ROM_HEADERS = TIMAGE_ROM_HEADERS type T_IMAGE_ROM_OPTIONAL_HEADER = TIMAGE_ROM_OPTIONAL_HEADER type T_IMAGE_RUNTIME_FUNCTION_ENTRY = struct { FBeginAddress TDWORD FEndAddress TDWORD F__ccgo2_8 struct { FUnwindData [0]TDWORD FUnwindInfoAddress TDWORD } } type T_IMAGE_SECTION_HEADER = TIMAGE_SECTION_HEADER type T_IMAGE_SEPARATE_DEBUG_HEADER = TIMAGE_SEPARATE_DEBUG_HEADER type T_IMAGE_SYMBOL = TIMAGE_SYMBOL type T_IMAGE_SYMBOL_EX = TIMAGE_SYMBOL_EX type T_IMAGE_THUNK_DATA32 = TIMAGE_THUNK_DATA32 type T_IMAGE_THUNK_DATA64 = TIMAGE_THUNK_DATA64 type T_IMAGE_TLS_DIRECTORY32 = TIMAGE_TLS_DIRECTORY32 type T_IMAGE_TLS_DIRECTORY64 = TIMAGE_TLS_DIRECTORY64 type T_IMAGE_VXD_HEADER = TIMAGE_VXD_HEADER type T_INPUT_RECORD = TINPUT_RECORD type T_IO_COUNTERS = TIO_COUNTERS type T_ImageArchitectureEntry = TIMAGE_ARCHITECTURE_ENTRY type T_ImageArchitectureHeader = TIMAGE_ARCHITECTURE_HEADER type T_JIT_DEBUG_INFO = TJIT_DEBUG_INFO type T_JOBOBJECT_ASSOCIATE_COMPLETION_PORT = TJOBOBJECT_ASSOCIATE_COMPLETION_PORT type T_JOBOBJECT_BASIC_ACCOUNTING_INFORMATION = TJOBOBJECT_BASIC_ACCOUNTING_INFORMATION type T_JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION = TJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION type T_JOBOBJECT_BASIC_LIMIT_INFORMATION = TJOBOBJECT_BASIC_LIMIT_INFORMATION type T_JOBOBJECT_BASIC_PROCESS_ID_LIST = TJOBOBJECT_BASIC_PROCESS_ID_LIST type T_JOBOBJECT_BASIC_UI_RESTRICTIONS = TJOBOBJECT_BASIC_UI_RESTRICTIONS type T_JOBOBJECT_CPU_RATE_CONTROL_INFORMATION = TJOBOBJECT_CPU_RATE_CONTROL_INFORMATION type T_JOBOBJECT_END_OF_JOB_TIME_INFORMATION = TJOBOBJECT_END_OF_JOB_TIME_INFORMATION type T_JOBOBJECT_EXTENDED_LIMIT_INFORMATION = TJOBOBJECT_EXTENDED_LIMIT_INFORMATION type T_JOBOBJECT_JOBSET_INFORMATION = TJOBOBJECT_JOBSET_INFORMATION type T_JOBOBJECT_LIMIT_VIOLATION_INFORMATION = TJOBOBJECT_LIMIT_VIOLATION_INFORMATION type T_JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION = TJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION type T_JOBOBJECT_SECURITY_LIMIT_INFORMATION = TJOBOBJECT_SECURITY_LIMIT_INFORMATION type T_JOB_INFO_1A = TJOB_INFO_1A type T_JOB_INFO_1W = TJOB_INFO_1W type T_JOB_INFO_2A = TJOB_INFO_2A type T_JOB_INFO_2W = TJOB_INFO_2W type T_JOB_INFO_3 = TJOB_INFO_3 type T_JOB_SET_ARRAY = TJOB_SET_ARRAY type T_KCRM_MARSHAL_HEADER = TKCRM_MARSHAL_HEADER type T_KCRM_PROTOCOL_BLOB = TKCRM_PROTOCOL_BLOB type T_KCRM_TRANSACTION_BLOB = TKCRM_TRANSACTION_BLOB type T_KEY_EVENT_RECORD = TKEY_EVENT_RECORD type T_KEY_TYPE_SUBTYPE = TKEY_TYPE_SUBTYPE type T_KTMOBJECT_CURSOR = TKTMOBJECT_CURSOR type T_LANA_ENUM = TLANA_ENUM type T_LARGE_INTEGER = TLARGE_INTEGER type T_LDBL12 = struct { Fld12 [12]uint8 } type T_LDOUBLE = struct { Fld [10]uint8 } type T_LDT_ENTRY = TLDT_ENTRY type T_LIST_ENTRY = TLIST_ENTRY type T_LOAD_DLL_DEBUG_INFO = TLOAD_DLL_DEBUG_INFO type T_LONG_SIZEDARR = TDWORD_SIZEDARR type T_LOOKUP_STREAM_FROM_CLUSTER_ENTRY = TLOOKUP_STREAM_FROM_CLUSTER_ENTRY type T_LOOKUP_STREAM_FROM_CLUSTER_INPUT = TLOOKUP_STREAM_FROM_CLUSTER_INPUT type T_LOOKUP_STREAM_FROM_CLUSTER_OUTPUT = TLOOKUP_STREAM_FROM_CLUSTER_OUTPUT type T_LUID = TLUID type T_LUID_AND_ATTRIBUTES = TLUID_AND_ATTRIBUTES type T_M128A = TM128A type T_MALLOC_FREE_STRUCT = TMALLOC_FREE_STRUCT type T_MAT2 = TMAT2 type T_MEMORYSTATUS = TMEMORYSTATUS type T_MEMORYSTATUSEX = TMEMORYSTATUSEX type T_MEMORY_BASIC_INFORMATION = TMEMORY_BASIC_INFORMATION type T_MEMORY_BASIC_INFORMATION32 = TMEMORY_BASIC_INFORMATION32 type T_MEMORY_BASIC_INFORMATION64 = TMEMORY_BASIC_INFORMATION64 type T_MEMORY_PRIORITY_INFORMATION = TMEMORY_PRIORITY_INFORMATION type T_MEM_ADDRESS_REQUIREMENTS = TMEM_ADDRESS_REQUIREMENTS type T_MENU_EVENT_RECORD = TMENU_EVENT_RECORD type T_MERGE_VIRTUAL_DISK_PARAMETERS = TMERGE_VIRTUAL_DISK_PARAMETERS type T_MESSAGE_RESOURCE_BLOCK = TMESSAGE_RESOURCE_BLOCK type T_MESSAGE_RESOURCE_DATA = TMESSAGE_RESOURCE_DATA type T_MESSAGE_RESOURCE_ENTRY = TMESSAGE_RESOURCE_ENTRY type T_MIDL_FORMAT_STRING = TMIDL_FORMAT_STRING type T_MIDL_SERVER_INFO_ = TMIDL_SERVER_INFO type T_MIDL_STUBLESS_PROXY_INFO = TMIDL_STUBLESS_PROXY_INFO type T_MIDL_STUB_DESC = struct { FRpcInterfaceInformation uintptr FpfnAllocate uintptr FpfnFree uintptr FIMPLICIT_HANDLE_INFO struct { FpPrimitiveHandle [0]uintptr FpGenericBindingInfo [0]TPGENERIC_BINDING_INFO FpAutoHandle uintptr } FapfnNdrRundownRoutines uintptr FaGenericBindingRoutinePairs uintptr FapfnExprEval uintptr FaXmitQuintuple uintptr FpFormatTypes uintptr FfCheckBounds int32 FVersion uint32 FpMallocFreeStruct uintptr FMIDLVersion int32 FCommFaultOffsets uintptr FaUserMarshalQuadruple uintptr FNotifyRoutineTable uintptr FmFlags TULONG_PTR FCsRoutineTables uintptr FReserved4 uintptr FReserved5 TULONG_PTR } type T_MIDL_SYNTAX_INFO = struct { FTransferSyntax TRPC_SYNTAX_IDENTIFIER FDispatchTable uintptr FProcString TPFORMAT_STRING FFmtStringOffset uintptr FTypeString TPFORMAT_STRING FaUserMarshalQuadruple uintptr FpReserved1 TULONG_PTR FpReserved2 TULONG_PTR } type T_MIRROR_VIRTUAL_DISK_PARAMETERS = TMIRROR_VIRTUAL_DISK_PARAMETERS type T_MMCKINFO = TMMCKINFO type T_MMIOINFO = TMMIOINFO type T_MODEMDEVCAPS = TMODEMDEVCAPS type T_MODEMSETTINGS = TMODEMSETTINGS type T_MODIFY_VHDSET_PARAMETERS = TMODIFY_VHDSET_PARAMETERS type T_MONITOR_INFO_1A = TMONITOR_INFO_1A type T_MONITOR_INFO_1W = TMONITOR_INFO_1W type T_MONITOR_INFO_2A = TMONITOR_INFO_2A type T_MONITOR_INFO_2W = TMONITOR_INFO_2W type T_MOUSE_EVENT_RECORD = TMOUSE_EVENT_RECORD type T_MOVE_FILE_RECORD_DATA = TMOVE_FILE_RECORD_DATA type T_NAME_BUFFER = TNAME_BUFFER type T_NCB = TNCB type T_NCRYPT_CIPHER_PADDING_INFO = TNCRYPT_CIPHER_PADDING_INFO type T_NCRYPT_KEY_BLOB_HEADER = TNCRYPT_KEY_BLOB_HEADER type T_NCryptAlgorithmName = TNCryptAlgorithmName type T_NDR_CS_ROUTINES = TNDR_CS_ROUTINES type T_NDR_CS_SIZE_CONVERT_ROUTINES = TNDR_CS_SIZE_CONVERT_ROUTINES type T_NDR_SCONTEXT = struct { Fpad [2]uintptr FuserContext uintptr } type T_NDR_USER_MARSHAL_INFO = TNDR_USER_MARSHAL_INFO type T_NDR_USER_MARSHAL_INFO_LEVEL1 = TNDR_USER_MARSHAL_INFO_LEVEL1 type T_NETCONNECTINFOSTRUCT = TNETCONNECTINFOSTRUCT type T_NETINFOSTRUCT = TNETINFOSTRUCT type T_NETRESOURCEA = TNETRESOURCEA type T_NETRESOURCEW = TNETRESOURCEW type T_NON_PAGED_DEBUG_INFO = TNON_PAGED_DEBUG_INFO type T_NOTIFYICONDATAA = TNOTIFYICONDATAA type T_NOTIFYICONDATAW = TNOTIFYICONDATAW type T_NOTIFYICONIDENTIFIER = TNOTIFYICONIDENTIFIER type T_NTFS_STATISTICS = TNTFS_STATISTICS type T_NT_TIB = TNT_TIB type T_NT_TIB32 = TNT_TIB32 type T_NT_TIB64 = TNT_TIB64 type T_NUMA_NODE_RELATIONSHIP = TNUMA_NODE_RELATIONSHIP type T_OBJECTID = TOBJECTID type T_OBJECT_TYPE_LIST = TOBJECT_TYPE_LIST type T_OCSP_BASIC_RESPONSE_ENTRY = TOCSP_BASIC_RESPONSE_ENTRY type T_OCSP_BASIC_RESPONSE_INFO = TOCSP_BASIC_RESPONSE_INFO type T_OCSP_BASIC_REVOKED_INFO = TOCSP_BASIC_REVOKED_INFO type T_OCSP_BASIC_SIGNED_RESPONSE_INFO = TOCSP_BASIC_SIGNED_RESPONSE_INFO type T_OCSP_CERT_ID = TOCSP_CERT_ID type T_OCSP_REQUEST_ENTRY = TOCSP_REQUEST_ENTRY type T_OCSP_REQUEST_INFO = TOCSP_REQUEST_INFO type T_OCSP_RESPONSE_INFO = TOCSP_RESPONSE_INFO type T_OCSP_SIGNATURE_INFO = TOCSP_SIGNATURE_INFO type T_OCSP_SIGNED_REQUEST_INFO = TOCSP_SIGNED_REQUEST_INFO type T_OFNOTIFYA = TOFNOTIFYA type T_OFNOTIFYEXA = TOFNOTIFYEXA type T_OFNOTIFYEXW = TOFNOTIFYEXW type T_OFNOTIFYW = TOFNOTIFYW type T_OFSTRUCT = TOFSTRUCT type T_OLESTREAM = struct { Flpstbl TLPOLESTREAMVTBL } type T_OLESTREAMVTBL = TOLESTREAMVTBL type T_OPEN_PRINTER_PROPS_INFOA = TOPEN_PRINTER_PROPS_INFOA type T_OPEN_PRINTER_PROPS_INFOW = TOPEN_PRINTER_PROPS_INFOW type T_OPEN_VIRTUAL_DISK_PARAMETERS = TOPEN_VIRTUAL_DISK_PARAMETERS type T_OPERATION_END_PARAMETERS = TOPERATION_END_PARAMETERS type T_OPERATION_START_PARAMETERS = TOPERATION_START_PARAMETERS type T_OSVERSIONINFOA = TOSVERSIONINFOA type T_OSVERSIONINFOEXA = TOSVERSIONINFOEXA type T_OSVERSIONINFOEXW = TOSVERSIONINFOEXW type T_OSVERSIONINFOW = TOSVERSIONINFOW type T_OUTLINETEXTMETRICA = TOUTLINETEXTMETRICA type T_OUTLINETEXTMETRICW = TOUTLINETEXTMETRICW type T_OUTPUT_DEBUG_STRING_INFO = TOUTPUT_DEBUG_STRING_INFO type T_OVERLAPPED = TOVERLAPPED type T_OVERLAPPED_ENTRY = TOVERLAPPED_ENTRY type T_PACKEDEVENTINFO = TPACKEDEVENTINFO type T_PARTITION_INFORMATION = TPARTITION_INFORMATION type T_PARTITION_INFORMATION_EX = TPARTITION_INFORMATION_EX type T_PARTITION_INFORMATION_GPT = TPARTITION_INFORMATION_GPT type T_PARTITION_INFORMATION_MBR = TPARTITION_INFORMATION_MBR type T_PATHNAME_BUFFER = TPATHNAME_BUFFER type T_PERFORMANCE_DATA = TPERFORMANCE_DATA type T_PERF_BIN = TPERF_BIN type T_PERF_COUNTER_BLOCK = TPERF_COUNTER_BLOCK type T_PERF_COUNTER_DEFINITION = TPERF_COUNTER_DEFINITION type T_PERF_DATA_BLOCK = TPERF_DATA_BLOCK type T_PERF_INSTANCE_DEFINITION = TPERF_INSTANCE_DEFINITION type T_PERF_OBJECT_TYPE = TPERF_OBJECT_TYPE type T_PERSISTENT_RESERVE_COMMAND = TPERSISTENT_RESERVE_COMMAND type T_PHNDLR = uintptr type T_PIFV = uintptr type T_PIMAGE_RUNTIME_FUNCTION_ENTRY = uintptr type T_PKCS12_PBES2_EXPORT_PARAMS = TPKCS12_PBES2_EXPORT_PARAMS type T_PLEX_READ_DATA_REQUEST = TPLEX_READ_DATA_REQUEST type T_POINTFLOAT = TPOINTFLOAT type T_POINTL = TPOINTL type T_PORT_INFO_1A = TPORT_INFO_1A type T_PORT_INFO_1W = TPORT_INFO_1W type T_PORT_INFO_2A = TPORT_INFO_2A type T_PORT_INFO_2W = TPORT_INFO_2W type T_PORT_INFO_3A = TPORT_INFO_3A type T_PORT_INFO_3W = TPORT_INFO_3W type T_POWER_IDLE_RESILIENCY = TPOWER_IDLE_RESILIENCY type T_POWER_MONITOR_INVOCATION = TPOWER_MONITOR_INVOCATION type T_POWER_PLATFORM_INFORMATION = TPOWER_PLATFORM_INFORMATION type T_POWER_SESSION_CONNECT = TPOWER_SESSION_CONNECT type T_POWER_SESSION_RIT_STATE = TPOWER_SESSION_RIT_STATE type T_POWER_SESSION_TIMEOUTS = TPOWER_SESSION_TIMEOUTS type T_POWER_SESSION_WINLOGON = TPOWER_SESSION_WINLOGON type T_POWER_USER_PRESENCE = TPOWER_USER_PRESENCE type T_PREVENT_MEDIA_REMOVAL = TPREVENT_MEDIA_REMOVAL type T_PRINTER_CONNECTION_INFO_1 = TPRINTER_CONNECTION_INFO_1 type T_PRINTER_DEFAULTSA = TPRINTER_DEFAULTSA type T_PRINTER_DEFAULTSW = TPRINTER_DEFAULTSW type T_PRINTER_ENUM_VALUESA = TPRINTER_ENUM_VALUESA type T_PRINTER_ENUM_VALUESW = TPRINTER_ENUM_VALUESW type T_PRINTER_INFO_1A = TPRINTER_INFO_1A type T_PRINTER_INFO_1W = TPRINTER_INFO_1W type T_PRINTER_INFO_2A = TPRINTER_INFO_2A type T_PRINTER_INFO_2W = TPRINTER_INFO_2W type T_PRINTER_INFO_3 = TPRINTER_INFO_3 type T_PRINTER_INFO_4A = TPRINTER_INFO_4A type T_PRINTER_INFO_4W = TPRINTER_INFO_4W type T_PRINTER_INFO_5A = TPRINTER_INFO_5A type T_PRINTER_INFO_5W = TPRINTER_INFO_5W type T_PRINTER_INFO_6 = TPRINTER_INFO_6 type T_PRINTER_INFO_7A = TPRINTER_INFO_7A type T_PRINTER_INFO_7W = TPRINTER_INFO_7W type T_PRINTER_INFO_8A = TPRINTER_INFO_8A type T_PRINTER_INFO_8W = TPRINTER_INFO_8W type T_PRINTER_INFO_9A = TPRINTER_INFO_9A type T_PRINTER_INFO_9W = TPRINTER_INFO_9W type T_PRINTER_NOTIFY_INFO = TPRINTER_NOTIFY_INFO type T_PRINTER_NOTIFY_INFO_DATA = TPRINTER_NOTIFY_INFO_DATA type T_PRINTER_NOTIFY_OPTIONS = TPRINTER_NOTIFY_OPTIONS type T_PRINTER_NOTIFY_OPTIONS_TYPE = TPRINTER_NOTIFY_OPTIONS_TYPE type T_PRINTER_OPTIONS = TPRINTER_OPTIONS type T_PRINTPROCESSOR_CAPS_1 = TPRINTPROCESSOR_CAPS_1 type T_PRINTPROCESSOR_CAPS_2 = TPRINTPROCESSOR_CAPS_2 type T_PRINTPROCESSOR_INFO_1A = TPRINTPROCESSOR_INFO_1A type T_PRINTPROCESSOR_INFO_1W = TPRINTPROCESSOR_INFO_1W type T_PRIVILEGE_SET = TPRIVILEGE_SET type T_PRIVKEYVER3 = TDHPRIVKEY_VER3 type T_PROCESSOR_GROUP_INFO = TPROCESSOR_GROUP_INFO type T_PROCESSOR_NUMBER = TPROCESSOR_NUMBER type T_PROCESSOR_POWER_POLICY = TPROCESSOR_POWER_POLICY type T_PROCESSOR_POWER_POLICY_INFO = TPROCESSOR_POWER_POLICY_INFO type T_PROCESSOR_RELATIONSHIP = TPROCESSOR_RELATIONSHIP type T_PROCESS_DYNAMIC_EH_CONTINUATION_TARGET = TPROCESS_DYNAMIC_EH_CONTINUATION_TARGET type T_PROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION = TPROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION type T_PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE = TPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE type T_PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION = TPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION type T_PROCESS_HEAP_ENTRY = TPROCESS_HEAP_ENTRY type T_PROCESS_INFORMATION = TPROCESS_INFORMATION type T_PROCESS_LEAP_SECOND_INFO = TPROCESS_LEAP_SECOND_INFO type T_PROCESS_MACHINE_INFORMATION = TPROCESS_MACHINE_INFORMATION type T_PROCESS_MEMORY_EXHAUSTION_INFO = TPROCESS_MEMORY_EXHAUSTION_INFO type T_PROCESS_MITIGATION_ASLR_POLICY = TPROCESS_MITIGATION_ASLR_POLICY type T_PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = TPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY type T_PROCESS_MITIGATION_CHILD_PROCESS_POLICY = TPROCESS_MITIGATION_CHILD_PROCESS_POLICY type T_PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = TPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY type T_PROCESS_MITIGATION_DEP_POLICY = TPROCESS_MITIGATION_DEP_POLICY type T_PROCESS_MITIGATION_DYNAMIC_CODE_POLICY = TPROCESS_MITIGATION_DYNAMIC_CODE_POLICY type T_PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = TPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY type T_PROCESS_MITIGATION_FONT_DISABLE_POLICY = TPROCESS_MITIGATION_FONT_DISABLE_POLICY type T_PROCESS_MITIGATION_IMAGE_LOAD_POLICY = TPROCESS_MITIGATION_IMAGE_LOAD_POLICY type T_PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY = TPROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY type T_PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY = TPROCESS_MITIGATION_REDIRECTION_TRUST_POLICY type T_PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY = TPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY type T_PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = TPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY type T_PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = TPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY type T_PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY = TPROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY type T_PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY = TPROCESS_MITIGATION_USER_SHADOW_STACK_POLICY type T_PROCESS_POWER_THROTTLING_STATE = TPROCESS_POWER_THROTTLING_STATE type T_PROPSHEETHEADERA = TPROPSHEETHEADERA type T_PROPSHEETHEADERW = TPROPSHEETHEADERW type T_PROPSHEETPAGEA_V1 = TPROPSHEETPAGEA_V1 type T_PROPSHEETPAGEA_V2 = TPROPSHEETPAGEA_V2 type T_PROPSHEETPAGEW_V1 = TPROPSHEETPAGEW_V1 type T_PROPSHEETPAGEW_V2 = TPROPSHEETPAGEW_V2 type T_PROVIDOR_INFO_1A = TPROVIDOR_INFO_1A type T_PROVIDOR_INFO_1W = TPROVIDOR_INFO_1W type T_PROVIDOR_INFO_2A = TPROVIDOR_INFO_2A type T_PROVIDOR_INFO_2W = TPROVIDOR_INFO_2W type T_PROV_ENUMALGS = TPROV_ENUMALGS type T_PROV_ENUMALGS_EX = TPROV_ENUMALGS_EX type T_PSFEATURE_CUSTPAPER = TPSFEATURE_CUSTPAPER type T_PSFEATURE_OUTPUT = TPSFEATURE_OUTPUT type T_PSHNOTIFY = TPSHNOTIFY type T_PSINJECTDATA = TPSINJECTDATA type T_PUBKEY = TDHPUBKEY type T_PUBKEYVER3 = TDHPUBKEY_VER3 type T_PUBLICKEYSTRUC = TBLOBHEADER type T_PVFI = uintptr type T_PVFV = uintptr type T_QUERY_CHANGES_VIRTUAL_DISK_RANGE = TQUERY_CHANGES_VIRTUAL_DISK_RANGE type T_QUERY_SERVICE_CONFIGA = TQUERY_SERVICE_CONFIGA type T_QUERY_SERVICE_CONFIGW = TQUERY_SERVICE_CONFIGW type T_QUERY_SERVICE_LOCK_STATUSA = TQUERY_SERVICE_LOCK_STATUSA type T_QUERY_SERVICE_LOCK_STATUSW = TQUERY_SERVICE_LOCK_STATUSW type T_QUOTA_LIMITS = TQUOTA_LIMITS type T_QUOTA_LIMITS_EX = TQUOTA_LIMITS_EX type T_RASTERIZER_STATUS = TRASTERIZER_STATUS type T_RATE_QUOTA_LIMIT = TRATE_QUOTA_LIMIT type T_RDR_CALLOUT_STATE = TRDR_CALLOUT_STATE type T_READ_ELEMENT_ADDRESS_INFO = TREAD_ELEMENT_ADDRESS_INFO type T_REASON_CONTEXT = TREASON_CONTEXT type T_REASSIGN_BLOCKS = TREASSIGN_BLOCKS type T_REASSIGN_BLOCKS_EX = TREASSIGN_BLOCKS_EX type T_RECTL = TRECTL type T_REDIRECTION_DESCRIPTOR = TREDIRECTION_DESCRIPTOR type T_REDIRECTION_FUNCTION_DESCRIPTOR = TREDIRECTION_FUNCTION_DESCRIPTOR type T_REMOTE_NAME_INFOA = TREMOTE_NAME_INFOA type T_REMOTE_NAME_INFOW = TREMOTE_NAME_INFOW type T_REMSECURITY_ATTRIBUTES = TREMSECURITY_ATTRIBUTES type T_REPARSE_GUID_DATA_BUFFER = TREPARSE_GUID_DATA_BUFFER type T_REQUEST_OPLOCK_INPUT_BUFFER = TREQUEST_OPLOCK_INPUT_BUFFER type T_REQUEST_OPLOCK_OUTPUT_BUFFER = TREQUEST_OPLOCK_OUTPUT_BUFFER type T_REQUEST_RAW_ENCRYPTED_DATA = TREQUEST_RAW_ENCRYPTED_DATA type T_RESIZE_VIRTUAL_DISK_PARAMETERS = TRESIZE_VIRTUAL_DISK_PARAMETERS type T_RESOURCEMANAGER_BASIC_INFORMATION = TRESOURCEMANAGER_BASIC_INFORMATION type T_RESOURCEMANAGER_COMPLETION_INFORMATION = TRESOURCEMANAGER_COMPLETION_INFORMATION type T_RESUME_PERFORMANCE = TRESUME_PERFORMANCE type T_RETRIEVAL_POINTER_BASE = TRETRIEVAL_POINTER_BASE type T_RGNDATA = TRGNDATA type T_RGNDATAHEADER = TRGNDATAHEADER type T_RIP_INFO = TRIP_INFO type T_ROOT_INFO_LUID = TROOT_INFO_LUID type T_RPC_ASYNC_NOTIFICATION_INFO = TRPC_ASYNC_NOTIFICATION_INFO type T_RPC_BINDING_HANDLE_OPTIONS_V1 = TRPC_BINDING_HANDLE_OPTIONS_V1 type T_RPC_BINDING_HANDLE_TEMPLATE = TRPC_BINDING_HANDLE_TEMPLATE_V1 type T_RPC_BINDING_VECTOR = TRPC_BINDING_VECTOR type T_RPC_CLIENT_INTERFACE = TRPC_CLIENT_INTERFACE type T_RPC_C_OPT_METADATA_DESCRIPTOR = TRPC_C_OPT_METADATA_DESCRIPTOR type T_RPC_HTTP_TRANSPORT_CREDENTIALS_A = TRPC_HTTP_TRANSPORT_CREDENTIALS_A type T_RPC_HTTP_TRANSPORT_CREDENTIALS_W = TRPC_HTTP_TRANSPORT_CREDENTIALS_W type T_RPC_IF_ID = TRPC_IF_ID type T_RPC_MESSAGE = TRPC_MESSAGE type T_RPC_POLICY = TRPC_POLICY type T_RPC_PROTSEQ_ENDPOINT = TRPC_PROTSEQ_ENDPOINT type T_RPC_PROTSEQ_VECTORA = TRPC_PROTSEQ_VECTORA type T_RPC_PROTSEQ_VECTORW = TRPC_PROTSEQ_VECTORW type T_RPC_SECURITY_QOS = TRPC_SECURITY_QOS type T_RPC_SECURITY_QOS_V2_A = TRPC_SECURITY_QOS_V2_A type T_RPC_SECURITY_QOS_V2_W = TRPC_SECURITY_QOS_V2_W type T_RPC_SECURITY_QOS_V3_A = TRPC_SECURITY_QOS_V3_A type T_RPC_SECURITY_QOS_V3_W = TRPC_SECURITY_QOS_V3_W type T_RPC_SERVER_INTERFACE = TRPC_SERVER_INTERFACE type T_RPC_SYNTAX_IDENTIFIER = TRPC_SYNTAX_IDENTIFIER type T_RPC_TRANSFER_SYNTAX = TRPC_TRANSFER_SYNTAX type T_RPC_VERSION = TRPC_VERSION type T_RSAPUBKEY = TRSAPUBKEY type T_RTL_BARRIER = TRTL_BARRIER type T_RTL_CONDITION_VARIABLE = TRTL_CONDITION_VARIABLE type T_RTL_CRITICAL_SECTION = TRTL_CRITICAL_SECTION type T_RTL_CRITICAL_SECTION_DEBUG = TRTL_CRITICAL_SECTION_DEBUG type T_RTL_RUN_ONCE = TRTL_RUN_ONCE type T_RTL_SRWLOCK = TRTL_SRWLOCK type T_RTL_VERIFIER_DLL_DESCRIPTOR = TRTL_VERIFIER_DLL_DESCRIPTOR type T_RTL_VERIFIER_PROVIDER_DESCRIPTOR = TRTL_VERIFIER_PROVIDER_DESCRIPTOR type T_RTL_VERIFIER_THUNK_DESCRIPTOR = TRTL_VERIFIER_THUNK_DESCRIPTOR type T_RemotableHandle = TRemotableHandle type T_SCARD_ATRMASK = TSCARD_ATRMASK type T_SCARD_IO_REQUEST = TSCARD_IO_REQUEST type T_SCHANNEL_ALG = TSCHANNEL_ALG type T_SCONTEXT_QUEUE = TSCONTEXT_QUEUE type T_SCOPE_TABLE_AMD64 = TSCOPE_TABLE_AMD64 type T_SCRUB_DATA_INPUT = TSCRUB_DATA_INPUT type T_SCRUB_DATA_OUTPUT = TSCRUB_DATA_OUTPUT type T_SC_ACTION = TSC_ACTION type T_SD_CHANGE_MACHINE_SID_INPUT = TSD_CHANGE_MACHINE_SID_INPUT type T_SD_CHANGE_MACHINE_SID_OUTPUT = TSD_CHANGE_MACHINE_SID_OUTPUT type T_SECURITY_ATTRIBUTES = TSECURITY_ATTRIBUTES type T_SECURITY_CAPABILITIES = TSECURITY_CAPABILITIES type T_SECURITY_DESCRIPTOR = TSECURITY_DESCRIPTOR type T_SECURITY_DESCRIPTOR_RELATIVE = TSECURITY_DESCRIPTOR_RELATIVE type T_SECURITY_QUALITY_OF_SERVICE = TSECURITY_QUALITY_OF_SERVICE type T_SEC_WINNT_AUTH_IDENTITY_A = TSEC_WINNT_AUTH_IDENTITY_A type T_SEC_WINNT_AUTH_IDENTITY_W = TSEC_WINNT_AUTH_IDENTITY_W type T_SENDCMDINPARAMS = TSENDCMDINPARAMS type T_SENDCMDOUTPARAMS = TSENDCMDOUTPARAMS type T_SERVICE_CONTROL_STATUS_REASON_PARAMSA = TSERVICE_CONTROL_STATUS_REASON_PARAMSA type T_SERVICE_CONTROL_STATUS_REASON_PARAMSW = TSERVICE_CONTROL_STATUS_REASON_PARAMSW type T_SERVICE_DELAYED_AUTO_START_INFO = TSERVICE_DELAYED_AUTO_START_INFO type T_SERVICE_DESCRIPTIONA = TSERVICE_DESCRIPTIONA type T_SERVICE_DESCRIPTIONW = TSERVICE_DESCRIPTIONW type T_SERVICE_FAILURE_ACTIONSA = TSERVICE_FAILURE_ACTIONSA type T_SERVICE_FAILURE_ACTIONSW = TSERVICE_FAILURE_ACTIONSW type T_SERVICE_FAILURE_ACTIONS_FLAG = TSERVICE_FAILURE_ACTIONS_FLAG type T_SERVICE_NOTIFYA = TSERVICE_NOTIFYA type T_SERVICE_NOTIFYW = TSERVICE_NOTIFYW type T_SERVICE_PRESHUTDOWN_INFO = TSERVICE_PRESHUTDOWN_INFO type T_SERVICE_REQUIRED_PRIVILEGES_INFOA = TSERVICE_REQUIRED_PRIVILEGES_INFOA type T_SERVICE_REQUIRED_PRIVILEGES_INFOW = TSERVICE_REQUIRED_PRIVILEGES_INFOW type T_SERVICE_SID_INFO = TSERVICE_SID_INFO type T_SERVICE_STATUS = TSERVICE_STATUS type T_SERVICE_STATUS_PROCESS = TSERVICE_STATUS_PROCESS type T_SERVICE_TABLE_ENTRYA = TSERVICE_TABLE_ENTRYA type T_SERVICE_TABLE_ENTRYW = TSERVICE_TABLE_ENTRYW type T_SESSION_BUFFER = TSESSION_BUFFER type T_SESSION_HEADER = TSESSION_HEADER type T_SET_PARTITION_INFORMATION = TSET_PARTITION_INFORMATION type T_SET_PARTITION_INFORMATION_EX = TSET_PARTITION_INFORMATION_EX type T_SET_VIRTUAL_DISK_INFO = TSET_VIRTUAL_DISK_INFO type T_SE_ACCESS_REPLY = TSE_ACCESS_REPLY type T_SE_ACCESS_REQUEST = TSE_ACCESS_REQUEST type T_SE_IMPERSONATION_STATE = TSE_IMPERSONATION_STATE type T_SE_SECURITY_DESCRIPTOR = TSE_SECURITY_DESCRIPTOR type T_SHCREATEPROCESSINFOW = TSHCREATEPROCESSINFOW type T_SHELLEXECUTEINFOA = TSHELLEXECUTEINFOA type T_SHELLEXECUTEINFOW = TSHELLEXECUTEINFOW type T_SHFILEINFOA = TSHFILEINFOA type T_SHFILEINFOW = TSHFILEINFOW type T_SHFILEOPSTRUCTA = TSHFILEOPSTRUCTA type T_SHFILEOPSTRUCTW = TSHFILEOPSTRUCTW type T_SHNAMEMAPPINGA = TSHNAMEMAPPINGA type T_SHNAMEMAPPINGW = TSHNAMEMAPPINGW type T_SHORT_SIZEDARR = TWORD_SIZEDARR type T_SHQUERYRBINFO = TSHQUERYRBINFO type T_SHRINK_VOLUME_INFORMATION = TSHRINK_VOLUME_INFORMATION type T_SHSTOCKICONINFO = TSHSTOCKICONINFO type T_SID = TSID type T_SID_AND_ATTRIBUTES = TSID_AND_ATTRIBUTES type T_SID_AND_ATTRIBUTES_HASH = TSID_AND_ATTRIBUTES_HASH type T_SID_IDENTIFIER_AUTHORITY = TSID_IDENTIFIER_AUTHORITY type T_SINGLE_LIST_ENTRY = TSINGLE_LIST_ENTRY type T_SI_COPYFILE = TSI_COPYFILE type T_SLIST_HEADER = TSLIST_HEADER type T_SMALL_RECT = TSMALL_RECT type T_SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS = TSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS type T_SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA = TSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA type T_SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA = TSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA type T_SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS = TSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS type T_STARTUPINFOA = TSTARTUPINFOA type T_STARTUPINFOEXA = TSTARTUPINFOEXA type T_STARTUPINFOEXW = TSTARTUPINFOEXW type T_STARTUPINFOW = TSTARTUPINFOW type T_STGMEDIUM_UNION = struct { Ftymed TDWORD Fu t__WIDL_objidl_generated_name_0000000D } type T_STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR = TSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR type T_STORAGE_ADAPTER_DESCRIPTOR = TSTORAGE_ADAPTER_DESCRIPTOR type T_STORAGE_ALLOCATE_BC_STREAM_INPUT = TSTORAGE_ALLOCATE_BC_STREAM_INPUT type T_STORAGE_ALLOCATE_BC_STREAM_OUTPUT = TSTORAGE_ALLOCATE_BC_STREAM_OUTPUT type T_STORAGE_BUS_RESET_REQUEST = TSTORAGE_BUS_RESET_REQUEST type T_STORAGE_CRYPTO_CAPABILITY = TSTORAGE_CRYPTO_CAPABILITY type T_STORAGE_CRYPTO_DESCRIPTOR = TSTORAGE_CRYPTO_DESCRIPTOR type T_STORAGE_DEPENDENCY_INFO = TSTORAGE_DEPENDENCY_INFO type T_STORAGE_DEPENDENCY_INFO_TYPE_1 = TSTORAGE_DEPENDENCY_INFO_TYPE_1 type T_STORAGE_DEPENDENCY_INFO_TYPE_2 = TSTORAGE_DEPENDENCY_INFO_TYPE_2 type T_STORAGE_DESCRIPTOR_HEADER = TSTORAGE_DESCRIPTOR_HEADER type T_STORAGE_DEVICE_DESCRIPTOR = TSTORAGE_DEVICE_DESCRIPTOR type T_STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR = TSTORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR type T_STORAGE_DEVICE_ID_DESCRIPTOR = TSTORAGE_DEVICE_ID_DESCRIPTOR type T_STORAGE_DEVICE_NUMBER = TSTORAGE_DEVICE_NUMBER type T_STORAGE_DEVICE_NUMBERS = TSTORAGE_DEVICE_NUMBERS type T_STORAGE_DEVICE_NUMBER_EX = TSTORAGE_DEVICE_NUMBER_EX type T_STORAGE_DEVICE_RESILIENCY_DESCRIPTOR = TSTORAGE_DEVICE_RESILIENCY_DESCRIPTOR type T_STORAGE_DEVICE_TIERING_DESCRIPTOR = TSTORAGE_DEVICE_TIERING_DESCRIPTOR type T_STORAGE_FAILURE_PREDICTION_CONFIG = TSTORAGE_FAILURE_PREDICTION_CONFIG type T_STORAGE_GET_BC_PROPERTIES_OUTPUT = TSTORAGE_GET_BC_PROPERTIES_OUTPUT type T_STORAGE_HOTPLUG_INFO = TSTORAGE_HOTPLUG_INFO type T_STORAGE_IDENTIFIER = TSTORAGE_IDENTIFIER type T_STORAGE_LB_PROVISIONING_MAP_RESOURCES = TSTORAGE_LB_PROVISIONING_MAP_RESOURCES type T_STORAGE_MEDIA_SERIAL_NUMBER_DATA = TSTORAGE_MEDIA_SERIAL_NUMBER_DATA type T_STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR = TSTORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR type T_STORAGE_MINIPORT_DESCRIPTOR = TSTORAGE_MINIPORT_DESCRIPTOR type T_STORAGE_PREDICT_FAILURE = TSTORAGE_PREDICT_FAILURE type T_STORAGE_PRIORITY_HINT_SUPPORT = TSTORAGE_PRIORITY_HINT_SUPPORT type T_STORAGE_PROPERTY_QUERY = TSTORAGE_PROPERTY_QUERY type T_STORAGE_PROPERTY_SET = TSTORAGE_PROPERTY_SET type T_STORAGE_PROTOCOL_DATA_DESCRIPTOR = TSTORAGE_PROTOCOL_DATA_DESCRIPTOR type T_STORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT = TSTORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT type T_STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE = TSTORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE type T_STORAGE_PROTOCOL_SPECIFIC_DATA = TSTORAGE_PROTOCOL_SPECIFIC_DATA type T_STORAGE_PROTOCOL_SPECIFIC_DATA_EXT = TSTORAGE_PROTOCOL_SPECIFIC_DATA_EXT type T_STORAGE_READ_CAPACITY = TSTORAGE_READ_CAPACITY type T_STORAGE_RPMB_DESCRIPTOR = TSTORAGE_RPMB_DESCRIPTOR type T_STORAGE_TIER = TSTORAGE_TIER type T_STORAGE_WRITE_CACHE_PROPERTY = TSTORAGE_WRITE_CACHE_PROPERTY type T_SUPPORTED_OS_INFO = TSUPPORTED_OS_INFO type T_SYSTEMTIME = TSYSTEMTIME type T_SYSTEM_ALARM_ACE = TSYSTEM_ALARM_ACE type T_SYSTEM_ALARM_CALLBACK_ACE = TSYSTEM_ALARM_CALLBACK_ACE type T_SYSTEM_ALARM_CALLBACK_OBJECT_ACE = TSYSTEM_ALARM_CALLBACK_OBJECT_ACE type T_SYSTEM_ALARM_OBJECT_ACE = TSYSTEM_ALARM_OBJECT_ACE type T_SYSTEM_AUDIT_ACE = TSYSTEM_AUDIT_ACE type T_SYSTEM_AUDIT_CALLBACK_ACE = TSYSTEM_AUDIT_CALLBACK_ACE type T_SYSTEM_AUDIT_CALLBACK_OBJECT_ACE = TSYSTEM_AUDIT_CALLBACK_OBJECT_ACE type T_SYSTEM_AUDIT_OBJECT_ACE = TSYSTEM_AUDIT_OBJECT_ACE type T_SYSTEM_INFO = TSYSTEM_INFO type T_SYSTEM_LOGICAL_PROCESSOR_INFORMATION = TSYSTEM_LOGICAL_PROCESSOR_INFORMATION type T_SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = struct { FRelationship TLOGICAL_PROCESSOR_RELATIONSHIP FSize TDWORD F__ccgo2_8 struct { FNumaNode [0]TNUMA_NODE_RELATIONSHIP FCache [0]TCACHE_RELATIONSHIP FGroup [0]TGROUP_RELATIONSHIP FProcessor TPROCESSOR_RELATIONSHIP F__ccgo_pad4 [32]byte } } type T_SYSTEM_MANDATORY_LABEL_ACE = TSYSTEM_MANDATORY_LABEL_ACE type T_SYSTEM_POWER_POLICY = TSYSTEM_POWER_POLICY type T_SYSTEM_POWER_STATUS = TSYSTEM_POWER_STATUS type T_SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = TSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION type T_SYSTEM_RESOURCE_ATTRIBUTE_ACE = TSYSTEM_RESOURCE_ATTRIBUTE_ACE type T_SYSTEM_SCOPED_POLICY_ID_ACE = TSYSTEM_SCOPED_POLICY_ID_ACE type T_SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION = TSYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION type T_TAKE_SNAPSHOT_VHDSET_PARAMETERS = TTAKE_SNAPSHOT_VHDSET_PARAMETERS type T_TAPE_CREATE_PARTITION = TTAPE_CREATE_PARTITION type T_TAPE_ERASE = TTAPE_ERASE type T_TAPE_GET_DRIVE_PARAMETERS = TTAPE_GET_DRIVE_PARAMETERS type T_TAPE_GET_MEDIA_PARAMETERS = TTAPE_GET_MEDIA_PARAMETERS type T_TAPE_GET_POSITION = TTAPE_GET_POSITION type T_TAPE_GET_STATISTICS = TTAPE_GET_STATISTICS type T_TAPE_PREPARE = TTAPE_PREPARE type T_TAPE_SET_DRIVE_PARAMETERS = TTAPE_SET_DRIVE_PARAMETERS type T_TAPE_SET_MEDIA_PARAMETERS = TTAPE_SET_MEDIA_PARAMETERS type T_TAPE_SET_POSITION = TTAPE_SET_POSITION type T_TAPE_STATISTICS = TTAPE_STATISTICS type T_TAPE_WMI_OPERATIONS = TTAPE_WMI_OPERATIONS type T_TAPE_WRITE_MARKS = TTAPE_WRITE_MARKS type T_TIME_DYNAMIC_ZONE_INFORMATION = TDYNAMIC_TIME_ZONE_INFORMATION type T_TIME_ZONE_INFORMATION = TTIME_ZONE_INFORMATION type T_TOKEN_ACCESS_INFORMATION = TTOKEN_ACCESS_INFORMATION type T_TOKEN_APPCONTAINER_INFORMATION = TTOKEN_APPCONTAINER_INFORMATION type T_TOKEN_AUDIT_POLICY = TTOKEN_AUDIT_POLICY type T_TOKEN_CONTROL = TTOKEN_CONTROL type T_TOKEN_DEFAULT_DACL = TTOKEN_DEFAULT_DACL type T_TOKEN_DEVICE_CLAIMS = TTOKEN_DEVICE_CLAIMS type T_TOKEN_ELEVATION = TTOKEN_ELEVATION type T_TOKEN_GROUPS = TTOKEN_GROUPS type T_TOKEN_GROUPS_AND_PRIVILEGES = TTOKEN_GROUPS_AND_PRIVILEGES type T_TOKEN_LINKED_TOKEN = TTOKEN_LINKED_TOKEN type T_TOKEN_MANDATORY_LABEL = TTOKEN_MANDATORY_LABEL type T_TOKEN_MANDATORY_POLICY = TTOKEN_MANDATORY_POLICY type T_TOKEN_ORIGIN = TTOKEN_ORIGIN type T_TOKEN_OWNER = TTOKEN_OWNER type T_TOKEN_PRIMARY_GROUP = TTOKEN_PRIMARY_GROUP type T_TOKEN_PRIVILEGES = TTOKEN_PRIVILEGES type T_TOKEN_SOURCE = TTOKEN_SOURCE type T_TOKEN_STATISTICS = TTOKEN_STATISTICS type T_TOKEN_USER = TTOKEN_USER type T_TOKEN_USER_CLAIMS = TTOKEN_USER_CLAIMS type T_TP_CALLBACK_ENVIRON_V3 = TTP_CALLBACK_ENVIRON_V3 type T_TP_POOL_STACK_INFORMATION = TTP_POOL_STACK_INFORMATION type T_TRANSACTIONMANAGER_BASIC_INFORMATION = TTRANSACTIONMANAGER_BASIC_INFORMATION type T_TRANSACTIONMANAGER_LOGPATH_INFORMATION = TTRANSACTIONMANAGER_LOGPATH_INFORMATION type T_TRANSACTIONMANAGER_LOG_INFORMATION = TTRANSACTIONMANAGER_LOG_INFORMATION type T_TRANSACTIONMANAGER_OLDEST_INFORMATION = TTRANSACTIONMANAGER_OLDEST_INFORMATION type T_TRANSACTIONMANAGER_RECOVERY_INFORMATION = TTRANSACTIONMANAGER_RECOVERY_INFORMATION type T_TRANSACTION_BASIC_INFORMATION = TTRANSACTION_BASIC_INFORMATION type T_TRANSACTION_BIND_INFORMATION = TTRANSACTION_BIND_INFORMATION type T_TRANSACTION_ENLISTMENTS_INFORMATION = TTRANSACTION_ENLISTMENTS_INFORMATION type T_TRANSACTION_ENLISTMENT_PAIR = TTRANSACTION_ENLISTMENT_PAIR type T_TRANSACTION_LIST_ENTRY = TTRANSACTION_LIST_ENTRY type T_TRANSACTION_LIST_INFORMATION = TTRANSACTION_LIST_INFORMATION type T_TRANSACTION_NOTIFICATION = TTRANSACTION_NOTIFICATION type T_TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = TTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT type T_TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = TTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT type T_TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = TTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT type T_TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = TTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT type T_TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = TTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT type T_TRANSACTION_PROPERTIES_INFORMATION = TTRANSACTION_PROPERTIES_INFORMATION type T_TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = TTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION type T_TRANSMIT_FILE_BUFFERS = TTRANSMIT_FILE_BUFFERS type T_TRIVERTEX = TTRIVERTEX type T_TXFS_CREATE_MINIVERSION_INFO = TTXFS_CREATE_MINIVERSION_INFO type T_TXFS_GET_METADATA_INFO_OUT = TTXFS_GET_METADATA_INFO_OUT type T_TXFS_GET_TRANSACTED_VERSION = TTXFS_GET_TRANSACTED_VERSION type T_TXFS_LIST_TRANSACTIONS = TTXFS_LIST_TRANSACTIONS type T_TXFS_LIST_TRANSACTIONS_ENTRY = TTXFS_LIST_TRANSACTIONS_ENTRY type T_TXFS_LIST_TRANSACTION_LOCKED_FILES = TTXFS_LIST_TRANSACTION_LOCKED_FILES type T_TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY = TTXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY type T_TXFS_MODIFY_RM = TTXFS_MODIFY_RM type T_TXFS_QUERY_RM_INFORMATION = TTXFS_QUERY_RM_INFORMATION type T_TXFS_READ_BACKUP_INFORMATION_OUT = TTXFS_READ_BACKUP_INFORMATION_OUT type T_TXFS_ROLLFORWARD_REDO_INFORMATION = TTXFS_ROLLFORWARD_REDO_INFORMATION type T_TXFS_SAVEPOINT_INFORMATION = TTXFS_SAVEPOINT_INFORMATION type T_TXFS_START_RM_INFORMATION = TTXFS_START_RM_INFORMATION type T_TXFS_TRANSACTION_ACTIVE_INFO = TTXFS_TRANSACTION_ACTIVE_INFO type T_TXFS_WRITE_BACKUP_INFORMATION = TTXFS_WRITE_BACKUP_INFORMATION type T_ULARGE_INTEGER = TULARGE_INTEGER type T_UMS_CREATE_THREAD_ATTRIBUTES = TUMS_CREATE_THREAD_ATTRIBUTES type T_UNIVERSAL_NAME_INFOA = TUNIVERSAL_NAME_INFOA type T_UNIVERSAL_NAME_INFOW = TUNIVERSAL_NAME_INFOW type T_UNLOAD_DLL_DEBUG_INFO = TUNLOAD_DLL_DEBUG_INFO type T_USER_MARSHAL_CB = TUSER_MARSHAL_CB type T_USER_MARSHAL_ROUTINE_QUADRUPLE = TUSER_MARSHAL_ROUTINE_QUADRUPLE type T_UUID_VECTOR = TUUID_VECTOR type T_VERIFY_INFORMATION = TVERIFY_INFORMATION type T_VIDEOPARAMETERS = TVIDEOPARAMETERS type T_VIRTUAL_DISK_PROGRESS = TVIRTUAL_DISK_PROGRESS type T_VIRTUAL_STORAGE_TYPE = TVIRTUAL_STORAGE_TYPE type T_VOLUME_DISK_EXTENTS = TVOLUME_DISK_EXTENTS type T_VOLUME_GET_GPT_ATTRIBUTES_INFORMATION = TVOLUME_GET_GPT_ATTRIBUTES_INFORMATION type T_WGLSWAP = TWGLSWAP type T_WIN32_FILE_ATTRIBUTE_DATA = TWIN32_FILE_ATTRIBUTE_DATA type T_WIN32_FIND_DATAA = TWIN32_FIND_DATAA type T_WIN32_FIND_DATAW = TWIN32_FIND_DATAW type T_WIN32_FIND_STREAM_DATA = TWIN32_FIND_STREAM_DATA type T_WIN32_MEMORY_RANGE_ENTRY = TWIN32_MEMORY_RANGE_ENTRY type T_WIN32_STREAM_ID = TWIN32_STREAM_ID type T_WINDOW_BUFFER_SIZE_RECORD = TWINDOW_BUFFER_SIZE_RECORD type T_WOF_EXTERNAL_INFO = TWOF_EXTERNAL_INFO type T_WORD_BLOB = TWORD_BLOB type T_WOW64_CONTEXT = TWOW64_CONTEXT type T_WOW64_DESCRIPTOR_TABLE_ENTRY = TWOW64_DESCRIPTOR_TABLE_ENTRY type T_WOW64_FLOATING_SAVE_AREA = TWOW64_FLOATING_SAVE_AREA type T_WOW64_LDT_ENTRY = TWOW64_LDT_ENTRY type T_XCPT_ACTION = struct { FXcptNum uint32 FSigNum int32 FXcptAction T_PHNDLR } type T_XMIT_ROUTINE_QUINTUPLE = TXMIT_ROUTINE_QUINTUPLE type T_XSAVE_AREA = TXSAVE_AREA type T_XSAVE_AREA_HEADER = TXSAVE_AREA_HEADER type T_XSAVE_FORMAT = TXSAVE_FORMAT type T_XSTATE_CONFIGURATION = TXSTATE_CONFIGURATION type T_XSTATE_CONTEXT = TXSTATE_CONTEXT type T_XSTATE_FEATURE = TXSTATE_FEATURE type T_ZONEATTRIBUTES = TZONEATTRIBUTES type T_beginthread_proc_type = uintptr type T_beginthreadex_proc_type = uintptr type T_cpinfo = TCPINFO type T_cpinfoexA = TCPINFOEXA type T_cpinfoexW = TCPINFOEXW type T_currencyfmtA = TCURRENCYFMTA type T_currencyfmtW = TCURRENCYFMTW type T_dev_t = uint32 type T_devicemodeA = TDEVMODEA type T_devicemodeW = TDEVMODEW type T_div_t = Tdiv_t type T_heapinfo = T_HEAPINFO type T_ino_t = uint16 type T_invalid_parameter_handler = uintptr type T_iobuf = struct { F_ptr uintptr F_cnt int32 F_base uintptr F_flag int32 F_file int32 F_charbuf int32 F_bufsiz int32 F_tmpfname uintptr } type T_ldiv_t = Tldiv_t type T_locale_t = uintptr type T_locale_tstruct = struct { Flocinfo Tpthreadlocinfo Fmbcinfo Tpthreadmbcinfo } type T_mode_t = uint16 type T_nlsversioninfo = TNLSVERSIONINFO type T_nlsversioninfoex = TNLSVERSIONINFOEX type T_numberfmtA = TNUMBERFMTA type T_numberfmtW = TNUMBERFMTW type T_off64_t = int64 type T_off_t = int32 type T_onexit_t = uintptr type T_onexit_table_t = struct { F_first uintptr F_last uintptr F_end uintptr } type T_purecall_handler = uintptr type T_remoteMETAFILEPICT = TremoteMETAFILEPICT type T_tagAUTHENTICATEINFO = TAUTHENTICATEINFO type T_tagBINDINFO = TBINDINFO type T_tagCODEBASEHOLD = TCODEBASEHOLD type T_tagDATAINFO = TDATAINFO type T_tagHIT_LOGGING_INFO = THIT_LOGGING_INFO type T_tagPROTOCOLDATA = TPROTOCOLDATA type T_tagPROTOCOLFILTERDATA = TPROTOCOLFILTERDATA type T_tagPROTOCOL_ARGUMENT = TPROTOCOL_ARGUMENT type T_tagRemBINDINFO = TRemBINDINFO type T_tagSOFTDISTINFO = TSOFTDISTINFO type T_tagStartParam = TStartParam type T_tagpropertykey = TPROPERTYKEY type T_timespec32 = struct { Ftv_sec t__time32_t Ftv_nsec int32 } type T_tls_callback_type = uintptr type T_userBITMAP = TuserBITMAP type T_userCLIPFORMAT = TuserCLIPFORMAT type T_userFLAG_STGMEDIUM = TuserFLAG_STGMEDIUM type T_userHBITMAP = TuserHBITMAP type T_userHENHMETAFILE = TuserHENHMETAFILE type T_userHGLOBAL = TuserHGLOBAL type T_userHMETAFILE = TuserHMETAFILE type T_userHMETAFILEPICT = TuserHMETAFILEPICT type T_userHPALETTE = TuserHPALETTE type T_userSTGMEDIUM = TuserSTGMEDIUM type T_wireBRECORD = struct { FfFlags TULONG FclSize TULONG FpRecInfo uintptr FpRecord uintptr } type T_wireSAFEARRAY = struct { FcDims TUSHORT FfFeatures TUSHORT FcbElements TULONG FcLocks TULONG FuArrayStructs TSAFEARRAYUNION Frgsabound [1]TSAFEARRAYBOUND } type T_wireSAFEARRAY_UNION = TSAFEARRAYUNION type T_wireSAFEARR_BRECORD = TSAFEARR_BRECORD type T_wireSAFEARR_BSTR = TSAFEARR_BSTR type T_wireSAFEARR_DISPATCH = TSAFEARR_DISPATCH type T_wireSAFEARR_HAVEIID = TSAFEARR_HAVEIID type T_wireSAFEARR_UNKNOWN = TSAFEARR_UNKNOWN type T_wireSAFEARR_VARIANT = TSAFEARR_VARIANT type T_xml_error = TXML_ERROR const TabbedTextOut = 0 const TapeClassGuid = 0 type Tboolean = uint8 type Tbyte = uint8 type Tcs_byte = uint8 type Tdev_t = uint32 type Terror_status_t = uint32 const TextOut = 0 type Tfd_set = struct { Ffd_count Tu_int Ffd_array [64]TSOCKET } type Thandle_t = uintptr type Thostent = struct { Fh_name uintptr Fh_aliases uintptr Fh_addrtype int16 Fh_length int16 Fh_addr_list uintptr } type Tin_addr = TIN_ADDR type Tino_t = uint16 type Tip_mreq = TIP_MREQ type Tjoyinfo_tag = TJOYINFO type Tjoyinfoex_tag = TJOYINFOEX type Tlinger = struct { Fl_onoff Tu_short Fl_linger Tu_short } type Tlocaleinfo_struct = T_locale_tstruct type Tmidievent_tag = TMIDIEVENT type Tmidihdr_tag = TMIDIHDR type Tmidiproptempo_tag = TMIDIPROPTEMPO type Tmidiproptimediv_tag = TMIDIPROPTIMEDIV type Tmidistrmbuffver_tag = TMIDISTRMBUFFVER type Tmmtime_tag = TMMTIME type Tnetent = struct { Fn_name uintptr Fn_aliases uintptr Fn_addrtype int16 Fn_net Tu_long } type Toff32_t = int32 type Tpcmwaveformat_tag = TPCMWAVEFORMAT type Tprotoent = struct { Fp_name uintptr Fp_aliases uintptr Fp_proto int16 } type Tprovider_info = TREG_PROVIDER type Tpthreadlocinfo = uintptr type Tpthreadmbcinfo = uintptr type TpvalueA = TPVALUEA type TpvalueW = TPVALUEW const TranslateAccelerator = 0 type TremoteMETAFILEPICT = struct { Fmm TLONG FxExt TLONG FyExt TLONG FhMF uintptr } type Tsockaddr = struct { Fsa_family Tu_short Fsa_data [14]int8 } type Tsockaddr_in = struct { Fsin_family int16 Fsin_port Tu_short Fsin_addr Tin_addr Fsin_zero [8]int8 } type Tsockproto = struct { Fsp_family Tu_short Fsp_protocol Tu_short } type TtMIXERCONTROLDETAILS = TMIXERCONTROLDETAILS type TtMIXERCONTROLDETAILS_BOOLEAN = TMIXERCONTROLDETAILS_BOOLEAN type TtMIXERCONTROLDETAILS_SIGNED = TMIXERCONTROLDETAILS_SIGNED type TtMIXERCONTROLDETAILS_UNSIGNED = TMIXERCONTROLDETAILS_UNSIGNED type TtWAVEFORMATEX = TWAVEFORMATEX type TtagABORTPATH = TEMRABORTPATH type TtagACCEL = TACCEL type TtagACCESSTIMEOUT = TACCESSTIMEOUT type TtagACTCTXA = TACTCTXA type TtagACTCTXW = TACTCTXW type TtagACTCTX_SECTION_KEYED_DATA = TACTCTX_SECTION_KEYED_DATA type TtagACTCTX_SECTION_KEYED_DATA_2600 = TACTCTX_SECTION_KEYED_DATA_2600 type TtagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = TACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA type TtagALTTABINFO = TALTTABINFO type TtagANIMATIONINFO = TANIMATIONINFO type TtagARRAYDESC = TARRAYDESC type TtagAUDIODESCRIPTION = TAUDIODESCRIPTION type TtagAUXCAPS2A = TAUXCAPS2A type TtagAUXCAPS2W = TAUXCAPS2W type TtagAUXCAPSA = TAUXCAPSA type TtagAUXCAPSW = TAUXCAPSW type TtagAXESLISTA = TAXESLISTA type TtagAXESLISTW = TAXESLISTW type TtagAXISINFOA = TAXISINFOA type TtagAXISINFOW = TAXISINFOW type TtagBINDPTR = TBINDPTR type TtagBIND_OPTS = TBIND_OPTS type TtagBIND_OPTS2 = TBIND_OPTS2 type TtagBIND_OPTS3 = TBIND_OPTS3 type TtagBITMAP = TBITMAP type TtagBITMAPCOREHEADER = TBITMAPCOREHEADER type TtagBITMAPCOREINFO = TBITMAPCOREINFO type TtagBITMAPFILEHEADER = TBITMAPFILEHEADER type TtagBITMAPINFO = TBITMAPINFO type TtagBITMAPINFOHEADER = TBITMAPINFOHEADER type TtagBLOB = TBLOB type TtagBSTRBLOB = TBSTRBLOB type TtagBinaryParam = TBinaryParam type TtagCABOOL = TCABOOL type TtagCABSTR = TCABSTR type TtagCABSTRBLOB = TCABSTRBLOB type TtagCAC = TCAC type TtagCACLIPDATA = TCACLIPDATA type TtagCACLSID = TCACLSID type TtagCACY = TCACY type TtagCADATE = TCADATE type TtagCADBL = TCADBL type TtagCAFILETIME = TCAFILETIME type TtagCAFLT = TCAFLT type TtagCAH = TCAH type TtagCAI = TCAI type TtagCAL = TCAL type TtagCALPSTR = TCALPSTR type TtagCALPWSTR = TCALPWSTR type TtagCANDIDATEFORM = TCANDIDATEFORM type TtagCANDIDATELIST = TCANDIDATELIST type TtagCAPROPVARIANT = TCAPROPVARIANT type TtagCASCODE = TCASCODE type TtagCAUB = TCAUB type TtagCAUH = TCAUH type TtagCAUI = TCAUI type TtagCAUL = TCAUL type TtagCBTACTIVATESTRUCT = TCBTACTIVATESTRUCT type TtagCBT_CREATEWNDA = TCBT_CREATEWNDA type TtagCBT_CREATEWNDW = TCBT_CREATEWNDW type TtagCHANGEFILTERSTRUCT = TCHANGEFILTERSTRUCT type TtagCHARSETINFO = TCHARSETINFO type TtagCHOOSECOLORA = TCHOOSECOLORA type TtagCHOOSECOLORW = TCHOOSECOLORW type TtagCHOOSEFONTA = TCHOOSEFONTA type TtagCHOOSEFONTW = TCHOOSEFONTW type TtagCIEXYZ = TCIEXYZ type TtagCLEANLOCALSTORAGE = TCLEANLOCALSTORAGE type TtagCLIENTCREATESTRUCT = TCLIENTCREATESTRUCT type TtagCLIPDATA = TCLIPDATA type TtagCOLORADJUSTMENT = TCOLORADJUSTMENT type TtagCOLORCORRECTPALETTE = TEMRCOLORCORRECTPALETTE type TtagCOLORMATCHTOTARGET = TEMRCOLORMATCHTOTARGET type TtagCOMBOBOXINFO = TCOMBOBOXINFO type TtagCOMPAREITEMSTRUCT = TCOMPAREITEMSTRUCT type TtagCOMPOSITIONFORM = TCOMPOSITIONFORM type TtagCONVCONTEXT = TCONVCONTEXT type TtagCONVINFO = TCONVINFO type TtagCOPYDATASTRUCT = TCOPYDATASTRUCT type TtagCREATESTRUCTA = TCREATESTRUCTA type TtagCREATESTRUCTW = TCREATESTRUCTW type TtagCRGB = TCRGB type TtagCSPLATFORM = TCSPLATFORM type TtagCURSORINFO = TCURSORINFO type TtagCURSORSHAPE = TCURSORSHAPE type TtagCUSTDATA = TCUSTDATA type TtagCUSTDATAITEM = TCUSTDATAITEM type TtagCWPRETSTRUCT = TCWPRETSTRUCT type TtagCWPSTRUCT = TCWPSTRUCT type TtagCY = TCY type TtagDDEML_MSG_HOOK_DATA = TDDEML_MSG_HOOK_DATA type TtagDEBUGHOOKINFO = TDEBUGHOOKINFO type TtagDEC = TDECIMAL type TtagDELETEITEMSTRUCT = TDELETEITEMSTRUCT type TtagDESIGNVECTOR = TDESIGNVECTOR type TtagDEVNAMES = TDEVNAMES type TtagDIBSECTION = TDIBSECTION type TtagDISPPARAMS = TDISPPARAMS type TtagDRAWITEMSTRUCT = TDRAWITEMSTRUCT type TtagDRAWTEXTPARAMS = TDRAWTEXTPARAMS type TtagDROPSTRUCT = TDROPSTRUCT type TtagDRVCONFIGINFO = TDRVCONFIGINFO type TtagDVTARGETDEVICE = TDVTARGETDEVICE type TtagELEMDESC = TELEMDESC type TtagEMR = TEMR type TtagEMRALPHABLEND = TEMRALPHABLEND type TtagEMRANGLEARC = TEMRANGLEARC type TtagEMRARC = TEMRARC type TtagEMRBITBLT = TEMRBITBLT type TtagEMRCREATEBRUSHINDIRECT = TEMRCREATEBRUSHINDIRECT type TtagEMRCREATECOLORSPACE = TEMRCREATECOLORSPACE type TtagEMRCREATECOLORSPACEW = TEMRCREATECOLORSPACEW type TtagEMRCREATEDIBPATTERNBRUSHPT = TEMRCREATEDIBPATTERNBRUSHPT type TtagEMRCREATEMONOBRUSH = TEMRCREATEMONOBRUSH type TtagEMRCREATEPALETTE = TEMRCREATEPALETTE type TtagEMRCREATEPEN = TEMRCREATEPEN type TtagEMRELLIPSE = TEMRELLIPSE type TtagEMREOF = TEMREOF type TtagEMREXCLUDECLIPRECT = TEMREXCLUDECLIPRECT type TtagEMREXTCREATEFONTINDIRECTW = TEMREXTCREATEFONTINDIRECTW type TtagEMREXTCREATEPEN = TEMREXTCREATEPEN type TtagEMREXTESCAPE = TEMREXTESCAPE type TtagEMREXTFLOODFILL = TEMREXTFLOODFILL type TtagEMREXTSELECTCLIPRGN = TEMREXTSELECTCLIPRGN type TtagEMREXTTEXTOUTA = TEMREXTTEXTOUTA type TtagEMRFILLPATH = TEMRFILLPATH type TtagEMRFILLRGN = TEMRFILLRGN type TtagEMRFORMAT = TEMRFORMAT type TtagEMRFRAMERGN = TEMRFRAMERGN type TtagEMRGDICOMMENT = TEMRGDICOMMENT type TtagEMRGLSBOUNDEDRECORD = TEMRGLSBOUNDEDRECORD type TtagEMRGLSRECORD = TEMRGLSRECORD type TtagEMRGRADIENTFILL = TEMRGRADIENTFILL type TtagEMRINVERTRGN = TEMRINVERTRGN type TtagEMRLINETO = TEMRLINETO type TtagEMRMASKBLT = TEMRMASKBLT type TtagEMRMODIFYWORLDTRANSFORM = TEMRMODIFYWORLDTRANSFORM type TtagEMRNAMEDESCAPE = TEMRNAMEDESCAPE type TtagEMROFFSETCLIPRGN = TEMROFFSETCLIPRGN type TtagEMRPIXELFORMAT = TEMRPIXELFORMAT type TtagEMRPLGBLT = TEMRPLGBLT type TtagEMRPOLYDRAW = TEMRPOLYDRAW type TtagEMRPOLYDRAW16 = TEMRPOLYDRAW16 type TtagEMRPOLYLINE = TEMRPOLYLINE type TtagEMRPOLYLINE16 = TEMRPOLYLINE16 type TtagEMRPOLYPOLYLINE = TEMRPOLYPOLYLINE type TtagEMRPOLYPOLYLINE16 = TEMRPOLYPOLYLINE16 type TtagEMRPOLYTEXTOUTA = TEMRPOLYTEXTOUTA type TtagEMRRESIZEPALETTE = TEMRRESIZEPALETTE type TtagEMRRESTOREDC = TEMRRESTOREDC type TtagEMRROUNDRECT = TEMRROUNDRECT type TtagEMRSCALEVIEWPORTEXTEX = TEMRSCALEVIEWPORTEXTEX type TtagEMRSELECTCLIPPATH = TEMRSELECTCLIPPATH type TtagEMRSELECTOBJECT = TEMRSELECTOBJECT type TtagEMRSELECTPALETTE = TEMRSELECTPALETTE type TtagEMRSETARCDIRECTION = TEMRSETARCDIRECTION type TtagEMRSETCOLORADJUSTMENT = TEMRSETCOLORADJUSTMENT type TtagEMRSETCOLORSPACE = TEMRSETCOLORSPACE type TtagEMRSETDIBITSTODEVICE = TEMRSETDIBITSTODEVICE type TtagEMRSETICMPROFILE = TEMRSETICMPROFILE type TtagEMRSETMAPPERFLAGS = TEMRSETMAPPERFLAGS type TtagEMRSETMITERLIMIT = TEMRSETMITERLIMIT type TtagEMRSETPALETTEENTRIES = TEMRSETPALETTEENTRIES type TtagEMRSETPIXELV = TEMRSETPIXELV type TtagEMRSETTEXTCOLOR = TEMRSETBKCOLOR type TtagEMRSETVIEWPORTEXTEX = TEMRSETVIEWPORTEXTEX type TtagEMRSETVIEWPORTORGEX = TEMRSETVIEWPORTORGEX type TtagEMRSETWORLDTRANSFORM = TEMRSETWORLDTRANSFORM type TtagEMRSTRETCHBLT = TEMRSTRETCHBLT type TtagEMRSTRETCHDIBITS = TEMRSTRETCHDIBITS type TtagEMRTEXT = TEMRTEXT type TtagEMRTRANSPARENTBLT = TEMRTRANSPARENTBLT type TtagENHMETAHEADER = TENHMETAHEADER type TtagENHMETARECORD = TENHMETARECORD type TtagENUMLOGFONTA = TENUMLOGFONTA type TtagENUMLOGFONTEXA = TENUMLOGFONTEXA type TtagENUMLOGFONTEXDVA = TENUMLOGFONTEXDVA type TtagENUMLOGFONTEXDVW = TENUMLOGFONTEXDVW type TtagENUMLOGFONTEXW = TENUMLOGFONTEXW type TtagENUMLOGFONTW = TENUMLOGFONTW type TtagENUMTEXTMETRICA = TENUMTEXTMETRICA type TtagENUMTEXTMETRICW = TENUMTEXTMETRICW type TtagENUMUILANG = TENUMUILANG type TtagEVENTMSG = TEVENTMSG type TtagEXCEPINFO = TEXCEPINFO type TtagEXTLOGFONTA = TEXTLOGFONTA type TtagEXTLOGFONTW = TEXTLOGFONTW type TtagEXTLOGPEN = TEXTLOGPEN type TtagEXTLOGPEN32 = TEXTLOGPEN32 type TtagFILTERKEYS = TFILTERKEYS type TtagFINDREPLACEA = TFINDREPLACEA type TtagFINDREPLACEW = TFINDREPLACEW type TtagFONTSIGNATURE = TFONTSIGNATURE type TtagFORMATETC = TFORMATETC type TtagFUNCDESC = TFUNCDESC type TtagGCP_RESULTSA = TGCP_RESULTSA type TtagGCP_RESULTSW = TGCP_RESULTSW type TtagGESTURECONFIG = TGESTURECONFIG type TtagGESTUREINFO = TGESTUREINFO type TtagGESTURENOTIFYSTRUCT = TGESTURENOTIFYSTRUCT type TtagGLYPHSET = TGLYPHSET type TtagGUITHREADINFO = TGUITHREADINFO type TtagHANDLETABLE = THANDLETABLE type TtagHARDWAREHOOKSTRUCT = THARDWAREHOOKSTRUCT type TtagHARDWAREINPUT = THARDWAREINPUT type TtagHELPINFO = THELPINFO type TtagHELPWININFOA = THELPWININFOA type TtagHELPWININFOW = THELPWININFOW type TtagHIGHCONTRASTA = THIGHCONTRASTA type TtagHIGHCONTRASTW = THIGHCONTRASTW type TtagHSZPAIR = THSZPAIR type TtagHW_PROFILE_INFOA = THW_PROFILE_INFOA type TtagHW_PROFILE_INFOW = THW_PROFILE_INFOW type TtagICEXYZTRIPLE = TCIEXYZTRIPLE type TtagICONMETRICSA = TICONMETRICSA type TtagICONMETRICSW = TICONMETRICSW type TtagIDLDESC = TIDLDESC type TtagIMECHARPOSITION = TIMECHARPOSITION type TtagIMEMENUITEMINFOA = TIMEMENUITEMINFOA type TtagIMEMENUITEMINFOW = TIMEMENUITEMINFOW type TtagINPUT = TINPUT type TtagINPUT_INJECTION_VALUE = TINPUT_INJECTION_VALUE type TtagINPUT_MESSAGE_SOURCE = TINPUT_MESSAGE_SOURCE type TtagINPUT_TRANSFORM = TINPUT_TRANSFORM type TtagINTERFACEDATA = TINTERFACEDATA type TtagINTERFACEINFO = TINTERFACEINFO type TtagI_RpcProxyCallbackInterface = TI_RpcProxyCallbackInterface type TtagJOYCAPS2A = TJOYCAPS2A type TtagJOYCAPS2W = TJOYCAPS2W type TtagJOYCAPSA = TJOYCAPSA type TtagJOYCAPSW = TJOYCAPSW type TtagKBDLLHOOKSTRUCT = TKBDLLHOOKSTRUCT type TtagKERNINGPAIR = TKERNINGPAIR type TtagKEYBDINPUT = TKEYBDINPUT type TtagLASTINPUTINFO = TLASTINPUTINFO type TtagLAYERPLANEDESCRIPTOR = TLAYERPLANEDESCRIPTOR type TtagLC_ID = TLC_ID type TtagLOCALESIGNATURE = TLOCALESIGNATURE type TtagLOGBRUSH = TLOGBRUSH type TtagLOGBRUSH32 = TLOGBRUSH32 type TtagLOGCOLORSPACEA = TLOGCOLORSPACEA type TtagLOGCOLORSPACEW = TLOGCOLORSPACEW type TtagLOGFONTA = TLOGFONTA type TtagLOGFONTW = TLOGFONTW type TtagLOGPALETTE = TLOGPALETTE type TtagLOGPEN = TLOGPEN type TtagMCI_ANIM_OPEN_PARMSA = TMCI_ANIM_OPEN_PARMSA type TtagMCI_ANIM_OPEN_PARMSW = TMCI_ANIM_OPEN_PARMSW type TtagMCI_ANIM_PLAY_PARMS = TMCI_ANIM_PLAY_PARMS type TtagMCI_ANIM_RECT_PARMS = TMCI_ANIM_RECT_PARMS type TtagMCI_ANIM_STEP_PARMS = TMCI_ANIM_STEP_PARMS type TtagMCI_ANIM_UPDATE_PARMS = TMCI_ANIM_UPDATE_PARMS type TtagMCI_ANIM_WINDOW_PARMSA = TMCI_ANIM_WINDOW_PARMSA type TtagMCI_ANIM_WINDOW_PARMSW = TMCI_ANIM_WINDOW_PARMSW type TtagMCI_BREAK_PARMS = TMCI_BREAK_PARMS type TtagMCI_GENERIC_PARMS = TMCI_GENERIC_PARMS type TtagMCI_GETDEVCAPS_PARMS = TMCI_GETDEVCAPS_PARMS type TtagMCI_INFO_PARMSA = TMCI_INFO_PARMSA type TtagMCI_INFO_PARMSW = TMCI_INFO_PARMSW type TtagMCI_LOAD_PARMSA = TMCI_LOAD_PARMSA type TtagMCI_LOAD_PARMSW = TMCI_LOAD_PARMSW type TtagMCI_OPEN_PARMSA = TMCI_OPEN_PARMSA type TtagMCI_OPEN_PARMSW = TMCI_OPEN_PARMSW type TtagMCI_OVLY_LOAD_PARMSA = TMCI_OVLY_LOAD_PARMSA type TtagMCI_OVLY_LOAD_PARMSW = TMCI_OVLY_LOAD_PARMSW type TtagMCI_OVLY_OPEN_PARMSA = TMCI_OVLY_OPEN_PARMSA type TtagMCI_OVLY_OPEN_PARMSW = TMCI_OVLY_OPEN_PARMSW type TtagMCI_OVLY_RECT_PARMS = TMCI_OVLY_RECT_PARMS type TtagMCI_OVLY_SAVE_PARMSA = TMCI_OVLY_SAVE_PARMSA type TtagMCI_OVLY_SAVE_PARMSW = TMCI_OVLY_SAVE_PARMSW type TtagMCI_OVLY_WINDOW_PARMSA = TMCI_OVLY_WINDOW_PARMSA type TtagMCI_OVLY_WINDOW_PARMSW = TMCI_OVLY_WINDOW_PARMSW type TtagMCI_PLAY_PARMS = TMCI_PLAY_PARMS type TtagMCI_RECORD_PARMS = TMCI_RECORD_PARMS type TtagMCI_SAVE_PARMSA = TMCI_SAVE_PARMSA type TtagMCI_SAVE_PARMSW = TMCI_SAVE_PARMSW type TtagMCI_SEEK_PARMS = TMCI_SEEK_PARMS type TtagMCI_SEQ_SET_PARMS = TMCI_SEQ_SET_PARMS type TtagMCI_SET_PARMS = TMCI_SET_PARMS type TtagMCI_STATUS_PARMS = TMCI_STATUS_PARMS type TtagMCI_SYSINFO_PARMSA = TMCI_SYSINFO_PARMSA type TtagMCI_SYSINFO_PARMSW = TMCI_SYSINFO_PARMSW type TtagMCI_VD_ESCAPE_PARMSA = TMCI_VD_ESCAPE_PARMSA type TtagMCI_VD_ESCAPE_PARMSW = TMCI_VD_ESCAPE_PARMSW type TtagMCI_VD_PLAY_PARMS = TMCI_VD_PLAY_PARMS type TtagMCI_VD_STEP_PARMS = TMCI_VD_STEP_PARMS type TtagMCI_WAVE_DELETE_PARMS = TMCI_WAVE_DELETE_PARMS type TtagMCI_WAVE_OPEN_PARMSA = TMCI_WAVE_OPEN_PARMSA type TtagMCI_WAVE_OPEN_PARMSW = TMCI_WAVE_OPEN_PARMSW type TtagMCI_WAVE_SET_PARMS = TMCI_WAVE_SET_PARMS type TtagMDICREATESTRUCTA = TMDICREATESTRUCTA type TtagMDICREATESTRUCTW = TMDICREATESTRUCTW type TtagMDINEXTMENU = TMDINEXTMENU type TtagMEASUREITEMSTRUCT = TMEASUREITEMSTRUCT type TtagMENUBARINFO = TMENUBARINFO type TtagMENUGETOBJECTINFO = TMENUGETOBJECTINFO type TtagMENUINFO = TMENUINFO type TtagMENUITEMINFOA = TMENUITEMINFOA type TtagMENUITEMINFOW = TMENUITEMINFOW type TtagMETAFILEPICT = TMETAFILEPICT type TtagMETAHEADER = TMETAHEADER type TtagMETARECORD = TMETARECORD type TtagMETHODDATA = TMETHODDATA type TtagMIDIINCAPS2A = TMIDIINCAPS2A type TtagMIDIINCAPS2W = TMIDIINCAPS2W type TtagMIDIINCAPSA = TMIDIINCAPSA type TtagMIDIINCAPSW = TMIDIINCAPSW type TtagMIDIOUTCAPS2A = TMIDIOUTCAPS2A type TtagMIDIOUTCAPS2W = TMIDIOUTCAPS2W type TtagMIDIOUTCAPSA = TMIDIOUTCAPSA type TtagMIDIOUTCAPSW = TMIDIOUTCAPSW type TtagMINIMIZEDMETRICS = TMINIMIZEDMETRICS type TtagMINMAXINFO = TMINMAXINFO type TtagMIXERCAPS2A = TMIXERCAPS2A type TtagMIXERCAPS2W = TMIXERCAPS2W type TtagMIXERCAPSA = TMIXERCAPSA type TtagMIXERCAPSW = TMIXERCAPSW type TtagMIXERCONTROLA = TMIXERCONTROLA type TtagMIXERCONTROLDETAILS_LISTTEXTA = TMIXERCONTROLDETAILS_LISTTEXTA type TtagMIXERCONTROLDETAILS_LISTTEXTW = TMIXERCONTROLDETAILS_LISTTEXTW type TtagMIXERCONTROLW = TMIXERCONTROLW type TtagMIXERLINEA = TMIXERLINEA type TtagMIXERLINECONTROLSA = TMIXERLINECONTROLSA type TtagMIXERLINECONTROLSW = TMIXERLINECONTROLSW type TtagMIXERLINEW = TMIXERLINEW type TtagMONCBSTRUCT = TMONCBSTRUCT type TtagMONCONVSTRUCT = TMONCONVSTRUCT type TtagMONERRSTRUCT = TMONERRSTRUCT type TtagMONHSZSTRUCTA = TMONHSZSTRUCTA type TtagMONHSZSTRUCTW = TMONHSZSTRUCTW type TtagMONITORINFO = TMONITORINFO type TtagMONITORINFOEXA = TMONITORINFOEXA type TtagMONITORINFOEXW = TMONITORINFOEXW type TtagMONLINKSTRUCT = TMONLINKSTRUCT type TtagMONMSGSTRUCT = TMONMSGSTRUCT type TtagMOUSEHOOKSTRUCT = TMOUSEHOOKSTRUCT type TtagMOUSEHOOKSTRUCTEX = TMOUSEHOOKSTRUCTEX type TtagMOUSEINPUT = TMOUSEINPUT type TtagMOUSEKEYS = TMOUSEKEYS type TtagMOUSEMOVEPOINT = TMOUSEMOVEPOINT type TtagMSG = TMSG type TtagMSGBOXPARAMSA = TMSGBOXPARAMSA type TtagMSGBOXPARAMSW = TMSGBOXPARAMSW type TtagMSLLHOOKSTRUCT = TMSLLHOOKSTRUCT type TtagMULTIKEYHELPA = TMULTIKEYHELPA type TtagMULTIKEYHELPW = TMULTIKEYHELPW type TtagMULTI_QI = TMULTI_QI type TtagNCCALCSIZE_PARAMS = TNCCALCSIZE_PARAMS type TtagNC_ADDRESS = TNC_ADDRESS type TtagNEWTEXTMETRICA = TNEWTEXTMETRICA type TtagNEWTEXTMETRICEXA = TNEWTEXTMETRICEXA type TtagNEWTEXTMETRICEXW = TNEWTEXTMETRICEXW type TtagNEWTEXTMETRICW = TNEWTEXTMETRICW type TtagNMHDR = TNMHDR type TtagNONCLIENTMETRICSA = TNONCLIENTMETRICSA type TtagNONCLIENTMETRICSW = TNONCLIENTMETRICSW type TtagOBJECTDESCRIPTOR = TOBJECTDESCRIPTOR type TtagOFNA = TOPENFILENAMEA type TtagOFNW = TOPENFILENAMEW type TtagOFN_NT4A = TOPENFILENAME_NT4A type TtagOFN_NT4W = TOPENFILENAME_NT4W type TtagOIFI = TOLEINPLACEFRAMEINFO type TtagOLEVERB = TOLEVERB type TtagOleMenuGroupWidths = TOLEMENUGROUPWIDTHS type TtagPAINTSTRUCT = TPAINTSTRUCT type TtagPALETTEENTRY = TPALETTEENTRY type TtagPANOSE = TPANOSE type TtagPARAMDATA = TPARAMDATA type TtagPARAMDESC = TPARAMDESC type TtagPARAMDESCEX = TPARAMDESCEX type TtagPDA = TPRINTDLGA type TtagPDEXA = TPRINTDLGEXA type TtagPDEXW = TPRINTDLGEXW type TtagPDW = TPRINTDLGW type TtagPELARRAY = TPELARRAY type TtagPIXELFORMATDESCRIPTOR = TPIXELFORMATDESCRIPTOR type TtagPOINT = TPOINT type TtagPOINTER_DEVICE_CURSOR_INFO = TPOINTER_DEVICE_CURSOR_INFO type TtagPOINTER_DEVICE_INFO = TPOINTER_DEVICE_INFO type TtagPOINTER_DEVICE_PROPERTY = TPOINTER_DEVICE_PROPERTY type TtagPOINTER_INFO = TPOINTER_INFO type TtagPOINTER_PEN_INFO = TPOINTER_PEN_INFO type TtagPOINTER_TOUCH_INFO = TPOINTER_TOUCH_INFO type TtagPOINTER_TYPE_INFO = TPOINTER_TYPE_INFO type TtagPOINTFX = TPOINTFX type TtagPOINTS = TPOINTS type TtagPOLYTEXTA = TPOLYTEXTA type TtagPOLYTEXTW = TPOLYTEXTW type TtagPRINTPAGERANGE = TPRINTPAGERANGE type TtagPROPSPEC = TPROPSPEC type TtagPROPVARIANT = TPROPVARIANT type TtagPSDA = TPAGESETUPDLGA type TtagPSDW = TPAGESETUPDLGW type TtagQUERYCONTEXT = TQUERYCONTEXT type TtagRAWHID = TRAWHID type TtagRAWINPUT = TRAWINPUT type TtagRAWINPUTDEVICE = TRAWINPUTDEVICE type TtagRAWINPUTDEVICELIST = TRAWINPUTDEVICELIST type TtagRAWINPUTHEADER = TRAWINPUTHEADER type TtagRAWKEYBOARD = TRAWKEYBOARD type TtagRAWMOUSE = TRAWMOUSE type TtagRECONVERTSTRING = TRECONVERTSTRING type TtagRECT = TRECT type TtagREGISTERWORDA = TREGISTERWORDA type TtagREGISTERWORDW = TREGISTERWORDW type TtagRGBQUAD = TRGBQUAD type TtagRGBTRIPLE = TRGBTRIPLE type TtagRID_DEVICE_INFO = TRID_DEVICE_INFO type TtagRID_DEVICE_INFO_HID = TRID_DEVICE_INFO_HID type TtagRID_DEVICE_INFO_KEYBOARD = TRID_DEVICE_INFO_KEYBOARD type TtagRID_DEVICE_INFO_MOUSE = TRID_DEVICE_INFO_MOUSE type TtagRPCOLEMESSAGE = TRPCOLEMESSAGE type TtagRPC_CALL_ATTRIBUTES_V1_A = TRPC_CALL_ATTRIBUTES_V1_A type TtagRPC_CALL_ATTRIBUTES_V1_W = TRPC_CALL_ATTRIBUTES_V1_W type TtagRPC_CALL_ATTRIBUTES_V2A = TRPC_CALL_ATTRIBUTES_V2_A type TtagRPC_CALL_ATTRIBUTES_V2W = TRPC_CALL_ATTRIBUTES_V2_W type TtagRPC_CALL_LOCAL_ADDRESS_V1_A = TRPC_CALL_LOCAL_ADDRESS_V1_A type TtagRPC_CALL_LOCAL_ADDRESS_V1_W = TRPC_CALL_LOCAL_ADDRESS_V1_W type TtagRPC_EE_INFO_PARAM = TRPC_EE_INFO_PARAM type TtagRPC_ERROR_ENUM_HANDLE = TRPC_ERROR_ENUM_HANDLE type TtagRPC_EXTENDED_ERROR_INFO = TRPC_EXTENDED_ERROR_INFO type TtagRemBRUSH = TRemHBRUSH type TtagRemFORMATETC = TRemFORMATETC type TtagRemHBITMAP = TRemHBITMAP type TtagRemHENHMETAFILE = TRemHENHMETAFILE type TtagRemHGLOBAL = TRemHGLOBAL type TtagRemHMETAFILEPICT = TRemHMETAFILEPICT type TtagRemHPALETTE = TRemHPALETTE type TtagRemSNB = TRemSNB type TtagRemSTGMEDIUM = TRemSTGMEDIUM type TtagSAFEARRAY = TSAFEARRAY type TtagSAFEARRAYBOUND = TSAFEARRAYBOUND type TtagSCROLLBARINFO = TSCROLLBARINFO type TtagSCROLLINFO = TSCROLLINFO type TtagSERIALIZEDPROPERTYVALUE = TSERIALIZEDPROPERTYVALUE type TtagSERIALKEYSA = TSERIALKEYSA type TtagSERIALKEYSW = TSERIALKEYSW type TtagSIZE = TSIZE type TtagSOLE_AUTHENTICATION_INFO = TSOLE_AUTHENTICATION_INFO type TtagSOLE_AUTHENTICATION_LIST = TSOLE_AUTHENTICATION_LIST type TtagSOLE_AUTHENTICATION_SERVICE = TSOLE_AUTHENTICATION_SERVICE type TtagSOUNDSENTRYA = TSOUNDSENTRYA type TtagSOUNDSENTRYW = TSOUNDSENTRYW type TtagSTATDATA = TSTATDATA type TtagSTATPROPSETSTG = TSTATPROPSETSTG type TtagSTATPROPSTG = TSTATPROPSTG type TtagSTATSTG = TSTATSTG type TtagSTGMEDIUM = TuSTGMEDIUM type TtagSTGOPTIONS = TSTGOPTIONS type TtagSTICKYKEYS = TSTICKYKEYS type TtagSTYLEBUFA = TSTYLEBUFA type TtagSTYLEBUFW = TSTYLEBUFW type TtagSTYLESTRUCT = TSTYLESTRUCT type TtagServerInformation = TServerInformation type TtagStorageLayout = TStorageLayout type TtagTEXTMETRICA = TTEXTMETRICA type TtagTEXTMETRICW = TTEXTMETRICW type TtagTITLEBARINFO = TTITLEBARINFO type TtagTITLEBARINFOEX = TTITLEBARINFOEX type TtagTLIBATTR = TTLIBATTR type TtagTOGGLEKEYS = TTOGGLEKEYS type TtagTOUCHINPUT = TTOUCHINPUT type TtagTOUCH_HIT_TESTING_INPUT = TTOUCH_HIT_TESTING_INPUT type TtagTOUCH_HIT_TESTING_PROXIMITY_EVALUATION = TTOUCH_HIT_TESTING_PROXIMITY_EVALUATION type TtagTPMPARAMS = TTPMPARAMS type TtagTRACKMOUSEEVENT = TTRACKMOUSEEVENT type TtagTTPOLYCURVE = TTTPOLYCURVE type TtagTTPOLYGONHEADER = TTTPOLYGONHEADER type TtagTYPEATTR = TTYPEATTR type TtagTYPEDESC = TTYPEDESC type TtagTouchPredictionParameters = TTOUCHPREDICTIONPARAMETERS type TtagUPDATELAYEREDWINDOWINFO = TUPDATELAYEREDWINDOWINFO type TtagUSAGE_PROPERTIES = TUSAGE_PROPERTIES type TtagUSEROBJECTFLAGS = TUSEROBJECTFLAGS type TtagVARDESC = TVARDESC type TtagVARIANT = TVARIANT type TtagVS_FIXEDFILEINFO = TVS_FIXEDFILEINFO type TtagVersionedStream = TVERSIONEDSTREAM type TtagWAVEINCAPS2A = TWAVEINCAPS2A type TtagWAVEINCAPS2W = TWAVEINCAPS2W type TtagWAVEINCAPSA = TWAVEINCAPSA type TtagWAVEINCAPSW = TWAVEINCAPSW type TtagWAVEOUTCAPS2A = TWAVEOUTCAPS2A type TtagWAVEOUTCAPS2W = TWAVEOUTCAPS2W type TtagWAVEOUTCAPSA = TWAVEOUTCAPSA type TtagWAVEOUTCAPSW = TWAVEOUTCAPSW type TtagWCRANGE = TWCRANGE type TtagWINDOWINFO = TWINDOWINFO type TtagWINDOWPLACEMENT = TWINDOWPLACEMENT type TtagWINDOWPOS = TWINDOWPOS type TtagWNDCLASSA = TWNDCLASSA type TtagWNDCLASSEXA = TWNDCLASSEXA type TtagWNDCLASSEXW = TWNDCLASSEXW type TtagWNDCLASSW = TWNDCLASSW type TtagWTSSESSION_NOTIFICATION = TWTSSESSION_NOTIFICATION type TtagXFORM = TXFORM type Tthreadlocaleinfostruct = struct { Frefcount int32 Flc_codepage uint32 Flc_collate_cp uint32 Flc_handle [6]uint32 Flc_id [6]TLC_ID Flc_category [6]struct { Flocale uintptr Fwlocale uintptr Frefcount uintptr Fwrefcount uintptr } Flc_clike int32 Fmb_cur_max int32 Flconv_intl_refcount uintptr Flconv_num_refcount uintptr Flconv_mon_refcount uintptr Flconv uintptr Fctype1_refcount uintptr Fctype1 uintptr Fpctype uintptr Fpclmap uintptr Fpcumap uintptr Flc_time_curr uintptr } type Tthreadlocinfo = struct { Frefcount int32 Flc_codepage uint32 Flc_collate_cp uint32 Flc_handle [6]uint32 Flc_id [6]TLC_ID Flc_category [6]struct { Flocale uintptr Fwlocale uintptr Frefcount uintptr Fwrefcount uintptr } Flc_clike int32 Fmb_cur_max int32 Flconv_intl_refcount uintptr Flconv_num_refcount uintptr Flconv_mon_refcount uintptr Flconv uintptr Fctype1_refcount uintptr Fctype1 uintptr Fpctype uintptr Fpclmap uintptr Fpcumap uintptr Flc_time_curr uintptr } type Ttimeb = struct { Ftime Ttime_t Fmillitm uint16 Ftimezone int16 Fdstflag int16 } type Ttimecaps_tag = TTIMECAPS type Ttimeval = struct { Ftv_sec int32 Ftv_usec int32 } type Ttm = struct { Ftm_sec int32 Ftm_min int32 Ftm_hour int32 Ftm_mday int32 Ftm_mon int32 Ftm_year int32 Ftm_wday int32 Ftm_yday int32 Ftm_isdst int32 } type TuCLSSPEC = struct { Ftyspec TDWORD Ftagged_union t__WIDL_wtypes_generated_name_0000000A } type Tu_int64 = uint64 type TuserBITMAP = struct { FbmType TLONG FbmWidth TLONG FbmHeight TLONG FbmWidthBytes TLONG FbmPlanes TWORD FbmBitsPixel TWORD FcbSize TULONG FpBuffer [1]Tbyte } type TuserCLIPFORMAT = struct { FfContext TLONG Fu t__WIDL_wtypes_generated_name_00000001 } type TuserFLAG_STGMEDIUM = struct { FContextFlags TLONG FfPassOwnership TLONG FStgmed TuserSTGMEDIUM } type TuserSTGMEDIUM = struct { F__ccgo0_0 T_STGMEDIUM_UNION FpUnkForRelease uintptr } type Tval_context = struct { Fvaluelen int32 Fvalue_context TLPVOID Fval_buff_ptr TLPVOID } type Tvalue_entA = TVALENTA type Tvalue_entW = TVALENTW type Twaveformat_tag = TWAVEFORMAT type Twavehdr_tag = TWAVEHDR type Twchar_t = uint16 type Twctype_t = uint16 // C documentation // // /* Forward references to structures used for WAL */ type TwinShm = struct { FpShmNode uintptr FsharedMask Tu16 FexclMask Tu16 FhShm THANDLE FbReadonly int32 FpWinShmNext uintptr } /* A connection to shared-memory */ type TwinShmNode = struct { Fmutex uintptr FzFilename uintptr FhSharedShm THANDLE FbUseSharedLockHandle int32 FisUnlocked int32 FisReadonly int32 FszRegion int32 FnRegion int32 FaRegion uintptr FlastErrno TDWORD FpWinShmList uintptr FpNext uintptr } // C documentation // // /* // ** The winVfsAppData structure is used for the pAppData member for all of the // ** Win32 VFS variants. // */ type TwinVfsAppData = struct { FpMethod uintptr FpAppData uintptr FbNoLock TBOOL } // C documentation // // /* // ** Many system calls are accessed through pointer-to-functions so that // ** they may be overridden at runtime to facilitate fault injection during // ** testing and sandboxing. The following array holds the names and pointers // ** to all overrideable system calls. // */ type Twin_syscall = struct { FzName uintptr FpCurrent Tsqlite3_syscall_ptr FpDefault Tsqlite3_syscall_ptr } type Twint_t = uint16 type TwireASYNC_STGMEDIUM = uintptr type TwireBRECORD = uintptr type TwireBSTR = uintptr type TwireCLIPFORMAT = uintptr type TwireFLAG_STGMEDIUM = uintptr type TwireHACCEL = uintptr type TwireHBITMAP = uintptr type TwireHBRUSH = uintptr type TwireHDC = uintptr type TwireHENHMETAFILE = uintptr type TwireHFONT = uintptr type TwireHGLOBAL = uintptr type TwireHICON = uintptr type TwireHMENU = uintptr type TwireHMETAFILE = uintptr type TwireHMETAFILEPICT = uintptr type TwireHMONITOR = uintptr type TwireHPALETTE = uintptr type TwireHRGN = uintptr type TwireHWND = uintptr type TwirePSAFEARRAY = uintptr type TwireSAFEARRAY = uintptr type TwireSNB = uintptr type TwireSTGMEDIUM = uintptr type TwireVARIANT = uintptr const UAS_EXACTLEGACY = 4096 type UCHAR = TUCHAR const UCLEANUI = 67108864 type UCSCHAR = TUCSCHAR const UCSCHAR_INVALID_CHARACTER = 4294967295 type UDATE = TUDATE const UDIRTYUI = 134217728 type UHALF_PTR = TUHALF_PTR const UILANGUAGE_ENUMPROC = 0 type UILANGUAGE_ENUMPROCA = TUILANGUAGE_ENUMPROCA type UILANGUAGE_ENUMPROCW = TUILANGUAGE_ENUMPROCW type UINT = TUINT type UINT16 = TUINT16 type UINT32 = TUINT32 type UINT64 = TUINT64 type UINT8 = TUINT8 type UINT_PTR = TUINT_PTR const UISF_ACTIVE = 4 const UISF_HIDEACCEL = 2 const UISF_HIDEFOCUS = 1 const UIS_CLEAR = 2 const UIS_INITIALIZE = 3 const UIS_SET = 1 const UI_CAP_2700 = 1 const UI_CAP_ROT90 = 2 const UI_CAP_ROTANY = 4 type ULARGE_INTEGER = TULARGE_INTEGER type ULONG = TULONG type ULONG32 = TULONG32 type ULONG64 = TULONG64 type ULONGLONG = TULONGLONG type ULONG_PTR = TULONG_PTR const ULW_ALPHA = 2 const ULW_COLORKEY = 1 const ULW_EX_NORESIZE = 8 const ULW_OPAQUE = 4 type UMS_CREATE_THREAD_ATTRIBUTES = TUMS_CREATE_THREAD_ATTRIBUTES const UNDEFINE_ALTERNATE = 13 const UNDEFINE_PRIMARY = 12 const UNICODE_NOCHAR = 65535 const UNICODE_STRING_MAX_CHARS = 32767 const UNIQUE_NAME = 0 type UNIVERSAL_NAME_INFO = TUNIVERSAL_NAME_INFO type UNIVERSAL_NAME_INFOA = TUNIVERSAL_NAME_INFOA type UNIVERSAL_NAME_INFOW = TUNIVERSAL_NAME_INFOW const UNIVERSAL_NAME_INFO_LEVEL = 1 const UNLOAD_DLL_DEBUG_EVENT = 7 type UNLOAD_DLL_DEBUG_INFO = TUNLOAD_DLL_DEBUG_INFO const UNLOCK_ELEMENT = 1 const UNPROTECTED_DACL_SECURITY_INFORMATION = 536870912 const UNPROTECTED_SACL_SECURITY_INFORMATION = 268435456 const UNRECOVERED_READS_VALID = 8 const UNRECOVERED_WRITES_VALID = 2 const UOI_FLAGS = 1 const UOI_HEAPSIZE = 5 const UOI_IO = 6 const UOI_NAME = 2 const UOI_TIMERPROC_EXCEPTION_SUPPRESSION = 7 const UOI_TYPE = 3 const UOI_USER_SID = 4 type UPDATELAYEREDWINDOWINFO = TUPDATELAYEREDWINDOWINFO const UPDFCACHE_IFBLANK = 16 const UPDFCACHE_IFBLANKORONSAVECACHE = 18 const UPDFCACHE_NODATACACHE = 1 const UPDFCACHE_NORMALCACHE = 8 const UPDFCACHE_ONLYIFBLANK = 2147483648 const UPDFCACHE_ONSAVECACHE = 2 const UPDFCACHE_ONSTOPCACHE = 4 const UPOINTER_32 = 0 type UP_BYTE_BLOB = TUP_BYTE_BLOB type UP_DWORD_BLOB = TUP_DWORD_BLOB type UP_FLAGGED_BYTE_BLOB = TUP_FLAGGED_BYTE_BLOB type UP_FLAGGED_WORD_BLOB = TUP_FLAGGED_WORD_BLOB type UP_WORD_BLOB = TUP_WORD_BLOB const URLACTION_ACTIVEX_CONFIRM_NOOBJECTSAFETY = 4612 const URLACTION_ACTIVEX_CURR_MAX = 4619 const URLACTION_ACTIVEX_DYNSRC_VIDEO_AND_ANIMATION = 4618 const URLACTION_ACTIVEX_MAX = 5119 const URLACTION_ACTIVEX_MIN = 4608 const URLACTION_ACTIVEX_NO_WEBOC_SCRIPT = 4614 const URLACTION_ACTIVEX_OVERRIDE_DATA_SAFETY = 4610 const URLACTION_ACTIVEX_OVERRIDE_DOMAINLIST = 4619 const URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY = 4609 const URLACTION_ACTIVEX_OVERRIDE_OPTIN = 4616 const URLACTION_ACTIVEX_OVERRIDE_REPURPOSEDETECTION = 4615 const URLACTION_ACTIVEX_OVERRIDE_SCRIPT_SAFETY = 4611 const URLACTION_ACTIVEX_RUN = 4608 const URLACTION_ACTIVEX_SCRIPTLET_RUN = 4617 const URLACTION_ACTIVEX_TREATASUNTRUSTED = 4613 const URLACTION_ALLOW_ACTIVEX_FILTERING = 9986 const URLACTION_ALLOW_APEVALUATION = 8961 const URLACTION_ALLOW_AUDIO_VIDEO = 9985 const URLACTION_ALLOW_AUDIO_VIDEO_PLUGINS = 9988 const URLACTION_ALLOW_CROSSDOMAIN_APPCACHE_MANIFEST = 9994 const URLACTION_ALLOW_CROSSDOMAIN_DROP_ACROSS_WINDOWS = 9993 const URLACTION_ALLOW_CROSSDOMAIN_DROP_WITHIN_WINDOW = 9992 const URLACTION_ALLOW_RENDER_LEGACY_DXTFILTERS = 9995 const URLACTION_ALLOW_RESTRICTEDPROTOCOLS = 8960 const URLACTION_ALLOW_STRUCTURED_STORAGE_SNIFFING = 9987 const URLACTION_ALLOW_XDOMAIN_SUBFRAME_RESIZE = 5128 const URLACTION_ALLOW_XHR_EVALUATION = 8962 const URLACTION_ALLOW_ZONE_ELEVATION_OPT_OUT_ADDITION = 9990 const URLACTION_ALLOW_ZONE_ELEVATION_VIA_OPT_OUT = 9989 const URLACTION_AUTHENTICATE_CLIENT = 6657 const URLACTION_AUTOMATIC_ACTIVEX_UI = 8705 const URLACTION_AUTOMATIC_DOWNLOAD_UI = 8704 const URLACTION_AUTOMATIC_DOWNLOAD_UI_MIN = 8704 const URLACTION_BEHAVIOR_MIN = 8192 const URLACTION_BEHAVIOR_RUN = 8192 const URLACTION_CHANNEL_SOFTDIST_MAX = 7935 const URLACTION_CHANNEL_SOFTDIST_MIN = 7680 const URLACTION_CHANNEL_SOFTDIST_PERMISSIONS = 7685 const URLACTION_CLIENT_CERT_PROMPT = 6660 const URLACTION_COOKIES = 6658 const URLACTION_COOKIES_ENABLED = 6672 const URLACTION_COOKIES_SESSION = 6659 const URLACTION_COOKIES_SESSION_THIRD_PARTY = 6662 const URLACTION_COOKIES_THIRD_PARTY = 6661 const URLACTION_CREDENTIALS_USE = 6656 const URLACTION_CROSS_DOMAIN_DATA = 5126 const URLACTION_DOTNET_USERCONTROLS = 8197 const URLACTION_DOWNLOAD_CURR_MAX = 4100 const URLACTION_DOWNLOAD_MAX = 4607 const URLACTION_DOWNLOAD_MIN = 4096 const URLACTION_DOWNLOAD_SIGNED_ACTIVEX = 4097 const URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX = 4100 const URLACTION_FEATURE_BLOCK_INPUT_PROMPTS = 8453 const URLACTION_FEATURE_CROSSDOMAIN_FOCUS_CHANGE = 8455 const URLACTION_FEATURE_DATA_BINDING = 8454 const URLACTION_FEATURE_FORCE_ADDR_AND_STATUS = 8452 const URLACTION_FEATURE_MIME_SNIFFING = 8448 const URLACTION_FEATURE_MIN = 8448 const URLACTION_FEATURE_SCRIPT_STATUS_BAR = 8451 const URLACTION_FEATURE_WINDOW_RESTRICTIONS = 8450 const URLACTION_FEATURE_ZONE_ELEVATION = 8449 const URLACTION_HTML_ALLOW_CROSS_DOMAIN_CANVAS = 5645 const URLACTION_HTML_ALLOW_CROSS_DOMAIN_TEXTTRACK = 5648 const URLACTION_HTML_ALLOW_CROSS_DOMAIN_WEBWORKER = 5647 const URLACTION_HTML_ALLOW_INDEXEDDB = 5649 const URLACTION_HTML_ALLOW_INJECTED_DYNAMIC_HTML = 5643 const URLACTION_HTML_ALLOW_WINDOW_CLOSE = 5646 const URLACTION_HTML_FONT_DOWNLOAD = 5636 const URLACTION_HTML_INCLUDE_FILE_PATH = 5642 const URLACTION_HTML_JAVA_RUN = 5637 const URLACTION_HTML_MAX = 6143 const URLACTION_HTML_META_REFRESH = 5640 const URLACTION_HTML_MIN = 5632 const URLACTION_HTML_MIXED_CONTENT = 5641 const URLACTION_HTML_REQUIRE_UTF8_DOCUMENT_CODEPAGE = 5644 const URLACTION_HTML_SUBFRAME_NAVIGATE = 5639 const URLACTION_HTML_SUBMIT_FORMS = 5633 const URLACTION_HTML_SUBMIT_FORMS_FROM = 5634 const URLACTION_HTML_SUBMIT_FORMS_TO = 5635 const URLACTION_HTML_USERDATA_SAVE = 5638 const URLACTION_INFODELIVERY_CURR_MAX = 7430 const URLACTION_INFODELIVERY_MAX = 7679 const URLACTION_INFODELIVERY_MIN = 7424 const URLACTION_INFODELIVERY_NO_ADDING_CHANNELS = 7424 const URLACTION_INFODELIVERY_NO_ADDING_SUBSCRIPTIONS = 7427 const URLACTION_INFODELIVERY_NO_CHANNEL_LOGGING = 7430 const URLACTION_INFODELIVERY_NO_EDITING_CHANNELS = 7425 const URLACTION_INFODELIVERY_NO_EDITING_SUBSCRIPTIONS = 7428 const URLACTION_INFODELIVERY_NO_REMOVING_CHANNELS = 7426 const URLACTION_INFODELIVERY_NO_REMOVING_SUBSCRIPTIONS = 7429 const URLACTION_INPRIVATE_BLOCKING = 9984 const URLACTION_JAVA_CURR_MAX = 7168 const URLACTION_JAVA_MAX = 7423 const URLACTION_JAVA_MIN = 7168 const URLACTION_JAVA_PERMISSIONS = 7168 const URLACTION_LOOSE_XAML = 9218 const URLACTION_LOWRIGHTS = 9472 const URLACTION_MIN = 4096 const URLACTION_NETWORK_CURR_MAX = 6672 const URLACTION_NETWORK_MAX = 7167 const URLACTION_NETWORK_MIN = 6656 const URLACTION_PLUGGABLE_PROTOCOL_XHR = 5131 const URLACTION_SCRIPT_CURR_MAX = 5131 const URLACTION_SCRIPT_JAVA_USE = 5122 const URLACTION_SCRIPT_MAX = 5631 const URLACTION_SCRIPT_MIN = 5120 const URLACTION_SCRIPT_NAVIGATE = 5130 const URLACTION_SCRIPT_OVERRIDE_SAFETY = 5121 const URLACTION_SCRIPT_PASTE = 5127 const URLACTION_SCRIPT_RUN = 5120 const URLACTION_SCRIPT_SAFE_ACTIVEX = 5125 const URLACTION_SCRIPT_XSSFILTER = 5129 const URLACTION_SHELL_ALLOW_CROSS_SITE_SHARE = 6161 const URLACTION_SHELL_CURR_MAX = 6161 const URLACTION_SHELL_ENHANCED_DRAGDROP_SECURITY = 6155 const URLACTION_SHELL_EXECUTE_HIGHRISK = 6150 const URLACTION_SHELL_EXECUTE_LOWRISK = 6152 const URLACTION_SHELL_EXECUTE_MODRISK = 6151 const URLACTION_SHELL_EXTENSIONSECURITY = 6156 const URLACTION_SHELL_FILE_DOWNLOAD = 6147 const URLACTION_SHELL_INSTALL_DTITEMS = 6144 const URLACTION_SHELL_MAX = 6655 const URLACTION_SHELL_MIN = 6144 const URLACTION_SHELL_MOVE_OR_COPY = 6146 const URLACTION_SHELL_POPUPMGR = 6153 const URLACTION_SHELL_PREVIEW = 6159 const URLACTION_SHELL_REMOTEQUERY = 6158 const URLACTION_SHELL_RTF_OBJECTS_LOAD = 6154 const URLACTION_SHELL_SECURE_DRAGSOURCE = 6157 const URLACTION_SHELL_SHARE = 6160 const URLACTION_SHELL_SHELLEXECUTE = 6150 const URLACTION_SHELL_VERB = 6148 const URLACTION_SHELL_WEBVIEW_VERB = 6149 const URLACTION_WINDOWS_BROWSER_APPLICATIONS = 9216 const URLACTION_WINFX_SETUP = 9728 const URLACTION_XPS_DOCUMENTS = 9217 const URLDownloadToCacheFile = 0 const URLDownloadToFile = 0 const URLMON_OPTION_URL_ENCODING = 268435460 const URLMON_OPTION_USERAGENT = 268435457 const URLMON_OPTION_USERAGENT_REFRESH = 268435458 const URLMON_OPTION_USE_BINDSTRINGCREDS = 268435464 const URLMON_OPTION_USE_BROWSERAPPSDOCUMENTS = 268435472 const URLOSTRM_GETNEWESTVERSION = 3 const URLOSTRM_USECACHEDCOPY = 2 const URLOSTRM_USECACHEDCOPY_ONLY = 1 const URLOpenBlockingStream = 0 const URLOpenPullStream = 0 const URLOpenStream = 0 const URLPOLICY_ACTIVEX_CHECK_LIST = 65536 const URLPOLICY_ALLOW = 0 const URLPOLICY_AUTHENTICATE_CHALLENGE_RESPONSE = 65536 const URLPOLICY_AUTHENTICATE_CLEARTEXT_OK = 0 const URLPOLICY_AUTHENTICATE_MUTUAL_ONLY = 196608 const URLPOLICY_BEHAVIOR_CHECK_LIST = 65536 const URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL = 196608 const URLPOLICY_CHANNEL_SOFTDIST_PRECACHE = 131072 const URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT = 65536 const URLPOLICY_CREDENTIALS_ANONYMOUS_ONLY = 196608 const URLPOLICY_CREDENTIALS_CONDITIONAL_PROMPT = 131072 const URLPOLICY_CREDENTIALS_MUST_PROMPT_USER = 65536 const URLPOLICY_CREDENTIALS_SILENT_LOGON_OK = 0 const URLPOLICY_DISALLOW = 3 const URLPOLICY_DONTCHECKDLGBOX = 256 const URLPOLICY_JAVA_CUSTOM = 8388608 const URLPOLICY_JAVA_HIGH = 65536 const URLPOLICY_JAVA_LOW = 196608 const URLPOLICY_JAVA_MEDIUM = 131072 const URLPOLICY_JAVA_PROHIBIT = 0 const URLPOLICY_LOG_ON_ALLOW = 64 const URLPOLICY_LOG_ON_DISALLOW = 128 const URLPOLICY_MASK_PERMISSIONS = 15 const URLPOLICY_NOTIFY_ON_ALLOW = 16 const URLPOLICY_NOTIFY_ON_DISALLOW = 32 const URLPOLICY_QUERY = 1 type URLTEMPLATE = TURLTEMPLATE type URLZONE = TURLZONE type URLZONEREG = TURLZONEREG const URLZONE_ESC_FLAG = 256 type URL_ENCODING = TURL_ENCODING const URL_MK_LEGACY = 0 const URL_MK_NO_CANONICALIZE = 2 const URL_MK_UNIFORM = 1 const URL_OID_GET_OBJECT_URL_FUNC = "UrlDllGetObjectUrl" const USAGE_MATCH_TYPE_AND = 0 const USAGE_MATCH_TYPE_OR = 1 type USAGE_PROPERTIES = TUSAGE_PROPERTIES type USERCLASSTYPE = TUSERCLASSTYPE type USEROBJECTFLAGS = TUSEROBJECTFLAGS type USER_ACTIVITY_PRESENCE = TUSER_ACTIVITY_PRESENCE const USER_CALL_IS_ASYNC = 256 const USER_CALL_NEW_CORRELATION_DESC = 512 const USER_DEFAULT_SCREEN_DPI = 96 type USER_MARSHAL_CB = TUSER_MARSHAL_CB const USER_MARSHAL_CB_SIGNATURE = 85 type USER_MARSHAL_CB_TYPE = TUSER_MARSHAL_CB_TYPE const USER_MARSHAL_FC_BYTE = 1 const USER_MARSHAL_FC_CHAR = 2 const USER_MARSHAL_FC_DOUBLE = 12 const USER_MARSHAL_FC_FLOAT = 10 const USER_MARSHAL_FC_HYPER = 11 const USER_MARSHAL_FC_LONG = 8 const USER_MARSHAL_FC_SHORT = 6 const USER_MARSHAL_FC_SMALL = 3 const USER_MARSHAL_FC_ULONG = 9 const USER_MARSHAL_FC_USHORT = 7 const USER_MARSHAL_FC_USMALL = 4 const USER_MARSHAL_FC_WCHAR = 5 type USER_MARSHAL_FREEING_ROUTINE = TUSER_MARSHAL_FREEING_ROUTINE type USER_MARSHAL_MARSHALLING_ROUTINE = TUSER_MARSHAL_MARSHALLING_ROUTINE type USER_MARSHAL_ROUTINE_QUADRUPLE = TUSER_MARSHAL_ROUTINE_QUADRUPLE type USER_MARSHAL_SIZING_ROUTINE = TUSER_MARSHAL_SIZING_ROUTINE type USER_MARSHAL_UNMARSHALLING_ROUTINE = TUSER_MARSHAL_UNMARSHALLING_ROUTINE const USER_TIMER_MAXIMUM = 2147483647 const USER_TIMER_MINIMUM = 10 const USE___UUIDOF = 0 type USHORT = TUSHORT type USN = TUSN const USN_DELETE_FLAG_DELETE = 1 const USN_DELETE_FLAG_NOTIFY = 2 const USN_DELETE_VALID_FLAGS = 3 type USN_JOURNAL_DATA = TUSN_JOURNAL_DATA const USN_PAGE_SIZE = 4096 const USN_REASON_BASIC_INFO_CHANGE = 32768 const USN_REASON_CLOSE = 2147483648 const USN_REASON_COMPRESSION_CHANGE = 131072 const USN_REASON_DATA_EXTEND = 2 const USN_REASON_DATA_OVERWRITE = 1 const USN_REASON_DATA_TRUNCATION = 4 const USN_REASON_EA_CHANGE = 1024 const USN_REASON_ENCRYPTION_CHANGE = 262144 const USN_REASON_FILE_CREATE = 256 const USN_REASON_FILE_DELETE = 512 const USN_REASON_HARD_LINK_CHANGE = 65536 const USN_REASON_INDEXABLE_CHANGE = 16384 const USN_REASON_NAMED_DATA_EXTEND = 32 const USN_REASON_NAMED_DATA_OVERWRITE = 16 const USN_REASON_NAMED_DATA_TRUNCATION = 64 const USN_REASON_OBJECT_ID_CHANGE = 524288 const USN_REASON_RENAME_NEW_NAME = 8192 const USN_REASON_RENAME_OLD_NAME = 4096 const USN_REASON_REPARSE_POINT_CHANGE = 1048576 const USN_REASON_SECURITY_CHANGE = 2048 const USN_REASON_STREAM_CHANGE = 2097152 const USN_REASON_TRANSACTED_CHANGE = 4194304 type USN_RECORD = TUSN_RECORD const USN_SOURCE_AUXILIARY_DATA = 2 const USN_SOURCE_DATA_MANAGEMENT = 1 const USN_SOURCE_REPLICATION_MANAGEMENT = 4 type UUID = TUUID type UUID_VECTOR = TUUID_VECTOR type UWORD = TUWORD const UnregisterClass = 0 const UpdateICMRegKey = 0 const UpdateResource = 0 const UploadPrinterDriverPackage = 0 const UriBuilder_USE_ORIGINAL_FLAGS = 1 const Uri_CREATE_ALLOW_IMPLICIT_FILE_SCHEME = 4 const Uri_CREATE_ALLOW_IMPLICIT_WILDCARD_SCHEME = 2 const Uri_CREATE_ALLOW_RELATIVE = 1 const Uri_CREATE_CANONICALIZE = 256 const Uri_CREATE_CANONICALIZE_ABSOLUTE = 131072 const Uri_CREATE_CRACK_UNKNOWN_SCHEMES = 512 const Uri_CREATE_DECODE_EXTRA_INFO = 64 const Uri_CREATE_FILE_USE_DOS_PATH = 32 const Uri_CREATE_IE_SETTINGS = 8192 const Uri_CREATE_NOFRAG = 8 const Uri_CREATE_NORMALIZE_INTL_CHARACTERS = 65536 const Uri_CREATE_NO_CANONICALIZE = 16 const Uri_CREATE_NO_CRACK_UNKNOWN_SCHEMES = 1024 const Uri_CREATE_NO_DECODE_EXTRA_INFO = 128 const Uri_CREATE_NO_ENCODE_FORBIDDEN_CHARACTERS = 32768 const Uri_CREATE_NO_IE_SETTINGS = 16384 const Uri_CREATE_NO_PRE_PROCESS_HTML_URI = 4096 const Uri_CREATE_PRE_PROCESS_HTML_URI = 2048 const Uri_DISPLAY_IDN_HOST = 4 const Uri_DISPLAY_NO_FRAGMENT = 1 const Uri_DISPLAY_NO_PUNYCODE = 8 const Uri_ENCODING_HOST_IS_IDN = 4 const Uri_ENCODING_HOST_IS_PERCENT_ENCODED_CP = 16 const Uri_ENCODING_HOST_IS_PERCENT_ENCODED_UTF8 = 8 const Uri_ENCODING_QUERY_AND_FRAGMENT_IS_CP = 64 const Uri_ENCODING_QUERY_AND_FRAGMENT_IS_PERCENT_ENCODED_UTF8 = 32 const Uri_ENCODING_RFC = 41 const Uri_ENCODING_USER_INFO_AND_PATH_IS_CP = 2 const Uri_ENCODING_USER_INFO_AND_PATH_IS_PERCENT_ENCODED_UTF8 = 1 const Uri_HAS_ABSOLUTE_URI = 1 const Uri_HAS_AUTHORITY = 1 const Uri_HAS_DISPLAY_URI = 1 const Uri_HAS_DOMAIN = 1 const Uri_HAS_EXTENSION = 1 const Uri_HAS_FRAGMENT = 1 const Uri_HAS_HOST = 1 const Uri_HAS_HOST_TYPE = 1 const Uri_HAS_PASSWORD = 1 const Uri_HAS_PATH = 1 const Uri_HAS_PATH_AND_QUERY = 1 const Uri_HAS_PORT = 1 const Uri_HAS_QUERY = 1 const Uri_HAS_RAW_URI = 1 const Uri_HAS_SCHEME = 1 const Uri_HAS_SCHEME_NAME = 1 const Uri_HAS_USER_INFO = 1 const Uri_HAS_USER_NAME = 1 const Uri_HAS_ZONE = 1 type Uri_HOST_TYPE = TUri_HOST_TYPE type Uri_PROPERTY = TUri_PROPERTY const Uri_PUNYCODE_IDN_HOST = 2 const UuidFromString = 0 const UuidToString = 0 type VALENT = TVALENT type VALENTA = TVALENTA type VALENTW = TVALENTW const VALID_INHERIT_FLAGS = 31 const VALID_NTFT = 192 const VALID_SYMBOLIC_LINK_FLAGS = 1 const VARCMP_EQ = 1 const VARCMP_GT = 2 const VARCMP_LT = 0 const VARCMP_NULL = 3 type VARDESC = TVARDESC type VARFLAGS = TVARFLAGS const VARIABLE_PITCH = 2 type VARIANT = TVARIANT type VARIANTARG = TVARIANTARG const VARIANT_ALPHABOOL = 2 type VARIANT_BOOL = TVARIANT_BOOL const VARIANT_CALENDAR_GREGORIAN = 64 const VARIANT_CALENDAR_HIJRI = 8 const VARIANT_CALENDAR_THAI = 32 const VARIANT_LOCALBOOL = 16 const VARIANT_NOUSEROVERRIDE = 4 const VARIANT_NOVALUEPROP = 1 const VARIANT_TRUE = -1 const VARIANT_USE_NLS = 128 type VARKIND = TVARKIND type VARTYPE = TVARTYPE const VENDOR_ID_LENGTH = 8 type VERIFY_INFORMATION = TVERIFY_INFORMATION type VERSIONEDSTREAM = TVERSIONEDSTREAM const VERTRES = 10 const VERTSIZE = 6 const VER_AND = 6 const VER_BUILDNUMBER = 4 const VER_CONDITION_MASK = 7 const VER_EQUAL = 1 const VER_GREATER = 2 const VER_GREATER_EQUAL = 3 const VER_LESS = 4 const VER_LESS_EQUAL = 5 const VER_MAJORVERSION = 2 const VER_MINORVERSION = 1 const VER_NT_DOMAIN_CONTROLLER = 2 const VER_NT_SERVER = 3 const VER_NT_WORKSTATION = 1 const VER_NUM_BITS_PER_CONDITION_MASK = 3 const VER_OR = 7 const VER_PLATFORMID = 8 const VER_PLATFORM_WIN32_NT = 2 const VER_PLATFORM_WIN32_WINDOWS = 1 const VER_PLATFORM_WIN32s = 0 const VER_PRODUCT_TYPE = 128 const VER_SERVER_NT = 2147483648 const VER_SERVICEPACKMAJOR = 32 const VER_SERVICEPACKMINOR = 16 const VER_SUITENAME = 64 const VER_SUITE_BACKOFFICE = 4 const VER_SUITE_BLADE = 1024 const VER_SUITE_COMMUNICATIONS = 8 const VER_SUITE_COMPUTE_SERVER = 16384 const VER_SUITE_DATACENTER = 128 const VER_SUITE_EMBEDDEDNT = 64 const VER_SUITE_EMBEDDED_RESTRICTED = 2048 const VER_SUITE_ENTERPRISE = 2 const VER_SUITE_PERSONAL = 512 const VER_SUITE_SECURITY_APPLIANCE = 4096 const VER_SUITE_SINGLEUSERTS = 256 const VER_SUITE_SMALLBUSINESS = 1 const VER_SUITE_SMALLBUSINESS_RESTRICTED = 32 const VER_SUITE_STORAGE_SERVER = 8192 const VER_SUITE_TERMINAL = 16 const VER_SUITE_WH_SERVER = 32768 const VER_WORKSTATION_NT = 1073741824 const VFFF_ISSHAREDFILE = 1 const VFF_BUFFTOOSMALL = 4 const VFF_CURNEDEST = 1 const VFF_FILEINUSE = 2 const VFT2_DRV_COMM = 10 const VFT2_DRV_DISPLAY = 4 const VFT2_DRV_INPUTMETHOD = 11 const VFT2_DRV_INSTALLABLE = 8 const VFT2_DRV_KEYBOARD = 2 const VFT2_DRV_LANGUAGE = 3 const VFT2_DRV_MOUSE = 5 const VFT2_DRV_NETWORK = 6 const VFT2_DRV_PRINTER = 1 const VFT2_DRV_SOUND = 9 const VFT2_DRV_SYSTEM = 7 const VFT2_DRV_VERSIONED_PRINTER = 12 const VFT2_FONT_RASTER = 1 const VFT2_FONT_TRUETYPE = 3 const VFT2_FONT_VECTOR = 2 const VFT2_UNKNOWN = 0 const VFT_APP = 1 const VFT_DLL = 2 const VFT_DRV = 3 const VFT_FONT = 4 const VFT_STATIC_LIB = 7 const VFT_UNKNOWN = 0 const VFT_VXD = 5 type VIDEOPARAMETERS = TVIDEOPARAMETERS const VIETNAMESE_CHARSET = 163 const VIEW_E_FIRST = 2147746112 const VIEW_E_LAST = 2147746127 const VIEW_S_FIRST = 262464 const VIEW_S_LAST = 262479 const VIFF_DONTDELETEOLD = 2 const VIFF_FORCEINSTALL = 1 const VIF_ACCESSVIOLATION = 512 const VIF_BUFFTOOSMALL = 262144 const VIF_CANNOTCREATE = 2048 const VIF_CANNOTDELETE = 4096 const VIF_CANNOTDELETECUR = 16384 const VIF_CANNOTLOADCABINET = 1048576 const VIF_CANNOTLOADLZ32 = 524288 const VIF_CANNOTREADDST = 131072 const VIF_CANNOTREADSRC = 65536 const VIF_CANNOTRENAME = 8192 const VIF_DIFFCODEPG = 16 const VIF_DIFFLANG = 8 const VIF_DIFFTYPE = 32 const VIF_FILEINUSE = 128 const VIF_MISMATCH = 2 const VIF_OUTOFMEMORY = 32768 const VIF_OUTOFSPACE = 256 const VIF_SHARINGVIOLATION = 1024 const VIF_SRCOLD = 4 const VIF_TEMPFILE = 1 const VIF_WRITEPROT = 64 const VIRTDISKAPI = "DECLSPEC_IMPORT" type VIRTUAL_DISK_ACCESS_MASK = TVIRTUAL_DISK_ACCESS_MASK type VIRTUAL_DISK_PROGRESS = TVIRTUAL_DISK_PROGRESS type VIRTUAL_STORAGE_TYPE = TVIRTUAL_STORAGE_TYPE const VIRTUAL_STORAGE_TYPE_DEVICE_ISO = 1 const VIRTUAL_STORAGE_TYPE_DEVICE_UNKNOWN = 0 const VIRTUAL_STORAGE_TYPE_DEVICE_VHD = 2 const VIRTUAL_STORAGE_TYPE_DEVICE_VHDX = 3 const VK_ACCEPT = 30 const VK_ADD = 107 const VK_APPS = 93 const VK_ATTN = 246 const VK_BACK = 8 const VK_BROWSER_BACK = 166 const VK_BROWSER_FAVORITES = 171 const VK_BROWSER_FORWARD = 167 const VK_BROWSER_HOME = 172 const VK_BROWSER_REFRESH = 168 const VK_BROWSER_SEARCH = 170 const VK_BROWSER_STOP = 169 const VK_CANCEL = 3 const VK_CAPITAL = 20 const VK_CLEAR = 12 const VK_CONTROL = 17 const VK_CONVERT = 28 const VK_CRSEL = 247 const VK_DECIMAL = 110 const VK_DELETE = 46 const VK_DIVIDE = 111 const VK_DOWN = 40 const VK_END = 35 const VK_EREOF = 249 const VK_ESCAPE = 27 const VK_EXECUTE = 43 const VK_EXSEL = 248 const VK_F1 = 112 const VK_F10 = 121 const VK_F11 = 122 const VK_F12 = 123 const VK_F13 = 124 const VK_F14 = 125 const VK_F15 = 126 const VK_F16 = 127 const VK_F17 = 128 const VK_F18 = 129 const VK_F19 = 130 const VK_F2 = 113 const VK_F20 = 131 const VK_F21 = 132 const VK_F22 = 133 const VK_F23 = 134 const VK_F24 = 135 const VK_F3 = 114 const VK_F4 = 115 const VK_F5 = 116 const VK_F6 = 117 const VK_F7 = 118 const VK_F8 = 119 const VK_F9 = 120 const VK_FINAL = 24 const VK_GAMEPAD_A = 195 const VK_GAMEPAD_B = 196 const VK_GAMEPAD_DPAD_DOWN = 204 const VK_GAMEPAD_DPAD_LEFT = 205 const VK_GAMEPAD_DPAD_RIGHT = 206 const VK_GAMEPAD_DPAD_UP = 203 const VK_GAMEPAD_LEFT_SHOULDER = 200 const VK_GAMEPAD_LEFT_THUMBSTICK_BUTTON = 209 const VK_GAMEPAD_LEFT_THUMBSTICK_DOWN = 212 const VK_GAMEPAD_LEFT_THUMBSTICK_LEFT = 214 const VK_GAMEPAD_LEFT_THUMBSTICK_RIGHT = 213 const VK_GAMEPAD_LEFT_THUMBSTICK_UP = 211 const VK_GAMEPAD_LEFT_TRIGGER = 201 const VK_GAMEPAD_MENU = 207 const VK_GAMEPAD_RIGHT_SHOULDER = 199 const VK_GAMEPAD_RIGHT_THUMBSTICK_BUTTON = 210 const VK_GAMEPAD_RIGHT_THUMBSTICK_DOWN = 216 const VK_GAMEPAD_RIGHT_THUMBSTICK_LEFT = 218 const VK_GAMEPAD_RIGHT_THUMBSTICK_RIGHT = 217 const VK_GAMEPAD_RIGHT_THUMBSTICK_UP = 215 const VK_GAMEPAD_RIGHT_TRIGGER = 202 const VK_GAMEPAD_VIEW = 208 const VK_GAMEPAD_X = 197 const VK_GAMEPAD_Y = 198 const VK_HANGEUL = 21 const VK_HANGUL = 21 const VK_HANJA = 25 const VK_HELP = 47 const VK_HOME = 36 const VK_ICO_00 = 228 const VK_ICO_CLEAR = 230 const VK_ICO_HELP = 227 const VK_IME_OFF = 26 const VK_IME_ON = 22 const VK_INSERT = 45 const VK_JUNJA = 23 const VK_KANA = 21 const VK_KANJI = 25 const VK_LAUNCH_APP1 = 182 const VK_LAUNCH_APP2 = 183 const VK_LAUNCH_MAIL = 180 const VK_LAUNCH_MEDIA_SELECT = 181 const VK_LBUTTON = 1 const VK_LCONTROL = 162 const VK_LEFT = 37 const VK_LMENU = 164 const VK_LSHIFT = 160 const VK_LWIN = 91 const VK_MBUTTON = 4 const VK_MEDIA_NEXT_TRACK = 176 const VK_MEDIA_PLAY_PAUSE = 179 const VK_MEDIA_PREV_TRACK = 177 const VK_MEDIA_STOP = 178 const VK_MENU = 18 const VK_MODECHANGE = 31 const VK_MULTIPLY = 106 const VK_NAVIGATION_ACCEPT = 142 const VK_NAVIGATION_CANCEL = 143 const VK_NAVIGATION_DOWN = 139 const VK_NAVIGATION_LEFT = 140 const VK_NAVIGATION_MENU = 137 const VK_NAVIGATION_RIGHT = 141 const VK_NAVIGATION_UP = 138 const VK_NAVIGATION_VIEW = 136 const VK_NEXT = 34 const VK_NONAME = 252 const VK_NONCONVERT = 29 const VK_NUMLOCK = 144 const VK_NUMPAD0 = 96 const VK_NUMPAD1 = 97 const VK_NUMPAD2 = 98 const VK_NUMPAD3 = 99 const VK_NUMPAD4 = 100 const VK_NUMPAD5 = 101 const VK_NUMPAD6 = 102 const VK_NUMPAD7 = 103 const VK_NUMPAD8 = 104 const VK_NUMPAD9 = 105 const VK_OEM_1 = 186 const VK_OEM_102 = 226 const VK_OEM_2 = 191 const VK_OEM_3 = 192 const VK_OEM_4 = 219 const VK_OEM_5 = 220 const VK_OEM_6 = 221 const VK_OEM_7 = 222 const VK_OEM_8 = 223 const VK_OEM_ATTN = 240 const VK_OEM_AUTO = 243 const VK_OEM_AX = 225 const VK_OEM_BACKTAB = 245 const VK_OEM_CLEAR = 254 const VK_OEM_COMMA = 188 const VK_OEM_COPY = 242 const VK_OEM_CUSEL = 239 const VK_OEM_ENLW = 244 const VK_OEM_FINISH = 241 const VK_OEM_FJ_JISHO = 146 const VK_OEM_FJ_LOYA = 149 const VK_OEM_FJ_MASSHOU = 147 const VK_OEM_FJ_ROYA = 150 const VK_OEM_FJ_TOUROKU = 148 const VK_OEM_JUMP = 234 const VK_OEM_MINUS = 189 const VK_OEM_NEC_EQUAL = 146 const VK_OEM_PA1 = 235 const VK_OEM_PA2 = 236 const VK_OEM_PA3 = 237 const VK_OEM_PERIOD = 190 const VK_OEM_PLUS = 187 const VK_OEM_RESET = 233 const VK_OEM_WSCTRL = 238 const VK_PA1 = 253 const VK_PACKET = 231 const VK_PAUSE = 19 const VK_PLAY = 250 const VK_PRINT = 42 const VK_PRIOR = 33 const VK_PROCESSKEY = 229 const VK_RBUTTON = 2 const VK_RCONTROL = 163 const VK_RETURN = 13 const VK_RIGHT = 39 const VK_RMENU = 165 const VK_RSHIFT = 161 const VK_RWIN = 92 const VK_SCROLL = 145 const VK_SELECT = 41 const VK_SEPARATOR = 108 const VK_SHIFT = 16 const VK_SLEEP = 95 const VK_SNAPSHOT = 44 const VK_SPACE = 32 const VK_SUBTRACT = 109 const VK_TAB = 9 const VK_UP = 38 const VK_VOLUME_DOWN = 174 const VK_VOLUME_MUTE = 173 const VK_VOLUME_UP = 175 const VK_XBUTTON1 = 5 const VK_XBUTTON2 = 6 const VK_ZOOM = 251 const VOID = 0 type VOLUME_BITMAP_BUFFER = TVOLUME_BITMAP_BUFFER type VOLUME_DISK_EXTENTS = TVOLUME_DISK_EXTENTS type VOLUME_GET_GPT_ATTRIBUTES_INFORMATION = TVOLUME_GET_GPT_ATTRIBUTES_INFORMATION const VOLUME_IS_DIRTY = 1 const VOLUME_NAME_DOS = 0 const VOLUME_NAME_GUID = 1 const VOLUME_NAME_NONE = 4 const VOLUME_NAME_NT = 2 const VOLUME_SESSION_OPEN = 4 const VOLUME_UPGRADE_SCHEDULED = 2 const VOS_DOS = 65536 const VOS_DOS_WINDOWS16 = 65537 const VOS_DOS_WINDOWS32 = 65540 const VOS_NT = 262144 const VOS_NT_WINDOWS32 = 262148 const VOS_OS216 = 131072 const VOS_OS216_PM16 = 131074 const VOS_OS232 = 196608 const VOS_OS232_PM32 = 196611 const VOS_UNKNOWN = 0 const VOS_WINCE = 327680 const VOS__BASE = 0 const VOS__PM16 = 2 const VOS__PM32 = 3 const VOS__WINDOWS16 = 1 const VOS__WINDOWS32 = 4 const VP_COMMAND_GET = 1 const VP_COMMAND_SET = 2 const VP_CP_CMD_ACTIVATE = 1 const VP_CP_CMD_CHANGE = 4 const VP_CP_CMD_DEACTIVATE = 2 const VP_CP_TYPE_APS_TRIGGER = 1 const VP_CP_TYPE_MACROVISION = 2 const VP_FLAGS_BRIGHTNESS = 64 const VP_FLAGS_CONTRAST = 128 const VP_FLAGS_COPYPROTECT = 256 const VP_FLAGS_FLICKER = 4 const VP_FLAGS_MAX_UNSCALED = 16 const VP_FLAGS_OVERSCAN = 8 const VP_FLAGS_POSITION = 32 const VP_FLAGS_TV_MODE = 1 const VP_FLAGS_TV_STANDARD = 2 const VP_MODE_TV_PLAYBACK = 2 const VP_MODE_WIN_GRAPHICS = 1 const VP_TV_STANDARD_NTSC_433 = 65536 const VP_TV_STANDARD_NTSC_M = 1 const VP_TV_STANDARD_NTSC_M_J = 2 const VP_TV_STANDARD_PAL_60 = 262144 const VP_TV_STANDARD_PAL_B = 4 const VP_TV_STANDARD_PAL_D = 8 const VP_TV_STANDARD_PAL_G = 131072 const VP_TV_STANDARD_PAL_H = 16 const VP_TV_STANDARD_PAL_I = 32 const VP_TV_STANDARD_PAL_M = 64 const VP_TV_STANDARD_PAL_N = 128 const VP_TV_STANDARD_SECAM_B = 256 const VP_TV_STANDARD_SECAM_D = 512 const VP_TV_STANDARD_SECAM_G = 1024 const VP_TV_STANDARD_SECAM_H = 2048 const VP_TV_STANDARD_SECAM_K = 4096 const VP_TV_STANDARD_SECAM_K1 = 8192 const VP_TV_STANDARD_SECAM_L = 16384 const VP_TV_STANDARD_SECAM_L1 = 524288 const VP_TV_STANDARD_WIN_VGA = 32768 const VREFRESH = 116 const VRL_CLASS_CONSISTENCY = 1 const VRL_CUSTOM_CLASS_BEGIN = 256 const VRL_ENABLE_KERNEL_BREAKS = 2147483648 const VRL_PREDEFINED_CLASS_BEGIN = 1 const VS_ALLOW_LATIN = 1 const VS_FFI_FILEFLAGSMASK = 63 const VS_FFI_SIGNATURE = 4277077181 const VS_FFI_STRUCVERSION = 65536 const VS_FF_DEBUG = 1 const VS_FF_INFOINFERRED = 16 const VS_FF_PATCHED = 4 const VS_FF_PRERELEASE = 2 const VS_FF_PRIVATEBUILD = 8 const VS_FF_SPECIALBUILD = 32 const VS_FILE_INFO = "RT_VERSION" type VS_FIXEDFILEINFO = TVS_FIXEDFILEINFO const VS_USER_DEFINED = 100 const VS_VERSION_INFO = 1 const VTA_BASELINE = 24 const VTA_BOTTOM = 2 const VTA_CENTER = 6 const VTA_LEFT = 8 const VTA_RIGHT = 0 const VTA_TOP = 0 const VTBIT_CY = 1 const VTBIT_DECIMAL = 1 const VTBIT_I1 = 1 const VTBIT_I2 = 1 const VTBIT_I4 = 1 const VTBIT_I8 = 1 const VTBIT_R4 = 1 const VTBIT_R8 = 1 const VTBIT_UI1 = 1 const VTBIT_UI2 = 1 const VTBIT_UI4 = 1 const VTBIT_UI8 = 1 const VTDATEGRE_MAX = 2958465 const VTDATEGRE_MIN = -657434 const VT_HARDTYPE = 0 const VarBoolFromInt = 0 const VarBoolFromUint = 0 const VarBstrFromInt = 0 const VarBstrFromUint = 0 const VarCyFromInt = 0 const VarCyFromUint = 0 const VarDateFromInt = 0 const VarDateFromUint = 0 const VarDecFromInt = 0 const VarDecFromUint = 0 const VarI1FromInt = 0 const VarI1FromUint = 0 const VarI2FromInt = 0 const VarI2FromUint = 0 const VarI4FromInt = 0 const VarI4FromUint = 0 const VarI8FromInt = 0 const VarI8FromUint = 0 const VarIntFromBool = 0 const VarIntFromCy = 0 const VarIntFromDate = 0 const VarIntFromDec = 0 const VarIntFromDisp = 0 const VarIntFromI1 = 0 const VarIntFromI2 = 0 const VarIntFromI4 = 0 const VarIntFromI8 = 0 const VarIntFromR4 = 0 const VarIntFromR8 = 0 const VarIntFromStr = 0 const VarIntFromUI1 = 0 const VarIntFromUI2 = 0 const VarIntFromUI4 = 0 const VarIntFromUI8 = 0 const VarIntFromUint = 0 const VarR4FromInt = 0 const VarR4FromUint = 0 const VarR8FromInt = 0 const VarR8FromUint = 0 const VarUI1FromInt = 0 const VarUI1FromUint = 0 const VarUI2FromInt = 0 const VarUI2FromUint = 0 const VarUI4FromInt = 0 const VarUI4FromUint = 0 const VarUintFromBool = 0 const VarUintFromCy = 0 const VarUintFromDate = 0 const VarUintFromDec = 0 const VarUintFromDisp = 0 const VarUintFromI1 = 0 const VarUintFromI2 = 0 const VarUintFromI4 = 0 const VarUintFromI8 = 0 const VarUintFromInt = 0 const VarUintFromR4 = 0 const VarUintFromR8 = 0 const VarUintFromStr = 0 const VarUintFromUI1 = 0 const VarUintFromUI2 = 0 const VarUintFromUI4 = 0 const VarUintFromUI8 = 0 const VerFindFile = 0 const VerInstallFile = 0 const VerLanguageName = 0 const VerQueryValue = 0 const VerifyVersionInfo = 0 const VkKeyScan = 0 const VkKeyScanEx = 0 const VolumeClassGuid = 0 type WAITORTIMERCALLBACK = TWAITORTIMERCALLBACK type WAITORTIMERCALLBACKFUNC = TWAITORTIMERCALLBACKFUNC const WAIT_CHILD = 0 const WAIT_GRANDCHILD = 1 const WAIT_IO_COMPLETION = "STATUS_USER_APC" const WAIT_TIMEOUT = 258 const WARNING_IPSEC_MM_POLICY_PRUNED = 13024 const WARNING_IPSEC_QM_POLICY_PRUNED = 13025 const WAVECAPS_LRVOLUME = 8 const WAVECAPS_PITCH = 1 const WAVECAPS_PLAYBACKRATE = 2 const WAVECAPS_SAMPLEACCURATE = 32 const WAVECAPS_SYNC = 16 const WAVECAPS_VOLUME = 4 type WAVEFORMAT = TWAVEFORMAT type WAVEFORMATEX = TWAVEFORMATEX type WAVEHDR = TWAVEHDR type WAVEINCAPS = TWAVEINCAPS type WAVEINCAPS2 = TWAVEINCAPS2 type WAVEINCAPS2A = TWAVEINCAPS2A type WAVEINCAPS2W = TWAVEINCAPS2W type WAVEINCAPSA = TWAVEINCAPSA type WAVEINCAPSW = TWAVEINCAPSW type WAVEOUTCAPS = TWAVEOUTCAPS type WAVEOUTCAPS2 = TWAVEOUTCAPS2 type WAVEOUTCAPS2A = TWAVEOUTCAPS2A type WAVEOUTCAPS2W = TWAVEOUTCAPS2W type WAVEOUTCAPSA = TWAVEOUTCAPSA type WAVEOUTCAPSW = TWAVEOUTCAPSW const WAVERR_BADFORMAT = 32 const WAVERR_BASE = 32 const WAVERR_LASTERROR = 35 const WAVERR_STILLPLAYING = 33 const WAVERR_SYNC = 35 const WAVERR_UNPREPARED = 34 const WAVE_ALLOWSYNC = 2 const WAVE_FORMAT_1M08 = 1 const WAVE_FORMAT_1M16 = 4 const WAVE_FORMAT_1S08 = 2 const WAVE_FORMAT_1S16 = 8 const WAVE_FORMAT_2M08 = 16 const WAVE_FORMAT_2M16 = 64 const WAVE_FORMAT_2S08 = 32 const WAVE_FORMAT_2S16 = 128 const WAVE_FORMAT_44M08 = 256 const WAVE_FORMAT_44M16 = 1024 const WAVE_FORMAT_44S08 = 512 const WAVE_FORMAT_44S16 = 2048 const WAVE_FORMAT_48M08 = 4096 const WAVE_FORMAT_48M16 = 16384 const WAVE_FORMAT_48S08 = 8192 const WAVE_FORMAT_48S16 = 32768 const WAVE_FORMAT_4M08 = 256 const WAVE_FORMAT_4M16 = 1024 const WAVE_FORMAT_4S08 = 512 const WAVE_FORMAT_4S16 = 2048 const WAVE_FORMAT_96M08 = 65536 const WAVE_FORMAT_96M16 = 262144 const WAVE_FORMAT_96S08 = 131072 const WAVE_FORMAT_96S16 = 524288 const WAVE_FORMAT_DIRECT = 8 const WAVE_FORMAT_DIRECT_QUERY = 9 const WAVE_FORMAT_PCM = 1 const WAVE_FORMAT_QUERY = 1 const WAVE_INVALIDFORMAT = 0 const WAVE_MAPPED = 4 const WAVE_MAPPED_DEFAULT_COMMUNICATION_DEVICE = 16 const WAVE_MAPPER = -1 const WA_ACTIVE = 1 const WA_CLICKACTIVE = 2 const WA_INACTIVE = 0 const WB_ISDELIMITER = 2 const WB_LEFT = 0 const WB_RIGHT = 1 type WCHAR = TWCHAR const WCHAR_MAX = 65535 type WCRANGE = TWCRANGE const WC_COMPOSITECHECK = 512 const WC_DEFAULTCHAR = 64 const WC_DISCARDNS = 16 const WC_ERR_INVALID_CHARS = 128 const WC_NETADDRESS = "msctls_netaddress" const WC_NO_BEST_FIT_CHARS = 1024 const WC_SEPCHARS = 32 const WDA_EXCLUDEFROMCAPTURE = 17 const WDA_MONITOR = 1 const WDA_NONE = 0 const WDK_NTDDI_VERSION = 167772171 const WDT_INPROC64_CALL = 1349805143 const WDT_INPROC_CALL = 1215587415 const WDT_REMOTE_CALL = 1383359575 type WELL_KNOWN_SID_TYPE = TWELL_KNOWN_SID_TYPE type WGLSWAP = TWGLSWAP const WGL_FONT_LINES = 0 const WGL_FONT_POLYGONS = 1 const WGL_SWAPMULTIPLE_MAX = 16 const WGL_SWAP_MAIN_PLANE = 1 const WGL_SWAP_OVERLAY1 = 2 const WGL_SWAP_OVERLAY10 = 1024 const WGL_SWAP_OVERLAY11 = 2048 const WGL_SWAP_OVERLAY12 = 4096 const WGL_SWAP_OVERLAY13 = 8192 const WGL_SWAP_OVERLAY14 = 16384 const WGL_SWAP_OVERLAY15 = 32768 const WGL_SWAP_OVERLAY2 = 4 const WGL_SWAP_OVERLAY3 = 8 const WGL_SWAP_OVERLAY4 = 16 const WGL_SWAP_OVERLAY5 = 32 const WGL_SWAP_OVERLAY6 = 64 const WGL_SWAP_OVERLAY7 = 128 const WGL_SWAP_OVERLAY8 = 256 const WGL_SWAP_OVERLAY9 = 512 const WGL_SWAP_UNDERLAY1 = 65536 const WGL_SWAP_UNDERLAY10 = 33554432 const WGL_SWAP_UNDERLAY11 = 67108864 const WGL_SWAP_UNDERLAY12 = 134217728 const WGL_SWAP_UNDERLAY13 = 268435456 const WGL_SWAP_UNDERLAY14 = 536870912 const WGL_SWAP_UNDERLAY15 = 1073741824 const WGL_SWAP_UNDERLAY2 = 131072 const WGL_SWAP_UNDERLAY3 = 262144 const WGL_SWAP_UNDERLAY4 = 524288 const WGL_SWAP_UNDERLAY5 = 1048576 const WGL_SWAP_UNDERLAY6 = 2097152 const WGL_SWAP_UNDERLAY7 = 4194304 const WGL_SWAP_UNDERLAY8 = 8388608 const WGL_SWAP_UNDERLAY9 = 16777216 const WHDR_BEGINLOOP = 4 const WHDR_DONE = 1 const WHDR_ENDLOOP = 8 const WHDR_INQUEUE = 16 const WHDR_PREPARED = 2 const WHEEL_DELTA = 120 const WHEEL_PAGESCROLL = 4294967295 const WHITEONBLACK = 2 const WHITE_BRUSH = 0 const WHITE_PEN = 6 const WH_CALLWNDPROC = 4 const WH_CALLWNDPROCRET = 12 const WH_CBT = 5 const WH_DEBUG = 9 const WH_FOREGROUNDIDLE = 11 const WH_GETMESSAGE = 3 const WH_HARDWARE = 8 const WH_JOURNALPLAYBACK = 1 const WH_JOURNALRECORD = 0 const WH_KEYBOARD = 2 const WH_KEYBOARD_LL = 13 const WH_MAX = 14 const WH_MAXHOOK = 14 const WH_MIN = -1 const WH_MINHOOK = -1 const WH_MOUSE = 7 const WH_MOUSE_LL = 14 const WH_MSGFILTER = -1 const WH_SHELL = 10 const WH_SYSMSGFILTER = 6 const WIM_CLOSE = 959 const WIM_DATA = 960 const WIM_OPEN = 958 const WIN31_CLASS = "NULL" const WIN32 = 1 type WIN32_FILE_ATTRIBUTE_DATA = TWIN32_FILE_ATTRIBUTE_DATA type WIN32_FIND_DATA = TWIN32_FIND_DATA type WIN32_FIND_DATAA = TWIN32_FIND_DATAA type WIN32_FIND_DATAW = TWIN32_FIND_DATAW type WIN32_FIND_STREAM_DATA = TWIN32_FIND_STREAM_DATA type WIN32_MEMORY_RANGE_ENTRY = TWIN32_MEMORY_RANGE_ENTRY type WIN32_STREAM_ID = TWIN32_STREAM_ID const WINABLEAPI = "DECLSPEC_IMPORT" const WINADVAPI = "DECLSPEC_IMPORT" const WINAPIV = "__cdecl" const WINAPI_FAMILY = 3 const WINAPI_FAMILY_APP = 2 const WINAPI_FAMILY_DESKTOP_APP = 3 const WINAPI_PARTITION_APP = 2 const WINAPI_PARTITION_DESKTOP = 1 const WINBASEAPI = "DECLSPEC_IMPORT" type WINBOOL = TWINBOOL const WINCFGMGR32API = "DECLSPEC_IMPORT" const WINCOMMCTRLAPI = "DECLSPEC_IMPORT" const WINCOMMDLGAPI = "DECLSPEC_IMPORT" const WINCRYPT32API = "WINIMPM" const WINCRYPT32STRINGAPI = "WINIMPM" const WINDEVQUERYAPI = "DECLSPEC_IMPORT" const WINDING = 2 type WINDOWINFO = TWINDOWINFO type WINDOWPLACEMENT = TWINDOWPLACEMENT type WINDOWPOS = TWINDOWPOS const WINDOW_BUFFER_SIZE_EVENT = 4 type WINDOW_BUFFER_SIZE_RECORD = TWINDOW_BUFFER_SIZE_RECORD type WINEVENTPROC = TWINEVENTPROC const WINEVENT_INCONTEXT = 4 const WINEVENT_OUTOFCONTEXT = 0 const WINEVENT_SKIPOWNPROCESS = 2 const WINEVENT_SKIPOWNTHREAD = 1 const WINFILE_PERSIST_WAL = 4 const WINFILE_PSOW = 16 const WINFILE_RDONLY = 2 const WINGDIAPI = "DECLSPEC_IMPORT" const WINIMPM = "DECLSPEC_IMPORT" const WININETINFO_OPTION_LOCK_HANDLE = 65534 const WINMMAPI = "DECLSPEC_IMPORT" const WINNORMALIZEAPI = "DECLSPEC_IMPORT" const WINNT = 1 const WINPATHCCHAPI = "WINBASEAPI" const WINPERF_LOG_DEBUG = 2 const WINPERF_LOG_NONE = 0 const WINPERF_LOG_USER = 1 const WINPERF_LOG_VERBOSE = 3 const WINSHELLAPI = "DECLSPEC_IMPORT" const WINSPOOLAPI = "DECLSPEC_IMPORT" type WINSTAENUMPROC = TWINSTAENUMPROC type WINSTAENUMPROCA = TWINSTAENUMPROCA type WINSTAENUMPROCW = TWINSTAENUMPROCW const WINSTA_ACCESSCLIPBOARD = 4 const WINSTA_ACCESSGLOBALATOMS = 32 const WINSTA_ALL_ACCESS = 895 const WINSTA_CREATEDESKTOP = 8 const WINSTA_ENUMDESKTOPS = 1 const WINSTA_ENUMERATE = 256 const WINSTA_EXITWINDOWS = 64 const WINSTA_READATTRIBUTES = 2 const WINSTA_READSCREEN = 512 const WINSTA_WRITEATTRIBUTES = 16 const WINSTORAGEAPI = "DECLSPEC_IMPORT" const WINSWDEVICEAPI = "DECLSPEC_IMPORT" const WINT_MAX = 65535 const WINUSERAPI = "DECLSPEC_IMPORT" const WINVER = 2560 const WIN_SHM_BASE = 120 const WIN_SHM_DMS = 128 const WIZ_BODYCX = 184 const WIZ_BODYX = 92 const WIZ_CXBMP = 80 const WIZ_CXDLG = 276 const WIZ_CYDLG = 140 const WMSZ_BOTTOM = 6 const WMSZ_BOTTOMLEFT = 7 const WMSZ_BOTTOMRIGHT = 8 const WMSZ_LEFT = 1 const WMSZ_RIGHT = 2 const WMSZ_TOP = 3 const WMSZ_TOPLEFT = 4 const WMSZ_TOPRIGHT = 5 const WM_ACTIVATE = 6 const WM_ACTIVATEAPP = 28 const WM_AFXFIRST = 864 const WM_AFXLAST = 895 const WM_APP = 32768 const WM_APPCOMMAND = 793 const WM_ASKCBFORMATNAME = 780 const WM_CANCELJOURNAL = 75 const WM_CANCELMODE = 31 const WM_CAPTURECHANGED = 533 const WM_CHANGECBCHAIN = 781 const WM_CHANGEUISTATE = 295 const WM_CHAR = 258 const WM_CHARTOITEM = 47 const WM_CHILDACTIVATE = 34 const WM_CHOOSEFONT_GETLOGFONT = 1025 const WM_CHOOSEFONT_SETFLAGS = 1126 const WM_CHOOSEFONT_SETLOGFONT = 1125 const WM_CLEAR = 771 const WM_CLIPBOARDUPDATE = 797 const WM_CLOSE = 16 const WM_COMMAND = 273 const WM_COMMNOTIFY = 68 const WM_COMPACTING = 65 const WM_COMPAREITEM = 57 const WM_CONTEXTMENU = 123 const WM_COPY = 769 const WM_COPYDATA = 74 const WM_CREATE = 1 const WM_CTLCOLORBTN = 309 const WM_CTLCOLORDLG = 310 const WM_CTLCOLOREDIT = 307 const WM_CTLCOLORLISTBOX = 308 const WM_CTLCOLORMSGBOX = 306 const WM_CTLCOLORSCROLLBAR = 311 const WM_CTLCOLORSTATIC = 312 const WM_CUT = 768 const WM_DDE_ACK = 996 const WM_DDE_ADVISE = 994 const WM_DDE_DATA = 997 const WM_DDE_EXECUTE = 1000 const WM_DDE_FIRST = 992 const WM_DDE_INITIATE = 992 const WM_DDE_LAST = 1000 const WM_DDE_POKE = 999 const WM_DDE_REQUEST = 998 const WM_DDE_TERMINATE = 993 const WM_DDE_UNADVISE = 995 const WM_DEADCHAR = 259 const WM_DELETEITEM = 45 const WM_DESTROY = 2 const WM_DESTROYCLIPBOARD = 775 const WM_DEVICECHANGE = 537 const WM_DEVMODECHANGE = 27 const WM_DISPLAYCHANGE = 126 const WM_DPICHANGED = 736 const WM_DPICHANGED_AFTERPARENT = 739 const WM_DPICHANGED_BEFOREPARENT = 738 const WM_DRAWCLIPBOARD = 776 const WM_DRAWITEM = 43 const WM_DROPFILES = 563 const WM_DWMCOLORIZATIONCOLORCHANGED = 800 const WM_DWMCOMPOSITIONCHANGED = 798 const WM_DWMNCRENDERINGCHANGED = 799 const WM_DWMSENDICONICLIVEPREVIEWBITMAP = 806 const WM_DWMSENDICONICTHUMBNAIL = 803 const WM_DWMWINDOWMAXIMIZEDCHANGE = 801 const WM_ENABLE = 10 const WM_ENDSESSION = 22 const WM_ENTERIDLE = 289 const WM_ENTERMENULOOP = 529 const WM_ENTERSIZEMOVE = 561 const WM_ERASEBKGND = 20 const WM_EXITMENULOOP = 530 const WM_EXITSIZEMOVE = 562 const WM_FONTCHANGE = 29 const WM_GESTURE = 281 const WM_GESTURENOTIFY = 282 const WM_GETDLGCODE = 135 const WM_GETDPISCALEDSIZE = 740 const WM_GETFONT = 49 const WM_GETHOTKEY = 51 const WM_GETICON = 127 const WM_GETMINMAXINFO = 36 const WM_GETOBJECT = 61 const WM_GETTEXT = 13 const WM_GETTEXTLENGTH = 14 const WM_GETTITLEBARINFOEX = 831 const WM_HANDHELDFIRST = 856 const WM_HANDHELDLAST = 863 const WM_HELP = 83 const WM_HOTKEY = 786 const WM_HSCROLL = 276 const WM_HSCROLLCLIPBOARD = 782 const WM_ICONERASEBKGND = 39 const WM_IME_CHAR = 646 const WM_IME_COMPOSITION = 271 const WM_IME_COMPOSITIONFULL = 644 const WM_IME_CONTROL = 643 const WM_IME_ENDCOMPOSITION = 270 const WM_IME_KEYDOWN = 656 const WM_IME_KEYLAST = 271 const WM_IME_KEYUP = 657 const WM_IME_NOTIFY = 642 const WM_IME_REQUEST = 648 const WM_IME_SELECT = 645 const WM_IME_SETCONTEXT = 641 const WM_IME_STARTCOMPOSITION = 269 const WM_INITDIALOG = 272 const WM_INITMENU = 278 const WM_INITMENUPOPUP = 279 const WM_INPUT = 255 const WM_INPUTLANGCHANGE = 81 const WM_INPUTLANGCHANGEREQUEST = 80 const WM_INPUT_DEVICE_CHANGE = 254 const WM_KEYDOWN = 256 const WM_KEYFIRST = 256 const WM_KEYLAST = 265 const WM_KEYUP = 257 const WM_KILLFOCUS = 8 const WM_LBUTTONDBLCLK = 515 const WM_LBUTTONDOWN = 513 const WM_LBUTTONUP = 514 const WM_MBUTTONDBLCLK = 521 const WM_MBUTTONDOWN = 519 const WM_MBUTTONUP = 520 const WM_MDIACTIVATE = 546 const WM_MDICASCADE = 551 const WM_MDICREATE = 544 const WM_MDIDESTROY = 545 const WM_MDIGETACTIVE = 553 const WM_MDIICONARRANGE = 552 const WM_MDIMAXIMIZE = 549 const WM_MDINEXT = 548 const WM_MDIREFRESHMENU = 564 const WM_MDIRESTORE = 547 const WM_MDISETMENU = 560 const WM_MDITILE = 550 const WM_MEASUREITEM = 44 const WM_MENUCHAR = 288 const WM_MENUCOMMAND = 294 const WM_MENUDRAG = 291 const WM_MENUGETOBJECT = 292 const WM_MENURBUTTONUP = 290 const WM_MENUSELECT = 287 const WM_MOUSEACTIVATE = 33 const WM_MOUSEFIRST = 512 const WM_MOUSEHOVER = 673 const WM_MOUSEHWHEEL = 526 const WM_MOUSELAST = 526 const WM_MOUSELEAVE = 675 const WM_MOUSEMOVE = 512 const WM_MOUSEWHEEL = 522 const WM_MOVE = 3 const WM_MOVING = 534 const WM_NCACTIVATE = 134 const WM_NCCALCSIZE = 131 const WM_NCCREATE = 129 const WM_NCDESTROY = 130 const WM_NCHITTEST = 132 const WM_NCLBUTTONDBLCLK = 163 const WM_NCLBUTTONDOWN = 161 const WM_NCLBUTTONUP = 162 const WM_NCMBUTTONDBLCLK = 169 const WM_NCMBUTTONDOWN = 167 const WM_NCMBUTTONUP = 168 const WM_NCMOUSEHOVER = 672 const WM_NCMOUSELEAVE = 674 const WM_NCMOUSEMOVE = 160 const WM_NCPAINT = 133 const WM_NCPOINTERDOWN = 578 const WM_NCPOINTERUP = 579 const WM_NCPOINTERUPDATE = 577 const WM_NCRBUTTONDBLCLK = 166 const WM_NCRBUTTONDOWN = 164 const WM_NCRBUTTONUP = 165 const WM_NCXBUTTONDBLCLK = 173 const WM_NCXBUTTONDOWN = 171 const WM_NCXBUTTONUP = 172 const WM_NEXTDLGCTL = 40 const WM_NEXTMENU = 531 const WM_NOTIFY = 78 const WM_NOTIFYFORMAT = 85 const WM_NULL = 0 const WM_PAINT = 15 const WM_PAINTCLIPBOARD = 777 const WM_PAINTICON = 38 const WM_PALETTECHANGED = 785 const WM_PALETTEISCHANGING = 784 const WM_PARENTNOTIFY = 528 const WM_PASTE = 770 const WM_PENWINFIRST = 896 const WM_PENWINLAST = 911 const WM_POINTERACTIVATE = 587 const WM_POINTERCAPTURECHANGED = 588 const WM_POINTERDEVICECHANGE = 568 const WM_POINTERDEVICEINRANGE = 569 const WM_POINTERDEVICEOUTOFRANGE = 570 const WM_POINTERDOWN = 582 const WM_POINTERENTER = 585 const WM_POINTERHWHEEL = 591 const WM_POINTERLEAVE = 586 const WM_POINTERROUTEDAWAY = 594 const WM_POINTERROUTEDRELEASED = 595 const WM_POINTERROUTEDTO = 593 const WM_POINTERUP = 583 const WM_POINTERUPDATE = 581 const WM_POINTERWHEEL = 590 const WM_POWER = 72 const WM_POWERBROADCAST = 536 const WM_PRINT = 791 const WM_PRINTCLIENT = 792 const WM_PSD_ENVSTAMPRECT = 1029 const WM_PSD_FULLPAGERECT = 1025 const WM_PSD_GREEKTEXTRECT = 1028 const WM_PSD_MARGINRECT = 1027 const WM_PSD_MINMARGINRECT = 1026 const WM_PSD_PAGESETUPDLG = 1024 const WM_PSD_YAFULLPAGERECT = 1030 const WM_QUERYDRAGICON = 55 const WM_QUERYENDSESSION = 17 const WM_QUERYNEWPALETTE = 783 const WM_QUERYOPEN = 19 const WM_QUERYUISTATE = 297 const WM_QUEUESYNC = 35 const WM_QUIT = 18 const WM_RBUTTONDBLCLK = 518 const WM_RBUTTONDOWN = 516 const WM_RBUTTONUP = 517 const WM_RENDERALLFORMATS = 774 const WM_RENDERFORMAT = 773 const WM_SETCURSOR = 32 const WM_SETFOCUS = 7 const WM_SETFONT = 48 const WM_SETHOTKEY = 50 const WM_SETICON = 128 const WM_SETREDRAW = 11 const WM_SETTEXT = 12 const WM_SETTINGCHANGE = 26 const WM_SHOWWINDOW = 24 const WM_SIZE = 5 const WM_SIZECLIPBOARD = 779 const WM_SIZING = 532 const WM_SPOOLERSTATUS = 42 const WM_STYLECHANGED = 125 const WM_STYLECHANGING = 124 const WM_SYNCPAINT = 136 const WM_SYSCHAR = 262 const WM_SYSCOLORCHANGE = 21 const WM_SYSCOMMAND = 274 const WM_SYSDEADCHAR = 263 const WM_SYSKEYDOWN = 260 const WM_SYSKEYUP = 261 const WM_TABLET_FIRST = 704 const WM_TABLET_LAST = 735 const WM_TCARD = 82 const WM_THEMECHANGED = 794 const WM_TIMECHANGE = 30 const WM_TIMER = 275 const WM_TOUCH = 576 const WM_TOUCHHITTESTING = 589 const WM_UNDO = 772 const WM_UNICHAR = 265 const WM_UNINITMENUPOPUP = 293 const WM_UPDATEUISTATE = 296 const WM_USER = 1024 const WM_USERCHANGED = 84 const WM_VKEYTOITEM = 46 const WM_VSCROLL = 277 const WM_VSCROLLCLIPBOARD = 778 const WM_WINDOWPOSCHANGED = 71 const WM_WINDOWPOSCHANGING = 70 const WM_WININICHANGE = 26 const WM_WTSSESSION_CHANGE = 689 const WM_XBUTTONDBLCLK = 525 const WM_XBUTTONDOWN = 523 const WM_XBUTTONUP = 524 const WNCON_DYNAMIC = 8 const WNCON_FORNETCARD = 1 const WNCON_NOTROUTED = 2 const WNCON_SLOWLINK = 4 type WNDCLASS = TWNDCLASS type WNDCLASSA = TWNDCLASSA type WNDCLASSEX = TWNDCLASSEX type WNDCLASSEXA = TWNDCLASSEXA type WNDCLASSEXW = TWNDCLASSEXW type WNDCLASSW = TWNDCLASSW type WNDENUMPROC = TWNDENUMPROC type WNDPROC = TWNDPROC const WNFMT_ABBREVIATED = 2 const WNFMT_CONNECTION = 32 const WNFMT_INENUM = 16 const WNFMT_MULTILINE = 1 const WNNC_CRED_MANAGER = 4294901760 const WNNC_NET_10NET = 327680 const WNNC_NET_3IN1 = 2555904 const WNNC_NET_9TILES = 589824 const WNNC_NET_APPLETALK = 1245184 const WNNC_NET_AS400 = 720896 const WNNC_NET_AVID = 1703936 const WNNC_NET_AVID1 = 3801088 const WNNC_NET_BMC = 1572864 const WNNC_NET_BWNFS = 1048576 const WNNC_NET_CLEARCASE = 1441792 const WNNC_NET_COGENT = 1114112 const WNNC_NET_CSC = 2490368 const WNNC_NET_DAV = 3014656 const WNNC_NET_DCE = 1638400 const WNNC_NET_DECORB = 2097152 const WNNC_NET_DFS = 3866624 const WNNC_NET_DISTINCT = 2293760 const WNNC_NET_DOCUSPACE = 1769472 const WNNC_NET_DRIVEONWEB = 4063232 const WNNC_NET_EXIFS = 2949120 const WNNC_NET_EXTENDNET = 2686976 const WNNC_NET_FARALLON = 1179648 const WNNC_NET_FJ_REDIR = 2228224 const WNNC_NET_FOXBAT = 2818048 const WNNC_NET_FRONTIER = 1507328 const WNNC_NET_FTP_NFS = 786432 const WNNC_NET_GOOGLE = 4390912 const WNNC_NET_HOB_NFS = 3276800 const WNNC_NET_IBMAL = 3407872 const WNNC_NET_INTERGRAPH = 1310720 const WNNC_NET_KNOWARE = 3080192 const WNNC_NET_KWNP = 3932160 const WNNC_NET_LANMAN = 131072 const WNNC_NET_LANSTEP = 524288 const WNNC_NET_LANTASTIC = 655360 const WNNC_NET_LIFENET = 917504 const WNNC_NET_LOCK = 3473408 const WNNC_NET_LOCUS = 393216 const WNNC_NET_MANGOSOFT = 1835008 const WNNC_NET_MASFAX = 3211264 const WNNC_NET_MFILES = 4259840 const WNNC_NET_MSNET = 65536 const WNNC_NET_MS_NFS = 4325376 const WNNC_NET_NDFS = 4456448 const WNNC_NET_NETWARE = 196608 const WNNC_NET_OBJECT_DIRE = 3145728 const WNNC_NET_OPENAFS = 3735552 const WNNC_NET_PATHWORKS = 851968 const WNNC_NET_POWERLAN = 983040 const WNNC_NET_PROTSTOR = 2162688 const WNNC_NET_QUINCY = 3670016 const WNNC_NET_RDR2SAMPLE = 2424832 const WNNC_NET_RIVERFRONT1 = 1966080 const WNNC_NET_RIVERFRONT2 = 2031616 const WNNC_NET_RSFX = 4194304 const WNNC_NET_SERNET = 1900544 const WNNC_NET_SHIVA = 3342336 const WNNC_NET_SMB = 131072 const WNNC_NET_SRT = 3604480 const WNNC_NET_STAC = 2752512 const WNNC_NET_SUN_PC_NFS = 458752 const WNNC_NET_SYMFONET = 1376256 const WNNC_NET_TERMSRV = 3538944 const WNNC_NET_TWINS = 2359296 const WNNC_NET_VINES = 262144 const WNNC_NET_VMWARE = 4128768 const WNNC_NET_YAHOO = 2883584 const WNNC_NET_ZENWORKS = 3997696 const WN_ACCESS_DENIED = 5 const WN_ALREADY_CONNECTED = 85 const WN_BAD_DEV_TYPE = 66 const WN_BAD_HANDLE = 6 const WN_BAD_LEVEL = 124 const WN_BAD_LOCALNAME = 1200 const WN_BAD_NETNAME = 67 const WN_BAD_PASSWORD = 86 const WN_BAD_POINTER = 487 const WN_BAD_PROFILE = 1206 const WN_BAD_PROVIDER = 1204 const WN_BAD_USER = 2202 const WN_BAD_VALUE = 87 const WN_CANCEL = 1223 const WN_CANNOT_OPEN_PROFILE = 1205 const WN_CONNECTED_OTHER_PASSWORD = 2108 const WN_CONNECTED_OTHER_PASSWORD_DEFAULT = 2109 const WN_CONNECTION_CLOSED = 1201 const WN_DEVICE_ALREADY_REMEMBERED = 1202 const WN_DEVICE_ERROR = 31 const WN_DEVICE_IN_USE = 2404 const WN_EXTENDED_ERROR = 1208 const WN_FUNCTION_BUSY = 170 const WN_MORE_DATA = 234 const WN_NET_ERROR = 59 const WN_NOT_AUTHENTICATED = 1244 const WN_NOT_CONNECTED = 2250 const WN_NOT_CONTAINER = 1207 const WN_NOT_INITIALIZING = 1247 const WN_NOT_LOGGED_ON = 1245 const WN_NOT_SUPPORTED = 50 const WN_NOT_VALIDATED = 1311 const WN_NO_ERROR = 0 const WN_NO_MORE_DEVICES = 1248 const WN_NO_MORE_ENTRIES = 259 const WN_NO_NETWORK = 1222 const WN_NO_NET_OR_BAD_PATH = 1203 const WN_OPEN_FILES = 2401 const WN_OUT_OF_MEMORY = 8 const WN_RETRY = 1237 const WN_SUCCESS = 0 const WN_WINDOWS_ERROR = 59 const WNetAddConnection = 0 const WNetAddConnection2 = 0 const WNetAddConnection3 = 0 const WNetCancelConnection = 0 const WNetCancelConnection2 = 0 const WNetConnectionDialog1 = 0 const WNetDisconnectDialog1 = 0 const WNetEnumResource = 0 const WNetGetConnection = 0 const WNetGetLastError = 0 const WNetGetNetworkInformation = 0 const WNetGetProviderName = 0 const WNetGetResourceInformation = 0 const WNetGetResourceParent = 0 const WNetGetUniversalName = 0 const WNetGetUser = 0 const WNetOpenEnum = 0 const WNetRestoreConnection = 0 const WNetUseConnection = 0 const WOF_CURRENT_VERSION = 1 type WOF_EXTERNAL_INFO = TWOF_EXTERNAL_INFO const WOF_PROVIDER_FILE = 2 const WOM_CLOSE = 956 const WOM_DONE = 957 const WOM_OPEN = 955 type WORD = TWORD type WORD_BLOB = TWORD_BLOB type WORD_SIZEDARR = TWORD_SIZEDARR type WORKERCALLBACKFUNC = TWORKERCALLBACKFUNC type WOW64_CONTEXT = TWOW64_CONTEXT const WOW64_CONTEXT_ALL = 65599 const WOW64_CONTEXT_CONTROL = 65537 const WOW64_CONTEXT_DEBUG_REGISTERS = 65552 const WOW64_CONTEXT_EXCEPTION_ACTIVE = 134217728 const WOW64_CONTEXT_EXCEPTION_REPORTING = 2147483648 const WOW64_CONTEXT_EXCEPTION_REQUEST = 1073741824 const WOW64_CONTEXT_EXTENDED_REGISTERS = 65568 const WOW64_CONTEXT_FLOATING_POINT = 65544 const WOW64_CONTEXT_FULL = 65543 const WOW64_CONTEXT_INTEGER = 65538 const WOW64_CONTEXT_SEGMENTS = 65540 const WOW64_CONTEXT_SERVICE_ACTIVE = 268435456 const WOW64_CONTEXT_XSTATE = 65600 const WOW64_CONTEXT_i386 = 65536 const WOW64_CONTEXT_i486 = 65536 type WOW64_DESCRIPTOR_TABLE_ENTRY = TWOW64_DESCRIPTOR_TABLE_ENTRY type WOW64_FLOATING_SAVE_AREA = TWOW64_FLOATING_SAVE_AREA type WOW64_LDT_ENTRY = TWOW64_LDT_ENTRY const WOW64_MAXIMUM_SUPPORTED_EXTENSION = 512 const WOW64_SIZE_OF_80387_REGISTERS = 80 type WPARAM = TWPARAM const WPF_ASYNCWINDOWPLACEMENT = 4 const WPF_RESTORETOMAXIMIZED = 2 const WPF_SETMINPOSITION = 1 type WRITE_CACHE_CHANGE = TWRITE_CACHE_CHANGE type WRITE_CACHE_ENABLE = TWRITE_CACHE_ENABLE type WRITE_CACHE_TYPE = TWRITE_CACHE_TYPE const WRITE_COMPRESSION_INFO_VALID = 16 const WRITE_DAC = 262144 const WRITE_OWNER = 524288 const WRITE_RESTRICTED = 8 type WRITE_THROUGH = TWRITE_THROUGH const WRITE_WATCH_FLAG_RESET = 1 const WSABASEERR = 10000 type WSADATA = TWSADATA const WSADESCRIPTION_LEN = 256 type WSAData = TWSAData const WSAEACCES = 10013 const WSAEADDRINUSE = 10048 const WSAEADDRNOTAVAIL = 10049 const WSAEAFNOSUPPORT = 10047 const WSAEALREADY = 10037 const WSAEBADF = 10009 const WSAECANCELLED = 10103 const WSAECONNABORTED = 10053 const WSAECONNREFUSED = 10061 const WSAECONNRESET = 10054 const WSAEDESTADDRREQ = 10039 const WSAEDISCON = 10101 const WSAEDQUOT = 10069 const WSAEFAULT = 10014 const WSAEHOSTDOWN = 10064 const WSAEHOSTUNREACH = 10065 const WSAEINPROGRESS = 10036 const WSAEINTR = 10004 const WSAEINVAL = 10022 const WSAEINVALIDPROCTABLE = 10104 const WSAEINVALIDPROVIDER = 10105 const WSAEISCONN = 10056 const WSAELOOP = 10062 const WSAEMFILE = 10024 const WSAEMSGSIZE = 10040 const WSAENAMETOOLONG = 10063 const WSAENETDOWN = 10050 const WSAENETRESET = 10052 const WSAENETUNREACH = 10051 const WSAENOBUFS = 10055 const WSAENOMORE = 10102 const WSAENOPROTOOPT = 10042 const WSAENOTCONN = 10057 const WSAENOTEMPTY = 10066 const WSAENOTSOCK = 10038 const WSAEOPNOTSUPP = 10045 const WSAEPFNOSUPPORT = 10046 const WSAEPROCLIM = 10067 const WSAEPROTONOSUPPORT = 10043 const WSAEPROTOTYPE = 10041 const WSAEPROVIDERFAILEDINIT = 10106 const WSAEREFUSED = 10112 const WSAEREMOTE = 10071 const WSAESHUTDOWN = 10058 const WSAESOCKTNOSUPPORT = 10044 const WSAESTALE = 10070 const WSAETIMEDOUT = 10060 const WSAETOOMANYREFS = 10059 const WSAEUSERS = 10068 const WSAEWOULDBLOCK = 10035 const WSAHOST_NOT_FOUND = 11001 const WSANOTINITIALISED = 10093 const WSANO_ADDRESS = 11004 const WSANO_DATA = 11004 const WSANO_RECOVERY = 11003 const WSASERVICE_NOT_FOUND = 10108 const WSASYSCALLFAILURE = 10107 const WSASYSNOTREADY = 10091 const WSASYS_STATUS_LEN = 128 const WSATRY_AGAIN = 11002 const WSATYPE_NOT_FOUND = 10109 const WSAVERNOTSUPPORTED = 10092 const WSA_E_CANCELLED = 10111 const WSA_E_NO_MORE = 10110 const WSA_QOS_ADMISSION_FAILURE = 11010 const WSA_QOS_BAD_OBJECT = 11013 const WSA_QOS_BAD_STYLE = 11012 const WSA_QOS_EFILTERCOUNT = 11021 const WSA_QOS_EFILTERSTYLE = 11019 const WSA_QOS_EFILTERTYPE = 11020 const WSA_QOS_EFLOWCOUNT = 11023 const WSA_QOS_EFLOWDESC = 11026 const WSA_QOS_EFLOWSPEC = 11017 const WSA_QOS_EOBJLENGTH = 11022 const WSA_QOS_EPOLICYOBJ = 11025 const WSA_QOS_EPROVSPECBUF = 11018 const WSA_QOS_EPSFILTERSPEC = 11028 const WSA_QOS_EPSFLOWSPEC = 11027 const WSA_QOS_ESDMODEOBJ = 11029 const WSA_QOS_ESERVICETYPE = 11016 const WSA_QOS_ESHAPERATEOBJ = 11030 const WSA_QOS_EUNKNOWNPSOBJ = 11024 const WSA_QOS_EUNKOWNPSOBJ = 11024 const WSA_QOS_GENERIC_ERROR = 11015 const WSA_QOS_NO_RECEIVERS = 11008 const WSA_QOS_NO_SENDERS = 11007 const WSA_QOS_POLICY_FAILURE = 11011 const WSA_QOS_RECEIVERS = 11005 const WSA_QOS_REQUEST_CONFIRMED = 11009 const WSA_QOS_RESERVED_PETYPE = 11031 const WSA_QOS_SENDERS = 11006 const WSA_QOS_TRAFFIC_CTRL_ERROR = 11014 const WSF_VISIBLE = 1 const WS_ACTIVECAPTION = 1 const WS_BORDER = 8388608 const WS_CAPTION = 12582912 const WS_CHILD = 1073741824 const WS_CHILDWINDOW = 1073741824 const WS_CLIPCHILDREN = 33554432 const WS_CLIPSIBLINGS = 67108864 const WS_DISABLED = 134217728 const WS_DLGFRAME = 4194304 const WS_EX_ACCEPTFILES = 16 const WS_EX_APPWINDOW = 262144 const WS_EX_CLIENTEDGE = 512 const WS_EX_COMPOSITED = 33554432 const WS_EX_CONTEXTHELP = 1024 const WS_EX_CONTROLPARENT = 65536 const WS_EX_DLGMODALFRAME = 1 const WS_EX_LAYERED = 524288 const WS_EX_LAYOUTRTL = 4194304 const WS_EX_LEFT = 0 const WS_EX_LEFTSCROLLBAR = 16384 const WS_EX_LTRREADING = 0 const WS_EX_MDICHILD = 64 const WS_EX_NOACTIVATE = 134217728 const WS_EX_NOINHERITLAYOUT = 1048576 const WS_EX_NOPARENTNOTIFY = 4 const WS_EX_NOREDIRECTIONBITMAP = 2097152 const WS_EX_OVERLAPPEDWINDOW = 768 const WS_EX_PALETTEWINDOW = 392 const WS_EX_RIGHT = 4096 const WS_EX_RIGHTSCROLLBAR = 0 const WS_EX_RTLREADING = 8192 const WS_EX_STATICEDGE = 131072 const WS_EX_TOOLWINDOW = 128 const WS_EX_TOPMOST = 8 const WS_EX_TRANSPARENT = 32 const WS_EX_WINDOWEDGE = 256 const WS_GROUP = 131072 const WS_HSCROLL = 1048576 const WS_ICONIC = 536870912 const WS_MAXIMIZE = 16777216 const WS_MAXIMIZEBOX = 65536 const WS_MINIMIZE = 536870912 const WS_MINIMIZEBOX = 131072 const WS_OVERLAPPED = 0 const WS_OVERLAPPEDWINDOW = 13565952 const WS_POPUP = 2147483648 const WS_POPUPWINDOW = 2156396544 const WS_SIZEBOX = 262144 const WS_SYSMENU = 524288 const WS_TABSTOP = 65536 const WS_THICKFRAME = 262144 const WS_TILED = 0 const WS_TILEDWINDOW = 13565952 const WS_VISIBLE = 268435456 const WS_VSCROLL = 2097152 type WTSSESSION_NOTIFICATION = TWTSSESSION_NOTIFICATION const WTS_CONSOLE_CONNECT = 1 const WTS_CONSOLE_DISCONNECT = 2 const WTS_REMOTE_CONNECT = 3 const WTS_REMOTE_DISCONNECT = 4 const WTS_SESSION_CREATE = 10 const WTS_SESSION_LOCK = 7 const WTS_SESSION_LOGOFF = 6 const WTS_SESSION_LOGON = 5 const WTS_SESSION_REMOTE_CONTROL = 9 const WTS_SESSION_TERMINATE = 11 const WTS_SESSION_UNLOCK = 8 const WT_EXECUTEDEFAULT = 0 const WT_EXECUTEDELETEWAIT = 8 const WT_EXECUTEINIOTHREAD = 1 const WT_EXECUTEINLONGTHREAD = 16 const WT_EXECUTEINPERSISTENTIOTHREAD = 64 const WT_EXECUTEINPERSISTENTTHREAD = 128 const WT_EXECUTEINTIMERTHREAD = 32 const WT_EXECUTEINUITHREAD = 2 const WT_EXECUTEINWAITTHREAD = 4 const WT_EXECUTELONGFUNCTION = 16 const WT_EXECUTEONLYONCE = 8 const WT_TRANSFER_IMPERSONATION = 256 const WVR_ALIGNBOTTOM = 64 const WVR_ALIGNLEFT = 32 const WVR_ALIGNRIGHT = 128 const WVR_ALIGNTOP = 16 const WVR_HREDRAW = 256 const WVR_REDRAW = 768 const WVR_VALIDRECTS = 1024 const WVR_VREDRAW = 512 const WaitNamedPipe = 0 const WinHelp = 0 const WriteConsole = 0 const WriteConsoleInput = 0 const WriteConsoleOutput = 0 const WriteConsoleOutputCharacter = 0 const WriteOnceDiskClassGuid = 0 const WritePrivateProfileSection = 0 const WritePrivateProfileString = 0 const WritePrivateProfileStruct = 0 const WriteProfileSection = 0 const WriteProfileString = 0 const X3_BTYPE_QP_INST_VAL_POS_X = 0 const X3_BTYPE_QP_INST_WORD_POS_X = 23 const X3_BTYPE_QP_INST_WORD_X = 2 const X3_BTYPE_QP_SIZE_X = 9 const X3_D_WH_INST_WORD_POS_X = 24 const X3_D_WH_INST_WORD_X = 3 const X3_D_WH_SIGN_VAL_POS_X = 0 const X3_D_WH_SIZE_X = 3 const X3_EMPTY_INST_VAL_POS_X = 0 const X3_EMPTY_INST_WORD_POS_X = 14 const X3_EMPTY_INST_WORD_X = 1 const X3_EMPTY_SIZE_X = 2 const X3_IMM20_INST_WORD_POS_X = 4 const X3_IMM20_INST_WORD_X = 3 const X3_IMM20_SIGN_VAL_POS_X = 0 const X3_IMM20_SIZE_X = 20 const X3_IMM39_1_INST_WORD_POS_X = 0 const X3_IMM39_1_INST_WORD_X = 2 const X3_IMM39_1_SIGN_VAL_POS_X = 36 const X3_IMM39_1_SIZE_X = 23 const X3_IMM39_2_INST_WORD_POS_X = 16 const X3_IMM39_2_INST_WORD_X = 1 const X3_IMM39_2_SIGN_VAL_POS_X = 20 const X3_IMM39_2_SIZE_X = 16 const X3_I_INST_WORD_POS_X = 27 const X3_I_INST_WORD_X = 3 const X3_I_SIGN_VAL_POS_X = 59 const X3_I_SIZE_X = 1 const X3_OPCODE_INST_WORD_POS_X = 28 const X3_OPCODE_INST_WORD_X = 3 const X3_OPCODE_SIGN_VAL_POS_X = 0 const X3_OPCODE_SIZE_X = 4 const X3_P_INST_WORD_POS_X = 0 const X3_P_INST_WORD_X = 3 const X3_P_SIGN_VAL_POS_X = 0 const X3_P_SIZE_X = 4 const X3_TMPLT_INST_WORD_POS_X = 0 const X3_TMPLT_INST_WORD_X = 0 const X3_TMPLT_SIGN_VAL_POS_X = 0 const X3_TMPLT_SIZE_X = 4 const X509_ANY_STRING = "X509_NAME_VALUE" const X509_ASN_ENCODING = 1 const X509_CRL_REASON_CODE = "X509_ENUMERATED" const X509_DH_PUBLICKEY = "X509_MULTI_BYTE_UINT" const X509_DSS_PUBLICKEY = "X509_MULTI_BYTE_UINT" const X509_NDR_ENCODING = 2 const X509_SUBJECT_INFO_ACCESS = "X509_AUTHORITY_INFO_ACCESS" const X509_UNICODE_ANY_STRING = "X509_UNICODE_NAME_VALUE" const XACT_E_FIRST = 2147799040 const XACT_E_LAST = 2147799081 const XACT_S_FIRST = 315392 const XACT_S_LAST = 315408 const XBUTTON1 = 1 const XBUTTON2 = 2 const XCLASS_BOOL = 4096 const XCLASS_DATA = 8192 const XCLASS_FLAGS = 16384 const XCLASS_MASK = 64512 const XCLASS_NOTIFICATION = 32768 type XFORM = TXFORM type XLAT_SIDE = TXLAT_SIDE type XMIT_HELPER_ROUTINE = TXMIT_HELPER_ROUTINE type XMIT_ROUTINE_QUINTUPLE = TXMIT_ROUTINE_QUINTUPLE type XMLDOMDocumentEvents = TXMLDOMDocumentEvents type XMLDOMDocumentEventsVtbl = TXMLDOMDocumentEventsVtbl type XMLELEM_TYPE = TXMLELEM_TYPE type XML_ERROR = TXML_ERROR type XSAVE_AREA = TXSAVE_AREA type XSAVE_AREA_HEADER = TXSAVE_AREA_HEADER type XSAVE_FORMAT = TXSAVE_FORMAT const XSTATE_AMX_TILE_CONFIG = 17 const XSTATE_AMX_TILE_DATA = 18 const XSTATE_AVX = 2 const XSTATE_AVX512_KMASK = 5 const XSTATE_AVX512_ZMM = 7 const XSTATE_AVX512_ZMM_H = 6 const XSTATE_CET_S = 12 const XSTATE_CET_U = 11 type XSTATE_CONFIGURATION = TXSTATE_CONFIGURATION type XSTATE_CONTEXT = TXSTATE_CONTEXT type XSTATE_FEATURE = TXSTATE_FEATURE const XSTATE_GSSE = 2 const XSTATE_IPT = 8 const XSTATE_LEGACY_FLOATING_POINT = 0 const XSTATE_LEGACY_SSE = 1 const XSTATE_LWP = 62 const XSTATE_MASK_AMX_TILE_CONFIG = 131072 const XSTATE_MASK_AMX_TILE_DATA = 262144 const XSTATE_MASK_AVX = 4 const XSTATE_MASK_AVX512 = 224 const XSTATE_MASK_CET_S = 4096 const XSTATE_MASK_CET_U = 2048 const XSTATE_MASK_GSSE = 4 const XSTATE_MASK_IPT = 256 const XSTATE_MASK_LARGE_FEATURES = 262144 const XSTATE_MASK_LEGACY = 3 const XSTATE_MASK_LEGACY_FLOATING_POINT = 1 const XSTATE_MASK_LEGACY_SSE = 2 const XSTATE_MASK_LWP = 4611686018427387904 const XSTATE_MASK_MPX = 24 const XSTATE_MASK_PASID = 1024 const XSTATE_MASK_PERSISTENT = 4611686018427387920 const XSTATE_MASK_USER_VISIBLE_SUPERVISOR = 2048 const XSTATE_MPX_BNDCSR = 4 const XSTATE_MPX_BNDREGS = 3 const XSTATE_PASID = 10 const XST_ADVACKRCVD = 13 const XST_ADVDATAACKRCVD = 16 const XST_ADVDATASENT = 15 const XST_ADVSENT = 11 const XST_CONNECTED = 2 const XST_DATARCVD = 6 const XST_EXECACKRCVD = 10 const XST_EXECSENT = 9 const XST_INCOMPLETE = 1 const XST_INIT1 = 3 const XST_INIT2 = 4 const XST_NULL = 0 const XST_POKEACKRCVD = 8 const XST_POKESENT = 7 const XST_REQSENT = 5 const XST_UNADVACKRCVD = 14 const XST_UNADVSENT = 12 const XTYPF_ACKREQ = 8 const XTYPF_NOBLOCK = 2 const XTYPF_NODATA = 4 const XTYP_ADVDATA = 16400 const XTYP_ADVREQ = 8226 const XTYP_ADVSTART = 4144 const XTYP_ADVSTOP = 32832 const XTYP_CONNECT = 4194 const XTYP_CONNECT_CONFIRM = 32882 const XTYP_DISCONNECT = 32962 const XTYP_ERROR = 32770 const XTYP_EXECUTE = 16464 const XTYP_MASK = 240 const XTYP_MONITOR = 33010 const XTYP_POKE = 16528 const XTYP_REGISTER = 32930 const XTYP_REQUEST = 8368 const XTYP_SHIFT = 4 const XTYP_UNREGISTER = 32978 const XTYP_WILDCONNECT = 8418 const XTYP_XACT_COMPLETE = 32896 const XcvData = 0 // C documentation // // /* // ** Allocate or return the aggregate context for a user function. A new // ** context is allocated on the first call. Subsequent calls return the // ** same context that was returned on prior calls. // */ func Xsqlite3_aggregate_context(tls *libc.TLS, p uintptr, nByte int32) (r uintptr) { if int32((*TMem)(unsafe.Pointer((*Tsqlite3_context)(unsafe.Pointer(p)).FpMem)).Fflags)&int32(MEM_Agg) == 0 { return _createAggContext(tls, p, nByte) } else { return (*TMem)(unsafe.Pointer((*Tsqlite3_context)(unsafe.Pointer(p)).FpMem)).Fz } return r } // C documentation // // /* // ** Return the total number of pages in the source database as of the most // ** recent call to sqlite3_backup_step(). // */ func Xsqlite3_backup_pagecount(tls *libc.TLS, p uintptr) (r int32) { return int32((*Tsqlite3_backup)(unsafe.Pointer(p)).FnPagecount) } // C documentation // // /* // ** Return the number of pages still to be backed up as of the most recent // ** call to sqlite3_backup_step(). // */ func Xsqlite3_backup_remaining(tls *libc.TLS, p uintptr) (r int32) { return int32((*Tsqlite3_backup)(unsafe.Pointer(p)).FnRemaining) } func Xsqlite3_bind_blob64(tls *libc.TLS, pStmt uintptr, i int32, zData uintptr, nData Tsqlite3_uint64, __ccgo_fp_xDel uintptr) (r int32) { return _bindText(tls, pStmt, i, zData, int64(nData), __ccgo_fp_xDel, uint8(0)) } func Xsqlite3_bind_null(tls *libc.TLS, pStmt uintptr, i int32) (r int32) { var p uintptr var rc int32 _, _ = p, rc p = pStmt rc = _vdbeUnbind(tls, p, uint32(i-libc.Int32FromInt32(1))) if rc == SQLITE_OK { /* tag-20240917-01 */ Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer((*TVdbe)(unsafe.Pointer(p)).Fdb)).Fmutex) } return rc } func Xsqlite3_bind_text16(tls *libc.TLS, pStmt uintptr, i int32, zData uintptr, n int32, __ccgo_fp_xDel uintptr) (r int32) { return _bindText(tls, pStmt, i, zData, int64(uint64(n) & ^libc.Uint64FromInt32(1)), __ccgo_fp_xDel, uint8(SQLITE_UTF16LE)) } func Xsqlite3_bind_text64(tls *libc.TLS, pStmt uintptr, i int32, zData uintptr, nData Tsqlite3_uint64, __ccgo_fp_xDel uintptr, enc uint8) (r int32) { if int32(enc) != int32(SQLITE_UTF8) && int32(enc) != int32(SQLITE_UTF8_ZT) { if int32(enc) == int32(SQLITE_UTF16) { enc = uint8(SQLITE_UTF16LE) } nData = nData & ^libc.Uint64FromInt32(1) } return _bindText(tls, pStmt, i, zData, int64(nData), __ccgo_fp_xDel, enc) } func Xsqlite3_bind_value(tls *libc.TLS, pStmt uintptr, i int32, pValue uintptr) (r int32) { var rc int32 var v1 float64 _, _ = rc, v1 switch Xsqlite3_value_type(tls, pValue) { case int32(SQLITE_INTEGER): rc = Xsqlite3_bind_int64(tls, pStmt, i, *(*Ti64)(unsafe.Pointer(pValue))) case int32(SQLITE_FLOAT): if int32((*Tsqlite3_value)(unsafe.Pointer(pValue)).Fflags)&int32(MEM_Real) != 0 { v1 = *(*float64)(unsafe.Pointer(pValue)) } else { v1 = float64(*(*Ti64)(unsafe.Pointer(pValue))) } rc = Xsqlite3_bind_double(tls, pStmt, i, v1) case int32(SQLITE_BLOB): if int32((*Tsqlite3_value)(unsafe.Pointer(pValue)).Fflags)&int32(MEM_Zero) != 0 { rc = Xsqlite3_bind_zeroblob(tls, pStmt, i, *(*int32)(unsafe.Pointer(&(*Tsqlite3_value)(unsafe.Pointer(pValue)).Fu))) } else { rc = Xsqlite3_bind_blob(tls, pStmt, i, (*Tsqlite3_value)(unsafe.Pointer(pValue)).Fz, (*Tsqlite3_value)(unsafe.Pointer(pValue)).Fn, uintptr(-libc.Int32FromInt32(1))) } case int32(SQLITE_TEXT): rc = _bindText(tls, pStmt, i, (*Tsqlite3_value)(unsafe.Pointer(pValue)).Fz, int64((*Tsqlite3_value)(unsafe.Pointer(pValue)).Fn), uintptr(-libc.Int32FromInt32(1)), (*Tsqlite3_value)(unsafe.Pointer(pValue)).Fenc) default: rc = Xsqlite3_bind_null(tls, pStmt, i) break } return rc } // C documentation // // /* // ** Move an existing blob handle to point to a different row of the same // ** database table. // ** // ** If an error occurs, or if the specified row does not exist or does not // ** contain a blob or text value, then an error code is returned and the // ** database handle error code and message set. If this happens, then all // ** subsequent calls to sqlite3_blob_xxx() functions (except blob_close()) // ** immediately return SQLITE_ABORT. // */ func Xsqlite3_blob_reopen(tls *libc.TLS, pBlob uintptr, iRow Tsqlite3_int64) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var db, p, v1 uintptr var rc int32 var _ /* zErr at bp+0 */ uintptr _, _, _, _ = db, p, rc, v1 p = pBlob if p == uintptr(0) { return _sqlite3MisuseError(tls, int32(106500)) } db = (*TIncrblob)(unsafe.Pointer(p)).Fdb Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) if (*TIncrblob)(unsafe.Pointer(p)).FpStmt == uintptr(0) { /* If there is no statement handle, then the blob-handle has ** already been invalidated. Return SQLITE_ABORT in this case. */ rc = int32(SQLITE_ABORT) } else { (*TVdbe)(unsafe.Pointer((*TIncrblob)(unsafe.Pointer(p)).FpStmt)).Frc = SQLITE_OK rc = _blobSeekToRow(tls, p, iRow, bp) if rc != SQLITE_OK { if **(**uintptr)(__ccgo_up(bp)) != 0 { v1 = __ccgo_ts + 4729 } else { v1 = libc.UintptrFromInt32(0) } _sqlite3ErrorWithMsg(tls, db, rc, v1, libc.VaList(bp+16, **(**uintptr)(__ccgo_up(bp)))) _sqlite3DbFree(tls, db, **(**uintptr)(__ccgo_up(bp))) } } rc = _sqlite3ApiExit(tls, db, rc) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return rc } /************** End of vdbeblob.c ********************************************/ /************** Begin file vdbesort.c ****************************************/ /* ** 2011-07-09 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** This file contains code for the VdbeSorter object, used in concert with ** a VdbeCursor to sort large numbers of keys for CREATE INDEX statements ** or by SELECT statements with ORDER BY clauses that cannot be satisfied ** using indexes and without LIMIT clauses. ** ** The VdbeSorter object implements a multi-threaded external merge sort ** algorithm that is efficient even if the number of elements being sorted ** exceeds the available memory. ** ** Here is the (internal, non-API) interface between this module and the ** rest of the SQLite system: ** ** sqlite3VdbeSorterInit() Create a new VdbeSorter object. ** ** sqlite3VdbeSorterWrite() Add a single new row to the VdbeSorter ** object. The row is a binary blob in the ** OP_MakeRecord format that contains both ** the ORDER BY key columns and result columns ** in the case of a SELECT w/ ORDER BY, or ** the complete record for an index entry ** in the case of a CREATE INDEX. ** ** sqlite3VdbeSorterRewind() Sort all content previously added. ** Position the read cursor on the ** first sorted element. ** ** sqlite3VdbeSorterNext() Advance the read cursor to the next sorted ** element. ** ** sqlite3VdbeSorterRowkey() Return the complete binary blob for the ** row currently under the read cursor. ** ** sqlite3VdbeSorterCompare() Compare the binary blob for the row ** currently under the read cursor against ** another binary blob X and report if ** X is strictly less than the read cursor. ** Used to enforce uniqueness in a ** CREATE UNIQUE INDEX statement. ** ** sqlite3VdbeSorterClose() Close the VdbeSorter object and reclaim ** all resources. ** ** sqlite3VdbeSorterReset() Refurbish the VdbeSorter for reuse. This ** is like Close() followed by Init() only ** much faster. ** ** The interfaces above must be called in a particular order. Write() can ** only occur in between Init()/Reset() and Rewind(). Next(), Rowkey(), and ** Compare() can only occur in between Rewind() and Close()/Reset(). i.e. ** ** Init() ** for each record: Write() ** Rewind() ** Rowkey()/Compare() ** Next() ** Close() ** ** Algorithm: ** ** Records passed to the sorter via calls to Write() are initially held ** unsorted in main memory. Assuming the amount of memory used never exceeds ** a threshold, when Rewind() is called the set of records is sorted using ** an in-memory merge sort. In this case, no temporary files are required ** and subsequent calls to Rowkey(), Next() and Compare() read records ** directly from main memory. ** ** If the amount of space used to store records in main memory exceeds the ** threshold, then the set of records currently in memory are sorted and ** written to a temporary file in "Packed Memory Array" (PMA) format. ** A PMA created at this point is known as a "level-0 PMA". Higher levels ** of PMAs may be created by merging existing PMAs together - for example ** merging two or more level-0 PMAs together creates a level-1 PMA. ** ** The threshold for the amount of main memory to use before flushing ** records to a PMA is roughly the same as the limit configured for the ** page-cache of the main database. Specifically, the threshold is set to ** the value returned by "PRAGMA main.page_size" multiplied by ** that returned by "PRAGMA main.cache_size", in bytes. ** ** If the sorter is running in single-threaded mode, then all PMAs generated ** are appended to a single temporary file. Or, if the sorter is running in ** multi-threaded mode then up to (N+1) temporary files may be opened, where ** N is the configured number of worker threads. In this case, instead of ** sorting the records and writing the PMA to a temporary file itself, the ** calling thread usually launches a worker thread to do so. Except, if ** there are already N worker threads running, the main thread does the work ** itself. ** ** The sorter is running in multi-threaded mode if (a) the library was built ** with pre-processor symbol SQLITE_MAX_WORKER_THREADS set to a value greater ** than zero, and (b) worker threads have been enabled at runtime by calling ** "PRAGMA threads=N" with some value of N greater than 0. ** ** When Rewind() is called, any data remaining in memory is flushed to a ** final PMA. So at this point the data is stored in some number of sorted ** PMAs within temporary files on disk. ** ** If there are fewer than SORTER_MAX_MERGE_COUNT PMAs in total and the ** sorter is running in single-threaded mode, then these PMAs are merged ** incrementally as keys are retrieved from the sorter by the VDBE. The ** MergeEngine object, described in further detail below, performs this ** merge. ** ** Or, if running in multi-threaded mode, then a background thread is ** launched to merge the existing PMAs. Once the background thread has ** merged T bytes of data into a single sorted PMA, the main thread ** begins reading keys from that PMA while the background thread proceeds ** with merging the next T bytes of data. And so on. ** ** Parameter T is set to half the value of the memory threshold used ** by Write() above to determine when to create a new PMA. ** ** If there are more than SORTER_MAX_MERGE_COUNT PMAs in total when ** Rewind() is called, then a hierarchy of incremental-merges is used. ** First, T bytes of data from the first SORTER_MAX_MERGE_COUNT PMAs on ** disk are merged together. Then T bytes of data from the second set, and ** so on, such that no operation ever merges more than SORTER_MAX_MERGE_COUNT ** PMAs at a time. This done is to improve locality. ** ** If running in multi-threaded mode and there are more than ** SORTER_MAX_MERGE_COUNT PMAs on disk when Rewind() is called, then more ** than one background thread may be created. Specifically, there may be ** one background thread for each temporary file on disk, and one background ** thread to merge the output of each of the others to a single PMA for ** the main thread to read from. */ /* #include "sqliteInt.h" */ /* #include "vdbeInt.h" */ /* ** If SQLITE_DEBUG_SORTER_THREADS is defined, this module outputs various ** messages to stderr that may be helpful in understanding the performance ** characteristics of the sorter in multi-threaded mode. */ /* ** Hard-coded maximum amount of data to accumulate in memory before flushing ** to a level 0 PMA. The purpose of this limit is to prevent various integer ** overflows. 512MiB. */ // C documentation // // /* // ** Return the number of columns in the result set for the statement pStmt. // */ func Xsqlite3_column_count(tls *libc.TLS, pStmt uintptr) (r int32) { var pVm uintptr _ = pVm pVm = pStmt if pVm == uintptr(0) { return 0 } return int32((*TVdbe)(unsafe.Pointer(pVm)).FnResColumn) } // C documentation // // /* // ** Return TRUE if the given SQL string ends in a semicolon. // ** // ** Special handling is require for CREATE TRIGGER statements. // ** Whenever the CREATE TRIGGER keywords are seen, the statement // ** must end with ";END;". // ** // ** This implementation uses a state machine with 8 states: // ** // ** (0) INVALID We have not yet seen a non-whitespace character. // ** // ** (1) START At the beginning or end of an SQL statement. This routine // ** returns 1 if it ends in the START state and 0 if it ends // ** in any other state. // ** // ** (2) NORMAL We are in the middle of statement which ends with a single // ** semicolon. // ** // ** (3) EXPLAIN The keyword EXPLAIN has been seen at the beginning of // ** a statement. // ** // ** (4) CREATE The keyword CREATE has been seen at the beginning of a // ** statement, possibly preceded by EXPLAIN and/or followed by // ** TEMP or TEMPORARY // ** // ** (5) TRIGGER We are in the middle of a trigger definition that must be // ** ended by a semicolon, the keyword END, and another semicolon. // ** // ** (6) SEMI We've seen the first semicolon in the ";END;" that occurs at // ** the end of a trigger definition. // ** // ** (7) END We've seen the ";END" of the ";END;" that occurs at the end // ** of a trigger definition. // ** // ** Transitions between states above are determined by tokens extracted // ** from the input. The following tokens are significant: // ** // ** (0) tkSEMI A semicolon. // ** (1) tkWS Whitespace. // ** (2) tkOTHER Any other SQL token. // ** (3) tkEXPLAIN The "explain" keyword. // ** (4) tkCREATE The "create" keyword. // ** (5) tkTEMP The "temp" or "temporary" keyword. // ** (6) tkTRIGGER The "trigger" keyword. // ** (7) tkEND The "end" keyword. // ** // ** Whitespace never causes a state transition and is always ignored. // ** This means that a SQL string of all whitespace is invalid. // ** // ** If we compile with SQLITE_OMIT_TRIGGER, all of the computation needed // ** to recognize the end of a trigger can be omitted. All we have to do // ** is look for a semicolon that is not part of an string or comment. // */ func Xsqlite3_complete(tls *libc.TLS, zSql uintptr) (r int32) { var c, nId int32 var state, token Tu8 _, _, _, _ = c, nId, state, token state = uint8(0) /* Value of the next token */ for **(**int8)(__ccgo_up(zSql)) != 0 { switch int32(**(**int8)(__ccgo_up(zSql))) { case int32(';'): /* A semicolon */ token = uint8(tkSEMI) case int32(' '): fallthrough case int32('\r'): fallthrough case int32('\t'): fallthrough case int32('\n'): fallthrough case int32('\f'): /* White space is ignored */ token = uint8(tkWS) case int32('/'): /* C-style comments */ if int32(**(**int8)(__ccgo_up(zSql + 1))) != int32('*') { token = uint8(tkOTHER) break } zSql = zSql + uintptr(2) for **(**int8)(__ccgo_up(zSql)) != 0 && (int32(**(**int8)(__ccgo_up(zSql))) != int32('*') || int32(**(**int8)(__ccgo_up(zSql + 1))) != int32('/')) { zSql = zSql + 1 } if int32(**(**int8)(__ccgo_up(zSql))) == 0 { return 0 } zSql = zSql + 1 token = uint8(tkWS) case int32('-'): /* SQL-style comments from "--" to end of line */ if int32(**(**int8)(__ccgo_up(zSql + 1))) != int32('-') { token = uint8(tkOTHER) break } for **(**int8)(__ccgo_up(zSql)) != 0 && int32(**(**int8)(__ccgo_up(zSql))) != int32('\n') { zSql = zSql + 1 } if int32(**(**int8)(__ccgo_up(zSql))) == 0 { return libc.BoolInt32(int32(state) == int32(1)) } token = uint8(tkWS) case int32('['): /* Microsoft-style identifiers in [...] */ zSql = zSql + 1 for **(**int8)(__ccgo_up(zSql)) != 0 && int32(**(**int8)(__ccgo_up(zSql))) != int32(']') { zSql = zSql + 1 } if int32(**(**int8)(__ccgo_up(zSql))) == 0 { return 0 } token = uint8(tkOTHER) case int32('`'): /* Grave-accent quoted symbols used by MySQL */ fallthrough case int32('"'): /* single- and double-quoted strings */ fallthrough case int32('\''): c = int32(**(**int8)(__ccgo_up(zSql))) zSql = zSql + 1 for **(**int8)(__ccgo_up(zSql)) != 0 && int32(**(**int8)(__ccgo_up(zSql))) != c { zSql = zSql + 1 } if int32(**(**int8)(__ccgo_up(zSql))) == 0 { return 0 } token = uint8(tkOTHER) default: if int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(zSql)))])&int32(0x46) != 0 { nId = int32(1) for { if !(int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(zSql + uintptr(nId))))])&int32(0x46) != 0) { break } goto _1 _1: ; nId = nId + 1 } switch int32(**(**int8)(__ccgo_up(zSql))) { case int32('c'): fallthrough case int32('C'): if nId == int32(6) && Xsqlite3_strnicmp(tls, zSql, __ccgo_ts+26487, int32(6)) == 0 { token = uint8(tkCREATE) } else { token = uint8(tkOTHER) } case int32('t'): fallthrough case int32('T'): if nId == int32(7) && Xsqlite3_strnicmp(tls, zSql, __ccgo_ts+23116, int32(7)) == 0 { token = uint8(tkTRIGGER) } else { if nId == int32(4) && Xsqlite3_strnicmp(tls, zSql, __ccgo_ts+26494, int32(4)) == 0 { token = uint8(tkTEMP) } else { if nId == int32(9) && Xsqlite3_strnicmp(tls, zSql, __ccgo_ts+26499, int32(9)) == 0 { token = uint8(tkTEMP) } else { token = uint8(tkOTHER) } } } case int32('e'): fallthrough case int32('E'): if nId == int32(3) && Xsqlite3_strnicmp(tls, zSql, __ccgo_ts+26509, int32(3)) == 0 { token = uint8(tkEND) } else { if nId == int32(7) && Xsqlite3_strnicmp(tls, zSql, __ccgo_ts+26513, int32(7)) == 0 { token = uint8(tkEXPLAIN) } else { token = uint8(tkOTHER) } } default: token = uint8(tkOTHER) break } zSql = zSql + uintptr(nId-int32(1)) } else { /* Operators and special symbols */ token = uint8(tkOTHER) } break } state = **(**Tu8)(__ccgo_up(uintptr(unsafe.Pointer(&_trans)) + uintptr(state)*8 + uintptr(token))) zSql = zSql + 1 } return libc.BoolInt32(int32(state) == int32(1)) } // C documentation // // /* // ** Register a new collation sequence with the database handle db. // */ func Xsqlite3_create_collation16(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, __ccgo_fp_xCompare uintptr) (r int32) { var rc int32 var zName8 uintptr _, _ = rc, zName8 rc = SQLITE_OK Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) zName8 = _sqlite3Utf16to8(tls, db, zName, -int32(1), uint8(SQLITE_UTF16LE)) if zName8 != 0 { rc = _createCollation(tls, db, zName8, uint8(enc), pCtx, __ccgo_fp_xCompare, uintptr(0)) _sqlite3DbFree(tls, db, zName8) } rc = _sqlite3ApiExit(tls, db, rc) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return rc } // C documentation // // /* // ** Register a new collation sequence with the database handle db. // */ func Xsqlite3_create_collation_v2(tls *libc.TLS, db uintptr, zName uintptr, enc int32, pCtx uintptr, __ccgo_fp_xCompare uintptr, __ccgo_fp_xDel uintptr) (r int32) { var rc int32 _ = rc Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) rc = _createCollation(tls, db, zName, uint8(enc), pCtx, __ccgo_fp_xCompare, __ccgo_fp_xDel) rc = _sqlite3ApiExit(tls, db, rc) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return rc } // C documentation // // /* // ** Return the number of values available from the current row of the // ** currently executing statement pStmt. // */ func Xsqlite3_data_count(tls *libc.TLS, pStmt uintptr) (r int32) { var pVm uintptr _ = pVm pVm = pStmt if pVm == uintptr(0) || (*TVdbe)(unsafe.Pointer(pVm)).FpResultRow == uintptr(0) { return 0 } return int32((*TVdbe)(unsafe.Pointer(pVm)).FnResColumn) } // C documentation // // /* // ** Enable or disable the extended result codes. // */ func Xsqlite3_extended_result_codes(tls *libc.TLS, db uintptr, onoff int32) (r int32) { var v1 uint32 _ = v1 Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) if onoff != 0 { v1 = uint32(0xffffffff) } else { v1 = uint32(0xff) } (*Tsqlite3)(unsafe.Pointer(db)).FerrMask = int32(v1) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return SQLITE_OK } // C documentation // // /* // ** Test to see whether or not the database connection is in autocommit // ** mode. Return TRUE if it is and FALSE if not. Autocommit mode is on // ** by default. Autocommit is disabled by a BEGIN statement and reenabled // ** by the next COMMIT or ROLLBACK. // */ func Xsqlite3_get_autocommit(tls *libc.TLS, db uintptr) (r int32) { var iRet int32 _ = iRet Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) iRet = int32((*Tsqlite3)(unsafe.Pointer(db)).FautoCommit) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return iRet } func Xsqlite3_keyword_name(tls *libc.TLS, i int32, pzName uintptr, pnName uintptr) (r int32) { if i < 0 || i >= int32(SQLITE_N_KEYWORD) { return int32(SQLITE_ERROR) } i = i + 1 **(**uintptr)(__ccgo_up(pzName)) = uintptr(unsafe.Pointer(&_zKWText)) + uintptr(_aKWOffset[i]) **(**int32)(__ccgo_up(pnName)) = int32(_aKWLen[i]) return SQLITE_OK } // C documentation // // /* // ** This version of the memory allocation is for use by the application. // ** First make sure the memory subsystem is initialized, then do the // ** allocation. // */ func Xsqlite3_malloc(tls *libc.TLS, n int32) (r uintptr) { var v1 uintptr _ = v1 if Xsqlite3_initialize(tls) != 0 { return uintptr(0) } if n <= 0 { v1 = uintptr(0) } else { v1 = _sqlite3Malloc(tls, uint64(n)) } return v1 } func Xsqlite3_msize(tls *libc.TLS, p uintptr) (r Tsqlite3_uint64) { var v1 int32 _ = v1 if p != 0 { v1 = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fm.FxSize})))(tls, p) } else { v1 = 0 } return uint64(v1) } // C documentation // // /* // ** Open a new database handle. // */ func Xsqlite3_open(tls *libc.TLS, zFilename uintptr, ppDb uintptr) (r int32) { return _openDatabase(tls, zFilename, ppDb, uint32(libc.Int32FromInt32(SQLITE_OPEN_READWRITE)|libc.Int32FromInt32(SQLITE_OPEN_CREATE)), uintptr(0)) } // C documentation // // /* // ** Open a new database handle. // */ func Xsqlite3_open16(tls *libc.TLS, zFilename uintptr, ppDb uintptr) (r int32) { var pVal, zFilename8 uintptr var rc int32 var v1 Tu8 _, _, _, _ = pVal, rc, zFilename8, v1 **(**uintptr)(__ccgo_up(ppDb)) = uintptr(0) rc = Xsqlite3_initialize(tls) if rc != 0 { return rc } if zFilename == uintptr(0) { zFilename = __ccgo_ts + 27505 } pVal = _sqlite3ValueNew(tls, uintptr(0)) _sqlite3ValueSetStr(tls, pVal, -int32(1), zFilename, uint8(SQLITE_UTF16LE), libc.UintptrFromInt32(0)) zFilename8 = _sqlite3ValueText(tls, pVal, uint8(SQLITE_UTF8)) if zFilename8 != 0 { rc = _openDatabase(tls, zFilename8, ppDb, uint32(libc.Int32FromInt32(SQLITE_OPEN_READWRITE)|libc.Int32FromInt32(SQLITE_OPEN_CREATE)), uintptr(0)) if rc == SQLITE_OK && !(int32((*TSchema)(unsafe.Pointer((**(**TDb)(__ccgo_up((*Tsqlite3)(unsafe.Pointer(**(**uintptr)(__ccgo_up(ppDb)))).FaDb))).FpSchema)).FschemaFlags)&libc.Int32FromInt32(DB_SchemaLoaded) == libc.Int32FromInt32(DB_SchemaLoaded)) { v1 = libc.Uint8FromInt32(SQLITE_UTF16LE) (*Tsqlite3)(unsafe.Pointer(**(**uintptr)(__ccgo_up(ppDb)))).Fenc = v1 (*TSchema)(unsafe.Pointer((**(**TDb)(__ccgo_up((*Tsqlite3)(unsafe.Pointer(**(**uintptr)(__ccgo_up(ppDb)))).FaDb))).FpSchema)).Fenc = v1 } } else { rc = int32(SQLITE_NOMEM) } _sqlite3ValueFree(tls, pVal) return rc & int32(0xff) } func Xsqlite3_open_v2(tls *libc.TLS, filename uintptr, ppDb uintptr, flags int32, zVfs uintptr) (r int32) { return _openDatabase(tls, filename, ppDb, uint32(flags), zVfs) } func Xsqlite3_os_end(tls *libc.TLS) (r int32) { _winBigLock = uintptr(0) return SQLITE_OK } /************** End of os_win.c **********************************************/ /************** Begin file memdb.c *******************************************/ /* ** 2016-09-07 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ****************************************************************************** ** ** This file implements an in-memory VFS. A database is held as a contiguous ** block of memory. ** ** This file also implements interface sqlite3_serialize() and ** sqlite3_deserialize(). */ /* #include "sqliteInt.h" */ // C documentation // // /* // ** Declare that a function has been overloaded by a virtual table. // ** // ** If the function already exists as a regular global function, then // ** this routine is a no-op. If the function does not exist, then create // ** a new one that always throws a run-time error. // ** // ** When virtual tables intend to provide an overloaded function, they // ** should call this routine to make sure the global function exists. // ** A global function must exist in order for name resolution to work // ** properly. // */ func Xsqlite3_overload_function(tls *libc.TLS, db uintptr, zName uintptr, nArg int32) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 var zCopy uintptr _, _ = rc, zCopy Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) rc = libc.BoolInt32(_sqlite3FindFunction(tls, db, zName, nArg, uint8(SQLITE_UTF8), uint8(0)) != uintptr(0)) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) if rc != 0 { return SQLITE_OK } zCopy = Xsqlite3_mprintf(tls, __ccgo_ts+4729, libc.VaList(bp+8, zName)) if zCopy == uintptr(0) { return int32(SQLITE_NOMEM) } return Xsqlite3_create_function_v2(tls, db, zName, nArg, int32(SQLITE_UTF8), zCopy, __ccgo_fp(_sqlite3InvalidFunction), uintptr(0), uintptr(0), __ccgo_fp(Xsqlite3_free)) } // C documentation // // /* // ** This function is called from within a pre-update callback to retrieve // ** the number of columns in the row being updated, deleted or inserted. // */ func Xsqlite3_preupdate_count(tls *libc.TLS, db uintptr) (r int32) { var p uintptr var v1 int32 _, _ = p, v1 p = (*Tsqlite3)(unsafe.Pointer(db)).FpPreUpdate if p != 0 { v1 = int32((*TKeyInfo)(unsafe.Pointer((*TPreUpdate)(unsafe.Pointer(p)).FpKeyinfo)).FnKeyField) } else { v1 = 0 } return v1 } // C documentation // // /* // ** This routine sets the progress callback for an Sqlite database to the // ** given callback function with the given argument. The progress callback will // ** be invoked every nOps opcodes. // */ func Xsqlite3_progress_handler(tls *libc.TLS, db uintptr, nOps int32, __ccgo_fp_xProgress uintptr, pArg uintptr) { Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) if nOps > 0 { (*Tsqlite3)(unsafe.Pointer(db)).FxProgress = __ccgo_fp_xProgress (*Tsqlite3)(unsafe.Pointer(db)).FnProgressOps = uint32(nOps) (*Tsqlite3)(unsafe.Pointer(db)).FpProgressArg = pArg } else { (*Tsqlite3)(unsafe.Pointer(db)).FxProgress = uintptr(0) (*Tsqlite3)(unsafe.Pointer(db)).FnProgressOps = uint32(0) (*Tsqlite3)(unsafe.Pointer(db)).FpProgressArg = uintptr(0) } Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) } // C documentation // // /* // ** The public interface to sqlite3Realloc. Make sure that the memory // ** subsystem is initialized prior to invoking sqliteRealloc. // */ func Xsqlite3_realloc(tls *libc.TLS, pOld uintptr, n int32) (r uintptr) { if Xsqlite3_initialize(tls) != 0 { return uintptr(0) } if n < 0 { n = 0 } /* IMP: R-26507-47431 */ return _sqlite3Realloc(tls, pOld, uint64(n)) } func Xsqlite3_result_blob64(tls *libc.TLS, pCtx uintptr, z uintptr, n Tsqlite3_uint64, __ccgo_fp_xDel uintptr) { if n > uint64(0x7fffffff) { _invokeValueDestructor(tls, z, __ccgo_fp_xDel, pCtx) } else { _setResultStrOrError(tls, pCtx, z, int32(n), uint8(0), __ccgo_fp_xDel) } } func Xsqlite3_result_error_code(tls *libc.TLS, pCtx uintptr, errCode int32) { var v1 int32 _ = v1 if errCode != 0 { v1 = errCode } else { v1 = -int32(1) } (*Tsqlite3_context)(unsafe.Pointer(pCtx)).FisError = v1 if int32((*TMem)(unsafe.Pointer((*Tsqlite3_context)(unsafe.Pointer(pCtx)).FpOut)).Fflags)&int32(MEM_Null) != 0 { _setResultStrOrError(tls, pCtx, _sqlite3ErrStr(tls, errCode), -int32(1), uint8(SQLITE_UTF8), libc.UintptrFromInt32(0)) } } // C documentation // // /* Force an SQLITE_TOOBIG error. */ func Xsqlite3_result_error_toobig(tls *libc.TLS, pCtx uintptr) { (*Tsqlite3_context)(unsafe.Pointer(pCtx)).FisError = int32(SQLITE_TOOBIG) _sqlite3VdbeMemSetStr(tls, (*Tsqlite3_context)(unsafe.Pointer(pCtx)).FpOut, __ccgo_ts+6807, int64(-int32(1)), uint8(SQLITE_UTF8), libc.UintptrFromInt32(0)) } func Xsqlite3_result_text16(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, __ccgo_fp_xDel uintptr) { _setResultStrOrError(tls, pCtx, z, int32(uint64(n) & ^libc.Uint64FromInt32(1)), uint8(SQLITE_UTF16LE), __ccgo_fp_xDel) } func Xsqlite3_result_text16be(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, __ccgo_fp_xDel uintptr) { _setResultStrOrError(tls, pCtx, z, int32(uint64(n) & ^libc.Uint64FromInt32(1)), uint8(SQLITE_UTF16BE), __ccgo_fp_xDel) } func Xsqlite3_result_text16le(tls *libc.TLS, pCtx uintptr, z uintptr, n int32, __ccgo_fp_xDel uintptr) { _setResultStrOrError(tls, pCtx, z, int32(uint64(n) & ^libc.Uint64FromInt32(1)), uint8(SQLITE_UTF16LE), __ccgo_fp_xDel) } func Xsqlite3_result_text64(tls *libc.TLS, pCtx uintptr, z uintptr, n Tsqlite3_uint64, __ccgo_fp_xDel uintptr, enc uint8) { if int32(enc) != int32(SQLITE_UTF8) && int32(enc) != int32(SQLITE_UTF8_ZT) { if int32(enc) == int32(SQLITE_UTF16) { enc = uint8(SQLITE_UTF16LE) } n = n & ^libc.Uint64FromInt32(1) } if n > uint64(0x7fffffff) { _invokeValueDestructor(tls, z, __ccgo_fp_xDel, pCtx) } else { _setResultStrOrError(tls, pCtx, z, int32(n), enc, __ccgo_fp_xDel) _sqlite3VdbeMemZeroTerminateIfAble(tls, (*Tsqlite3_context)(unsafe.Pointer(pCtx)).FpOut) } } func Xsqlite3_result_value(tls *libc.TLS, pCtx uintptr, pValue uintptr) { var pOut uintptr _ = pOut pOut = (*Tsqlite3_context)(unsafe.Pointer(pCtx)).FpOut _sqlite3VdbeMemCopy(tls, pOut, pValue) _sqlite3VdbeChangeEncoding(tls, pOut, int32((*Tsqlite3_context)(unsafe.Pointer(pCtx)).Fenc)) if _sqlite3VdbeMemTooBig(tls, pOut) != 0 { Xsqlite3_result_error_toobig(tls, pCtx) } } func Xsqlite3_result_zeroblob(tls *libc.TLS, pCtx uintptr, n int32) { var v1 int32 _ = v1 if n > 0 { v1 = n } else { v1 = 0 } Xsqlite3_result_zeroblob64(tls, pCtx, uint64(v1)) } // C documentation // // /* // ** Set the error code and error message associated with the database handle. // ** // ** This routine is intended to be called by outside extensions (ex: the // ** Session extension). Internal logic should invoke sqlite3Error() or // ** sqlite3ErrorWithMsg() directly. // */ func Xsqlite3_set_errmsg(tls *libc.TLS, db uintptr, errcode int32, zMsg uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 _ = rc rc = SQLITE_OK if !(_sqlite3SafetyCheckOk(tls, db) != 0) { return _sqlite3MisuseError(tls, int32(190121)) } Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) if zMsg != 0 { _sqlite3ErrorWithMsg(tls, db, errcode, __ccgo_ts+4729, libc.VaList(bp+8, zMsg)) } else { _sqlite3Error(tls, db, errcode) } rc = _sqlite3ApiExit(tls, db, rc) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return rc } // C documentation // // /************** End of stmt.c ************************************************/ // /* Return the source-id for this library */ func Xsqlite3_sourceid(tls *libc.TLS) (r uintptr) { return __ccgo_ts + 43776 } // C documentation // // /* // ** Return true if the prepared statement is in need of being reset. // */ func Xsqlite3_stmt_busy(tls *libc.TLS, pStmt uintptr) (r int32) { var v uintptr _ = v v = pStmt return libc.BoolInt32(v != uintptr(0) && int32((*TVdbe)(unsafe.Pointer(v)).FeVdbeState) == int32(VDBE_RUN_STATE)) } // C documentation // // /* Return any error code associated with p */ func Xsqlite3_str_errcode(tls *libc.TLS, p uintptr) (r int32) { var v1 int32 _ = v1 if p != 0 { v1 = int32((*Tsqlite3_str)(unsafe.Pointer(p)).FaccError) } else { v1 = int32(SQLITE_NOMEM) } return v1 } // C documentation // // /* Return the current length of p in bytes */ func Xsqlite3_str_length(tls *libc.TLS, p uintptr) (r int32) { var v1 uint32 _ = v1 if p != 0 { v1 = (*Tsqlite3_str)(unsafe.Pointer(p)).FnChar } else { v1 = uint32(0) } return int32(v1) } // C documentation // // /* Truncate the text of the string to be no more than N bytes. */ func Xsqlite3_str_truncate(tls *libc.TLS, p uintptr, N int32) { if p != uintptr(0) && N >= 0 && uint32(N) < (*Tsqlite3_str)(unsafe.Pointer(p)).FnChar { (*Tsqlite3_str)(unsafe.Pointer(p)).FnChar = uint32(N) **(**int8)(__ccgo_up((*Tsqlite3_str)(unsafe.Pointer(p)).FzText + uintptr((*Tsqlite3_str)(unsafe.Pointer(p)).FnChar))) = 0 } } func Xsqlite3_strnicmp(tls *libc.TLS, zLeft uintptr, zRight uintptr, N int32) (r int32) { var a, b uintptr var v1 int32 _, _, _ = a, b, v1 if zLeft == uintptr(0) { if zRight != 0 { v1 = -int32(1) } else { v1 = 0 } return v1 } else { if zRight == uintptr(0) { return int32(1) } } a = zLeft b = zRight for { v1 = N N = N - 1 if !(v1 > 0 && int32(**(**uint8)(__ccgo_up(a))) != 0 && int32(_sqlite3UpperToLower[**(**uint8)(__ccgo_up(a))]) == int32(_sqlite3UpperToLower[**(**uint8)(__ccgo_up(b))])) { break } a = a + 1 b = b + 1 } if N < 0 { v1 = 0 } else { v1 = int32(_sqlite3UpperToLower[**(**uint8)(__ccgo_up(a))]) - int32(_sqlite3UpperToLower[**(**uint8)(__ccgo_up(b))]) } return v1 } // C documentation // // /* // ** If the following global variable points to a string which is the // ** name of a directory, then that directory will be used to store // ** temporary files. // ** // ** See also the "PRAGMA temp_store_directory" SQL command. // */ var Xsqlite3_temp_directory uintptr /* for backward compatibility */ /* Use GCC builtins */ /* Copyright (C) 1989-2022 Free Software Foundation, Inc. This file is part of GCC. GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. Under Section 7 of GPL version 3, you are granted additional permissions described in the GCC Runtime Library Exception, version 3.1, as published by the Free Software Foundation. You should have received a copy of the GNU General Public License and a copy of the GCC Runtime Library Exception along with this program; see the files COPYING3 and COPYING.RUNTIME respectively. If not, see . */ /* * ISO C Standard: 7.15 Variable arguments */ /* ** Make sure we can call this stuff from C++. */ /* ** Facilitate override of interface linkage and calling conventions. ** Be aware that these macros may not be used within this particular ** translation of the amalgamation and its associated header file. ** ** The SQLITE_EXTERN and SQLITE_API macros are used to instruct the ** compiler that the target identifier should have external linkage. ** ** The SQLITE_CDECL macro is used to set the calling convention for ** public functions that accept a variable number of arguments. ** ** The SQLITE_APICALL macro is used to set the calling convention for ** public functions that accept a fixed number of arguments. ** ** The SQLITE_STDCALL macro is no longer used and is now deprecated. ** ** The SQLITE_CALLBACK macro is used to set the calling convention for ** function pointers. ** ** The SQLITE_SYSAPI macro is used to set the calling convention for ** functions provided by the operating system. ** ** Currently, the SQLITE_CDECL, SQLITE_APICALL, SQLITE_CALLBACK, and ** SQLITE_SYSAPI macros are used only when building for environments ** that require non-default calling conventions. */ /* ** These no-op macros are used in front of interfaces to mark those ** interfaces as either deprecated or experimental. New applications ** should not use deprecated interfaces - they are supported for backwards ** compatibility only. Application writers should be aware that ** experimental interfaces are subject to change in point releases. ** ** These macros used to resolve to various kinds of compiler magic that ** would generate warning messages when they were used. But that ** compiler magic ended up generating such a flurry of bug reports ** that we have taken it all out and gone back to using simple ** noop macros. */ /* ** Ensure these symbols were not defined by some previous header file. */ /* ** CAPI3REF: Compile-Time Library Version Numbers ** ** ^(The [SQLITE_VERSION] C preprocessor macro in the sqlite3.h header ** evaluates to a string literal that is the SQLite version in the ** format "X.Y.Z" where X is the major version number (always 3 for ** SQLite3) and Y is the minor version number and Z is the release number.)^ ** ^(The [SQLITE_VERSION_NUMBER] C preprocessor macro resolves to an integer ** with the value (X*1000000 + Y*1000 + Z) where X, Y, and Z are the same ** numbers used in [SQLITE_VERSION].)^ ** The SQLITE_VERSION_NUMBER for any given release of SQLite will also ** be larger than the release from which it is derived. Either Y will ** be held constant and Z will be incremented or else Y will be incremented ** and Z will be reset to zero. ** ** Since [version 3.6.18] ([dateof:3.6.18]), ** SQLite source code has been stored in the ** Fossil configuration management ** system. ^The SQLITE_SOURCE_ID macro evaluates to ** a string which identifies a particular check-in of SQLite ** within its configuration management system. ^The SQLITE_SOURCE_ID ** string contains the date and time of the check-in (UTC) and a SHA1 ** or SHA3-256 hash of the entire source tree. If the source code has ** been edited in any way since it was last checked in, then the last ** four hexadecimal digits of the hash may be modified. ** ** See also: [sqlite3_libversion()], ** [sqlite3_libversion_number()], [sqlite3_sourceid()], ** [sqlite_version()] and [sqlite_source_id()]. */ // C documentation // // /* // ** Register an unlock-notify callback. // ** // ** This is called after connection "db" has attempted some operation // ** but has received an SQLITE_LOCKED error because another connection // ** (call it pOther) in the same process was busy using the same shared // ** cache. pOther is found by looking at db->pBlockingConnection. // ** // ** If there is no blocking connection, the callback is invoked immediately, // ** before this routine returns. // ** // ** If pOther is already blocked on db, then report SQLITE_LOCKED, to indicate // ** a deadlock. // ** // ** Otherwise, make arrangements to invoke xNotify when pOther drops // ** its locks. // ** // ** Each call to this routine overrides any prior callbacks registered // ** on the same "db". If xNotify==0 then any prior callbacks are immediately // ** cancelled. // */ func Xsqlite3_unlock_notify(tls *libc.TLS, db uintptr, __ccgo_fp_xNotify uintptr, _pArg uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) *(*uintptr)(unsafe.Pointer(bp)) = _pArg var p, v2 uintptr var rc int32 _, _, _ = p, rc, v2 rc = SQLITE_OK Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) _enterMutex(tls) if __ccgo_fp_xNotify == uintptr(0) { _removeFromBlockedList(tls, db) (*Tsqlite3)(unsafe.Pointer(db)).FpBlockingConnection = uintptr(0) (*Tsqlite3)(unsafe.Pointer(db)).FpUnlockConnection = uintptr(0) (*Tsqlite3)(unsafe.Pointer(db)).FxUnlockNotify = uintptr(0) (*Tsqlite3)(unsafe.Pointer(db)).FpUnlockArg = uintptr(0) } else { if uintptr(0) == (*Tsqlite3)(unsafe.Pointer(db)).FpBlockingConnection { /* The blocking transaction has been concluded. Or there never was a ** blocking transaction. In either case, invoke the notify callback ** immediately. */ (*(*func(*libc.TLS, uintptr, int32))(unsafe.Pointer(&struct{ uintptr }{__ccgo_fp_xNotify})))(tls, bp, int32(1)) } else { p = (*Tsqlite3)(unsafe.Pointer(db)).FpBlockingConnection for { if !(p != 0 && p != db) { break } goto _1 _1: ; p = (*Tsqlite3)(unsafe.Pointer(p)).FpUnlockConnection } if p != 0 { rc = int32(SQLITE_LOCKED) /* Deadlock detected. */ } else { (*Tsqlite3)(unsafe.Pointer(db)).FpUnlockConnection = (*Tsqlite3)(unsafe.Pointer(db)).FpBlockingConnection (*Tsqlite3)(unsafe.Pointer(db)).FxUnlockNotify = __ccgo_fp_xNotify (*Tsqlite3)(unsafe.Pointer(db)).FpUnlockArg = **(**uintptr)(__ccgo_up(bp)) _removeFromBlockedList(tls, db) _addToBlockedList(tls, db) } } } _leaveMutex(tls) if rc != 0 { v2 = __ccgo_ts + 27613 } else { v2 = uintptr(0) } _sqlite3ErrorWithMsg(tls, db, rc, v2, 0) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return rc } // C documentation // // /* // ** Return a boolean value for a query parameter. // */ func Xsqlite3_uri_boolean(tls *libc.TLS, zFilename uintptr, zParam uintptr, bDflt int32) (r int32) { var z uintptr var v1 int32 _, _ = z, v1 z = Xsqlite3_uri_parameter(tls, zFilename, zParam) bDflt = libc.BoolInt32(bDflt != 0) if z != 0 { v1 = int32(_sqlite3GetBoolean(tls, z, uint8(bDflt))) } else { v1 = bDflt } return v1 } func Xsqlite3_value_encoding(tls *libc.TLS, pVal uintptr) (r int32) { return int32((*Tsqlite3_value)(unsafe.Pointer(pVal)).Fenc) } // C documentation // // /* Return true if a parameter value originated from an sqlite3_bind() */ func Xsqlite3_value_frombind(tls *libc.TLS, pVal uintptr) (r int32) { return libc.BoolInt32(int32((*Tsqlite3_value)(unsafe.Pointer(pVal)).Fflags)&int32(MEM_FromBind) != 0) } // C documentation // // /* Return true if a parameter to xUpdate represents an unchanged column */ func Xsqlite3_value_nochange(tls *libc.TLS, pVal uintptr) (r int32) { return libc.BoolInt32(int32((*Tsqlite3_value)(unsafe.Pointer(pVal)).Fflags)&(libc.Int32FromInt32(MEM_Null)|libc.Int32FromInt32(MEM_Zero)) == libc.Int32FromInt32(MEM_Null)|libc.Int32FromInt32(MEM_Zero)) } func Xsqlite3_value_subtype(tls *libc.TLS, pVal uintptr) (r uint32) { var pMem uintptr var v1 int32 _, _ = pMem, v1 pMem = pVal if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&int32(MEM_Subtype) != 0 { v1 = int32((*TMem)(unsafe.Pointer(pMem)).FeSubtype) } else { v1 = 0 } return uint32(v1) } // C documentation // // /* EVIDENCE-OF: R-12793-43283 Every value in SQLite has one of five // ** fundamental datatypes: 64-bit signed integer 64-bit IEEE floating // ** point number string BLOB NULL // */ func Xsqlite3_value_type(tls *libc.TLS, pVal uintptr) (r int32) { return int32(_aType[int32((*Tsqlite3_value)(unsafe.Pointer(pVal)).Fflags)&int32(MEM_AffMask)]) } // C documentation // // /* // ** Call from within the xCreate() or xConnect() methods to provide // ** the SQLite core with additional information about the behavior // ** of the virtual table being implemented. // */ func Xsqlite3_vtab_config(tls *libc.TLS, db uintptr, op int32, va uintptr) (r int32) { var ap Tva_list var p uintptr var rc int32 _, _, _ = ap, p, rc rc = SQLITE_OK Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) p = (*Tsqlite3)(unsafe.Pointer(db)).FpVtabCtx if !(p != 0) { rc = _sqlite3MisuseError(tls, int32(163230)) } else { ap = va switch op { case int32(SQLITE_VTAB_CONSTRAINT_SUPPORT): (*TVTable)(unsafe.Pointer((*TVtabCtx)(unsafe.Pointer(p)).FpVTable)).FbConstraint = uint8(libc.VaInt32(&ap)) case int32(SQLITE_VTAB_INNOCUOUS): (*TVTable)(unsafe.Pointer((*TVtabCtx)(unsafe.Pointer(p)).FpVTable)).FeVtabRisk = uint8(SQLITE_VTABRISK_Low) case int32(SQLITE_VTAB_DIRECTONLY): (*TVTable)(unsafe.Pointer((*TVtabCtx)(unsafe.Pointer(p)).FpVTable)).FeVtabRisk = uint8(SQLITE_VTABRISK_High) case int32(SQLITE_VTAB_USES_ALL_SCHEMAS): (*TVTable)(unsafe.Pointer((*TVtabCtx)(unsafe.Pointer(p)).FpVTable)).FbAllSchemas = uint8(1) default: rc = _sqlite3MisuseError(tls, int32(163252)) break } _ = ap } if rc != SQLITE_OK { _sqlite3Error(tls, db, rc) } Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return rc } /************** End of vtab.c ************************************************/ /************** Begin file wherecode.c ***************************************/ /* ** 2015-06-06 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** This module contains C code that generates VDBE code used to process ** the WHERE clause of SQL statements. ** ** This file was split off from where.c on 2015-06-06 in order to reduce the ** size of where.c and make it easier to edit. This file contains the routines ** that actually generate the bulk of the WHERE loop code. The original where.c ** file retains the code that does query planning and analysis. */ /* #include "sqliteInt.h" */ /************** Include whereInt.h in the middle of wherecode.c **************/ /************** Begin file whereInt.h ****************************************/ /* ** 2013-11-12 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** ** This file contains structure and macro definitions for the query ** planner logic in "where.c". These definitions are broken out into ** a separate source file for easier editing. */ // C documentation // // /* // ** Return the ON CONFLICT resolution mode in effect for the virtual // ** table update operation currently in progress. // ** // ** The results of this routine are undefined unless it is called from // ** within an xUpdate method. // */ func Xsqlite3_vtab_on_conflict(tls *libc.TLS, db uintptr) (r int32) { return int32(_aMap[int32((*Tsqlite3)(unsafe.Pointer(db)).FvtabOnConflict)-int32(1)]) } // C documentation // // /* // ** This function determines if the machine is running a version of Windows // ** based on the NT kernel. // */ func Xsqlite3_win32_is_nt(tls *libc.TLS) (r int32) { /* ** NOTE: All sub-platforms where the GetVersionEx[AW] functions are ** deprecated are always assumed to be based on the NT kernel. */ return int32(1) } // C documentation // // /* // ** This is a public wrapper for the winMbcsToUtf8() function. // */ func Xsqlite3_win32_mbcs_to_utf8(tls *libc.TLS, zText uintptr) (r uintptr) { if Xsqlite3_initialize(tls) != 0 { return uintptr(0) } return _winMbcsToUtf8(tls, zText, (*(*func(*libc.TLS) TBOOL)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[0].FpCurrent})))(tls)) } // C documentation // // /* // ** This is a public wrapper for the winMbcsToUtf8() function. // */ func Xsqlite3_win32_mbcs_to_utf8_v2(tls *libc.TLS, zText uintptr, useAnsi int32) (r uintptr) { if Xsqlite3_initialize(tls) != 0 { return uintptr(0) } return _winMbcsToUtf8(tls, zText, useAnsi) } // C documentation // // /* // ** This function sets the data directory or the temporary directory based on // ** the provided arguments. The type argument must be 1 in order to set the // ** data directory or 2 in order to set the temporary directory. The zValue // ** argument is the name of the directory to use. The return value will be // ** SQLITE_OK if successful. // */ func Xsqlite3_win32_set_directory(tls *libc.TLS, type1 uint32, zValue uintptr) (r int32) { return Xsqlite3_win32_set_directory16(tls, type1, zValue) } // C documentation // // /* // ** This function is the same as sqlite3_win32_set_directory (below); however, // ** it accepts a UTF-16 string. // */ func Xsqlite3_win32_set_directory16(tls *libc.TLS, type1 uint32, zValue uintptr) (r int32) { var rc int32 var zUtf8 uintptr _, _ = rc, zUtf8 zUtf8 = uintptr(0) if zValue != 0 { zUtf8 = Xsqlite3_win32_unicode_to_utf8(tls, zValue) if zUtf8 == uintptr(0) { return int32(SQLITE_NOMEM) } } rc = Xsqlite3_win32_set_directory8(tls, type1, zUtf8) if zUtf8 != 0 { Xsqlite3_free(tls, zUtf8) } return rc } // C documentation // // /* // ** This function is the same as sqlite3_win32_set_directory (below); however, // ** it accepts a UTF-8 string. // */ func Xsqlite3_win32_set_directory8(tls *libc.TLS, type1 uint32, zValue uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var ppDirectory, zCopy uintptr var rc int32 _, _, _ = ppDirectory, rc, zCopy ppDirectory = uintptr(0) rc = Xsqlite3_initialize(tls) if rc != 0 { return rc } Xsqlite3_mutex_enter(tls, _sqlite3MutexAlloc(tls, int32(SQLITE_MUTEX_STATIC_VFS1))) if type1 == uint32(SQLITE_WIN32_DATA_DIRECTORY_TYPE) { ppDirectory = uintptr(unsafe.Pointer(&Xsqlite3_data_directory)) } else { if type1 == uint32(SQLITE_WIN32_TEMP_DIRECTORY_TYPE) { ppDirectory = uintptr(unsafe.Pointer(&Xsqlite3_temp_directory)) } } if ppDirectory != 0 { zCopy = uintptr(0) if zValue != 0 && **(**int8)(__ccgo_up(zValue)) != 0 { zCopy = Xsqlite3_mprintf(tls, __ccgo_ts+4729, libc.VaList(bp+8, zValue)) if zCopy == uintptr(0) { rc = int32(SQLITE_NOMEM) goto set_directory8_done } } Xsqlite3_free(tls, **(**uintptr)(__ccgo_up(ppDirectory))) **(**uintptr)(__ccgo_up(ppDirectory)) = zCopy rc = SQLITE_OK } else { rc = int32(SQLITE_ERROR) } goto set_directory8_done set_directory8_done: ; Xsqlite3_mutex_leave(tls, _sqlite3MutexAlloc(tls, int32(SQLITE_MUTEX_STATIC_VFS1))) return rc } func Xsqlite3_win32_sleep(tls *libc.TLS, milliseconds TDWORD) { (*(*func(*libc.TLS, TDWORD))(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(55)].FpCurrent})))(tls, milliseconds) } // C documentation // // /* // ** This is a public wrapper for the winUnicodeToUtf8() function. // */ func Xsqlite3_win32_unicode_to_utf8(tls *libc.TLS, zWideText TLPCWSTR) (r uintptr) { if Xsqlite3_initialize(tls) != 0 { return uintptr(0) } return _winUnicodeToUtf8(tls, zWideText) } // C documentation // // /* // ** This is a public wrapper for the winUtf8ToMbcs() function. // */ func Xsqlite3_win32_utf8_to_mbcs(tls *libc.TLS, zText uintptr) (r uintptr) { if Xsqlite3_initialize(tls) != 0 { return uintptr(0) } return _winUtf8ToMbcs(tls, zText, (*(*func(*libc.TLS) TBOOL)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[0].FpCurrent})))(tls)) } // C documentation // // /* // ** This is a public wrapper for the winUtf8ToMbcs() function. // */ func Xsqlite3_win32_utf8_to_mbcs_v2(tls *libc.TLS, zText uintptr, useAnsi int32) (r uintptr) { if Xsqlite3_initialize(tls) != 0 { return uintptr(0) } return _winUtf8ToMbcs(tls, zText, useAnsi) } // C documentation // // /* // ** This is a public wrapper for the winUtf8ToUnicode() function. // */ func Xsqlite3_win32_utf8_to_unicode(tls *libc.TLS, zText uintptr) (r TLPWSTR) { if Xsqlite3_initialize(tls) != 0 { return uintptr(0) } return _winUtf8ToUnicode(tls, zText) } // C documentation // // /* // ** Provide a database schema to the changegroup object. // */ func Xsqlite3changegroup_schema(tls *libc.TLS, pGrp uintptr, db uintptr, zDb uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 _ = rc rc = SQLITE_OK if (*Tsqlite3_changegroup)(unsafe.Pointer(pGrp)).FpList != 0 || (*Tsqlite3_changegroup)(unsafe.Pointer(pGrp)).Fdb != 0 { /* Cannot add a schema after one or more calls to sqlite3changegroup_add(), ** or after sqlite3changegroup_schema() has already been called. */ rc = int32(SQLITE_MISUSE) } else { (*Tsqlite3_changegroup)(unsafe.Pointer(pGrp)).FzDb = Xsqlite3_mprintf(tls, __ccgo_ts+4729, libc.VaList(bp+8, zDb)) if (*Tsqlite3_changegroup)(unsafe.Pointer(pGrp)).FzDb == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { (*Tsqlite3_changegroup)(unsafe.Pointer(pGrp)).Fdb = db } } return rc } func Xsqlite3rbu_savestate(tls *libc.TLS, p uintptr) (r int32) { var pDb, zBegin, v1 uintptr var rc int32 _, _, _, _ = pDb, rc, zBegin, v1 rc = (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc if rc == int32(SQLITE_DONE) { return SQLITE_OK } if (*Tsqlite3rbu)(unsafe.Pointer(p)).FeStage == int32(RBU_STAGE_OAL) { if rc == SQLITE_OK { rc = Xsqlite3_exec(tls, (*Tsqlite3rbu)(unsafe.Pointer(p)).FdbMain, __ccgo_ts+17340, uintptr(0), uintptr(0), uintptr(0)) } } /* Sync the db file */ if rc == SQLITE_OK && (*Tsqlite3rbu)(unsafe.Pointer(p)).FeStage == int32(RBU_STAGE_CKPT) { pDb = (*Trbu_file)(unsafe.Pointer((*Tsqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSync})))(tls, pDb, int32(SQLITE_SYNC_NORMAL)) } (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = rc _rbuSaveState(tls, p, (*Tsqlite3rbu)(unsafe.Pointer(p)).FeStage) rc = (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc if (*Tsqlite3rbu)(unsafe.Pointer(p)).FeStage == int32(RBU_STAGE_OAL) { if rc == SQLITE_OK { rc = Xsqlite3_exec(tls, (*Tsqlite3rbu)(unsafe.Pointer(p)).FdbRbu, __ccgo_ts+17340, uintptr(0), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { if (*Tsqlite3rbu)(unsafe.Pointer(p)).FzTarget == uintptr(0) { v1 = __ccgo_ts + 17325 } else { v1 = __ccgo_ts + 35873 } zBegin = v1 rc = Xsqlite3_exec(tls, (*Tsqlite3rbu)(unsafe.Pointer(p)).FdbRbu, zBegin, uintptr(0), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { rc = Xsqlite3_exec(tls, (*Tsqlite3rbu)(unsafe.Pointer(p)).FdbMain, __ccgo_ts+35873, uintptr(0), uintptr(0), uintptr(0)) } } (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = rc return rc } type YIELDPROC = TYIELDPROC const YieldProcessor = 0 type ZAFLAGS = TZAFLAGS const ZAWPROXYAPI = "DECLSPEC_IMPORT" const ZERO_PADDING = 3 type ZONEATTRIBUTES = TZONEATTRIBUTES const ZeroMemory = 0 type _ABC = T_ABC type _ABCFLOAT = T_ABCFLOAT const _ABL_5_WO = 64 type _ACCESS_ALLOWED_ACE = T_ACCESS_ALLOWED_ACE type _ACCESS_ALLOWED_CALLBACK_ACE = T_ACCESS_ALLOWED_CALLBACK_ACE type _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE = T_ACCESS_ALLOWED_CALLBACK_OBJECT_ACE type _ACCESS_ALLOWED_OBJECT_ACE = T_ACCESS_ALLOWED_OBJECT_ACE type _ACCESS_DENIED_ACE = T_ACCESS_DENIED_ACE type _ACCESS_DENIED_CALLBACK_ACE = T_ACCESS_DENIED_CALLBACK_ACE type _ACCESS_DENIED_CALLBACK_OBJECT_ACE = T_ACCESS_DENIED_CALLBACK_OBJECT_ACE type _ACCESS_DENIED_OBJECT_ACE = T_ACCESS_DENIED_OBJECT_ACE type _ACCESS_REASONS = T_ACCESS_REASONS type _ACE_HEADER = T_ACE_HEADER type _ACL = T_ACL type _ACL_REVISION_INFORMATION = T_ACL_REVISION_INFORMATION type _ACL_SIZE_INFORMATION = T_ACL_SIZE_INFORMATION const _ACTCTX_COMPATIBILITY_ELEMENT_TYPE_MITIGATION = 2 const _ACTCTX_COMPATIBILITY_ELEMENT_TYPE_OS = 1 const _ACTCTX_COMPATIBILITY_ELEMENT_TYPE_UNKNOWN = 0 const _ACTCTX_RUN_LEVEL_AS_INVOKER = 1 const _ACTCTX_RUN_LEVEL_HIGHEST_AVAILABLE = 2 const _ACTCTX_RUN_LEVEL_NUMBERS = 4 const _ACTCTX_RUN_LEVEL_REQUIRE_ADMIN = 3 const _ACTCTX_RUN_LEVEL_UNSPECIFIED = 0 type _ACTION_HEADER = T_ACTION_HEADER type _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION = T_ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION type _ACTIVATION_CONTEXT_BASIC_INFORMATION = T_ACTIVATION_CONTEXT_BASIC_INFORMATION type _ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION = T_ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION type _ACTIVATION_CONTEXT_DETAILED_INFORMATION = T_ACTIVATION_CONTEXT_DETAILED_INFORMATION type _ACTIVATION_CONTEXT_QUERY_INDEX = T_ACTIVATION_CONTEXT_QUERY_INDEX type _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION = T_ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION type _ADAPTER_STATUS = T_ADAPTER_STATUS type _ADDJOB_INFO_1A = T_ADDJOB_INFO_1A type _ADDJOB_INFO_1W = T_ADDJOB_INFO_1W type _ADMINISTRATOR_POWER_POLICY = T_ADMINISTRATOR_POWER_POLICY const _ADR_1 = 90 const _ADR_2 = 91 const _ADVFCACHE_FORCEBUILTIN = 16 const _ADVFCACHE_NOHANDLER = 8 const _ADVFCACHE_ONSAVE = 32 const _ADVF_DATAONSTOP = 64 const _ADVF_NODATA = 1 const _ADVF_ONLYONCE = 4 const _ADVF_PRIMEFIRST = 2 const _AIT1_8mm = 38 const _AIT_8mm = 89 const _ALLOCA_S_HEAP_MARKER = 56797 const _ALLOCA_S_STACK_MARKER = 52428 const _ALLOCA_S_THRESHOLD = 1024 const _ALPHA = 259 const _AME_8mm = 37 const _ANONYMOUS_STRUCT = 0 const _ANONYMOUS_UNION = 0 type _APPLICATIONLAUNCH_SETTING_VALUE = T_APPLICATIONLAUNCH_SETTING_VALUE const _APPLY_SNAPSHOT_VHDSET_FLAG_NONE = 0 const _APPLY_SNAPSHOT_VHDSET_FLAG_WRITEABLE = 1 type _APPLY_SNAPSHOT_VHDSET_PARAMETERS = T_APPLY_SNAPSHOT_VHDSET_PARAMETERS const _APPLY_SNAPSHOT_VHDSET_VERSION_1 = 1 const _APPLY_SNAPSHOT_VHDSET_VERSION_UNSPECIFIED = 0 type _APP_MEMORY_INFORMATION = T_APP_MEMORY_INFORMATION const _APTTYPEQUALIFIER_APPLICATION_STA = 6 const _APTTYPEQUALIFIER_IMPLICIT_MTA = 1 const _APTTYPEQUALIFIER_NA_ON_IMPLICIT_MTA = 4 const _APTTYPEQUALIFIER_NA_ON_MAINSTA = 5 const _APTTYPEQUALIFIER_NA_ON_MTA = 2 const _APTTYPEQUALIFIER_NA_ON_STA = 3 const _APTTYPEQUALIFIER_NONE = 0 const _APTTYPE_CURRENT = -1 const _APTTYPE_MAINSTA = 3 const _APTTYPE_MTA = 1 const _APTTYPE_NA = 2 const _APTTYPE_STA = 0 const _ARGMAX = 100 const _AR_DISABLED = 1 const _AR_DOCKED = 64 const _AR_ENABLED = 0 const _AR_LAPTOP = 128 const _AR_MULTIMON = 8 const _AR_NOSENSOR = 16 const _AR_NOT_SUPPORTED = 32 const _AR_REMOTESESSION = 4 const _AR_SUPPRESSED = 2 const _ASSEMBLY_DLL_REDIRECTION_DETAILED_INFORMATION = 0 type _ASSEMBLY_FILE_DETAILED_INFORMATION = T_ASSEMBLY_FILE_DETAILED_INFORMATION type _ASSOCCLASS = int32 const _ASSOCCLASS_APP_KEY = 5 const _ASSOCCLASS_APP_STR = 6 const _ASSOCCLASS_CLSID_KEY = 3 const _ASSOCCLASS_CLSID_STR = 4 const _ASSOCCLASS_FIXED_PROGID_STR = 10 const _ASSOCCLASS_FOLDER = 8 const _ASSOCCLASS_PROGID_KEY = 1 const _ASSOCCLASS_PROGID_STR = 2 const _ASSOCCLASS_PROTOCOL_STR = 11 const _ASSOCCLASS_SHELL_KEY = 0 const _ASSOCCLASS_STAR = 9 const _ASSOCCLASS_SYSTEM_STR = 7 const _ATTACH_VIRTUAL_DISK_FLAG_NONE = 0 const _ATTACH_VIRTUAL_DISK_FLAG_NO_DRIVE_LETTER = 2 const _ATTACH_VIRTUAL_DISK_FLAG_NO_LOCAL_HOST = 8 const _ATTACH_VIRTUAL_DISK_FLAG_PERMANENT_LIFETIME = 4 const _ATTACH_VIRTUAL_DISK_FLAG_READ_ONLY = 1 type _ATTACH_VIRTUAL_DISK_PARAMETERS = T_ATTACH_VIRTUAL_DISK_PARAMETERS const _ATTACH_VIRTUAL_DISK_VERSION_1 = 1 const _ATTACH_VIRTUAL_DISK_VERSION_UNSPECIFIED = 0 const _AUTHENTICATEF_BASIC = 2 const _AUTHENTICATEF_HTTP = 4 const _AUTHENTICATEF_PROXY = 1 type _AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA = T_AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA type _AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS = T_AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS type _AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA = T_AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA const _AVATAR_F2 = 78 const _AccessReasonAllowedAce = 65536 const _AccessReasonAllowedParentAce = 196608 const _AccessReasonDeniedAce = 131072 const _AccessReasonDeniedParentAce = 262144 const _AccessReasonEmptyDacl = 6291456 const _AccessReasonFromPrivilege = 2097152 const _AccessReasonIntegrityLevel = 3145728 const _AccessReasonMissingPrivilege = 1048576 const _AccessReasonNoGrant = 8388608 const _AccessReasonNoSD = 7340032 const _AccessReasonNone = 0 const _AccessReasonNotGrantedByCape = 327680 const _AccessReasonNotGrantedByParentCape = 393216 const _AccessReasonNotGrantedToAppContainer = 458752 const _AccessReasonNullDacl = 5242880 const _AccessReasonOwnership = 4194304 const _AclRevisionInformation = 1 const _AclSizeInformation = 2 const _ActivationContextBasicInformation = 1 const _ActivationContextDetailedInformation = 2 const _ActivationContextManifestResourceName = 7 const _AdapterType = 4 const _AdministratorPowerPolicy = 9 const _AllElements = 0 type _AppBarData = T_AppBarData const _ApplyLowPowerScenarioSettings = 79 const _AssemblyDetailedInformationInActivationContext = 3 const _AssemblyDetailedInformationInActivationContxt = 3 const _AtaDataTypeIdentify = 1 const _AtaDataTypeLogPage = 2 const _AtaDataTypeUnknown = 0 const _AuditEventDirectoryServiceAccess = 1 const _AuditEventObjectAccess = 0 const _AutoLoad = 2 type _BCRYPT_ALGORITHM_IDENTIFIER = T_BCRYPT_ALGORITHM_IDENTIFIER type _BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO = T_BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO type _BCRYPT_DH_KEY_BLOB = T_BCRYPT_DH_KEY_BLOB type _BCRYPT_DH_PARAMETER_HEADER = T_BCRYPT_DH_PARAMETER_HEADER type _BCRYPT_DSA_KEY_BLOB = T_BCRYPT_DSA_KEY_BLOB type _BCRYPT_DSA_KEY_BLOB_V2 = T_BCRYPT_DSA_KEY_BLOB_V2 type _BCRYPT_DSA_PARAMETER_HEADER = T_BCRYPT_DSA_PARAMETER_HEADER type _BCRYPT_DSA_PARAMETER_HEADER_V2 = T_BCRYPT_DSA_PARAMETER_HEADER_V2 type _BCRYPT_ECCKEY_BLOB = T_BCRYPT_ECCKEY_BLOB type _BCRYPT_ECC_CURVE_NAMES = T_BCRYPT_ECC_CURVE_NAMES const _BCRYPT_HASH_OPERATION_FINISH_HASH = 2 const _BCRYPT_HASH_OPERATION_HASH_DATA = 1 type _BCRYPT_INTERFACE_VERSION = T_BCRYPT_INTERFACE_VERSION type _BCRYPT_KEY_BLOB = T_BCRYPT_KEY_BLOB type _BCRYPT_KEY_DATA_BLOB_HEADER = T_BCRYPT_KEY_DATA_BLOB_HEADER type _BCRYPT_MULTI_HASH_OPERATION = T_BCRYPT_MULTI_HASH_OPERATION type _BCRYPT_MULTI_OBJECT_LENGTH_STRUCT = T_BCRYPT_MULTI_OBJECT_LENGTH_STRUCT type _BCRYPT_OAEP_PADDING_INFO = T_BCRYPT_OAEP_PADDING_INFO type _BCRYPT_OID = T_BCRYPT_OID type _BCRYPT_OID_LIST = T_BCRYPT_OID_LIST const _BCRYPT_OPERATION_TYPE_HASH = 1 type _BCRYPT_PKCS1_PADDING_INFO = T_BCRYPT_PKCS1_PADDING_INFO type _BCRYPT_PROVIDER_NAME = T_BCRYPT_PROVIDER_NAME type _BCRYPT_PSS_PADDING_INFO = T_BCRYPT_PSS_PADDING_INFO type _BCRYPT_RSAKEY_BLOB = T_BCRYPT_RSAKEY_BLOB type _BCryptBuffer = T_BCryptBuffer type _BCryptBufferDesc = T_BCryptBufferDesc const _BIDI_BLOB = 7 const _BIDI_BOOL = 3 type _BIDI_DATA = T_BIDI_DATA const _BIDI_ENUM = 6 const _BIDI_FLOAT = 2 const _BIDI_INT = 1 const _BIDI_NULL = 0 type _BIDI_REQUEST_CONTAINER = T_BIDI_REQUEST_CONTAINER type _BIDI_REQUEST_DATA = T_BIDI_REQUEST_DATA type _BIDI_RESPONSE_CONTAINER = T_BIDI_RESPONSE_CONTAINER type _BIDI_RESPONSE_DATA = T_BIDI_RESPONSE_DATA const _BIDI_STRING = 4 const _BIDI_TEXT = 5 type _BINARY_CONTAINER = T_BINARY_CONTAINER const _BINDF2_ALLOW_PROXY_CRED_PROMPT = 256 const _BINDF2_DISABLEAUTOCOOKIEHANDLING = 2 const _BINDF2_DISABLEBASICOVERHTTP = 1 const _BINDF2_DISABLE_HTTP_REDIRECT_CACHING = 64 const _BINDF2_DISABLE_HTTP_REDIRECT_XSECURITYID = 8 const _BINDF2_KEEP_CALLBACK_MODULE_LOADED = 128 const _BINDF2_READ_DATA_GREATER_THAN_4GB = 4 const _BINDF2_RESERVED_1 = 2147483648 const _BINDF2_RESERVED_2 = 1073741824 const _BINDF2_RESERVED_3 = 536870912 const _BINDF2_RESERVED_4 = 268435456 const _BINDF2_RESERVED_5 = 134217728 const _BINDF2_RESERVED_6 = 67108864 const _BINDF2_RESERVED_7 = 33554432 const _BINDF2_RESERVED_8 = 16777216 const _BINDF2_RESERVED_9 = 8388608 const _BINDF2_RESERVED_A = 4194304 const _BINDF2_RESERVED_B = 2097152 const _BINDF2_RESERVED_C = 1048576 const _BINDF2_RESERVED_D = 524288 const _BINDF2_RESERVED_E = 262144 const _BINDF2_RESERVED_F = 131072 const _BINDF2_SETDOWNLOADMODE = 32 const _BINDF_ASYNCHRONOUS = 1 const _BINDF_ASYNCSTORAGE = 2 const _BINDF_DIRECT_READ = 131072 const _BINDF_ENFORCERESTRICTED = 8388608 const _BINDF_FORMS_SUBMIT = 262144 const _BINDF_FREE_THREADED = 65536 const _BINDF_FROMURLMON = 1048576 const _BINDF_FWD_BACK = 2097152 const _BINDF_GETCLASSOBJECT = 16384 const _BINDF_GETFROMCACHE_IF_NET_FAIL = 524288 const _BINDF_GETNEWESTVERSION = 16 const _BINDF_HYPERLINK = 1024 const _BINDF_IGNORESECURITYPROBLEM = 256 const _BINDF_NEEDFILE = 64 const _BINDF_NOPROGRESSIVERENDERING = 4 const _BINDF_NOWRITECACHE = 32 const _BINDF_NO_UI = 2048 const _BINDF_OFFLINEOPERATION = 8 const _BINDF_PRAGMA_NO_CACHE = 8192 const _BINDF_PREFERDEFAULTHANDLER = 4194304 const _BINDF_PULLDATA = 128 const _BINDF_RESERVED_1 = 32768 const _BINDF_RESERVED_2 = 2147483648 const _BINDF_RESERVED_3 = 16777216 const _BINDF_RESERVED_4 = 33554432 const _BINDF_RESERVED_5 = 67108864 const _BINDF_RESERVED_6 = 134217728 const _BINDF_RESERVED_7 = 1073741824 const _BINDF_RESERVED_8 = 536870912 const _BINDF_RESYNCHRONIZE = 512 const _BINDF_SILENTOPERATION = 4096 const _BINDHANDLETYPES_APPCACHE = 0 const _BINDHANDLETYPES_COUNT = 2 const _BINDHANDLETYPES_DEPENDENCY = 1 const _BINDINFOF_URLENCODEDEXTRAINFO = 2 const _BINDINFOF_URLENCODESTGMEDDATA = 1 const _BINDINFO_OPTIONS_ALLOWCONNECTDATA = 536870912 const _BINDINFO_OPTIONS_BINDTOOBJECT = 1048576 const _BINDINFO_OPTIONS_DISABLEAUTOREDIRECTS = 1073741824 const _BINDINFO_OPTIONS_DISABLE_UTF8 = 262144 const _BINDINFO_OPTIONS_ENABLE_UTF8 = 131072 const _BINDINFO_OPTIONS_IGNOREHTTPHTTPSREDIRECTS = 16777216 const _BINDINFO_OPTIONS_IGNOREMIMETEXTPLAIN = 4194304 const _BINDINFO_OPTIONS_IGNORE_SSLERRORS_ONCE = 33554432 const _BINDINFO_OPTIONS_SECURITYOPTOUT = 2097152 const _BINDINFO_OPTIONS_SHDOCVW_NAVIGATE = -2147483648 const _BINDINFO_OPTIONS_USEBINDSTRINGCREDS = 8388608 const _BINDINFO_OPTIONS_USE_IE_ENCODING = 524288 const _BINDINFO_OPTIONS_WININETFLAG = 65536 const _BINDINFO_WPC_DOWNLOADBLOCKED = 134217728 const _BINDINFO_WPC_LOGGING_ENABLED = 268435456 const _BINDSPEED_IMMEDIATE = 3 const _BINDSPEED_INDEFINITE = 1 const _BINDSPEED_MODERATE = 2 const _BINDSTATUS_64BIT_PROGRESS = 56 const _BINDSTATUS_ACCEPTRANGES = 33 const _BINDSTATUS_BEGINDOWNLOADCOMPONENTS = 7 const _BINDSTATUS_BEGINDOWNLOADDATA = 4 const _BINDSTATUS_BEGINSYNCOPERATION = 15 const _BINDSTATUS_BEGINUPLOADDATA = 17 const _BINDSTATUS_CACHECONTROL = 48 const _BINDSTATUS_CACHEFILENAMEAVAILABLE = 14 const _BINDSTATUS_CLASSIDAVAILABLE = 12 const _BINDSTATUS_CLASSINSTALLLOCATION = 23 const _BINDSTATUS_CLSIDCANINSTANTIATE = 28 const _BINDSTATUS_COMPACT_POLICY_RECEIVED = 35 const _BINDSTATUS_CONNECTING = 2 const _BINDSTATUS_CONTENTDISPOSITIONATTACH = 26 const _BINDSTATUS_CONTENTDISPOSITIONFILENAME = 49 const _BINDSTATUS_COOKIE_SENT = 34 const _BINDSTATUS_COOKIE_STATE_ACCEPT = 38 const _BINDSTATUS_COOKIE_STATE_DOWNGRADE = 42 const _BINDSTATUS_COOKIE_STATE_LEASH = 41 const _BINDSTATUS_COOKIE_STATE_PROMPT = 40 const _BINDSTATUS_COOKIE_STATE_REJECT = 39 const _BINDSTATUS_COOKIE_STATE_UNKNOWN = 37 const _BINDSTATUS_COOKIE_SUPPRESSED = 36 const _BINDSTATUS_DECODING = 24 const _BINDSTATUS_DIRECTBIND = 30 const _BINDSTATUS_DISPLAYNAMEAVAILABLE = 52 const _BINDSTATUS_DOWNLOADINGDATA = 5 const _BINDSTATUS_ENCODING = 21 const _BINDSTATUS_ENDDOWNLOADCOMPONENTS = 9 const _BINDSTATUS_ENDDOWNLOADDATA = 6 const _BINDSTATUS_ENDSYNCOPERATION = 16 const _BINDSTATUS_ENDUPLOADDATA = 19 const _BINDSTATUS_FILTERREPORTMIMETYPE = 27 const _BINDSTATUS_FINDINGRESOURCE = 1 const _BINDSTATUS_INSTALLINGCOMPONENTS = 8 const _BINDSTATUS_IUNKNOWNAVAILABLE = 29 const _BINDSTATUS_LAST = 56 const _BINDSTATUS_LAST_PRIVATE = 66 const _BINDSTATUS_LOADINGMIMEHANDLER = 25 const _BINDSTATUS_MIMETEXTPLAINMISMATCH = 50 const _BINDSTATUS_MIMETYPEAVAILABLE = 13 const _BINDSTATUS_P3P_HEADER = 44 const _BINDSTATUS_PERSISTENT_COOKIE_RECEIVED = 46 const _BINDSTATUS_POLICY_HREF = 43 const _BINDSTATUS_PROTOCOLCLASSID = 20 const _BINDSTATUS_PROXYDETECTING = 32 const _BINDSTATUS_PUBLISHERAVAILABLE = 51 const _BINDSTATUS_RAWMIMETYPE = 31 const _BINDSTATUS_REDIRECTING = 3 const _BINDSTATUS_RESERVED_0 = 57 const _BINDSTATUS_RESERVED_1 = 58 const _BINDSTATUS_RESERVED_2 = 59 const _BINDSTATUS_RESERVED_3 = 60 const _BINDSTATUS_RESERVED_4 = 61 const _BINDSTATUS_RESERVED_5 = 62 const _BINDSTATUS_RESERVED_6 = 63 const _BINDSTATUS_RESERVED_7 = 64 const _BINDSTATUS_RESERVED_8 = 65 const _BINDSTATUS_RESERVED_9 = 66 const _BINDSTATUS_SENDINGREQUEST = 11 const _BINDSTATUS_SERVER_MIMETYPEAVAILABLE = 54 const _BINDSTATUS_SESSION_COOKIES_ALLOWED = 47 const _BINDSTATUS_SESSION_COOKIE_RECEIVED = 45 const _BINDSTATUS_SNIFFED_CLASSIDAVAILABLE = 55 const _BINDSTATUS_SSLUX_NAVBLOCKED = 53 const _BINDSTATUS_UPLOADINGDATA = 18 const _BINDSTATUS_USINGCACHEDCOPY = 10 const _BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE = 22 const _BINDSTRING_ACCEPT_ENCODINGS = 11 const _BINDSTRING_ACCEPT_MIMES = 2 const _BINDSTRING_DOWNLOADPATH = 19 const _BINDSTRING_EXTRA_URL = 3 const _BINDSTRING_FLAG_BIND_TO_OBJECT = 16 const _BINDSTRING_HEADERS = 1 const _BINDSTRING_IID = 15 const _BINDSTRING_INITIAL_FILENAME = 21 const _BINDSTRING_LANGUAGE = 4 const _BINDSTRING_OS = 9 const _BINDSTRING_PASSWORD = 6 const _BINDSTRING_POST_COOKIE = 12 const _BINDSTRING_POST_DATA_MIME = 13 const _BINDSTRING_PROXY_PASSWORD = 23 const _BINDSTRING_PROXY_USERNAME = 22 const _BINDSTRING_PTR_BIND_CONTEXT = 17 const _BINDSTRING_ROOTDOC_URL = 20 const _BINDSTRING_UA_COLOR = 8 const _BINDSTRING_UA_PIXELS = 7 const _BINDSTRING_URL = 14 const _BINDSTRING_USERNAME = 5 const _BINDSTRING_USER_AGENT = 10 const _BINDSTRING_XDR_ORIGIN = 18 const _BINDVERB_CUSTOM = 3 const _BINDVERB_GET = 0 const _BINDVERB_POST = 1 const _BINDVERB_PUT = 2 const _BINDVERB_RESERVED1 = 4 const _BIND_JUSTTESTEXISTENCE = 2 const _BIND_MAYBOTHERUSER = 1 type _BIN_COUNT = T_BIN_COUNT type _BIN_RANGE = T_BIN_RANGE type _BIN_RESULTS = T_BIN_RESULTS const _BLANK = 64 type _BLENDFUNCTION = T_BLENDFUNCTION type _BOOT_AREA_INFO = T_BOOT_AREA_INFO const _BSCF_64BITLENGTHDOWNLOAD = 64 const _BSCF_AVAILABLEDATASIZEUNKNOWN = 16 const _BSCF_DATAFULLYAVAILABLE = 8 const _BSCF_FIRSTDATANOTIFICATION = 1 const _BSCF_INTERMEDIATEDATANOTIFICATION = 2 const _BSCF_LASTDATANOTIFICATION = 4 const _BSCF_SKIPDRAINDATAFORFILEURLS = 32 type _BYTE_BLOB = T_BYTE_BLOB type _BYTE_SIZEDARR = T_BYTE_SIZEDARR type _BY_HANDLE_FILE_INFORMATION = T_BY_HANDLE_FILE_INFORMATION const _BootLoad = 0 const _BusType1394 = 4 const _BusTypeAta = 3 const _BusTypeAtapi = 2 const _BusTypeFibre = 6 const _BusTypeFileBackedVirtual = 15 const _BusTypeMax = 20 const _BusTypeMaxReserved = 127 const _BusTypeMmc = 13 const _BusTypeNvme = 17 const _BusTypeRAID = 8 const _BusTypeSCM = 18 const _BusTypeSas = 10 const _BusTypeSata = 11 const _BusTypeScsi = 1 const _BusTypeSd = 12 const _BusTypeSpaces = 16 const _BusTypeSsa = 5 const _BusTypeUfs = 19 const _BusTypeUnknown = 0 const _BusTypeUsb = 7 const _BusTypeVirtual = 14 const _BusTypeiScsi = 9 type _CACHE_DESCRIPTOR = T_CACHE_DESCRIPTOR type _CACHE_RELATIONSHIP = T_CACHE_RELATIONSHIP const _CALLTYPE_ASYNC = 3 const _CALLTYPE_ASYNC_CALLPENDING = 5 const _CALLTYPE_NESTED = 2 const _CALLTYPE_TOPLEVEL = 1 const _CALLTYPE_TOPLEVEL_CALLPENDING = 4 const _CALL_REPORTFAULT = 2 const _CC_CDECL = 1 const _CC_FASTCALL = 0 const _CC_FPFASTCALL = 5 const _CC_MACPASCAL = 3 const _CC_MAX = 9 const _CC_MPWCDECL = 7 const _CC_MPWPASCAL = 8 const _CC_MSCPASCAL = 2 const _CC_PASCAL = 2 const _CC_STDCALL = 4 const _CC_SYSCALL = 6 const _CD_R = 52 const _CD_ROM = 51 const _CD_RW = 53 type _CERTIFICATE_BLOB = T_CERTIFICATE_BLOB type _CERT_ACCESS_DESCRIPTION = T_CERT_ACCESS_DESCRIPTION type _CERT_ALT_NAME_ENTRY = T_CERT_ALT_NAME_ENTRY type _CERT_ALT_NAME_INFO = T_CERT_ALT_NAME_INFO type _CERT_AUTHORITY_INFO_ACCESS = T_CERT_AUTHORITY_INFO_ACCESS type _CERT_AUTHORITY_KEY_ID2_INFO = T_CERT_AUTHORITY_KEY_ID2_INFO type _CERT_AUTHORITY_KEY_ID_INFO = T_CERT_AUTHORITY_KEY_ID_INFO type _CERT_BASIC_CONSTRAINTS2_INFO = T_CERT_BASIC_CONSTRAINTS2_INFO type _CERT_BASIC_CONSTRAINTS_INFO = T_CERT_BASIC_CONSTRAINTS_INFO type _CERT_BIOMETRIC_DATA = T_CERT_BIOMETRIC_DATA type _CERT_BIOMETRIC_EXT_INFO = T_CERT_BIOMETRIC_EXT_INFO type _CERT_CHAIN = T_CERT_CHAIN type _CERT_CHAIN_CONTEXT = T_CERT_CHAIN_CONTEXT type _CERT_CHAIN_ELEMENT = T_CERT_CHAIN_ELEMENT type _CERT_CHAIN_ENGINE_CONFIG = T_CERT_CHAIN_ENGINE_CONFIG type _CERT_CHAIN_FIND_BY_ISSUER_PARA = T_CERT_CHAIN_FIND_BY_ISSUER_PARA type _CERT_CHAIN_PARA = T_CERT_CHAIN_PARA type _CERT_CHAIN_POLICY_PARA = T_CERT_CHAIN_POLICY_PARA type _CERT_CHAIN_POLICY_STATUS = T_CERT_CHAIN_POLICY_STATUS type _CERT_CONTEXT = T_CERT_CONTEXT type _CERT_CREATE_CONTEXT_PARA = T_CERT_CREATE_CONTEXT_PARA type _CERT_CRL_CONTEXT_PAIR = T_CERT_CRL_CONTEXT_PAIR type _CERT_DH_PARAMETERS = T_CERT_DH_PARAMETERS type _CERT_DSS_PARAMETERS = T_CERT_DSS_PARAMETERS type _CERT_ECC_SIGNATURE = T_CERT_ECC_SIGNATURE type _CERT_EXTENSION = T_CERT_EXTENSION type _CERT_EXTENSIONS = T_CERT_EXTENSIONS type _CERT_FORTEZZA_DATA_PROP = T_CERT_FORTEZZA_DATA_PROP type _CERT_GENERAL_SUBTREE = T_CERT_GENERAL_SUBTREE type _CERT_HASHED_URL = T_CERT_HASHED_URL type _CERT_ID = T_CERT_ID type _CERT_INFO = T_CERT_INFO type _CERT_ISSUER_SERIAL_NUMBER = T_CERT_ISSUER_SERIAL_NUMBER type _CERT_KEYGEN_REQUEST_INFO = T_CERT_KEYGEN_REQUEST_INFO type _CERT_KEY_ATTRIBUTES_INFO = T_CERT_KEY_ATTRIBUTES_INFO type _CERT_KEY_CONTEXT = T_CERT_KEY_CONTEXT type _CERT_KEY_USAGE_RESTRICTION_INFO = T_CERT_KEY_USAGE_RESTRICTION_INFO type _CERT_LDAP_STORE_OPENED_PARA = T_CERT_LDAP_STORE_OPENED_PARA type _CERT_LOGOTYPE_AUDIO = T_CERT_LOGOTYPE_AUDIO type _CERT_LOGOTYPE_AUDIO_INFO = T_CERT_LOGOTYPE_AUDIO_INFO type _CERT_LOGOTYPE_DATA = T_CERT_LOGOTYPE_DATA type _CERT_LOGOTYPE_DETAILS = T_CERT_LOGOTYPE_DETAILS type _CERT_LOGOTYPE_EXT_INFO = T_CERT_LOGOTYPE_EXT_INFO type _CERT_LOGOTYPE_IMAGE = T_CERT_LOGOTYPE_IMAGE type _CERT_LOGOTYPE_IMAGE_INFO = T_CERT_LOGOTYPE_IMAGE_INFO type _CERT_LOGOTYPE_INFO = T_CERT_LOGOTYPE_INFO type _CERT_LOGOTYPE_REFERENCE = T_CERT_LOGOTYPE_REFERENCE type _CERT_NAME_CONSTRAINTS_INFO = T_CERT_NAME_CONSTRAINTS_INFO type _CERT_NAME_INFO = T_CERT_NAME_INFO type _CERT_NAME_VALUE = T_CERT_NAME_VALUE type _CERT_OR_CRL_BLOB = T_CERT_OR_CRL_BLOB type _CERT_OR_CRL_BUNDLE = T_CERT_OR_CRL_BUNDLE type _CERT_OTHER_LOGOTYPE_INFO = T_CERT_OTHER_LOGOTYPE_INFO type _CERT_OTHER_NAME = T_CERT_OTHER_NAME type _CERT_PAIR = T_CERT_PAIR type _CERT_PHYSICAL_STORE_INFO = T_CERT_PHYSICAL_STORE_INFO type _CERT_POLICIES_INFO = T_CERT_POLICIES_INFO type _CERT_POLICY95_QUALIFIER1 = T_CERT_POLICY95_QUALIFIER1 type _CERT_POLICY_CONSTRAINTS_INFO = T_CERT_POLICY_CONSTRAINTS_INFO type _CERT_POLICY_ID = T_CERT_POLICY_ID type _CERT_POLICY_INFO = T_CERT_POLICY_INFO type _CERT_POLICY_MAPPING = T_CERT_POLICY_MAPPING type _CERT_POLICY_MAPPINGS_INFO = T_CERT_POLICY_MAPPINGS_INFO type _CERT_POLICY_QUALIFIER_INFO = T_CERT_POLICY_QUALIFIER_INFO type _CERT_POLICY_QUALIFIER_NOTICE_REFERENCE = T_CERT_POLICY_QUALIFIER_NOTICE_REFERENCE type _CERT_POLICY_QUALIFIER_USER_NOTICE = T_CERT_POLICY_QUALIFIER_USER_NOTICE type _CERT_PRIVATE_KEY_VALIDITY = T_CERT_PRIVATE_KEY_VALIDITY type _CERT_PUBLIC_KEY_INFO = T_CERT_PUBLIC_KEY_INFO type _CERT_QC_STATEMENT = T_CERT_QC_STATEMENT type _CERT_QC_STATEMENTS_EXT_INFO = T_CERT_QC_STATEMENTS_EXT_INFO type _CERT_RDN = T_CERT_RDN type _CERT_RDN_ATTR = T_CERT_RDN_ATTR type _CERT_REGISTRY_STORE_CLIENT_GPT_PARA = T_CERT_REGISTRY_STORE_CLIENT_GPT_PARA type _CERT_REGISTRY_STORE_ROAMING_PARA = T_CERT_REGISTRY_STORE_ROAMING_PARA type _CERT_REQUEST_INFO = T_CERT_REQUEST_INFO type _CERT_REVOCATION_CHAIN_PARA = T_CERT_REVOCATION_CHAIN_PARA type _CERT_REVOCATION_CRL_INFO = T_CERT_REVOCATION_CRL_INFO type _CERT_REVOCATION_INFO = T_CERT_REVOCATION_INFO type _CERT_REVOCATION_PARA = T_CERT_REVOCATION_PARA type _CERT_REVOCATION_STATUS = T_CERT_REVOCATION_STATUS type _CERT_SELECT_CHAIN_PARA = T_CERT_SELECT_CHAIN_PARA type _CERT_SELECT_CRITERIA = T_CERT_SELECT_CRITERIA type _CERT_SERVER_OCSP_RESPONSE_CONTEXT = T_CERT_SERVER_OCSP_RESPONSE_CONTEXT type _CERT_SERVER_OCSP_RESPONSE_OPEN_PARA = T_CERT_SERVER_OCSP_RESPONSE_OPEN_PARA type _CERT_SIGNED_CONTENT_INFO = T_CERT_SIGNED_CONTENT_INFO type _CERT_SIMPLE_CHAIN = T_CERT_SIMPLE_CHAIN type _CERT_STORE_PROV_FIND_INFO = T_CERT_STORE_PROV_FIND_INFO type _CERT_STORE_PROV_INFO = T_CERT_STORE_PROV_INFO type _CERT_STRONG_SIGN_PARA = T_CERT_STRONG_SIGN_PARA type _CERT_STRONG_SIGN_SERIALIZED_INFO = T_CERT_STRONG_SIGN_SERIALIZED_INFO type _CERT_SUPPORTED_ALGORITHM_INFO = T_CERT_SUPPORTED_ALGORITHM_INFO type _CERT_SYSTEM_STORE_INFO = T_CERT_SYSTEM_STORE_INFO type _CERT_SYSTEM_STORE_RELOCATE_PARA = T_CERT_SYSTEM_STORE_RELOCATE_PARA type _CERT_TEMPLATE_EXT = T_CERT_TEMPLATE_EXT type _CERT_TPM_SPECIFICATION_INFO = T_CERT_TPM_SPECIFICATION_INFO type _CERT_TRUST_LIST_INFO = T_CERT_TRUST_LIST_INFO type _CERT_TRUST_STATUS = T_CERT_TRUST_STATUS type _CERT_USAGE_MATCH = T_CERT_USAGE_MATCH type _CERT_X942_DH_PARAMETERS = T_CERT_X942_DH_PARAMETERS type _CERT_X942_DH_VALIDATION_PARAMS = T_CERT_X942_DH_VALIDATION_PARAMS type _CFG_CALL_TARGET_INFO = T_CFG_CALL_TARGET_INFO const _CHANGEKIND_ADDMEMBER = 0 const _CHANGEKIND_CHANGEFAILED = 6 const _CHANGEKIND_DELETEMEMBER = 1 const _CHANGEKIND_GENERAL = 4 const _CHANGEKIND_INVALIDATE = 5 const _CHANGEKIND_MAX = 7 const _CHANGEKIND_SETDOCUMENTATION = 3 const _CHANGEKIND_SETNAMES = 2 type _CHANGER_ELEMENT = T_CHANGER_ELEMENT type _CHANGER_ELEMENT_LIST = T_CHANGER_ELEMENT_LIST type _CHANGER_ELEMENT_STATUS = T_CHANGER_ELEMENT_STATUS type _CHANGER_ELEMENT_STATUS_EX = T_CHANGER_ELEMENT_STATUS_EX type _CHANGER_EXCHANGE_MEDIUM = T_CHANGER_EXCHANGE_MEDIUM type _CHANGER_INITIALIZE_ELEMENT_STATUS = T_CHANGER_INITIALIZE_ELEMENT_STATUS type _CHANGER_MOVE_MEDIUM = T_CHANGER_MOVE_MEDIUM type _CHANGER_PRODUCT_DATA = T_CHANGER_PRODUCT_DATA type _CHANGER_READ_ELEMENT_STATUS = T_CHANGER_READ_ELEMENT_STATUS type _CHANGER_SEND_VOLUME_TAG_INFORMATION = T_CHANGER_SEND_VOLUME_TAG_INFORMATION type _CHANGER_SET_ACCESS = T_CHANGER_SET_ACCESS type _CHANGER_SET_POSITION = T_CHANGER_SET_POSITION type _CHAR_INFO = T_CHAR_INFO const _CIP_ACCESS_DENIED = 1 const _CIP_DISK_FULL = 0 const _CIP_EXE_SELF_REGISTERATION_TIMEOUT = 6 const _CIP_NAME_CONFLICT = 4 const _CIP_NEED_REBOOT = 8 const _CIP_NEED_REBOOT_UI_PERMISSION = 9 const _CIP_NEWER_VERSION_EXISTS = 2 const _CIP_OLDER_VERSION_EXISTS = 3 const _CIP_TRUST_VERIFICATION_COMPONENT_MISSING = 5 const _CIP_UNSAFE_TO_ABORT = 7 type _CLAIM_SECURITY_ATTRIBUTES_INFORMATION = T_CLAIM_SECURITY_ATTRIBUTES_INFORMATION type _CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE = T_CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE type _CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE = T_CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE type _CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 = T_CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 type _CLAIM_SECURITY_ATTRIBUTE_V1 = T_CLAIM_SECURITY_ATTRIBUTE_V1 const _CLASSIDPROP = 2 type _CLASS_MEDIA_CHANGE_CONTEXT = T_CLASS_MEDIA_CHANGE_CONTEXT const _CLEANER_CARTRIDGE = 50 type _CLIENT_CALL_RETURN = T_CLIENT_CALL_RETURN const _CLSCTX_ACTIVATE_32_BIT_SERVER = 262144 const _CLSCTX_ACTIVATE_64_BIT_SERVER = 524288 const _CLSCTX_ACTIVATE_AAA_AS_IU = 8388608 const _CLSCTX_APPCONTAINER = 4194304 const _CLSCTX_DISABLE_AAA = 32768 const _CLSCTX_ENABLE_AAA = 65536 const _CLSCTX_ENABLE_CLOAKING = 1048576 const _CLSCTX_ENABLE_CODE_DOWNLOAD = 8192 const _CLSCTX_FROM_DEFAULT_CONTEXT = 131072 const _CLSCTX_INPROC_HANDLER = 2 const _CLSCTX_INPROC_HANDLER16 = 32 const _CLSCTX_INPROC_SERVER = 1 const _CLSCTX_INPROC_SERVER16 = 8 const _CLSCTX_LOCAL_SERVER = 4 const _CLSCTX_NO_CODE_DOWNLOAD = 1024 const _CLSCTX_NO_CUSTOM_MARSHAL = 4096 const _CLSCTX_NO_FAILURE_LOG = 16384 const _CLSCTX_PS_DLL = -2147483648 const _CLSCTX_REMOTE_SERVER = 16 const _CLSCTX_RESERVED1 = 64 const _CLSCTX_RESERVED2 = 128 const _CLSCTX_RESERVED3 = 256 const _CLSCTX_RESERVED4 = 512 const _CLSCTX_RESERVED5 = 2048 type _CMC_ADD_ATTRIBUTES_INFO = T_CMC_ADD_ATTRIBUTES_INFO type _CMC_ADD_EXTENSIONS_INFO = T_CMC_ADD_EXTENSIONS_INFO type _CMC_DATA_INFO = T_CMC_DATA_INFO type _CMC_PEND_INFO = T_CMC_PEND_INFO type _CMC_RESPONSE_INFO = T_CMC_RESPONSE_INFO type _CMC_STATUS_INFO = T_CMC_STATUS_INFO type _CMC_TAGGED_ATTRIBUTE = T_CMC_TAGGED_ATTRIBUTE type _CMC_TAGGED_CERT_REQUEST = T_CMC_TAGGED_CERT_REQUEST type _CMC_TAGGED_CONTENT_INFO = T_CMC_TAGGED_CONTENT_INFO type _CMC_TAGGED_OTHER_MSG = T_CMC_TAGGED_OTHER_MSG type _CMC_TAGGED_REQUEST = T_CMC_TAGGED_REQUEST type _CMSG_CMS_RECIPIENT_INFO = T_CMSG_CMS_RECIPIENT_INFO type _CMSG_CMS_SIGNER_INFO = T_CMSG_CMS_SIGNER_INFO type _CMSG_CNG_CONTENT_DECRYPT_INFO = T_CMSG_CNG_CONTENT_DECRYPT_INFO type _CMSG_CONTENT_ENCRYPT_INFO = T_CMSG_CONTENT_ENCRYPT_INFO type _CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA = T_CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA type _CMSG_CTRL_DECRYPT_PARA = T_CMSG_CTRL_DECRYPT_PARA type _CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA = T_CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA type _CMSG_CTRL_KEY_AGREE_DECRYPT_PARA = T_CMSG_CTRL_KEY_AGREE_DECRYPT_PARA type _CMSG_CTRL_KEY_TRANS_DECRYPT_PARA = T_CMSG_CTRL_KEY_TRANS_DECRYPT_PARA type _CMSG_CTRL_MAIL_LIST_DECRYPT_PARA = T_CMSG_CTRL_MAIL_LIST_DECRYPT_PARA type _CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA = T_CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA type _CMSG_ENCRYPTED_ENCODE_INFO = T_CMSG_ENCRYPTED_ENCODE_INFO type _CMSG_ENVELOPED_ENCODE_INFO = T_CMSG_ENVELOPED_ENCODE_INFO type _CMSG_HASHED_ENCODE_INFO = T_CMSG_HASHED_ENCODE_INFO type _CMSG_KEY_AGREE_ENCRYPT_INFO = T_CMSG_KEY_AGREE_ENCRYPT_INFO type _CMSG_KEY_AGREE_KEY_ENCRYPT_INFO = T_CMSG_KEY_AGREE_KEY_ENCRYPT_INFO type _CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO = T_CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO type _CMSG_KEY_AGREE_RECIPIENT_INFO = T_CMSG_KEY_AGREE_RECIPIENT_INFO type _CMSG_KEY_TRANS_ENCRYPT_INFO = T_CMSG_KEY_TRANS_ENCRYPT_INFO type _CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO = T_CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO type _CMSG_KEY_TRANS_RECIPIENT_INFO = T_CMSG_KEY_TRANS_RECIPIENT_INFO type _CMSG_MAIL_LIST_ENCRYPT_INFO = T_CMSG_MAIL_LIST_ENCRYPT_INFO type _CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO = T_CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO type _CMSG_MAIL_LIST_RECIPIENT_INFO = T_CMSG_MAIL_LIST_RECIPIENT_INFO type _CMSG_RC2_AUX_INFO = T_CMSG_RC2_AUX_INFO type _CMSG_RC4_AUX_INFO = T_CMSG_RC4_AUX_INFO type _CMSG_RECIPIENT_ENCODE_INFO = T_CMSG_RECIPIENT_ENCODE_INFO type _CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO = T_CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO type _CMSG_RECIPIENT_ENCRYPTED_KEY_INFO = T_CMSG_RECIPIENT_ENCRYPTED_KEY_INFO type _CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO = T_CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO type _CMSG_SIGNED_ENCODE_INFO = T_CMSG_SIGNED_ENCODE_INFO type _CMSG_SIGNER_ENCODE_INFO = T_CMSG_SIGNER_ENCODE_INFO type _CMSG_SIGNER_INFO = T_CMSG_SIGNER_INFO type _CMSG_SP3_COMPATIBLE_AUX_INFO = T_CMSG_SP3_COMPATIBLE_AUX_INFO type _CMSG_STREAM_INFO = T_CMSG_STREAM_INFO type _CMS_DH_KEY_INFO = T_CMS_DH_KEY_INFO type _CMS_KEY_INFO = T_CMS_KEY_INFO type _COAUTHIDENTITY = T_COAUTHIDENTITY type _COAUTHINFO = T_COAUTHINFO const _COINITBASE_MULTITHREADED = 0 const _COINIT_APARTMENTTHREADED = 2 const _COINIT_DISABLE_OLE1DDE = 4 const _COINIT_MULTITHREADED = 0 const _COINIT_SPEED_OVER_MEMORY = 8 const _COMBND_RESERVED1 = 4 const _COMBND_RPCTIMEOUT = 1 const _COMBND_SERVER_LOCALITY = 2 const _COMGLB_APPID = 2 const _COMGLB_EXCEPTION_DONOT_HANDLE = 1 const _COMGLB_EXCEPTION_DONOT_HANDLE_ANY = 2 const _COMGLB_EXCEPTION_DONOT_HANDLE_FATAL = 1 const _COMGLB_EXCEPTION_HANDLE = 0 const _COMGLB_EXCEPTION_HANDLING = 1 const _COMGLB_FAST_RUNDOWN = 8 const _COMGLB_RESERVED1 = 16 const _COMGLB_RESERVED2 = 32 const _COMGLB_RESERVED3 = 64 const _COMGLB_RO_SETTINGS = 4 const _COMGLB_RPC_THREADPOOL_SETTING = 3 const _COMGLB_RPC_THREADPOOL_SETTING_DEFAULT_POOL = 0 const _COMGLB_RPC_THREADPOOL_SETTING_PRIVATE_POOL = 1 const _COMGLB_STA_MODALLOOP_REMOVE_TOUCH_MESSAGES = 1 const _COMGLB_STA_MODALLOOP_SHARED_QUEUE_DONOT_REMOVE_INPUT_MESSAGES = 4 const _COMGLB_STA_MODALLOOP_SHARED_QUEUE_REMOVE_INPUT_MESSAGES = 2 const _COMGLB_STA_MODALLOOP_SHARED_QUEUE_REORDER_POINTER_MESSAGES = 128 const _COMGLB_UNMARSHALING_POLICY = 5 const _COMGLB_UNMARSHALING_POLICY_HYBRID = 2 const _COMGLB_UNMARSHALING_POLICY_NORMAL = 0 const _COMGLB_UNMARSHALING_POLICY_STRONG = 1 const _COMIMAGE_FLAGS_32BITREQUIRED = 2 const _COMIMAGE_FLAGS_ILONLY = 1 const _COMIMAGE_FLAGS_IL_LIBRARY = 4 const _COMIMAGE_FLAGS_STRONGNAMESIGNED = 8 const _COMIMAGE_FLAGS_TRACKDEBUGDATA = 65536 type _COMMCONFIG = T_COMMCONFIG type _COMMPROP = T_COMMPROP type _COMMTIMEOUTS = T_COMMTIMEOUTS type _COMM_FAULT_OFFSETS = T_COMM_FAULT_OFFSETS const _COMPACT_VIRTUAL_DISK_FLAG_NONE = 0 type _COMPACT_VIRTUAL_DISK_PARAMETERS = T_COMPACT_VIRTUAL_DISK_PARAMETERS const _COMPACT_VIRTUAL_DISK_VERSION_1 = 1 const _COMPACT_VIRTUAL_DISK_VERSION_UNSPECIFIED = 0 const _COMPARE_STRING = 1 type _COMPATIBILITY_CONTEXT_ELEMENT = T_COMPATIBILITY_CONTEXT_ELEMENT type _COMPONENT_FILTER = T_COMPONENT_FILTER type _COMSTAT = T_COMSTAT type _CONNECTDLGSTRUCTA = T_CONNECTDLGSTRUCTA type _CONNECTDLGSTRUCTW = T_CONNECTDLGSTRUCTW type _CONSOLE_CURSOR_INFO = T_CONSOLE_CURSOR_INFO type _CONSOLE_FONT_INFO = T_CONSOLE_FONT_INFO type _CONSOLE_FONT_INFOEX = T_CONSOLE_FONT_INFOEX type _CONSOLE_HISTORY_INFO = T_CONSOLE_HISTORY_INFO type _CONSOLE_READCONSOLE_CONTROL = T_CONSOLE_READCONSOLE_CONTROL type _CONSOLE_SCREEN_BUFFER_INFO = T_CONSOLE_SCREEN_BUFFER_INFO type _CONSOLE_SCREEN_BUFFER_INFOEX = T_CONSOLE_SCREEN_BUFFER_INFOEX type _CONSOLE_SELECTION_INFO = T_CONSOLE_SELECTION_INFO type _CONTEXT = T_CONTEXT const _CONTROL = 32 type _COORD = T_COORD const _COPYFILE2_CALLBACK_CHUNK_FINISHED = 2 const _COPYFILE2_CALLBACK_CHUNK_STARTED = 1 const _COPYFILE2_CALLBACK_ERROR = 6 const _COPYFILE2_CALLBACK_MAX = 7 const _COPYFILE2_CALLBACK_NONE = 0 const _COPYFILE2_CALLBACK_POLL_CONTINUE = 5 const _COPYFILE2_CALLBACK_STREAM_FINISHED = 4 const _COPYFILE2_CALLBACK_STREAM_STARTED = 3 const _COPYFILE2_PHASE_MAX = 7 const _COPYFILE2_PHASE_NAMEGRAFT_COPY = 6 const _COPYFILE2_PHASE_NONE = 0 const _COPYFILE2_PHASE_PREPARE_DEST = 2 const _COPYFILE2_PHASE_PREPARE_SOURCE = 1 const _COPYFILE2_PHASE_READ_SOURCE = 3 const _COPYFILE2_PHASE_SERVER_COPY = 5 const _COPYFILE2_PHASE_WRITE_DESTINATION = 4 const _COPYFILE2_PROGRESS_CANCEL = 1 const _COPYFILE2_PROGRESS_CONTINUE = 0 const _COPYFILE2_PROGRESS_PAUSE = 4 const _COPYFILE2_PROGRESS_QUIET = 3 const _COPYFILE2_PROGRESS_STOP = 2 type _CORE_PRINTER_DRIVERA = T_CORE_PRINTER_DRIVERA type _CORE_PRINTER_DRIVERW = T_CORE_PRINTER_DRIVERW const _COR_DELETED_NAME_LENGTH = 8 const _COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE = 255 const _COR_VERSION_MAJOR = 2 const _COR_VERSION_MAJOR_V2 = 2 const _COR_VERSION_MINOR = 0 const _COR_VTABLEGAP_NAME_LENGTH = 8 const _COR_VTABLE_32BIT = 1 const _COR_VTABLE_64BIT = 2 const _COR_VTABLE_CALL_MOST_DERIVED = 16 const _COR_VTABLE_FROM_UNMANAGED = 4 type _COSERVERINFO = T_COSERVERINFO const _COWAIT_ALERTABLE = 2 const _COWAIT_DEFAULT = 0 const _COWAIT_DISPATCH_CALLS = 8 const _COWAIT_DISPATCH_WINDOW_MESSAGES = 16 const _COWAIT_INPUTAVAILABLE = 4 const _COWAIT_WAITALL = 1 type _CO_MARSHALING_CONTEXT_ATTRIBUTES = int32 const _CO_MARSHALING_SOURCE_IS_APP_CONTAINER = 0 type _CPS_URLS = T_CPS_URLS type _CREATEFILE2_EXTENDED_PARAMETERS = T_CREATEFILE2_EXTENDED_PARAMETERS type _CREATE_DISK = T_CREATE_DISK type _CREATE_DISK_GPT = T_CREATE_DISK_GPT type _CREATE_DISK_MBR = T_CREATE_DISK_MBR type _CREATE_PROCESS_DEBUG_INFO = T_CREATE_PROCESS_DEBUG_INFO type _CREATE_THREAD_DEBUG_INFO = T_CREATE_THREAD_DEBUG_INFO const _CREATE_VIRTUAL_DISK_FLAG_DO_NOT_COPY_METADATA_FROM_PARENT = 4 const _CREATE_VIRTUAL_DISK_FLAG_FULL_PHYSICAL_ALLOCATION = 1 const _CREATE_VIRTUAL_DISK_FLAG_NONE = 0 const _CREATE_VIRTUAL_DISK_FLAG_PREVENT_WRITES_TO_SOURCE_DISK = 2 type _CREATE_VIRTUAL_DISK_PARAMETERS = T_CREATE_VIRTUAL_DISK_PARAMETERS const _CREATE_VIRTUAL_DISK_VERSION_1 = 1 const _CREATE_VIRTUAL_DISK_VERSION_2 = 2 const _CREATE_VIRTUAL_DISK_VERSION_UNSPECIFIED = 0 type _CRL_CONTEXT = T_CRL_CONTEXT type _CRL_DIST_POINT = T_CRL_DIST_POINT type _CRL_DIST_POINTS_INFO = T_CRL_DIST_POINTS_INFO type _CRL_DIST_POINT_NAME = T_CRL_DIST_POINT_NAME type _CRL_ENTRY = T_CRL_ENTRY type _CRL_FIND_ISSUED_FOR_PARA = T_CRL_FIND_ISSUED_FOR_PARA type _CRL_INFO = T_CRL_INFO type _CRL_ISSUING_DIST_POINT = T_CRL_ISSUING_DIST_POINT type _CRL_REVOCATION_INFO = T_CRL_REVOCATION_INFO type _CROSS_CERT_DIST_POINTS_INFO = T_CROSS_CERT_DIST_POINTS_INFO const _CRTIMP2 = "_CRTIMP" const _CRTIMP_ALTERNATIVE = "_CRTIMP" const _CRTIMP_NOIA64 = "_CRTIMP" const _CRTIMP_PURE = "_CRTIMP" type _CRT_DOUBLE = T_CRT_DOUBLE type _CRT_FLOAT = T_CRT_FLOAT const _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS = 4 const _CRT_INTERNAL_LOCAL_SCANF_OPTIONS = 2 const _CRT_INTERNAL_PRINTF_LEGACY_MSVCRT_COMPATIBILITY = 8 const _CRT_INTERNAL_PRINTF_LEGACY_THREE_DIGIT_EXPONENTS = 16 const _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION = 1 const _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS = 4 const _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR = 2 const _CRT_INTERNAL_SCANF_LEGACY_MSVCRT_COMPATIBILITY = 4 const _CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS = 2 const _CRT_INTERNAL_SCANF_SECURECRT = 1 const _CRT_SECURE_CPP_NOTHROW = 0 type _CRYPTNET_URL_CACHE_FLUSH_INFO = T_CRYPTNET_URL_CACHE_FLUSH_INFO type _CRYPTNET_URL_CACHE_PRE_FETCH_INFO = T_CRYPTNET_URL_CACHE_PRE_FETCH_INFO type _CRYPTNET_URL_CACHE_RESPONSE_INFO = T_CRYPTNET_URL_CACHE_RESPONSE_INFO type _CRYPTOAPI_BLOB = T_CRYPTOAPI_BLOB type _CRYPTPROTECT_PROMPTSTRUCT = T_CRYPTPROTECT_PROMPTSTRUCT type _CRYPT_3DES_KEY_STATE = T_CRYPT_3DES_KEY_STATE type _CRYPT_AES_128_KEY_STATE = T_CRYPT_AES_128_KEY_STATE type _CRYPT_AES_256_KEY_STATE = T_CRYPT_AES_256_KEY_STATE type _CRYPT_ALGORITHM_IDENTIFIER = T_CRYPT_ALGORITHM_IDENTIFIER type _CRYPT_ASYNC_RETRIEVAL_COMPLETION = T_CRYPT_ASYNC_RETRIEVAL_COMPLETION type _CRYPT_ATTRIBUTE = T_CRYPT_ATTRIBUTE type _CRYPT_ATTRIBUTES = T_CRYPT_ATTRIBUTES type _CRYPT_ATTRIBUTE_TYPE_VALUE = T_CRYPT_ATTRIBUTE_TYPE_VALUE type _CRYPT_BIT_BLOB = T_CRYPT_BIT_BLOB type _CRYPT_BLOB_ARRAY = T_CRYPT_BLOB_ARRAY type _CRYPT_CONTENT_INFO = T_CRYPT_CONTENT_INFO type _CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY = T_CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY type _CRYPT_CONTEXTS = T_CRYPT_CONTEXTS type _CRYPT_CONTEXT_CONFIG = T_CRYPT_CONTEXT_CONFIG type _CRYPT_CONTEXT_FUNCTIONS = T_CRYPT_CONTEXT_FUNCTIONS type _CRYPT_CONTEXT_FUNCTION_CONFIG = T_CRYPT_CONTEXT_FUNCTION_CONFIG type _CRYPT_CONTEXT_FUNCTION_PROVIDERS = T_CRYPT_CONTEXT_FUNCTION_PROVIDERS type _CRYPT_CREDENTIALS = T_CRYPT_CREDENTIALS type _CRYPT_CSP_PROVIDER = T_CRYPT_CSP_PROVIDER type _CRYPT_DECODE_PARA = T_CRYPT_DECODE_PARA type _CRYPT_DECRYPT_MESSAGE_PARA = T_CRYPT_DECRYPT_MESSAGE_PARA type _CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA = T_CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA type _CRYPT_DES_KEY_STATE = T_CRYPT_DES_KEY_STATE type _CRYPT_ECC_CMS_SHARED_INFO = T_CRYPT_ECC_CMS_SHARED_INFO type _CRYPT_ECC_PRIVATE_KEY_INFO = T_CRYPT_ECC_PRIVATE_KEY_INFO type _CRYPT_ENCODE_PARA = T_CRYPT_ENCODE_PARA type _CRYPT_ENCRYPTED_PRIVATE_KEY_INFO = T_CRYPT_ENCRYPTED_PRIVATE_KEY_INFO type _CRYPT_ENCRYPT_MESSAGE_PARA = T_CRYPT_ENCRYPT_MESSAGE_PARA type _CRYPT_ENROLLMENT_NAME_VALUE_PAIR = T_CRYPT_ENROLLMENT_NAME_VALUE_PAIR type _CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO = T_CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO type _CRYPT_HASH_INFO = T_CRYPT_HASH_INFO type _CRYPT_HASH_MESSAGE_PARA = T_CRYPT_HASH_MESSAGE_PARA type _CRYPT_IMAGE_REF = T_CRYPT_IMAGE_REF type _CRYPT_IMAGE_REG = T_CRYPT_IMAGE_REG type _CRYPT_INTERFACE_REG = T_CRYPT_INTERFACE_REG type _CRYPT_KEY_PROV_INFO = T_CRYPT_KEY_PROV_INFO type _CRYPT_KEY_PROV_PARAM = T_CRYPT_KEY_PROV_PARAM type _CRYPT_KEY_SIGN_MESSAGE_PARA = T_CRYPT_KEY_SIGN_MESSAGE_PARA type _CRYPT_KEY_VERIFY_MESSAGE_PARA = T_CRYPT_KEY_VERIFY_MESSAGE_PARA type _CRYPT_MASK_GEN_ALGORITHM = T_CRYPT_MASK_GEN_ALGORITHM type _CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE = T_CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE type _CRYPT_OBJID_TABLE = T_CRYPT_OBJID_TABLE type _CRYPT_OID_FUNC_ENTRY = T_CRYPT_OID_FUNC_ENTRY type _CRYPT_OID_INFO = T_CRYPT_OID_INFO type _CRYPT_PASSWORD_CREDENTIALSA = T_CRYPT_PASSWORD_CREDENTIALSA type _CRYPT_PASSWORD_CREDENTIALSW = T_CRYPT_PASSWORD_CREDENTIALSW type _CRYPT_PKCS12_PBE_PARAMS = T_CRYPT_PKCS12_PBE_PARAMS type _CRYPT_PKCS8_EXPORT_PARAMS = T_CRYPT_PKCS8_EXPORT_PARAMS type _CRYPT_PKCS8_IMPORT_PARAMS = T_CRYPT_PKCS8_IMPORT_PARAMS type _CRYPT_PRIVATE_KEY_INFO = T_CRYPT_PRIVATE_KEY_INFO type _CRYPT_PROPERTY_REF = T_CRYPT_PROPERTY_REF type _CRYPT_PROVIDERS = T_CRYPT_PROVIDERS type _CRYPT_PROVIDER_REF = T_CRYPT_PROVIDER_REF type _CRYPT_PROVIDER_REFS = T_CRYPT_PROVIDER_REFS type _CRYPT_PROVIDER_REG = T_CRYPT_PROVIDER_REG type _CRYPT_PSOURCE_ALGORITHM = T_CRYPT_PSOURCE_ALGORITHM type _CRYPT_RC2_CBC_PARAMETERS = T_CRYPT_RC2_CBC_PARAMETERS type _CRYPT_RC4_KEY_STATE = T_CRYPT_RC4_KEY_STATE type _CRYPT_RETRIEVE_AUX_INFO = T_CRYPT_RETRIEVE_AUX_INFO type _CRYPT_RSAES_OAEP_PARAMETERS = T_CRYPT_RSAES_OAEP_PARAMETERS type _CRYPT_RSA_SSA_PSS_PARAMETERS = T_CRYPT_RSA_SSA_PSS_PARAMETERS type _CRYPT_SEQUENCE_OF_ANY = T_CRYPT_SEQUENCE_OF_ANY type _CRYPT_SIGN_MESSAGE_PARA = T_CRYPT_SIGN_MESSAGE_PARA type _CRYPT_SMART_CARD_ROOT_INFO = T_CRYPT_SMART_CARD_ROOT_INFO type _CRYPT_SMIME_CAPABILITIES = T_CRYPT_SMIME_CAPABILITIES type _CRYPT_SMIME_CAPABILITY = T_CRYPT_SMIME_CAPABILITY type _CRYPT_TIMESTAMP_ACCURACY = T_CRYPT_TIMESTAMP_ACCURACY type _CRYPT_TIMESTAMP_CONTEXT = T_CRYPT_TIMESTAMP_CONTEXT type _CRYPT_TIMESTAMP_INFO = T_CRYPT_TIMESTAMP_INFO type _CRYPT_TIMESTAMP_PARA = T_CRYPT_TIMESTAMP_PARA type _CRYPT_TIMESTAMP_REQUEST = T_CRYPT_TIMESTAMP_REQUEST type _CRYPT_TIMESTAMP_RESPONSE = T_CRYPT_TIMESTAMP_RESPONSE type _CRYPT_TIME_STAMP_REQUEST_INFO = T_CRYPT_TIME_STAMP_REQUEST_INFO type _CRYPT_URL_ARRAY = T_CRYPT_URL_ARRAY type _CRYPT_URL_INFO = T_CRYPT_URL_INFO type _CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO = T_CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO type _CRYPT_VERIFY_MESSAGE_PARA = T_CRYPT_VERIFY_MESSAGE_PARA type _CRYPT_X942_OTHER_INFO = T_CRYPT_X942_OTHER_INFO type _CSV_NAMESPACE_INFO = T_CSV_NAMESPACE_INFO type _CTL_ANY_SUBJECT_INFO = T_CTL_ANY_SUBJECT_INFO type _CTL_CONTEXT = T_CTL_CONTEXT type _CTL_ENTRY = T_CTL_ENTRY type _CTL_FIND_SUBJECT_PARA = T_CTL_FIND_SUBJECT_PARA type _CTL_FIND_USAGE_PARA = T_CTL_FIND_USAGE_PARA type _CTL_INFO = T_CTL_INFO type _CTL_USAGE = T_CTL_USAGE type _CTL_USAGE_MATCH = T_CTL_USAGE_MATCH type _CTL_VERIFY_USAGE_PARA = T_CTL_VERIFY_USAGE_PARA type _CTL_VERIFY_USAGE_STATUS = T_CTL_VERIFY_USAGE_STATUS const _CVTBUFSIZE = 349 const _CWMO_DEFAULT = 0 const _CWMO_DISPATCH_CALLS = 1 const _CWMO_DISPATCH_WINDOW_MESSAGES = 2 type _CWMO_FLAGS = int32 const _CYGNET_12_WO = 69 const _CacheData = 2 const _CacheInstruction = 1 const _CacheTrace = 3 const _CacheUnified = 0 type _CertKeyType = int32 const _ChangerDoor = 5 const _ChangerDrive = 4 const _ChangerIEPort = 3 const _ChangerKeypad = 6 const _ChangerMaxElement = 7 const _ChangerSlot = 2 const _ChangerTransport = 1 const _Check_return_ = "__checkReturn" const _CompatibilityInformationInActivationContext = 6 const _ComputerNameDnsDomain = 2 const _ComputerNameDnsFullyQualified = 3 const _ComputerNameDnsHostname = 1 const _ComputerNameMax = 8 const _ComputerNameNetBIOS = 0 const _ComputerNamePhysicalDnsDomain = 6 const _ComputerNamePhysicalDnsFullyQualified = 7 const _ComputerNamePhysicalDnsHostname = 5 const _ComputerNamePhysicalNetBIOS = 4 const _CriticalError = 3 const _CsDeviceNotification = 74 const _DATADIR_GET = 1 const _DATADIR_SET = 2 type _DATATYPES_INFO_1A = T_DATATYPES_INFO_1A type _DATATYPES_INFO_1W = T_DATATYPES_INFO_1W type _DCB = T_DCB const _DCDC_DEFAULT = 0 const _DCDC_DISABLE_FONT_UPDATE = 1 const _DCDC_DISABLE_RELAYOUT = 2 const _DCOM_CALL_CANCELED = 2 const _DCOM_CALL_COMPLETE = 1 const _DCOM_NONE = 0 const _DDC_DEFAULT = 0 const _DDC_DISABLE_ALL = 1 const _DDC_DISABLE_CONTROL_RELAYOUT = 4 const _DDC_DISABLE_RESIZE = 2 const _DDS_4mm = 32 type _DEBUG_EVENT = T_DEBUG_EVENT type _DECRYPTION_STATUS_BUFFER = T_DECRYPTION_STATUS_BUFFER const _DEFAULT_COMPARTMENT_ID = 1 const _DELETE_SNAPSHOT_VHDSET_FLAG_NONE = 0 const _DELETE_SNAPSHOT_VHDSET_FLAG_PERSIST_RCT = 1 type _DELETE_SNAPSHOT_VHDSET_PARAMETERS = T_DELETE_SNAPSHOT_VHDSET_PARAMETERS const _DELETE_SNAPSHOT_VHDSET_VERSION_1 = 1 const _DELETE_SNAPSHOT_VHDSET_VERSION_UNSPECIFIED = 0 const _DEPENDENT_DISK_FLAG_FULLY_ALLOCATED = 2 const _DEPENDENT_DISK_FLAG_MULT_BACKING_FILES = 1 const _DEPENDENT_DISK_FLAG_NONE = 0 const _DEPENDENT_DISK_FLAG_NO_DRIVE_LETTER = 128 const _DEPENDENT_DISK_FLAG_NO_HOST_DISK = 512 const _DEPENDENT_DISK_FLAG_PARENT = 256 const _DEPENDENT_DISK_FLAG_PERMANENT_LIFETIME = 1024 const _DEPENDENT_DISK_FLAG_READ_ONLY = 4 const _DEPENDENT_DISK_FLAG_REMOTE = 8 const _DEPENDENT_DISK_FLAG_REMOVABLE = 64 const _DEPENDENT_DISK_FLAG_SYSTEM_VOLUME = 16 const _DEPENDENT_DISK_FLAG_SYSTEM_VOLUME_PARENT = 32 const _DEPPolicyAlwaysOff = 0 const _DEPPolicyAlwaysOn = 1 const _DEPPolicyOptIn = 2 const _DEPPolicyOptOut = 3 const _DEPTotalPolicyCount = 4 const _DESCKIND_FUNCDESC = 1 const _DESCKIND_IMPLICITAPPOBJ = 4 const _DESCKIND_MAX = 5 const _DESCKIND_NONE = 0 const _DESCKIND_TYPECOMP = 3 const _DESCKIND_VARDESC = 2 const _DETACH_VIRTUAL_DISK_FLAG_NONE = 0 type _DEVICE_COPY_OFFLOAD_DESCRIPTOR = T_DEVICE_COPY_OFFLOAD_DESCRIPTOR type _DEVICE_DATA_SET_RANGE = T_DEVICE_DATA_SET_RANGE type _DEVICE_DSM_NOTIFICATION_PARAMETERS = T_DEVICE_DSM_NOTIFICATION_PARAMETERS type _DEVICE_LB_PROVISIONING_DESCRIPTOR = T_DEVICE_LB_PROVISIONING_DESCRIPTOR type _DEVICE_MANAGE_DATA_SET_ATTRIBUTES = T_DEVICE_MANAGE_DATA_SET_ATTRIBUTES type _DEVICE_MEDIA_INFO = T_DEVICE_MEDIA_INFO type _DEVICE_POWER_DESCRIPTOR = T_DEVICE_POWER_DESCRIPTOR type _DEVICE_SEEK_PENALTY_DESCRIPTOR = T_DEVICE_SEEK_PENALTY_DESCRIPTOR type _DEVICE_TRIM_DESCRIPTOR = T_DEVICE_TRIM_DESCRIPTOR type _DEVICE_WRITE_AGGREGATION_DESCRIPTOR = T_DEVICE_WRITE_AGGREGATION_DESCRIPTOR type _DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS = int32 type _DIALOG_DPI_CHANGE_BEHAVIORS = int32 const _DIGIT = 4 const _DISCARDCACHE_NOSAVE = 1 const _DISCARDCACHE_SAVEIFDIRTY = 0 type _DISCDLGSTRUCTA = T_DISCDLGSTRUCTA type _DISCDLGSTRUCTW = T_DISCDLGSTRUCTW type _DISK_CACHE_INFORMATION = T_DISK_CACHE_INFORMATION type _DISK_CONTROLLER_NUMBER = T_DISK_CONTROLLER_NUMBER type _DISK_DETECTION_INFO = T_DISK_DETECTION_INFO type _DISK_EXTENT = T_DISK_EXTENT type _DISK_EX_INT13_INFO = T_DISK_EX_INT13_INFO type _DISK_GEOMETRY = T_DISK_GEOMETRY type _DISK_GEOMETRY_EX = T_DISK_GEOMETRY_EX type _DISK_GROW_PARTITION = T_DISK_GROW_PARTITION type _DISK_HISTOGRAM = T_DISK_HISTOGRAM type _DISK_INT13_INFO = T_DISK_INT13_INFO type _DISK_LOGGING = T_DISK_LOGGING type _DISK_PARTITION_INFO = T_DISK_PARTITION_INFO type _DISK_PERFORMANCE = T_DISK_PERFORMANCE type _DISK_RECORD = T_DISK_RECORD const _DISPLAYCONFIG_COLOR_ENCODING_FORCE_UINT32 = 4294967295 const _DISPLAYCONFIG_COLOR_ENCODING_INTENSITY = 4 const _DISPLAYCONFIG_COLOR_ENCODING_RGB = 0 const _DISPLAYCONFIG_COLOR_ENCODING_YCBCR420 = 3 const _DISPLAYCONFIG_COLOR_ENCODING_YCBCR422 = 2 const _DISPLAYCONFIG_COLOR_ENCODING_YCBCR444 = 1 const _DISPLAYCONFIG_DEVICE_INFO_FORCE_UINT32 = 4294967295 const _DISPLAYCONFIG_DEVICE_INFO_GET_ADAPTER_NAME = 4 const _DISPLAYCONFIG_DEVICE_INFO_GET_ADVANCED_COLOR_INFO = 9 const _DISPLAYCONFIG_DEVICE_INFO_GET_SDR_WHITE_LEVEL = 11 const _DISPLAYCONFIG_DEVICE_INFO_GET_SOURCE_NAME = 1 const _DISPLAYCONFIG_DEVICE_INFO_GET_SUPPORT_VIRTUAL_RESOLUTION = 7 const _DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_BASE_TYPE = 6 const _DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME = 2 const _DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_PREFERRED_MODE = 3 const _DISPLAYCONFIG_DEVICE_INFO_SET_ADVANCED_COLOR_STATE = 10 const _DISPLAYCONFIG_DEVICE_INFO_SET_SUPPORT_VIRTUAL_RESOLUTION = 8 const _DISPLAYCONFIG_DEVICE_INFO_SET_TARGET_PERSISTENCE = 5 type _DISPLAYCONFIG_GET_ADVANCED_COLOR_INFO = T_DISPLAYCONFIG_GET_ADVANCED_COLOR_INFO const _DISPLAYCONFIG_MODE_INFO_TYPE_DESKTOP_IMAGE = 3 const _DISPLAYCONFIG_MODE_INFO_TYPE_FORCE_UINT32 = 4294967295 const _DISPLAYCONFIG_MODE_INFO_TYPE_SOURCE = 1 const _DISPLAYCONFIG_MODE_INFO_TYPE_TARGET = 2 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_COMPONENT_VIDEO = 3 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_COMPOSITE_VIDEO = 2 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_EMBEDDED = 11 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_EXTERNAL = 10 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DVI = 4 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_D_JPN = 8 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_FORCE_UINT32 = -1 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_HD15 = 0 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_HDMI = 5 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INDIRECT_VIRTUAL = 17 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INDIRECT_WIRED = 16 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INTERNAL = -2147483648 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_LVDS = 6 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_MIRACAST = 15 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_OTHER = -1 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SDI = 9 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SDTVDONGLE = 14 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SVIDEO = 1 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_UDI_EMBEDDED = 13 const _DISPLAYCONFIG_OUTPUT_TECHNOLOGY_UDI_EXTERNAL = 12 const _DISPLAYCONFIG_PIXELFORMAT_16BPP = 2 const _DISPLAYCONFIG_PIXELFORMAT_24BPP = 3 const _DISPLAYCONFIG_PIXELFORMAT_32BPP = 4 const _DISPLAYCONFIG_PIXELFORMAT_8BPP = 1 const _DISPLAYCONFIG_PIXELFORMAT_FORCE_UINT32 = 4294967295 const _DISPLAYCONFIG_PIXELFORMAT_NONGDI = 5 const _DISPLAYCONFIG_ROTATION_FORCE_UINT32 = 4294967295 const _DISPLAYCONFIG_ROTATION_IDENTITY = 1 const _DISPLAYCONFIG_ROTATION_ROTATE180 = 3 const _DISPLAYCONFIG_ROTATION_ROTATE270 = 4 const _DISPLAYCONFIG_ROTATION_ROTATE90 = 2 const _DISPLAYCONFIG_SCALING_ASPECTRATIOCENTEREDMAX = 4 const _DISPLAYCONFIG_SCALING_CENTERED = 2 const _DISPLAYCONFIG_SCALING_CUSTOM = 5 const _DISPLAYCONFIG_SCALING_FORCE_UINT32 = 4294967295 const _DISPLAYCONFIG_SCALING_IDENTITY = 1 const _DISPLAYCONFIG_SCALING_PREFERRED = 128 const _DISPLAYCONFIG_SCALING_STRETCHED = 3 const _DISPLAYCONFIG_SCANLINE_ORDERING_FORCE_UINT32 = 4294967295 const _DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED = 2 const _DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED_LOWERFIELDFIRST = 3 const _DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED_UPPERFIELDFIRST = 2 const _DISPLAYCONFIG_SCANLINE_ORDERING_PROGRESSIVE = 1 const _DISPLAYCONFIG_SCANLINE_ORDERING_UNSPECIFIED = 0 type _DISPLAYCONFIG_SDR_WHITE_LEVEL = T_DISPLAYCONFIG_SDR_WHITE_LEVEL type _DISPLAYCONFIG_SET_ADVANCED_COLOR_STATE = T_DISPLAYCONFIG_SET_ADVANCED_COLOR_STATE const _DISPLAYCONFIG_TOPOLOGY_CLONE = 2 const _DISPLAYCONFIG_TOPOLOGY_EXTEND = 4 const _DISPLAYCONFIG_TOPOLOGY_EXTERNAL = 8 const _DISPLAYCONFIG_TOPOLOGY_FORCE_UINT32 = 4294967295 const _DISPLAYCONFIG_TOPOLOGY_INTERNAL = 1 type _DISPLAY_DEVICEA = T_DISPLAY_DEVICEA type _DISPLAY_DEVICEW = T_DISPLAY_DEVICEW const _DLT = 39 const _DMI = 48 type _DOCINFOA = T_DOCINFOA type _DOCINFOW = T_DOCINFOW type _DOC_INFO_1A = T_DOC_INFO_1A type _DOC_INFO_1W = T_DOC_INFO_1W type _DOC_INFO_2A = T_DOC_INFO_2A type _DOC_INFO_2W = T_DOC_INFO_2W type _DOC_INFO_3A = T_DOC_INFO_3A type _DOC_INFO_3W = T_DOC_INFO_3W const _DOMAIN = 1 type _DPI_AWARENESS = int32 const _DPI_AWARENESS_INVALID = -1 const _DPI_AWARENESS_PER_MONITOR_AWARE = 2 const _DPI_AWARENESS_SYSTEM_AWARE = 1 const _DPI_AWARENESS_UNAWARE = 0 type _DPI_HOSTING_BEHAVIOR = int32 const _DPI_HOSTING_BEHAVIOR_DEFAULT = 0 const _DPI_HOSTING_BEHAVIOR_INVALID = -1 const _DPI_HOSTING_BEHAVIOR_MIXED = 1 type _DRAGINFOA = T_DRAGINFOA type _DRAGINFOW = T_DRAGINFOW type _DRAWPATRECT = T_DRAWPATRECT type _DRIVERSTATUS = T_DRIVERSTATUS type _DRIVER_INFO_1A = T_DRIVER_INFO_1A type _DRIVER_INFO_1W = T_DRIVER_INFO_1W type _DRIVER_INFO_2A = T_DRIVER_INFO_2A type _DRIVER_INFO_2W = T_DRIVER_INFO_2W type _DRIVER_INFO_3A = T_DRIVER_INFO_3A type _DRIVER_INFO_3W = T_DRIVER_INFO_3W type _DRIVER_INFO_4A = T_DRIVER_INFO_4A type _DRIVER_INFO_4W = T_DRIVER_INFO_4W type _DRIVER_INFO_5A = T_DRIVER_INFO_5A type _DRIVER_INFO_5W = T_DRIVER_INFO_5W type _DRIVER_INFO_6A = T_DRIVER_INFO_6A type _DRIVER_INFO_6W = T_DRIVER_INFO_6W type _DRIVER_INFO_8A = T_DRIVER_INFO_8A type _DRIVER_INFO_8W = T_DRIVER_INFO_8W type _DRIVE_LAYOUT_INFORMATION = T_DRIVE_LAYOUT_INFORMATION type _DRIVE_LAYOUT_INFORMATION_EX = T_DRIVE_LAYOUT_INFORMATION_EX type _DRIVE_LAYOUT_INFORMATION_GPT = T_DRIVE_LAYOUT_INFORMATION_GPT type _DRIVE_LAYOUT_INFORMATION_MBR = T_DRIVE_LAYOUT_INFORMATION_MBR const _DSA_FIPS186_2 = 0 const _DSA_FIPS186_3 = 1 const _DSA_HASH_ALGORITHM_SHA1 = 0 const _DSA_HASH_ALGORITHM_SHA256 = 1 const _DSA_HASH_ALGORITHM_SHA512 = 2 type _DSSSEED = T_DSSSEED const _DST_L = 82 const _DST_M = 81 const _DST_S = 80 const _DVASPECT_CONTENT = 1 const _DVASPECT_DOCPRINT = 8 const _DVASPECT_ICON = 4 const _DVASPECT_THUMBNAIL = 2 const _DVD_R = 55 const _DVD_RAM = 88 const _DVD_ROM = 54 const _DVD_RW = 56 const _DV_6mm = 47 type _DWORD_BLOB = T_DWORD_BLOB const _DemandLoad = 3 const _DetectExInt13 = 2 const _DetectInt13 = 1 const _DetectNone = 0 const _DeviceProblemCHMError = 2 const _DeviceProblemCHMMoveError = 6 const _DeviceProblemCHMZeroError = 7 const _DeviceProblemCalibrationError = 4 const _DeviceProblemCartridgeEjectError = 11 const _DeviceProblemCartridgeInsertError = 8 const _DeviceProblemDoorOpen = 3 const _DeviceProblemDriveError = 13 const _DeviceProblemGripperError = 12 const _DeviceProblemHardware = 1 const _DeviceProblemNone = 0 const _DeviceProblemPositionError = 9 const _DeviceProblemSensorError = 10 const _DeviceProblemTargetFailure = 5 const _DisableLoad = 4 const _DisplayBurst = 77 const _DriverType = 1 type _EFS_HASH_BLOB = T_EFS_HASH_BLOB type _EFS_KEY_INFO = T_EFS_KEY_INFO type _EFS_RPC_BLOB = T_EFS_RPC_BLOB type _ENCRYPTED_DATA_INFO = T_ENCRYPTED_DATA_INFO type _ENCRYPTION_BUFFER = T_ENCRYPTION_BUFFER type _ENCRYPTION_CERTIFICATE = T_ENCRYPTION_CERTIFICATE type _ENCRYPTION_CERTIFICATE_HASH = T_ENCRYPTION_CERTIFICATE_HASH type _ENCRYPTION_CERTIFICATE_HASH_LIST = T_ENCRYPTION_CERTIFICATE_HASH_LIST type _ENCRYPTION_CERTIFICATE_LIST = T_ENCRYPTION_CERTIFICATE_LIST type _ENLISTMENT_BASIC_INFORMATION = T_ENLISTMENT_BASIC_INFORMATION type _ENLISTMENT_CRM_INFORMATION = T_ENLISTMENT_CRM_INFORMATION type _ENUM_SERVICE_STATUSA = T_ENUM_SERVICE_STATUSA type _ENUM_SERVICE_STATUSW = T_ENUM_SERVICE_STATUSW type _ENUM_SERVICE_STATUS_PROCESSA = T_ENUM_SERVICE_STATUS_PROCESSA type _ENUM_SERVICE_STATUS_PROCESSW = T_ENUM_SERVICE_STATUS_PROCESSW const _EOAC_ACCESS_CONTROL = 4 const _EOAC_ANY_AUTHORITY = 128 const _EOAC_APPID = 8 const _EOAC_AUTO_IMPERSONATE = 1024 const _EOAC_DEFAULT = 2048 const _EOAC_DISABLE_AAA = 4096 const _EOAC_DYNAMIC = 16 const _EOAC_DYNAMIC_CLOAKING = 64 const _EOAC_MAKE_FULLSIC = 256 const _EOAC_MUTUAL_AUTH = 1 const _EOAC_NONE = 0 const _EOAC_NO_CUSTOM_MARSHAL = 8192 const _EOAC_REQUIRE_FULLSIC = 512 const _EOAC_SECURE_REFS = 2 const _EOAC_STATIC_CLOAKING = 32 type _EVENTLOGRECORD = T_EVENTLOGRECORD type _EVENTLOG_FULL_INFORMATION = T_EVENTLOG_FULL_INFORMATION type _EVENTSFORLOGFILE = T_EVENTSFORLOGFILE type _EV_EXTRA_CERT_CHAIN_POLICY_PARA = T_EV_EXTRA_CERT_CHAIN_POLICY_PARA type _EV_EXTRA_CERT_CHAIN_POLICY_STATUS = T_EV_EXTRA_CERT_CHAIN_POLICY_STATUS type _EXCEPTION_DEBUG_INFO = T_EXCEPTION_DEBUG_INFO type _EXCEPTION_POINTERS = T_EXCEPTION_POINTERS type _EXCEPTION_RECORD = T_EXCEPTION_RECORD type _EXCEPTION_RECORD32 = T_EXCEPTION_RECORD32 type _EXCEPTION_RECORD64 = T_EXCEPTION_RECORD64 type _EXCEPTION_REGISTRATION_RECORD = T_EXCEPTION_REGISTRATION_RECORD type _EXFAT_STATISTICS = T_EXFAT_STATISTICS type _EXIT_PROCESS_DEBUG_INFO = T_EXIT_PROCESS_DEBUG_INFO type _EXIT_THREAD_DEBUG_INFO = T_EXIT_THREAD_DEBUG_INFO const _EXPAND_VIRTUAL_DISK_FLAG_NONE = 0 type _EXPAND_VIRTUAL_DISK_PARAMETERS = T_EXPAND_VIRTUAL_DISK_PARAMETERS const _EXPAND_VIRTUAL_DISK_VERSION_1 = 1 const _EXPAND_VIRTUAL_DISK_VERSION_UNSPECIFIED = 0 const _EXTCONN_CALLABLE = 4 const _EXTCONN_STRONG = 1 const _EXTCONN_WEAK = 2 type _EXTENDED_ENCRYPTED_DATA_INFO = T_EXTENDED_ENCRYPTED_DATA_INFO const _EnlistmentBasicInformation = 0 const _EnlistmentCrmInformation = 2 const _EnlistmentRecoveryInformation = 1 const _EqualPriority = 0 const _ExitLatencySamplingPercentage = 78 const _ExtendedFileIdType = 2 const _F3_120M_512 = 13 const _F3_128Mb_512 = 20 const _F3_1Pt23_1024 = 18 const _F3_1Pt2_512 = 17 const _F3_1Pt44_512 = 2 const _F3_200Mb_512 = 23 const _F3_20Pt8_512 = 4 const _F3_230Mb_512 = 21 const _F3_240M_512 = 24 const _F3_2Pt88_512 = 3 const _F3_32M_512 = 25 const _F3_640_512 = 14 const _F3_720_512 = 5 const _F5_160_512 = 10 const _F5_180_512 = 9 const _F5_1Pt23_1024 = 19 const _F5_1Pt2_512 = 1 const _F5_320_1024 = 8 const _F5_320_512 = 7 const _F5_360_512 = 6 const _F5_640_512 = 15 const _F5_720_512 = 16 const _F8_256_128 = 22 type _FAT_STATISTICS = T_FAT_STATISTICS const _FEATURE_ADDON_MANAGEMENT = 13 const _FEATURE_BEHAVIORS = 6 const _FEATURE_BLOCK_INPUT_PROMPTS = 27 const _FEATURE_DISABLE_LEGACY_COMPRESSION = 22 const _FEATURE_DISABLE_MK_PROTOCOL = 7 const _FEATURE_DISABLE_NAVIGATION_SOUNDS = 21 const _FEATURE_DISABLE_TELNET_PROTOCOL = 25 const _FEATURE_ENTRY_COUNT = 28 const _FEATURE_FEEDS = 26 const _FEATURE_FORCE_ADDR_AND_STATUS = 23 const _FEATURE_GET_URL_DOM_FILEPATH_UNENCODED = 18 const _FEATURE_HTTP_USERNAME_PASSWORD_DISABLE = 15 const _FEATURE_LOCALMACHINE_LOCKDOWN = 8 const _FEATURE_MIME_HANDLING = 2 const _FEATURE_MIME_SNIFFING = 3 const _FEATURE_OBJECT_CACHING = 0 const _FEATURE_PROTOCOL_LOCKDOWN = 14 const _FEATURE_RESTRICT_ACTIVEXINSTALL = 10 const _FEATURE_RESTRICT_FILEDOWNLOAD = 12 const _FEATURE_SAFE_BINDTOOBJECT = 16 const _FEATURE_SECURITYBAND = 9 const _FEATURE_SSLUX = 20 const _FEATURE_TABBED_BROWSING = 19 const _FEATURE_UNC_SAVEDFILECHECK = 17 const _FEATURE_VALIDATE_NAVIGATE_URL = 11 const _FEATURE_WEBOC_POPUPMANAGEMENT = 5 const _FEATURE_WINDOW_RESTRICTIONS = 4 const _FEATURE_XMLHTTP = 24 const _FEATURE_ZONE_ELEVATION = 1 const _FEEDBACK_GESTURE_PRESSANDTAP = 11 const _FEEDBACK_MAX = 4294967295 const _FEEDBACK_PEN_BARRELVISUALIZATION = 2 const _FEEDBACK_PEN_DOUBLETAP = 4 const _FEEDBACK_PEN_PRESSANDHOLD = 5 const _FEEDBACK_PEN_RIGHTTAP = 6 const _FEEDBACK_PEN_TAP = 3 const _FEEDBACK_TOUCH_CONTACTVISUALIZATION = 1 const _FEEDBACK_TOUCH_DOUBLETAP = 8 const _FEEDBACK_TOUCH_PRESSANDHOLD = 9 const _FEEDBACK_TOUCH_RIGHTTAP = 10 const _FEEDBACK_TOUCH_TAP = 7 type _FILEMUIINFO = T_FILEMUIINFO type _FILESYSTEM_STATISTICS = T_FILESYSTEM_STATISTICS type _FILETIME = T_FILETIME type _FILE_ALIGNMENT_INFO = T_FILE_ALIGNMENT_INFO type _FILE_ALLOCATED_RANGE_BUFFER = T_FILE_ALLOCATED_RANGE_BUFFER type _FILE_ALLOCATION_INFO = T_FILE_ALLOCATION_INFO type _FILE_ATTRIBUTE_TAG_INFO = T_FILE_ATTRIBUTE_TAG_INFO type _FILE_BASIC_INFO = T_FILE_BASIC_INFO type _FILE_CASE_SENSITIVE_INFO = T_FILE_CASE_SENSITIVE_INFO type _FILE_COMPRESSION_INFO = T_FILE_COMPRESSION_INFO type _FILE_DISPOSITION_INFO = T_FILE_DISPOSITION_INFO type _FILE_DISPOSITION_INFO_EX = T_FILE_DISPOSITION_INFO_EX type _FILE_END_OF_FILE_INFO = T_FILE_END_OF_FILE_INFO type _FILE_FS_PERSISTENT_VOLUME_INFORMATION = T_FILE_FS_PERSISTENT_VOLUME_INFORMATION type _FILE_FULL_DIR_INFO = T_FILE_FULL_DIR_INFO type _FILE_ID_BOTH_DIR_INFO = T_FILE_ID_BOTH_DIR_INFO type _FILE_ID_EXTD_DIR_INFO = T_FILE_ID_EXTD_DIR_INFO type _FILE_ID_INFO = T_FILE_ID_INFO type _FILE_IO_PRIORITY_HINT_INFO = T_FILE_IO_PRIORITY_HINT_INFO type _FILE_MAKE_COMPATIBLE_BUFFER = T_FILE_MAKE_COMPATIBLE_BUFFER type _FILE_NAME_INFO = T_FILE_NAME_INFO type _FILE_NOTIFY_INFORMATION = T_FILE_NOTIFY_INFORMATION type _FILE_OBJECTID_BUFFER = T_FILE_OBJECTID_BUFFER type _FILE_PREFETCH = T_FILE_PREFETCH type _FILE_PREFETCH_EX = T_FILE_PREFETCH_EX type _FILE_PROVIDER_EXTERNAL_INFO_V0 = T_FILE_PROVIDER_EXTERNAL_INFO_V0 type _FILE_PROVIDER_EXTERNAL_INFO_V1 = T_FILE_PROVIDER_EXTERNAL_INFO_V1 type _FILE_QUERY_ON_DISK_VOL_INFO_BUFFER = T_FILE_QUERY_ON_DISK_VOL_INFO_BUFFER type _FILE_QUERY_SPARING_BUFFER = T_FILE_QUERY_SPARING_BUFFER type _FILE_REMOTE_PROTOCOL_INFO = T_FILE_REMOTE_PROTOCOL_INFO type _FILE_RENAME_INFO = T_FILE_RENAME_INFO type _FILE_SEGMENT_ELEMENT = T_FILE_SEGMENT_ELEMENT type _FILE_SET_DEFECT_MGMT_BUFFER = T_FILE_SET_DEFECT_MGMT_BUFFER type _FILE_SET_SPARSE_BUFFER = T_FILE_SET_SPARSE_BUFFER type _FILE_STANDARD_INFO = T_FILE_STANDARD_INFO type _FILE_STORAGE_INFO = T_FILE_STORAGE_INFO type _FILE_STREAM_INFO = T_FILE_STREAM_INFO type _FILE_SYSTEM_RECOGNITION_INFORMATION = T_FILE_SYSTEM_RECOGNITION_INFORMATION type _FILE_SYSTEM_RECOGNITION_STRUCTURE = T_FILE_SYSTEM_RECOGNITION_STRUCTURE type _FILE_TYPE_NOTIFICATION_INPUT = T_FILE_TYPE_NOTIFICATION_INPUT type _FILE_ZERO_DATA_INFORMATION = T_FILE_ZERO_DATA_INFORMATION type _FIND_NAME_BUFFER = T_FIND_NAME_BUFFER type _FIND_NAME_HEADER = T_FIND_NAME_HEADER type _FIXED = T_FIXED type _FLAGGED_BYTE_BLOB = T_FLAGGED_BYTE_BLOB type _FLAGGED_WORD_BLOB = T_FLAGGED_WORD_BLOB type _FLAG_STGMEDIUM = T_FLAG_STGMEDIUM type _FLOAT128 = T_FLOAT128 type _FOCUS_EVENT_RECORD = T_FOCUS_EVENT_RECORD const _FORCENAMELESSUNION = 1 type _FORMAT_EX_PARAMETERS = T_FORMAT_EX_PARAMETERS type _FORMAT_PARAMETERS = T_FORMAT_PARAMETERS type _FORM_INFO_1A = T_FORM_INFO_1A type _FORM_INFO_1W = T_FORM_INFO_1W type _FORM_INFO_2A = T_FORM_INFO_2A type _FORM_INFO_2W = T_FORM_INFO_2W const _FPCLASS_ND = 16 const _FPCLASS_NINF = 4 const _FPCLASS_NN = 8 const _FPCLASS_NZ = 32 const _FPCLASS_PD = 128 const _FPCLASS_PINF = 512 const _FPCLASS_PN = 256 const _FPCLASS_PZ = 64 const _FPCLASS_QNAN = 2 const _FPCLASS_SNAN = 1 type _FPO_DATA = T_FPO_DATA const _FREEENTRY = 0 type _FSCTL_QUERY_FAT_BPB_BUFFER = T_FSCTL_QUERY_FAT_BPB_BUFFER type _FULL_PTR_TO_REFID_ELEMENT = T_FULL_PTR_TO_REFID_ELEMENT type _FULL_PTR_XLAT_TABLES = T_FULL_PTR_XLAT_TABLES const _FUNCFLAG_FBINDABLE = 4 const _FUNCFLAG_FDEFAULTBIND = 32 const _FUNCFLAG_FDEFAULTCOLLELEM = 256 const _FUNCFLAG_FDISPLAYBIND = 16 const _FUNCFLAG_FHIDDEN = 64 const _FUNCFLAG_FIMMEDIATEBIND = 4096 const _FUNCFLAG_FNONBROWSABLE = 1024 const _FUNCFLAG_FREPLACEABLE = 2048 const _FUNCFLAG_FREQUESTEDIT = 8 const _FUNCFLAG_FRESTRICTED = 1 const _FUNCFLAG_FSOURCE = 2 const _FUNCFLAG_FUIDEFAULT = 512 const _FUNCFLAG_FUSESGETLASTERROR = 128 const _FUNC_DISPATCH = 4 const _FUNC_NONVIRTUAL = 2 const _FUNC_PUREVIRTUAL = 1 const _FUNC_STATIC = 3 const _FUNC_VIRTUAL = 0 const _FileAlignmentInfo = 17 const _FileAllocationInfo = 5 const _FileAttributeTagInfo = 9 const _FileBasicInfo = 0 const _FileCaseSensitiveInfo = 21 const _FileCompressionInfo = 8 const _FileDispositionInfo = 4 const _FileEndOfFileInfo = 6 const _FileFullDirectoryInfo = 14 const _FileFullDirectoryRestartInfo = 15 const _FileIdBothDirectoryInfo = 10 const _FileIdBothDirectoryRestartInfo = 11 const _FileIdExtdDirectoryInfo = 19 const _FileIdExtdDirectoryRestartInfo = 20 const _FileIdInfo = 18 const _FileIdType = 0 const _FileInformationInAssemblyOfAssemblyInActivationContext = 4 const _FileInformationInAssemblyOfAssemblyInActivationContxt = 4 const _FileIoPriorityHintInfo = 12 const _FileNameInfo = 2 const _FileNormalizedNameInfo = 22 const _FileRemoteProtocolInfo = 13 const _FileRenameInfo = 3 const _FileStandardInfo = 1 const _FileStorageInfo = 16 const _FileStreamInfo = 7 const _FileSystemType = 2 const _FindExInfoBasic = 1 const _FindExInfoMaxInfoLevel = 2 const _FindExInfoStandard = 0 const _FindExSearchLimitToDevices = 2 const _FindExSearchLimitToDirectories = 1 const _FindExSearchMaxSearchOp = 3 const _FindExSearchNameMatch = 0 const _FindStreamInfoMaxInfoLevel = 1 const _FindStreamInfoStandard = 0 const _FirmwareTableInformationRegistered = 69 const _FirmwareTypeBios = 1 const _FirmwareTypeMax = 3 const _FirmwareTypeUefi = 2 const _FirmwareTypeUnknown = 0 const _FixedMedia = 12 const _ForcedShutdown = 1 type _GDI_NONREMOTE = T_GDI_NONREMOTE type _GDI_OBJECT = T_GDI_OBJECT type _GENERIC_BINDING_ROUTINE_PAIR = T_GENERIC_BINDING_ROUTINE_PAIR type _GENERIC_MAPPING = T_GENERIC_MAPPING const _GEOCLASS_ALL = 0 const _GEOCLASS_NATION = 16 const _GEOCLASS_REGION = 14 const _GEO_CURRENCYCODE = 15 const _GEO_CURRENCYSYMBOL = 16 const _GEO_DIALINGCODE = 14 const _GEO_FRIENDLYNAME = 8 const _GEO_ISO2 = 4 const _GEO_ISO3 = 5 const _GEO_ISO_UN_NUMBER = 12 const _GEO_LATITUDE = 2 const _GEO_LCID = 7 const _GEO_LONGITUDE = 3 const _GEO_NATION = 1 const _GEO_OFFICIALLANGUAGES = 11 const _GEO_OFFICIALNAME = 9 const _GEO_PARENT = 13 const _GEO_RFC1766 = 6 const _GEO_TIMEZONES = 10 type _GETVERSIONINPARAMS = T_GETVERSIONINPARAMS type _GET_CHANGER_PARAMETERS = T_GET_CHANGER_PARAMETERS type _GET_LENGTH_INFORMATION = T_GET_LENGTH_INFORMATION type _GET_MEDIA_TYPES = T_GET_MEDIA_TYPES const _GET_STORAGE_DEPENDENCY_FLAG_DISK_HANDLE = 2 const _GET_STORAGE_DEPENDENCY_FLAG_HOST_VOLUMES = 1 const _GET_STORAGE_DEPENDENCY_FLAG_NONE = 0 type _GET_VIRTUAL_DISK_INFO = T_GET_VIRTUAL_DISK_INFO const _GET_VIRTUAL_DISK_INFO_CHANGE_TRACKING_STATE = 15 const _GET_VIRTUAL_DISK_INFO_FRAGMENTATION = 12 const _GET_VIRTUAL_DISK_INFO_IDENTIFIER = 2 const _GET_VIRTUAL_DISK_INFO_IS_4K_ALIGNED = 8 const _GET_VIRTUAL_DISK_INFO_IS_LOADED = 13 const _GET_VIRTUAL_DISK_INFO_PARENT_IDENTIFIER = 4 const _GET_VIRTUAL_DISK_INFO_PARENT_LOCATION = 3 const _GET_VIRTUAL_DISK_INFO_PARENT_TIMESTAMP = 5 const _GET_VIRTUAL_DISK_INFO_PHYSICAL_DISK = 9 const _GET_VIRTUAL_DISK_INFO_PROVIDER_SUBTYPE = 7 const _GET_VIRTUAL_DISK_INFO_SIZE = 1 const _GET_VIRTUAL_DISK_INFO_SMALLEST_SAFE_VIRTUAL_SIZE = 11 const _GET_VIRTUAL_DISK_INFO_UNSPECIFIED = 0 const _GET_VIRTUAL_DISK_INFO_VHD_PHYSICAL_SECTOR_SIZE = 10 const _GET_VIRTUAL_DISK_INFO_VIRTUAL_DISK_ID = 14 const _GET_VIRTUAL_DISK_INFO_VIRTUAL_STORAGE_TYPE = 6 type _GLYPHMETRICS = T_GLYPHMETRICS type _GLYPHMETRICSFLOAT = T_GLYPHMETRICSFLOAT type _GRADIENT_RECT = T_GRADIENT_RECT type _GRADIENT_TRIANGLE = T_GRADIENT_TRIANGLE type _GROUP_AFFINITY = T_GROUP_AFFINITY type _GROUP_RELATIONSHIP = T_GROUP_RELATIONSHIP type _GUID = T_GUID const _GetFileExInfoStandard = 0 const _GetFileExMaxInfoLevel = 1 const _GetPowerRequestList = 45 const _GetPowerSettingValue = 59 const _GroupPark = 48 type _HARDWARE_COUNTER_DATA = T_HARDWARE_COUNTER_DATA const _HEAPBADBEGIN = -3 const _HEAPBADNODE = -4 const _HEAPBADPTR = -6 const _HEAPEMPTY = -1 const _HEAPEND = -5 type _HEAPINFO = T_HEAPINFO const _HEAPOK = -2 type _HEAP_SUMMARY = T_HEAP_SUMMARY const _HEX = 128 type _HISTOGRAM_BUCKET = T_HISTOGRAM_BUCKET const _HITACHI_12_WO = 68 type _HMAC_Info = T_HMAC_Info type _HTTPSPolicyCallbackData = T_HTTPSPolicyCallbackData const _HUGE = 0 type _HYPER_SIZEDARR = T_HYPER_SIZEDARR const _HeapCompatibilityInformation = 0 const _HeapEnableTerminationOnCorruption = 1 const _HighMemoryResourceNotification = 1 const _I16_MAX = 32767 const _I16_MIN = -32768 const _I32_MAX = 2147483647 const _I32_MIN = -2147483648 const _I64_MAX = 9223372036854775807 const _I64_MIN = -9223372036854775808 const _I8_MAX = 127 const _I8_MIN = -128 const _IBM_3480 = 41 const _IBM_3490E = 42 const _IBM_Magstar_3590 = 43 const _IBM_Magstar_MP = 44 type _ICONINFO = T_ICONINFO type _ICONINFOEXA = T_ICONINFOEXA type _ICONINFOEXW = T_ICONINFOEXW type _IDEREGS = T_IDEREGS const _IDL_CS_IN_PLACE_CONVERT = 1 const _IDL_CS_NEW_BUFFER_CONVERT = 2 const _IDL_CS_NO_CONVERT = 0 type _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY = T_IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY type _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY = T_IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY type _IMAGE_ARCHIVE_MEMBER_HEADER = T_IMAGE_ARCHIVE_MEMBER_HEADER type _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY = T_IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY type _IMAGE_ARM_RUNTIME_FUNCTION_ENTRY = T_IMAGE_ARM_RUNTIME_FUNCTION_ENTRY type _IMAGE_AUX_SYMBOL = T_IMAGE_AUX_SYMBOL type _IMAGE_AUX_SYMBOL_EX = T_IMAGE_AUX_SYMBOL_EX type _IMAGE_AUX_SYMBOL_TYPE = int32 const _IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF = 1 type _IMAGE_BASE_RELOCATION = T_IMAGE_BASE_RELOCATION type _IMAGE_BOUND_FORWARDER_REF = T_IMAGE_BOUND_FORWARDER_REF type _IMAGE_BOUND_IMPORT_DESCRIPTOR = T_IMAGE_BOUND_IMPORT_DESCRIPTOR type _IMAGE_CE_RUNTIME_FUNCTION_ENTRY = T_IMAGE_CE_RUNTIME_FUNCTION_ENTRY type _IMAGE_COFF_SYMBOLS_HEADER = T_IMAGE_COFF_SYMBOLS_HEADER const _IMAGE_COR_EATJ_THUNK_SIZE = 32 const _IMAGE_COR_MIH_BASICBLOCK = 8 const _IMAGE_COR_MIH_EHRVA = 2 const _IMAGE_COR_MIH_METHODRVA = 1 type _IMAGE_DATA_DIRECTORY = T_IMAGE_DATA_DIRECTORY type _IMAGE_DEBUG_DIRECTORY = T_IMAGE_DEBUG_DIRECTORY type _IMAGE_DEBUG_MISC = T_IMAGE_DEBUG_MISC type _IMAGE_DELAYLOAD_DESCRIPTOR = T_IMAGE_DELAYLOAD_DESCRIPTOR type _IMAGE_DOS_HEADER = T_IMAGE_DOS_HEADER type _IMAGE_EXPORT_DIRECTORY = T_IMAGE_EXPORT_DIRECTORY type _IMAGE_FILE_HEADER = T_IMAGE_FILE_HEADER type _IMAGE_FUNCTION_ENTRY = T_IMAGE_FUNCTION_ENTRY type _IMAGE_FUNCTION_ENTRY64 = T_IMAGE_FUNCTION_ENTRY64 type _IMAGE_IMPORT_BY_NAME = T_IMAGE_IMPORT_BY_NAME type _IMAGE_IMPORT_DESCRIPTOR = T_IMAGE_IMPORT_DESCRIPTOR type _IMAGE_LINENUMBER = T_IMAGE_LINENUMBER type _IMAGE_NT_HEADERS = T_IMAGE_NT_HEADERS type _IMAGE_NT_HEADERS64 = T_IMAGE_NT_HEADERS64 type _IMAGE_OPTIONAL_HEADER = T_IMAGE_OPTIONAL_HEADER type _IMAGE_OPTIONAL_HEADER64 = T_IMAGE_OPTIONAL_HEADER64 type _IMAGE_OS2_HEADER = T_IMAGE_OS2_HEADER type _IMAGE_RELOCATION = T_IMAGE_RELOCATION type _IMAGE_RESOURCE_DATA_ENTRY = T_IMAGE_RESOURCE_DATA_ENTRY type _IMAGE_RESOURCE_DIRECTORY = T_IMAGE_RESOURCE_DIRECTORY type _IMAGE_RESOURCE_DIRECTORY_ENTRY = T_IMAGE_RESOURCE_DIRECTORY_ENTRY type _IMAGE_RESOURCE_DIRECTORY_STRING = T_IMAGE_RESOURCE_DIRECTORY_STRING type _IMAGE_RESOURCE_DIR_STRING_U = T_IMAGE_RESOURCE_DIR_STRING_U type _IMAGE_ROM_HEADERS = T_IMAGE_ROM_HEADERS type _IMAGE_ROM_OPTIONAL_HEADER = T_IMAGE_ROM_OPTIONAL_HEADER type _IMAGE_RUNTIME_FUNCTION_ENTRY = T_IMAGE_RUNTIME_FUNCTION_ENTRY type _IMAGE_SECTION_HEADER = T_IMAGE_SECTION_HEADER type _IMAGE_SEPARATE_DEBUG_HEADER = T_IMAGE_SEPARATE_DEBUG_HEADER type _IMAGE_SYMBOL = T_IMAGE_SYMBOL type _IMAGE_SYMBOL_EX = T_IMAGE_SYMBOL_EX type _IMAGE_THUNK_DATA32 = T_IMAGE_THUNK_DATA32 type _IMAGE_THUNK_DATA64 = T_IMAGE_THUNK_DATA64 type _IMAGE_TLS_DIRECTORY32 = T_IMAGE_TLS_DIRECTORY32 type _IMAGE_TLS_DIRECTORY64 = T_IMAGE_TLS_DIRECTORY64 type _IMAGE_VXD_HEADER = T_IMAGE_VXD_HEADER const _IMDT_KEYBOARD = 1 const _IMDT_MOUSE = 2 const _IMDT_PEN = 8 const _IMDT_TOUCH = 4 const _IMDT_TOUCHPAD = 16 const _IMDT_UNAVAILABLE = 0 const _IMO_HARDWARE = 1 const _IMO_INJECTED = 2 const _IMO_SYSTEM = 4 const _IMO_UNAVAILABLE = 0 const _IMPORT_OBJECT_CODE = 0 const _IMPORT_OBJECT_CONST = 2 const _IMPORT_OBJECT_DATA = 1 const _IMPORT_OBJECT_NAME = 1 const _IMPORT_OBJECT_NAME_NO_PREFIX = 2 type _IMPORT_OBJECT_NAME_TYPE = int32 const _IMPORT_OBJECT_NAME_UNDECORATE = 3 const _IMPORT_OBJECT_ORDINAL = 0 type _IMPORT_OBJECT_TYPE = int32 const _INC_CRT_UNICODE_MACROS = 2 type _INPUT_RECORD = T_INPUT_RECORD const _INTEGRAL_MAX_BITS = 64 const _INVOKE_FUNC = 1 const _INVOKE_PROPERTYGET = 2 const _INVOKE_PROPERTYPUT = 4 const _INVOKE_PROPERTYPUTREF = 8 const _IOB_ENTRIES = 20 const _IOEOF = 16 const _IOERR = 32 const _IOLBF = 64 const _IOMEGA_JAZ = 74 const _IOMEGA_ZIP = 73 const _IOMYBUF = 8 const _IONBF = 4 const _IOREAD = 1 const _IORW = 128 const _IOSTRG = 64 const _IOWRT = 2 type _IO_COUNTERS = T_IO_COUNTERS const _IdleResiliency = 60 const _IdleShutdown = 0 const _IgnoreError = 0 type _ImageArchitectureEntry = T_ImageArchitectureEntry type _ImageArchitectureHeader = T_ImageArchitectureHeader const _IoPriorityHintLow = 1 const _IoPriorityHintNormal = 2 const _IoPriorityHintVeryLow = 0 type _JIT_DEBUG_INFO = T_JIT_DEBUG_INFO type _JOBOBJECT_ASSOCIATE_COMPLETION_PORT = T_JOBOBJECT_ASSOCIATE_COMPLETION_PORT type _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION = T_JOBOBJECT_BASIC_ACCOUNTING_INFORMATION type _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION = T_JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION type _JOBOBJECT_BASIC_LIMIT_INFORMATION = T_JOBOBJECT_BASIC_LIMIT_INFORMATION type _JOBOBJECT_BASIC_PROCESS_ID_LIST = T_JOBOBJECT_BASIC_PROCESS_ID_LIST type _JOBOBJECT_BASIC_UI_RESTRICTIONS = T_JOBOBJECT_BASIC_UI_RESTRICTIONS type _JOBOBJECT_CPU_RATE_CONTROL_INFORMATION = T_JOBOBJECT_CPU_RATE_CONTROL_INFORMATION type _JOBOBJECT_END_OF_JOB_TIME_INFORMATION = T_JOBOBJECT_END_OF_JOB_TIME_INFORMATION type _JOBOBJECT_EXTENDED_LIMIT_INFORMATION = T_JOBOBJECT_EXTENDED_LIMIT_INFORMATION type _JOBOBJECT_JOBSET_INFORMATION = T_JOBOBJECT_JOBSET_INFORMATION type _JOBOBJECT_LIMIT_VIOLATION_INFORMATION = T_JOBOBJECT_LIMIT_VIOLATION_INFORMATION type _JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION = T_JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION type _JOBOBJECT_SECURITY_LIMIT_INFORMATION = T_JOBOBJECT_SECURITY_LIMIT_INFORMATION type _JOB_INFO_1A = T_JOB_INFO_1A type _JOB_INFO_1W = T_JOB_INFO_1W type _JOB_INFO_2A = T_JOB_INFO_2A type _JOB_INFO_2W = T_JOB_INFO_2W type _JOB_INFO_3 = T_JOB_INFO_3 type _JOB_SET_ARRAY = T_JOB_SET_ARRAY const _JobObjectAssociateCompletionPortInformation = 7 const _JobObjectBasicAccountingInformation = 1 const _JobObjectBasicAndIoAccountingInformation = 8 const _JobObjectBasicLimitInformation = 2 const _JobObjectBasicProcessIdList = 3 const _JobObjectBasicUIRestrictions = 4 const _JobObjectCompletionCounter = 17 const _JobObjectCompletionFilter = 16 const _JobObjectCpuRateControlInformation = 15 const _JobObjectEndOfJobTimeInformation = 6 const _JobObjectExtendedLimitInformation = 9 const _JobObjectGroupInformation = 11 const _JobObjectGroupInformationEx = 14 const _JobObjectJobSetInformation = 10 const _JobObjectLimitViolationInformation = 13 const _JobObjectNotificationLimitInformation = 12 const _JobObjectReserved1Information = 18 const _JobObjectReserved2Information = 19 const _JobObjectReserved3Information = 20 const _JobObjectReserved4Information = 21 const _JobObjectReserved5Information = 22 const _JobObjectReserved6Information = 23 const _JobObjectReserved7Information = 24 const _JobObjectReserved8Information = 25 const _JobObjectSecurityLimitInformation = 5 type _KCRM_MARSHAL_HEADER = T_KCRM_MARSHAL_HEADER type _KCRM_PROTOCOL_BLOB = T_KCRM_PROTOCOL_BLOB type _KCRM_TRANSACTION_BLOB = T_KCRM_TRANSACTION_BLOB type _KEY_EVENT_RECORD = T_KEY_EVENT_RECORD type _KEY_TYPE_SUBTYPE = T_KEY_TYPE_SUBTYPE const _KODAK_14_WO = 70 type _KTMOBJECT_CURSOR = T_KTMOBJECT_CURSOR const _KTMOBJECT_ENLISTMENT = 3 const _KTMOBJECT_INVALID = 4 const _KTMOBJECT_RESOURCE_MANAGER = 2 const _KTMOBJECT_TRANSACTION = 0 const _KTMOBJECT_TRANSACTION_MANAGER = 1 const _KeepPrefetchedData = 1 const _KeepReadData = 2 const _KernelEnabled = 2 const _KeyTypeHardware = 6 const _KeyTypeOther = 0 const _KeyTypePassport = 3 const _KeyTypePassportRemote = 4 const _KeyTypePassportSmartCard = 5 const _KeyTypePhysicalSmartCard = 2 const _KeyTypeSelfSigned = 8 const _KeyTypeSoftware = 7 const _KeyTypeVirtualSmartCard = 1 type _LANA_ENUM = T_LANA_ENUM type _LARGE_INTEGER = T_LARGE_INTEGER type _LDBL12 = T_LDBL12 type _LDOUBLE = T_LDOUBLE type _LDT_ENTRY = T_LDT_ENTRY const _LEADBYTE = 32768 const _LIBFLAG_FCONTROL = 2 const _LIBFLAG_FHASDISKIMAGE = 8 const _LIBFLAG_FHIDDEN = 4 const _LIBFLAG_FRESTRICTED = 1 type _LIST_ENTRY = T_LIST_ENTRY type _LOAD_DLL_DEBUG_INFO = T_LOAD_DLL_DEBUG_INFO const _LOCK_EXCLUSIVE = 2 const _LOCK_ONLYONCE = 4 const _LOCK_WRITE = 1 type _LONGDOUBLE = T_LONGDOUBLE type _LONG_SIZEDARR = T_LONG_SIZEDARR type _LOOKUP_STREAM_FROM_CLUSTER_ENTRY = T_LOOKUP_STREAM_FROM_CLUSTER_ENTRY type _LOOKUP_STREAM_FROM_CLUSTER_INPUT = T_LOOKUP_STREAM_FROM_CLUSTER_INPUT type _LOOKUP_STREAM_FROM_CLUSTER_OUTPUT = T_LOOKUP_STREAM_FROM_CLUSTER_OUTPUT const _LOWER = 2 const _LTO_Accelis = 87 const _LTO_Ultrium = 86 const _LT_DONT_CARE = 0 const _LT_LOWEST_LATENCY = 1 type _LUID = T_LUID type _LUID_AND_ATTRIBUTES = T_LUID_AND_ATTRIBUTES const _LastResumePerformance = 76 const _LastSleepTime = 15 const _LastWakeTime = 14 const _LibraryApplication = 1 const _LogicalProcessorIdling = 56 const _LowMemoryResourceNotification = 0 type _M128A = T_M128A type _MALLOC_FREE_STRUCT = T_MALLOC_FREE_STRUCT type _MAT2 = T_MAT2 const _MAX_CLASS_NAME = 1024 const _MAX_DIR = 256 const _MAX_DRIVE = 3 const _MAX_ENV = 32767 const _MAX_EXT = 256 const _MAX_FNAME = 256 const _MAX_PACKAGE_NAME = 1024 const _MAX_PATH = 260 const _MAX_WAIT_MALLOC_CRT = 60000 const _MAX_ZONE_DESCRIPTION = 200 const _MAX_ZONE_PATH = 260 const _MCRTIMP = "_CRTIMP" const _MEMCTX_MACSYSTEM = 3 const _MEMCTX_SAME = -2 const _MEMCTX_SHARED = 2 const _MEMCTX_TASK = 1 const _MEMCTX_UNKNOWN = -1 type _MEMORYSTATUS = T_MEMORYSTATUS type _MEMORYSTATUSEX = T_MEMORYSTATUSEX type _MEMORY_BASIC_INFORMATION = T_MEMORY_BASIC_INFORMATION type _MEMORY_BASIC_INFORMATION32 = T_MEMORY_BASIC_INFORMATION32 type _MEMORY_BASIC_INFORMATION64 = T_MEMORY_BASIC_INFORMATION64 type _MEMORY_PRIORITY_INFORMATION = T_MEMORY_PRIORITY_INFORMATION type _MEM_ADDRESS_REQUIREMENTS = T_MEM_ADDRESS_REQUIREMENTS type _MEM_EXTENDED_PARAMETER_TYPE = int32 type _MEM_SECTION_EXTENDED_PARAMETER_TYPE = int32 type _MENU_EVENT_RECORD = T_MENU_EVENT_RECORD const _MERGE_VIRTUAL_DISK_FLAG_NONE = 0 type _MERGE_VIRTUAL_DISK_PARAMETERS = T_MERGE_VIRTUAL_DISK_PARAMETERS const _MERGE_VIRTUAL_DISK_VERSION_1 = 1 const _MERGE_VIRTUAL_DISK_VERSION_2 = 2 const _MERGE_VIRTUAL_DISK_VERSION_UNSPECIFIED = 0 type _MESSAGE_RESOURCE_BLOCK = T_MESSAGE_RESOURCE_BLOCK type _MESSAGE_RESOURCE_DATA = T_MESSAGE_RESOURCE_DATA type _MESSAGE_RESOURCE_ENTRY = T_MESSAGE_RESOURCE_ENTRY type _MIDL_FORMAT_STRING = T_MIDL_FORMAT_STRING type _MIDL_SERVER_INFO_ = T_MIDL_SERVER_INFO_ type _MIDL_STUBLESS_PROXY_INFO = T_MIDL_STUBLESS_PROXY_INFO type _MIDL_STUB_DESC = T_MIDL_STUB_DESC type _MIDL_STUB_MESSAGE = T_MIDL_STUB_MESSAGE type _MIDL_SYNTAX_INFO = T_MIDL_SYNTAX_INFO const _MIMETYPEPROP = 0 const _MIRROR_VIRTUAL_DISK_FLAG_EXISTING_FILE = 1 const _MIRROR_VIRTUAL_DISK_FLAG_NONE = 0 type _MIRROR_VIRTUAL_DISK_PARAMETERS = T_MIRROR_VIRTUAL_DISK_PARAMETERS const _MIRROR_VIRTUAL_DISK_VERSION_1 = 1 const _MIRROR_VIRTUAL_DISK_VERSION_UNSPECIFIED = 0 const _MKRREDUCE_ALL = 0 const _MKRREDUCE_ONE = 196608 const _MKRREDUCE_THROUGHUSER = 65536 const _MKRREDUCE_TOUSER = 131072 const _MKSYS_ANTIMONIKER = 3 const _MKSYS_CLASSMONIKER = 7 const _MKSYS_FILEMONIKER = 2 const _MKSYS_GENERICCOMPOSITE = 1 const _MKSYS_ITEMMONIKER = 4 const _MKSYS_LUAMONIKER = 10 const _MKSYS_NONE = 0 const _MKSYS_OBJREFMONIKER = 8 const _MKSYS_POINTERMONIKER = 5 const _MKSYS_SESSIONMONIKER = 9 type _MMCKINFO = T_MMCKINFO type _MMIOINFO = T_MMIOINFO type _MODEMDEVCAPS = T_MODEMDEVCAPS type _MODEMSETTINGS = T_MODEMSETTINGS const _MODIFY_VHDSET_DEFAULT_SNAPSHOT_PATH = 3 const _MODIFY_VHDSET_FLAG_NONE = 0 type _MODIFY_VHDSET_PARAMETERS = T_MODIFY_VHDSET_PARAMETERS const _MODIFY_VHDSET_REMOVE_SNAPSHOT = 2 const _MODIFY_VHDSET_SNAPSHOT_PATH = 1 const _MODIFY_VHDSET_UNSPECIFIED = 0 type _MONITOR_INFO_1A = T_MONITOR_INFO_1A type _MONITOR_INFO_1W = T_MONITOR_INFO_1W type _MONITOR_INFO_2A = T_MONITOR_INFO_2A type _MONITOR_INFO_2W = T_MONITOR_INFO_2W type _MOUSE_EVENT_RECORD = T_MOUSE_EVENT_RECORD type _MOVE_FILE_RECORD_DATA = T_MOVE_FILE_RECORD_DATA const _MO_3_RW = 57 const _MO_5_LIMDOW = 60 const _MO_5_RW = 59 const _MO_5_WO = 58 const _MO_NFR_525 = 71 const _MP2_8mm = 79 const _MP_8mm = 36 const _MRTIMP2 = "_CRTIMP" const _MSHCTX_CROSSCTX = 4 const _MSHCTX_DIFFERENTMACHINE = 2 const _MSHCTX_INPROC = 3 const _MSHCTX_LOCAL = 0 const _MSHCTX_NOSHAREDMEM = 1 const _MSHLFLAGS_NOPING = 4 const _MSHLFLAGS_NORMAL = 0 const _MSHLFLAGS_RESERVED1 = 8 const _MSHLFLAGS_RESERVED2 = 16 const _MSHLFLAGS_RESERVED3 = 32 const _MSHLFLAGS_RESERVED4 = 64 const _MSHLFLAGS_TABLESTRONG = 1 const _MSHLFLAGS_TABLEWEAK = 2 const _MandatoryLevelCount = 6 const _MandatoryLevelHigh = 3 const _MandatoryLevelLow = 1 const _MandatoryLevelMedium = 2 const _MandatoryLevelSecureProcess = 5 const _MandatoryLevelSystem = 4 const _MandatoryLevelUntrusted = 0 const _MaxActivationContextInfoClass = 8 const _MaxHardwareCounterType = 1 const _MaxJobObjectInfoClass = 26 const _MaxProcessMitigationPolicy = 17 const _MaxTokenInfoClass = 41 const _MaximumFileIdType = 3 const _MaximumFileInfoByHandleClass = 23 const _MaximumIoPriorityHintType = 3 const _MemExtendedParameterAddressRequirements = 1 const _MemExtendedParameterAttributeFlags = 5 const _MemExtendedParameterInvalidType = 0 const _MemExtendedParameterMax = 6 const _MemExtendedParameterNumaNode = 2 const _MemExtendedParameterPartitionHandle = 3 const _MemExtendedParameterUserPhysicalHandle = 4 const _MemSectionExtendedParameterInvalidType = 0 const _MemSectionExtendedParameterMax = 3 const _MemSectionExtendedParameterNumaNode = 2 const _MemSectionExtendedParameterUserPhysicalFlags = 1 const _MiniQic = 33 const _MonitorCapabilities = 40 const _MonitorInvocation = 68 const _MonitorRequestReasonAcDcDisplayBurst = 5 const _MonitorRequestReasonFullWake = 9 const _MonitorRequestReasonIdleTimeout = 12 const _MonitorRequestReasonMax = 14 const _MonitorRequestReasonPoSetSystemState = 7 const _MonitorRequestReasonPolicyChange = 13 const _MonitorRequestReasonPowerButton = 1 const _MonitorRequestReasonRemoteConnection = 2 const _MonitorRequestReasonScMonitorpower = 3 const _MonitorRequestReasonScreenOffRequest = 11 const _MonitorRequestReasonSessionUnlock = 10 const _MonitorRequestReasonSetThreadExecutionState = 8 const _MonitorRequestReasonUnknown = 0 const _MonitorRequestReasonUserDisplayBurst = 6 const _MonitorRequestReasonUserInput = 4 type _NAME_BUFFER = T_NAME_BUFFER const _NATIVE_TYPE_MAX_CB = 1 type _NCB = T_NCB type _NCRYPT_CIPHER_PADDING_INFO = T_NCRYPT_CIPHER_PADDING_INFO type _NCRYPT_KEY_BLOB_HEADER = T_NCRYPT_KEY_BLOB_HEADER const _NCTP = 40 type _NCryptAlgorithmName = T_NCryptAlgorithmName type _NDR_CS_ROUTINES = T_NDR_CS_ROUTINES type _NDR_CS_SIZE_CONVERT_ROUTINES = T_NDR_CS_SIZE_CONVERT_ROUTINES type _NDR_SCONTEXT = T_NDR_SCONTEXT type _NDR_USER_MARSHAL_INFO = T_NDR_USER_MARSHAL_INFO type _NDR_USER_MARSHAL_INFO_LEVEL1 = T_NDR_USER_MARSHAL_INFO_LEVEL1 type _NETCONNECTINFOSTRUCT = T_NETCONNECTINFOSTRUCT type _NETINFOSTRUCT = T_NETINFOSTRUCT type _NETRESOURCEA = T_NETRESOURCEA type _NETRESOURCEW = T_NETRESOURCEW const _NFILE = 512 const _NIKON_12_RW = 72 const _NLSCMPERROR = 2147483647 const _NODE_ATTRIBUTE = 2 const _NODE_CDATA_SECTION = 4 const _NODE_COMMENT = 8 const _NODE_DOCUMENT = 9 const _NODE_DOCUMENT_FRAGMENT = 11 const _NODE_DOCUMENT_TYPE = 10 const _NODE_ELEMENT = 1 const _NODE_ENTITY = 6 const _NODE_ENTITY_REFERENCE = 5 const _NODE_INVALID = 0 const _NODE_NOTATION = 12 const _NODE_PROCESSING_INSTRUCTION = 7 const _NODE_TEXT = 3 type _NON_PAGED_DEBUG_INFO = T_NON_PAGED_DEBUG_INFO type _NOTIFYICONDATAA = T_NOTIFYICONDATAA type _NOTIFYICONDATAW = T_NOTIFYICONDATAW type _NOTIFYICONIDENTIFIER = T_NOTIFYICONIDENTIFIER const _NSTREAM_ = 512 type _NTFS_STATISTICS = T_NTFS_STATISTICS type _NT_TIB = T_NT_TIB type _NT_TIB32 = T_NT_TIB32 type _NT_TIB64 = T_NT_TIB64 type _NUMA_NODE_RELATIONSHIP = T_NUMA_NODE_RELATIONSHIP const _NVMeDataTypeFeature = 3 const _NVMeDataTypeIdentify = 1 const _NVMeDataTypeLogPage = 2 const _NVMeDataTypeUnknown = 0 const _NormalError = 1 const _NormalizationC = 1 const _NormalizationD = 2 const _NormalizationKC = 5 const _NormalizationKD = 6 const _NormalizationOther = 0 const _NotifyUserModeLegacyPowerEvent = 47 const _NotifyUserPowerSetting = 26 type _OBJECTID = T_OBJECTID type _OBJECT_TYPE_LIST = T_OBJECT_TYPE_LIST type _OCSP_BASIC_RESPONSE_ENTRY = T_OCSP_BASIC_RESPONSE_ENTRY type _OCSP_BASIC_RESPONSE_INFO = T_OCSP_BASIC_RESPONSE_INFO type _OCSP_BASIC_REVOKED_INFO = T_OCSP_BASIC_REVOKED_INFO type _OCSP_BASIC_SIGNED_RESPONSE_INFO = T_OCSP_BASIC_SIGNED_RESPONSE_INFO type _OCSP_CERT_ID = T_OCSP_CERT_ID type _OCSP_REQUEST_ENTRY = T_OCSP_REQUEST_ENTRY type _OCSP_REQUEST_INFO = T_OCSP_REQUEST_INFO type _OCSP_RESPONSE_INFO = T_OCSP_RESPONSE_INFO type _OCSP_SIGNATURE_INFO = T_OCSP_SIGNATURE_INFO type _OCSP_SIGNED_REQUEST_INFO = T_OCSP_SIGNED_REQUEST_INFO type _OFNOTIFYA = T_OFNOTIFYA type _OFNOTIFYEXA = T_OFNOTIFYEXA type _OFNOTIFYEXW = T_OFNOTIFYEXW type _OFNOTIFYW = T_OFNOTIFYW type _OFSTRUCT = T_OFSTRUCT const _OIBDG_APARTMENTTHREADED = 256 const _OIBDG_DATAONLY = 4096 const _OLD_P_OVERLAY = 2 const _OLECLOSE_NOSAVE = 1 const _OLECLOSE_PROMPTSAVE = 2 const _OLECLOSE_SAVEIFDIRTY = 0 const _OLECONTF_EMBEDDINGS = 1 const _OLECONTF_LINKS = 2 const _OLECONTF_ONLYIFRUNNING = 16 const _OLECONTF_ONLYUSER = 8 const _OLECONTF_OTHERS = 4 const _OLEGETMONIKER_FORCEASSIGN = 2 const _OLEGETMONIKER_ONLYIFTHERE = 1 const _OLEGETMONIKER_TEMPFORUSER = 4 const _OLEGETMONIKER_UNASSIGN = 3 const _OLELINKBIND_EVENIFCLASSDIFF = 1 const _OLEMISC_ACTIVATEWHENVISIBLE = 256 const _OLEMISC_ACTSLIKEBUTTON = 4096 const _OLEMISC_ACTSLIKELABEL = 8192 const _OLEMISC_ALIGNABLE = 32768 const _OLEMISC_ALWAYSRUN = 2048 const _OLEMISC_CANLINKBYOLE1 = 32 const _OLEMISC_CANTLINKINSIDE = 16 const _OLEMISC_IGNOREACTIVATEWHENVISIBLE = 524288 const _OLEMISC_IMEMODE = 262144 const _OLEMISC_INSERTNOTREPLACE = 4 const _OLEMISC_INSIDEOUT = 128 const _OLEMISC_INVISIBLEATRUNTIME = 1024 const _OLEMISC_ISLINKOBJECT = 64 const _OLEMISC_NOUIACTIVATE = 16384 const _OLEMISC_ONLYICONIC = 2 const _OLEMISC_RECOMPOSEONRESIZE = 1 const _OLEMISC_RENDERINGISDEVICEINDEPENDENT = 512 const _OLEMISC_SETCLIENTSITEFIRST = 131072 const _OLEMISC_SIMPLEFRAME = 65536 const _OLEMISC_STATIC = 8 const _OLEMISC_SUPPORTSMULTILEVELUNDO = 2097152 const _OLEMISC_WANTSTOMENUMERGE = 1048576 const _OLERENDER_ASIS = 3 const _OLERENDER_DRAW = 1 const _OLERENDER_FORMAT = 2 const _OLERENDER_NONE = 0 type _OLESTREAM = T_OLESTREAM type _OLESTREAMVTBL = T_OLESTREAMVTBL const _OLEUPDATE_ALWAYS = 1 const _OLEUPDATE_ONCALL = 3 const _OLEVERBATTRIB_NEVERDIRTIES = 1 const _OLEVERBATTRIB_ONCONTAINERMENU = 2 const _OLEWHICHMK_CONTAINER = 1 const _OLEWHICHMK_OBJFULL = 3 const _OLEWHICHMK_OBJREL = 2 type _OPEN_PRINTER_PROPS_INFOA = T_OPEN_PRINTER_PROPS_INFOA type _OPEN_PRINTER_PROPS_INFOW = T_OPEN_PRINTER_PROPS_INFOW const _OPEN_VIRTUAL_DISK_FLAG_BLANK_FILE = 2 const _OPEN_VIRTUAL_DISK_FLAG_BOOT_DRIVE = 4 const _OPEN_VIRTUAL_DISK_FLAG_CACHED_IO = 8 const _OPEN_VIRTUAL_DISK_FLAG_CUSTOM_DIFF_CHAIN = 16 const _OPEN_VIRTUAL_DISK_FLAG_NONE = 0 const _OPEN_VIRTUAL_DISK_FLAG_NO_PARENTS = 1 type _OPEN_VIRTUAL_DISK_PARAMETERS = T_OPEN_VIRTUAL_DISK_PARAMETERS const _OPEN_VIRTUAL_DISK_VERSION_1 = 1 const _OPEN_VIRTUAL_DISK_VERSION_2 = 2 const _OPEN_VIRTUAL_DISK_VERSION_UNSPECIFIED = 0 type _OPERATION_END_PARAMETERS = T_OPERATION_END_PARAMETERS type _OPERATION_START_PARAMETERS = T_OPERATION_START_PARAMETERS type _ORIENTATION_PREFERENCE = int32 const _ORIENTATION_PREFERENCE_LANDSCAPE = 1 const _ORIENTATION_PREFERENCE_LANDSCAPE_FLIPPED = 4 const _ORIENTATION_PREFERENCE_NONE = 0 const _ORIENTATION_PREFERENCE_PORTRAIT = 2 const _ORIENTATION_PREFERENCE_PORTRAIT_FLIPPED = 8 type _OSVERSIONINFOA = T_OSVERSIONINFOA type _OSVERSIONINFOEXA = T_OSVERSIONINFOEXA type _OSVERSIONINFOEXW = T_OSVERSIONINFOEXW type _OSVERSIONINFOW = T_OSVERSIONINFOW type _OUTLINETEXTMETRICA = T_OUTLINETEXTMETRICA type _OUTLINETEXTMETRICW = T_OUTLINETEXTMETRICW type _OUTPUT_DEBUG_STRING_INFO = T_OUTPUT_DEBUG_STRING_INFO const _OUT_TO_DEFAULT = 0 const _OUT_TO_MSGBOX = 2 const _OUT_TO_STDERR = 1 const _OVERFLOW = 3 type _OVERLAPPED = T_OVERLAPPED type _OVERLAPPED_ENTRY = T_OVERLAPPED_ENTRY const _ObjectIdType = 1 type _PACKEDEVENTINFO = T_PACKEDEVENTINFO const _PARSE_ANCHOR = 6 const _PARSE_CANONICALIZE = 1 const _PARSE_DECODE_IS_ESCAPE = 8 const _PARSE_DOCUMENT = 5 const _PARSE_DOMAIN = 15 const _PARSE_ENCODE_IS_UNESCAPE = 7 const _PARSE_ESCAPE = 18 const _PARSE_FRIENDLY = 2 const _PARSE_LOCATION = 16 const _PARSE_MIME = 11 const _PARSE_PATH_FROM_URL = 9 const _PARSE_ROOTDOCUMENT = 4 const _PARSE_SCHEMA = 13 const _PARSE_SECURITY_DOMAIN = 17 const _PARSE_SECURITY_URL = 3 const _PARSE_SERVER = 12 const _PARSE_SITE = 14 const _PARSE_UNESCAPE = 19 const _PARSE_URL_FROM_PATH = 10 type _PARTITION_INFORMATION = T_PARTITION_INFORMATION type _PARTITION_INFORMATION_EX = T_PARTITION_INFORMATION_EX type _PARTITION_INFORMATION_GPT = T_PARTITION_INFORMATION_GPT type _PARTITION_INFORMATION_MBR = T_PARTITION_INFORMATION_MBR const _PARTITION_STYLE_GPT = 1 const _PARTITION_STYLE_MBR = 0 const _PARTITION_STYLE_RAW = 2 type _PATHNAME_BUFFER = T_PATHNAME_BUFFER const _PC_5_RW = 62 const _PC_5_WO = 61 const _PD_5_RW = 63 const _PD_FORCE_SWITCH = 65536 const _PENDINGMSG_CANCELCALL = 0 const _PENDINGMSG_WAITDEFPROCESS = 2 const _PENDINGMSG_WAITNOPROCESS = 1 const _PENDINGTYPE_NESTED = 2 const _PENDINGTYPE_TOPLEVEL = 1 type _PERFORMANCE_DATA = T_PERFORMANCE_DATA type _PERF_BIN = T_PERF_BIN type _PERF_COUNTER_BLOCK = T_PERF_COUNTER_BLOCK type _PERF_COUNTER_DEFINITION = T_PERF_COUNTER_DEFINITION type _PERF_DATA_BLOCK = T_PERF_DATA_BLOCK type _PERF_INSTANCE_DEFINITION = T_PERF_INSTANCE_DEFINITION type _PERF_OBJECT_TYPE = T_PERF_OBJECT_TYPE type _PERSISTENT_RESERVE_COMMAND = T_PERSISTENT_RESERVE_COMMAND const _PHILIPS_12_WO = 67 type _PHNDLR = T_PHNDLR const _PIDMSI_STATUS_DRAFT = 3 const _PIDMSI_STATUS_EDIT = 5 const _PIDMSI_STATUS_FINAL = 8 const _PIDMSI_STATUS_INPROGRESS = 4 const _PIDMSI_STATUS_NEW = 1 const _PIDMSI_STATUS_NORMAL = 0 const _PIDMSI_STATUS_OTHER = 32767 const _PIDMSI_STATUS_PRELIM = 2 const _PIDMSI_STATUS_PROOF = 7 const _PIDMSI_STATUS_REVIEW = 6 type _PIDMSI_STATUS_VALUE = int32 type _PIFV = T_PIFV type _PIMAGE_RUNTIME_FUNCTION_ENTRY = T_PIMAGE_RUNTIME_FUNCTION_ENTRY const _PINNACLE_APEX_5_RW = 65 const _PI_APARTMENTTHREADED = 256 const _PI_CLASSINSTALL = 512 const _PI_CLSIDLOOKUP = 32 const _PI_DATAPROGRESS = 64 const _PI_FILTER_MODE = 2 const _PI_FORCE_ASYNC = 4 const _PI_LOADAPPDIRECT = 16384 const _PI_MIMEVERIFICATION = 16 const _PI_NOMIMEHANDLER = 32768 const _PI_PARSE_URL = 1 const _PI_PASSONBINDCTX = 8192 const _PI_PREFERDEFAULTHANDLER = 131072 const _PI_SYNCHRONOUS = 128 const _PI_USE_WORKERTHREAD = 8 type _PKCS12_PBES2_EXPORT_PARAMS = T_PKCS12_PBES2_EXPORT_PARAMS type _PLEX_READ_DATA_REQUEST = T_PLEX_READ_DATA_REQUEST const _PLOSS = 6 const _PMCCounter = 0 const _PMETypeFailFastOnCommitFailure = 0 const _PMETypeMax = 1 const _POINTER_CHANGE_FIFTHBUTTON_DOWN = 9 const _POINTER_CHANGE_FIFTHBUTTON_UP = 10 const _POINTER_CHANGE_FIRSTBUTTON_DOWN = 1 const _POINTER_CHANGE_FIRSTBUTTON_UP = 2 const _POINTER_CHANGE_FOURTHBUTTON_DOWN = 7 const _POINTER_CHANGE_FOURTHBUTTON_UP = 8 const _POINTER_CHANGE_NONE = 0 const _POINTER_CHANGE_SECONDBUTTON_DOWN = 3 const _POINTER_CHANGE_SECONDBUTTON_UP = 4 const _POINTER_CHANGE_THIRDBUTTON_DOWN = 5 const _POINTER_CHANGE_THIRDBUTTON_UP = 6 const _POINTER_DEVICE_CURSOR_TYPE_ERASER = 2 const _POINTER_DEVICE_CURSOR_TYPE_MAX = 4294967295 const _POINTER_DEVICE_CURSOR_TYPE_TIP = 1 const _POINTER_DEVICE_CURSOR_TYPE_UNKNOWN = 0 const _POINTER_DEVICE_TYPE_EXTERNAL_PEN = 2 const _POINTER_DEVICE_TYPE_INTEGRATED_PEN = 1 const _POINTER_DEVICE_TYPE_MAX = 4294967295 const _POINTER_DEVICE_TYPE_TOUCH = 3 const _POINTER_DEVICE_TYPE_TOUCH_PAD = 4 const _POINTER_FEEDBACK_DEFAULT = 1 const _POINTER_FEEDBACK_INDIRECT = 2 const _POINTER_FEEDBACK_NONE = 3 type _POINTFLOAT = T_POINTFLOAT type _POINTL = T_POINTL const _POPUPLEVELPROP = 4 type _PORT_INFO_1A = T_PORT_INFO_1A type _PORT_INFO_1W = T_PORT_INFO_1W type _PORT_INFO_2A = T_PORT_INFO_2A type _PORT_INFO_2W = T_PORT_INFO_2W type _PORT_INFO_3A = T_PORT_INFO_3A type _PORT_INFO_3W = T_PORT_INFO_3W type _POWER_IDLE_RESILIENCY = T_POWER_IDLE_RESILIENCY type _POWER_MONITOR_INVOCATION = T_POWER_MONITOR_INVOCATION type _POWER_PLATFORM_INFORMATION = T_POWER_PLATFORM_INFORMATION type _POWER_SESSION_CONNECT = T_POWER_SESSION_CONNECT type _POWER_SESSION_RIT_STATE = T_POWER_SESSION_RIT_STATE type _POWER_SESSION_TIMEOUTS = T_POWER_SESSION_TIMEOUTS type _POWER_SESSION_WINLOGON = T_POWER_SESSION_WINLOGON type _POWER_USER_PRESENCE = T_POWER_USER_PRESENCE type _PREVENT_MEDIA_REMOVAL = T_PREVENT_MEDIA_REMOVAL type _PRINTER_CONNECTION_INFO_1 = T_PRINTER_CONNECTION_INFO_1 type _PRINTER_DEFAULTSA = T_PRINTER_DEFAULTSA type _PRINTER_DEFAULTSW = T_PRINTER_DEFAULTSW type _PRINTER_ENUM_VALUESA = T_PRINTER_ENUM_VALUESA type _PRINTER_ENUM_VALUESW = T_PRINTER_ENUM_VALUESW type _PRINTER_INFO_1A = T_PRINTER_INFO_1A type _PRINTER_INFO_1W = T_PRINTER_INFO_1W type _PRINTER_INFO_2A = T_PRINTER_INFO_2A type _PRINTER_INFO_2W = T_PRINTER_INFO_2W type _PRINTER_INFO_3 = T_PRINTER_INFO_3 type _PRINTER_INFO_4A = T_PRINTER_INFO_4A type _PRINTER_INFO_4W = T_PRINTER_INFO_4W type _PRINTER_INFO_5A = T_PRINTER_INFO_5A type _PRINTER_INFO_5W = T_PRINTER_INFO_5W type _PRINTER_INFO_6 = T_PRINTER_INFO_6 type _PRINTER_INFO_7A = T_PRINTER_INFO_7A type _PRINTER_INFO_7W = T_PRINTER_INFO_7W type _PRINTER_INFO_8A = T_PRINTER_INFO_8A type _PRINTER_INFO_8W = T_PRINTER_INFO_8W type _PRINTER_INFO_9A = T_PRINTER_INFO_9A type _PRINTER_INFO_9W = T_PRINTER_INFO_9W type _PRINTER_NOTIFY_INFO = T_PRINTER_NOTIFY_INFO type _PRINTER_NOTIFY_INFO_DATA = T_PRINTER_NOTIFY_INFO_DATA type _PRINTER_NOTIFY_OPTIONS = T_PRINTER_NOTIFY_OPTIONS type _PRINTER_NOTIFY_OPTIONS_TYPE = T_PRINTER_NOTIFY_OPTIONS_TYPE type _PRINTER_OPTIONS = T_PRINTER_OPTIONS const _PRINTER_OPTION_CACHE = 1 const _PRINTER_OPTION_CLIENT_CHANGE = 2 const _PRINTER_OPTION_NO_CACHE = 0 type _PRINTPROCESSOR_CAPS_1 = T_PRINTPROCESSOR_CAPS_1 type _PRINTPROCESSOR_CAPS_2 = T_PRINTPROCESSOR_CAPS_2 type _PRINTPROCESSOR_INFO_1A = T_PRINTPROCESSOR_INFO_1A type _PRINTPROCESSOR_INFO_1W = T_PRINTPROCESSOR_INFO_1W type _PRIVILEGE_SET = T_PRIVILEGE_SET type _PRIVKEYVER3 = T_PRIVKEYVER3 type _PROCESSOR_GROUP_INFO = T_PROCESSOR_GROUP_INFO type _PROCESSOR_NUMBER = T_PROCESSOR_NUMBER type _PROCESSOR_POWER_POLICY = T_PROCESSOR_POWER_POLICY type _PROCESSOR_POWER_POLICY_INFO = T_PROCESSOR_POWER_POLICY_INFO type _PROCESSOR_RELATIONSHIP = T_PROCESSOR_RELATIONSHIP type _PROCESS_DYNAMIC_EH_CONTINUATION_TARGET = T_PROCESS_DYNAMIC_EH_CONTINUATION_TARGET type _PROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION = T_PROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION type _PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE = T_PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE type _PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION = T_PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION type _PROCESS_HEAP_ENTRY = T_PROCESS_HEAP_ENTRY type _PROCESS_INFORMATION = T_PROCESS_INFORMATION type _PROCESS_LEAP_SECOND_INFO = T_PROCESS_LEAP_SECOND_INFO type _PROCESS_MACHINE_INFORMATION = T_PROCESS_MACHINE_INFORMATION type _PROCESS_MEMORY_EXHAUSTION_INFO = T_PROCESS_MEMORY_EXHAUSTION_INFO type _PROCESS_MITIGATION_ASLR_POLICY = T_PROCESS_MITIGATION_ASLR_POLICY type _PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY = T_PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY type _PROCESS_MITIGATION_CHILD_PROCESS_POLICY = T_PROCESS_MITIGATION_CHILD_PROCESS_POLICY type _PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY = T_PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY type _PROCESS_MITIGATION_DEP_POLICY = T_PROCESS_MITIGATION_DEP_POLICY type _PROCESS_MITIGATION_DYNAMIC_CODE_POLICY = T_PROCESS_MITIGATION_DYNAMIC_CODE_POLICY type _PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY = T_PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY type _PROCESS_MITIGATION_FONT_DISABLE_POLICY = T_PROCESS_MITIGATION_FONT_DISABLE_POLICY type _PROCESS_MITIGATION_IMAGE_LOAD_POLICY = T_PROCESS_MITIGATION_IMAGE_LOAD_POLICY type _PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY = T_PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY type _PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY = T_PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY type _PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY = T_PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY type _PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY = T_PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY type _PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY = T_PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY type _PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY = T_PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY type _PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY = T_PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY type _PROCESS_POWER_THROTTLING_STATE = T_PROCESS_POWER_THROTTLING_STATE type _PROPSHEETHEADERA = T_PROPSHEETHEADERA type _PROPSHEETHEADERW = T_PROPSHEETHEADERW type _PROPSHEETPAGEA = T_PROPSHEETPAGEA type _PROPSHEETPAGEA_V1 = T_PROPSHEETPAGEA_V1 type _PROPSHEETPAGEA_V2 = T_PROPSHEETPAGEA_V2 const _PROPSHEETPAGEA_V3 = 0 type _PROPSHEETPAGEW = T_PROPSHEETPAGEW type _PROPSHEETPAGEW_V1 = T_PROPSHEETPAGEW_V1 type _PROPSHEETPAGEW_V2 = T_PROPSHEETPAGEW_V2 const _PROPSHEETPAGEW_V3 = 0 const _PROTOCOL_ADDRESS_CHANGE = 3 const _PROTOCOL_LOADED = 2 const _PROTOCOL_NOT_LOADED = 1 type _PROVIDOR_INFO_1A = T_PROVIDOR_INFO_1A type _PROVIDOR_INFO_1W = T_PROVIDOR_INFO_1W type _PROVIDOR_INFO_2A = T_PROVIDOR_INFO_2A type _PROVIDOR_INFO_2W = T_PROVIDOR_INFO_2W type _PROV_ENUMALGS = T_PROV_ENUMALGS type _PROV_ENUMALGS_EX = T_PROV_ENUMALGS_EX const _PROXY_CALCSIZE = 0 const _PROXY_GETBUFFER = 1 const _PROXY_MARSHAL = 2 const _PROXY_SENDRECEIVE = 3 const _PROXY_UNMARSHAL = 4 type _PSFEATURE_CUSTPAPER = T_PSFEATURE_CUSTPAPER type _PSFEATURE_OUTPUT = T_PSFEATURE_OUTPUT type _PSHNOTIFY = T_PSHNOTIFY type _PSINJECTDATA = T_PSINJECTDATA const _PSU_DEFAULT = 1 const _PSU_SECURITY_URL_ONLY = 2 const _PT_MOUSE = 4 const _PT_PEN = 3 const _PT_POINTER = 1 const _PT_TOUCH = 2 const _PT_TOUCHPAD = 5 const _PUAFOUT_DEFAULT = 0 const _PUAFOUT_ISLOCKZONEPOLICY = 1 const _PUAF_ACCEPT_WILDCARD_SCHEME = 128 const _PUAF_CHECK_TIFS = 16 const _PUAF_DEFAULT = 0 const _PUAF_DEFAULTZONEPOL = 262144 const _PUAF_DONTCHECKBOXINDIALOG = 32 const _PUAF_DONT_USE_CACHE = 4096 const _PUAF_DRAGPROTOCOLCHECK = 2097152 const _PUAF_ENFORCERESTRICTED = 256 const _PUAF_FORCEUI_FOREGROUND = 8 const _PUAF_ISFILE = 2 const _PUAF_LMZ_LOCKED = 131072 const _PUAF_LMZ_UNLOCKED = 65536 const _PUAF_NOSAVEDFILECHECK = 512 const _PUAF_NOUI = 1 const _PUAF_NOUIIFLOCKED = 1048576 const _PUAF_NPL_USE_LOCKED_IF_RESTRICTED = 524288 const _PUAF_REQUIRESAVEDFILECHECK = 1024 const _PUAF_RESERVED1 = 8192 const _PUAF_RESERVED2 = 16384 const _PUAF_TRUSTED = 64 const _PUAF_WARN_IF_DENIED = 4 type _PUBKEY = T_PUBKEY type _PUBKEYVER3 = T_PUBKEYVER3 type _PUBLICKEYSTRUC = T_PUBLICKEYSTRUC const _PUNCT = 16 type _PVFI = T_PVFI type _PVFV = T_PVFV const _P_DETACH = 4 const _P_NOWAIT = 1 const _P_NOWAITO = 3 const _P_OVERLAY = 2 const _P_WAIT = 0 const _P_tmpdir = "\\\\" const _PdcInvocation = 67 const _PlatformInformation = 66 const _PlatformRole = 75 const _PlatformRoleAppliancePC = 6 const _PlatformRoleDesktop = 1 const _PlatformRoleEnterpriseServer = 4 const _PlatformRoleMaximum = 9 const _PlatformRoleMobile = 2 const _PlatformRolePerformanceServer = 7 const _PlatformRoleSOHOServer = 5 const _PlatformRoleSlate = 8 const _PlatformRoleUnspecified = 0 const _PlatformRoleWorkstation = 3 const _PlmPowerRequestCreate = 72 const _PoAc = 0 const _PoConditionMaximum = 3 const _PoDc = 1 const _PoHot = 2 const _PowerActionHibernate = 3 const _PowerActionNone = 0 const _PowerActionReserved = 1 const _PowerActionShutdown = 4 const _PowerActionShutdownOff = 6 const _PowerActionShutdownReset = 5 const _PowerActionSleep = 2 const _PowerActionWarmEject = 7 const _PowerDeviceD0 = 1 const _PowerDeviceD1 = 2 const _PowerDeviceD2 = 3 const _PowerDeviceD3 = 4 const _PowerDeviceMaximum = 5 const _PowerDeviceUnspecified = 0 const _PowerInformationLevelMaximum = 80 const _PowerInformationLevelUnused0 = 27 const _PowerMonitorDim = 2 const _PowerMonitorOff = 0 const _PowerMonitorOn = 1 const _PowerRequestAction = 44 const _PowerRequestAwayModeRequired = 2 const _PowerRequestCreate = 43 const _PowerRequestDisplayRequired = 0 const _PowerRequestExecutionRequired = 3 const _PowerRequestSystemRequired = 1 const _PowerSettingNotificationName = 58 const _PowerShutdownNotification = 39 const _PowerSystemHibernate = 5 const _PowerSystemMaximum = 7 const _PowerSystemShutdown = 6 const _PowerSystemSleeping1 = 2 const _PowerSystemSleeping2 = 3 const _PowerSystemSleeping3 = 4 const _PowerSystemUnspecified = 0 const _PowerSystemWorking = 1 const _PowerUserInactive = 2 const _PowerUserInvalid = 3 const _PowerUserMaximum = 3 const _PowerUserNotPresent = 1 const _PowerUserPresent = 0 const _ProcThreadAttributeAllApplicationPackagesPolicy = 15 const _ProcThreadAttributeChildProcessPolicy = 14 const _ProcThreadAttributeGroupAffinity = 3 const _ProcThreadAttributeHandleList = 2 const _ProcThreadAttributeIdealProcessor = 5 const _ProcThreadAttributeJobList = 13 const _ProcThreadAttributeMitigationPolicy = 7 const _ProcThreadAttributeParentProcess = 0 const _ProcThreadAttributePreferredNode = 4 const _ProcThreadAttributeProtectionLevel = 11 const _ProcThreadAttributeSecurityCapabilities = 9 const _ProcThreadAttributeUmsThread = 6 const _ProcThreadAttributeWin32kFilter = 16 const _ProcessASLRPolicy = 1 const _ProcessAppMemoryInfo = 2 const _ProcessChildProcessPolicy = 13 const _ProcessControlFlowGuardPolicy = 7 const _ProcessDEPPolicy = 0 const _ProcessDynamicCodePolicy = 2 const _ProcessExtensionPointDisablePolicy = 6 const _ProcessFontDisablePolicy = 9 const _ProcessImageLoadPolicy = 10 const _ProcessInPrivateInfo = 3 const _ProcessInformationClassMax = 10 const _ProcessLeapSecondInfo = 8 const _ProcessMachineTypeInfo = 9 const _ProcessMemoryExhaustionInfo = 1 const _ProcessMemoryPriority = 0 const _ProcessMitigationOptionsMask = 5 const _ProcessPayloadRestrictionPolicy = 12 const _ProcessPowerThrottling = 4 const _ProcessProtectionLevelInfo = 7 const _ProcessRedirectionTrustPolicy = 16 const _ProcessReservedValue1 = 5 const _ProcessSideChannelIsolationPolicy = 14 const _ProcessSignaturePolicy = 8 const _ProcessStrictHandleCheckPolicy = 3 const _ProcessSystemCallDisablePolicy = 4 const _ProcessSystemCallFilterPolicy = 11 const _ProcessTelemetryCoverageInfo = 6 const _ProcessUserShadowStackPolicy = 15 const _ProcessorCap = 34 const _ProcessorIdleDomains = 49 const _ProcessorIdleStates = 33 const _ProcessorIdleStatesHv = 52 const _ProcessorInformation = 11 const _ProcessorInformationEx = 46 const _ProcessorLoad = 38 const _ProcessorPerfCapHv = 54 const _ProcessorPerfStates = 32 const _ProcessorPerfStatesHv = 53 const _ProcessorPowerPolicyAc = 18 const _ProcessorPowerPolicyCurrent = 22 const _ProcessorPowerPolicyDc = 19 const _ProcessorSetIdle = 55 const _ProcessorStateHandler = 7 const _ProcessorStateHandler2 = 13 const _PropertyExistsQuery = 1 const _PropertyExistsSet = 1 const _PropertyMaskQuery = 2 const _PropertyQueryMaxDefined = 3 const _PropertySetMaxDefined = 2 const _PropertyStandardQuery = 0 const _PropertyStandardSet = 0 const _ProtocolTypeAta = 2 const _ProtocolTypeMaxReserved = 127 const _ProtocolTypeNvme = 3 const _ProtocolTypeProprietary = 126 const _ProtocolTypeScsi = 1 const _ProtocolTypeSd = 4 const _ProtocolTypeUfs = 5 const _ProtocolTypeUnknown = 0 const _QIC = 35 const _QUERY_CAN_NAVIGATE = 7 const _QUERY_CHANGES_VIRTUAL_DISK_FLAG_NONE = 0 type _QUERY_CHANGES_VIRTUAL_DISK_RANGE = T_QUERY_CHANGES_VIRTUAL_DISK_RANGE const _QUERY_CONTENT_ENCODING = 3 const _QUERY_CONTENT_TYPE = 4 const _QUERY_EXPIRATION_DATE = 1 const _QUERY_IS_CACHED = 9 const _QUERY_IS_CACHED_AND_USABLE_OFFLINE = 16 const _QUERY_IS_CACHED_OR_MAPPED = 11 const _QUERY_IS_INSTALLEDENTRY = 10 const _QUERY_IS_SAFE = 14 const _QUERY_IS_SECURE = 13 const _QUERY_RECOMBINE = 6 const _QUERY_REFRESH = 5 type _QUERY_SERVICE_CONFIGA = T_QUERY_SERVICE_CONFIGA type _QUERY_SERVICE_CONFIGW = T_QUERY_SERVICE_CONFIGW type _QUERY_SERVICE_LOCK_STATUSA = T_QUERY_SERVICE_LOCK_STATUSA type _QUERY_SERVICE_LOCK_STATUSW = T_QUERY_SERVICE_LOCK_STATUSW const _QUERY_TIME_OF_LAST_CHANGE = 2 const _QUERY_USES_CACHE = 12 const _QUERY_USES_HISTORYFOLDER = 15 const _QUERY_USES_NETWORK = 8 const _QUNS_ACCEPTS_NOTIFICATIONS = 5 const _QUNS_APP = 7 const _QUNS_BUSY = 2 const _QUNS_NOT_PRESENT = 1 const _QUNS_PRESENTATION_MODE = 4 const _QUNS_QUIET_TIME = 6 const _QUNS_RUNNING_D3D_FULL_SCREEN = 3 type _QUOTA_LIMITS = T_QUOTA_LIMITS type _QUOTA_LIMITS_EX = T_QUOTA_LIMITS_EX type _RASTERIZER_STATUS = T_RASTERIZER_STATUS type _RATE_QUOTA_LIMIT = T_RATE_QUOTA_LIMIT type _RDR_CALLOUT_STATE = T_RDR_CALLOUT_STATE type _READ_ELEMENT_ADDRESS_INFO = T_READ_ELEMENT_ADDRESS_INFO type _REASON_CONTEXT = T_REASON_CONTEXT type _REASSIGN_BLOCKS = T_REASSIGN_BLOCKS type _REASSIGN_BLOCKS_EX = T_REASSIGN_BLOCKS_EX type _RECTL = T_RECTL type _REDIRECTION_DESCRIPTOR = T_REDIRECTION_DESCRIPTOR type _REDIRECTION_FUNCTION_DESCRIPTOR = T_REDIRECTION_FUNCTION_DESCRIPTOR const _REGCLS_MULTIPLEUSE = 1 const _REGCLS_MULTI_SEPARATE = 2 const _REGCLS_SINGLEUSE = 0 const _REGCLS_SURROGATE = 8 const _REGCLS_SUSPENDED = 4 const _REGKIND_DEFAULT = 0 const _REGKIND_NONE = 2 const _REGKIND_REGISTER = 1 type _REMOTE_NAME_INFOA = T_REMOTE_NAME_INFOA type _REMOTE_NAME_INFOW = T_REMOTE_NAME_INFOW type _REMSECURITY_ATTRIBUTES = T_REMSECURITY_ATTRIBUTES type _REPARSE_GUID_DATA_BUFFER = T_REPARSE_GUID_DATA_BUFFER const _REPORT_ERRMODE = 3 type _REQUEST_OPLOCK_INPUT_BUFFER = T_REQUEST_OPLOCK_INPUT_BUFFER type _REQUEST_OPLOCK_OUTPUT_BUFFER = T_REQUEST_OPLOCK_OUTPUT_BUFFER type _REQUEST_RAW_ENCRYPTED_DATA = T_REQUEST_RAW_ENCRYPTED_DATA const _RESIZE_VIRTUAL_DISK_FLAG_ALLOW_UNSAFE_VIRTUAL_SIZE = 1 const _RESIZE_VIRTUAL_DISK_FLAG_NONE = 0 const _RESIZE_VIRTUAL_DISK_FLAG_RESIZE_TO_SMALLEST_SAFE_VIRTUAL_SIZE = 2 type _RESIZE_VIRTUAL_DISK_PARAMETERS = T_RESIZE_VIRTUAL_DISK_PARAMETERS const _RESIZE_VIRTUAL_DISK_VERSION_1 = 1 const _RESIZE_VIRTUAL_DISK_VERSION_UNSPECIFIED = 0 type _RESOURCEMANAGER_BASIC_INFORMATION = T_RESOURCEMANAGER_BASIC_INFORMATION type _RESOURCEMANAGER_COMPLETION_INFORMATION = T_RESOURCEMANAGER_COMPLETION_INFORMATION type _RESUME_PERFORMANCE = T_RESUME_PERFORMANCE type _RETRIEVAL_POINTER_BASE = T_RETRIEVAL_POINTER_BASE type _RGNDATA = T_RGNDATA type _RGNDATAHEADER = T_RGNDATAHEADER type _RIP_INFO = T_RIP_INFO type _ROOT_INFO_LUID = T_ROOT_INFO_LUID const _RPCHTTP_RS_ACCESS_1 = 2 const _RPCHTTP_RS_ACCESS_2 = 4 const _RPCHTTP_RS_INTERFACE = 5 const _RPCHTTP_RS_REDIRECT = 1 const _RPCHTTP_RS_SESSION = 3 type _RPC_ADDRESS_CHANGE_TYPE = int32 type _RPC_ASYNC_NOTIFICATION_INFO = T_RPC_ASYNC_NOTIFICATION_INFO type _RPC_ASYNC_STATE = T_RPC_ASYNC_STATE type _RPC_BINDING_HANDLE_OPTIONS_V1 = T_RPC_BINDING_HANDLE_OPTIONS_V1 type _RPC_BINDING_HANDLE_TEMPLATE = T_RPC_BINDING_HANDLE_TEMPLATE type _RPC_BINDING_VECTOR = T_RPC_BINDING_VECTOR type _RPC_CLIENT_INTERFACE = T_RPC_CLIENT_INTERFACE type _RPC_C_OPT_METADATA_DESCRIPTOR = T_RPC_C_OPT_METADATA_DESCRIPTOR const _RPC_HTTP_TRANSPORT_CREDENTIALS = 0 type _RPC_HTTP_TRANSPORT_CREDENTIALS_A = T_RPC_HTTP_TRANSPORT_CREDENTIALS_A type _RPC_HTTP_TRANSPORT_CREDENTIALS_W = T_RPC_HTTP_TRANSPORT_CREDENTIALS_W type _RPC_IF_ID = T_RPC_IF_ID type _RPC_MESSAGE = T_RPC_MESSAGE type _RPC_POLICY = T_RPC_POLICY type _RPC_PROTSEQ_ENDPOINT = T_RPC_PROTSEQ_ENDPOINT type _RPC_PROTSEQ_VECTORA = T_RPC_PROTSEQ_VECTORA type _RPC_PROTSEQ_VECTORW = T_RPC_PROTSEQ_VECTORW type _RPC_SECURITY_QOS = T_RPC_SECURITY_QOS const _RPC_SECURITY_QOS_V2 = 0 type _RPC_SECURITY_QOS_V2_A = T_RPC_SECURITY_QOS_V2_A type _RPC_SECURITY_QOS_V2_W = T_RPC_SECURITY_QOS_V2_W const _RPC_SECURITY_QOS_V3 = 0 type _RPC_SECURITY_QOS_V3_A = T_RPC_SECURITY_QOS_V3_A type _RPC_SECURITY_QOS_V3_W = T_RPC_SECURITY_QOS_V3_W type _RPC_SERVER_INTERFACE = T_RPC_SERVER_INTERFACE type _RPC_SYNTAX_IDENTIFIER = T_RPC_SYNTAX_IDENTIFIER type _RPC_TRANSFER_SYNTAX = T_RPC_TRANSFER_SYNTAX type _RPC_VERSION = T_RPC_VERSION type _RSAPUBKEY = T_RSAPUBKEY type _RTL_BARRIER = T_RTL_BARRIER type _RTL_CONDITION_VARIABLE = T_RTL_CONDITION_VARIABLE type _RTL_CRITICAL_SECTION = T_RTL_CRITICAL_SECTION type _RTL_CRITICAL_SECTION_DEBUG = T_RTL_CRITICAL_SECTION_DEBUG type _RTL_RUN_ONCE = T_RTL_RUN_ONCE const _RTL_RUN_ONCE_DEF = 1 type _RTL_SRWLOCK = T_RTL_SRWLOCK type _RTL_VERIFIER_DLL_DESCRIPTOR = T_RTL_VERIFIER_DLL_DESCRIPTOR type _RTL_VERIFIER_PROVIDER_DESCRIPTOR = T_RTL_VERIFIER_PROVIDER_DESCRIPTOR type _RTL_VERIFIER_THUNK_DESCRIPTOR = T_RTL_VERIFIER_THUNK_DESCRIPTOR const _ReadBarrier = 0 const _RecognizerType = 8 const _RelationAll = 65535 const _RelationCache = 2 const _RelationGroup = 4 const _RelationNumaNode = 1 const _RelationProcessorCore = 0 const _RelationProcessorPackage = 3 type _RemotableHandle = T_RemotableHandle const _RemovableMedia = 11 type _ReplacesCorHdrNumericDefines = int32 const _RequestLocation = 1 const _RequestSize = 0 const _ResourceManagerBasicInformation = 0 const _ResourceManagerCompletionInformation = 1 const _RpcCallComplete = 0 const _RpcNotificationCallCancel = 2 const _RpcNotificationCallNone = 0 const _RpcNotificationClientDisconnect = 1 const _RpcNotificationTypeApc = 2 const _RpcNotificationTypeCallback = 5 const _RpcNotificationTypeEvent = 1 const _RpcNotificationTypeHwnd = 4 const _RpcNotificationTypeIoc = 3 const _RpcNotificationTypeNone = 0 const _RpcReceiveComplete = 2 const _RpcSendComplete = 1 const _RunlevelInformationInActivationContext = 5 const _SAIT = 93 type _SCARD_ATRMASK = T_SCARD_ATRMASK type _SCARD_IO_REQUEST = T_SCARD_IO_REQUEST type _SCHANNEL_ALG = T_SCHANNEL_ALG type _SCONTEXT_QUEUE = T_SCONTEXT_QUEUE type _SCOPE_TABLE_AMD64 = T_SCOPE_TABLE_AMD64 type _SCRUB_DATA_INPUT = T_SCRUB_DATA_INPUT type _SCRUB_DATA_OUTPUT = T_SCRUB_DATA_OUTPUT type _SC_ACTION = T_SC_ACTION const _SC_ACTION_NONE = 0 const _SC_ACTION_REBOOT = 2 const _SC_ACTION_RESTART = 1 const _SC_ACTION_RUN_COMMAND = 3 const _SC_ENUM_PROCESS_INFO = 0 const _SC_STATUS_PROCESS_INFO = 0 const _SD_ACCESSPERMISSIONS = 1 const _SD_ACCESSRESTRICTIONS = 3 type _SD_CHANGE_MACHINE_SID_INPUT = T_SD_CHANGE_MACHINE_SID_INPUT type _SD_CHANGE_MACHINE_SID_OUTPUT = T_SD_CHANGE_MACHINE_SID_OUTPUT const _SD_LAUNCHPERMISSIONS = 0 const _SD_LAUNCHRESTRICTIONS = 2 const _SECURECRT_FILL_BUFFER_PATTERN = 253 type _SECURITY_ATTRIBUTES = T_SECURITY_ATTRIBUTES type _SECURITY_CAPABILITIES = T_SECURITY_CAPABILITIES type _SECURITY_DESCRIPTOR = T_SECURITY_DESCRIPTOR type _SECURITY_DESCRIPTOR_RELATIVE = T_SECURITY_DESCRIPTOR_RELATIVE type _SECURITY_QUALITY_OF_SERVICE = T_SECURITY_QUALITY_OF_SERVICE const _SEC_WINNT_AUTH_IDENTITY = 0 type _SEC_WINNT_AUTH_IDENTITY_A = T_SEC_WINNT_AUTH_IDENTITY_A type _SEC_WINNT_AUTH_IDENTITY_W = T_SEC_WINNT_AUTH_IDENTITY_W type _SENDCMDINPARAMS = T_SENDCMDINPARAMS type _SENDCMDOUTPARAMS = T_SENDCMDOUTPARAMS const _SERVERCALL_ISHANDLED = 0 const _SERVERCALL_REJECTED = 1 const _SERVERCALL_RETRYLATER = 2 const _SERVER_LOCALITY_MACHINE_LOCAL = 1 const _SERVER_LOCALITY_PROCESS_LOCAL = 0 const _SERVER_LOCALITY_REMOTE = 2 type _SERVICE_CONTROL_STATUS_REASON_PARAMSA = T_SERVICE_CONTROL_STATUS_REASON_PARAMSA type _SERVICE_CONTROL_STATUS_REASON_PARAMSW = T_SERVICE_CONTROL_STATUS_REASON_PARAMSW type _SERVICE_DELAYED_AUTO_START_INFO = T_SERVICE_DELAYED_AUTO_START_INFO type _SERVICE_DESCRIPTIONA = T_SERVICE_DESCRIPTIONA type _SERVICE_DESCRIPTIONW = T_SERVICE_DESCRIPTIONW type _SERVICE_FAILURE_ACTIONSA = T_SERVICE_FAILURE_ACTIONSA type _SERVICE_FAILURE_ACTIONSW = T_SERVICE_FAILURE_ACTIONSW type _SERVICE_FAILURE_ACTIONS_FLAG = T_SERVICE_FAILURE_ACTIONS_FLAG type _SERVICE_NOTIFYA = T_SERVICE_NOTIFYA type _SERVICE_NOTIFYW = T_SERVICE_NOTIFYW type _SERVICE_PRESHUTDOWN_INFO = T_SERVICE_PRESHUTDOWN_INFO type _SERVICE_REQUIRED_PRIVILEGES_INFOA = T_SERVICE_REQUIRED_PRIVILEGES_INFOA type _SERVICE_REQUIRED_PRIVILEGES_INFOW = T_SERVICE_REQUIRED_PRIVILEGES_INFOW type _SERVICE_SID_INFO = T_SERVICE_SID_INFO type _SERVICE_STATUS = T_SERVICE_STATUS type _SERVICE_STATUS_PROCESS = T_SERVICE_STATUS_PROCESS type _SERVICE_TABLE_ENTRYA = T_SERVICE_TABLE_ENTRYA type _SERVICE_TABLE_ENTRYW = T_SERVICE_TABLE_ENTRYW type _SESSION_BUFFER = T_SESSION_BUFFER type _SESSION_HEADER = T_SESSION_HEADER type _SET_PARTITION_INFORMATION = T_SET_PARTITION_INFORMATION type _SET_PARTITION_INFORMATION_EX = T_SET_PARTITION_INFORMATION_EX type _SET_VIRTUAL_DISK_INFO = T_SET_VIRTUAL_DISK_INFO const _SET_VIRTUAL_DISK_INFO_CHANGE_TRACKING_STATE = 6 const _SET_VIRTUAL_DISK_INFO_IDENTIFIER = 2 const _SET_VIRTUAL_DISK_INFO_PARENT_LOCATOR = 7 const _SET_VIRTUAL_DISK_INFO_PARENT_PATH = 1 const _SET_VIRTUAL_DISK_INFO_PARENT_PATH_WITH_DEPTH = 3 const _SET_VIRTUAL_DISK_INFO_PHYSICAL_SECTOR_SIZE = 4 const _SET_VIRTUAL_DISK_INFO_UNSPECIFIED = 0 const _SET_VIRTUAL_DISK_INFO_VIRTUAL_DISK_ID = 5 type _SE_ACCESS_REPLY = T_SE_ACCESS_REPLY type _SE_ACCESS_REQUEST = T_SE_ACCESS_REQUEST type _SE_IMPERSONATION_STATE = T_SE_IMPERSONATION_STATE type _SE_SECURITY_DESCRIPTOR = T_SE_SECURITY_DESCRIPTOR const _SF_BSTR = 8 const _SF_DISPATCH = 9 const _SF_ERROR = 10 const _SF_HAVEIID = 32781 const _SF_I1 = 16 const _SF_I2 = 2 const _SF_I4 = 3 const _SF_I8 = 20 const _SF_RECORD = 36 const _SF_UNKNOWN = 13 const _SF_VARIANT = 12 type _SHCREATEPROCESSINFOW = T_SHCREATEPROCESSINFOW type _SHELLEXECUTEINFOA = T_SHELLEXECUTEINFOA type _SHELLEXECUTEINFOW = T_SHELLEXECUTEINFOW type _SHFILEINFOA = T_SHFILEINFOA type _SHFILEINFOW = T_SHFILEINFOW type _SHFILEOPSTRUCTA = T_SHFILEOPSTRUCTA type _SHFILEOPSTRUCTW = T_SHFILEOPSTRUCTW type _SHNAMEMAPPINGA = T_SHNAMEMAPPINGA type _SHNAMEMAPPINGW = T_SHNAMEMAPPINGW type _SHORT_SIZEDARR = T_SHORT_SIZEDARR type _SHQUERYRBINFO = T_SHQUERYRBINFO type _SHRINK_VOLUME_INFORMATION = T_SHRINK_VOLUME_INFORMATION type _SHSTOCKICONID = int32 type _SHSTOCKICONINFO = T_SHSTOCKICONINFO type _SID = T_SID type _SID_AND_ATTRIBUTES = T_SID_AND_ATTRIBUTES type _SID_AND_ATTRIBUTES_HASH = T_SID_AND_ATTRIBUTES_HASH type _SID_IDENTIFIER_AUTHORITY = T_SID_IDENTIFIER_AUTHORITY const _SIID_APPLICATION = 2 const _SIID_AUDIOFILES = 71 const _SIID_AUTOLIST = 49 const _SIID_CLUSTEREDDRIVE = 140 const _SIID_DELETE = 84 const _SIID_DESKTOPPC = 94 const _SIID_DEVICEAUDIOPLAYER = 102 const _SIID_DEVICECAMERA = 100 const _SIID_DEVICECELLPHONE = 99 const _SIID_DEVICEVIDEOCAMERA = 101 const _SIID_DOCASSOC = 1 const _SIID_DOCNOASSOC = 0 const _SIID_DRIVE35 = 6 const _SIID_DRIVE525 = 5 const _SIID_DRIVEBD = 133 const _SIID_DRIVECD = 11 const _SIID_DRIVEDVD = 59 const _SIID_DRIVEFIXED = 8 const _SIID_DRIVEHDDVD = 132 const _SIID_DRIVENET = 9 const _SIID_DRIVENETDISABLED = 10 const _SIID_DRIVERAM = 12 const _SIID_DRIVEREMOVE = 7 const _SIID_DRIVEUNKNOWN = 58 const _SIID_ERROR = 80 const _SIID_FIND = 22 const _SIID_FOLDER = 3 const _SIID_FOLDERBACK = 75 const _SIID_FOLDERFRONT = 76 const _SIID_FOLDEROPEN = 4 const _SIID_HELP = 23 const _SIID_IMAGEFILES = 72 const _SIID_INFO = 79 const _SIID_INTERNET = 104 const _SIID_KEY = 81 const _SIID_LINK = 29 const _SIID_LOCK = 47 const _SIID_MAX_ICONS = 175 const _SIID_MEDIAAUDIODVD = 85 const _SIID_MEDIABDR = 138 const _SIID_MEDIABDRE = 139 const _SIID_MEDIABDROM = 137 const _SIID_MEDIABLANKCD = 69 const _SIID_MEDIABLURAY = 90 const _SIID_MEDIACDAUDIO = 40 const _SIID_MEDIACDAUDIOPLUS = 65 const _SIID_MEDIACDBURN = 68 const _SIID_MEDIACDR = 67 const _SIID_MEDIACDROM = 70 const _SIID_MEDIACDRW = 66 const _SIID_MEDIACOMPACTFLASH = 98 const _SIID_MEDIADVD = 60 const _SIID_MEDIADVDPLUSR = 92 const _SIID_MEDIADVDPLUSRW = 93 const _SIID_MEDIADVDR = 63 const _SIID_MEDIADVDRAM = 61 const _SIID_MEDIADVDROM = 64 const _SIID_MEDIADVDRW = 62 const _SIID_MEDIAENHANCEDCD = 87 const _SIID_MEDIAENHANCEDDVD = 88 const _SIID_MEDIAHDDVD = 89 const _SIID_MEDIAHDDVDR = 135 const _SIID_MEDIAHDDVDRAM = 136 const _SIID_MEDIAHDDVDROM = 134 const _SIID_MEDIAMOVIEDVD = 86 const _SIID_MEDIASMARTMEDIA = 97 const _SIID_MEDIASVCD = 56 const _SIID_MEDIAVCD = 91 const _SIID_MIXEDFILES = 74 const _SIID_MOBILEPC = 95 const _SIID_MYNETWORK = 17 const _SIID_NETWORKCONNECT = 103 const _SIID_PRINTER = 16 const _SIID_PRINTERFAX = 52 const _SIID_PRINTERFAXNET = 53 const _SIID_PRINTERFILE = 54 const _SIID_PRINTERNET = 50 const _SIID_RECYCLER = 31 const _SIID_RECYCLERFULL = 32 const _SIID_RENAME = 83 const _SIID_SERVER = 15 const _SIID_SERVERSHARE = 51 const _SIID_SETTINGS = 106 const _SIID_SHARE = 28 const _SIID_SHIELD = 77 const _SIID_SLOWFILE = 30 const _SIID_SOFTWARE = 82 const _SIID_STACK = 55 const _SIID_STUFFEDFOLDER = 57 const _SIID_USERS = 96 const _SIID_VIDEOFILES = 73 const _SIID_WARNING = 78 const _SIID_WORLD = 13 const _SIID_ZIPFILE = 105 const _SING = 2 type _SINGLE_LIST_ENTRY = T_SINGLE_LIST_ENTRY type _SI_COPYFILE = T_SI_COPYFILE type _SLIST_HEADER = T_SLIST_HEADER type _SMALL_RECT = T_SMALL_RECT const _SMEXF_HANDLER = 2 const _SMEXF_SERVER = 1 const _SONY_12_WO = 66 const _SONY_D2 = 49 const _SONY_DTF = 46 const _SPACE = 8 type _SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS = T_SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS type _SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA = T_SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA type _SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA = T_SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA type _SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS = T_SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS type _STARTUPINFOA = T_STARTUPINFOA type _STARTUPINFOEXA = T_STARTUPINFOEXA type _STARTUPINFOEXW = T_STARTUPINFOEXW type _STARTUPINFOW = T_STARTUPINFOW const _STATFLAG_DEFAULT = 0 const _STATFLAG_NONAME = 1 const _STATFLAG_NOOPEN = 2 const _STGC_CONSOLIDATE = 8 const _STGC_DANGEROUSLYCOMMITMERELYTODISKCACHE = 4 const _STGC_DEFAULT = 0 const _STGC_ONLYIFCURRENT = 2 const _STGC_OVERWRITE = 1 type _STGMEDIUM_UNION = T_STGMEDIUM_UNION const _STGMOVE_COPY = 1 const _STGMOVE_MOVE = 0 const _STGMOVE_SHALLOWCOPY = 2 const _STGTY_LOCKBYTES = 3 const _STGTY_PROPERTY = 4 const _STGTY_STORAGE = 1 const _STGTY_STREAM = 2 const _STK_9840 = 85 const _STK_9940 = 92 const _STK_DATA_D3 = 45 type _STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR = T_STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR type _STORAGE_ADAPTER_DESCRIPTOR = T_STORAGE_ADAPTER_DESCRIPTOR type _STORAGE_ALLOCATE_BC_STREAM_INPUT = T_STORAGE_ALLOCATE_BC_STREAM_INPUT type _STORAGE_ALLOCATE_BC_STREAM_OUTPUT = T_STORAGE_ALLOCATE_BC_STREAM_OUTPUT type _STORAGE_BUS_RESET_REQUEST = T_STORAGE_BUS_RESET_REQUEST type _STORAGE_CRYPTO_CAPABILITY = T_STORAGE_CRYPTO_CAPABILITY type _STORAGE_CRYPTO_DESCRIPTOR = T_STORAGE_CRYPTO_DESCRIPTOR type _STORAGE_DEPENDENCY_INFO = T_STORAGE_DEPENDENCY_INFO type _STORAGE_DEPENDENCY_INFO_TYPE_1 = T_STORAGE_DEPENDENCY_INFO_TYPE_1 type _STORAGE_DEPENDENCY_INFO_TYPE_2 = T_STORAGE_DEPENDENCY_INFO_TYPE_2 const _STORAGE_DEPENDENCY_INFO_VERSION_1 = 1 const _STORAGE_DEPENDENCY_INFO_VERSION_2 = 2 const _STORAGE_DEPENDENCY_INFO_VERSION_UNSPECIFIED = 0 type _STORAGE_DESCRIPTOR_HEADER = T_STORAGE_DESCRIPTOR_HEADER type _STORAGE_DEVICE_DESCRIPTOR = T_STORAGE_DEVICE_DESCRIPTOR type _STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR = T_STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR type _STORAGE_DEVICE_ID_DESCRIPTOR = T_STORAGE_DEVICE_ID_DESCRIPTOR type _STORAGE_DEVICE_NUMBER = T_STORAGE_DEVICE_NUMBER type _STORAGE_DEVICE_NUMBERS = T_STORAGE_DEVICE_NUMBERS type _STORAGE_DEVICE_NUMBER_EX = T_STORAGE_DEVICE_NUMBER_EX type _STORAGE_DEVICE_RESILIENCY_DESCRIPTOR = T_STORAGE_DEVICE_RESILIENCY_DESCRIPTOR type _STORAGE_DEVICE_TIERING_DESCRIPTOR = T_STORAGE_DEVICE_TIERING_DESCRIPTOR type _STORAGE_FAILURE_PREDICTION_CONFIG = T_STORAGE_FAILURE_PREDICTION_CONFIG type _STORAGE_GET_BC_PROPERTIES_OUTPUT = T_STORAGE_GET_BC_PROPERTIES_OUTPUT type _STORAGE_HOTPLUG_INFO = T_STORAGE_HOTPLUG_INFO type _STORAGE_IDENTIFIER = T_STORAGE_IDENTIFIER type _STORAGE_LB_PROVISIONING_MAP_RESOURCES = T_STORAGE_LB_PROVISIONING_MAP_RESOURCES type _STORAGE_MEDIA_SERIAL_NUMBER_DATA = T_STORAGE_MEDIA_SERIAL_NUMBER_DATA type _STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR = T_STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR type _STORAGE_MINIPORT_DESCRIPTOR = T_STORAGE_MINIPORT_DESCRIPTOR type _STORAGE_PREDICT_FAILURE = T_STORAGE_PREDICT_FAILURE type _STORAGE_PRIORITY_HINT_SUPPORT = T_STORAGE_PRIORITY_HINT_SUPPORT type _STORAGE_PROPERTY_QUERY = T_STORAGE_PROPERTY_QUERY type _STORAGE_PROPERTY_SET = T_STORAGE_PROPERTY_SET type _STORAGE_PROTOCOL_DATA_DESCRIPTOR = T_STORAGE_PROTOCOL_DATA_DESCRIPTOR type _STORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT = T_STORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT type _STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE = T_STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE type _STORAGE_PROTOCOL_SPECIFIC_DATA = T_STORAGE_PROTOCOL_SPECIFIC_DATA type _STORAGE_PROTOCOL_SPECIFIC_DATA_EXT = T_STORAGE_PROTOCOL_SPECIFIC_DATA_EXT type _STORAGE_READ_CAPACITY = T_STORAGE_READ_CAPACITY type _STORAGE_RPMB_DESCRIPTOR = T_STORAGE_RPMB_DESCRIPTOR type _STORAGE_TIER = T_STORAGE_TIER type _STORAGE_WRITE_CACHE_PROPERTY = T_STORAGE_WRITE_CACHE_PROPERTY const _STRALIGN_USE_SECURE_CRT = 0 const _STREAM_SEEK_CUR = 1 const _STREAM_SEEK_END = 2 const _STREAM_SEEK_SET = 0 const _STUB_CALL_SERVER = 1 const _STUB_CALL_SERVER_NO_HRESULT = 3 const _STUB_MARSHAL = 2 const _STUB_UNMARSHAL = 0 type _SUPPORTED_OS_INFO = T_SUPPORTED_OS_INFO const _SYQUEST_EZ135 = 75 const _SYQUEST_EZFLYER = 76 const _SYQUEST_SYJET = 77 type _SYSGEOCLASS = int32 type _SYSGEOTYPE = int32 type _SYSNLS_FUNCTION = int32 type _SYSTEMTIME = T_SYSTEMTIME type _SYSTEM_ALARM_ACE = T_SYSTEM_ALARM_ACE type _SYSTEM_ALARM_CALLBACK_ACE = T_SYSTEM_ALARM_CALLBACK_ACE type _SYSTEM_ALARM_CALLBACK_OBJECT_ACE = T_SYSTEM_ALARM_CALLBACK_OBJECT_ACE type _SYSTEM_ALARM_OBJECT_ACE = T_SYSTEM_ALARM_OBJECT_ACE type _SYSTEM_AUDIT_ACE = T_SYSTEM_AUDIT_ACE type _SYSTEM_AUDIT_CALLBACK_ACE = T_SYSTEM_AUDIT_CALLBACK_ACE type _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE = T_SYSTEM_AUDIT_CALLBACK_OBJECT_ACE type _SYSTEM_AUDIT_OBJECT_ACE = T_SYSTEM_AUDIT_OBJECT_ACE type _SYSTEM_INFO = T_SYSTEM_INFO type _SYSTEM_LOGICAL_PROCESSOR_INFORMATION = T_SYSTEM_LOGICAL_PROCESSOR_INFORMATION type _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX = T_SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX type _SYSTEM_MANDATORY_LABEL_ACE = T_SYSTEM_MANDATORY_LABEL_ACE type _SYSTEM_POWER_POLICY = T_SYSTEM_POWER_POLICY type _SYSTEM_POWER_STATUS = T_SYSTEM_POWER_STATUS type _SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION = T_SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION type _SYSTEM_RESOURCE_ATTRIBUTE_ACE = T_SYSTEM_RESOURCE_ATTRIBUTE_ACE type _SYSTEM_SCOPED_POLICY_ID_ACE = T_SYSTEM_SCOPED_POLICY_ID_ACE type _SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION = T_SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION const _SYS_MAC = 2 const _SYS_OPEN = 20 const _SYS_WIN16 = 0 const _SYS_WIN32 = 1 const _SYS_WIN64 = 3 const _SZM_CREATE = 0 const _SZM_DELETE = 1 const _ScreenOff = 73 const _SeLearningModeInvalidType = 0 const _SeLearningModeMax = 2 const _SeLearningModeSettings = 1 const _SecurityAnonymous = 0 const _SecurityDelegation = 3 const _SecurityIdentification = 1 const _SecurityImpersonation = 2 const _ServerApplication = 0 const _SessionConnectNotification = 62 const _SessionDisplayState = 42 const _SessionLockState = 64 const _SessionPowerCleanup = 63 const _SessionPowerInit = 41 const _SessionRITState = 61 const _SetPowerSettingValue = 25 const _SetShutdownSelectedTime = 70 const _SevereError = 2 const _ShrinkAbort = 3 const _ShrinkCommit = 2 const _ShrinkPrepare = 1 const _SidTypeAlias = 4 const _SidTypeComputer = 9 const _SidTypeDeletedAccount = 6 const _SidTypeDomain = 3 const _SidTypeGroup = 2 const _SidTypeInvalid = 7 const _SidTypeLabel = 10 const _SidTypeLogonSession = 11 const _SidTypeUnknown = 8 const _SidTypeUser = 1 const _SidTypeWellKnownGroup = 5 const _StorageAccessAlignmentProperty = 6 const _StorageAdapterCryptoProperty = 17 const _StorageAdapterPhysicalTopologyProperty = 53 const _StorageAdapterProperty = 1 const _StorageAdapterProtocolSpecificProperty = 49 const _StorageAdapterRpmbProperty = 16 const _StorageAdapterSerialNumberProperty = 57 const _StorageAdapterTemperatureProperty = 51 const _StorageCryptoAlgorithmAESECB = 3 const _StorageCryptoAlgorithmBitlockerAESCBC = 2 const _StorageCryptoAlgorithmESSIVAESCBC = 4 const _StorageCryptoAlgorithmMax = 5 const _StorageCryptoAlgorithmUnknown = 0 const _StorageCryptoAlgorithmXTSAES = 1 const _StorageCryptoKeySize128Bits = 1 const _StorageCryptoKeySize192Bits = 2 const _StorageCryptoKeySize256Bits = 3 const _StorageCryptoKeySize512Bits = 4 const _StorageCryptoKeySizeUnknown = 0 const _StorageDeviceAttributesProperty = 55 const _StorageDeviceCopyOffloadProperty = 13 const _StorageDeviceDeviceTelemetryProperty = 10 const _StorageDeviceEnduranceProperty = 62 const _StorageDeviceIdProperty = 2 const _StorageDeviceIoCapabilityProperty = 48 const _StorageDeviceLBProvisioningProperty = 11 const _StorageDeviceLedStateProperty = 63 const _StorageDeviceLocationProperty = 58 const _StorageDeviceManagementStatus = 56 const _StorageDeviceMediumProductType = 15 const _StorageDeviceNumaProperty = 59 const _StorageDevicePhysicalTopologyProperty = 54 const _StorageDevicePowerProperty = 12 const _StorageDeviceProperty = 0 const _StorageDeviceProtocolSpecificProperty = 50 const _StorageDeviceResiliencyProperty = 14 const _StorageDeviceSeekPenaltyProperty = 7 const _StorageDeviceSelfEncryptionProperty = 64 const _StorageDeviceTemperatureProperty = 52 const _StorageDeviceTrimProperty = 8 const _StorageDeviceUniqueIdProperty = 3 const _StorageDeviceUnsafeShutdownCount = 61 const _StorageDeviceWriteAggregationProperty = 9 const _StorageDeviceWriteCacheProperty = 4 const _StorageDeviceZonedDeviceProperty = 60 const _StorageFruIdProperty = 65 const _StorageIdAssocDevice = 0 const _StorageIdAssocPort = 1 const _StorageIdAssocTarget = 2 const _StorageIdCodeSetAscii = 2 const _StorageIdCodeSetBinary = 1 const _StorageIdCodeSetReserved = 0 const _StorageIdCodeSetUtf8 = 3 const _StorageIdNAAFormatIEEEERegisteredExtended = 5 const _StorageIdNAAFormatIEEEExtended = 2 const _StorageIdNAAFormatIEEERegistered = 3 const _StorageIdTypeEUI64 = 2 const _StorageIdTypeFCPHName = 3 const _StorageIdTypeLogicalUnitGroup = 6 const _StorageIdTypeMD5LogicalUnitIdentifier = 7 const _StorageIdTypePortRelative = 4 const _StorageIdTypeScsiNameString = 8 const _StorageIdTypeTargetPortGroup = 5 const _StorageIdTypeVendorId = 1 const _StorageIdTypeVendorSpecific = 0 const _StorageMiniportProperty = 5 const _StoragePortCodeSetATAport = 4 const _StoragePortCodeSetReserved = 0 const _StoragePortCodeSetSBP2port = 6 const _StoragePortCodeSetSCSIport = 2 const _StoragePortCodeSetSDport = 7 const _StoragePortCodeSetSpaceport = 3 const _StoragePortCodeSetStorport = 1 const _StoragePortCodeSetUSBport = 5 const _StorageRpmbFrameTypeMax = 2 const _StorageRpmbFrameTypeStandard = 1 const _StorageRpmbFrameTypeUnknown = 0 const _StorageTierClassCapacity = 1 const _StorageTierClassMax = 3 const _StorageTierClassPerformance = 2 const _StorageTierClassUnspecified = 0 const _StorageTierMediaTypeDisk = 1 const _StorageTierMediaTypeMax = 5 const _StorageTierMediaTypeScm = 4 const _StorageTierMediaTypeSsd = 2 const _StorageTierMediaTypeUnspecified = 0 const _SuspendResumeInvocation = 71 const _SystemBatteryState = 5 const _SystemExecutionState = 16 const _SystemHiberFileInformation = 36 const _SystemHiberFileSize = 51 const _SystemHiberbootState = 65 const _SystemLoad = 1 const _SystemMonitorHiberBootPowerOff = 28 const _SystemPowerCapabilities = 4 const _SystemPowerInformation = 12 const _SystemPowerLoggingEntry = 24 const _SystemPowerPolicyAc = 0 const _SystemPowerPolicyCurrent = 8 const _SystemPowerPolicyDc = 1 const _SystemPowerStateHandler = 6 const _SystemPowerStateLogging = 23 const _SystemPowerStateNotifyHandler = 17 const _SystemReserveHiberFile = 10 const _SystemVideoState = 29 const _SystemWakeSource = 35 const _TAKE_SNAPSHOT_VHDSET_FLAG_NONE = 0 type _TAKE_SNAPSHOT_VHDSET_PARAMETERS = T_TAKE_SNAPSHOT_VHDSET_PARAMETERS const _TAKE_SNAPSHOT_VHDSET_VERSION_1 = 1 const _TAKE_SNAPSHOT_VHDSET_VERSION_UNSPECIFIED = 0 type _TAPE_CREATE_PARTITION = T_TAPE_CREATE_PARTITION type _TAPE_ERASE = T_TAPE_ERASE type _TAPE_GET_DRIVE_PARAMETERS = T_TAPE_GET_DRIVE_PARAMETERS type _TAPE_GET_MEDIA_PARAMETERS = T_TAPE_GET_MEDIA_PARAMETERS type _TAPE_GET_POSITION = T_TAPE_GET_POSITION type _TAPE_GET_STATISTICS = T_TAPE_GET_STATISTICS type _TAPE_PREPARE = T_TAPE_PREPARE type _TAPE_SET_DRIVE_PARAMETERS = T_TAPE_SET_DRIVE_PARAMETERS type _TAPE_SET_MEDIA_PARAMETERS = T_TAPE_SET_MEDIA_PARAMETERS type _TAPE_SET_POSITION = T_TAPE_SET_POSITION type _TAPE_STATISTICS = T_TAPE_STATISTICS type _TAPE_WMI_OPERATIONS = T_TAPE_WMI_OPERATIONS type _TAPE_WRITE_MARKS = T_TAPE_WRITE_MARKS const _THDTYPE_BLOCKMESSAGES = 0 const _THDTYPE_PROCESSMESSAGES = 1 type _TIME_DYNAMIC_ZONE_INFORMATION = T_TIME_DYNAMIC_ZONE_INFORMATION type _TIME_ZONE_INFORMATION = T_TIME_ZONE_INFORMATION const _TKIND_ALIAS = 6 const _TKIND_COCLASS = 5 const _TKIND_DISPATCH = 4 const _TKIND_ENUM = 0 const _TKIND_INTERFACE = 3 const _TKIND_MAX = 8 const _TKIND_MODULE = 2 const _TKIND_RECORD = 1 const _TKIND_UNION = 7 const _TLOSS = 5 type _TOKEN_ACCESS_INFORMATION = T_TOKEN_ACCESS_INFORMATION type _TOKEN_APPCONTAINER_INFORMATION = T_TOKEN_APPCONTAINER_INFORMATION type _TOKEN_AUDIT_POLICY = T_TOKEN_AUDIT_POLICY type _TOKEN_CONTROL = T_TOKEN_CONTROL type _TOKEN_DEFAULT_DACL = T_TOKEN_DEFAULT_DACL type _TOKEN_DEVICE_CLAIMS = T_TOKEN_DEVICE_CLAIMS type _TOKEN_ELEVATION = T_TOKEN_ELEVATION type _TOKEN_GROUPS = T_TOKEN_GROUPS type _TOKEN_GROUPS_AND_PRIVILEGES = T_TOKEN_GROUPS_AND_PRIVILEGES type _TOKEN_LINKED_TOKEN = T_TOKEN_LINKED_TOKEN type _TOKEN_MANDATORY_LABEL = T_TOKEN_MANDATORY_LABEL type _TOKEN_MANDATORY_POLICY = T_TOKEN_MANDATORY_POLICY type _TOKEN_ORIGIN = T_TOKEN_ORIGIN type _TOKEN_OWNER = T_TOKEN_OWNER type _TOKEN_PRIMARY_GROUP = T_TOKEN_PRIMARY_GROUP type _TOKEN_PRIVILEGES = T_TOKEN_PRIVILEGES type _TOKEN_SOURCE = T_TOKEN_SOURCE type _TOKEN_STATISTICS = T_TOKEN_STATISTICS type _TOKEN_USER = T_TOKEN_USER type _TOKEN_USER_CLAIMS = T_TOKEN_USER_CLAIMS type _TP_CALLBACK_ENVIRON_V3 = T_TP_CALLBACK_ENVIRON_V3 const _TP_CALLBACK_PRIORITY_COUNT = 3 const _TP_CALLBACK_PRIORITY_HIGH = 0 const _TP_CALLBACK_PRIORITY_INVALID = 3 const _TP_CALLBACK_PRIORITY_LOW = 2 const _TP_CALLBACK_PRIORITY_NORMAL = 1 type _TP_POOL_STACK_INFORMATION = T_TP_POOL_STACK_INFORMATION type _TRANSACTIONMANAGER_BASIC_INFORMATION = T_TRANSACTIONMANAGER_BASIC_INFORMATION type _TRANSACTIONMANAGER_LOGPATH_INFORMATION = T_TRANSACTIONMANAGER_LOGPATH_INFORMATION type _TRANSACTIONMANAGER_LOG_INFORMATION = T_TRANSACTIONMANAGER_LOG_INFORMATION type _TRANSACTIONMANAGER_OLDEST_INFORMATION = T_TRANSACTIONMANAGER_OLDEST_INFORMATION type _TRANSACTIONMANAGER_RECOVERY_INFORMATION = T_TRANSACTIONMANAGER_RECOVERY_INFORMATION type _TRANSACTION_BASIC_INFORMATION = T_TRANSACTION_BASIC_INFORMATION type _TRANSACTION_BIND_INFORMATION = T_TRANSACTION_BIND_INFORMATION type _TRANSACTION_ENLISTMENTS_INFORMATION = T_TRANSACTION_ENLISTMENTS_INFORMATION type _TRANSACTION_ENLISTMENT_PAIR = T_TRANSACTION_ENLISTMENT_PAIR type _TRANSACTION_LIST_ENTRY = T_TRANSACTION_LIST_ENTRY type _TRANSACTION_LIST_INFORMATION = T_TRANSACTION_LIST_INFORMATION type _TRANSACTION_NOTIFICATION = T_TRANSACTION_NOTIFICATION type _TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT = T_TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT type _TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT = T_TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT type _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT = T_TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT type _TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT = T_TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT type _TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT = T_TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT type _TRANSACTION_PROPERTIES_INFORMATION = T_TRANSACTION_PROPERTIES_INFORMATION type _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION = T_TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION type _TRANSMIT_FILE_BUFFERS = T_TRANSMIT_FILE_BUFFERS type _TRIVERTEX = T_TRIVERTEX const _TRUNCATE = -1 const _TRUSTEDDOWNLOADPROP = 3 const _TWO_DIGIT_EXPONENT = 1 type _TXFS_CREATE_MINIVERSION_INFO = T_TXFS_CREATE_MINIVERSION_INFO type _TXFS_GET_METADATA_INFO_OUT = T_TXFS_GET_METADATA_INFO_OUT type _TXFS_GET_TRANSACTED_VERSION = T_TXFS_GET_TRANSACTED_VERSION type _TXFS_LIST_TRANSACTIONS = T_TXFS_LIST_TRANSACTIONS type _TXFS_LIST_TRANSACTIONS_ENTRY = T_TXFS_LIST_TRANSACTIONS_ENTRY type _TXFS_LIST_TRANSACTION_LOCKED_FILES = T_TXFS_LIST_TRANSACTION_LOCKED_FILES type _TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY = T_TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY type _TXFS_MODIFY_RM = T_TXFS_MODIFY_RM type _TXFS_QUERY_RM_INFORMATION = T_TXFS_QUERY_RM_INFORMATION type _TXFS_READ_BACKUP_INFORMATION_OUT = T_TXFS_READ_BACKUP_INFORMATION_OUT type _TXFS_ROLLFORWARD_REDO_INFORMATION = T_TXFS_ROLLFORWARD_REDO_INFORMATION type _TXFS_SAVEPOINT_INFORMATION = T_TXFS_SAVEPOINT_INFORMATION type _TXFS_START_RM_INFORMATION = T_TXFS_START_RM_INFORMATION type _TXFS_TRANSACTION_ACTIVE_INFO = T_TXFS_TRANSACTION_ACTIVE_INFO type _TXFS_WRITE_BACKUP_INFORMATION = T_TXFS_WRITE_BACKUP_INFORMATION const _TYMED_ENHMF = 64 const _TYMED_FILE = 2 const _TYMED_GDI = 16 const _TYMED_HGLOBAL = 1 const _TYMED_ISTORAGE = 8 const _TYMED_ISTREAM = 4 const _TYMED_MFPICT = 32 const _TYMED_NULL = 0 const _TYPEFLAG_FAGGREGATABLE = 1024 const _TYPEFLAG_FAPPOBJECT = 1 const _TYPEFLAG_FCANCREATE = 2 const _TYPEFLAG_FCONTROL = 32 const _TYPEFLAG_FDISPATCHABLE = 4096 const _TYPEFLAG_FDUAL = 64 const _TYPEFLAG_FHIDDEN = 16 const _TYPEFLAG_FLICENSED = 4 const _TYPEFLAG_FNONEXTENSIBLE = 128 const _TYPEFLAG_FOLEAUTOMATION = 256 const _TYPEFLAG_FPREDECLID = 8 const _TYPEFLAG_FPROXY = 16384 const _TYPEFLAG_FREPLACEABLE = 2048 const _TYPEFLAG_FRESTRICTED = 512 const _TYPEFLAG_FREVERSEBIND = 8192 const _TYSPEC_CLSID = 0 const _TYSPEC_FILEEXT = 1 const _TYSPEC_FILENAME = 3 const _TYSPEC_MIMETYPE = 2 const _TYSPEC_OBJECTID = 6 const _TYSPEC_PACKAGENAME = 5 const _TYSPEC_PROGID = 4 const _TapeDriveCleanDriveNow = 11 const _TapeDriveHardwareError = 7 const _TapeDriveMediaLifeExpired = 12 const _TapeDriveProblemNone = 0 const _TapeDriveReadError = 5 const _TapeDriveReadWarning = 3 const _TapeDriveReadWriteError = 2 const _TapeDriveReadWriteWarning = 1 const _TapeDriveScsiConnectionError = 9 const _TapeDriveSnappedTape = 13 const _TapeDriveTimetoClean = 10 const _TapeDriveUnsupportedMedia = 8 const _TapeDriveWriteError = 6 const _TapeDriveWriteWarning = 4 const _ThreadAbsoluteCpuPriority = 1 const _ThreadDynamicCodePolicy = 2 const _ThreadInformationClassMax = 4 const _ThreadMemoryPriority = 0 const _ThreadPowerThrottling = 3 const _TokenAccessInformation = 22 const _TokenAppContainerNumber = 32 const _TokenAppContainerSid = 31 const _TokenAuditPolicy = 16 const _TokenCapabilities = 30 const _TokenDefaultDacl = 6 const _TokenDeviceClaimAttributes = 34 const _TokenDeviceGroups = 37 const _TokenElevation = 20 const _TokenElevationType = 18 const _TokenElevationTypeDefault = 1 const _TokenElevationTypeFull = 2 const _TokenElevationTypeLimited = 3 const _TokenGroups = 2 const _TokenGroupsAndPrivileges = 13 const _TokenHasRestrictions = 21 const _TokenImpersonation = 2 const _TokenImpersonationLevel = 9 const _TokenIntegrityLevel = 25 const _TokenIsAppContainer = 29 const _TokenIsRestricted = 40 const _TokenLinkedToken = 19 const _TokenLogonSid = 28 const _TokenMandatoryPolicy = 27 const _TokenOrigin = 17 const _TokenOwner = 4 const _TokenPrimary = 1 const _TokenPrimaryGroup = 5 const _TokenPrivileges = 3 const _TokenRestrictedDeviceClaimAttributes = 36 const _TokenRestrictedDeviceGroups = 38 const _TokenRestrictedSids = 11 const _TokenRestrictedUserClaimAttributes = 35 const _TokenSandBoxInert = 15 const _TokenSecurityAttributes = 39 const _TokenSessionId = 12 const _TokenSessionReference = 14 const _TokenSource = 7 const _TokenStatistics = 10 const _TokenType = 8 const _TokenUIAccess = 26 const _TokenUser = 1 const _TokenUserClaimAttributes = 33 const _TokenVirtualizationAllowed = 23 const _TokenVirtualizationEnabled = 24 const _ToleranceHigh = 3 const _ToleranceIntervalLong = 3 const _ToleranceIntervalMedium = 2 const _ToleranceIntervalShort = 1 const _ToleranceLow = 1 const _ToleranceMedium = 2 const _TraceApplicationPowerMessage = 30 const _TraceApplicationPowerMessageEnd = 31 const _TraceServicePowerMessage = 37 const _TransactionBasicInformation = 0 const _TransactionBindInformation = 4 const _TransactionDTCPrivateInformation = 5 const _TransactionEnlistmentInformation = 2 const _TransactionManagerBasicInformation = 0 const _TransactionManagerLogInformation = 1 const _TransactionManagerLogPathInformation = 2 const _TransactionManagerOldestTransactionInformation = 5 const _TransactionManagerOnlineProbeInformation = 3 const _TransactionManagerRecoveryInformation = 4 const _TransactionOutcomeAborted = 3 const _TransactionOutcomeCommitted = 2 const _TransactionOutcomeUndetermined = 1 const _TransactionPropertiesInformation = 1 const _TransactionStateCommittedNotify = 3 const _TransactionStateIndoubt = 2 const _TransactionStateNormal = 1 const _TransactionSuperiorEnlistmentInformation = 3 const _Travan = 34 const _UI16_MAX = 65535 const _UI32_MAX = 4294967295 const _UI64_MAX = 18446744073709551615 const _UI8_MAX = 255 type _ULARGE_INTEGER = T_ULARGE_INTEGER type _UMS_CREATE_THREAD_ATTRIBUTES = T_UMS_CREATE_THREAD_ATTRIBUTES const _UNDERFLOW = 4 type _UNIVERSAL_NAME_INFOA = T_UNIVERSAL_NAME_INFOA type _UNIVERSAL_NAME_INFOW = T_UNIVERSAL_NAME_INFOW type _UNLOAD_DLL_DEBUG_INFO = T_UNLOAD_DLL_DEBUG_INFO const _UNSPECIFIED_COMPARTMENT_ID = 0 const _UPPER = 1 const _URLTEMPLATE_CUSTOM = 0 const _URLTEMPLATE_HIGH = 73728 const _URLTEMPLATE_LOW = 65536 const _URLTEMPLATE_MEDHIGH = 70912 const _URLTEMPLATE_MEDIUM = 69632 const _URLTEMPLATE_MEDLOW = 66816 const _URLTEMPLATE_PREDEFINED_MAX = 131072 const _URLTEMPLATE_PREDEFINED_MIN = 65536 const _URLZONEREG_DEFAULT = 0 const _URLZONEREG_HKCU = 2 const _URLZONEREG_HKLM = 1 const _URLZONE_INTERNET = 3 const _URLZONE_INTRANET = 1 const _URLZONE_INVALID = -1 const _URLZONE_LOCAL_MACHINE = 0 const _URLZONE_PREDEFINED_MAX = 999 const _URLZONE_PREDEFINED_MIN = 0 const _URLZONE_TRUSTED = 2 const _URLZONE_UNTRUSTED = 4 const _URLZONE_USER_MAX = 10000 const _URLZONE_USER_MIN = 1000 const _URL_ENCODING_DISABLE_UTF8 = 536870912 const _URL_ENCODING_ENABLE_UTF8 = 268435456 const _URL_ENCODING_NONE = 0 const _USEDENTRY = 1 const _USERCLASSTYPE_APPNAME = 3 const _USERCLASSTYPE_FULL = 1 const _USERCLASSTYPE_SHORT = 2 type _USER_MARSHAL_CB = T_USER_MARSHAL_CB const _USER_MARSHAL_CB_BUFFER_SIZE = 0 const _USER_MARSHAL_CB_FREE = 3 const _USER_MARSHAL_CB_MARSHALL = 1 const _USER_MARSHAL_CB_UNMARSHALL = 2 type _USER_MARSHAL_ROUTINE_QUADRUPLE = T_USER_MARSHAL_ROUTINE_QUADRUPLE const _USE_SRC_URL = 1 type _UUID_VECTOR = T_UUID_VECTOR const _UfsDataTypeMax = 6 const _UfsDataTypeQueryAttribute = 2 const _UfsDataTypeQueryDescriptor = 1 const _UfsDataTypeQueryDmeAttribute = 4 const _UfsDataTypeQueryDmePeerAttribute = 5 const _UfsDataTypeQueryFlag = 3 const _UfsDataTypeUnknown = 0 const _UmsSchedulerStartup = 0 const _UmsSchedulerThreadBlocked = 1 const _UmsSchedulerThreadYield = 2 const _UmsThreadAffinity = 3 const _UmsThreadInvalidInfoClass = 0 const _UmsThreadIsSuspended = 5 const _UmsThreadIsTerminated = 6 const _UmsThreadMaxInfoClass = 7 const _UmsThreadPriority = 2 const _UmsThreadTeb = 4 const _UmsThreadUserContext = 1 const _Unknown = 0 const _Uri_HOST_DNS = 1 const _Uri_HOST_IDN = 4 const _Uri_HOST_IPV4 = 2 const _Uri_HOST_IPV6 = 3 const _Uri_HOST_UNKNOWN = 0 const _Uri_PROPERTY_ABSOLUTE_URI = 0 const _Uri_PROPERTY_AUTHORITY = 1 const _Uri_PROPERTY_DISPLAY_URI = 2 const _Uri_PROPERTY_DOMAIN = 3 const _Uri_PROPERTY_DWORD_LAST = 18 const _Uri_PROPERTY_DWORD_START = 15 const _Uri_PROPERTY_EXTENSION = 4 const _Uri_PROPERTY_FRAGMENT = 5 const _Uri_PROPERTY_HOST = 6 const _Uri_PROPERTY_HOST_TYPE = 15 const _Uri_PROPERTY_PASSWORD = 7 const _Uri_PROPERTY_PATH = 8 const _Uri_PROPERTY_PATH_AND_QUERY = 9 const _Uri_PROPERTY_PORT = 16 const _Uri_PROPERTY_QUERY = 10 const _Uri_PROPERTY_RAW_URI = 11 const _Uri_PROPERTY_SCHEME = 17 const _Uri_PROPERTY_SCHEME_NAME = 12 const _Uri_PROPERTY_STRING_LAST = 14 const _Uri_PROPERTY_STRING_START = 0 const _Uri_PROPERTY_USER_INFO = 13 const _Uri_PROPERTY_USER_NAME = 14 const _Uri_PROPERTY_ZONE = 18 const _UserEnabled = 1 const _UserNotPresent = 0 const _UserPresence = 57 const _UserPresent = 1 const _UserUnknown = 255 type _VARENUM = int32 const _VARFLAG_FBINDABLE = 4 const _VARFLAG_FDEFAULTBIND = 32 const _VARFLAG_FDEFAULTCOLLELEM = 256 const _VARFLAG_FDISPLAYBIND = 16 const _VARFLAG_FHIDDEN = 64 const _VARFLAG_FIMMEDIATEBIND = 4096 const _VARFLAG_FNONBROWSABLE = 1024 const _VARFLAG_FREADONLY = 1 const _VARFLAG_FREPLACEABLE = 2048 const _VARFLAG_FREQUESTEDIT = 8 const _VARFLAG_FRESTRICTED = 128 const _VARFLAG_FSOURCE = 2 const _VARFLAG_FUIDEFAULT = 512 const _VAR_CONST = 2 const _VAR_DISPATCH = 3 const _VAR_PERINSTANCE = 0 const _VAR_STATIC = 1 type _VERIFY_INFORMATION = T_VERIFY_INFORMATION type _VIDEOPARAMETERS = T_VIDEOPARAMETERS const _VIRTUAL_DISK_ACCESS_ALL = 4128768 const _VIRTUAL_DISK_ACCESS_ATTACH_RO = 65536 const _VIRTUAL_DISK_ACCESS_ATTACH_RW = 131072 const _VIRTUAL_DISK_ACCESS_CREATE = 1048576 const _VIRTUAL_DISK_ACCESS_DETACH = 262144 const _VIRTUAL_DISK_ACCESS_GET_INFO = 524288 const _VIRTUAL_DISK_ACCESS_METAOPS = 2097152 const _VIRTUAL_DISK_ACCESS_NONE = 0 const _VIRTUAL_DISK_ACCESS_READ = 851968 const _VIRTUAL_DISK_ACCESS_WRITABLE = 3276800 type _VIRTUAL_DISK_PROGRESS = T_VIRTUAL_DISK_PROGRESS type _VIRTUAL_STORAGE_TYPE = T_VIRTUAL_STORAGE_TYPE type _VOLUME_DISK_EXTENTS = T_VOLUME_DISK_EXTENTS type _VOLUME_GET_GPT_ATTRIBUTES_INFORMATION = T_VOLUME_GET_GPT_ATTRIBUTES_INFORMATION const _VT_ARRAY = 8192 const _VT_BLOB = 65 const _VT_BLOB_OBJECT = 70 const _VT_BOOL = 11 const _VT_BSTR = 8 const _VT_BSTR_BLOB = 4095 const _VT_BYREF = 16384 const _VT_CARRAY = 28 const _VT_CF = 71 const _VT_CLSID = 72 const _VT_CY = 6 const _VT_DATE = 7 const _VT_DECIMAL = 14 const _VT_DISPATCH = 9 const _VT_EMPTY = 0 const _VT_ERROR = 10 const _VT_FILETIME = 64 const _VT_HRESULT = 25 const _VT_I1 = 16 const _VT_I2 = 2 const _VT_I4 = 3 const _VT_I8 = 20 const _VT_ILLEGAL = 65535 const _VT_ILLEGALMASKED = 4095 const _VT_INT = 22 const _VT_INT_PTR = 37 const _VT_LPSTR = 30 const _VT_LPWSTR = 31 const _VT_NULL = 1 const _VT_PTR = 26 const _VT_R4 = 4 const _VT_R8 = 5 const _VT_RECORD = 36 const _VT_RESERVED = 32768 const _VT_SAFEARRAY = 27 const _VT_STORAGE = 67 const _VT_STORED_OBJECT = 69 const _VT_STREAM = 66 const _VT_STREAMED_OBJECT = 68 const _VT_TYPEMASK = 4095 const _VT_UI1 = 17 const _VT_UI2 = 18 const _VT_UI4 = 19 const _VT_UI8 = 21 const _VT_UINT = 23 const _VT_UINT_PTR = 38 const _VT_UNKNOWN = 13 const _VT_USERDEFINED = 29 const _VT_VARIANT = 12 const _VT_VECTOR = 4096 const _VT_VERSIONED_STREAM = 73 const _VT_VOID = 24 const _VXATape = 94 const _VXATape_1 = 83 const _VXATape_2 = 84 const _VerifyProcessorPowerPolicyAc = 20 const _VerifyProcessorPowerPolicyDc = 21 const _VerifySystemPolicyAc = 2 const _VerifySystemPolicyDc = 3 const _VmOfferPriorityBelowNormal = 3 const _VmOfferPriorityLow = 2 const _VmOfferPriorityNormal = 4 const _VmOfferPriorityVeryLow = 1 const _WAIT_CHILD = 0 const _WAIT_GRANDCHILD = 1 const _WConst_return = 0 type _WGLSWAP = T_WGLSWAP const _WIN32 = 1 type _WIN32_FILE_ATTRIBUTE_DATA = T_WIN32_FILE_ATTRIBUTE_DATA type _WIN32_FIND_DATAA = T_WIN32_FIND_DATAA type _WIN32_FIND_DATAW = T_WIN32_FIND_DATAW type _WIN32_FIND_STREAM_DATA = T_WIN32_FIND_STREAM_DATA const _WIN32_IE = 2560 const _WIN32_IE_IE100 = 2560 const _WIN32_IE_IE110 = 2560 const _WIN32_IE_IE20 = 512 const _WIN32_IE_IE30 = 768 const _WIN32_IE_IE302 = 770 const _WIN32_IE_IE40 = 1024 const _WIN32_IE_IE401 = 1025 const _WIN32_IE_IE50 = 1280 const _WIN32_IE_IE501 = 1281 const _WIN32_IE_IE55 = 1360 const _WIN32_IE_IE60 = 1536 const _WIN32_IE_IE60SP1 = 1537 const _WIN32_IE_IE60SP2 = 1539 const _WIN32_IE_IE70 = 1792 const _WIN32_IE_IE80 = 2048 const _WIN32_IE_IE90 = 2304 const _WIN32_IE_LONGHORN = 1792 const _WIN32_IE_NT4 = 512 const _WIN32_IE_NT4SP1 = 512 const _WIN32_IE_NT4SP2 = 512 const _WIN32_IE_NT4SP3 = 770 const _WIN32_IE_NT4SP4 = 1025 const _WIN32_IE_NT4SP5 = 1025 const _WIN32_IE_NT4SP6 = 1280 const _WIN32_IE_WIN10 = 2560 const _WIN32_IE_WIN2K = 1281 const _WIN32_IE_WIN2KSP1 = 1281 const _WIN32_IE_WIN2KSP2 = 1281 const _WIN32_IE_WIN2KSP3 = 1281 const _WIN32_IE_WIN2KSP4 = 1281 const _WIN32_IE_WIN6 = 1792 const _WIN32_IE_WIN7 = 2048 const _WIN32_IE_WIN8 = 2560 const _WIN32_IE_WIN98 = 1025 const _WIN32_IE_WIN98SE = 1280 const _WIN32_IE_WINBLUE = 2560 const _WIN32_IE_WINME = 1360 const _WIN32_IE_WINTHRESHOLD = 2560 const _WIN32_IE_WS03 = 1538 const _WIN32_IE_WS03SP1 = 1539 const _WIN32_IE_XP = 1536 const _WIN32_IE_XPSP1 = 1537 const _WIN32_IE_XPSP2 = 1539 type _WIN32_MEMORY_RANGE_ENTRY = T_WIN32_MEMORY_RANGE_ENTRY type _WIN32_STREAM_ID = T_WIN32_STREAM_ID const _WIN32_WINNT = 2560 const _WIN32_WINNT_LONGHORN = 1536 const _WIN32_WINNT_NT4 = 1024 const _WIN32_WINNT_VISTA = 1536 const _WIN32_WINNT_WIN10 = 2560 const _WIN32_WINNT_WIN2K = 1280 const _WIN32_WINNT_WIN6 = 1536 const _WIN32_WINNT_WIN7 = 1537 const _WIN32_WINNT_WIN8 = 1538 const _WIN32_WINNT_WINBLUE = 1539 const _WIN32_WINNT_WINTHRESHOLD = 2560 const _WIN32_WINNT_WINXP = 1281 const _WIN32_WINNT_WS03 = 1282 const _WIN32_WINNT_WS08 = 1536 type _WINDOW_BUFFER_SIZE_RECORD = T_WINDOW_BUFFER_SIZE_RECORD type _WOF_EXTERNAL_INFO = T_WOF_EXTERNAL_INFO type _WORD_BLOB = T_WORD_BLOB type _WOW64_CONTEXT = T_WOW64_CONTEXT type _WOW64_DESCRIPTOR_TABLE_ENTRY = T_WOW64_DESCRIPTOR_TABLE_ENTRY type _WOW64_FLOATING_SAVE_AREA = T_WOW64_FLOATING_SAVE_AREA type _WOW64_LDT_ENTRY = T_WOW64_LDT_ENTRY const _WRITE_ABORT_MSG = 1 const _WakeTimerList = 50 const _Win32ServiceOwnProcess = 16 const _Win32ServiceShareProcess = 32 const _WinAccountAdministratorSid = 38 const _WinAccountCertAdminsSid = 46 const _WinAccountCloneableControllersSid = 100 const _WinAccountComputersSid = 44 const _WinAccountControllersSid = 45 const _WinAccountDefaultSystemManagedSid = 110 const _WinAccountDomainAdminsSid = 41 const _WinAccountDomainGuestsSid = 43 const _WinAccountDomainUsersSid = 42 const _WinAccountEnterpriseAdminsSid = 48 const _WinAccountEnterpriseKeyAdminsSid = 114 const _WinAccountGuestSid = 39 const _WinAccountKeyAdminsSid = 113 const _WinAccountKrbtgtSid = 40 const _WinAccountPolicyAdminsSid = 49 const _WinAccountProtectedUsersSid = 107 const _WinAccountRasAndIasServersSid = 50 const _WinAccountReadonlyControllersSid = 75 const _WinAccountSchemaAdminsSid = 47 const _WinAnonymousSid = 13 const _WinApplicationPackageAuthoritySid = 83 const _WinAuthenticatedUserSid = 17 const _WinAuthenticationAuthorityAssertedSid = 103 const _WinAuthenticationKeyPropertyAttestationSid = 117 const _WinAuthenticationKeyPropertyMFASid = 116 const _WinAuthenticationKeyTrustSid = 115 const _WinAuthenticationServiceAssertedSid = 104 const _WinBatchSid = 10 const _WinBuiltinAccessControlAssistanceOperatorsSid = 101 const _WinBuiltinAccountOperatorsSid = 30 const _WinBuiltinAdministratorsSid = 26 const _WinBuiltinAnyPackageSid = 84 const _WinBuiltinAuthorizationAccessSid = 59 const _WinBuiltinBackupOperatorsSid = 33 const _WinBuiltinCertSvcDComAccessGroup = 78 const _WinBuiltinCryptoOperatorsSid = 64 const _WinBuiltinDCOMUsersSid = 61 const _WinBuiltinDefaultSystemManagedGroupSid = 111 const _WinBuiltinDomainSid = 25 const _WinBuiltinEventLogReadersGroup = 76 const _WinBuiltinGuestsSid = 28 const _WinBuiltinHyperVAdminsSid = 99 const _WinBuiltinIUsersSid = 62 const _WinBuiltinIncomingForestTrustBuildersSid = 56 const _WinBuiltinNetworkConfigurationOperatorsSid = 37 const _WinBuiltinPerfLoggingUsersSid = 58 const _WinBuiltinPerfMonitoringUsersSid = 57 const _WinBuiltinPowerUsersSid = 29 const _WinBuiltinPreWindows2000CompatibleAccessSid = 35 const _WinBuiltinPrintOperatorsSid = 32 const _WinBuiltinRDSEndpointServersSid = 96 const _WinBuiltinRDSManagementServersSid = 97 const _WinBuiltinRDSRemoteAccessServersSid = 95 const _WinBuiltinRemoteDesktopUsersSid = 36 const _WinBuiltinRemoteManagementUsersSid = 102 const _WinBuiltinReplicatorSid = 34 const _WinBuiltinStorageReplicaAdminsSid = 112 const _WinBuiltinSystemOperatorsSid = 31 const _WinBuiltinTerminalServerLicenseServersSid = 60 const _WinBuiltinUsersSid = 27 const _WinCacheablePrincipalsGroupSid = 72 const _WinCapabilityAppointmentsSid = 108 const _WinCapabilityContactsSid = 109 const _WinCapabilityDocumentsLibrarySid = 91 const _WinCapabilityEnterpriseAuthenticationSid = 93 const _WinCapabilityInternetClientServerSid = 86 const _WinCapabilityInternetClientSid = 85 const _WinCapabilityMusicLibrarySid = 90 const _WinCapabilityPicturesLibrarySid = 88 const _WinCapabilityPrivateNetworkClientServerSid = 87 const _WinCapabilityRemovableStorageSid = 94 const _WinCapabilitySharedUserCertificatesSid = 92 const _WinCapabilityVideosLibrarySid = 89 const _WinConsoleLogonSid = 81 const _WinCreatorGroupServerSid = 6 const _WinCreatorGroupSid = 4 const _WinCreatorOwnerRightsSid = 71 const _WinCreatorOwnerServerSid = 5 const _WinCreatorOwnerSid = 3 const _WinDialupSid = 8 const _WinDigestAuthenticationSid = 52 const _WinEnterpriseControllersSid = 15 const _WinEnterpriseReadonlyControllersSid = 74 const _WinHighLabelSid = 68 const _WinIUserSid = 63 const _WinInteractiveSid = 11 const _WinLocalAccountAndAdministratorSid = 106 const _WinLocalAccountSid = 105 const _WinLocalLogonSid = 80 const _WinLocalServiceSid = 23 const _WinLocalSid = 2 const _WinLocalSystemSid = 22 const _WinLogonIdsSid = 21 const _WinLowLabelSid = 66 const _WinMediumLabelSid = 67 const _WinMediumPlusLabelSid = 79 const _WinNTLMAuthenticationSid = 51 const _WinNetworkServiceSid = 24 const _WinNetworkSid = 9 const _WinNewEnterpriseReadonlyControllersSid = 77 const _WinNonCacheablePrincipalsGroupSid = 73 const _WinNtAuthoritySid = 7 const _WinNullSid = 0 const _WinOtherOrganizationSid = 55 const _WinProxySid = 14 const _WinRemoteLogonIdSid = 20 const _WinRestrictedCodeSid = 18 const _WinSChannelAuthenticationSid = 53 const _WinSelfSid = 16 const _WinServiceSid = 12 const _WinSystemLabelSid = 69 const _WinTerminalServerSid = 19 const _WinThisOrganizationCertificateSid = 82 const _WinThisOrganizationSid = 54 const _WinUntrustedLabelSid = 65 const _WinUserModeDriversSid = 98 const _WinWorldSid = 1 const _WinWriteRestrictedCodeSid = 70 const _Wow64Container = 4 const _WriteBarrier = 0 const _WriteCacheChangeUnknown = 0 const _WriteCacheChangeable = 2 const _WriteCacheDisabled = 1 const _WriteCacheEnableUnknown = 0 const _WriteCacheEnabled = 2 const _WriteCacheNotChangeable = 1 const _WriteCacheTypeNone = 1 const _WriteCacheTypeUnknown = 0 const _WriteCacheTypeWriteBack = 2 const _WriteCacheTypeWriteThrough = 3 const _WriteThroughNotSupported = 1 const _WriteThroughSupported = 2 const _WriteThroughUnknown = 0 type _XCPT_ACTION = T_XCPT_ACTION const _XLAT_CLIENT = 2 const _XLAT_SERVER = 1 type _XMIT_ROUTINE_QUINTUPLE = T_XMIT_ROUTINE_QUINTUPLE const _XMLELEMTYPE_COMMENT = 2 const _XMLELEMTYPE_DOCUMENT = 3 const _XMLELEMTYPE_DTD = 4 const _XMLELEMTYPE_ELEMENT = 0 const _XMLELEMTYPE_OTHER = 6 const _XMLELEMTYPE_PI = 5 const _XMLELEMTYPE_TEXT = 1 type _XSAVE_AREA = T_XSAVE_AREA type _XSAVE_AREA_HEADER = T_XSAVE_AREA_HEADER type _XSAVE_FORMAT = T_XSAVE_FORMAT type _XSTATE_CONFIGURATION = T_XSTATE_CONFIGURATION type _XSTATE_CONTEXT = T_XSTATE_CONTEXT type _XSTATE_FEATURE = T_XSTATE_FEATURE const _ZAFLAGS_ADD_SITES = 2 const _ZAFLAGS_CUSTOM_EDIT = 1 const _ZAFLAGS_DETECT_INTRANET = 256 const _ZAFLAGS_INCLUDE_INTRANET_SITES = 16 const _ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 8 const _ZAFLAGS_NO_CACHE = 262144 const _ZAFLAGS_NO_UI = 32 const _ZAFLAGS_REQUIRE_VERIFICATION = 4 const _ZAFLAGS_SUPPORTS_VERIFICATION = 64 const _ZAFLAGS_UNC_AS_INTRANET = 128 const _ZAFLAGS_USE_LOCKED_ZONES = 65536 const _ZAFLAGS_VERIFY_TEMPLATE_SETTINGS = 131072 type _ZONEATTRIBUTES = T_ZONEATTRIBUTES type __ACCESS_REASON_TYPE = int32 type __ACL_INFORMATION_CLASS = int32 type __ACTIVATION_CONTEXT_INFO_CLASS = int32 type __APPLY_SNAPSHOT_VHDSET_FLAG = int32 type __APPLY_SNAPSHOT_VHDSET_VERSION = int32 type __APTTYPE = int32 type __APTTYPEQUALIFIER = int32 type __ATTACH_VIRTUAL_DISK_FLAG = int32 type __ATTACH_VIRTUAL_DISK_VERSION = int32 type __AUDIT_EVENT_TYPE = int32 type __BIN_TYPES = int32 const __C89_NAMELESS = 0 type __CHANGER_DEVICE_PROBLEM_TYPE = int32 const __CLRCALL_OR_CDECL = "__cdecl" type __CM_ERROR_CONTROL_TYPE = int32 type __CM_SERVICE_LOAD_TYPE = int32 type __CM_SERVICE_NODE_TYPE = int32 type __COMPACT_VIRTUAL_DISK_FLAG = int32 type __COMPACT_VIRTUAL_DISK_VERSION = int32 type __COMPUTER_NAME_FORMAT = int32 type __COPYFILE2_COPY_PHASE = int32 type __COPYFILE2_MESSAGE_ACTION = int32 type __COPYFILE2_MESSAGE_TYPE = int32 type __CREATE_VIRTUAL_DISK_FLAG = int32 type __CREATE_VIRTUAL_DISK_VERSION = int32 const __CRTDECL = "__cdecl" type __DELETE_SNAPSHOT_VHDSET_FLAG = int32 type __DELETE_SNAPSHOT_VHDSET_VERSION = int32 type __DEPENDENT_DISK_FLAG = int32 type __DEP_SYSTEM_POLICY_TYPE = int32 type __DETACH_VIRTUAL_DISK_FLAG = int32 type __DETECTION_TYPE = int32 type __DEVICE_POWER_STATE = int32 type __DISPLAYCONFIG_COLOR_ENCODING = uint32 type __ELEMENT_TYPE = int32 type __ENLISTMENT_INFORMATION_CLASS = int32 type __EXPAND_VIRTUAL_DISK_FLAG = int32 type __EXPAND_VIRTUAL_DISK_VERSION = int32 type __FILE_ID_TYPE = int32 type __FILE_INFO_BY_HANDLE_CLASS = int32 type __FINDEX_INFO_LEVELS = int32 type __FINDEX_SEARCH_OPS = int32 type __FIRMWARE_TYPE = int32 type __GET_FILEEX_INFO_LEVELS = int32 type __GET_STORAGE_DEPENDENCY_FLAG = int32 type __GET_VIRTUAL_DISK_INFO_VERSION = int32 const __GNUC_MINOR__ = 0 const __GNUC_WIDE_EXECUTION_CHARSET_NAME = "UTF-16LE" const __GNU_EXTENSION = 0 const __GOT_SECURE_LIB__ = 200411 const __GXX_MERGED_TYPEINFO_NAMES = 0 type __HARDWARE_COUNTER_TYPE = int32 type __HEAP_INFORMATION_CLASS = int32 type __IDL_CS_CONVERT = int32 type __JOBOBJECTINFOCLASS = int32 type __JOBOBJECT_RATE_CONTROL_TOLERANCE = int32 type __JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL = int32 type __KTMOBJECT_TYPE = int32 type __LOGICAL_PROCESSOR_RELATIONSHIP = int32 const __LONG32 = 0 type __MACHINE_ATTRIBUTES = int32 type __MANDATORY_LEVEL = int32 type __MEDIA_TYPE = int32 type __MEMORY_RESOURCE_NOTIFICATION_TYPE = int32 type __MERGE_VIRTUAL_DISK_FLAG = int32 type __MERGE_VIRTUAL_DISK_VERSION = int32 const __MIDL_CONST = 0 const __MINGW32_MAJOR_VERSION = 3 const __MINGW32_MINOR_VERSION = 11 const __MINGW32__ = 1 const __MINGW64_VERSION_BUGFIX = 0 const __MINGW64_VERSION_MAJOR = 10 const __MINGW64_VERSION_MINOR = 0 const __MINGW64_VERSION_RC = 0 const __MINGW64_VERSION_STATE = "alpha" const __MINGW_ATTRIB_DEPRECATED_MSVC2005 = 0 const __MINGW_ATTRIB_DEPRECATED_SEC_WARN = 0 const __MINGW_DEBUGBREAK_IMPL = 1 const __MINGW_FORTIFY_LEVEL = 0 const __MINGW_FORTIFY_VA_ARG = 0 const __MINGW_FPCLASS_DEFINED = 1 const __MINGW_GCC_VERSION = 120000 const __MINGW_HAVE_ANSI_C99_PRINTF = 1 const __MINGW_HAVE_ANSI_C99_SCANF = 1 const __MINGW_HAVE_WIDE_C99_PRINTF = 1 const __MINGW_HAVE_WIDE_C99_SCANF = 1 const __MINGW_MSVC2005_DEPREC_STR = "This POSIX function is deprecated beginning in Visual C++ 2005, use _CRT_NONSTDC_NO_DEPRECATE to disable deprecation" const __MINGW_PROCNAMEEXT_AW = "A" const __MINGW_SEC_WARN_STR = "This function or variable may be unsafe, use _CRT_SECURE_NO_WARNINGS to disable deprecation" type __MIRROR_VIRTUAL_DISK_FLAG = int32 type __MIRROR_VIRTUAL_DISK_VERSION = int32 type __MODIFY_VHDSET_FLAG = int32 type __MODIFY_VHDSET_VERSION = int32 type __MONITOR_DISPLAY_STATE = int32 const __MSVCRT_VERSION__ = 1792 const __MSVCRT__ = 1 type __NORM_FORM = int32 type __OFFER_PRIORITY = int32 type __OPEN_VIRTUAL_DISK_FLAG = int32 type __OPEN_VIRTUAL_DISK_VERSION = int32 type __PARTITION_STYLE = int32 const __PCTYPE_FUNC = 0 type __POWER_PLATFORM_ROLE = int32 type __POWER_REQUEST_TYPE = int32 type __PRIORITY_HINT = int32 type __PROCESSOR_CACHE_TYPE = int32 type __PROCESS_INFORMATION_CLASS = int32 type __PROCESS_MEMORY_EXHAUSTION_TYPE = int32 type __PROCESS_MITIGATION_POLICY = int32 type __PROC_THREAD_ATTRIBUTE_NUM = int32 type __QUERY_CHANGES_VIRTUAL_DISK_FLAG = int32 const __REQUIRED_RPCNDR_H_VERSION__ = 475 type __RESIZE_VIRTUAL_DISK_FLAG = int32 type __RESIZE_VIRTUAL_DISK_VERSION = int32 type __RESOURCEMANAGER_INFORMATION_CLASS = int32 const __RPCNDR_H_VERSION__ = 475 const __RPCSAL_H_VERSION__ = 100 type __RPC_ASYNC_EVENT = int32 type __RPC_HTTP_REDIRECTOR_STAGE = int32 type __RPC_NOTIFICATIONS = int32 type __RPC_NOTIFICATION_TYPES = int32 type __RTL_UMS_SCHEDULER_REASON = int32 type __RTL_UMS_THREAD_INFO_CLASS = int32 type __RpcCallClientLocality = int32 type __RpcCallType = int32 type __RpcLocalAddressFormat = int32 type __SC_ACTION_TYPE = int32 type __SC_ENUM_TYPE = int32 type __SC_STATUS_TYPE = int32 type __SECURITY_IMPERSONATION_LEVEL = int32 type __SET_VIRTUAL_DISK_INFO_VERSION = int32 type __SE_LEARNING_MODE_DATA_TYPE = int32 type __SHRINK_VOLUME_REQUEST_TYPES = int32 type __SID_NAME_USE = int32 const __SIZEOF_WCHAR_T__ = 2 const __SIZEOF_WINT_T__ = 2 const __STDC_SECURE_LIB__ = 200411 const __STDC_WANT_SECURE_LIB__ = 0 type __STORAGE_ASSOCIATION_TYPE = int32 type __STORAGE_BUS_TYPE = int32 type __STORAGE_CRYPTO_ALGORITHM_ID = int32 type __STORAGE_CRYPTO_KEY_SIZE = int32 type __STORAGE_DEPENDENCY_INFO_VERSION = int32 type __STORAGE_IDENTIFIER_CODE_SET = int32 type __STORAGE_IDENTIFIER_TYPE = int32 type __STORAGE_ID_NAA_FORMAT = int32 type __STORAGE_MEDIA_TYPE = int32 type __STORAGE_PORT_CODE_SET = int32 type __STORAGE_PROPERTY_ID = int32 type __STORAGE_PROTOCOL_ATA_DATA_TYPE = int32 type __STORAGE_PROTOCOL_NVME_DATA_TYPE = int32 type __STORAGE_PROTOCOL_TYPE = int32 type __STORAGE_PROTOCOL_UFS_DATA_TYPE = int32 type __STORAGE_QUERY_TYPE = int32 type __STORAGE_RPMB_FRAME_TYPE = int32 type __STORAGE_SET_TYPE = int32 type __STORAGE_TIER_CLASS = int32 type __STORAGE_TIER_MEDIA_TYPE = int32 type __STREAM_INFO_LEVELS = int32 type __SYSTEM_POWER_STATE = int32 type __TAKE_SNAPSHOT_VHDSET_FLAG = int32 type __TAKE_SNAPSHOT_VHDSET_VERSION = int32 type __TAPE_DRIVE_PROBLEM_TYPE = int32 type __THDTYPE = int32 type __THREAD_INFORMATION_CLASS = int32 type __TOKEN_ELEVATION_TYPE = int32 type __TOKEN_INFORMATION_CLASS = int32 type __TOKEN_TYPE = int32 type __TP_CALLBACK_PRIORITY = int32 type __TRANSACTIONMANAGER_INFORMATION_CLASS = int32 type __TRANSACTION_INFORMATION_CLASS = int32 type __TRANSACTION_OUTCOME = int32 type __TRANSACTION_STATE = int32 const __UA_WCSLEN = 0 type __URLZONEREG = int32 type __USER_ACTIVITY_PRESENCE = int32 type __USER_MARSHAL_CB_TYPE = int32 const __USE_MINGW_ANSI_STDIO = 1 const __USE_MINGW_STRTOX = 1 const __VERSION__ = "12-win32" type __VIRTUAL_DISK_ACCESS_MASK = int32 const __WCHAR_MAX__ = 65535 const __WCHAR_WIDTH__ = 16 const __WIN32 = 1 const __WIN32__ = 1 const __WINNT = 1 const __WINNT__ = 1 const __WINT_MAX__ = 65535 const __WINT_WIDTH__ = 16 type __WRITE_CACHE_CHANGE = int32 type __WRITE_CACHE_ENABLE = int32 type __WRITE_CACHE_TYPE = int32 type __WRITE_THROUGH = int32 type ___WIDL_urlmon_generated_name_0000000F = int32 type ___WIDL_urlmon_generated_name_00000010 = int32 type ___WIDL_urlmon_generated_name_00000011 = int32 type ___WIDL_urlmon_generated_name_00000012 = uint32 type ___WIDL_urlmon_generated_name_00000013 = int32 type ___WIDL_urlmon_generated_name_00000014 = int32 type ___WIDL_urlmon_generated_name_00000015 = int32 type ___WIDL_urlmon_generated_name_00000016 = uint32 type ___WIDL_urlmon_generated_name_00000017 = int32 type ___WIDL_urlmon_generated_name_00000018 = int32 type ___WIDL_urlmon_generated_name_00000019 = int32 type ___WIDL_urlmon_generated_name_0000001A = int32 type ___WIDL_urlmon_generated_name_0000001B = int32 type ___WIDL_urlmon_generated_name_0000001C = int32 type ___WIDL_urlmon_generated_name_0000001D = int32 type ___WIDL_urlmon_generated_name_0000001E = int32 type ___WIDL_urlmon_generated_name_0000001F = int32 const __argc = 0 const __argv = 0 const __builtin_vsnprintf = 0 const __builtin_vsprintf = 0 var __ccgo_ts1 = "ATOMIC_INTRINSICS=1\x00COMPILER=gcc-12-win32\x00DEFAULT_AUTOVACUUM\x00DEFAULT_CACHE_SIZE=-2000\x00DEFAULT_FILE_FORMAT=4\x00DEFAULT_JOURNAL_SIZE_LIMIT=-1\x00DEFAULT_MEMSTATUS=0\x00DEFAULT_MMAP_SIZE=0\x00DEFAULT_PAGE_SIZE=4096\x00DEFAULT_PCACHE_INITSZ=20\x00DEFAULT_RECURSIVE_TRIGGERS\x00DEFAULT_SECTOR_SIZE=4096\x00DEFAULT_SYNCHRONOUS=2\x00DEFAULT_WAL_AUTOCHECKPOINT=1000\x00DEFAULT_WAL_SYNCHRONOUS=2\x00DEFAULT_WORKER_THREADS=0\x00DIRECT_OVERFLOW_READ\x00DISABLE_INTRINSIC\x00ENABLE_COLUMN_METADATA\x00ENABLE_DBPAGE_VTAB\x00ENABLE_DBSTAT_VTAB\x00ENABLE_FTS5\x00ENABLE_GEOPOLY\x00ENABLE_MATH_FUNCTIONS\x00ENABLE_MEMORY_MANAGEMENT\x00ENABLE_OFFSET_SQL_FUNC\x00ENABLE_PREUPDATE_HOOK\x00ENABLE_RBU\x00ENABLE_RTREE\x00ENABLE_SESSION\x00ENABLE_SNAPSHOT\x00ENABLE_STAT4\x00ENABLE_UNLOCK_NOTIFY\x00LIKE_DOESNT_MATCH_BLOBS\x00MALLOC_SOFT_LIMIT=1024\x00MAX_ATTACHED=10\x00MAX_COLUMN=2000\x00MAX_COMPOUND_SELECT=500\x00MAX_DEFAULT_PAGE_SIZE=8192\x00MAX_EXPR_DEPTH=1000\x00MAX_FUNCTION_ARG=1000\x00MAX_LENGTH=1000000000\x00MAX_LIKE_PATTERN_LENGTH=50000\x00MAX_MMAP_SIZE=0x7fff0000\x00MAX_PAGE_COUNT=0xfffffffe\x00MAX_PAGE_SIZE=65536\x00MAX_SQL_LENGTH=1000000000\x00MAX_TRIGGER_DEPTH=1000\x00MAX_VARIABLE_NUMBER=32766\x00MAX_VDBE_OP=250000000\x00MAX_WORKER_THREADS=8\x00MUTEX_NOOP\x00OMIT_SEH\x00SOUNDEX\x00SYSTEM_MALLOC\x00TEMP_STORE=1\x00THREADSAFE=1\x00ANY\x00BLOB\x00INT\x00INTEGER\x00REAL\x00TEXT\x0020b:20e\x0020c:20e\x0020e\x0040f-21a-21d\x00now\x00subsec\x00subsecond\x00local time unavailable\x00auto\x00ceiling\x00floor\x00julianday\x00localtime\x00unixepoch\x00utc\x00weekday \x00start of \x00month\x00year\x00day\x0040f\x0050f\x0040f-20a-20d\x0050f-20a-20d\x00%02d\x00%2d\x00%06.3f\x00%04d-%02d-%02d\x00%04d\x00%03d\x00%.16g\x00PM\x00pm\x00AM\x00am\x00%02d:%02d\x00%.3f\x00%lld\x00%02d:%02d:%02d\x00%c%04d-%02d-%02d %02d:%02d:%06.3f\x00date\x00time\x00datetime\x00strftime\x00timediff\x00current_time\x00current_timestamp\x00current_date\x00failed to allocate %u bytes of memory\x00failed memory resize %u to %u bytes\x00out of memory\x00%\x00null\x00NaN\x00-Inf\x00\x00NULL\x00(NULL)\x00unistr('\x000123456789abcdef\x00.\x00(join-%u)\x00%u-ROW VALUES CLAUSE\x00(subquery-%u)\x00unrecognized token: \"%s\"\x00922337203685477580\x00+- \n\t0123456789\x000\x00API call with %s database connection pointer\x00unopened\x00invalid\x00Savepoint\x00AutoCommit\x00Transaction\x00Checkpoint\x00JournalMode\x00Vacuum\x00VFilter\x00VUpdate\x00Init\x00Goto\x00Gosub\x00InitCoroutine\x00Yield\x00MustBeInt\x00Jump\x00Once\x00If\x00IfNot\x00IsType\x00Not\x00IfNullRow\x00SeekLT\x00SeekLE\x00SeekGE\x00SeekGT\x00IfNotOpen\x00IfNoHope\x00NoConflict\x00NotFound\x00Found\x00SeekRowid\x00NotExists\x00Last\x00IfSizeBetween\x00SorterSort\x00Sort\x00Rewind\x00IfEmpty\x00SorterNext\x00Prev\x00Next\x00IdxLE\x00IdxGT\x00Or\x00And\x00IdxLT\x00IdxGE\x00IFindKey\x00RowSetRead\x00RowSetTest\x00Program\x00IsNull\x00NotNull\x00Ne\x00Eq\x00Gt\x00Le\x00Lt\x00Ge\x00ElseEq\x00FkIfZero\x00IfPos\x00IfNotZero\x00DecrJumpZero\x00IncrVacuum\x00VNext\x00Filter\x00PureFunc\x00Function\x00Return\x00EndCoroutine\x00HaltIfNull\x00Halt\x00Integer\x00Int64\x00String\x00BeginSubrtn\x00Null\x00SoftNull\x00Blob\x00Variable\x00Move\x00Copy\x00SCopy\x00IntCopy\x00FkCheck\x00ResultRow\x00CollSeq\x00AddImm\x00RealAffinity\x00Cast\x00Permutation\x00Compare\x00IsTrue\x00ZeroOrNull\x00Offset\x00Column\x00TypeCheck\x00Affinity\x00MakeRecord\x00Count\x00ReadCookie\x00SetCookie\x00BitAnd\x00BitOr\x00ShiftLeft\x00ShiftRight\x00Add\x00Subtract\x00Multiply\x00Divide\x00Remainder\x00Concat\x00ReopenIdx\x00OpenRead\x00BitNot\x00OpenWrite\x00OpenDup\x00String8\x00OpenAutoindex\x00OpenEphemeral\x00SorterOpen\x00SequenceTest\x00OpenPseudo\x00Close\x00ColumnsUsed\x00SeekScan\x00SeekHit\x00Sequence\x00NewRowid\x00Insert\x00RowCell\x00Delete\x00ResetCount\x00SorterCompare\x00SorterData\x00RowData\x00Rowid\x00NullRow\x00SeekEnd\x00IdxInsert\x00SorterInsert\x00IdxDelete\x00DeferredSeek\x00IdxRowid\x00FinishSeek\x00Destroy\x00Clear\x00ResetSorter\x00CreateBtree\x00SqlExec\x00ParseSchema\x00LoadAnalysis\x00DropTable\x00Real\x00DropIndex\x00DropTrigger\x00IntegrityCk\x00RowSetAdd\x00Param\x00FkCounter\x00MemMax\x00OffsetLimit\x00AggInverse\x00AggStep\x00AggStep1\x00AggValue\x00AggFinal\x00Expire\x00CursorLock\x00CursorUnlock\x00TableLock\x00VBegin\x00VCreate\x00VDestroy\x00VOpen\x00VCheck\x00VInitIn\x00VColumn\x00VRename\x00Pagecount\x00MaxPgcnt\x00ClrSubtype\x00GetSubtype\x00SetSubtype\x00FilterAdd\x00Trace\x00CursorHint\x00ReleaseReg\x00Noop\x00Explain\x00Abortable\x00AreFileApisANSI\x00CharLowerW\x00CharUpperW\x00CloseHandle\x00CreateFileA\x00CreateFileW\x00CreateFileMappingA\x00CreateFileMappingW\x00CreateMutexW\x00DeleteFileA\x00DeleteFileW\x00FileTimeToLocalFileTime\x00FileTimeToSystemTime\x00FlushFileBuffers\x00FormatMessageA\x00FormatMessageW\x00FreeLibrary\x00GetCurrentProcessId\x00GetDiskFreeSpaceA\x00GetDiskFreeSpaceW\x00GetFileAttributesA\x00GetFileAttributesW\x00GetFileAttributesExW\x00GetFileSize\x00GetFullPathNameA\x00GetFullPathNameW\x00GetLastError\x00GetProcAddressA\x00GetSystemInfo\x00GetSystemTime\x00GetSystemTimeAsFileTime\x00GetTempPathA\x00GetTempPathW\x00GetTickCount\x00GetVersionExA\x00GetVersionExW\x00HeapAlloc\x00HeapCreate\x00HeapDestroy\x00HeapFree\x00HeapReAlloc\x00HeapSize\x00HeapValidate\x00HeapCompact\x00LoadLibraryA\x00LoadLibraryW\x00LocalFree\x00LockFile\x00LockFileEx\x00MapViewOfFile\x00MultiByteToWideChar\x00QueryPerformanceCounter\x00ReadFile\x00SetEndOfFile\x00SetFilePointer\x00Sleep\x00SystemTimeToFileTime\x00UnlockFile\x00UnlockFileEx\x00UnmapViewOfFile\x00WideCharToMultiByte\x00WriteFile\x00WaitForSingleObject\x00WaitForSingleObjectEx\x00GetNativeSystemInfo\x00OutputDebugStringA\x00OutputDebugStringW\x00GetProcessHeap\x00InterlockedCompareExchange\x00UuidCreate\x00UuidCreateSequential\x00FlushViewOfFile\x00CreateEvent\x00CancelIo\x00GetModuleHandleW\x00getenv\x00getcwd\x00readlink\x00lstat\x00__errno\x00cygwin_conv_path\x00%s\x00OsError 0x%lx (%lu)\x00os_win.c:%d: (%lu) %s(%s) - %s\x00delayed %dms for lock/sharing conflict at line %d\x00winSeekFile\x00winClose\x00winRead\x00winWrite1\x00winWrite2\x00winTruncate1\x00winTruncate2\x00winSync1\x00winSync2\x00winFileSize\x00winUnlockReadLock\x00winUnlock\x00%s-shm\x00readonly_shm\x00winShmMap1\x00winShmMap2\x00winShmMap3\x00winUnmapfile1\x00winUnmapfile2\x00winMapfile1\x00winMapfile2\x00etilqs_\x00winGetTempname1\x00winGetTempname2\x00winGetTempname3\x00winGetTempname4\x00winGetTempname5\x00exclusive\x00winOpen\x00psow\x00winDelete\x00winAccess\x00%s%c%s\x00winFullPathname1\x00winFullPathname2\x00winFullPathname3\x00winFullPathname4\x00win32\x00win32-longpath\x00win32-none\x00win32-longpath-none\x00memdb\x00memdb(%p,%lld)\x00PRAGMA \"%w\".page_count\x00BEGIN IMMEDIATE; COMMIT;\x00ATTACH x AS %Q\x00-mj\x00recovered %d pages from %s\x00-journal\x00-wal\x00nolock\x00immutable\x00PRAGMA table_list\x00recovered %d frames from WAL file %s\x00cannot limit WAL size: %s\x00:memory:\x00@ \x00\n\x00invalid page number %u\x002nd reference to page %u\x00Failed to read ptrmap key=%u\x00Bad ptr map entry key=%u expected=(%u,%u) got=(%u,%u)\x00failed to get page %u\x00freelist leaf count too big on page %u\x00size\x00overflow list length\x00%s is %u but should be %u\x00Tree %u page %u: \x00unable to get the page. error code=%d\x00btreeInitPage() returns error code %d\x00free space corruption\x00Tree %u page %u cell %u: \x00Tree %u page %u right child: \x00Offset %u out of range %u..%u\x00Extends off end of page\x00Rowid %lld out of order\x00Child page depth differs\x00Multiple uses for byte %u of page %u\x00Fragmentation of %u bytes reported as %u on page %u\x00Freelist: \x00max rootpage (%u) disagrees with header (%u)\x00incremental_vacuum enabled with a max rootpage of zero\x00Page %u: never used\x00Page %u: pointer map referenced\x00unknown database %s\x00destination database is in use\x00source and destination must be distinct\x00.0\x00%!.*g\x00-\x00%s%s\x00k(%d\x00BINARY\x00B\x00N.\x00,%s%s%s\x00)\x00?\x008\x0016LE\x0016BE\x00%.18s-%s\x00%s(%d)\x00%d\x00(blob)\x00vtab:%p\x00%c%u\x00]\x00program\x00subrtnsig:%d,%s\x00%.4c%s%.16c\x00MJ delete: %s\x00MJ collide: %s\x00-mj%06X9%02X\x00FOREIGN KEY constraint failed\x00a CHECK constraint\x00a generated column\x00an index\x00non-deterministic use of %s() in %s\x00API called with finalized prepared statement\x00API called with NULL prepared statement\x00string or blob too big\x00addr\x00opcode\x00p1\x00p2\x00p3\x00p4\x00p5\x00comment\x00id\x00parent\x00notused\x00detail\x00bind on a busy prepared statement: [%s]\x00-- \x00%!.15g\x00'%.*q'\x00zeroblob(%d)\x00x'\x00%02x\x00'\x00/* %s */ \x00/* unknown trigger */ \x00statement aborts at %d: %s; [%s%s]\x00NOT NULL\x00UNIQUE\x00CHECK\x00FOREIGN KEY\x00%s constraint failed\x00%z: %s\x00cannot store %s value in %s column %s.%s\x00cannot open savepoint - SQL statements in progress\x00no such savepoint: %s\x00cannot release savepoint - SQL statements in progress\x00cannot commit transaction - SQL statements in progress\x00cannot start a transaction within a transaction\x00cannot rollback - no transaction is active\x00cannot commit - no transaction is active\x00database schema has changed\x00index corruption\x00sqlite_master\x00SELECT*FROM\"%w\".%s WHERE %s ORDER BY rowid\x00too many levels of trigger recursion\x00into\x00out of\x00cannot change %s wal mode from within a transaction\x00database table is locked: %s\x00ValueList\x00-- %s\x00real\x00integer\x00cannot open value of type %s\x00no such rowid: %lld\x00cannot open virtual table: %s\x00cannot open table without rowid: %s\x00cannot open table with generated columns: %s\x00cannot open view: %s\x00no such column: \"%s\"\x00foreign key\x00indexed\x00cannot open %s column for writing\x00sqlite_\x00sqlite_temp_master\x00sqlite_temp_schema\x00sqlite_schema\x00main\x00*\x00new\x00old\x00excluded\x00misuse of aliased aggregate %s\x00misuse of aliased window function %s\x00row value misused\x00double-quoted string literal: \"%w\"\x00coalesce\x00no such column\x00ambiguous column name\x00%s: %s.%s.%s\x00%s: %s.%s\x00%s: \"%s\" - should this be a string literal in single-quotes?\x00%s: %s\x00partial index WHERE clauses\x00index expressions\x00CHECK constraints\x00generated columns\x00%s prohibited in %s\x00the \".\" operator\x00second argument to %#T() must be a constant between 0.0 and 1.0\x00not authorized to use function: %#T\x00non-deterministic functions\x00%#T() may not be used as a window function\x00window\x00aggregate\x00misuse of %s function %#T()\x00no such function: %#T\x00wrong number of arguments to function %#T()\x00FILTER may not be used with non-aggregate %#T()\x00subqueries\x00parameters\x00%r %s BY term out of range - should be between 1 and %d\x00too many terms in ORDER BY clause\x00ORDER\x00%r ORDER BY term does not match any column in the result set\x00too many terms in %s BY clause\x00HAVING clause on a non-aggregate query\x00GROUP\x00aggregate functions are not allowed in the GROUP BY clause\x00Expression tree is too large (maximum depth %d)\x00s\x00IN(...) element has %d term%s - expected %d\x00too many arguments on function %T\x00ORDER BY may not be used with non-aggregate %#T()\x00unsafe use of %#T()\x00variable number must be between ?1 and ?%d\x00too many SQL variables\x00%d columns assigned %d values\x00too many columns in %s\x00true\x00false\x00_ROWID_\x00ROWID\x00OID\x00USING ROWID SEARCH ON TABLE %s FOR IN-OPERATOR\x00USING INDEX %s FOR IN-OPERATOR\x00sub-select returns %d columns - expected %d\x00REUSE LIST SUBQUERY %d\x00CORRELATED \x00%sLIST SUBQUERY %d\x00REUSE SUBQUERY %d\x00%sSCALAR SUBQUERY %d\x000x\x00hex literal too big: %s%#T\x00generated column loop on \"%s\"\x00blob\x00text\x00numeric\x00flexnum\x00none\x00misuse of aggregate: %#T()\x00unknown function: %#T()\x00RAISE() may only be used within a trigger-program\x00more than %d aggregate terms\x00table %s may not be altered\x00SELECT 1 FROM \"%w\".sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, %d, %Q, %d)=NULL \x00SELECT 1 FROM temp.sqlite_master WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%' AND sqlite_rename_test(%Q, sql, type, name, 1, %Q, %d)=NULL \x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_quotefix(%Q, sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_quotefix('temp', sql)WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND sql NOT LIKE 'create virtual%%'\x00there is already another table or index with this name: %s\x00table\x00view %s may not be altered\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, %d) WHERE (type!='index' OR tbl_name=%Q COLLATE nocase)AND name NOT LIKE 'sqliteX_%%' ESCAPE 'X'\x00UPDATE %Q.sqlite_master SET tbl_name = %Q, name = CASE WHEN type='table' THEN %Q WHEN name LIKE 'sqliteX_autoindex%%' ESCAPE 'X' AND type='index' THEN 'sqlite_autoindex_' || %Q || substr(name,%d+18) ELSE name END WHERE tbl_name=%Q COLLATE nocase AND (type='table' OR type='index' OR type='trigger');\x00sqlite_sequence\x00UPDATE \"%w\".sqlite_sequence set name = %Q WHERE name = %Q\x00UPDATE sqlite_temp_schema SET sql = sqlite_rename_table(%Q, type, name, sql, %Q, %Q, 1), tbl_name = CASE WHEN tbl_name=%Q COLLATE nocase AND sqlite_rename_test(%Q, sql, type, name, 1, 'after rename', 0) THEN %Q ELSE tbl_name END WHERE type IN ('view', 'trigger')\x00after rename\x00SELECT raise(ABORT,%Q) FROM \"%w\".\"%w\"\x00Cannot add a PRIMARY KEY column\x00Cannot add a UNIQUE column\x00Cannot add a REFERENCES column with non-NULL default value\x00Cannot add a NOT NULL column with default value NULL\x00Cannot add a column with non-constant default\x00cannot add a STORED column\x00UPDATE \"%w\".sqlite_master SET sql = printf('%%.%ds, ',sql) || %Q || substr(sql,1+length(printf('%%.%ds',sql))) WHERE type = 'table' AND name = %Q\x00SELECT CASE WHEN quick_check GLOB 'CHECK*' THEN raise(ABORT,'CHECK constraint failed') WHEN quick_check GLOB 'non-* value in*' THEN raise(ABORT,'type mismatch on DEFAULT') ELSE raise(ABORT,'NOT NULL constraint failed') END FROM pragma_quick_check(%Q,%Q) WHERE quick_check GLOB 'CHECK*' OR quick_check GLOB 'NULL*' OR quick_check GLOB 'non-* value in*'\x00virtual tables may not be altered\x00Cannot add a column to a view\x00sqlite_altertab_%s\x00view\x00virtual table\x00rename columns of\x00drop column from\x00edit constraints of\x00cannot %s %s \"%s\"\x00no such column: \"%T\"\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, %d) WHERE name NOT LIKE 'sqliteX_%%' ESCAPE 'X' AND (type != 'index' OR tbl_name = %Q)\x00UPDATE temp.sqlite_master SET sql = sqlite_rename_column(sql, type, name, %Q, %Q, %d, %Q, %d, 1) WHERE type IN ('trigger', 'view')\x00 \x00error in %s %s%s%s: %s\x00CREATE \x00\"%w\" \x00%Q%s\x00%.*s%s\x00PRIMARY KEY\x00cannot drop %s column: \"%s\"\x00cannot drop column \"%s\": no other columns exist\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_column(%d, sql, %d) WHERE (type=='table' AND tbl_name=%Q COLLATE nocase)\x00after drop column\x00constraint may not be dropped: %s\x00no such constraint: %s\x00%.*s%s%s\x00%.*s, %s%s\x00%.*s %s%s\x00no such column: %s\x00%Q\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_drop_constraint(sql, %s) WHERE type='table' AND tbl_name=%Q COLLATE nocase\x00%.*s\x00SELECT sqlite_fail('constraint failed', %d) FROM %Q.%Q AS x WHERE x.%.*s IS NULL\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_add_constraint(sqlite_drop_constraint(sql, %d), %.*Q, %d) WHERE type='table' AND tbl_name=%Q COLLATE nocase\x00SELECT sqlite_fail('constraint %q already exists', %d) FROM \"%w\".sqlite_master WHERE type='table' AND tbl_name=%Q COLLATE nocase AND sqlite_find_constraint(sql, %Q)\x00SELECT sqlite_fail('constraint failed', %d) FROM %Q.%Q WHERE (%.*s) IS NOT TRUE\x00UPDATE \"%w\".sqlite_master SET sql = sqlite_add_constraint(sql, %.*Q, -1) WHERE type='table' AND tbl_name=%Q COLLATE nocase\x00sqlite_rename_column\x00sqlite_rename_table\x00sqlite_rename_test\x00sqlite_drop_column\x00sqlite_rename_quotefix\x00sqlite_drop_constraint\x00sqlite_fail\x00sqlite_add_constraint\x00sqlite_find_constraint\x00sqlite_stat1\x00tbl,idx,stat\x00sqlite_stat4\x00tbl,idx,neq,nlt,ndlt,sample\x00sqlite_stat3\x00CREATE TABLE %Q.%s(%s)\x00DELETE FROM %Q.%s WHERE %s=%Q\x00DELETE FROM %Q.%s\x00stat_init\x00stat_push\x00%llu\x00 %llu\x00%llu \x00stat_get\x00sqlite\\_%\x00BBB\x00idx\x00tbl\x00unordered*\x00sz=[0-9]*\x00noskipscan*\x00SELECT idx,count(*) FROM %Q.sqlite_stat4 GROUP BY idx COLLATE nocase\x00SELECT idx,neq,nlt,ndlt,sample FROM %Q.sqlite_stat4\x00SELECT tbl,idx,stat FROM %Q.sqlite_stat1\x00x\x00\x00too many attached databases - max %d\x00database %s is already in use\x00database is already attached\x00attached databases must use the same text encoding as main database\x00unable to open database: %s\x00no such database: %s\x00cannot detach database %s\x00database %s is locked\x00sqlite_detach\x00sqlite_attach\x00%s cannot use variables\x00%s %T cannot reference objects in database %s\x00authorizer malfunction\x00%s.%s\x00%s.%z\x00access to %z is prohibited\x00not authorized\x00pragma_\x00json\x00no such view\x00no such table\x00corrupt database\x00unknown database %T\x00object name reserved for internal use: %s\x00temporary table name must be unqualified\x00%s %T already exists\x00there is already an index named %s\x00cannot use RETURNING in a trigger\x00sqlite_returning_%p\x00too many columns on %s\x00always\x00generated\x00duplicate column name: %s\x00default value of column [%s] is not constant\x00cannot use DEFAULT on a generated column\x00generated columns cannot be part of the PRIMARY KEY\x00table \"%s\" has more than one primary key\x00AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY\x00virtual tables cannot use computed columns\x00virtual\x00stored\x00error in generated column \"%s\"\x00,\x00\n \x00,\n \x00\n)\x00CREATE TABLE \x00 TEXT\x00 NUM\x00 INT\x00 REAL\x00unknown datatype for %s.%s: \"%s\"\x00missing datatype for %s.%s\x00AUTOINCREMENT not allowed on WITHOUT ROWID tables\x00PRIMARY KEY missing on table %s\x00must have at least one non-generated column\x00TABLE\x00VIEW\x00CREATE %s %.*s\x00UPDATE %Q.sqlite_master SET type='%s', name=%Q, tbl_name=%Q, rootpage=#%d, sql=%Q WHERE rowid=#%d\x00CREATE TABLE %Q.sqlite_sequence(name,seq)\x00tbl_name='%q' AND type!='trigger'\x00SELECT*FROM\"%w\".\"%w\"\x00parameters are not allowed in views\x00view %s is circularly defined\x00corrupt schema\x00UPDATE %Q.sqlite_master SET rootpage=%d WHERE #%d AND rootpage=#%d\x00sqlite_stat%d\x00DELETE FROM %Q.sqlite_sequence WHERE name=%Q\x00DELETE FROM %Q.sqlite_master WHERE tbl_name=%Q and type!='trigger'\x00stat\x00table %s may not be dropped\x00use DROP TABLE to delete table %s\x00use DROP VIEW to delete view %s\x00foreign key on %s should reference only one column of table %T\x00number of columns in foreign key does not match the number of columns in the referenced table\x00unknown column \"%s\" in foreign key definition\x00FIRST\x00LAST\x00unsupported use of NULLS %s\x00index\x00cannot create a TEMP index on non-TEMP table \"%s\"\x00table %s may not be indexed\x00views may not be indexed\x00virtual tables may not be indexed\x00there is already a table named %s\x00index %s already exists\x00sqlite_autoindex_%s_%d\x00expressions prohibited in PRIMARY KEY and UNIQUE constraints\x00conflicting ON CONFLICT clauses specified\x00invalid rootpage\x00 UNIQUE\x00CREATE%s INDEX %.*s\x00INSERT INTO %Q.sqlite_master VALUES('index',%Q,%Q,#%d,%Q);\x00name='%q' AND type='index'\x00no such index: %S\x00index associated with UNIQUE or PRIMARY KEY constraint cannot be dropped\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='index'\x00too many FROM clause terms, max: %d\x00ON\x00USING\x00a JOIN clause is required before %s\x00BEGIN\x00ROLLBACK\x00COMMIT\x00RELEASE\x00unable to open a temporary database file for storing temporary tables\x00index '%q'\x00, \x00%s.rowid\x00expressions\x00unable to identify the object to be reindexed\x00duplicate WITH table name: %s\x00no such collation sequence: %s\x00unsafe use of virtual table \"%s\"\x00table %s may not be modified\x00cannot modify %s because it is a view\x00rows deleted\x00integer overflow\x00%!.*f\x00LIKE or GLOB pattern too complex\x00ESCAPE expression must be a single character\x00%!0.17g\x00%#Q\x00invalid Unicode escape\x00?000\x00MATCH\x00like\x00implies_nonnull_row\x00expr_compare\x00expr_implies_expr\x00affinity\x00soundex\x00load_extension\x00sqlite_compileoption_used\x00sqlite_compileoption_get\x00unlikely\x00likelihood\x00likely\x00sqlite_offset\x00ltrim\x00rtrim\x00trim\x00min\x00max\x00typeof\x00subtype\x00length\x00octet_length\x00instr\x00printf\x00format\x00unicode\x00char\x00abs\x00round\x00upper\x00lower\x00hex\x00unhex\x00concat\x00concat_ws\x00ifnull\x00random\x00randomblob\x00nullif\x00sqlite_version\x00sqlite_source_id\x00sqlite_log\x00unistr\x00quote\x00unistr_quote\x00last_insert_rowid\x00changes\x00total_changes\x00replace\x00zeroblob\x00substr\x00substring\x00sum\x00total\x00avg\x00count\x00group_concat\x00string_agg\x00glob\x00ceil\x00trunc\x00ln\x00log\x00log10\x00log2\x00exp\x00pow\x00power\x00mod\x00acos\x00asin\x00atan\x00atan2\x00cos\x00sin\x00tan\x00cosh\x00sinh\x00tanh\x00acosh\x00asinh\x00atanh\x00sqrt\x00radians\x00degrees\x00pi\x00sign\x00iif\x00if\x00foreign key mismatch - \"%w\" referencing \"%w\"\x00cannot INSERT into generated column \"%s\"\x00table %S has no column named %s\x00SCAN %S\x00table %S has %d columns but %d values were supplied\x00%d values for %d columns\x00UPSERT not implemented for virtual table \"%s\"\x00cannot UPSERT a view\x00rows inserted\x00dll\x00sqlite3_extension_init\x00sqlite3_\x00lib\x00_init\x00no entry point [%s] in shared library [%s]\x00error during initialization: %s\x00unable to open shared library [%.*s]\x00automatic extension loading failed: %s\x00seq\x00from\x00to\x00on_update\x00on_delete\x00match\x00cid\x00name\x00type\x00notnull\x00dflt_value\x00pk\x00hidden\x00builtin\x00enc\x00narg\x00flags\x00schema\x00ncol\x00wr\x00strict\x00seqno\x00desc\x00coll\x00key\x00unique\x00origin\x00partial\x00wdth\x00hght\x00flgs\x00rowid\x00fkid\x00busy\x00checkpointed\x00file\x00database\x00status\x00cache_size\x00timeout\x00analysis_limit\x00application_id\x00auto_vacuum\x00automatic_index\x00busy_timeout\x00cache_spill\x00case_sensitive_like\x00cell_size_check\x00checkpoint_fullfsync\x00collation_list\x00compile_options\x00count_changes\x00data_store_directory\x00data_version\x00database_list\x00default_cache_size\x00defer_foreign_keys\x00empty_result_callbacks\x00encoding\x00foreign_key_check\x00foreign_key_list\x00foreign_keys\x00freelist_count\x00full_column_names\x00fullfsync\x00function_list\x00hard_heap_limit\x00ignore_check_constraints\x00incremental_vacuum\x00index_info\x00index_list\x00index_xinfo\x00integrity_check\x00journal_mode\x00journal_size_limit\x00legacy_alter_table\x00locking_mode\x00max_page_count\x00mmap_size\x00module_list\x00optimize\x00page_count\x00page_size\x00pragma_list\x00query_only\x00quick_check\x00read_uncommitted\x00recursive_triggers\x00reverse_unordered_selects\x00schema_version\x00secure_delete\x00short_column_names\x00shrink_memory\x00soft_heap_limit\x00synchronous\x00table_info\x00table_list\x00table_xinfo\x00temp_store\x00temp_store_directory\x00threads\x00trusted_schema\x00user_version\x00wal_autocheckpoint\x00wal_checkpoint\x00writable_schema\x00normal\x00full\x00incremental\x00memory\x00temporary storage cannot be changed from within a transaction\x00SET NULL\x00SET DEFAULT\x00CASCADE\x00RESTRICT\x00NO ACTION\x00delete\x00persist\x00off\x00truncate\x00wal\x00utf8\x00utf16le\x00utf16be\x00w\x00a\x00sissii\x00-%T\x00fast\x00not a writable directory\x00Safety level may not be changed inside a transaction\x00reset\x00issisii\x00issisi\x00SELECT*FROM\"%w\"\x00shadow\x00sssiii\x00iisX\x00isiX\x00c\x00u\x00isisi\x00iss\x00is\x00iissssss\x00NONE\x00siX\x00*** in database %s ***\n\x00wrong # of entries in index \x00row not in PRIMARY KEY order for %s\x00NULL value in %s.%s\x00non-%s value in %s.%s\x00NUMERIC value in %s.%s\x00C\x00TEXT value in %s.%s\x00CHECK constraint failed in %s\x00index %s stores an imprecise floating-point value for row \x00row \x00 missing from index \x00rowid not at end-of-record for row \x00 of index \x00 values differ from index \x00non-unique entry in index \x00ok\x00UTF8\x00UTF-8\x00UTF-16le\x00UTF-16be\x00UTF16le\x00UTF16be\x00UTF-16\x00UTF16\x00unsupported encoding: %s\x00restart\x00noop\x00ANALYZE \"%w\".\"%w\"\x00CREATE TABLE x\x00%c\"%s\"\x00(\"%s\"\x00,arg HIDDEN\x00,schema HIDDEN\x00PRAGMA \x00%Q.\x00=%Q\x00rename\x00drop column\x00add column\x00drop constraint\x00error in %s %s after %s: %s\x00malformed database schema (%s)\x00%z - %s\x00orphan index\x001\x00CREATE TABLE x(type text,name text,tbl_name text,rootpage int,sql text)\x00unsupported file format\x00SELECT*FROM\"%w\".%s ORDER BY rowid\x00database schema is locked: %s\x00statement too long\x00unknown join type: %T%s%T%s%T\x00a NATURAL join may not have an ON or USING clause\x00cannot join using column %s - column not present in both tables\x00ambiguous reference to %s in USING()\x00CREATE BLOOM FILTER\x00UNION ALL\x00INTERSECT\x00EXCEPT\x00UNION\x00USE TEMP B-TREE FOR %s\x00LAST TERM OF \x00USE TEMP B-TREE FOR %sORDER BY\x00USE TEMP B-TREE FOR LAST %d TERMS OF ORDER BY\x00column%d\x00%.*z:%u\x00NUM\x00VIEWs and/or subqueries nested too deep\x00cannot use window functions in recursive queries\x00recursive aggregate queries not supported\x00SETUP\x00RECURSIVE STEP\x00S\x00SCAN %d CONSTANT ROW%s\x00COMPOUND QUERY\x00LEFT-MOST SUBQUERY\x00all VALUES must have the same number of terms\x00SELECTs to the left and right of %s do not have the same number of result columns\x00MERGE (%s)\x00LEFT\x00RIGHT\x00no such index: %s\x00'%s' is not a function\x00no such index: \"%s\"\x00multiple references to recursive table: %s\x00circular reference: %s\x00table %s has %d values for %d columns\x00multiple recursive references: %s\x00recursive reference in a subquery: %s\x00%!S\x00too many references to \"%s\": max 65535\x00access to view \"%s\" prohibited\x00..%s\x00%s.%s.%s\x00no such table: %s\x00no tables specified\x00too many columns in result set\x00DISTINCT aggregates must have exactly one argument\x00USE TEMP B-TREE FOR %s(DISTINCT)\x00USE TEMP B-TREE FOR %s(ORDER BY)\x00 USING COVERING INDEX \x00SCAN %s%s%s\x00table-function argument\x00ON clause\x00%s references tables to its right\x00target object/alias may not appear in FROM clause: %s\x00expected %d columns for '%s' but got %d\x00CO-ROUTINE %!S\x00MATERIALIZE %!S\x00DISTINCT\x00GROUP BY\x00sqlite3_get_table() called with two or more incompatible queries\x00temporary trigger may not have qualified name\x00trigger\x00cannot create triggers on virtual tables\x00cannot create triggers on shadow tables\x00trigger %T already exists\x00cannot create trigger on system table\x00BEFORE\x00AFTER\x00cannot create %s trigger on view: %S\x00cannot create INSTEAD OF trigger on table: %S\x00trigger \"%s\" may not write to shadow table \"%s\"\x00INSERT INTO %Q.sqlite_master VALUES('trigger',%Q,%Q,0,'CREATE TRIGGER %q')\x00type='trigger' AND name='%q'\x00qualified table names are not allowed on INSERT, UPDATE, and DELETE statements within triggers\x00no such trigger: %S\x00DELETE FROM %Q.sqlite_master WHERE name=%Q AND type='trigger'\x00DELETE\x00UPDATE\x00%s RETURNING is not available on virtual tables\x00RETURNING may not use \"TABLE.*\" wildcards\x00triggers nested too deep\x00-- TRIGGER %s\x00cannot UPDATE generated column \"%s\"\x00rows updated\x00%r \x00%sON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint\x00CRE\x00INS\x00cannot VACUUM from within a transaction\x00cannot VACUUM - SQL statements in progress\x00non-text filename\x00vacuum_%016llx\x00ATTACH %Q AS %s\x00output file already exists\x00reserve\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='table'AND name<>'sqlite_sequence' AND coalesce(rootpage,1)>0\x00SELECT sql FROM \"%w\".sqlite_schema WHERE type='index'\x00SELECT'INSERT INTO %s.'||quote(name)||' SELECT*FROM\"%w\".'||quote(name)FROM %s.sqlite_schema WHERE type='table'AND coalesce(rootpage,1)>0\x00INSERT INTO %s.sqlite_schema SELECT*FROM \"%w\".sqlite_schema WHERE type IN('view','trigger') OR(type='table'AND rootpage=0)\x00CREATE VIRTUAL TABLE %T\x00UPDATE %Q.sqlite_master SET type='table', name=%Q, tbl_name=%Q, rootpage=0, sql=%Q WHERE rowid=#%d\x00name=%Q AND sql=%Q\x00vtable constructor called recursively: %s\x00vtable constructor failed: %s\x00vtable constructor did not declare schema: %s\x00no such module: %s\x00syntax error\x00\x00 AND \x00(\x00 (\x00%s=?\x00ANY(%s)\x00>\x00<\x00SEARCH\x00SCAN\x00 EXISTS\x00%s %S%s\x00AUTOMATIC PARTIAL COVERING INDEX\x00AUTOMATIC COVERING INDEX\x00COVERING INDEX %s\x00INDEX %s\x00 USING \x00 USING INTEGER PRIMARY KEY (%s\x00>? AND %s\x00%c?)\x00 VIRTUAL TABLE INDEX \x000x%x:%s\x00%d:%s\x00 LEFT-JOIN\x00BLOOM FILTER ON %S (\x00rowid=?\x00MULTI-INDEX OR\x00INDEX %d\x00RIGHT-JOIN %s\x00regexp\x00NOCASE\x00too many arguments on %s() - max %d\x00automatic index on %s(%s)\x00auto-index\x00%s.xBestIndex malfunction\x00abbreviated query algorithm search\x00no query solution\x00at most %d tables in a join\x00SCAN CONSTANT ROW\x00internal query planner error\x00second argument to nth_value must be a positive integer\x00argument of ntile must be a positive integer\x00no such window: %s\x00RANGE with offset PRECEDING/FOLLOWING requires one ORDER BY expression\x00FILTER clause may only be used with aggregate window functions\x00misuse of aggregate: %s()\x00unsupported frame specification\x00PARTITION clause\x00ORDER BY clause\x00frame specification\x00cannot override %s of window: %s\x00DISTINCT is not supported for window functions\x00frame starting offset must be a non-negative integer\x00frame ending offset must be a non-negative integer\x00frame starting offset must be a non-negative number\x00frame ending offset must be a non-negative number\x00near \"%T\": syntax error\x00ORDER BY\x00LIMIT\x00%s clause should come after %s not before\x00too many terms in compound SELECT\x00syntax error after column name \"%.*s\"\x00Recursion limit\x00unknown table option: %.*s\x00set list\x00the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers\x00the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers\x00incomplete input\x00unrecognized token: \"%T\"\x00%s in \"%s\"\x00create\x00temp\x00temporary\x00end\x00explain\x00unable to close due to unfinalized statements or unfinished backups\x00not an error\x00SQL logic error\x00access permission denied\x00query aborted\x00database is locked\x00database table is locked\x00attempt to write a readonly database\x00interrupted\x00disk I/O error\x00database disk image is malformed\x00unknown operation\x00database or disk is full\x00unable to open database file\x00locking protocol\x00constraint failed\x00datatype mismatch\x00bad parameter or other API misuse\x00authorization denied\x00column index out of range\x00file is not a database\x00notification message\x00warning message\x00unknown error\x00abort due to ROLLBACK\x00another row available\x00no more rows available\x00unable to delete/modify user-function due to active statements\x00unable to use function %s in the requested context\x00unknown database: %s\x00unable to delete/modify collation sequence due to active statements\x00file:\x00localhost\x00invalid uri authority: %.*s\x00vfs\x00cache\x00shared\x00private\x00mode\x00ro\x00rw\x00rwc\x00access\x00no such %s mode: %s\x00%s mode not allowed: %s\x00no such vfs: %s\x00RTRIM\x00\x00\x00\x00%s at line %d of [%.10s]\x00database corruption\x00misuse\x00cannot open file\x00no such table column: %s.%s\x00SQLITE_\x00database is deadlocked\x00array\x00object\x00JSON nested too deep\x00JSON cannot hold BLOB values\x00malformed JSON\x00inf\x009.0e999\x00infinity\x00QNaN\x00SNaN\x00json_%s() needs an odd number of arguments\x00\"\\/bfnrt\x00-9e999\x009e999\x00inity\x00\\\"\x00\\u000b\x00\\u00\x00\\u0000\x00,\n\x00: \x00*]\x00not an array element: %Q\x00JSON path too deep\x00bad JSON path: %Q\x00@\x00[\x00#\x00.\"\x00\"\x00json_object() requires an even number of arguments\x00json_object() labels must be TEXT\x00insert\x00set\x00array_insert\x00 \x00FLAGS parameter to json_valid() must be between 1 and 15\x00[]\x00}\x00{}\x00CREATE TABLE x(key,value,type,atom,id,parent,fullkey,path,json HIDDEN,root HIDDEN)\x00[%lld]\x00.\"%.*s\"\x00.%.*s\x00$\x00jsonb\x00json_array\x00jsonb_array\x00json_array_insert\x00jsonb_array_insert\x00json_array_length\x00json_error_position\x00json_extract\x00jsonb_extract\x00->\x00->>\x00json_insert\x00jsonb_insert\x00json_object\x00jsonb_object\x00json_patch\x00jsonb_patch\x00json_pretty\x00json_quote\x00json_remove\x00jsonb_remove\x00json_replace\x00jsonb_replace\x00json_set\x00jsonb_set\x00json_type\x00json_valid\x00json_group_array\x00jsonb_group_array\x00json_group_object\x00jsonb_group_object\x00json_each\x00json_tree\x00jsonb_each\x00jsonb_tree\x00data\x00DROP TABLE '%q'.'%q_node';DROP TABLE '%q'.'%q_rowid';DROP TABLE '%q'.'%q_parent';\x00RtreeMatchArg\x00SELECT * FROM %Q.%Q\x00UNIQUE constraint failed: %s.%s\x00rtree constraint failed: %s.(%s<=%s)\x00ALTER TABLE %Q.'%q_node' RENAME TO \"%w_node\";ALTER TABLE %Q.'%q_parent' RENAME TO \"%w_parent\";ALTER TABLE %Q.'%q_rowid' RENAME TO \"%w_rowid\";\x00SELECT stat FROM %Q.sqlite_stat1 WHERE tbl = '%q_rowid'\x00node\x00INSERT OR REPLACE INTO '%q'.'%q_node' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_node' WHERE nodeno = ?1\x00SELECT nodeno FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_rowid' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_rowid' WHERE rowid = ?1\x00SELECT parentnode FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00INSERT OR REPLACE INTO '%q'.'%q_parent' VALUES(?1, ?2)\x00DELETE FROM '%q'.'%q_parent' WHERE nodeno = ?1\x00CREATE TABLE \"%w\".\"%w_rowid\"(rowid INTEGER PRIMARY KEY,nodeno\x00,a%d\x00);CREATE TABLE \"%w\".\"%w_node\"(nodeno INTEGER PRIMARY KEY,data);\x00CREATE TABLE \"%w\".\"%w_parent\"(nodeno INTEGER PRIMARY KEY,parentnode);\x00INSERT INTO \"%w\".\"%w_node\"VALUES(1,zeroblob(%d))\x00INSERT INTO\"%w\".\"%w_rowid\"(rowid,nodeno)VALUES(?1,?2)ON CONFLICT(rowid)DO UPDATE SET nodeno=excluded.nodeno\x00SELECT * FROM \"%w\".\"%w_rowid\" WHERE rowid=?1\x00UPDATE \"%w\".\"%w_rowid\"SET \x00a%d=coalesce(?%d,a%d)\x00a%d=?%d\x00 WHERE rowid=?1\x00PRAGMA %Q.page_size\x00SELECT length(data) FROM '%q'.'%q_node' WHERE nodeno = 1\x00undersize RTree blobs in \"%q_node\"\x00Wrong number of columns for an rtree table\x00Too few columns for an rtree table\x00Too many columns for an rtree table\x00Auxiliary rtree columns must be last\x00_node\x00CREATE TABLE x(%.*s INT\x00,%.*s\x00,%.*s REAL\x00,%.*s INT\x00);\x00{%lld\x00 %g\x00Invalid argument to rtreedepth()\x00%z%s%z\x00SELECT data FROM %Q.'%q_node' WHERE nodeno=?\x00Node %lld missing from database\x00SELECT parentnode FROM %Q.'%q_parent' WHERE nodeno=?1\x00SELECT nodeno FROM %Q.'%q_rowid' WHERE rowid=?1\x00%_rowid\x00%_parent\x00Mapping (%lld -> %lld) missing from %s table\x00Found (%lld -> %lld) in %s table, expected (%lld -> %lld)\x00Dimension %d of cell %d on node %lld is corrupt\x00Dimension %d of cell %d on node %lld is corrupt relative to parent\x00Node %lld is too small (%d bytes)\x00Rtree depth out of range (%d)\x00Node %lld is too small for cell count of %d (%d bytes)\x00SELECT count(*) FROM %Q.'%q%s'\x00Wrong number of entries in %%%s table - expected %lld, actual %lld\x00SELECT * FROM %Q.'%q_rowid'\x00Schema corrupt or not an rtree\x00_rowid\x00_parent\x00In RTree %s.%s:\n%z\x00wrong number of arguments to function rtreecheck()\x00[%!g,%!g],\x00[%!g,%!g]]\x00\x00Too many columns for a geopoly table\x00CREATE TABLE x(_shape\x00,%s\x00rtree\x00fullscan\x00_shape does not contain a valid polygon\x00geopoly_overlap\x00geopoly_within\x00geopoly_area\x00geopoly_blob\x00geopoly_json\x00geopoly_svg\x00geopoly_contains_point\x00geopoly_debug\x00geopoly_bbox\x00geopoly_xform\x00geopoly_regular\x00geopoly_ccw\x00geopoly_group_bbox\x00geopoly\x00rtreenode\x00rtreedepth\x00rtreecheck\x00rtree_i32\x00corrupt fossil delta\x00DROP TRIGGER IF EXISTS temp.rbu_insert_tr;DROP TRIGGER IF EXISTS temp.rbu_update1_tr;DROP TRIGGER IF EXISTS temp.rbu_update2_tr;DROP TRIGGER IF EXISTS temp.rbu_delete_tr;\x00AND rootpage!=0 AND rootpage IS NOT NULL\x00SELECT rbu_target_name(name, type='view') AS target, name FROM sqlite_schema WHERE type IN ('table', 'view') AND target IS NOT NULL %s ORDER BY name\x00SELECT name, rootpage, sql IS NULL OR substr(8, 6)=='UNIQUE' FROM main.sqlite_schema WHERE type='index' AND tbl_name = ?\x00SELECT (sql COLLATE nocase BETWEEN 'CREATE VIRTUAL' AND 'CREATE VIRTUAM'), rootpage FROM sqlite_schema WHERE name=%Q\x00PRAGMA index_list=%Q\x00SELECT rootpage FROM sqlite_schema WHERE name = %Q\x00PRAGMA table_info=%Q\x00PRAGMA main.index_list = %Q\x00PRAGMA main.index_xinfo = %Q\x00SELECT * FROM '%q'\x00rbu_\x00rbu_rowid\x00may not have\x00requires\x00table %q %s rbu_rowid column\x00PRAGMA table_info(%Q)\x00column missing from %q: %s\x00%z%s\"%w\"\x00%z%s%s\"%w\"%s\x00SELECT max(_rowid_) FROM \"%s%w\"\x00 WHERE _rowid_ > %lld \x00 DESC\x00quote(\x00||','||\x00SELECT %s FROM \"%s%w\" ORDER BY %s LIMIT 1\x00 WHERE (%s) > (%s) \x00_rowid_\x00%z%s \"%w\" COLLATE %Q\x00%z%s \"rbu_imp_%d%w\" COLLATE %Q DESC\x00%z%s quote(\"rbu_imp_%d%w\")\x00SELECT %s FROM \"rbu_imp_%w\" ORDER BY %s LIMIT 1\x00%z%s%s\x00(%s) > (%s)\x00%z%s(%.*s) COLLATE %Q\x00%z%s\"%w\" COLLATE %Q\x00%z%s\"rbu_imp_%d%w\"%s\x00%z%s\"rbu_imp_%d%w\" %s COLLATE %Q\x00%z%s\"rbu_imp_%d%w\" IS ?\x00%z%s%s.\"%w\"\x00%z%sNULL\x00%z, %s._rowid_\x00_rowid_ = ?%d\x00%z%sc%d=?%d\x00_rowid_ = (SELECT id FROM rbu_imposter2 WHERE %z)\x00%z%s\"%w\"=?%d\x00invalid rbu_control value\x00%z%s\"%w\"=rbu_delta(\"%w\", ?%d)\x00%z%s\"%w\"=rbu_fossil_delta(\"%w\", ?%d)\x00PRIMARY KEY(\x00%z%s\"%w\"%s\x00%z)\x00SELECT name FROM sqlite_schema WHERE rootpage = ?\x00%z%sc%d %s COLLATE %Q\x00%z%sc%d%s\x00%z, id INTEGER\x00CREATE TABLE rbu_imposter2(%z, PRIMARY KEY(%z)) WITHOUT ROWID\x00PRIMARY KEY \x00 NOT NULL\x00%z%s\"%w\" %s %sCOLLATE %Q%s\x00%z, %z\x00 WITHOUT ROWID\x00CREATE TABLE \"rbu_imp_%w\"(%z)%s\x00INSERT INTO %s.'rbu_tmp_%q'(rbu_control,%s%s) VALUES(%z)\x00SELECT trim(sql) FROM sqlite_schema WHERE type='index' AND name=?\x00 LIMIT -1 OFFSET %d\x00CREATE TABLE \"rbu_imp_%w\"( %s, PRIMARY KEY( %s ) ) WITHOUT ROWID\x00INSERT INTO \"rbu_imp_%w\" VALUES(%s)\x00DELETE FROM \"rbu_imp_%w\" WHERE %s\x00AND\x00WHERE\x00SELECT %s, 0 AS rbu_control FROM '%q' %s %s %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s ORDER BY %s%s\x00SELECT %s, rbu_control FROM %s.'rbu_tmp_%q' %s UNION ALL SELECT %s, rbu_control FROM '%q' %s %s typeof(rbu_control)='integer' AND rbu_control!=1 ORDER BY %s%s\x00rbu_imp_\x00, _rowid_\x00INSERT INTO \"%s%w\"(%s%s) VALUES(%s)\x00DELETE FROM \"%s%w\" WHERE %s\x00, rbu_rowid\x00, 0 AS rbu_rowid\x00CREATE TABLE IF NOT EXISTS %s.'rbu_tmp_%q' AS SELECT *%s FROM '%q' WHERE 0;\x00CREATE TEMP TRIGGER rbu_delete_tr BEFORE DELETE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update1_tr BEFORE UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(3, %s);END;CREATE TEMP TRIGGER rbu_update2_tr AFTER UPDATE ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(4, %s);END;\x00CREATE TEMP TRIGGER rbu_insert_tr AFTER INSERT ON \"%s%w\" BEGIN SELECT rbu_tmp_insert(0, %s);END;\x00,_rowid_ \x00,rbu_rowid\x000 AS \x00SELECT %s,%s rbu_control%s FROM '%q'%s %s %s %s\x00UPDATE \"%s%w\" SET %s WHERE %s\x00SELECT k, v FROM %s.rbu_state\x00file:///%s-vacuum?modeof=%s\x00ATTACH %Q AS stat\x00CREATE TABLE IF NOT EXISTS %s.rbu_state(k INTEGER PRIMARY KEY, v)\x00cannot vacuum wal mode database\x00&\x00file:%s-vactmp?rbu_memory=1%s%s\x00rbu_tmp_insert\x00rbu_fossil_delta\x00rbu_target_name\x00SELECT * FROM sqlite_schema\x00rbu vfs not found\x00PRAGMA main.wal_checkpoint=restart\x00rbu_exclusive_checkpoint\x00%s-oal\x00%s-wal\x00PRAGMA schema_version\x00PRAGMA schema_version = %d\x00INSERT OR REPLACE INTO %s.rbu_state(k, v) VALUES (%d, %d), (%d, %Q), (%d, %Q), (%d, %d), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %lld), (%d, %Q) \x00PRAGMA main.%s\x00PRAGMA main.%s = %d\x00PRAGMA writable_schema=1\x00SELECT sql FROM sqlite_schema WHERE sql!='' AND rootpage!=0 AND name!='sqlite_sequence' ORDER BY type DESC\x00SELECT * FROM sqlite_schema WHERE rootpage=0 OR rootpage IS NULL\x00INSERT INTO sqlite_schema VALUES(?,?,?,?,?)\x00PRAGMA writable_schema=0\x00DELETE FROM %s.'rbu_tmp_%q'\x00rbu_state mismatch error\x00rbu_vfs_%d\x00SELECT count(*) FROM sqlite_schema WHERE type='index' AND tbl_name = %Q\x00rbu_index_cnt\x00SELECT 1 FROM sqlite_schema WHERE tbl_name = 'rbu_count'\x00SELECT sum(cnt * (1 + rbu_index_cnt(rbu_target_name(tbl))))FROM rbu_count\x00cannot update wal mode database\x00vacuum\x00update\x00database modified during rbu %s\x00BEGIN IMMEDIATE\x00PRAGMA journal_mode=off\x00-vactmp\x00DELETE FROM stat.rbu_state\x00rbu/zipvfs setup error\x00rbu(%s)/%z\x00rbu_memory\x00/\x00overflow\x00%s%.3x+%.6x\x00%s%.3x/\x00internal\x00leaf\x00corrupted\x00SELECT * FROM (SELECT 'sqlite_schema' AS name,1 AS rootpage,'table' AS type UNION ALL SELECT name,rootpage,type FROM \"%w\".sqlite_schema WHERE rootpage!=0)\x00WHERE name=%Q\x00 ORDER BY name\x00dbstat\x00CREATE TABLE x(pgno INTEGER PRIMARY KEY, data BLOB, schema HIDDEN)\x00read-only\x00cannot delete\x00cannot insert\x00no such schema\x00bad page number\x00bad page value\x00failed to open transaction\x00sqlite_dbpage\x00SELECT 0, 'tbl', '', 0, '', 1, 0 UNION ALL SELECT 1, 'idx', '', 0, '', 2, 0 UNION ALL SELECT 2, 'stat', '', 0, '', 0, 0\x00PRAGMA '%q'.table_xinfo('%q')\x00SELECT\x00%z%s\"%w\".\"%w\".\"%w\"=\"%w\".\"%w\".\"%w\"\x00%z%s\"%w\".\"%w\".\"%w\" IS NOT \"%w\".\"%w\".\"%w\"\x00 OR \x00_rowid_, *\x00SELECT %s FROM \"%w\".\"%w\" WHERE NOT EXISTS ( SELECT 1 FROM \"%w\".\"%w\" WHERE %s)\x00%z%s\"%w\".\"%w\".\"%w\"\x00SELECT %s,%s FROM \"%w\".\"%w\", \"%w\".\"%w\" WHERE %s AND (%z)\x00SELECT * FROM %Q.sqlite_schema\x00no such table: %s.%s\x00table schemas do not match\x00, 1\x00 AND (?6 OR ?3 IS stat)\x00tbl, idx\x00?1, (CASE WHEN ?2=X'' THEN NULL ELSE ?2 END)\x00tbl, ?2, stat\x00?%d\x00 AND (?%d OR ?%d IS %w.%w)\x00SELECT %s%s FROM %Q.%Q WHERE (%s) IS (%s)\x00SAVEPOINT changeset\x00RELEASE changeset\x00UPDATE main.\x00 SET \x00 = ?\x00 WHERE \x00idx IS CASE WHEN length(?4)=0 AND typeof(?4)='blob' THEN NULL ELSE ?4 END \x00 IS ?\x00DELETE FROM main.\x00 AND (?\x00AND \x00INSERT INTO main.\x00) VALUES(?\x00, ?\x00INSERT INTO main.sqlite_stat1 VALUES(?1, CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END, ?3)\x00DELETE FROM main.sqlite_stat1 WHERE tbl=?1 AND idx IS CASE WHEN length(?2)=0 AND typeof(?2)='blob' THEN NULL ELSE ?2 END AND (?4 OR stat IS ?3)\x00SAVEPOINT replace_op\x00RELEASE replace_op\x00PRAGMA table_list = %Q\x00SELECT %s FROM %Q WHERE (%s) IS (%s)\x00INSERT INTO %Q(%s) VALUES(%s)\x00SAVEPOINT update_op\x00ROLLBACK TO update_op\x00RELEASE update_op\x00SAVEPOINT changeset_apply\x00PRAGMA defer_foreign_keys = 1\x00sqlite3changeset_apply(): no such table: %s\x00sqlite3changeset_apply(): table %s has %d columns, expected %d or more\x00sqlite3changeset_apply(): primary key mismatch for table %s\x00PRAGMA defer_foreign_keys = 0\x00RELEASE changeset_apply\x00ROLLBACK TO changeset_apply\x00undefined\x00invalid change: %s value in PK of old.* record\x00invalid change: defined value in PK of new.* record\x00un\x00invalid change: column %d - old.* value is %sdefined but new.* is %sdefined\x00invalid change: column %d is undefined\x00invalid change: null value in PK\x00fts5: parser stack overflow\x00fts5: syntax error near \"%.*s\"\x00%z%.*s\x00wrong number of arguments to function highlight()\x00wrong number of arguments to function snippet()\x00wrong number of arguments to function fts5_get_locale()\x00non-integer argument passed to function fts5_get_locale()\x00snippet\x00highlight\x00bm25\x00fts5_get_locale\x00prefix\x00malformed prefix=... directive\x00too many prefix indexes (max %d)\x00prefix length out of range (max 999)\x00tokenize\x00multiple tokenize=... directives\x00parse error in tokenize directive\x00content\x00multiple content=... directives\x00%Q.%Q\x00contentless_delete\x00malformed contentless_delete=... directive\x00contentless_unindexed\x00content_rowid\x00multiple content_rowid=... directives\x00columnsize\x00malformed columnsize=... directive\x00locale\x00malformed locale=... directive\x00columns\x00malformed detail=... directive\x00tokendata\x00malformed tokendata=... directive\x00unrecognized option: \"%.*s\"\x00rank\x00reserved fts5 column name: %s\x00unindexed\x00unrecognized column option: %s\x00T.%Q\x00, T.%Q\x00, T.c%d\x00, NULL\x00, T.l%d\x00reserved fts5 table name: %s\x00parse error in \"%s\"\x00contentless_delete=1 requires a contentless table\x00contentless_delete=1 is incompatible with columnsize=0\x00contentless_unindexed=1 requires a contentless table\x00docsize\x00%Q.'%q_%s'\x00CREATE TABLE x(\x00%z%s%Q\x00%z, %Q HIDDEN, %s HIDDEN)\x00pgsz\x00hashsize\x00automerge\x00usermerge\x00crisismerge\x00deletemerge\x00secure-delete\x00insttoken\x00SELECT k, v FROM %Q.'%q_config'\x00version\x00invalid fts5 file format (found %d, expected %d or %d) - run 'rebuild'\x00unterminated string\x00fts5: syntax error near \"%.1s\"\x00OR\x00NOT\x00NEAR\x00expected integer, got \"%.*s\"\x00fts5: column queries are not supported (detail=none)\x00phrase\x00fts5: %s queries are not supported (detail!=full)\x00fts5 expression tree is too large (maximum depth %d)\x00fts5: corruption found reading blob %lld from table \"%s\"\x00fts5: corruption on page %d, segment %d, table \"%s\"\x00fts5: corruption in table \"%s\"\x00block\x00REPLACE INTO '%q'.'%q_data'(id, block) VALUES(?,?)\x00DELETE FROM '%q'.'%q_data' WHERE id>=? AND id<=?\x00DELETE FROM '%q'.'%q_idx' WHERE segid=?\x00\xff\x00\x00\x01\x00fts5: corrupt structure record for table \"%s\"\x00PRAGMA %Q.data_version\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term<=? ORDER BY term DESC LIMIT 1\x00SELECT pgno FROM '%q'.'%q_idx' WHERE segid=? AND term>? ORDER BY term ASC LIMIT 1\x00INSERT INTO '%q'.'%q_idx'(segid,term,pgno) VALUES(?,?,?)\x00DELETE FROM '%q'.'%q_idx' WHERE (segid, (pgno/2)) = (?1, ?2)\x00REPLACE INTO %Q.'%q_config' VALUES ('version', %d)\x00%s_data\x00id INTEGER PRIMARY KEY, block BLOB\x00segid, term, pgno, PRIMARY KEY(segid, term)\x00\x00\x00SELECT segid, term, (pgno>>1), (pgno&1) FROM %Q.'%q_idx' WHERE segid=%d ORDER BY 1, 2\x00\x00\x00\x00\x00\x00fts5: checksum mismatch for table \"%s\"\x00recursively defined fts5 content table\x00DESC\x00ASC\x00SELECT rowid, rank FROM %Q.%Q ORDER BY %s(\"%w\"%s%s) %s\x00reads\x00unknown special query: %.*s\x00SELECT %s\x00no such function: %s\x00parse error in rank function: %s\x00%s: table does not support scanning\x00fts5: missing row %lld from content table %s\x00delete-all\x00'delete-all' may only be used with a contentless or external content fts5 table\x00rebuild\x00'rebuild' may not be used with a contentless fts5 table\x00merge\x00integrity-check\x00flush\x00%s a subset of columns on fts5 contentless-delete table: %s\x00%s contentless fts5 table: %s\x00cannot UPDATE\x00'delete' may not be used with a contentless_delete=1 table\x00cannot DELETE from contentless fts5 table: %s\x00fts5_locale() requires locale=1\x00no such cursor: %lld\x00no such tokenizer: %s\x00error in tokenizer constructor\x00fts5_api_ptr\x00fts5: 2026-06-26 20:14:12 d4c0e51e4aeb96955b99185ab9cde75c339e2c29c3f3f12428d364a10d782c62\x00config\x00malformed inverted index for FTS5 table %s.%s\x00unable to validate the inverted index for FTS5 table %s.%s: %s\x00fts5\x00fts5_source_id\x00fts5_locale\x00fts5_insttoken\x00SELECT %s FROM %s T WHERE T.%Q >= ? AND T.%Q <= ? ORDER BY T.%Q ASC\x00SELECT %s FROM %s T WHERE T.%Q <= ? AND T.%Q >= ? ORDER BY T.%Q DESC\x00SELECT %s FROM %s T WHERE T.%Q=?\x00INSERT INTO %Q.'%q_content' VALUES(%s)\x00REPLACE INTO %Q.'%q_content' VALUES(%s)\x00DELETE FROM %Q.'%q_content' WHERE id=?\x00REPLACE INTO %Q.'%q_docsize' VALUES(?,?%s)\x00DELETE FROM %Q.'%q_docsize' WHERE id=?\x00SELECT sz%s FROM %Q.'%q_docsize' WHERE id=?\x00REPLACE INTO %Q.'%q_config' VALUES(?,?)\x00SELECT %s FROM %s AS T\x00%z%s?%d\x00%z,?%d\x00,?\x00,origin\x00DROP TABLE IF EXISTS %Q.'%q_data';DROP TABLE IF EXISTS %Q.'%q_idx';DROP TABLE IF EXISTS %Q.'%q_config';\x00DROP TABLE IF EXISTS %Q.'%q_docsize';\x00DROP TABLE IF EXISTS %Q.'%q_content';\x00ALTER TABLE %Q.'%q_%s' RENAME TO '%q_%s';\x00CREATE TABLE %Q.'%q_%q'(%s)%s\x00fts5: error creating shadow table %q_%s: %s\x00id INTEGER PRIMARY KEY\x00, c%d\x00, l%d\x00id INTEGER PRIMARY KEY, sz BLOB\x00id INTEGER PRIMARY KEY, sz BLOB, origin INTEGER\x00k PRIMARY KEY, v\x00DELETE FROM %Q.'%q_data';DELETE FROM %Q.'%q_idx';\x00DELETE FROM %Q.'%q_docsize';\x00DELETE FROM %Q.'%q_content';\x00SELECT count(*) FROM %Q.'%q_%s'\x00tokenchars\x00separators\x00L* N* Co\x00categories\x00remove_diacritics\x00unicode61\x00porter\x00al\x00ance\x00ence\x00er\x00ic\x00able\x00ible\x00ant\x00ement\x00ment\x00ent\x00ion\x00ou\x00ism\x00ate\x00iti\x00ous\x00ive\x00ize\x00at\x00bl\x00ble\x00iz\x00ational\x00tional\x00tion\x00enci\x00anci\x00izer\x00logi\x00bli\x00alli\x00entli\x00eli\x00e\x00ousli\x00ization\x00ation\x00ator\x00alism\x00iveness\x00fulness\x00ful\x00ousness\x00aliti\x00iviti\x00biliti\x00ical\x00ness\x00icate\x00iciti\x00ative\x00alize\x00eed\x00ee\x00ed\x00ing\x00case_sensitive\x00trigram\x00ascii\x00col\x00row\x00instance\x00fts5vocab: unknown table type: %Q\x00CREATE TABlE vocab(term, col, doc, cnt)\x00CREATE TABlE vocab(term, doc, cnt)\x00CREATE TABlE vocab(term, doc, col, offset)\x00wrong number of vtable arguments\x00recursive definition for %s.%s\x00SELECT t.%Q FROM %Q.%Q AS t WHERE t.%Q MATCH '*id'\x00no such fts5 table: %s.%s\x00fts5vocab\x002026-06-26 20:14:12 d4c0e51e4aeb96955b99185ab9cde75c339e2c29c3f3f12428d364a10d782c62\x00" const __checkReturn = "__inner_checkReturn" const __clockid_t_defined = 1 const __int16 = 0 const __int32 = 0 const __int8 = 0 const __mb_cur_max = 0 const __mingw_bos_ovr = "__mingw_ovr" const __mingw_choose_expr = 0 const __setusermatherr = 0 type __tagINTERNETFEATURELIST = int32 type __tagOIBDG_FLAGS = int32 type __tagPARSEACTION = int32 type __tagPI_FLAGS = int32 type __tagPSUACTION = int32 type __tagQUERYOPTION = int32 const __wargv = 0 var _aAgg = [1]struct { FxStep uintptr FxFinal uintptr FzName uintptr }{ 0: { FzName: __ccgo_ts + 31439, }, } var _aAlterTableFuncs = [9]TFuncDef{ 0: { FnArg: int16(9), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 13868, }, 1: { FnArg: int16(7), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 13889, }, 2: { FnArg: int16(7), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 13909, }, 3: { FnArg: int16(3), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 13928, }, 4: { FnArg: int16(2), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 13947, }, 5: { FnArg: int16(2), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 13970, }, 6: { FnArg: int16(2), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 13993, }, 7: { FnArg: int16(3), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 14005, }, 8: { FnArg: int16(2), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FzName: __ccgo_ts + 14027, }, } var _aCacheMode = [3]struct { Fz uintptr Fmode int32 }{ 0: { Fz: __ccgo_ts + 27402, Fmode: int32(SQLITE_OPEN_SHAREDCACHE), }, 1: { Fz: __ccgo_ts + 27409, Fmode: int32(SQLITE_OPEN_PRIVATECACHE), }, 2: {}, } var _aDateTimeFuncs = [10]TFuncDef{ 0: { FnArg: int16(-int32(1)), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FpUserData: uintptr(unsafe.Pointer(&_sqlite3Config)), FzName: __ccgo_ts + 1298, }, 1: { FnArg: int16(-int32(1)), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FpUserData: uintptr(unsafe.Pointer(&_sqlite3Config)), FzName: __ccgo_ts + 1318, }, 2: { FnArg: int16(-int32(1)), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FpUserData: uintptr(unsafe.Pointer(&_sqlite3Config)), FzName: __ccgo_ts + 1526, }, 3: { FnArg: int16(-int32(1)), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FpUserData: uintptr(unsafe.Pointer(&_sqlite3Config)), FzName: __ccgo_ts + 1531, }, 4: { FnArg: int16(-int32(1)), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FpUserData: uintptr(unsafe.Pointer(&_sqlite3Config)), FzName: __ccgo_ts + 1536, }, 5: { FnArg: int16(-int32(1)), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FpUserData: uintptr(unsafe.Pointer(&_sqlite3Config)), FzName: __ccgo_ts + 1545, }, 6: { FnArg: int16(2), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_CONSTANT)), FpUserData: uintptr(unsafe.Pointer(&_sqlite3Config)), FzName: __ccgo_ts + 1554, }, 7: { FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8)), FzName: __ccgo_ts + 1563, }, 8: { FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8)), FzName: __ccgo_ts + 1576, }, 9: { FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_FUNC_SLOCHNG) | libc.Int32FromInt32(SQLITE_UTF8)), FzName: __ccgo_ts + 1594, }, } /* EVIDENCE-OF: R-14606-31564 Value is a BLOB that is (N-12)/2 bytes in ** length. ** EVIDENCE-OF: R-28401-00140 Value is a string in the text encoding and ** (N-13)/2 bytes in length. */ var _aFlag = [2]Tu16{ 0: uint16(libc.Int32FromInt32(MEM_Blob) | libc.Int32FromInt32(MEM_Ephem)), 1: uint16(libc.Int32FromInt32(MEM_Str) | libc.Int32FromInt32(MEM_Ephem)), } /* If the column value is a string, we need a persistent value, not ** a MEM_Ephem value. This branch is a fast short-cut that is equivalent ** to calling sqlite3VdbeSerialGet() and sqlite3VdbeDeephemeralize(). */ var _aFlag1 = [2]Tu16{ 0: uint16(MEM_Blob), 1: uint16(libc.Int32FromInt32(MEM_Str) | libc.Int32FromInt32(MEM_Term)), } var _aFunc = [12]struct { FxFunc uintptr FnArg int8 FbPure uint8 FzName uintptr }{ 0: { FnArg: int8(1), FbPure: uint8(1), FzName: __ccgo_ts + 31296, }, 1: { FnArg: int8(1), FbPure: uint8(1), FzName: __ccgo_ts + 31309, }, 2: { FnArg: int8(1), FbPure: uint8(1), FzName: __ccgo_ts + 31322, }, 3: { FnArg: int8(-int32(1)), FbPure: uint8(1), FzName: __ccgo_ts + 31335, }, 4: { FnArg: int8(2), FbPure: uint8(1), FzName: __ccgo_ts + 31281, }, 5: { FnArg: int8(3), FbPure: uint8(1), FzName: __ccgo_ts + 31347, }, 6: { FnArg: int8(2), FbPure: uint8(1), FzName: __ccgo_ts + 31265, }, 7: { FnArg: int8(1), FzName: __ccgo_ts + 31370, }, 8: { FnArg: int8(1), FbPure: uint8(1), FzName: __ccgo_ts + 31384, }, 9: { FnArg: int8(7), FbPure: uint8(1), FzName: __ccgo_ts + 31397, }, 10: { FnArg: int8(4), FbPure: uint8(1), FzName: __ccgo_ts + 31411, }, 11: { FnArg: int8(1), FbPure: uint8(1), FzName: __ccgo_ts + 31427, }, } var _aKeyword = [7]struct { Fi Tu8 FnChar Tu8 Fcode Tu8 }{ 0: { FnChar: uint8(7), Fcode: uint8(JT_NATURAL), }, 1: { Fi: uint8(6), FnChar: uint8(4), Fcode: uint8(libc.Int32FromInt32(JT_LEFT) | libc.Int32FromInt32(JT_OUTER)), }, 2: { Fi: uint8(10), FnChar: uint8(5), Fcode: uint8(JT_OUTER), }, 3: { Fi: uint8(14), FnChar: uint8(5), Fcode: uint8(libc.Int32FromInt32(JT_RIGHT) | libc.Int32FromInt32(JT_OUTER)), }, 4: { Fi: uint8(19), FnChar: uint8(4), Fcode: uint8(libc.Int32FromInt32(JT_LEFT) | libc.Int32FromInt32(JT_RIGHT) | libc.Int32FromInt32(JT_OUTER)), }, 5: { Fi: uint8(23), FnChar: uint8(5), Fcode: uint8(JT_INNER), }, 6: { Fi: uint8(28), FnChar: uint8(5), Fcode: uint8(libc.Int32FromInt32(JT_INNER) | libc.Int32FromInt32(JT_CROSS)), }, } var _aMsg = [29]uintptr{ 0: __ccgo_ts + 26589, 1: __ccgo_ts + 26602, 3: __ccgo_ts + 26618, 4: __ccgo_ts + 26643, 5: __ccgo_ts + 26657, 6: __ccgo_ts + 26676, 7: __ccgo_ts + 1681, 8: __ccgo_ts + 26701, 9: __ccgo_ts + 26738, 10: __ccgo_ts + 26750, 11: __ccgo_ts + 26765, 12: __ccgo_ts + 26798, 13: __ccgo_ts + 26816, 14: __ccgo_ts + 26841, 15: __ccgo_ts + 26870, 17: __ccgo_ts + 7456, 18: __ccgo_ts + 6807, 19: __ccgo_ts + 26887, 20: __ccgo_ts + 26905, 21: __ccgo_ts + 26923, 23: __ccgo_ts + 26957, 25: __ccgo_ts + 26978, 26: __ccgo_ts + 27004, 27: __ccgo_ts + 27027, 28: __ccgo_ts + 27048, } // C documentation // // /* // ** Extra floating-point literals to allow in JSON. // */ var _aNanInfName = [5]TNanInfName{ 0: { Fc1: int8('i'), Fc2: int8('I'), Fn: int8(3), FeType: int8(JSONB_FLOAT), FnRepl: int8(7), FzMatch: __ccgo_ts + 27714, FzRepl: __ccgo_ts + 27718, }, 1: { Fc1: int8('i'), Fc2: int8('I'), Fn: int8(8), FeType: int8(JSONB_FLOAT), FnRepl: int8(7), FzMatch: __ccgo_ts + 27726, FzRepl: __ccgo_ts + 27718, }, 2: { Fc1: int8('n'), Fc2: int8('N'), Fn: int8(3), FnRepl: int8(4), FzMatch: __ccgo_ts + 1702, FzRepl: __ccgo_ts + 1697, }, 3: { Fc1: int8('q'), Fc2: int8('Q'), Fn: int8(4), FnRepl: int8(4), FzMatch: __ccgo_ts + 27735, FzRepl: __ccgo_ts + 1697, }, 4: { Fc1: int8('s'), Fc2: int8('S'), Fn: int8(4), FnRepl: int8(4), FzMatch: __ccgo_ts + 27740, FzRepl: __ccgo_ts + 1697, }, } var _aOp = [4]struct { FzOp uintptr FeOp uint8 }{ 0: { FzOp: __ccgo_ts + 19035, FeOp: uint8(SQLITE_INDEX_CONSTRAINT_MATCH), }, 1: { FzOp: __ccgo_ts + 18368, FeOp: uint8(SQLITE_INDEX_CONSTRAINT_GLOB), }, 2: { FzOp: __ccgo_ts + 17827, FeOp: uint8(SQLITE_INDEX_CONSTRAINT_LIKE), }, 3: { FzOp: __ccgo_ts + 25168, FeOp: uint8(SQLITE_INDEX_CONSTRAINT_REGEXP), }, } var _aOpenMode = [5]struct { Fz uintptr Fmode int32 }{ 0: { Fz: __ccgo_ts + 27422, Fmode: int32(SQLITE_OPEN_READONLY), }, 1: { Fz: __ccgo_ts + 27425, Fmode: int32(SQLITE_OPEN_READWRITE), }, 2: { Fz: __ccgo_ts + 27428, Fmode: libc.Int32FromInt32(SQLITE_OPEN_READWRITE) | libc.Int32FromInt32(SQLITE_OPEN_CREATE), }, 3: { Fz: __ccgo_ts + 20267, Fmode: int32(SQLITE_OPEN_MEMORY), }, 4: {}, } var _aPragmaName = [67]TPragmaName{ 0: { FzName: __ccgo_ts + 19255, FePragTyp: uint8(PragTyp_ANALYSIS_LIMIT), FmPragFlg: uint8(PragFlg_Result0), }, 1: { FzName: __ccgo_ts + 19270, FePragTyp: uint8(PragTyp_HEADER_VALUE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NoColumns1) | libc.Int32FromInt32(PragFlg_Result0)), FiArg: uint64(BTREE_APPLICATION_ID), }, 2: { FzName: __ccgo_ts + 19285, FePragTyp: uint8(PragTyp_AUTO_VACUUM), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq) | libc.Int32FromInt32(PragFlg_NoColumns1)), }, 3: { FzName: __ccgo_ts + 19297, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_AutoIndex), }, 4: { FzName: __ccgo_ts + 19313, FePragTyp: uint8(PragTyp_BUSY_TIMEOUT), FmPragFlg: uint8(PragFlg_Result0), FiPragCName: uint8(56), FnPragCName: uint8(1), }, 5: { FzName: __ccgo_ts + 19236, FePragTyp: uint8(PragTyp_CACHE_SIZE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq) | libc.Int32FromInt32(PragFlg_NoColumns1)), }, 6: { FzName: __ccgo_ts + 19326, FePragTyp: uint8(PragTyp_CACHE_SPILL), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq) | libc.Int32FromInt32(PragFlg_NoColumns1)), }, 7: { FzName: __ccgo_ts + 19338, FePragTyp: uint8(PragTyp_CASE_SENSITIVE_LIKE), FmPragFlg: uint8(PragFlg_NoColumns), }, 8: { FzName: __ccgo_ts + 19358, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_CellSizeCk), }, 9: { FzName: __ccgo_ts + 19374, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_CkptFullFSync), }, 10: { FzName: __ccgo_ts + 19395, FePragTyp: uint8(PragTyp_COLLATION_LIST), FmPragFlg: uint8(PragFlg_Result0), FiPragCName: uint8(33), FnPragCName: uint8(2), }, 11: { FzName: __ccgo_ts + 19410, FePragTyp: uint8(PragTyp_COMPILE_OPTIONS), FmPragFlg: uint8(PragFlg_Result0), }, 12: { FzName: __ccgo_ts + 19426, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(libc.Int32FromInt32(0x00001)) << libc.Int32FromInt32(32), }, 13: { FzName: __ccgo_ts + 19440, FePragTyp: uint8(PragTyp_DATA_STORE_DIRECTORY), FmPragFlg: uint8(PragFlg_NoColumns1), }, 14: { FzName: __ccgo_ts + 19461, FePragTyp: uint8(PragTyp_HEADER_VALUE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_ReadOnly) | libc.Int32FromInt32(PragFlg_Result0)), FiArg: uint64(BTREE_DATA_VERSION), }, 15: { FzName: __ccgo_ts + 19474, FePragTyp: uint8(PragTyp_DATABASE_LIST), FmPragFlg: uint8(PragFlg_Result0), FiPragCName: uint8(50), FnPragCName: uint8(3), }, 16: { FzName: __ccgo_ts + 19488, FePragTyp: uint8(PragTyp_DEFAULT_CACHE_SIZE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiPragCName: uint8(55), FnPragCName: uint8(1), }, 17: { FzName: __ccgo_ts + 19507, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_DeferFKs), }, 18: { FzName: __ccgo_ts + 19526, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_NullCallback), }, 19: { FzName: __ccgo_ts + 19549, FePragTyp: uint8(PragTyp_ENCODING), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), }, 20: { FzName: __ccgo_ts + 19558, FePragTyp: uint8(PragTyp_FOREIGN_KEY_CHECK), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), FiPragCName: uint8(43), FnPragCName: uint8(4), }, 21: { FzName: __ccgo_ts + 19576, FePragTyp: uint8(PragTyp_FOREIGN_KEY_LIST), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), FnPragCName: uint8(8), }, 22: { FzName: __ccgo_ts + 19593, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_ForeignKeys), }, 23: { FzName: __ccgo_ts + 19606, FePragTyp: uint8(PragTyp_HEADER_VALUE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_ReadOnly) | libc.Int32FromInt32(PragFlg_Result0)), }, 24: { FzName: __ccgo_ts + 19621, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_FullColNames), }, 25: { FzName: __ccgo_ts + 19639, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_FullFSync), }, 26: { FzName: __ccgo_ts + 19649, FePragTyp: uint8(PragTyp_FUNCTION_LIST), FmPragFlg: uint8(PragFlg_Result0), FiPragCName: uint8(15), FnPragCName: uint8(6), }, 27: { FzName: __ccgo_ts + 19663, FePragTyp: uint8(PragTyp_HARD_HEAP_LIMIT), FmPragFlg: uint8(PragFlg_Result0), }, 28: { FzName: __ccgo_ts + 19679, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_IgnoreChecks), }, 29: { FzName: __ccgo_ts + 19704, FePragTyp: uint8(PragTyp_INCREMENTAL_VACUUM), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_NoColumns)), }, 30: { FzName: __ccgo_ts + 19723, FePragTyp: uint8(PragTyp_INDEX_INFO), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), FiPragCName: uint8(27), FnPragCName: uint8(3), }, 31: { FzName: __ccgo_ts + 19734, FePragTyp: uint8(PragTyp_INDEX_LIST), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), FiPragCName: uint8(33), FnPragCName: uint8(5), }, 32: { FzName: __ccgo_ts + 19745, FePragTyp: uint8(PragTyp_INDEX_INFO), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), FiPragCName: uint8(27), FnPragCName: uint8(6), FiArg: uint64(1), }, 33: { FzName: __ccgo_ts + 19757, FePragTyp: uint8(PragTyp_INTEGRITY_CHECK), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), }, 34: { FzName: __ccgo_ts + 19773, FePragTyp: uint8(PragTyp_JOURNAL_MODE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq)), }, 35: { FzName: __ccgo_ts + 19786, FePragTyp: uint8(PragTyp_JOURNAL_SIZE_LIMIT), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq)), }, 36: { FzName: __ccgo_ts + 19805, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_LegacyAlter), }, 37: { FzName: __ccgo_ts + 19824, FePragTyp: uint8(PragTyp_LOCKING_MODE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq)), }, 38: { FzName: __ccgo_ts + 19837, FePragTyp: uint8(PragTyp_PAGE_COUNT), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq)), }, 39: { FzName: __ccgo_ts + 19852, FePragTyp: uint8(PragTyp_MMAP_SIZE), }, 40: { FzName: __ccgo_ts + 19862, FePragTyp: uint8(PragTyp_MODULE_LIST), FmPragFlg: uint8(PragFlg_Result0), FiPragCName: uint8(9), FnPragCName: uint8(1), }, 41: { FzName: __ccgo_ts + 19874, FePragTyp: uint8(PragTyp_OPTIMIZE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_NeedSchema)), }, 42: { FzName: __ccgo_ts + 19883, FePragTyp: uint8(PragTyp_PAGE_COUNT), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq)), }, 43: { FzName: __ccgo_ts + 19894, FePragTyp: uint8(PragTyp_PAGE_SIZE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq) | libc.Int32FromInt32(PragFlg_NoColumns1)), }, 44: { FzName: __ccgo_ts + 19904, FePragTyp: uint8(PragTyp_PRAGMA_LIST), FmPragFlg: uint8(PragFlg_Result0), FiPragCName: uint8(9), FnPragCName: uint8(1), }, 45: { FzName: __ccgo_ts + 19916, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_QueryOnly), }, 46: { FzName: __ccgo_ts + 19927, FePragTyp: uint8(PragTyp_INTEGRITY_CHECK), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), }, 47: { FzName: __ccgo_ts + 19939, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(libc.Int32FromInt32(0x00004)) << libc.Int32FromInt32(32), }, 48: { FzName: __ccgo_ts + 19956, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_RecTriggers), }, 49: { FzName: __ccgo_ts + 19975, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_ReverseOrder), }, 50: { FzName: __ccgo_ts + 20001, FePragTyp: uint8(PragTyp_HEADER_VALUE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NoColumns1) | libc.Int32FromInt32(PragFlg_Result0)), FiArg: uint64(BTREE_SCHEMA_VERSION), }, 51: { FzName: __ccgo_ts + 20016, FePragTyp: uint8(PragTyp_SECURE_DELETE), FmPragFlg: uint8(PragFlg_Result0), }, 52: { FzName: __ccgo_ts + 20030, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_ShortColNames), }, 53: { FzName: __ccgo_ts + 20049, FePragTyp: uint8(PragTyp_SHRINK_MEMORY), FmPragFlg: uint8(PragFlg_NoColumns), }, 54: { FzName: __ccgo_ts + 20063, FePragTyp: uint8(PragTyp_SOFT_HEAP_LIMIT), FmPragFlg: uint8(PragFlg_Result0), }, 55: { FzName: __ccgo_ts + 20079, FePragTyp: uint8(PragTyp_SYNCHRONOUS), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_SchemaReq) | libc.Int32FromInt32(PragFlg_NoColumns1)), }, 56: { FzName: __ccgo_ts + 20091, FePragTyp: uint8(PragTyp_TABLE_INFO), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), FiPragCName: uint8(8), FnPragCName: uint8(6), }, 57: { FzName: __ccgo_ts + 20102, FePragTyp: uint8(PragTyp_TABLE_LIST), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result1)), FiPragCName: uint8(21), FnPragCName: uint8(6), }, 58: { FzName: __ccgo_ts + 20113, FePragTyp: uint8(PragTyp_TABLE_INFO), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NeedSchema) | libc.Int32FromInt32(PragFlg_Result1) | libc.Int32FromInt32(PragFlg_SchemaOpt)), FiPragCName: uint8(8), FnPragCName: uint8(7), FiArg: uint64(1), }, 59: { FzName: __ccgo_ts + 20125, FePragTyp: uint8(PragTyp_TEMP_STORE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), }, 60: { FzName: __ccgo_ts + 20136, FePragTyp: uint8(PragTyp_TEMP_STORE_DIRECTORY), FmPragFlg: uint8(PragFlg_NoColumns1), }, 61: { FzName: __ccgo_ts + 20157, FePragTyp: uint8(PragTyp_THREADS), FmPragFlg: uint8(PragFlg_Result0), }, 62: { FzName: __ccgo_ts + 20165, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(SQLITE_TrustedSchema), }, 63: { FzName: __ccgo_ts + 20180, FePragTyp: uint8(PragTyp_HEADER_VALUE), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_NoColumns1) | libc.Int32FromInt32(PragFlg_Result0)), FiArg: uint64(BTREE_USER_VERSION), }, 64: { FzName: __ccgo_ts + 20193, FePragTyp: uint8(PragTyp_WAL_AUTOCHECKPOINT), }, 65: { FzName: __ccgo_ts + 20212, FePragTyp: uint8(PragTyp_WAL_CHECKPOINT), FmPragFlg: uint8(PragFlg_NeedSchema), FiPragCName: uint8(47), FnPragCName: uint8(3), }, 66: { FzName: __ccgo_ts + 20227, FePragTyp: uint8(PragTyp_FLAG), FmPragFlg: uint8(libc.Int32FromInt32(PragFlg_Result0) | libc.Int32FromInt32(PragFlg_NoColumns1)), FiArg: uint64(libc.Int32FromInt32(SQLITE_WriteSchema) | libc.Int32FromInt32(SQLITE_NoSchemaError)), }, } /* Number of pragmas: 68 on by default, 78 total. */ /************** End of pragma.h **********************************************/ /************** Continuing where we left off in pragma.c *********************/ /* ** When the 0x10 bit of PRAGMA optimize is set, any ANALYZE commands ** will be run with an analysis_limit set to the lessor of the value of ** the following macro or to the actual analysis_limit if it is non-zero, ** in order to prevent PRAGMA optimize from running for too long. ** ** The value of 2000 is chosen empirically so that the worst-case run-time ** for PRAGMA optimize does not exceed 100 milliseconds against a variety ** of test databases on a RaspberryPI-4 compiled using -Os and without ** -DSQLITE_DEBUG. Of course, your mileage may vary. For the purpose of ** this paragraph, "worst-case" means that ANALYZE ends up being ** run on every table in the database. The worst case typically only ** happens if PRAGMA optimize is run on a database file for which ANALYZE ** has not been previously run and the 0x10000 flag is included so that ** all tables are analyzed. The usual case for PRAGMA optimize is that ** no ANALYZE commands will be run at all, or if any ANALYZE happens it ** will be against a single table, so that expected timing for PRAGMA ** optimize on a PI-4 is more like 1 millisecond or less with the 0x10000 ** flag or less than 100 microseconds without the 0x10000 flag. ** ** An analysis limit of 2000 is almost always sufficient for the query ** planner to fully characterize an index. The additional accuracy from ** a larger analysis is not usually helpful. */ // C documentation // // /* // ** Many system calls are accessed through pointer-to-functions so that // ** they may be overridden at runtime to facilitate fault injection during // ** testing and sandboxing. The following array holds the names and pointers // ** to all overrideable system calls. // */ var _aSyscall = [81]Twin_syscall{ 0: { FzName: __ccgo_ts + 3549, }, 1: { FzName: __ccgo_ts + 3565, }, 2: { FzName: __ccgo_ts + 3576, }, 3: { FzName: __ccgo_ts + 3587, }, 4: { FzName: __ccgo_ts + 3599, }, 5: { FzName: __ccgo_ts + 3611, }, 6: { FzName: __ccgo_ts + 3623, }, 7: { FzName: __ccgo_ts + 3642, }, 8: { FzName: __ccgo_ts + 3661, }, 9: { FzName: __ccgo_ts + 3674, }, 10: { FzName: __ccgo_ts + 3686, }, 11: { FzName: __ccgo_ts + 3698, }, 12: { FzName: __ccgo_ts + 3722, }, 13: { FzName: __ccgo_ts + 3743, }, 14: { FzName: __ccgo_ts + 3760, }, 15: { FzName: __ccgo_ts + 3775, }, 16: { FzName: __ccgo_ts + 3790, }, 17: { FzName: __ccgo_ts + 3802, }, 18: { FzName: __ccgo_ts + 3822, }, 19: { FzName: __ccgo_ts + 3840, }, 20: { FzName: __ccgo_ts + 3858, }, 21: { FzName: __ccgo_ts + 3877, }, 22: { FzName: __ccgo_ts + 3896, }, 23: { FzName: __ccgo_ts + 3917, }, 24: { FzName: __ccgo_ts + 3929, }, 25: { FzName: __ccgo_ts + 3946, }, 26: { FzName: __ccgo_ts + 3963, }, 27: { FzName: __ccgo_ts + 3976, }, 28: { FzName: __ccgo_ts + 3992, }, 29: { FzName: __ccgo_ts + 4006, }, 30: { FzName: __ccgo_ts + 4020, }, 31: { FzName: __ccgo_ts + 4044, }, 32: { FzName: __ccgo_ts + 4057, }, 33: { FzName: __ccgo_ts + 4070, }, 34: { FzName: __ccgo_ts + 4083, }, 35: { FzName: __ccgo_ts + 4097, }, 36: { FzName: __ccgo_ts + 4111, }, 37: { FzName: __ccgo_ts + 4121, }, 38: { FzName: __ccgo_ts + 4132, }, 39: { FzName: __ccgo_ts + 4144, }, 40: { FzName: __ccgo_ts + 4153, }, 41: { FzName: __ccgo_ts + 4165, }, 42: { FzName: __ccgo_ts + 4174, }, 43: { FzName: __ccgo_ts + 4187, }, 44: { FzName: __ccgo_ts + 4199, }, 45: { FzName: __ccgo_ts + 4212, }, 46: { FzName: __ccgo_ts + 4225, }, 47: { FzName: __ccgo_ts + 4235, }, 48: { FzName: __ccgo_ts + 4244, }, 49: { FzName: __ccgo_ts + 4255, }, 50: { FzName: __ccgo_ts + 4269, }, 51: { FzName: __ccgo_ts + 4289, }, 52: { FzName: __ccgo_ts + 4313, }, 53: { FzName: __ccgo_ts + 4322, }, 54: { FzName: __ccgo_ts + 4335, }, 55: { FzName: __ccgo_ts + 4350, }, 56: { FzName: __ccgo_ts + 4356, }, 57: { FzName: __ccgo_ts + 4377, }, 58: { FzName: __ccgo_ts + 4388, }, 59: { FzName: __ccgo_ts + 4401, }, 60: { FzName: __ccgo_ts + 4417, }, 61: { FzName: __ccgo_ts + 4437, }, 62: { FzName: __ccgo_ts + 4447, }, 63: { FzName: __ccgo_ts + 4467, }, 64: { FzName: __ccgo_ts + 4489, }, 65: { FzName: __ccgo_ts + 4509, }, 66: { FzName: __ccgo_ts + 4528, }, 67: { FzName: __ccgo_ts + 4547, }, 68: { FzName: __ccgo_ts + 4562, }, 69: { FzName: __ccgo_ts + 4589, }, 70: { FzName: __ccgo_ts + 4600, }, 71: { FzName: __ccgo_ts + 4621, }, 72: { FzName: __ccgo_ts + 4637, }, 73: { FzName: __ccgo_ts + 4649, }, 74: { FzName: __ccgo_ts + 4658, }, 75: { FzName: __ccgo_ts + 4675, }, 76: { FzName: __ccgo_ts + 4682, }, 77: { FzName: __ccgo_ts + 4689, }, 78: { FzName: __ccgo_ts + 4698, }, 79: { FzName: __ccgo_ts + 4704, }, 80: { FzName: __ccgo_ts + 4712, }, } var _aTable = [3]struct { FzName uintptr FzCols uintptr }{ 0: { FzName: __ccgo_ts + 14050, FzCols: __ccgo_ts + 14063, }, 1: { FzName: __ccgo_ts + 14076, FzCols: __ccgo_ts + 14089, }, 2: { FzName: __ccgo_ts + 14117, }, } /* ** Recommended number of samples for sqlite_stat4 */ var _aWindowFuncs = [15]TFuncDef{ 0: { FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_row_numberName)), }, 1: { FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_dense_rankName)), }, 2: { FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_rankName)), }, 3: { FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_percent_rankName)), }, 4: { FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_cume_distName)), }, 5: { FnArg: int16(1), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_ntileName)), }, 6: { FnArg: int16(1), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_last_valueName)), }, 7: { FnArg: int16(2), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_nth_valueName)), }, 8: { FnArg: int16(1), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_first_valueName)), }, 9: { FnArg: int16(1), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_leadName)), }, 10: { FnArg: int16(2), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_leadName)), }, 11: { FnArg: int16(3), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_leadName)), }, 12: { FnArg: int16(1), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_lagName)), }, 13: { FnArg: int16(2), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_lagName)), }, 14: { FnArg: int16(3), FfuncFlags: uint32(libc.Int32FromInt32(SQLITE_FUNC_BUILTIN) | libc.Int32FromInt32(SQLITE_UTF8) | libc.Int32FromInt32(SQLITE_FUNC_WINDOW) | libc.Int32FromInt32(0)), FzName: uintptr(unsafe.Pointer(&_lagName)), }, } // C documentation // // /* // ** Implementation of the abs() function. // ** // ** IMP: R-23979-26855 The abs(X) function returns the absolute value of // ** the numeric argument X. // */ func _absFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var iVal Ti64 var rVal float64 _, _ = iVal, rVal _ = argc switch Xsqlite3_value_type(tls, **(**uintptr)(__ccgo_up(argv))) { case int32(SQLITE_INTEGER): iVal = Xsqlite3_value_int64(tls, **(**uintptr)(__ccgo_up(argv))) if iVal < 0 { if iVal == int64(-libc.Int32FromInt32(1))-(libc.Int64FromUint32(0xffffffff)|libc.Int64FromInt32(0x7fffffff)<zArg[] and appends it to the list of arguments on the // ** virtual table currently under construction in pParse->pTable. // */ func _addArgumentToVtab(tls *libc.TLS, pParse uintptr) { var db, z uintptr var n int32 _, _, _ = db, n, z if (*TParse)(unsafe.Pointer(pParse)).FsArg.Fz != 0 && (*TParse)(unsafe.Pointer(pParse)).FpNewTable != 0 { z = (*TParse)(unsafe.Pointer(pParse)).FsArg.Fz n = int32((*TParse)(unsafe.Pointer(pParse)).FsArg.Fn) db = (*TParse)(unsafe.Pointer(pParse)).Fdb _addModuleArgument(tls, pParse, (*TParse)(unsafe.Pointer(pParse)).FpNewTable, _sqlite3DbStrNDup(tls, db, z, uint64(n))) } } // C documentation // // /* // ** Buffer pCons, which is nCons bytes in size, contains the text of a // ** NOT NULL or CHECK constraint that will be inserted into a CREATE TABLE // ** statement. If successful, this function returns the size of the buffer in // ** bytes not including any trailing whitespace or "--" style comments. Or, // ** if an OOM occurs, it returns 0 and sets db->mallocFailed to true. // ** // ** C-style comments at the end are preserved. "--" style comments are // ** removed because the comment terminator might be \000, and we are about // ** to insert the pCons[] text into the middle of a larger string, and that // ** will have the effect of removing the comment terminator and messing up // ** the syntax. // */ func _alterRtrimConstraint(tls *libc.TLS, db uintptr, pCons uintptr, nCons int32) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var iEnd, iOff, nToken int32 var zTmp uintptr var _ /* t at bp+0 */ int32 _, _, _, _ = iEnd, iOff, nToken, zTmp zTmp = _sqlite3MPrintf(tls, db, __ccgo_ts+13263, libc.VaList(bp+16, nCons, pCons)) iOff = 0 iEnd = 0 if zTmp == uintptr(0) { return 0 } for int32(1) != 0 { **(**int32)(__ccgo_up(bp)) = 0 nToken = int32(_sqlite3GetToken(tls, zTmp+uintptr(iOff), bp)) if **(**int32)(__ccgo_up(bp)) == int32(TK_ILLEGAL) { break } if **(**int32)(__ccgo_up(bp)) != int32(TK_SPACE) && (**(**int32)(__ccgo_up(bp)) != int32(TK_COMMENT) || int32(**(**Tu8)(__ccgo_up(zTmp + uintptr(iOff)))) != int32('-')) { iEnd = iOff + nToken } iOff = iOff + nToken } _sqlite3DbFree(tls, db, zTmp) return iEnd } // C documentation // // /* // ** Return SQLITE_CORRUPT if any cursor other than pCur is currently valid // ** on the same B-tree as pCur. // ** // ** This can occur if a database is corrupt with two or more SQL tables // ** pointing to the same b-tree. If an insert occurs on one SQL table // ** and causes a BEFORE TRIGGER to do a secondary insert on the other SQL // ** table linked to the same b-tree. If the secondary insert causes a // ** rebalance, that can change content out from under the cursor on the // ** first SQL table, violating invariants on the first insert. // */ func _anotherValidCursor(tls *libc.TLS, pCur uintptr) (r int32) { var pOther uintptr _ = pOther pOther = (*TBtShared)(unsafe.Pointer((*TBtCursor)(unsafe.Pointer(pCur)).FpBt)).FpCursor for { if !(pOther != 0) { break } if pOther != pCur && int32((*TBtCursor)(unsafe.Pointer(pOther)).FeState) == CURSOR_VALID && (*TBtCursor)(unsafe.Pointer(pOther)).FpPage == (*TBtCursor)(unsafe.Pointer(pCur)).FpPage { return _sqlite3CorruptError(tls, int32(82340)) } goto _1 _1: ; pOther = (*TBtCursor)(unsafe.Pointer(pOther)).FpNext } return SQLITE_OK } var _attach_func = TFuncDef{ FnArg: int16(3), FfuncFlags: uint32(SQLITE_UTF8), FzName: __ccgo_ts + 14742, } var _az = [3]uintptr{ 0: __ccgo_ts + 17325, 1: __ccgo_ts + 17347, 2: __ccgo_ts + 17331, } var _azAlterType = [4]uintptr{ 0: __ccgo_ts + 21211, 1: __ccgo_ts + 21218, 2: __ccgo_ts + 21230, 3: __ccgo_ts + 21241, } var _azEnc = [4]uintptr{ 1: __ccgo_ts + 20416, 2: __ccgo_ts + 20421, 3: __ccgo_ts + 20429, } /* Shared library endings to try if zFile cannot be loaded as written */ var _azEndings = [1]uintptr{ 0: __ccgo_ts + 18806, } var _azErr = [5]uintptr{ 0: __ccgo_ts + 25854, 1: __ccgo_ts + 25907, 2: __ccgo_ts + 25409, 3: __ccgo_ts + 25958, 4: __ccgo_ts + 26010, } // C documentation // // /* // ** Column names appropriate for EXPLAIN or EXPLAIN QUERY PLAN. // */ var _azExplainColNames8 = [12]uintptr{ 0: __ccgo_ts + 6830, 1: __ccgo_ts + 6835, 2: __ccgo_ts + 6842, 3: __ccgo_ts + 6845, 4: __ccgo_ts + 6848, 5: __ccgo_ts + 6851, 6: __ccgo_ts + 6854, 7: __ccgo_ts + 6857, 8: __ccgo_ts + 6865, 9: __ccgo_ts + 6868, 10: __ccgo_ts + 6875, 11: __ccgo_ts + 6883, } var _azFormat = [2]uintptr{ 0: __ccgo_ts + 30225, 1: __ccgo_ts + 30236, } var _azInsType = [3]uintptr{ 0: __ccgo_ts + 28005, 1: __ccgo_ts + 28012, 2: __ccgo_ts + 28016, } var _azModeName = [6]uintptr{ 0: __ccgo_ts + 20384, 1: __ccgo_ts + 20391, 2: __ccgo_ts + 20399, 3: __ccgo_ts + 20403, 4: __ccgo_ts + 20267, 5: __ccgo_ts + 20412, } var _azModule = [4]uintptr{ 0: __ccgo_ts + 28603, 1: __ccgo_ts + 28613, 2: __ccgo_ts + 28623, 3: __ccgo_ts + 28634, } /* In SQLite core */ /* #include */ /* ** If building separately, we will need some setup that is normally ** found in sqliteInt.h */ /* Macro to check for 4-byte alignment. Only used inside of assert() */ /* #include */ /* #include */ /* #include */ /* #include */ /* The following macro is used to suppress compiler warnings. */ var _azName = [192]uintptr{ 0: __ccgo_ts + 1921, 1: __ccgo_ts + 1931, 2: __ccgo_ts + 1942, 3: __ccgo_ts + 1954, 4: __ccgo_ts + 1965, 5: __ccgo_ts + 1977, 6: __ccgo_ts + 1984, 7: __ccgo_ts + 1992, 8: __ccgo_ts + 2000, 9: __ccgo_ts + 2005, 10: __ccgo_ts + 2010, 11: __ccgo_ts + 2016, 12: __ccgo_ts + 2030, 13: __ccgo_ts + 2036, 14: __ccgo_ts + 2046, 15: __ccgo_ts + 2051, 16: __ccgo_ts + 2056, 17: __ccgo_ts + 2059, 18: __ccgo_ts + 2065, 19: __ccgo_ts + 2072, 20: __ccgo_ts + 2076, 21: __ccgo_ts + 2086, 22: __ccgo_ts + 2093, 23: __ccgo_ts + 2100, 24: __ccgo_ts + 2107, 25: __ccgo_ts + 2114, 26: __ccgo_ts + 2124, 27: __ccgo_ts + 2133, 28: __ccgo_ts + 2144, 29: __ccgo_ts + 2153, 30: __ccgo_ts + 2159, 31: __ccgo_ts + 2169, 32: __ccgo_ts + 2179, 33: __ccgo_ts + 2184, 34: __ccgo_ts + 2198, 35: __ccgo_ts + 2209, 36: __ccgo_ts + 2214, 37: __ccgo_ts + 2221, 38: __ccgo_ts + 2229, 39: __ccgo_ts + 2240, 40: __ccgo_ts + 2245, 41: __ccgo_ts + 2250, 42: __ccgo_ts + 2256, 43: __ccgo_ts + 2262, 44: __ccgo_ts + 2265, 45: __ccgo_ts + 2269, 46: __ccgo_ts + 2275, 47: __ccgo_ts + 2281, 48: __ccgo_ts + 2290, 49: __ccgo_ts + 2301, 50: __ccgo_ts + 2312, 51: __ccgo_ts + 2320, 52: __ccgo_ts + 2327, 53: __ccgo_ts + 2335, 54: __ccgo_ts + 2338, 55: __ccgo_ts + 2341, 56: __ccgo_ts + 2344, 57: __ccgo_ts + 2347, 58: __ccgo_ts + 2350, 59: __ccgo_ts + 2353, 60: __ccgo_ts + 2360, 61: __ccgo_ts + 2369, 62: __ccgo_ts + 2375, 63: __ccgo_ts + 2385, 64: __ccgo_ts + 2398, 65: __ccgo_ts + 2409, 66: __ccgo_ts + 2415, 67: __ccgo_ts + 2422, 68: __ccgo_ts + 2431, 69: __ccgo_ts + 2440, 70: __ccgo_ts + 2447, 71: __ccgo_ts + 2460, 72: __ccgo_ts + 2471, 73: __ccgo_ts + 2476, 74: __ccgo_ts + 2484, 75: __ccgo_ts + 2490, 76: __ccgo_ts + 2497, 77: __ccgo_ts + 2509, 78: __ccgo_ts + 2514, 79: __ccgo_ts + 2523, 80: __ccgo_ts + 2528, 81: __ccgo_ts + 2537, 82: __ccgo_ts + 2542, 83: __ccgo_ts + 2547, 84: __ccgo_ts + 2553, 85: __ccgo_ts + 2561, 86: __ccgo_ts + 2569, 87: __ccgo_ts + 2579, 88: __ccgo_ts + 2587, 89: __ccgo_ts + 2594, 90: __ccgo_ts + 2607, 91: __ccgo_ts + 2612, 92: __ccgo_ts + 2624, 93: __ccgo_ts + 2632, 94: __ccgo_ts + 2639, 95: __ccgo_ts + 2650, 96: __ccgo_ts + 2657, 97: __ccgo_ts + 2664, 98: __ccgo_ts + 2674, 99: __ccgo_ts + 2683, 100: __ccgo_ts + 2694, 101: __ccgo_ts + 2700, 102: __ccgo_ts + 2711, 103: __ccgo_ts + 2721, 104: __ccgo_ts + 2728, 105: __ccgo_ts + 2734, 106: __ccgo_ts + 2744, 107: __ccgo_ts + 2755, 108: __ccgo_ts + 2759, 109: __ccgo_ts + 2768, 110: __ccgo_ts + 2777, 111: __ccgo_ts + 2784, 112: __ccgo_ts + 2794, 113: __ccgo_ts + 2801, 114: __ccgo_ts + 2811, 115: __ccgo_ts + 2820, 116: __ccgo_ts + 2827, 117: __ccgo_ts + 2837, 118: __ccgo_ts + 2845, 119: __ccgo_ts + 2853, 120: __ccgo_ts + 2867, 121: __ccgo_ts + 2881, 122: __ccgo_ts + 2892, 123: __ccgo_ts + 2905, 124: __ccgo_ts + 2916, 125: __ccgo_ts + 2922, 126: __ccgo_ts + 2934, 127: __ccgo_ts + 2943, 128: __ccgo_ts + 2951, 129: __ccgo_ts + 2960, 130: __ccgo_ts + 2969, 131: __ccgo_ts + 2976, 132: __ccgo_ts + 2984, 133: __ccgo_ts + 2991, 134: __ccgo_ts + 3002, 135: __ccgo_ts + 3016, 136: __ccgo_ts + 3027, 137: __ccgo_ts + 3035, 138: __ccgo_ts + 3041, 139: __ccgo_ts + 3049, 140: __ccgo_ts + 3057, 141: __ccgo_ts + 3067, 142: __ccgo_ts + 3080, 143: __ccgo_ts + 3090, 144: __ccgo_ts + 3103, 145: __ccgo_ts + 3112, 146: __ccgo_ts + 3123, 147: __ccgo_ts + 3131, 148: __ccgo_ts + 3137, 149: __ccgo_ts + 3149, 150: __ccgo_ts + 3161, 151: __ccgo_ts + 3169, 152: __ccgo_ts + 3181, 153: __ccgo_ts + 3194, 154: __ccgo_ts + 3204, 155: __ccgo_ts + 3209, 156: __ccgo_ts + 3219, 157: __ccgo_ts + 3231, 158: __ccgo_ts + 3243, 159: __ccgo_ts + 3253, 160: __ccgo_ts + 3259, 161: __ccgo_ts + 3269, 162: __ccgo_ts + 3276, 163: __ccgo_ts + 3288, 164: __ccgo_ts + 3299, 165: __ccgo_ts + 3307, 166: __ccgo_ts + 3316, 167: __ccgo_ts + 3325, 168: __ccgo_ts + 3334, 169: __ccgo_ts + 3341, 170: __ccgo_ts + 3352, 171: __ccgo_ts + 3365, 172: __ccgo_ts + 3375, 173: __ccgo_ts + 3382, 174: __ccgo_ts + 3390, 175: __ccgo_ts + 3399, 176: __ccgo_ts + 3405, 177: __ccgo_ts + 3412, 178: __ccgo_ts + 3420, 179: __ccgo_ts + 3428, 180: __ccgo_ts + 3436, 181: __ccgo_ts + 3446, 182: __ccgo_ts + 3455, 183: __ccgo_ts + 3466, 184: __ccgo_ts + 3477, 185: __ccgo_ts + 3488, 186: __ccgo_ts + 3498, 187: __ccgo_ts + 3504, 188: __ccgo_ts + 3515, 189: __ccgo_ts + 3526, 190: __ccgo_ts + 3531, 191: __ccgo_ts + 3539, } /************** End of opcodes.c *********************************************/ /************** Begin file os_kv.c *******************************************/ /* ** 2022-09-06 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ****************************************************************************** ** ** This file contains an experimental VFS layer that operates on a ** Key/Value storage engine where both keys and values must be pure ** text. */ /* #include */ /************** End of os_kv.c ***********************************************/ /************** Begin file os_unix.c *****************************************/ /* ** 2004 May 22 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ****************************************************************************** ** ** This file contains the VFS implementation for unix-like operating systems ** include Linux, MacOSX, *BSD, QNX, VxWorks, AIX, HPUX, and others. ** ** There are actually several different VFS implementations in this file. ** The differences are in the way that file locking is done. The default ** implementation uses Posix Advisory Locks. Alternative implementations ** use flock(), dot-files, various proprietary locking schemas, or simply ** skip locking all together. ** ** This source file is organized into divisions where the logic for various ** subfunctions is contained within the appropriate division. PLEASE ** KEEP THE STRUCTURE OF THIS FILE INTACT. New code should be placed ** in the correct division and should be clearly labelled. ** ** The layout of divisions is as follows: ** ** * General-purpose declarations and utility functions. ** * Unique file ID logic used by VxWorks. ** * Various locking primitive implementations (all except proxy locking): ** + for Posix Advisory Locks ** + for no-op locks ** + for dot-file locks ** + for flock() locking ** + for named semaphore locks (VxWorks only) ** + for AFP filesystem locks (MacOSX only) ** * sqlite3_file methods not associated with locking. ** * Definitions of sqlite3_io_methods objects for all locking ** methods plus "finder" functions for each locking method. ** * sqlite3_vfs method implementations. ** * Locking primitives for the proxy uber-locking-method. (MacOSX only) ** * Definitions of sqlite3_vfs objects for all locking methods ** plus implementations of sqlite3_os_init() and sqlite3_os_end(). */ /* #include "sqliteInt.h" */ /************** End of os_unix.c *********************************************/ /************** Begin file os_win.c ******************************************/ /* ** 2004 May 22 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ****************************************************************************** ** ** This file contains code that is specific to Windows. */ /* #include "sqliteInt.h" */ /* ** Include code that is common to all os_*.c files */ /* #include "os_common.h" */ /* ** Include the header file for the Windows VFS. */ /* #include "os_win.h" */ /* ** Compiling and using WAL mode requires several APIs that are only ** available in Windows platforms based on the NT kernel. */ /* ** Are most of the Win32 ANSI APIs available (i.e. with certain exceptions ** based on the sub-platform)? */ /* ** Are most of the Win32 Unicode APIs available (i.e. with certain exceptions ** based on the sub-platform)? */ /* ** Make sure at least one set of Win32 APIs is available. */ /* ** Define the required Windows SDK version constants if they are not ** already available. */ /* ** Check to see if the GetVersionEx[AW] functions are deprecated on the ** target system. GetVersionEx was first deprecated in Win8.1. */ /* ** Check to see if the CreateFileMappingA function is supported on the ** target system. It is unavailable when using "mincore.lib" on Win10. ** When compiling for Windows 10, always assume "mincore.lib" is in use. */ /* ** This constant should already be defined (in the "WinDef.h" SDK file). */ /* ** Maximum pathname length (in chars) for Win32. This should normally be ** MAX_PATH. */ /* ** This constant should already be defined (in the "WinNT.h" SDK file). */ /* ** Maximum pathname length (in chars) for WinNT. This should normally be ** UNICODE_STRING_MAX_CHARS. */ /* ** Maximum pathname length (in bytes) for Win32. The MAX_PATH macro is in ** characters, so we allocate 4 bytes per character assuming worst-case of ** 4-bytes-per-character for UTF8. */ /* ** Maximum pathname length (in bytes) for WinNT. This should normally be ** UNICODE_STRING_MAX_CHARS * sizeof(WCHAR). */ /* ** Maximum error message length (in chars) for WinRT. */ /* ** Returns non-zero if the character should be treated as a directory ** separator. */ /* ** This macro is used when a local variable is set to a value that is ** [sometimes] not used by the code (e.g. via conditional compilation). */ /* ** Returns the character that should be used as the directory separator. */ /* ** Do we need to manually define the Win32 file mapping APIs for use with WAL ** mode or memory mapped files (e.g. these APIs are available in the Windows ** CE SDK; however, they are not present in the header file)? */ /* ** Some Microsoft compilers lack this definition. */ var _azName1 = [3]uintptr{ 0: __ccgo_ts + 29036, 1: __ccgo_ts + 6868, 2: __ccgo_ts + 19186, } var _azName2 = [5]uintptr{ 0: __ccgo_ts + 41837, 1: __ccgo_ts + 38828, 2: __ccgo_ts + 28645, 3: __ccgo_ts + 39523, 4: __ccgo_ts + 14261, } var _azOne = [1]uintptr{ 0: __ccgo_ts + 12758, } var _azSql = [8]uintptr{ 0: __ccgo_ts + 29041, 1: __ccgo_ts + 29094, 2: __ccgo_ts + 29139, 3: __ccgo_ts + 29191, 4: __ccgo_ts + 29245, 5: __ccgo_ts + 29290, 6: __ccgo_ts + 29348, 7: __ccgo_ts + 29403, } var _azType = [4]uintptr{ 0: __ccgo_ts + 7039, 1: __ccgo_ts + 7048, 2: __ccgo_ts + 7055, 3: __ccgo_ts + 7061, } var _azType1 = [6]uintptr{ 0: __ccgo_ts + 1711, 1: __ccgo_ts + 15591, 2: __ccgo_ts + 15597, 3: __ccgo_ts + 15602, 4: __ccgo_ts + 15607, 5: __ccgo_ts + 15597, } var _azType2 = [5]uintptr{ 0: __ccgo_ts + 7709, 1: __ccgo_ts + 7704, 2: __ccgo_ts + 9704, 3: __ccgo_ts + 9699, 4: __ccgo_ts + 1697, } var _azTypes = [5]uintptr{ 0: __ccgo_ts + 1181, 1: __ccgo_ts + 1193, 2: __ccgo_ts + 1198, 3: __ccgo_ts + 1176, 4: __ccgo_ts + 1712, } type _beginthread_proc_type = T_beginthread_proc_type type _beginthreadex_proc_type = T_beginthreadex_proc_type // C documentation // // /* // ** Return the P5 value that should be used for a binary comparison // ** opcode (OP_Eq, OP_Ge etc.) used to compare pExpr1 and pExpr2. // */ func _binaryCompareP5(tls *libc.TLS, pExpr1 uintptr, pExpr2 uintptr, jumpIfNull int32) (r Tu8) { var aff Tu8 _ = aff aff = uint8(_sqlite3ExprAffinity(tls, pExpr2)) aff = uint8(int32(uint8(_sqlite3CompareAffinity(tls, pExpr1, int8(aff)))) | int32(uint8(jumpIfNull))) return aff } // C documentation // // /* // ** Perform a read or write operation on a blob // */ func _blobReadWrite(tls *libc.TLS, pBlob uintptr, z uintptr, n int32, iOffset int32, __ccgo_fp_xCall uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var db, p, v uintptr var iKey Tsqlite3_int64 var rc int32 var _ /* bDiff at bp+0 */ int32 _, _, _, _, _ = db, iKey, p, rc, v rc = SQLITE_OK p = pBlob if p == uintptr(0) { return _sqlite3MisuseError(tls, int32(106385)) } db = (*TIncrblob)(unsafe.Pointer(p)).Fdb Xsqlite3_mutex_enter(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) v = (*TIncrblob)(unsafe.Pointer(p)).FpStmt if n < 0 || iOffset < 0 || int64(iOffset)+int64(n) > int64((*TIncrblob)(unsafe.Pointer(p)).FnByte) { /* Request is out of range. Return a transient error. */ rc = int32(SQLITE_ERROR) } else { if v == uintptr(0) { /* If there is no statement handle, then the blob-handle has ** already been invalidated. Return SQLITE_ABORT in this case. */ rc = int32(SQLITE_ABORT) } else { /* Call either BtreeData() or BtreePutData(). If SQLITE_ABORT is ** returned, clean-up the statement handle. */ _sqlite3BtreeEnterCursor(tls, (*TIncrblob)(unsafe.Pointer(p)).FpCsr) if __ccgo_fp_xCall == __ccgo_fp(_sqlite3BtreePutData) && (*Tsqlite3)(unsafe.Pointer(db)).FxPreUpdateCallback != 0 { /* If a pre-update hook is registered and this is a write cursor, ** invoke it here. ** ** TODO: The preupdate-hook is passed SQLITE_DELETE, even though this ** operation should really be an SQLITE_UPDATE. This is probably ** incorrect, but is convenient because at this point the new.* values ** are not easily obtainable. And for the sessions module, an ** SQLITE_UPDATE where the PK columns do not change is handled in the ** same way as an SQLITE_DELETE (the SQLITE_DELETE code is actually ** slightly more efficient). Since you cannot write to a PK column ** using the incremental-blob API, this works. For the sessions module ** anyhow. */ if _sqlite3BtreeCursorIsValidNN(tls, (*TIncrblob)(unsafe.Pointer(p)).FpCsr) == 0 { /* If the cursor is not currently valid, try to reseek it. This ** always either fails or finds the correct row - the cursor will ** have been marked permanently CURSOR_INVALID if the open row has ** been deleted. */ **(**int32)(__ccgo_up(bp)) = 0 rc = _sqlite3BtreeCursorRestore(tls, (*TIncrblob)(unsafe.Pointer(p)).FpCsr, bp) } if _sqlite3BtreeCursorIsValidNN(tls, (*TIncrblob)(unsafe.Pointer(p)).FpCsr) != 0 { iKey = _sqlite3BtreeIntegerKey(tls, (*TIncrblob)(unsafe.Pointer(p)).FpCsr) _sqlite3VdbePreUpdateHook(tls, v, **(**uintptr)(__ccgo_up((*TVdbe)(unsafe.Pointer(v)).FapCsr)), int32(SQLITE_DELETE), (*TIncrblob)(unsafe.Pointer(p)).FzDb, (*TIncrblob)(unsafe.Pointer(p)).FpTab, iKey, -int32(1), int32((*TIncrblob)(unsafe.Pointer(p)).FiCol)) } } if rc == SQLITE_OK { rc = (*(*func(*libc.TLS, uintptr, Tu32, Tu32, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{__ccgo_fp_xCall})))(tls, (*TIncrblob)(unsafe.Pointer(p)).FpCsr, uint32(iOffset+(*TIncrblob)(unsafe.Pointer(p)).FiOffset), uint32(n), z) } _sqlite3BtreeLeaveCursor(tls, (*TIncrblob)(unsafe.Pointer(p)).FpCsr) if rc == int32(SQLITE_ABORT) { _sqlite3VdbeFinalize(tls, v) (*TIncrblob)(unsafe.Pointer(p)).FpStmt = uintptr(0) } else { (*TVdbe)(unsafe.Pointer(v)).Frc = rc } } } _sqlite3Error(tls, db, rc) rc = _sqlite3ApiExit(tls, db, rc) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return rc } // C documentation // // /* This is a helper function to impliesNotNullRow(). In this routine, // ** set pWalker->eCode to one only if *both* of the input expressions // ** separately have the implies-not-null-row property. // */ func _bothImplyNotNullRow(tls *libc.TLS, pWalker uintptr, pE1 uintptr, pE2 uintptr) { if int32((*TWalker)(unsafe.Pointer(pWalker)).FeCode) == 0 { _sqlite3WalkExpr(tls, pWalker, pE1) if (*TWalker)(unsafe.Pointer(pWalker)).FeCode != 0 { (*TWalker)(unsafe.Pointer(pWalker)).FeCode = uint16(0) _sqlite3WalkExpr(tls, pWalker, pE2) } } } // C documentation // // /* // ** Do additional sanity check after btreeInitPage() if // ** PRAGMA cell_size_check=ON // */ func _btreeCellSizeCheck(tls *libc.TLS, pPage uintptr) (r int32) { var cellOffset, i, iCellFirst, iCellLast, pc, sz, usableSize int32 var data uintptr _, _, _, _, _, _, _, _ = cellOffset, data, i, iCellFirst, iCellLast, pc, sz, usableSize /* Start of cell content area */ iCellFirst = int32((*TMemPage)(unsafe.Pointer(pPage)).FcellOffset) + int32(2)*int32((*TMemPage)(unsafe.Pointer(pPage)).FnCell) usableSize = int32((*TBtShared)(unsafe.Pointer((*TMemPage)(unsafe.Pointer(pPage)).FpBt)).FusableSize) iCellLast = usableSize - int32(4) data = (*TMemPage)(unsafe.Pointer(pPage)).FaData cellOffset = int32((*TMemPage)(unsafe.Pointer(pPage)).FcellOffset) if !((*TMemPage)(unsafe.Pointer(pPage)).Fleaf != 0) { iCellLast = iCellLast - 1 } i = 0 for { if !(i < int32((*TMemPage)(unsafe.Pointer(pPage)).FnCell)) { break } pc = int32(**(**Tu8)(__ccgo_up(data + uintptr(cellOffset+i*int32(2)))))< iCellLast { return _sqlite3CorruptError(tls, int32(75424)) } sz = int32((*(*func(*libc.TLS, uintptr, uintptr) Tu16)(unsafe.Pointer(&struct{ uintptr }{(*TMemPage)(unsafe.Pointer(pPage)).FxCellSize})))(tls, pPage, data+uintptr(pc))) if pc+sz > usableSize { return _sqlite3CorruptError(tls, int32(75429)) } goto _1 _1: ; i = i + 1 } return SQLITE_OK } // C documentation // // /* // ** Compute the amount of freespace on the page. In other words, fill // ** in the pPage->nFree field. // */ func _btreeComputeFreeSpace(tls *libc.TLS, pPage uintptr) (r int32) { var data uintptr var hdr Tu8 var iCellFirst, iCellLast, nFree, pc, top, usableSize int32 var next, size Tu32 _, _, _, _, _, _, _, _, _, _ = data, hdr, iCellFirst, iCellLast, nFree, next, pc, size, top, usableSize /* Last possible cell or freeblock offset */ usableSize = int32((*TBtShared)(unsafe.Pointer((*TMemPage)(unsafe.Pointer(pPage)).FpBt)).FusableSize) hdr = (*TMemPage)(unsafe.Pointer(pPage)).FhdrOffset data = (*TMemPage)(unsafe.Pointer(pPage)).FaData /* EVIDENCE-OF: R-58015-48175 The two-byte integer at offset 5 designates ** the start of the cell content area. A zero value for this integer is ** interpreted as 65536. */ top = (int32(**(**Tu8)(__ccgo_up(data + uintptr(int32(hdr)+int32(5)))))< 0 { if pc < top { /* EVIDENCE-OF: R-55530-52930 In a well-formed b-tree page, there will ** always be at least one cell before the first freeblock. */ return _sqlite3CorruptError(tls, int32(75358)) } for int32(1) != 0 { if pc > iCellLast { /* Freeblock off the end of the page */ return _sqlite3CorruptError(tls, int32(75363)) } next = uint32(int32(**(**Tu8)(__ccgo_up(data + uintptr(pc))))< uint32(0) { /* Freeblock not in ascending order */ return _sqlite3CorruptError(tls, int32(75377)) } if uint32(pc)+size > uint32(usableSize) { /* Last freeblock extends past page end */ return _sqlite3CorruptError(tls, int32(75381)) } } /* At this point, nFree contains the sum of the offset to the start ** of the cell-content area plus the number of free bytes within ** the cell-content area. If this is greater than the usable-size ** of the page, then the page must be corrupted. This check also ** serves to verify that the offset to the start of the cell-content ** area, according to the page header, lies within the page. */ if nFree > usableSize || nFree < iCellFirst { return _sqlite3CorruptError(tls, int32(75393)) } (*TMemPage)(unsafe.Pointer(pPage)).FnFree = int32(uint16(nFree - iCellFirst)) return SQLITE_OK } // C documentation // // /* // ** This function is called from both BtreeCommitPhaseTwo() and BtreeRollback() // ** at the conclusion of a transaction. // */ func _btreeEndTransaction(tls *libc.TLS, p uintptr) { var db, pBt uintptr _, _ = db, pBt pBt = (*TBtree)(unsafe.Pointer(p)).FpBt db = (*TBtree)(unsafe.Pointer(p)).Fdb (*TBtShared)(unsafe.Pointer(pBt)).FbDoTruncate = uint8(0) if int32((*TBtree)(unsafe.Pointer(p)).FinTrans) > TRANS_NONE && (*Tsqlite3)(unsafe.Pointer(db)).FnVdbeRead > int32(1) { /* If there are other active statements that belong to this database ** handle, downgrade to a read-only transaction. The other statements ** may still be reading from the database. */ _downgradeAllSharedCacheTableLocks(tls, p) (*TBtree)(unsafe.Pointer(p)).FinTrans = uint8(TRANS_READ) } else { /* If the handle had any kind of transaction open, decrement the ** transaction count of the shared btree. If the transaction count ** reaches 0, set the shared state to TRANS_NONE. The unlockBtreeIfUnused() ** call below will unlock the pager. */ if int32((*TBtree)(unsafe.Pointer(p)).FinTrans) != TRANS_NONE { _clearAllSharedCacheTableLocks(tls, p) (*TBtShared)(unsafe.Pointer(pBt)).FnTransaction = (*TBtShared)(unsafe.Pointer(pBt)).FnTransaction - 1 if 0 == (*TBtShared)(unsafe.Pointer(pBt)).FnTransaction { (*TBtShared)(unsafe.Pointer(pBt)).FinTransaction = uint8(TRANS_NONE) } } /* Set the current transaction state to TRANS_NONE and unlock the ** pager if this call closed the only read or write transaction. */ (*TBtree)(unsafe.Pointer(p)).FinTrans = uint8(TRANS_NONE) _unlockBtreeIfUnused(tls, pBt) } } // C documentation // // /* // ** Initialize the auxiliary information for a disk block. // ** // ** Return SQLITE_OK on success. If we see that the page does // ** not contain a well-formed database page, then return // ** SQLITE_CORRUPT. Note that a return of SQLITE_OK does not // ** guarantee that the page is well-formed. It only shows that // ** we failed to detect any corruption. // */ func _btreeInitPage(tls *libc.TLS, pPage uintptr) (r int32) { var data, pBt uintptr _, _ = data, pBt /* The main btree structure */ pBt = (*TMemPage)(unsafe.Pointer(pPage)).FpBt data = (*TMemPage)(unsafe.Pointer(pPage)).FaData + uintptr((*TMemPage)(unsafe.Pointer(pPage)).FhdrOffset) /* EVIDENCE-OF: R-28594-02890 The one-byte flag at offset 0 indicating ** the b-tree page type. */ if _decodeFlags(tls, pPage, int32(**(**Tu8)(__ccgo_up(data)))) != 0 { return _sqlite3CorruptError(tls, int32(75461)) } (*TMemPage)(unsafe.Pointer(pPage)).FmaskPage = uint16((*TBtShared)(unsafe.Pointer(pBt)).FpageSize - libc.Uint32FromInt32(1)) (*TMemPage)(unsafe.Pointer(pPage)).FnOverflow = uint8(0) (*TMemPage)(unsafe.Pointer(pPage)).FcellOffset = uint16(int32((*TMemPage)(unsafe.Pointer(pPage)).FhdrOffset) + libc.Int32FromInt32(8) + int32((*TMemPage)(unsafe.Pointer(pPage)).FchildPtrSize)) (*TMemPage)(unsafe.Pointer(pPage)).FaCellIdx = data + uintptr((*TMemPage)(unsafe.Pointer(pPage)).FchildPtrSize) + uintptr(8) (*TMemPage)(unsafe.Pointer(pPage)).FaDataEnd = (*TMemPage)(unsafe.Pointer(pPage)).FaData + uintptr((*TBtShared)(unsafe.Pointer(pBt)).FpageSize) (*TMemPage)(unsafe.Pointer(pPage)).FaDataOfst = (*TMemPage)(unsafe.Pointer(pPage)).FaData + uintptr((*TMemPage)(unsafe.Pointer(pPage)).FchildPtrSize) /* EVIDENCE-OF: R-37002-32774 The two-byte integer at offset 3 gives the ** number of cells on the page. */ (*TMemPage)(unsafe.Pointer(pPage)).FnCell = uint16(int32(**(**Tu8)(__ccgo_up(data + 3)))< ((*TBtShared)(unsafe.Pointer(pBt)).FpageSize-uint32(8))/uint32(6) { /* To many cells for a single page. The page must be corrupt */ return _sqlite3CorruptError(tls, int32(75475)) } /* EVIDENCE-OF: R-24089-57979 If a page contains no cells (which is only ** possible for a root page of a table that contains no rows) then the ** offset to the cell content area will equal the page size minus the ** bytes of reserved space. */ (*TMemPage)(unsafe.Pointer(pPage)).FnFree = -int32(1) /* Indicate that this value is yet uncomputed */ (*TMemPage)(unsafe.Pointer(pPage)).FisInit = uint8(1) if (*Tsqlite3)(unsafe.Pointer((*TBtShared)(unsafe.Pointer(pBt)).Fdb)).Fflags&uint64(SQLITE_CellSizeCk) != 0 { return _btreeCellSizeCheck(tls, pPage) } return SQLITE_OK } // C documentation // // /* // ** In this version of BtreeMoveto, pKey is a packed index record // ** such as is generated by the OP_MakeRecord opcode. Unpack the // ** record and then call sqlite3BtreeIndexMoveto() to do the work. // */ func _btreeMoveto(tls *libc.TLS, pCur uintptr, pKey uintptr, nKey Ti64, bias int32, pRes uintptr) (r int32) { var pIdxKey, pKeyInfo uintptr var rc int32 _, _, _ = pIdxKey, pKeyInfo, rc /* Unpacked index key */ if pKey != 0 { pKeyInfo = (*TBtCursor)(unsafe.Pointer(pCur)).FpKeyInfo pIdxKey = _sqlite3VdbeAllocUnpackedRecord(tls, pKeyInfo) if pIdxKey == uintptr(0) { return int32(SQLITE_NOMEM) } _sqlite3VdbeRecordUnpack(tls, int32(nKey), pKey, pIdxKey) if int32((*TUnpackedRecord)(unsafe.Pointer(pIdxKey)).FnField) == 0 || int32((*TUnpackedRecord)(unsafe.Pointer(pIdxKey)).FnField) > int32((*TKeyInfo)(unsafe.Pointer(pKeyInfo)).FnAllField) { rc = _sqlite3CorruptError(tls, int32(74103)) } else { rc = _sqlite3BtreeIndexMoveto(tls, pCur, pIdxKey, pRes) } _sqlite3DbFree(tls, (*TKeyInfo)(unsafe.Pointer((*TBtCursor)(unsafe.Pointer(pCur)).FpKeyInfo)).Fdb, pIdxKey) } else { pIdxKey = uintptr(0) rc = _sqlite3BtreeTableMoveto(tls, pCur, nKey, bias, pRes) } return rc } // C documentation // // /* // ** Overwrite the cell that cursor pCur is pointing to with fresh content // ** contained in pX. // */ func _btreeOverwriteCell(tls *libc.TLS, pCur uintptr, pX uintptr) (r int32) { var nTotal int32 var pPage uintptr _, _ = nTotal, pPage nTotal = (*TBtreePayload)(unsafe.Pointer(pX)).FnData + (*TBtreePayload)(unsafe.Pointer(pX)).FnZero /* Total bytes of to write */ pPage = (*TBtCursor)(unsafe.Pointer(pCur)).FpPage /* Page being written */ if (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FpPayload+uintptr((*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnLocal) > (*TMemPage)(unsafe.Pointer(pPage)).FaDataEnd || (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FpPayload < (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr((*TMemPage)(unsafe.Pointer(pPage)).FcellOffset) { return _sqlite3CorruptError(tls, int32(82592)) } if int32((*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnLocal) == nTotal { /* The entire cell is local */ return _btreeOverwriteContent(tls, pPage, (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FpPayload, pX, 0, int32((*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnLocal)) } else { /* The cell contains overflow content */ return _btreeOverwriteOverflowCell(tls, pCur, pX) } return r } // C documentation // // /* // ** Overwrite the cell that cursor pCur is pointing to with fresh content // ** contained in pX. In this variant, pCur is pointing to an overflow // ** cell. // */ func _btreeOverwriteOverflowCell(tls *libc.TLS, pCur uintptr, pX uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var iOffset, nTotal, rc int32 var ovflPageSize Tu32 var ovflPgno TPgno var pBt uintptr var _ /* pPage at bp+0 */ uintptr _, _, _, _, _, _ = iOffset, nTotal, ovflPageSize, ovflPgno, pBt, rc /* Next byte of pX->pData to write */ nTotal = (*TBtreePayload)(unsafe.Pointer(pX)).FnData + (*TBtreePayload)(unsafe.Pointer(pX)).FnZero /* Return code */ **(**uintptr)(__ccgo_up(bp)) = (*TBtCursor)(unsafe.Pointer(pCur)).FpPage /* Size to write on overflow page */ /* pCur is an overflow cell */ /* Overwrite the local portion first */ rc = _btreeOverwriteContent(tls, **(**uintptr)(__ccgo_up(bp)), (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FpPayload, pX, 0, int32((*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnLocal)) if rc != 0 { return rc } /* Now overwrite the overflow pages */ iOffset = int32((*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnLocal) ovflPgno = _sqlite3Get4byte(tls, (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FpPayload+uintptr(iOffset)) pBt = (*TMemPage)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FpBt ovflPageSize = (*TBtShared)(unsafe.Pointer(pBt)).FusableSize - uint32(4) for cond := true; cond; cond = iOffset < nTotal { rc = _btreeGetPage(tls, pBt, ovflPgno, bp, 0) if rc != 0 { return rc } if _sqlite3PagerPageRefcount(tls, (*TMemPage)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FpDbPage) != int32(1) || (*TMemPage)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FisInit != 0 { rc = _sqlite3CorruptError(tls, int32(82564)) } else { if uint32(iOffset)+ovflPageSize < uint32(nTotal) { ovflPgno = _sqlite3Get4byte(tls, (*TMemPage)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FaData) } else { ovflPageSize = uint32(nTotal - iOffset) } rc = _btreeOverwriteContent(tls, **(**uintptr)(__ccgo_up(bp)), (*TMemPage)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FaData+uintptr(4), pX, iOffset, int32(ovflPageSize)) } _sqlite3PagerUnref(tls, (*TMemPage)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FpDbPage) if rc != 0 { return rc } iOffset = int32(uint32(iOffset) + ovflPageSize) } return SQLITE_OK } // C documentation // // /* // ** Convert a DbPage obtained from the pager into a MemPage used by // ** the btree layer. // */ func _btreePageFromDbPage(tls *libc.TLS, pDbPage uintptr, pgno TPgno, pBt uintptr) (r uintptr) { var pPage uintptr var v1 int32 _, _ = pPage, v1 pPage = _sqlite3PagerGetExtra(tls, pDbPage) if pgno != (*TMemPage)(unsafe.Pointer(pPage)).Fpgno { (*TMemPage)(unsafe.Pointer(pPage)).FaData = _sqlite3PagerGetData(tls, pDbPage) (*TMemPage)(unsafe.Pointer(pPage)).FpDbPage = pDbPage (*TMemPage)(unsafe.Pointer(pPage)).FpBt = pBt (*TMemPage)(unsafe.Pointer(pPage)).Fpgno = pgno if pgno == uint32(1) { v1 = int32(100) } else { v1 = 0 } (*TMemPage)(unsafe.Pointer(pPage)).FhdrOffset = uint8(v1) } return pPage } func _btreeParseCell(tls *libc.TLS, pPage uintptr, iCell int32, pInfo uintptr) { (*(*func(*libc.TLS, uintptr, uintptr, uintptr))(unsafe.Pointer(&struct{ uintptr }{(*TMemPage)(unsafe.Pointer(pPage)).FxParseCell})))(tls, pPage, (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FmaskPage)&(int32(**(**Tu8)(__ccgo_up((*TMemPage)(unsafe.Pointer(pPage)).FaCellIdx + uintptr(int32(2)*iCell))))< table btree leaf nodes // ** btreeParseCellNoPayload() => table btree internal nodes // ** btreeParseCellPtrIndex() => index btree nodes // ** // ** There is also a wrapper function btreeParseCell() that works for // ** all MemPage types and that references the cell by index rather than // ** by pointer. // */ func _btreeParseCellPtrNoPayload(tls *libc.TLS, pPage uintptr, pCell uintptr, pInfo uintptr) { _ = pPage (*TCellInfo)(unsafe.Pointer(pInfo)).FnSize = uint16(int32(4) + int32(_sqlite3GetVarint(tls, pCell+4, pInfo))) (*TCellInfo)(unsafe.Pointer(pInfo)).FnPayload = uint32(0) (*TCellInfo)(unsafe.Pointer(pInfo)).FnLocal = uint16(0) (*TCellInfo)(unsafe.Pointer(pInfo)).FpPayload = uintptr(0) return } // C documentation // // /* // ** Given a record with nPayload bytes of payload stored within btree // ** page pPage, return the number of bytes of payload stored locally. // */ func _btreePayloadToLocal(tls *libc.TLS, pPage uintptr, nPayload Ti64) (r int32) { var maxLocal, minLocal, surplus, v1 int32 _, _, _, _ = maxLocal, minLocal, surplus, v1 /* Maximum amount of payload held locally */ maxLocal = int32((*TMemPage)(unsafe.Pointer(pPage)).FmaxLocal) if nPayload <= int64(maxLocal) { return int32(nPayload) } else { /* Overflow payload available for local storage */ minLocal = int32((*TMemPage)(unsafe.Pointer(pPage)).FminLocal) surplus = int32(int64(minLocal) + (nPayload-int64(minLocal))%int64((*TBtShared)(unsafe.Pointer((*TMemPage)(unsafe.Pointer(pPage)).FpBt)).FusableSize-libc.Uint32FromInt32(4))) if surplus <= maxLocal { v1 = surplus } else { v1 = minLocal } return v1 } return r } // C documentation // // /* // ** Step the cursor to the back to the previous entry in the database. // ** Return values: // ** // ** SQLITE_OK success // ** SQLITE_DONE the cursor is already on the first element of the table // ** otherwise some kind of error occurred // ** // ** The main entry point is sqlite3BtreePrevious(). That routine is optimized // ** for the common case of merely decrementing the cell counter BtCursor.aiIdx // ** to the previous cell on the current page. The (slower) btreePrevious() // ** helper routine is called when it is necessary to move to a different page // ** or to restore the cursor. // ** // ** If bit 0x01 of the F argument to sqlite3BtreePrevious(C,F) is 1, then // ** the cursor corresponds to an SQL index and this routine could have been // ** skipped if the SQL index had been a unique index. The F argument is a // ** hint to the implement. The native SQLite btree implementation does not // ** use this hint, but COMDB2 does. // */ func _btreePrevious(tls *libc.TLS, pCur uintptr) (r int32) { var idx, rc, v1 int32 var pPage uintptr _, _, _, _ = idx, pPage, rc, v1 if int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) != CURSOR_VALID { if int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) >= int32(CURSOR_REQUIRESEEK) { v1 = _btreeRestoreCursorPosition(tls, pCur) } else { v1 = SQLITE_OK } rc = v1 if rc != SQLITE_OK { return rc } if int32(CURSOR_INVALID) == int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) { return int32(SQLITE_DONE) } if int32(CURSOR_SKIPNEXT) == int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) { (*TBtCursor)(unsafe.Pointer(pCur)).FeState = uint8(CURSOR_VALID) if (*TBtCursor)(unsafe.Pointer(pCur)).FskipNext < 0 { return SQLITE_OK } } } pPage = (*TBtCursor)(unsafe.Pointer(pCur)).FpPage if _sqlite3FaultSim(tls, int32(412)) != 0 { (*TMemPage)(unsafe.Pointer(pPage)).FisInit = uint8(0) } if !((*TMemPage)(unsafe.Pointer(pPage)).FisInit != 0) { return _sqlite3CorruptError(tls, int32(79674)) } if !((*TMemPage)(unsafe.Pointer(pPage)).Fleaf != 0) { idx = int32((*TBtCursor)(unsafe.Pointer(pCur)).Fix) rc = _moveToChild(tls, pCur, _sqlite3Get4byte(tls, (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FmaskPage)&(int32(**(**Tu8)(__ccgo_up((*TMemPage)(unsafe.Pointer(pPage)).FaCellIdx + uintptr(int32(2)*idx))))<nPage field correctly, according to the current // ** state of the database. Assume pBt->pPage1 is valid. // */ func _btreeSetNPage(tls *libc.TLS, pBt uintptr, pPage1 uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* nPage at bp+0 */ int32 **(**int32)(__ccgo_up(bp)) = int32(_sqlite3Get4byte(tls, (*TMemPage)(unsafe.Pointer(pPage1)).FaData+28)) if **(**int32)(__ccgo_up(bp)) == 0 { _sqlite3PagerPagecount(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, bp) } (*TBtShared)(unsafe.Pointer(pBt)).FnPage = uint32(**(**int32)(__ccgo_up(bp))) } // C documentation // // /* // ** Implementation of the octet_length() function // */ func _bytelengthFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var m Ti64 var v1 int32 _, _ = m, v1 _ = argc switch Xsqlite3_value_type(tls, **(**uintptr)(__ccgo_up(argv))) { case int32(SQLITE_BLOB): Xsqlite3_result_int(tls, context, Xsqlite3_value_bytes(tls, **(**uintptr)(__ccgo_up(argv)))) case int32(SQLITE_INTEGER): fallthrough case int32(SQLITE_FLOAT): if int32((*Tsqlite3)(unsafe.Pointer(Xsqlite3_context_db_handle(tls, context))).Fenc) <= int32(SQLITE_UTF8) { v1 = int32(1) } else { v1 = int32(2) } m = int64(v1) Xsqlite3_result_int64(tls, context, int64(Xsqlite3_value_bytes(tls, **(**uintptr)(__ccgo_up(argv))))*m) case int32(SQLITE_TEXT): if Xsqlite3_value_encoding(tls, **(**uintptr)(__ccgo_up(argv))) <= int32(SQLITE_UTF8) { Xsqlite3_result_int(tls, context, Xsqlite3_value_bytes(tls, **(**uintptr)(__ccgo_up(argv)))) } else { Xsqlite3_result_int(tls, context, Xsqlite3_value_bytes16(tls, **(**uintptr)(__ccgo_up(argv)))) } default: Xsqlite3_result_null(tls, context) break } } // C documentation // // /* // ** Invoke the 'collation needed' callback to request a collation sequence // ** in the encoding enc of name zName, length nName. // */ func _callCollNeeded(tls *libc.TLS, db uintptr, enc int32, zName uintptr) { var pTmp, zExternal, zExternal1 uintptr _, _, _ = pTmp, zExternal, zExternal1 if (*Tsqlite3)(unsafe.Pointer(db)).FxCollNeeded != 0 { zExternal = _sqlite3DbStrDup(tls, db, zName) if !(zExternal != 0) { return } (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3)(unsafe.Pointer(db)).FxCollNeeded})))(tls, (*Tsqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, enc, zExternal) _sqlite3DbFree(tls, db, zExternal) } if (*Tsqlite3)(unsafe.Pointer(db)).FxCollNeeded16 != 0 { pTmp = _sqlite3ValueNew(tls, db) _sqlite3ValueSetStr(tls, pTmp, -int32(1), zName, uint8(SQLITE_UTF8), libc.UintptrFromInt32(0)) zExternal1 = _sqlite3ValueText(tls, pTmp, uint8(SQLITE_UTF16LE)) if zExternal1 != 0 { (*(*func(*libc.TLS, uintptr, uintptr, int32, uintptr))(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3)(unsafe.Pointer(db)).FxCollNeeded16})))(tls, (*Tsqlite3)(unsafe.Pointer(db)).FpCollNeededArg, db, int32((*Tsqlite3)(unsafe.Pointer(db)).Fenc), zExternal1) } _sqlite3ValueFree(tls, pTmp) } } // C documentation // // /* // ** Return the N-dimensional volume of the cell stored in *p. // */ func _cellArea(tls *libc.TLS, pRtree uintptr, p uintptr) (r TRtreeDValue) { var area TRtreeDValue _ = area area = libc.Float64FromInt32(1) if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { switch int32((*TRtree)(unsafe.Pointer(pRtree)).FnDim) { case int32(5): area = float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + 9*4)) - *(*TRtreeValue)(unsafe.Pointer(p + 8 + 8*4))) fallthrough case int32(4): area = area * float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + 7*4))-*(*TRtreeValue)(unsafe.Pointer(p + 8 + 6*4))) fallthrough case int32(3): area = area * float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + 5*4))-*(*TRtreeValue)(unsafe.Pointer(p + 8 + 4*4))) fallthrough case int32(2): area = area * float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + 3*4))-*(*TRtreeValue)(unsafe.Pointer(p + 8 + 2*4))) fallthrough default: area = area * float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + 1*4))-*(*TRtreeValue)(unsafe.Pointer(p + 8))) } } else { switch int32((*TRtree)(unsafe.Pointer(pRtree)).FnDim) { case int32(5): area = float64(int64(*(*int32)(unsafe.Pointer(p + 8 + 9*4))) - int64(*(*int32)(unsafe.Pointer(p + 8 + 8*4)))) fallthrough case int32(4): area = area * float64(int64(*(*int32)(unsafe.Pointer(p + 8 + 7*4)))-int64(*(*int32)(unsafe.Pointer(p + 8 + 6*4)))) fallthrough case int32(3): area = area * float64(int64(*(*int32)(unsafe.Pointer(p + 8 + 5*4)))-int64(*(*int32)(unsafe.Pointer(p + 8 + 4*4)))) fallthrough case int32(2): area = area * float64(int64(*(*int32)(unsafe.Pointer(p + 8 + 3*4)))-int64(*(*int32)(unsafe.Pointer(p + 8 + 2*4)))) fallthrough default: area = area * float64(int64(*(*int32)(unsafe.Pointer(p + 8 + 1*4)))-int64(*(*int32)(unsafe.Pointer(p + 8)))) } } return area } // C documentation // // /* // ** Return true if the area covered by p2 is a subset of the area covered // ** by p1. False otherwise. // */ func _cellContains(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) (r int32) { var a1, a11, a2, a21 uintptr var ii int32 _, _, _, _, _ = a1, a11, a2, a21, ii if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == int32(RTREE_COORD_INT32) { ii = 0 for { if !(ii < int32((*TRtree)(unsafe.Pointer(pRtree)).FnDim2)) { break } a1 = p1 + 8 + uintptr(ii)*4 a2 = p2 + 8 + uintptr(ii)*4 if *(*int32)(unsafe.Pointer(a2)) < *(*int32)(unsafe.Pointer(a1)) || *(*int32)(unsafe.Pointer(a2 + 1*4)) > *(*int32)(unsafe.Pointer(a1 + 1*4)) { return 0 } goto _1 _1: ; ii = ii + int32(2) } } else { ii = 0 for { if !(ii < int32((*TRtree)(unsafe.Pointer(pRtree)).FnDim2)) { break } a11 = p1 + 8 + uintptr(ii)*4 a21 = p2 + 8 + uintptr(ii)*4 if *(*TRtreeValue)(unsafe.Pointer(a21)) < *(*TRtreeValue)(unsafe.Pointer(a11)) || *(*TRtreeValue)(unsafe.Pointer(a21 + 1*4)) > *(*TRtreeValue)(unsafe.Pointer(a11 + 1*4)) { return 0 } goto _2 _2: ; ii = ii + int32(2) } } return int32(1) } // C documentation // // /* // ** Return the margin length of cell p. The margin length is the sum // ** of the objects size in each dimension. // */ func _cellMargin(tls *libc.TLS, pRtree uintptr, p uintptr) (r TRtreeDValue) { var ii int32 var margin TRtreeDValue var v1, v2 float64 _, _, _, _ = ii, margin, v1, v2 margin = libc.Float64FromInt32(0) ii = int32((*TRtree)(unsafe.Pointer(pRtree)).FnDim2) - int32(2) for cond := true; cond; cond = ii >= 0 { if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v1 = float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + uintptr(ii+int32(1))*4))) } else { v1 = float64(*(*int32)(unsafe.Pointer(p + 8 + uintptr(ii+int32(1))*4))) } if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v2 = float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + uintptr(ii)*4))) } else { v2 = float64(*(*int32)(unsafe.Pointer(p + 8 + uintptr(ii)*4))) } margin = margin + (v1 - v2) ii = ii - int32(2) } return margin } func _cellOverlap(tls *libc.TLS, pRtree uintptr, p uintptr, aCell uintptr, nCell int32) (r TRtreeDValue) { var ii, jj int32 var o, overlap, x1, x2 TRtreeDValue var v3, v4, v5, v6, v7 float64 _, _, _, _, _, _, _, _, _, _, _ = ii, jj, o, overlap, x1, x2, v3, v4, v5, v6, v7 overlap = float64(0) ii = 0 for { if !(ii < nCell) { break } o = libc.Float64FromInt32(1) jj = 0 for { if !(jj < int32((*TRtree)(unsafe.Pointer(pRtree)).FnDim2)) { break } if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v4 = float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + uintptr(jj)*4))) } else { v4 = float64(*(*int32)(unsafe.Pointer(p + 8 + uintptr(jj)*4))) } if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v5 = float64(*(*TRtreeValue)(unsafe.Pointer(aCell + uintptr(ii)*48 + 8 + uintptr(jj)*4))) } else { v5 = float64(*(*int32)(unsafe.Pointer(aCell + uintptr(ii)*48 + 8 + uintptr(jj)*4))) } if v4 > v5 { if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v6 = float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + uintptr(jj)*4))) } else { v6 = float64(*(*int32)(unsafe.Pointer(p + 8 + uintptr(jj)*4))) } v3 = v6 } else { if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v7 = float64(*(*TRtreeValue)(unsafe.Pointer(aCell + uintptr(ii)*48 + 8 + uintptr(jj)*4))) } else { v7 = float64(*(*int32)(unsafe.Pointer(aCell + uintptr(ii)*48 + 8 + uintptr(jj)*4))) } v3 = v7 } x1 = v3 if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v4 = float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + uintptr(jj+int32(1))*4))) } else { v4 = float64(*(*int32)(unsafe.Pointer(p + 8 + uintptr(jj+int32(1))*4))) } if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v5 = float64(*(*TRtreeValue)(unsafe.Pointer(aCell + uintptr(ii)*48 + 8 + uintptr(jj+int32(1))*4))) } else { v5 = float64(*(*int32)(unsafe.Pointer(aCell + uintptr(ii)*48 + 8 + uintptr(jj+int32(1))*4))) } if v4 < v5 { if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v6 = float64(*(*TRtreeValue)(unsafe.Pointer(p + 8 + uintptr(jj+int32(1))*4))) } else { v6 = float64(*(*int32)(unsafe.Pointer(p + 8 + uintptr(jj+int32(1))*4))) } v3 = v6 } else { if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { v7 = float64(*(*TRtreeValue)(unsafe.Pointer(aCell + uintptr(ii)*48 + 8 + uintptr(jj+int32(1))*4))) } else { v7 = float64(*(*int32)(unsafe.Pointer(aCell + uintptr(ii)*48 + 8 + uintptr(jj+int32(1))*4))) } v3 = v7 } x2 = v3 if x2 < x1 { o = libc.Float64FromInt32(0) break } else { o = TRtreeDValue(o * (x2 - x1)) } goto _2 _2: ; jj = jj + int32(2) } overlap = overlap + o goto _1 _1: ; ii = ii + 1 } return overlap } // C documentation // // /* // ** Store the union of cells p1 and p2 in p1. // */ func _cellUnion(tls *libc.TLS, pRtree uintptr, p1 uintptr, p2 uintptr) { var ii, v3 int32 var v1 TRtreeValue _, _, _ = ii, v1, v3 ii = 0 if int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == RTREE_COORD_REAL32 { for cond := true; cond; cond = ii < int32((*TRtree)(unsafe.Pointer(pRtree)).FnDim2) { if *(*TRtreeValue)(unsafe.Pointer(p1 + 8 + uintptr(ii)*4)) < *(*TRtreeValue)(unsafe.Pointer(p2 + 8 + uintptr(ii)*4)) { v1 = *(*TRtreeValue)(unsafe.Pointer(p1 + 8 + uintptr(ii)*4)) } else { v1 = *(*TRtreeValue)(unsafe.Pointer(p2 + 8 + uintptr(ii)*4)) } *(*TRtreeValue)(unsafe.Pointer(p1 + 8 + uintptr(ii)*4)) = v1 if *(*TRtreeValue)(unsafe.Pointer(p1 + 8 + uintptr(ii+int32(1))*4)) > *(*TRtreeValue)(unsafe.Pointer(p2 + 8 + uintptr(ii+int32(1))*4)) { v1 = *(*TRtreeValue)(unsafe.Pointer(p1 + 8 + uintptr(ii+int32(1))*4)) } else { v1 = *(*TRtreeValue)(unsafe.Pointer(p2 + 8 + uintptr(ii+int32(1))*4)) } *(*TRtreeValue)(unsafe.Pointer(p1 + 8 + uintptr(ii+int32(1))*4)) = v1 ii = ii + int32(2) } } else { for cond := true; cond; cond = ii < int32((*TRtree)(unsafe.Pointer(pRtree)).FnDim2) { if *(*int32)(unsafe.Pointer(p1 + 8 + uintptr(ii)*4)) < *(*int32)(unsafe.Pointer(p2 + 8 + uintptr(ii)*4)) { v3 = *(*int32)(unsafe.Pointer(p1 + 8 + uintptr(ii)*4)) } else { v3 = *(*int32)(unsafe.Pointer(p2 + 8 + uintptr(ii)*4)) } *(*int32)(unsafe.Pointer(p1 + 8 + uintptr(ii)*4)) = v3 if *(*int32)(unsafe.Pointer(p1 + 8 + uintptr(ii+int32(1))*4)) > *(*int32)(unsafe.Pointer(p2 + 8 + uintptr(ii+int32(1))*4)) { v3 = *(*int32)(unsafe.Pointer(p1 + 8 + uintptr(ii+int32(1))*4)) } else { v3 = *(*int32)(unsafe.Pointer(p2 + 8 + uintptr(ii+int32(1))*4)) } *(*int32)(unsafe.Pointer(p1 + 8 + uintptr(ii+int32(1))*4)) = v3 ii = ii + int32(2) } } } // C documentation // // /* // ** If the TEMP database is open, close it and mark the database schema // ** as needing reloading. This must be done when using the SQLITE_TEMP_STORE // ** or DEFAULT_TEMP_STORE pragmas. // */ func _changeTempStorage(tls *libc.TLS, pParse uintptr, zStorageType uintptr) (r int32) { var db uintptr var ts int32 _, _ = db, ts ts = _getTempStore(tls, zStorageType) db = (*TParse)(unsafe.Pointer(pParse)).Fdb if int32((*Tsqlite3)(unsafe.Pointer(db)).Ftemp_store) == ts { return SQLITE_OK } if _invalidateTempStorage(tls, pParse) != SQLITE_OK { return int32(SQLITE_ERROR) } (*Tsqlite3)(unsafe.Pointer(db)).Ftemp_store = uint8(ts) return SQLITE_OK } // C documentation // // /* // ** Check the integrity of the freelist or of an overflow page list. // ** Verify that the number of pages on the list is N. // */ func _checkList(tls *libc.TLS, pCheck uintptr, isFreeList int32, iPage TPgno, N Tu32) { bp := tls.Alloc(48) defer tls.Free(48) var expected, n Tu32 var i, nErrAtStart int32 var iFreePage TPgno var pOvflData, v2 uintptr var _ /* pOvflPage at bp+0 */ uintptr _, _, _, _, _, _, _ = expected, i, iFreePage, n, nErrAtStart, pOvflData, v2 expected = N nErrAtStart = (*TIntegrityCk)(unsafe.Pointer(pCheck)).FnErr for iPage != uint32(0) && (*TIntegrityCk)(unsafe.Pointer(pCheck)).FmxErr != 0 { if _checkRef(tls, pCheck, iPage) != 0 { break } N = N - 1 if _sqlite3PagerGet(tls, (*TIntegrityCk)(unsafe.Pointer(pCheck)).FpPager, iPage, bp, 0) != 0 { _checkAppendMsg(tls, pCheck, __ccgo_ts+5702, libc.VaList(bp+16, iPage)) break } pOvflData = _sqlite3PagerGetData(tls, **(**uintptr)(__ccgo_up(bp))) if isFreeList != 0 { n = _sqlite3Get4byte(tls, pOvflData+4) if (*TBtShared)(unsafe.Pointer((*TIntegrityCk)(unsafe.Pointer(pCheck)).FpBt)).FautoVacuum != 0 { _checkPtrmap(tls, pCheck, iPage, uint8(PTRMAP_FREEPAGE), uint32(0)) } if n > (*TBtShared)(unsafe.Pointer((*TIntegrityCk)(unsafe.Pointer(pCheck)).FpBt)).FusableSize/uint32(4)-uint32(2) { _checkAppendMsg(tls, pCheck, __ccgo_ts+5724, libc.VaList(bp+16, iPage)) N = N - 1 } else { i = 0 for { if !(i < int32(n)) { break } iFreePage = _sqlite3Get4byte(tls, pOvflData+uintptr(int32(8)+i*int32(4))) if (*TBtShared)(unsafe.Pointer((*TIntegrityCk)(unsafe.Pointer(pCheck)).FpBt)).FautoVacuum != 0 { _checkPtrmap(tls, pCheck, iFreePage, uint8(PTRMAP_FREEPAGE), uint32(0)) } _checkRef(tls, pCheck, iFreePage) goto _1 _1: ; i = i + 1 } N = N - n } } else { /* If this database supports auto-vacuum and iPage is not the last ** page in this overflow list, check that the pointer-map entry for ** the following page matches iPage. */ if (*TBtShared)(unsafe.Pointer((*TIntegrityCk)(unsafe.Pointer(pCheck)).FpBt)).FautoVacuum != 0 && N > uint32(0) { i = int32(_sqlite3Get4byte(tls, pOvflData)) _checkPtrmap(tls, pCheck, uint32(i), uint8(PTRMAP_OVERFLOW2), iPage) } } iPage = _sqlite3Get4byte(tls, pOvflData) _sqlite3PagerUnref(tls, **(**uintptr)(__ccgo_up(bp))) } if N != 0 && nErrAtStart == (*TIntegrityCk)(unsafe.Pointer(pCheck)).FnErr { if isFreeList != 0 { v2 = __ccgo_ts + 5763 } else { v2 = __ccgo_ts + 5768 } _checkAppendMsg(tls, pCheck, __ccgo_ts+5789, libc.VaList(bp+16, v2, expected-N, expected)) } } // C documentation // // /* // ** Check that the entry in the pointer-map for page iChild maps to // ** page iParent, pointer type ptrType. If not, append an error message // ** to pCheck. // */ func _checkPtrmap(tls *libc.TLS, pCheck uintptr, iChild TPgno, eType Tu8, iParent TPgno) { bp := tls.Alloc(64) defer tls.Free(64) var rc int32 var _ /* ePtrmapType at bp+0 */ Tu8 var _ /* iPtrmapParent at bp+4 */ TPgno _ = rc rc = _ptrmapGet(tls, (*TIntegrityCk)(unsafe.Pointer(pCheck)).FpBt, iChild, bp, bp+4) if rc != SQLITE_OK { if rc == int32(SQLITE_NOMEM) || rc == libc.Int32FromInt32(SQLITE_IOERR)|libc.Int32FromInt32(12)<zErrMsg. // ** Return 1 if there are 2 or more references to the page and 0 if // ** if this is the first reference to the page. // ** // ** Also check that the page number is in bounds. // */ func _checkRef(tls *libc.TLS, pCheck uintptr, iPage TPgno) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) if iPage > (*TIntegrityCk)(unsafe.Pointer(pCheck)).FnCkPage || iPage == uint32(0) { _checkAppendMsg(tls, pCheck, __ccgo_ts+5571, libc.VaList(bp+8, iPage)) return int32(1) } if _getPageReferenced(tls, pCheck, iPage) != 0 { _checkAppendMsg(tls, pCheck, __ccgo_ts+5594, libc.VaList(bp+8, iPage)) return int32(1) } _setPageReferenced(tls, pCheck, iPage) return 0 } // C documentation // // /* // ** Generate code for a comparison operator. // */ func _codeCompare(tls *libc.TLS, pParse uintptr, pLeft uintptr, pRight uintptr, opcode int32, in1 int32, in2 int32, dest int32, jumpIfNull int32, isCommuted int32) (r int32) { var addr, p5 int32 var p4 uintptr _, _, _ = addr, p4, p5 if (*TParse)(unsafe.Pointer(pParse)).FnErr != 0 { return 0 } if isCommuted != 0 { p4 = _sqlite3BinaryCompareCollSeq(tls, pParse, pRight, pLeft) } else { p4 = _sqlite3BinaryCompareCollSeq(tls, pParse, pLeft, pRight) } p5 = int32(_binaryCompareP5(tls, pLeft, pRight, jumpIfNull)) addr = _sqlite3VdbeAddOp4(tls, (*TParse)(unsafe.Pointer(pParse)).FpVdbe, opcode, in2, dest, in1, p4, -int32(2)) _sqlite3VdbeChangeP5(tls, (*TParse)(unsafe.Pointer(pParse)).FpVdbe, uint16(p5)) return addr } // C documentation // // /* // ** Generate code for a single equality term of the WHERE clause. An equality // ** term can be either X=expr or X IN (...). pTerm is the term to be // ** coded. // ** // ** The current value for the constraint is left in a register, the index // ** of which is returned. An attempt is made store the result in iTarget but // ** this is only guaranteed for TK_ISNULL and TK_IN constraints. If the // ** constraint is a TK_EQ or TK_IS, then the current value might be left in // ** some other register and it is the caller's responsibility to compensate. // ** // ** For a constraint of the form X=expr, the expression is evaluated in // ** straight-line code. For constraints of the form X IN (...) // ** this routine sets up a loop that will iterate over all values of X. // */ func _codeEqualityTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr, pLevel uintptr, iEq int32, bRev int32, iTarget int32) (r int32) { var iReg int32 var pX uintptr _, _ = iReg, pX pX = (*TWhereTerm)(unsafe.Pointer(pTerm)).FpExpr /* Register holding results */ if int32((*TExpr)(unsafe.Pointer(pX)).Fop) == int32(TK_EQ) || int32((*TExpr)(unsafe.Pointer(pX)).Fop) == int32(TK_IS) { iReg = _sqlite3ExprCodeTarget(tls, pParse, (*TExpr)(unsafe.Pointer(pX)).FpRight, iTarget) } else { if int32((*TExpr)(unsafe.Pointer(pX)).Fop) == int32(TK_ISNULL) { iReg = iTarget _sqlite3VdbeAddOp2(tls, (*TParse)(unsafe.Pointer(pParse)).FpVdbe, int32(OP_Null), 0, iReg) } else { iReg = iTarget _codeINTerm(tls, pParse, pTerm, pLevel, iEq, bRev, iTarget) } } /* As an optimization, try to disable the WHERE clause term that is ** driving the index as it will always be true. The correct answer is ** obtained regardless, but we might get the answer with fewer CPU cycles ** by omitting the term. ** ** But do not disable the term unless we are certain that the term is ** not a transitive constraint. For an example of where that does not ** work, see https://sqlite.org/forum/forumpost/eb8613976a (2021-05-04) */ if (*TWhereLoop)(unsafe.Pointer((*TWhereLevel)(unsafe.Pointer(pLevel)).FpWLoop)).FwsFlags&uint32(WHERE_TRANSCONS) == uint32(0) || int32((*TWhereTerm)(unsafe.Pointer(pTerm)).FeOperator)&int32(WO_EQUIV) == 0 { _disableTerm(tls, pLevel, pTerm) } return iReg } // C documentation // // /* // ** Compare the 19-character string zNum against the text representation // ** value 2^63: 9223372036854775808. Return negative, zero, or positive // ** if zNum is less than, equal to, or greater than the string. // ** Note that zNum must contain exactly 19 characters. // ** // ** Unlike memcmp() this routine is guaranteed to return the difference // ** in the values of the last digit if the only difference is in the // ** last digit. So, for example, // ** // ** compare2pow63("9223372036854775800", 1) // ** // ** will return -8. // */ func _compare2pow63(tls *libc.TLS, zNum uintptr, incr int32) (r int32) { var c, i int32 var pow63 uintptr _, _, _ = c, i, pow63 c = 0 /* 012345678901234567 */ pow63 = __ccgo_ts + 1822 i = 0 for { if !(c == 0 && i < int32(18)) { break } c = (int32(**(**int8)(__ccgo_up(zNum + uintptr(i*incr)))) - int32(**(**int8)(__ccgo_up(pow63 + uintptr(i))))) * int32(10) goto _1 _1: ; i = i + 1 } if c == 0 { c = int32(**(**int8)(__ccgo_up(zNum + uintptr(int32(18)*incr)))) - int32('8') } return c } type _complex = T_complex // C documentation // // /* // ** pMem currently only holds a string type (or maybe a BLOB that we can // ** interpret as a string if we want to). Compute its corresponding // ** numeric type, if has one. Set the pMem->u.r and pMem->u.i fields // ** accordingly. // */ func _computeNumericType(tls *libc.TLS, pMem uintptr) (r Tu16) { bp := tls.Alloc(16) defer tls.Free(16) var rc, v1 int32 var _ /* ix at bp+0 */ Tsqlite3_int64 _, _ = rc, v1 if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&int32(MEM_Zero) != 0 { v1 = _sqlite3VdbeMemExpandBlob(tls, pMem) } else { v1 = 0 } if v1 != 0 { *(*Ti64)(unsafe.Pointer(pMem)) = 0 return uint16(MEM_Int) } rc = _sqlite3MemRealValueRC(tls, pMem, pMem) if rc <= 0 { if rc&int32(2) == 0 && _sqlite3Atoi64(tls, (*TMem)(unsafe.Pointer(pMem)).Fz, bp, (*TMem)(unsafe.Pointer(pMem)).Fn, (*TMem)(unsafe.Pointer(pMem)).Fenc) <= int32(1) { *(*Ti64)(unsafe.Pointer(pMem)) = **(**Tsqlite3_int64)(__ccgo_up(bp)) return uint16(MEM_Int) } else { return uint16(MEM_Real) } } else { if rc&int32(2) == 0 && _sqlite3Atoi64(tls, (*TMem)(unsafe.Pointer(pMem)).Fz, bp, (*TMem)(unsafe.Pointer(pMem)).Fn, (*TMem)(unsafe.Pointer(pMem)).Fenc) == 0 { *(*Ti64)(unsafe.Pointer(pMem)) = **(**Tsqlite3_int64)(__ccgo_up(bp)) return uint16(MEM_Int) } } return uint16(MEM_Real) } // C documentation // // /* // ** The CONCAT(...) function. Generate a string result that is the // ** concatentation of all non-null arguments. // */ func _concatFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { _concatFuncCore(tls, context, argc, argv, 0, __ccgo_ts+1711) } const _copysignl = 0 type _cpinfo = T_cpinfo type _cpinfoexA = T_cpinfoexA type _cpinfoexW = T_cpinfoexW type _currencyfmtA = T_currencyfmtA type _currencyfmtW = T_currencyfmtW // C documentation // // /* // ** idxNum: // ** // ** 0 schema=main, full table scan // ** 1 schema=main, pgno=?1 // ** 2 schema=?1, full table scan // ** 3 schema=?1, pgno=?2 // */ func _dbpageBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) (r int32) { var i, iPlan, v3 int32 var p, p1 uintptr _, _, _, _, _ = i, iPlan, p, p1, v3 iPlan = 0 _ = tab /* If there is a schema= constraint, it must be honored. Report a ** ridiculously large estimated cost if the schema= constraint is ** unavailable */ i = 0 for { if !(i < (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnConstraint) { break } p = (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraint + uintptr(i)*12 if (*Tsqlite3_index_constraint)(unsafe.Pointer(p)).FiColumn != int32(DBPAGE_COLUMN_SCHEMA) { goto _1 } if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) != int32(SQLITE_INDEX_CONSTRAINT_EQ) { goto _1 } if !((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fusable != 0) { /* No solution. */ return int32(SQLITE_CONSTRAINT) } iPlan = int32(2) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(i)*8))).FargvIndex = int32(1) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(i)*8))).Fomit = uint8(1) break goto _1 _1: ; i = i + 1 } /* If we reach this point, it means that either there is no schema= ** constraint (in which case we use the "main" schema) or else the ** schema constraint was accepted. Lower the estimated cost accordingly */ (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = float64(1e+06) /* Check for constraints against pgno */ i = 0 for { if !(i < (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnConstraint) { break } p1 = (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraint + uintptr(i)*12 if (*Tsqlite3_index_constraint)(unsafe.Pointer(p1)).Fusable != 0 && (*Tsqlite3_index_constraint)(unsafe.Pointer(p1)).FiColumn <= 0 && int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p1)).Fop) == int32(SQLITE_INDEX_CONSTRAINT_EQ) { (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(1) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxFlags = int32(SQLITE_INDEX_SCAN_UNIQUE) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = float64(1) if iPlan != 0 { v3 = int32(2) } else { v3 = int32(1) } (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(i)*8))).FargvIndex = v3 (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(i)*8))).Fomit = uint8(1) iPlan = iPlan | int32(1) break } goto _2 _2: ; i = i + 1 } (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = iPlan if (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnOrderBy >= int32(1) && (**(**Tsqlite3_index_orderby)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaOrderBy))).FiColumn <= 0 && int32((**(**Tsqlite3_index_orderby)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaOrderBy))).Fdesc) == 0 { (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).ForderByConsumed = int32(1) } return SQLITE_OK } func _dbpageRowid(tls *libc.TLS, pCursor uintptr, pRowid uintptr) (r int32) { var pCsr uintptr _ = pCsr pCsr = pCursor **(**Tsqlite_int64)(__ccgo_up(pRowid)) = int64((*TDbpageCursor)(unsafe.Pointer(pCsr)).Fpgno) return SQLITE_OK } // C documentation // // /* // ** Delete the cell at index iCell of node pNode. After removing the // ** cell, adjust the r-tree data structure if required. // */ func _deleteCell(tls *libc.TLS, pRtree uintptr, pNode uintptr, iCell int32, iHeight int32) (r int32) { var pParent uintptr var rc, v1 int32 _, _, _ = pParent, rc, v1 v1 = _fixLeafParent(tls, pRtree, pNode) rc = v1 if SQLITE_OK != v1 { return rc } /* Remove the cell from the node. This call just moves bytes around ** the in-memory node image, so it cannot fail. */ _nodeDeleteCell(tls, pRtree, pNode, iCell) /* If the node is not the tree root and now has less than the minimum ** number of cells, remove it from the tree. Otherwise, update the ** cell in the parent node so that it tightly contains the updated ** node. */ pParent = (*TRtreeNode)(unsafe.Pointer(pNode)).FpParent if pParent != 0 { if _readInt16(tls, (*TRtreeNode)(unsafe.Pointer(pNode)).FzData+2) < ((*TRtree)(unsafe.Pointer(pRtree)).FiNodeSize-int32(4))/int32((*TRtree)(unsafe.Pointer(pRtree)).FnBytesPerCell)/int32(3) { rc = _removeNode(tls, pRtree, pNode, iHeight) } else { rc = _fixBoundingBox(tls, pRtree, pNode) } } return rc } // C documentation // // /* // ** Write VDBE code to erase table pTab and all associated indices on disk. // ** Code to update the sqlite_schema tables and internal schema definitions // ** in case a root-page belonging to another table is moved by the btree layer // ** is also added (this can happen with an auto-vacuum database). // */ func _destroyTable(tls *libc.TLS, pParse uintptr, pTab uintptr) { var iDb int32 var iDestroyed, iIdx, iLargest, iTab TPgno var pIdx uintptr _, _, _, _, _, _ = iDb, iDestroyed, iIdx, iLargest, iTab, pIdx /* If the database may be auto-vacuum capable (if SQLITE_OMIT_AUTOVACUUM ** is not defined), then it is important to call OP_Destroy on the ** table and index root-pages in order, starting with the numerically ** largest root-page number. This guarantees that none of the root-pages ** to be destroyed is relocated by an earlier OP_Destroy. i.e. if the ** following were coded: ** ** OP_Destroy 4 0 ** ... ** OP_Destroy 5 0 ** ** and root page 5 happened to be the largest root-page number in the ** database, then root page 5 would be moved to page 4 by the ** "OP_Destroy 4 0" opcode. The subsequent "OP_Destroy 5 0" would hit ** a free-list page. */ iTab = (*TTable)(unsafe.Pointer(pTab)).Ftnum iDestroyed = uint32(0) for int32(1) != 0 { iLargest = uint32(0) if iDestroyed == uint32(0) || iTab < iDestroyed { iLargest = iTab } pIdx = (*TTable)(unsafe.Pointer(pTab)).FpIndex for { if !(pIdx != 0) { break } iIdx = (*TIndex)(unsafe.Pointer(pIdx)).Ftnum if (iDestroyed == uint32(0) || iIdx < iDestroyed) && iIdx > iLargest { iLargest = iIdx } goto _1 _1: ; pIdx = (*TIndex)(unsafe.Pointer(pIdx)).FpNext } if iLargest == uint32(0) { return } else { iDb = _sqlite3SchemaToIndex(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, (*TTable)(unsafe.Pointer(pTab)).FpSchema) _destroyRootPage(tls, pParse, int32(iLargest), iDb) iDestroyed = iLargest } } } var _detach_func = TFuncDef{ FnArg: int16(1), FfuncFlags: uint32(SQLITE_UTF8), FzName: __ccgo_ts + 14728, } type _dev_t = T_dev_t type _devicemodeA = T_devicemodeA type _devicemodeW = T_devicemodeW func _disallowAggregatesInOrderByCb(tls *libc.TLS, pWalker uintptr, pExpr uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_AGG_FUNCTION) && (*TExpr)(unsafe.Pointer(pExpr)).FpAggInfo == uintptr(0) { _sqlite3ErrorMsg(tls, (*TWalker)(unsafe.Pointer(pWalker)).FpParse, __ccgo_ts+25663, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(pExpr + 8)))) } return WRC_Continue } type _div_t = T_div_t const _doserrno = 0 const _eeptAnsiString = 1 const _eeptBinary = 7 const _eeptLongVal = 3 const _eeptNone = 6 const _eeptPointerVal = 5 const _eeptShortVal = 4 const _eeptUnicodeString = 2 var _encnames = [4]uintptr{ 0: __ccgo_ts + 6476, 1: __ccgo_ts + 6478, 2: __ccgo_ts + 6480, 3: __ccgo_ts + 6485, } var _encnames1 = [9]struct { FzName uintptr Fenc Tu8 }{ 0: { FzName: __ccgo_ts + 21026, Fenc: uint8(SQLITE_UTF8), }, 1: { FzName: __ccgo_ts + 21031, Fenc: uint8(SQLITE_UTF8), }, 2: { FzName: __ccgo_ts + 21037, Fenc: uint8(SQLITE_UTF16LE), }, 3: { FzName: __ccgo_ts + 21046, Fenc: uint8(SQLITE_UTF16BE), }, 4: { FzName: __ccgo_ts + 21055, Fenc: uint8(SQLITE_UTF16LE), }, 5: { FzName: __ccgo_ts + 21063, Fenc: uint8(SQLITE_UTF16BE), }, 6: { FzName: __ccgo_ts + 21071, }, 7: { FzName: __ccgo_ts + 21078, }, 8: {}, } const _environ = 0 // C documentation // // /* // ** Estimate the logarithm of the input value to base 2. // */ func _estLog(tls *libc.TLS, N TLogEst) (r TLogEst) { var v1 int32 _ = v1 if int32(N) <= int32(10) { v1 = 0 } else { v1 = int32(_sqlite3LogEst(tls, uint64(N))) - int32(33) } return int16(v1) } type _exception = T_exception // C documentation // // /* // ** This routine is a helper for explainIndexRange() below // ** // ** pStr holds the text of an expression that we are building up one term // ** at a time. This routine adds a new term to the end of the expression. // ** Terms are separated by AND so add the "AND" text for second and subsequent // ** terms only. // */ func _explainAppendTerm(tls *libc.TLS, pStr uintptr, pIdx uintptr, nTerm int32, iTerm int32, bAnd int32, zOp uintptr) { var i int32 _ = i if bAnd != 0 { Xsqlite3_str_append(tls, pStr, __ccgo_ts+24859, int32(5)) } if nTerm > int32(1) { Xsqlite3_str_append(tls, pStr, __ccgo_ts+24865, int32(1)) } i = 0 for { if !(i < nTerm) { break } if i != 0 { Xsqlite3_str_append(tls, pStr, __ccgo_ts+15563, int32(1)) } Xsqlite3_str_appendall(tls, pStr, _explainIndexColumnName(tls, pIdx, iTerm+i)) goto _1 _1: ; i = i + 1 } if nTerm > int32(1) { Xsqlite3_str_append(tls, pStr, __ccgo_ts+6474, int32(1)) } Xsqlite3_str_append(tls, pStr, zOp, int32(1)) if nTerm > int32(1) { Xsqlite3_str_append(tls, pStr, __ccgo_ts+24865, int32(1)) } i = 0 for { if !(i < nTerm) { break } if i != 0 { Xsqlite3_str_append(tls, pStr, __ccgo_ts+15563, int32(1)) } Xsqlite3_str_append(tls, pStr, __ccgo_ts+6476, int32(1)) goto _2 _2: ; i = i + 1 } if nTerm > int32(1) { Xsqlite3_str_append(tls, pStr, __ccgo_ts+6474, int32(1)) } } // C documentation // // /* // ** Argument pLevel describes a strategy for scanning table pTab. This // ** function appends text to pStr that describes the subset of table // ** rows scanned by the strategy in the form of an SQL expression. // ** // ** For example, if the query: // ** // ** SELECT * FROM t1 WHERE a=1 AND b>2; // ** // ** is run and there is an index on (a, b), then this function returns a // ** string similar to: // ** // ** "a=? AND b>?" // */ func _explainIndexRange(tls *libc.TLS, pStr uintptr, pLoop uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var i, j int32 var nEq, nSkip Tu16 var pIndex, z, v2 uintptr _, _, _, _, _, _, _ = i, j, nEq, nSkip, pIndex, z, v2 pIndex = (*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(pLoop + 24))).FpIndex nEq = (*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(pLoop + 24))).FnEq nSkip = (*TWhereLoop)(unsafe.Pointer(pLoop)).FnSkip if int32(nEq) == 0 && (*TWhereLoop)(unsafe.Pointer(pLoop)).FwsFlags&uint32(libc.Int32FromInt32(WHERE_BTM_LIMIT)|libc.Int32FromInt32(WHERE_TOP_LIMIT)) == uint32(0) { return } Xsqlite3_str_append(tls, pStr, __ccgo_ts+24867, int32(2)) i = 0 for { if !(i < int32(nEq)) { break } z = _explainIndexColumnName(tls, pIndex, i) if i != 0 { Xsqlite3_str_append(tls, pStr, __ccgo_ts+24859, int32(5)) } if i >= int32(nSkip) { v2 = __ccgo_ts + 24870 } else { v2 = __ccgo_ts + 24875 } Xsqlite3_str_appendf(tls, pStr, v2, libc.VaList(bp+8, z)) goto _1 _1: ; i = i + 1 } j = i if (*TWhereLoop)(unsafe.Pointer(pLoop)).FwsFlags&uint32(WHERE_BTM_LIMIT) != 0 { _explainAppendTerm(tls, pStr, pIndex, int32((*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(pLoop + 24))).FnBtm), j, i, __ccgo_ts+24883) i = int32(1) } if (*TWhereLoop)(unsafe.Pointer(pLoop)).FwsFlags&uint32(WHERE_TOP_LIMIT) != 0 { _explainAppendTerm(tls, pStr, pIndex, int32((*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(pLoop + 24))).FnTop), j, i, __ccgo_ts+24885) } Xsqlite3_str_append(tls, pStr, __ccgo_ts+6474, int32(1)) } // C documentation // // /* // ** Unless an "EXPLAIN QUERY PLAN" command is being processed, this function // ** is a no-op. Otherwise, it adds a single row of output to the EQP result, // ** where the caption is of the form: // ** // ** "USE TEMP B-TREE FOR xxx" // ** // ** where xxx is one of "DISTINCT", "ORDER BY" or "GROUP BY". Exactly which // ** is determined by the zUsage argument. // */ func _explainTempTable(tls *libc.TLS, pParse uintptr, zUsage uintptr) { bp := tls.Alloc(16) defer tls.Free(16) _sqlite3VdbeExplain(tls, pParse, uint8(0), __ccgo_ts+21752, libc.VaList(bp+8, zUsage)) } /* ** Assign expression b to lvalue a. A second, no-op, version of this macro ** is provided when SQLITE_OMIT_EXPLAIN is defined. This allows the code ** in sqlite3Select() to assign values to structure member variables that ** only exist if SQLITE_OMIT_EXPLAIN is not defined without polluting the ** code with #ifndef directives. */ // C documentation // // /* // ** If expression pExpr is of type TK_SELECT, generate code to evaluate // ** it. Return the register in which the result is stored (or, if the // ** sub-select returns more than one column, the first in an array // ** of registers in which the result is stored). // ** // ** If pExpr is not a TK_SELECT expression, return 0. // */ func _exprCodeSubselect(tls *libc.TLS, pParse uintptr, pExpr uintptr) (r int32) { var reg int32 _ = reg reg = 0 if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_SELECT) { reg = _sqlite3CodeSubselect(tls, pParse, pExpr) } return reg } // C documentation // // /* // ** Generate code that evaluates an AND or OR operator leaving a // ** boolean result in a register. pExpr is the AND/OR expression. // ** Store the result in the "target" register. Use short-circuit // ** evaluation to avoid computing both operands, if possible. // ** // ** The code generated might require the use of a temporary register. // ** If it does, then write the number of that temporary register // ** into *pTmpReg. If not, leave *pTmpReg unchanged. // */ func _exprCodeTargetAndOr(tls *libc.TLS, pParse uintptr, pExpr uintptr, target int32, pTmpReg uintptr) (r int32) { var addrSkip, op, r1, r2, regSS, skipOp, v1 int32 var pAlt, v uintptr _, _, _, _, _, _, _, _, _ = addrSkip, op, pAlt, r1, r2, regSS, skipOp, v, v1 /* Branch instruction that skips one of the operands */ regSS = 0 /* statement being coded */ op = int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) v = (*TParse)(unsafe.Pointer(pParse)).FpVdbe pAlt = _sqlite3ExprSimplifiedAndOr(tls, pExpr) if pAlt != pExpr { r1 = _sqlite3ExprCodeTarget(tls, pParse, pAlt, target) _sqlite3VdbeAddOp3(tls, v, int32(OP_And), r1, r1, target) return target } if op == int32(TK_AND) { v1 = int32(OP_IfNot) } else { v1 = int32(OP_If) } skipOp = v1 if _exprEvalRhsFirst(tls, pExpr) != 0 { /* Compute the right operand first. Skip the computation of the left ** operand if the right operand fully determines the result */ v1 = _sqlite3ExprCodeTarget(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, target) regSS = v1 r2 = v1 addrSkip = _sqlite3VdbeAddOp1(tls, v, skipOp, r2) r1 = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, pTmpReg) } else { /* Compute the left operand first */ r1 = _sqlite3ExprCodeTarget(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, target) if (*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(pExpr)).FpRight)).Fflags&uint32(libc.Int32FromInt32(EP_Subquery)) != uint32(0) { /* Skip over the computation of the right operand if the right ** operand is a subquery and the left operand completely determines ** the result */ regSS = r1 addrSkip = _sqlite3VdbeAddOp1(tls, v, skipOp, r1) } else { v1 = libc.Int32FromInt32(0) regSS = v1 addrSkip = v1 } r2 = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, pTmpReg) } _sqlite3VdbeAddOp3(tls, v, op, r2, r1, target) if addrSkip != 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_Goto), 0, _sqlite3VdbeCurrentAddr(tls, v)+int32(2)) _sqlite3VdbeJumpHere(tls, v, addrSkip) _sqlite3VdbeAddOp3(tls, v, int32(OP_Or), regSS, regSS, target) } return target } // C documentation // // /* // ** Commute a comparison operator. Expressions of the form "X op Y" // ** are converted into "Y op X". // */ func _exprCommute(tls *libc.TLS, pParse uintptr, pExpr uintptr) (r Tu16) { var t uintptr _ = t if int32((*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(pExpr)).FpLeft)).Fop) == int32(TK_VECTOR) || int32((*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(pExpr)).FpRight)).Fop) == int32(TK_VECTOR) || _sqlite3BinaryCompareCollSeq(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, (*TExpr)(unsafe.Pointer(pExpr)).FpRight) != _sqlite3BinaryCompareCollSeq(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft) { **(**Tu32)(__ccgo_up(pExpr + 4)) ^= uint32(EP_Commuted) } t = (*TExpr)(unsafe.Pointer(pExpr)).FpRight (*TExpr)(unsafe.Pointer(pExpr)).FpRight = (*TExpr)(unsafe.Pointer(pExpr)).FpLeft (*TExpr)(unsafe.Pointer(pExpr)).FpLeft = t if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) >= int32(TK_GT) { (*TExpr)(unsafe.Pointer(pExpr)).Fop = uint8(int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) - int32(TK_GT) ^ int32(2) + int32(TK_GT)) } return uint16(0) } // C documentation // // /* // ** Expression pVar is guaranteed to be an SQL variable. pExpr may be any // ** type of expression. // ** // ** If pExpr is a simple SQL value - an integer, real, string, blob // ** or NULL value - then the VDBE currently being prepared is configured // ** to re-prepare each time a new value is bound to variable pVar. // ** // ** Additionally, if pExpr is a simple SQL value and the value is the // ** same as that currently bound to variable pVar, non-zero is returned. // ** Otherwise, if the values are not the same or if pExpr is not a simple // ** SQL value, zero is returned. // ** // ** If the SQLITE_EnableQPSG flag is set on the database connection, then // ** this routine always returns false. // */ func _exprCompareVariable(tls *libc.TLS, pParse uintptr, pVar uintptr, pExpr uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var iVar, res, v1 int32 var pL uintptr var _ /* pR at bp+0 */ uintptr _, _, _, _ = iVar, pL, res, v1 res = int32(2) **(**uintptr)(__ccgo_up(bp)) = uintptr(0) if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_VARIABLE) && int32((*TExpr)(unsafe.Pointer(pVar)).FiColumn) == int32((*TExpr)(unsafe.Pointer(pExpr)).FiColumn) { return 0 } if (*Tsqlite3)(unsafe.Pointer((*TParse)(unsafe.Pointer(pParse)).Fdb)).Fflags&uint64(SQLITE_EnableQPSG) != uint64(0) { return int32(2) } _sqlite3ValueFromExpr(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, pExpr, uint8(SQLITE_UTF8), uint8(SQLITE_AFF_BLOB), bp) if **(**uintptr)(__ccgo_up(bp)) != 0 { iVar = int32((*TExpr)(unsafe.Pointer(pVar)).FiColumn) _sqlite3VdbeSetVarmask(tls, (*TParse)(unsafe.Pointer(pParse)).FpVdbe, iVar) pL = _sqlite3VdbeGetBoundValue(tls, (*TParse)(unsafe.Pointer(pParse)).FpReprepare, iVar, uint8(SQLITE_AFF_BLOB)) if pL != 0 { if Xsqlite3_value_type(tls, pL) == int32(SQLITE_TEXT) { Xsqlite3_value_text(tls, pL) /* Make sure the encoding is UTF-8 */ } if _sqlite3MemCompare(tls, pL, **(**uintptr)(__ccgo_up(bp)), uintptr(0)) != 0 { v1 = int32(2) } else { v1 = 0 } res = v1 } _sqlite3ValueFree(tls, **(**uintptr)(__ccgo_up(bp))) _sqlite3ValueFree(tls, pL) } return res } // C documentation // // /* // ** Compute the two operands of a binary operator. // ** // ** If either operand contains a subquery, then the code strives to // ** compute the operand containing the subquery second. If the other // ** operand evalutes to NULL, then a jump is made. The address of the // ** IsNull operand that does this jump is returned. The caller can use // ** this to optimize the computation so as to avoid doing the potentially // ** expensive subquery. // ** // ** If no optimization opportunities exist, return 0. // */ func _exprComputeOperands(tls *libc.TLS, pParse uintptr, pExpr uintptr, pR1 uintptr, pR2 uintptr, pFree1 uintptr, pFree2 uintptr) (r int32) { var addrIsNull, r1, r2 int32 var v uintptr _, _, _, _ = addrIsNull, r1, r2, v v = (*TParse)(unsafe.Pointer(pParse)).FpVdbe /* ** If the left operand contains a (possibly expensive) subquery and the ** right operand does not and the right operation might be NULL, ** then compute the right operand first and do an IsNull jump if the ** right operand evalutes to NULL. */ if _exprEvalRhsFirst(tls, pExpr) != 0 && _sqlite3ExprCanBeNull(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpRight) != 0 { r2 = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, pFree2) addrIsNull = _sqlite3VdbeAddOp1(tls, v, int32(OP_IsNull), r2) } else { r2 = 0 /* Silence a false-positive uninit-var warning in MSVC */ addrIsNull = 0 } r1 = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, pFree1) if addrIsNull == 0 { /* ** If the right operand contains a subquery and the left operand does not ** and the left operand might be NULL, then do an IsNull check ** check on the left operand before computing the right operand. */ if (*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(pExpr)).FpRight)).Fflags&uint32(libc.Int32FromInt32(EP_Subquery)) != uint32(0) && _sqlite3ExprCanBeNull(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft) != 0 { addrIsNull = _sqlite3VdbeAddOp1(tls, v, int32(OP_IsNull), r1) } r2 = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, pFree2) } **(**int32)(__ccgo_up(pR1)) = r1 **(**int32)(__ccgo_up(pR2)) = r2 return addrIsNull } // C documentation // // /* // ** Return true if it might be advantageous to compute the right operand // ** of expression pExpr first, before the left operand. // ** // ** Normally the left operand is computed before the right operand. But if // ** the left operand contains a subquery and the right does not, then it // ** might be more efficient to compute the right operand first. // */ func _exprEvalRhsFirst(tls *libc.TLS, pExpr uintptr) (r int32) { if (*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(pExpr)).FpLeft)).Fflags&uint32(libc.Int32FromInt32(EP_Subquery)) != uint32(0) && !((*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(pExpr)).FpRight)).Fflags&uint32(libc.Int32FromInt32(EP_Subquery)) != libc.Uint32FromInt32(0)) { return int32(1) } else { return 0 } return r } // C documentation // // /* // ** Helper function for exprIsDeterministic(). // */ func _exprNodeIsDeterministic(tls *libc.TLS, pWalker uintptr, pExpr uintptr) (r int32) { if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_FUNCTION) && libc.BoolInt32((*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_ConstFunc)) != uint32(0)) == 0 { (*TWalker)(unsafe.Pointer(pWalker)).FeCode = uint16(0) return int32(WRC_Abort) } return WRC_Continue } // C documentation // // /* // ** Expression p should encode a floating point value between 1.0 and 0.0. // ** Return 134,217,728 (2^27) times this value. Or return -1 if p is not // ** a floating point value between 1.0 and 0.0. // */ func _exprProbability(tls *libc.TLS, p uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* r at bp+0 */ float64 **(**float64)(__ccgo_up(bp)) = -libc.Float64FromFloat64(1) if int32((*TExpr)(unsafe.Pointer(p)).Fop) != int32(TK_FLOAT) { return -int32(1) } _sqlite3AtoF(tls, *(*uintptr)(unsafe.Pointer(p + 8)), bp) if **(**float64)(__ccgo_up(bp)) > float64(1) { return -int32(1) } return int32(float64(**(**float64)(__ccgo_up(bp)) * libc.Float64FromFloat64(1.34217728e+08))) } // C documentation // // /* // ** The database opened by the first argument is an auto-vacuum database // ** nOrig pages in size containing nFree free pages. Return the expected // ** size of the database in pages following an auto-vacuum operation. // */ func _finalDbSize(tls *libc.TLS, pBt uintptr, nOrig TPgno, nFree TPgno) (r TPgno) { var nEntry int32 var nFin, nPtrmap TPgno _, _, _ = nEntry, nFin, nPtrmap /* Return value */ nEntry = int32((*TBtShared)(unsafe.Pointer(pBt)).FusableSize / uint32(5)) nPtrmap = (nFree - nOrig + _ptrmapPageno(tls, pBt, nOrig) + uint32(nEntry)) / uint32(nEntry) nFin = nOrig - nFree - nPtrmap if nOrig > uint32(_sqlite3PendingByte)/(*TBtShared)(unsafe.Pointer(pBt)).FpageSize+libc.Uint32FromInt32(1) && nFin < uint32(_sqlite3PendingByte)/(*TBtShared)(unsafe.Pointer(pBt)).FpageSize+libc.Uint32FromInt32(1) { nFin = nFin - 1 } for _ptrmapPageno(tls, pBt, nFin) == nFin || nFin == uint32(_sqlite3PendingByte)/(*TBtShared)(unsafe.Pointer(pBt)).FpageSize+libc.Uint32FromInt32(1) { nFin = nFin - 1 } return nFin } // C documentation // // /* // ** Find all terms of COLUMN=VALUE or VALUE=COLUMN in pExpr where VALUE // ** is a constant expression and where the term must be true because it // ** is part of the AND-connected terms of the expression. For each term // ** found, add it to the pConst structure. // */ func _findConstInWhere(tls *libc.TLS, pConst uintptr, pExpr uintptr) { var pLeft, pRight uintptr _, _ = pLeft, pRight if pExpr == uintptr(0) { return } if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&(*TWhereConst)(unsafe.Pointer(pConst)).FmExcludeOn != uint32(0) { return } if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_AND) { _findConstInWhere(tls, pConst, (*TExpr)(unsafe.Pointer(pExpr)).FpRight) _findConstInWhere(tls, pConst, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft) return } if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) != int32(TK_EQ) { return } pRight = (*TExpr)(unsafe.Pointer(pExpr)).FpRight pLeft = (*TExpr)(unsafe.Pointer(pExpr)).FpLeft if int32((*TExpr)(unsafe.Pointer(pRight)).Fop) == int32(TK_COLUMN) && _sqlite3ExprIsConstant(tls, (*TWhereConst)(unsafe.Pointer(pConst)).FpParse, pLeft) != 0 { _constInsert(tls, pConst, pRight, pLeft, pExpr) } if int32((*TExpr)(unsafe.Pointer(pLeft)).Fop) == int32(TK_COLUMN) && _sqlite3ExprIsConstant(tls, (*TWhereConst)(unsafe.Pointer(pConst)).FpParse, pRight) != 0 { _constInsert(tls, pConst, pLeft, pRight, pExpr) } } // C documentation // // /* // ** This routine runs after codeDistinct(). It makes necessary // ** adjustments to the OP_OpenEphemeral opcode that the codeDistinct() // ** routine made use of. This processing must be done separately since // ** sometimes codeDistinct is called before the OP_OpenEphemeral is actually // ** laid down. // ** // ** WHERE_DISTINCT_NOOP: // ** WHERE_DISTINCT_UNORDERED: // ** // ** No adjustments necessary. This function is a no-op. // ** // ** WHERE_DISTINCT_UNIQUE: // ** // ** The ephemeral table is not needed. So change the // ** OP_OpenEphemeral opcode into an OP_Noop. // ** // ** WHERE_DISTINCT_ORDERED: // ** // ** The ephemeral table is not needed. But we do need register // ** iVal to be initialized to NULL. So change the OP_OpenEphemeral // ** into an OP_Null on the iVal register. // */ func _fixDistinctOpenEph(tls *libc.TLS, pParse uintptr, eTnctType int32, iVal int32, iOpenEphAddr int32) { var pOp, v uintptr _, _ = pOp, v if (*TParse)(unsafe.Pointer(pParse)).FnErr == 0 && (eTnctType == int32(WHERE_DISTINCT_UNIQUE) || eTnctType == int32(WHERE_DISTINCT_ORDERED)) { v = (*TParse)(unsafe.Pointer(pParse)).FpVdbe _sqlite3VdbeChangeToNoop(tls, v, iOpenEphAddr) if int32((*TVdbeOp)(unsafe.Pointer(_sqlite3VdbeGetOp(tls, v, iOpenEphAddr+int32(1)))).Fopcode) == int32(OP_Explain) { _sqlite3VdbeChangeToNoop(tls, v, iOpenEphAddr+int32(1)) } if eTnctType == int32(WHERE_DISTINCT_ORDERED) { /* Change the OP_OpenEphemeral to an OP_Null that sets the MEM_Cleared ** bit on the first register of the previous value. This will cause the ** OP_Ne added in codeDistinct() to always fail on the first iteration of ** the loop even if the first row is all NULLs. */ pOp = _sqlite3VdbeGetOp(tls, v, iOpenEphAddr) (*TVdbeOp)(unsafe.Pointer(pOp)).Fopcode = uint8(OP_Null) (*TVdbeOp)(unsafe.Pointer(pOp)).Fp1 = int32(1) (*TVdbeOp)(unsafe.Pointer(pOp)).Fp2 = iVal } } } // C documentation // // /* // ** This function is called when a row is inserted into or deleted from the // ** child table of foreign key constraint pFKey. If an SQL UPDATE is executed // ** on the child table of pFKey, this function is invoked twice for each row // ** affected - once to "delete" the old row, and then again to "insert" the // ** new row. // ** // ** Each time it is called, this function generates VDBE code to locate the // ** row in the parent table that corresponds to the row being inserted into // ** or deleted from the child table. If the parent row can be found, no // ** special action is taken. Otherwise, if the parent row can *not* be // ** found in the parent table: // ** // ** Operation | FK type | Action taken // ** -------------------------------------------------------------------------- // ** INSERT immediate Increment the "immediate constraint counter". // ** // ** DELETE immediate Decrement the "immediate constraint counter". // ** // ** INSERT deferred Increment the "deferred constraint counter". // ** // ** DELETE deferred Decrement the "deferred constraint counter". // ** // ** These operations are identified in the comment at the top of this file // ** (fkey.c) as "I.1" and "D.1". // */ func _fkLookupParent(tls *libc.TLS, pParse uintptr, iDb int32, pTab uintptr, pIdx uintptr, pFKey uintptr, aiCol uintptr, regData int32, nIncr int32, isIgnore int32) { var i, iChild, iCur, iJump, iMustBeInt, iOk, iParent, iReg, nCol, regTemp, regTemp1 int32 var v uintptr _, _, _, _, _, _, _, _, _, _, _, _ = i, iChild, iCur, iJump, iMustBeInt, iOk, iParent, iReg, nCol, regTemp, regTemp1, v /* Iterator variable */ v = _sqlite3GetVdbe(tls, pParse) /* Vdbe to add code to */ iCur = (*TParse)(unsafe.Pointer(pParse)).FnTab - int32(1) /* Cursor number to use */ iOk = _sqlite3VdbeMakeLabel(tls, pParse) /* jump here if parent key found */ /* If nIncr is less than zero, then check at runtime if there are any ** outstanding constraints to resolve. If there are not, there is no need ** to check if deleting this row resolves any outstanding violations. ** ** Check if any of the key columns in the child table row are NULL. If ** any are, then the constraint is considered satisfied. No need to ** search for a matching row in the parent table. */ if nIncr < 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_FkIfZero), int32((*TFKey)(unsafe.Pointer(pFKey)).FisDeferred), iOk) } i = 0 for { if !(i < (*TFKey)(unsafe.Pointer(pFKey)).FnCol) { break } iReg = int32(_sqlite3TableColumnToStorage(tls, (*TFKey)(unsafe.Pointer(pFKey)).FpFrom, int16(**(**int32)(__ccgo_up(aiCol + uintptr(i)*4))))) + regData + int32(1) _sqlite3VdbeAddOp2(tls, v, int32(OP_IsNull), iReg, iOk) goto _1 _1: ; i = i + 1 } if isIgnore == 0 { if pIdx == uintptr(0) { /* Address of MustBeInt instruction */ regTemp = _sqlite3GetTempReg(tls, pParse) /* Invoke MustBeInt to coerce the child key value to an integer (i.e. ** apply the affinity of the parent key). If this fails, then there ** is no matching parent key. Before using MustBeInt, make a copy of ** the value. Otherwise, the value inserted into the child key column ** will have INTEGER affinity applied to it, which may not be correct. */ _sqlite3VdbeAddOp2(tls, v, int32(OP_SCopy), int32(_sqlite3TableColumnToStorage(tls, (*TFKey)(unsafe.Pointer(pFKey)).FpFrom, int16(**(**int32)(__ccgo_up(aiCol)))))+int32(1)+regData, regTemp) iMustBeInt = _sqlite3VdbeAddOp2(tls, v, int32(OP_MustBeInt), regTemp, 0) /* If the parent table is the same as the child table, and we are about ** to increment the constraint-counter (i.e. this is an INSERT operation), ** then check if the row being inserted matches itself. If so, do not ** increment the constraint-counter. */ if pTab == (*TFKey)(unsafe.Pointer(pFKey)).FpFrom && nIncr == int32(1) { _sqlite3VdbeAddOp3(tls, v, int32(OP_Eq), regData, iOk, regTemp) _sqlite3VdbeChangeP5(tls, v, uint16(SQLITE_NOTNULL)) } _sqlite3OpenTable(tls, pParse, iCur, iDb, pTab, int32(OP_OpenRead)) _sqlite3VdbeAddOp3(tls, v, int32(OP_NotExists), iCur, 0, regTemp) _sqlite3VdbeGoto(tls, v, iOk) _sqlite3VdbeJumpHere(tls, v, _sqlite3VdbeCurrentAddr(tls, v)-int32(2)) _sqlite3VdbeJumpHere(tls, v, iMustBeInt) _sqlite3ReleaseTempReg(tls, pParse, regTemp) } else { nCol = (*TFKey)(unsafe.Pointer(pFKey)).FnCol regTemp1 = _sqlite3GetTempRange(tls, pParse, nCol) _sqlite3VdbeAddOp3(tls, v, int32(OP_OpenRead), iCur, int32((*TIndex)(unsafe.Pointer(pIdx)).Ftnum), iDb) _sqlite3VdbeSetP4KeyInfo(tls, pParse, pIdx) i = 0 for { if !(i < nCol) { break } _sqlite3VdbeAddOp2(tls, v, int32(OP_Copy), int32(_sqlite3TableColumnToStorage(tls, (*TFKey)(unsafe.Pointer(pFKey)).FpFrom, int16(**(**int32)(__ccgo_up(aiCol + uintptr(i)*4)))))+int32(1)+regData, regTemp1+i) goto _2 _2: ; i = i + 1 } /* If the parent table is the same as the child table, and we are about ** to increment the constraint-counter (i.e. this is an INSERT operation), ** then check if the row being inserted matches itself. If so, do not ** increment the constraint-counter. ** ** If any of the parent-key values are NULL, then the row cannot match ** itself. So set JUMPIFNULL to make sure we do the OP_Found if any ** of the parent-key values are NULL (at this point it is known that ** none of the child key values are). */ if pTab == (*TFKey)(unsafe.Pointer(pFKey)).FpFrom && nIncr == int32(1) { iJump = _sqlite3VdbeCurrentAddr(tls, v) + nCol + int32(1) i = 0 for { if !(i < nCol) { break } iChild = int32(_sqlite3TableColumnToStorage(tls, (*TFKey)(unsafe.Pointer(pFKey)).FpFrom, int16(**(**int32)(__ccgo_up(aiCol + uintptr(i)*4))))) + int32(1) + regData iParent = int32(1) + regData iParent = iParent + int32(_sqlite3TableColumnToStorage(tls, (*TIndex)(unsafe.Pointer(pIdx)).FpTable, **(**Ti16)(__ccgo_up((*TIndex)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2)))) if int32(**(**Ti16)(__ccgo_up((*TIndex)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2))) == int32((*TTable)(unsafe.Pointer(pTab)).FiPKey) { /* The parent key is a composite key that includes the IPK column */ iParent = regData } _sqlite3VdbeAddOp3(tls, v, int32(OP_Ne), iChild, iJump, iParent) _sqlite3VdbeChangeP5(tls, v, uint16(SQLITE_JUMPIFNULL)) goto _3 _3: ; i = i + 1 } _sqlite3VdbeGoto(tls, v, iOk) } _sqlite3VdbeAddOp4(tls, v, int32(OP_Affinity), regTemp1, nCol, 0, _sqlite3IndexAffinityStr(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, pIdx), nCol) _sqlite3VdbeAddOp4Int(tls, v, int32(OP_Found), iCur, iOk, regTemp1, nCol) _sqlite3ReleaseTempRange(tls, pParse, regTemp1, nCol) } } if !((*TFKey)(unsafe.Pointer(pFKey)).FisDeferred != 0) && !((*Tsqlite3)(unsafe.Pointer((*TParse)(unsafe.Pointer(pParse)).Fdb)).Fflags&libc.Uint64FromInt32(SQLITE_DeferFKs) != 0) && !((*TParse)(unsafe.Pointer(pParse)).FpToplevel != 0) && !((*TParse)(unsafe.Pointer(pParse)).FisMultiWrite != 0) { /* Special case: If this is an INSERT statement that will insert exactly ** one row into the table, raise a constraint immediately instead of ** incrementing a counter. This is necessary as the VM code is being ** generated for will not open a statement transaction. */ _sqlite3HaltConstraint(tls, pParse, libc.Int32FromInt32(SQLITE_CONSTRAINT)|libc.Int32FromInt32(3)< 0 && int32((*TFKey)(unsafe.Pointer(pFKey)).FisDeferred) == 0 { _sqlite3MayAbort(tls, pParse) } _sqlite3VdbeAddOp2(tls, v, int32(OP_FkCounter), int32((*TFKey)(unsafe.Pointer(pFKey)).FisDeferred), nIncr) } _sqlite3VdbeResolveLabel(tls, v, iOk) _sqlite3VdbeAddOp1(tls, v, int32(OP_Close), iCur) } const _fmode = 0 const _ftime = 0 const _ftime_s = 0 func _fts5ApiPhraseNextColumn(tls *libc.TLS, pCtx uintptr, pIter uintptr, piCol uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var pConfig, pCsr uintptr var _ /* dummy at bp+4 */ int32 var _ /* iIncr at bp+0 */ int32 _, _ = pConfig, pCsr pCsr = pCtx pConfig = (*TFts5Table)(unsafe.Pointer((*TFts5Cursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab)).FpConfig if (*TFts5Config)(unsafe.Pointer(pConfig)).FeDetail == int32(FTS5_DETAIL_COLUMNS) { if (*TFts5PhraseIter)(unsafe.Pointer(pIter)).Fa >= (*TFts5PhraseIter)(unsafe.Pointer(pIter)).Fb { **(**int32)(__ccgo_up(piCol)) = -int32(1) } else { **(**uintptr)(__ccgo_up(pIter)) += uintptr(_sqlite3Fts5GetVarint32(tls, (*TFts5PhraseIter)(unsafe.Pointer(pIter)).Fa, bp)) **(**int32)(__ccgo_up(piCol)) += **(**int32)(__ccgo_up(bp)) - int32(2) } } else { for int32(1) != 0 { if (*TFts5PhraseIter)(unsafe.Pointer(pIter)).Fa >= (*TFts5PhraseIter)(unsafe.Pointer(pIter)).Fb { **(**int32)(__ccgo_up(piCol)) = -int32(1) return } if int32(**(**uint8)(__ccgo_up((*TFts5PhraseIter)(unsafe.Pointer(pIter)).Fa))) == int32(0x01) { break } **(**uintptr)(__ccgo_up(pIter)) += uintptr(_sqlite3Fts5GetVarint32(tls, (*TFts5PhraseIter)(unsafe.Pointer(pIter)).Fa, bp+4)) } **(**uintptr)(__ccgo_up(pIter)) += uintptr(int32(1) + _sqlite3Fts5GetVarint32(tls, (*TFts5PhraseIter)(unsafe.Pointer(pIter)).Fa+1, piCol)) } } func _fts5AsciiAddExceptions(tls *libc.TLS, p uintptr, zArg uintptr, bTokenChars int32) { var i int32 _ = i i = 0 for { if !(**(**int8)(__ccgo_up(zArg + uintptr(i))) != 0) { break } if int32(**(**int8)(__ccgo_up(zArg + uintptr(i))))&int32(0x80) == 0 { **(**uint8)(__ccgo_up(p + uintptr(int32(**(**int8)(__ccgo_up(zArg + uintptr(i))))))) = uint8(bTokenChars) } goto _1 _1: ; i = i + 1 } } // C documentation // // /* // ** Tokenize some text using the ascii tokenizer. // */ func _fts5AsciiTokenize(tls *libc.TLS, pTokenizer uintptr, pCtx uintptr, iUnused int32, pText uintptr, nText int32, __ccgo_fp_xToken uintptr) (r int32) { bp := tls.Alloc(64) defer tls.Free(64) var a, p, pFold uintptr var ie, is, nByte, nFold, rc int32 var _ /* aFold at bp+0 */ [64]int8 _, _, _, _, _, _, _, _ = a, ie, is, nByte, nFold, p, pFold, rc p = pTokenizer rc = SQLITE_OK is = 0 nFold = int32(64) pFold = bp a = p _ = iUnused for is < nText && rc == SQLITE_OK { /* Skip any leading divider characters. */ for is < nText && (int32(**(**int8)(__ccgo_up(pText + uintptr(is))))&int32(0x80) == 0 && int32(**(**uint8)(__ccgo_up(a + uintptr(int32(**(**int8)(__ccgo_up(pText + uintptr(is)))))))) == 0) { is = is + 1 } if is == nText { break } /* Count the token characters */ ie = is + int32(1) for ie < nText && (int32(**(**int8)(__ccgo_up(pText + uintptr(ie))))&int32(0x80) != 0 || **(**uint8)(__ccgo_up(a + uintptr(int32(**(**int8)(__ccgo_up(pText + uintptr(ie))))))) != 0) { ie = ie + 1 } /* Fold to lower case */ nByte = ie - is if nByte > nFold { if pFold != bp { Xsqlite3_free(tls, pFold) } pFold = Xsqlite3_malloc64(tls, uint64(int64(nByte)*int64(2))) if pFold == uintptr(0) { rc = int32(SQLITE_NOMEM) break } nFold = nByte * int32(2) } _asciiFold(tls, pFold, pText+uintptr(is), nByte) /* Invoke the token callback */ rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, int32, int32) int32)(unsafe.Pointer(&struct{ uintptr }{__ccgo_fp_xToken})))(tls, pCtx, 0, pFold, nByte, is, ie) is = ie + int32(1) } if pFold != bp { Xsqlite3_free(tls, pFold) } if rc == int32(SQLITE_DONE) { rc = SQLITE_OK } return rc } /************************************************************************** ** Start of unicode61 tokenizer implementation. */ /* ** The following two macros - READ_UTF8 and WRITE_UTF8 - have been copied ** from the sqlite3 source file utf.c. If this file is compiled as part ** of the amalgamation, they are not required. */ func _fts5DlidxExtractFirstRowid(tls *libc.TLS, pBuf uintptr) (r Ti64) { bp := tls.Alloc(16) defer tls.Free(16) var iOff int32 var _ /* iRowid at bp+0 */ Ti64 _ = iOff iOff = int32(1) + int32(_sqlite3Fts5GetVarint(tls, (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fp+1, bp)) _sqlite3Fts5GetVarint(tls, (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fp+uintptr(iOff), bp) return **(**Ti64)(__ccgo_up(bp)) } func _fts5DoclistIterNext(tls *libc.TLS, pIter uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var p uintptr var _ /* iDelta at bp+0 */ Ti64 var _ /* nPos at bp+8 */ int32 _ = p p = (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FaPoslist + uintptr((*TFts5DoclistIter)(unsafe.Pointer(pIter)).FnSize) + uintptr((*TFts5DoclistIter)(unsafe.Pointer(pIter)).FnPoslist) if p >= (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FaEof { (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FaPoslist = uintptr(0) } else { p = p + uintptr(_sqlite3Fts5GetVarint(tls, p, bp)) **(**Ti64)(__ccgo_up(pIter + 8)) += **(**Ti64)(__ccgo_up(bp)) /* Read position list size */ if int32(**(**Tu8)(__ccgo_up(p)))&int32(0x80) != 0 { (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FnSize = _sqlite3Fts5GetVarint32(tls, p, bp+8) (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FnPoslist = **(**int32)(__ccgo_up(bp + 8)) >> int32(1) } else { (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FnPoslist = int32(**(**Tu8)(__ccgo_up(p))) >> int32(1) (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FnSize = int32(1) } (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FaPoslist = p if (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FaPoslist+uintptr((*TFts5DoclistIter)(unsafe.Pointer(pIter)).FnPoslist) > (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FaEof { (*TFts5DoclistIter)(unsafe.Pointer(pIter)).FaPoslist = uintptr(0) } } } func _fts5ExprSynonymAdvanceto(tls *libc.TLS, pTerm uintptr, bDesc int32, piLast uintptr, pRc uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var iLast, iRowid Ti64 var p uintptr var rc int32 var _ /* bEof at bp+0 */ int32 _, _, _, _ = iLast, iRowid, p, rc rc = SQLITE_OK iLast = **(**Ti64)(__ccgo_up(piLast)) **(**int32)(__ccgo_up(bp)) = 0 p = pTerm for { if !(rc == SQLITE_OK && p != 0) { break } if int32((*TFts5IndexIter)(unsafe.Pointer((*TFts5ExprTerm)(unsafe.Pointer(p)).FpIter)).FbEof) == 0 { iRowid = (*TFts5IndexIter)(unsafe.Pointer((*TFts5ExprTerm)(unsafe.Pointer(p)).FpIter)).FiRowid if bDesc == 0 && iLast > iRowid || bDesc != 0 && iLast < iRowid { rc = _sqlite3Fts5IterNextFrom(tls, (*TFts5ExprTerm)(unsafe.Pointer(p)).FpIter, iLast) } } goto _1 _1: ; p = (*TFts5ExprTerm)(unsafe.Pointer(p)).FpSynonym } if rc != SQLITE_OK { **(**int32)(__ccgo_up(pRc)) = rc **(**int32)(__ccgo_up(bp)) = int32(1) } else { **(**Ti64)(__ccgo_up(piLast)) = _fts5ExprSynonymRowid(tls, pTerm, bDesc, bp) } return **(**int32)(__ccgo_up(bp)) } // C documentation // // /* // ** Argument pTerm must be a synonym iterator. Return the current rowid // ** that it points to. // */ func _fts5ExprSynonymRowid(tls *libc.TLS, pTerm uintptr, bDesc int32, pbEof uintptr) (r Ti64) { var bRetValid int32 var iRet, iRowid Ti64 var p uintptr _, _, _, _ = bRetValid, iRet, iRowid, p iRet = 0 bRetValid = 0 p = pTerm for { if !(p != 0) { break } if 0 == int32((*TFts5IndexIter)(unsafe.Pointer((*TFts5ExprTerm)(unsafe.Pointer(p)).FpIter)).FbEof) { iRowid = (*TFts5IndexIter)(unsafe.Pointer((*TFts5ExprTerm)(unsafe.Pointer(p)).FpIter)).FiRowid if bRetValid == 0 || bDesc != libc.BoolInt32(iRowid < iRet) { iRet = iRowid bRetValid = int32(1) } } goto _1 _1: ; p = (*TFts5ExprTerm)(unsafe.Pointer(p)).FpSynonym } if pbEof != 0 && bRetValid == 0 { **(**int32)(__ccgo_up(pbEof)) = int32(1) } return iRet } // C documentation // // /* // ** Implementation of the fts5() function used by clients to obtain the // ** API pointer. // */ func _fts5Fts5Func(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { var pGlobal, ppApi uintptr _, _ = pGlobal, ppApi pGlobal = Xsqlite3_user_data(tls, pCtx) _ = nArg ppApi = Xsqlite3_value_pointer(tls, **(**uintptr)(__ccgo_up(apArg)), __ccgo_ts+41733) if ppApi != 0 { **(**uintptr)(__ccgo_up(ppApi)) = pGlobal } } // C documentation // // /* // ** Argument p points to a buffer containing a varint to be interpreted as a // ** position list size field. Read the varint and return the number of bytes // ** read. Before returning, set *pnSz to the number of bytes in the position // ** list, and *pbDel to true if the delete flag is set, or false otherwise. // */ func _fts5GetPoslistSize(tls *libc.TLS, p uintptr, pnSz uintptr, pbDel uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var n, v1 int32 var _ /* nSz at bp+0 */ int32 _, _ = n, v1 n = 0 v1 = n n = n + 1 **(**int32)(__ccgo_up(bp)) = int32(**(**Tu8)(__ccgo_up(p + uintptr(v1)))) if **(**int32)(__ccgo_up(bp))&int32(0x80) != 0 { n = n - 1 n = n + _sqlite3Fts5GetVarint32(tls, p+uintptr(n), bp) } **(**int32)(__ccgo_up(pnSz)) = **(**int32)(__ccgo_up(bp)) / int32(2) **(**int32)(__ccgo_up(pbDel)) = **(**int32)(__ccgo_up(bp)) & int32(0x0001) return n } func _fts5GetU16(tls *libc.TLS, aIn uintptr) (r Tu16) { return uint16(int32(uint16(**(**Tu8)(__ccgo_up(aIn))))<= 0) { break } h = h<= 0) { break } h = h<zOut. Argument // ** z points to a buffer containing n bytes of text to append. If n is // ** negative, everything up until the first '\0' is appended to the output. // ** // ** If *pRc is set to any value other than SQLITE_OK when this function is // ** called, it is a no-op. If an error (i.e. an OOM condition) is encountered, // ** *pRc is set to an error code before returning. // */ func _fts5HighlightAppend(tls *libc.TLS, pRc uintptr, p uintptr, z uintptr, n int32) { bp := tls.Alloc(32) defer tls.Free(32) if **(**int32)(__ccgo_up(pRc)) == SQLITE_OK && z != 0 { if n < 0 { n = int32(libc.Xstrlen(tls, z)) } (*THighlightContext)(unsafe.Pointer(p)).FzOut = Xsqlite3_mprintf(tls, __ccgo_ts+38386, libc.VaList(bp+8, (*THighlightContext)(unsafe.Pointer(p)).FzOut, n, z)) if (*THighlightContext)(unsafe.Pointer(p)).FzOut == uintptr(0) { **(**int32)(__ccgo_up(pRc)) = int32(SQLITE_NOMEM) } } } // C documentation // // /* // ** A total of nLeaf leaf pages of data has just been flushed to a level-0 // ** segment. This function updates the write-counter accordingly and, if // ** necessary, performs incremental merge work. // ** // ** If an error occurs, set the Fts5Index.rc error code. If an error has // ** already occurred, this function is a no-op. // */ func _fts5IndexAutomerge(tls *libc.TLS, p uintptr, ppStruct uintptr, nLeaf int32) { var nRem, nWork int32 var nWrite Tu64 var pStruct uintptr _, _, _, _ = nRem, nWork, nWrite, pStruct if (*TFts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK && (*TFts5Config)(unsafe.Pointer((*TFts5Index)(unsafe.Pointer(p)).FpConfig)).FnAutomerge > 0 && **(**uintptr)(__ccgo_up(ppStruct)) != uintptr(0) { pStruct = **(**uintptr)(__ccgo_up(ppStruct)) /* Number of leaf pages left to write */ /* Update the write-counter. While doing so, set nWork. */ nWrite = (*TFts5Structure)(unsafe.Pointer(pStruct)).FnWriteCounter nWork = int32((nWrite+uint64(nLeaf))/uint64((*TFts5Index)(unsafe.Pointer(p)).FnWorkUnit) - nWrite/uint64((*TFts5Index)(unsafe.Pointer(p)).FnWorkUnit)) **(**Tu64)(__ccgo_up(pStruct + 8)) += uint64(nLeaf) nRem = (*TFts5Index)(unsafe.Pointer(p)).FnWorkUnit * nWork * (*TFts5Structure)(unsafe.Pointer(pStruct)).FnLevel _fts5IndexMerge(tls, p, ppStruct, nRem, (*TFts5Config)(unsafe.Pointer((*TFts5Index)(unsafe.Pointer(p)).FpConfig)).FnAutomerge) } } // C documentation // // /* // ** pIn is a UTF-8 encoded string, nIn bytes in size. Return the number of // ** unicode characters in the string. // */ func _fts5IndexCharlen(tls *libc.TLS, pIn uintptr, nIn int32) (r int32) { var i, nChar, v1 int32 _, _, _ = i, nChar, v1 nChar = 0 i = 0 for i < nIn { v1 = i i = i + 1 if int32(uint8(**(**int8)(__ccgo_up(pIn + uintptr(v1))))) >= int32(0xc0) { for i < nIn && int32(**(**int8)(__ccgo_up(pIn + uintptr(i))))&int32(0xc0) == int32(0x80) { i = i + 1 } } nChar = nChar + 1 } return nChar } func _fts5IndexCorruptIdx(tls *libc.TLS, pIdx uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) (*TFts5Index)(unsafe.Pointer(pIdx)).Frc = libc.Int32FromInt32(SQLITE_CORRUPT) | libc.Int32FromInt32(1)<= (*TFts5Data)(unsafe.Pointer(pLeaf)).Fnn) || i >= iNoRowid && 0 != int32(_fts5GetU16(tls, (*TFts5Data)(unsafe.Pointer(pLeaf)).Fp)) { _fts5IndexCorruptRowid(tls, p, int64((*TFts5StructureSegment)(unsafe.Pointer(pSeg)).FiSegid)<<(libc.Int32FromInt32(FTS5_DATA_PAGE_B)+libc.Int32FromInt32(FTS5_DATA_HEIGHT_B)+libc.Int32FromInt32(FTS5_DATA_DLI_B))+int64(libc.Int32FromInt32(0))<<(libc.Int32FromInt32(FTS5_DATA_PAGE_B)+libc.Int32FromInt32(FTS5_DATA_HEIGHT_B))+int64(libc.Int32FromInt32(0))< int32(16) { if int32(**(**Tu8)(__ccgo_up((*TFts5Data)(unsafe.Pointer(pPg)).Fp))) == int32(4) { v3 = int32(4) } else { v3 = int32(8) } v2 = ((*TFts5Data)(unsafe.Pointer(pPg)).Fnn - int32(8)) / v3 } else { v2 = int32(1) } nSlot = v2 nElem = int32(_fts5GetU32(tls, (*TFts5Data)(unsafe.Pointer(pPg)).Fp+4)) iSlot = int32(iRowid / uint64(nPg) % uint64(nSlot)) nCollide = nSlot if szKey == int32(4) && iRowid > uint64(0xFFFFFFFF) { return int32(2) } if iRowid == uint64(0) { **(**Tu8)(__ccgo_up((*TFts5Data)(unsafe.Pointer(pPg)).Fp + 1)) = uint8(0x01) return 0 } if bForce == 0 && nElem >= nSlot/int32(2) { return int32(1) } _fts5PutU32(tls, (*TFts5Data)(unsafe.Pointer(pPg)).Fp+4, uint32(nElem+int32(1))) if szKey == int32(4) { aSlot = (*TFts5Data)(unsafe.Pointer(pPg)).Fp + 8 for **(**Tu32)(__ccgo_up(aSlot + uintptr(iSlot)*4)) != 0 { iSlot = (iSlot + int32(1)) % nSlot v1 = nCollide nCollide = nCollide - 1 if v1 == 0 { return 0 } } _fts5PutU32(tls, aSlot+uintptr(iSlot)*4, uint32(iRowid)) } else { aSlot1 = (*TFts5Data)(unsafe.Pointer(pPg)).Fp + 8 for **(**Tu64)(__ccgo_up(aSlot1 + uintptr(iSlot)*8)) != 0 { iSlot = (iSlot + int32(1)) % nSlot v1 = nCollide nCollide = nCollide - 1 if v1 == 0 { return 0 } } _fts5PutU64(tls, aSlot1+uintptr(iSlot)*8, iRowid) } return 0 } // C documentation // // /* // ** Query a single tombstone hash table for rowid iRowid. Return true if // ** it is found or false otherwise. The tombstone hash table is one of // ** nHashTable tables. // */ func _fts5IndexTombstoneQuery(tls *libc.TLS, pHash uintptr, nHashTable int32, iRowid Tu64) (r int32) { var aSlot, aSlot1 uintptr var iSlot, nCollide, nSlot, szKey, v1, v2, v3 int32 _, _, _, _, _, _, _, _, _ = aSlot, aSlot1, iSlot, nCollide, nSlot, szKey, v1, v2, v3 if int32(**(**Tu8)(__ccgo_up((*TFts5Data)(unsafe.Pointer(pHash)).Fp))) == int32(4) { v1 = int32(4) } else { v1 = int32(8) } szKey = v1 if (*TFts5Data)(unsafe.Pointer(pHash)).Fnn > int32(16) { if int32(**(**Tu8)(__ccgo_up((*TFts5Data)(unsafe.Pointer(pHash)).Fp))) == int32(4) { v3 = int32(4) } else { v3 = int32(8) } v2 = ((*TFts5Data)(unsafe.Pointer(pHash)).Fnn - int32(8)) / v3 } else { v2 = int32(1) } nSlot = v2 iSlot = int32(iRowid / uint64(nHashTable) % uint64(nSlot)) nCollide = nSlot if iRowid == uint64(0) { return int32(**(**Tu8)(__ccgo_up((*TFts5Data)(unsafe.Pointer(pHash)).Fp + 1))) } else { if szKey == int32(4) { aSlot = (*TFts5Data)(unsafe.Pointer(pHash)).Fp + 8 for **(**Tu32)(__ccgo_up(aSlot + uintptr(iSlot)*4)) != 0 { if uint64(_fts5GetU32(tls, aSlot+uintptr(iSlot)*4)) == iRowid { return int32(1) } v1 = nCollide nCollide = nCollide - 1 if v1 == 0 { break } iSlot = (iSlot + int32(1)) % nSlot } } else { aSlot1 = (*TFts5Data)(unsafe.Pointer(pHash)).Fp + 8 for **(**Tu64)(__ccgo_up(aSlot1 + uintptr(iSlot)*8)) != 0 { if _fts5GetU64(tls, aSlot1+uintptr(iSlot)*8) == iRowid { return int32(1) } v1 = nCollide nCollide = nCollide - 1 if v1 == 0 { break } iSlot = (iSlot + int32(1)) % nSlot } } } return 0 } // C documentation // // /* // ** Run an integrity check on the FTS5 data structures. Return a string // ** if anything is found amiss. Return a NULL pointer if everything is // ** OK. // */ func _fts5IntegrityMethod(tls *libc.TLS, pVtab uintptr, zSchema uintptr, zTabname uintptr, isQuick int32, pzErr uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var pTab uintptr var rc, v1 int32 _, _, _ = pTab, rc, v1 pTab = pVtab _ = isQuick (*TFts5Config)(unsafe.Pointer((*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig)).FpzErrmsg = pzErr rc = _sqlite3Fts5StorageIntegrity(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).FpStorage, 0) if **(**uintptr)(__ccgo_up(pzErr)) == uintptr(0) && rc != SQLITE_OK { if rc&int32(0xff) == int32(SQLITE_CORRUPT) { **(**uintptr)(__ccgo_up(pzErr)) = Xsqlite3_mprintf(tls, __ccgo_ts+41844, libc.VaList(bp+8, zSchema, zTabname)) if **(**uintptr)(__ccgo_up(pzErr)) != 0 { v1 = SQLITE_OK } else { v1 = int32(SQLITE_NOMEM) } rc = v1 } else { **(**uintptr)(__ccgo_up(pzErr)) = Xsqlite3_mprintf(tls, __ccgo_ts+41890, libc.VaList(bp+8, zSchema, zTabname, Xsqlite3_errstr(tls, rc))) } } else { if rc&int32(0xff) == int32(SQLITE_CORRUPT) { rc = SQLITE_OK } } _sqlite3Fts5IndexCloseReader(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex) (*TFts5Config)(unsafe.Pointer((*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig)).FpzErrmsg = uintptr(0) return rc } func _fts5NextRowid(tls *libc.TLS, pBuf uintptr, piOff uintptr, piRowid uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var i int32 var v1 uintptr var _ /* iVal at bp+0 */ Tu64 _, _ = i, v1 i = **(**int32)(__ccgo_up(piOff)) if i >= (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fn { **(**int32)(__ccgo_up(piOff)) = -int32(1) } else { **(**int32)(__ccgo_up(piOff)) = i + int32(_sqlite3Fts5GetVarint(tls, (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fp+uintptr(i), bp)) v1 = piRowid *(*Ti64)(unsafe.Pointer(v1)) = Ti64(uint64(*(*Ti64)(unsafe.Pointer(v1))) + **(**Tu64)(__ccgo_up(bp))) } } func _fts5ParseAlloc(tls *libc.TLS, t Tu64) (r uintptr) { return Xsqlite3_malloc64(tls, uint64(int64(t))) } // C documentation // // /* // ** Return the size of the prefix, in bytes, that buffer // ** (pNew/) shares with buffer (pOld/nOld). // ** // ** Buffer (pNew/) is guaranteed to be greater // ** than buffer (pOld/nOld). // */ func _fts5PrefixCompress(tls *libc.TLS, nOld int32, pOld uintptr, pNew uintptr) (r int32) { var i int32 _ = i i = 0 for { if !(i < nOld) { break } if int32(**(**Tu8)(__ccgo_up(pOld + uintptr(i)))) != int32(**(**Tu8)(__ccgo_up(pNew + uintptr(i)))) { break } goto _1 _1: ; i = i + 1 } return i } func _fts5PrepareStatement(tls *libc.TLS, ppStmt uintptr, pConfig uintptr, zFmt uintptr, va uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var ap Tva_list var rc int32 var zSql uintptr var _ /* pRet at bp+0 */ uintptr _, _, _ = ap, rc, zSql **(**uintptr)(__ccgo_up(bp)) = uintptr(0) ap = va zSql = Xsqlite3_vmprintf(tls, zFmt, ap) if zSql == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { rc = Xsqlite3_prepare_v3(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, zSql, -int32(1), uint32(SQLITE_PREPARE_PERSISTENT), bp, uintptr(0)) if rc != SQLITE_OK { _sqlite3Fts5ConfigErrmsg(tls, pConfig, __ccgo_ts+4729, libc.VaList(bp+16, Xsqlite3_errmsg(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb))) } Xsqlite3_free(tls, zSql) } _ = ap **(**uintptr)(__ccgo_up(ppStmt)) = **(**uintptr)(__ccgo_up(bp)) return rc } func _fts5PutU16(tls *libc.TLS, aOut uintptr, iVal Tu16) { **(**Tu8)(__ccgo_up(aOut)) = uint8(int32(iVal) >> libc.Int32FromInt32(8)) **(**Tu8)(__ccgo_up(aOut + 1)) = uint8(int32(iVal) & libc.Int32FromInt32(0xFF)) } // C documentation // // /* // ** Fts5SegIter.iLeafOffset currently points to the first byte of a // ** position-list size field. Read the value of the field and store it // ** in the following variables: // ** // ** Fts5SegIter.nPos // ** Fts5SegIter.bDel // ** // ** Leave Fts5SegIter.iLeafOffset pointing to the first byte of the // ** position list content (if any). // */ func _fts5SegIterLoadNPos(tls *libc.TLS, p uintptr, pIter uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var iEod, iOff, v1 int32 var _ /* nSz at bp+0 */ int32 _, _, _ = iEod, iOff, v1 if (*TFts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { iOff = int32((*TFts5SegIter)(unsafe.Pointer(pIter)).FiLeafOffset) /* Offset to read at */ if (*TFts5Config)(unsafe.Pointer((*TFts5Index)(unsafe.Pointer(p)).FpConfig)).FeDetail == int32(FTS5_DETAIL_NONE) { if (*TFts5SegIter)(unsafe.Pointer(pIter)).FiEndofDoclist < (*TFts5Data)(unsafe.Pointer((*TFts5SegIter)(unsafe.Pointer(pIter)).FpLeaf)).FszLeaf { v1 = (*TFts5SegIter)(unsafe.Pointer(pIter)).FiEndofDoclist } else { v1 = (*TFts5Data)(unsafe.Pointer((*TFts5SegIter)(unsafe.Pointer(pIter)).FpLeaf)).FszLeaf } iEod = v1 (*TFts5SegIter)(unsafe.Pointer(pIter)).FbDel = uint8(0) (*TFts5SegIter)(unsafe.Pointer(pIter)).FnPos = int32(1) if iOff < iEod && int32(**(**Tu8)(__ccgo_up((*TFts5Data)(unsafe.Pointer((*TFts5SegIter)(unsafe.Pointer(pIter)).FpLeaf)).Fp + uintptr(iOff)))) == 0 { (*TFts5SegIter)(unsafe.Pointer(pIter)).FbDel = uint8(1) iOff = iOff + 1 if iOff < iEod && int32(**(**Tu8)(__ccgo_up((*TFts5Data)(unsafe.Pointer((*TFts5SegIter)(unsafe.Pointer(pIter)).FpLeaf)).Fp + uintptr(iOff)))) == 0 { (*TFts5SegIter)(unsafe.Pointer(pIter)).FnPos = int32(1) iOff = iOff + 1 } else { (*TFts5SegIter)(unsafe.Pointer(pIter)).FnPos = 0 } } } else { v1 = iOff iOff = iOff + 1 **(**int32)(__ccgo_up(bp)) = int32(**(**Tu8)(__ccgo_up((*TFts5Data)(unsafe.Pointer((*TFts5SegIter)(unsafe.Pointer(pIter)).FpLeaf)).Fp + uintptr(v1)))) if **(**int32)(__ccgo_up(bp))&int32(0x80) != 0 { iOff = iOff - 1 iOff = iOff + _sqlite3Fts5GetVarint32(tls, (*TFts5Data)(unsafe.Pointer((*TFts5SegIter)(unsafe.Pointer(pIter)).FpLeaf)).Fp+uintptr(iOff), bp) } (*TFts5SegIter)(unsafe.Pointer(pIter)).FbDel = uint8(**(**int32)(__ccgo_up(bp)) & libc.Int32FromInt32(0x0001)) (*TFts5SegIter)(unsafe.Pointer(pIter)).FnPos = **(**int32)(__ccgo_up(bp)) >> int32(1) } (*TFts5SegIter)(unsafe.Pointer(pIter)).FiLeafOffset = int64(iOff) } } // C documentation // // /* // ** Implementation of fts5_source_id() function. // */ func _fts5SourceIdFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apUnused uintptr) { _ = nArg _ = apUnused Xsqlite3_result_text(tls, pCtx, __ccgo_ts+41746, -int32(1), uintptr(-libc.Int32FromInt32(1))) } // C documentation // // /* // ** This function is called to handle an FTS INSERT command. In other words, // ** an INSERT statement of the form: // ** // ** INSERT INTO fts(fts) VALUES($pCmd) // ** INSERT INTO fts(fts, rank) VALUES($pCmd, $pVal) // ** // ** Argument pVal is the value assigned to column "fts" by the INSERT // ** statement. This function returns SQLITE_OK if successful, or an SQLite // ** error code if an error occurs. // ** // ** The commands implemented by this function are documented in the "Special // ** INSERT Directives" section of the documentation. It should be updated if // ** more commands are added to this function. // */ func _fts5SpecialInsert(tls *libc.TLS, pTab uintptr, zCmd uintptr, pVal uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var bLoadConfig, iArg, nMerge, rc int32 var pConfig uintptr var _ /* bError at bp+0 */ int32 _, _, _, _, _ = bLoadConfig, iArg, nMerge, pConfig, rc pConfig = (*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig rc = SQLITE_OK **(**int32)(__ccgo_up(bp)) = 0 bLoadConfig = 0 if 0 == Xsqlite3_stricmp(tls, __ccgo_ts+41235, zCmd) { if (*TFts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL { _fts5SetVtabError(tls, pTab, __ccgo_ts+41246, 0) rc = int32(SQLITE_ERROR) } else { rc = _sqlite3Fts5StorageDeleteAll(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } bLoadConfig = int32(1) } else { if 0 == Xsqlite3_stricmp(tls, __ccgo_ts+41326, zCmd) { if _fts5IsContentless(tls, pTab, int32(1)) != 0 { _fts5SetVtabError(tls, pTab, __ccgo_ts+41334, 0) rc = int32(SQLITE_ERROR) } else { rc = _sqlite3Fts5StorageRebuild(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } bLoadConfig = int32(1) } else { if 0 == Xsqlite3_stricmp(tls, __ccgo_ts+19874, zCmd) { rc = _sqlite3Fts5StorageOptimize(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).FpStorage) } else { if 0 == Xsqlite3_stricmp(tls, __ccgo_ts+41390, zCmd) { nMerge = Xsqlite3_value_int(tls, pVal) rc = _sqlite3Fts5StorageMerge(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).FpStorage, nMerge) } else { if 0 == Xsqlite3_stricmp(tls, __ccgo_ts+41396, zCmd) { iArg = Xsqlite3_value_int(tls, pVal) rc = _sqlite3Fts5StorageIntegrity(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).FpStorage, iArg) } else { if 0 == Xsqlite3_stricmp(tls, __ccgo_ts+41412, zCmd) { rc = _sqlite3Fts5FlushToDisk(tls, pTab) } else { rc = _sqlite3Fts5FlushToDisk(tls, pTab) if rc == SQLITE_OK { rc = _sqlite3Fts5IndexLoadConfig(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex) } if rc == SQLITE_OK { rc = _sqlite3Fts5ConfigSetValue(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig, zCmd, pVal, bp) } if rc == SQLITE_OK { if **(**int32)(__ccgo_up(bp)) != 0 { rc = int32(SQLITE_ERROR) } else { rc = _sqlite3Fts5StorageConfigValue(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).FpStorage, zCmd, pVal, 0) } } } } } } } } if rc == SQLITE_OK && bLoadConfig != 0 { (*TFts5Config)(unsafe.Pointer((*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig)).FiCookie = (*TFts5Config)(unsafe.Pointer((*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpConfig)).FiCookie - 1 rc = _sqlite3Fts5IndexLoadConfig(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex) } return rc } // C documentation // // /* // ** Process a "special" query. A special query is identified as one with a // ** MATCH expression that begins with a '*' character. The remainder of // ** the text passed to the MATCH operator are used as the special query // ** parameters. // */ func _fts5SpecialMatch(tls *libc.TLS, pTab uintptr, pCsr uintptr, zQuery uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var n, rc int32 var z uintptr _, _, _ = n, rc, z rc = SQLITE_OK /* Return code */ z = zQuery /* Number of bytes in text at z */ for int32(**(**int8)(__ccgo_up(z))) == int32(' ') { z = z + 1 } n = 0 for { if !(**(**int8)(__ccgo_up(z + uintptr(n))) != 0 && int32(**(**int8)(__ccgo_up(z + uintptr(n)))) != int32(' ')) { break } goto _1 _1: ; n = n + 1 } (*TFts5Cursor)(unsafe.Pointer(pCsr)).FePlan = int32(FTS5_PLAN_SPECIAL) if n == int32(5) && 0 == Xsqlite3_strnicmp(tls, __ccgo_ts+41056, z, n) { (*TFts5Cursor)(unsafe.Pointer(pCsr)).FiSpecial = int64(_sqlite3Fts5IndexReads(tls, (*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.FpIndex)) } else { if n == int32(2) && 0 == Xsqlite3_strnicmp(tls, __ccgo_ts+6865, z, n) { (*TFts5Cursor)(unsafe.Pointer(pCsr)).FiSpecial = (*TFts5Cursor)(unsafe.Pointer(pCsr)).FiCsrId } else { /* An unrecognized directive. Return an error message. */ (*TFts5FullTable)(unsafe.Pointer(pTab)).Fp.Fbase.FzErrMsg = Xsqlite3_mprintf(tls, __ccgo_ts+41062, libc.VaList(bp+8, n, z)) rc = int32(SQLITE_ERROR) } } return rc } func _fts5StorageCount(tls *libc.TLS, p uintptr, zSuffix uintptr, pnRow uintptr) (r int32) { bp := tls.Alloc(48) defer tls.Free(48) var pConfig, zSql uintptr var rc int32 var _ /* pCnt at bp+0 */ uintptr _, _, _ = pConfig, rc, zSql pConfig = (*TFts5Storage)(unsafe.Pointer(p)).FpConfig zSql = Xsqlite3_mprintf(tls, __ccgo_ts+43039, libc.VaList(bp+16, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName, zSuffix)) if zSql == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { **(**uintptr)(__ccgo_up(bp)) = uintptr(0) rc = Xsqlite3_prepare_v2(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, zSql, -int32(1), bp, uintptr(0)) if rc == SQLITE_OK { if int32(SQLITE_ROW) == Xsqlite3_step(tls, **(**uintptr)(__ccgo_up(bp))) { **(**Ti64)(__ccgo_up(pnRow)) = Xsqlite3_column_int64(tls, **(**uintptr)(__ccgo_up(bp)), 0) } rc = Xsqlite3_finalize(tls, **(**uintptr)(__ccgo_up(bp))) } } Xsqlite3_free(tls, zSql) return rc } func _fts5StorageRenameOne(tls *libc.TLS, pConfig uintptr, pRc uintptr, zTail uintptr, zName uintptr) { bp := tls.Alloc(48) defer tls.Free(48) if **(**int32)(__ccgo_up(pRc)) == SQLITE_OK { **(**int32)(__ccgo_up(pRc)) = _fts5ExecPrintf(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), __ccgo_ts+42683, libc.VaList(bp+8, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName, zTail, zName, zTail)) } } func _fts5UsePatternMatch(tls *libc.TLS, pConfig uintptr, p uintptr) (r int32) { if (*TFts5Config)(unsafe.Pointer(pConfig)).Ft.FePattern == int32(FTS5_PATTERN_GLOB) && int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(FTS5_PATTERN_GLOB) { return int32(1) } if (*TFts5Config)(unsafe.Pointer(pConfig)).Ft.FePattern == int32(FTS5_PATTERN_LIKE) && (int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(FTS5_PATTERN_LIKE) || int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(FTS5_PATTERN_GLOB)) { return int32(1) } return 0 } // C documentation // // /* // ** Return the value in pVal interpreted as utf-8 text. Except, if pVal // ** contains a NULL value, return a pointer to a static string zero // ** bytes in length instead of a NULL pointer. // */ func _fts5ValueToText(tls *libc.TLS, pVal uintptr) (r uintptr) { var zRet, v1 uintptr _, _ = zRet, v1 zRet = Xsqlite3_value_text(tls, pVal) if zRet != 0 { v1 = zRet } else { v1 = __ccgo_ts + 1711 } return v1 } // C documentation // // /* // ** Implementation of the xBestIndex method. // ** // ** Only constraints of the form: // ** // ** term <= ? // ** term == ? // ** term >= ? // ** // ** are interpreted. Less-than and less-than-or-equal are treated // ** identically, as are greater-than and greater-than-or-equal. // */ func _fts5VocabBestIndexMethod(tls *libc.TLS, pUnused uintptr, pInfo uintptr) (r int32) { var i, iTermEq, iTermGe, iTermLe, idxNum, nArg, v2 int32 var p uintptr _, _, _, _, _, _, _, _ = i, iTermEq, iTermGe, iTermLe, idxNum, nArg, p, v2 iTermEq = -int32(1) iTermGe = -int32(1) iTermLe = -int32(1) idxNum = int32((*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FcolUsed) nArg = 0 _ = pUnused i = 0 for { if !(i < (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FnConstraint) { break } p = (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FaConstraint + uintptr(i)*12 if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fusable) == 0 { goto _1 } if (*Tsqlite3_index_constraint)(unsafe.Pointer(p)).FiColumn == 0 { /* term column */ if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(SQLITE_INDEX_CONSTRAINT_EQ) { iTermEq = i } if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(SQLITE_INDEX_CONSTRAINT_LE) { iTermLe = i } if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(SQLITE_INDEX_CONSTRAINT_LT) { iTermLe = i } if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(SQLITE_INDEX_CONSTRAINT_GE) { iTermGe = i } if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(SQLITE_INDEX_CONSTRAINT_GT) { iTermGe = i } } goto _1 _1: ; i = i + 1 } if iTermEq >= 0 { idxNum = idxNum | int32(FTS5_VOCAB_TERM_EQ) nArg = nArg + 1 v2 = nArg (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FaConstraintUsage + uintptr(iTermEq)*8))).FargvIndex = v2 (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FestimatedCost = libc.Float64FromInt32(100) } else { (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FestimatedCost = libc.Float64FromInt32(1000000) if iTermGe >= 0 { idxNum = idxNum | int32(FTS5_VOCAB_TERM_GE) nArg = nArg + 1 v2 = nArg (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FaConstraintUsage + uintptr(iTermGe)*8))).FargvIndex = v2 (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FestimatedCost = (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FestimatedCost / libc.Float64FromInt32(2) } if iTermLe >= 0 { idxNum = idxNum | int32(FTS5_VOCAB_TERM_LE) nArg = nArg + 1 v2 = nArg (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FaConstraintUsage + uintptr(iTermLe)*8))).FargvIndex = v2 (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FestimatedCost = (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FestimatedCost / libc.Float64FromInt32(2) } } /* This virtual table always delivers results in ascending order of ** the "term" column (column 0). So if the user has requested this ** specifically - "ORDER BY term" or "ORDER BY term ASC" - set the ** sqlite3_index_info.orderByConsumed flag to tell the core the results ** are already in sorted order. */ if (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FnOrderBy == int32(1) && (**(**Tsqlite3_index_orderby)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FaOrderBy))).FiColumn == 0 && int32((**(**Tsqlite3_index_orderby)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FaOrderBy))).Fdesc) == 0 { (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).ForderByConsumed = int32(1) } (*Tsqlite3_index_info)(unsafe.Pointer(pInfo)).FidxNum = idxNum return SQLITE_OK } // C documentation // // /* // ** Translate a string containing an fts5vocab table type to an // ** FTS5_VOCAB_XXX constant. If successful, set *peType to the output // ** value and return SQLITE_OK. Otherwise, set *pzErr to an error message // ** and return SQLITE_ERROR. // */ func _fts5VocabTableType(tls *libc.TLS, zType uintptr, pzErr uintptr, peType uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var zCopy uintptr var _ /* rc at bp+0 */ int32 _ = zCopy **(**int32)(__ccgo_up(bp)) = SQLITE_OK zCopy = _sqlite3Fts5Strndup(tls, bp, zType, -int32(1)) if **(**int32)(__ccgo_up(bp)) == SQLITE_OK { _sqlite3Fts5Dequote(tls, zCopy) if Xsqlite3_stricmp(tls, zCopy, __ccgo_ts+43456) == 0 { **(**int32)(__ccgo_up(peType)) = FTS5_VOCAB_COL } else { if Xsqlite3_stricmp(tls, zCopy, __ccgo_ts+43460) == 0 { **(**int32)(__ccgo_up(peType)) = int32(FTS5_VOCAB_ROW) } else { if Xsqlite3_stricmp(tls, zCopy, __ccgo_ts+43464) == 0 { **(**int32)(__ccgo_up(peType)) = int32(FTS5_VOCAB_INSTANCE) } else { **(**uintptr)(__ccgo_up(pzErr)) = Xsqlite3_mprintf(tls, __ccgo_ts+43473, libc.VaList(bp+16, zCopy)) **(**int32)(__ccgo_up(bp)) = int32(SQLITE_ERROR) } } } Xsqlite3_free(tls, zCopy) } return **(**int32)(__ccgo_up(bp)) } // C documentation // // /* // ** This function is called whenever processing of the doclist for the // ** last term on leaf page (pWriter->iBtPage) is completed. // ** // ** The doclist-index for that term is currently stored in-memory within the // ** Fts5SegWriter.aDlidx[] array. If it is large enough, this function // ** writes it out to disk. Or, if it is too small to bother with, discards // ** it. // ** // ** Fts5SegWriter.btterm currently contains the first term on page iBtPage. // */ func _fts5WriteFlushBtree(tls *libc.TLS, p uintptr, pWriter uintptr) { var bFlag int32 var z, v1 uintptr _, _, _ = bFlag, z, v1 if (*TFts5SegWriter)(unsafe.Pointer(pWriter)).FiBtPage == 0 { return } bFlag = _fts5WriteFlushDlidx(tls, p, pWriter) if (*TFts5Index)(unsafe.Pointer(p)).Frc == SQLITE_OK { if (*TFts5SegWriter)(unsafe.Pointer(pWriter)).Fbtterm.Fn > 0 { v1 = (*TFts5SegWriter)(unsafe.Pointer(pWriter)).Fbtterm.Fp } else { v1 = __ccgo_ts + 1711 } z = v1 /* The following was already done in fts5WriteInit(): */ /* sqlite3_bind_int(p->pIdxWriter, 1, pWriter->iSegid); */ Xsqlite3_bind_blob(tls, (*TFts5Index)(unsafe.Pointer(p)).FpIdxWriter, int32(2), z, (*TFts5SegWriter)(unsafe.Pointer(pWriter)).Fbtterm.Fn, libc.UintptrFromInt32(0)) Xsqlite3_bind_int64(tls, (*TFts5Index)(unsafe.Pointer(p)).FpIdxWriter, int32(3), int64(bFlag)+int64((*TFts5SegWriter)(unsafe.Pointer(pWriter)).FiBtPage)< (*Tfts5yyParser)(unsafe.Pointer(fts5yypParser)).Ffts5yystack { _fts5yy_pop_parser_stack(tls, fts5yypParser) } /* Here code is inserted which will execute if the parser ** stack every overflows */ /******** Begin %stack_overflow code ******************************************/ _sqlite3Fts5ParseError(tls, pParse, __ccgo_ts+38327, 0) /******** End %stack_overflow code ********************************************/ (*Tfts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse = pParse /* Suppress warning about unused %extra_argument var */ } /* ** Print tracing information for a SHIFT action */ // C documentation // // /* The following function deletes the "minor type" or semantic value // ** associated with a symbol. The symbol can be either a terminal // ** or nonterminal. "fts5yymajor" is the symbol code, and "fts5yypminor" is // ** a pointer to the value to be deleted. The code used to do the // ** deletions is derived from the %destructor and/or %token_destructor // ** directives of the input grammar. // */ func _fts5yy_destructor(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor uint8, fts5yypminor uintptr) { var pParse uintptr _ = pParse pParse = (*Tfts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse switch int32(fts5yymajor) { /* Here is inserted the actions which take place when a ** terminal or non-terminal is destroyed. This can happen ** when the symbol is popped from the stack during a ** reduce or during error processing or when a parser is ** being destroyed before it is finished parsing. ** ** Note: during a reduce, the only symbols destroyed are those ** which appear on the RHS of the rule, but which are *not* used ** inside the C code. */ /********* Begin destructor definitions ***************************************/ case int32(16): /* input */ _ = pParse case int32(17): /* expr */ fallthrough case int32(18): /* cnearset */ fallthrough case int32(19): /* exprlist */ _sqlite3Fts5ParseNodeFree(tls, *(*uintptr)(unsafe.Pointer(fts5yypminor))) case int32(20): /* colset */ fallthrough case int32(21): /* colsetlist */ Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(fts5yypminor))) case int32(22): /* nearset */ fallthrough case int32(23): /* nearphrases */ _sqlite3Fts5ParseNearsetFree(tls, *(*uintptr)(unsafe.Pointer(fts5yypminor))) case int32(24): /* phrase */ _sqlite3Fts5ParsePhraseFree(tls, *(*uintptr)(unsafe.Pointer(fts5yypminor))) break /********* End destructor definitions *****************************************/ fallthrough default: break /* If no destructor action specified: do nothing */ } } // C documentation // // /* // ** Find the appropriate action for a parser given the non-terminal // ** look-ahead token iLookAhead. // */ func _fts5yy_find_reduce_action(tls *libc.TLS, stateno uint8, iLookAhead uint8) (r uint8) { var i int32 _ = i i = int32(_fts5yy_reduce_ofst[stateno]) i = i + int32(iLookAhead) return _fts5yy_action[i] } // C documentation // // /* // ** Find the appropriate action for a parser given the terminal // ** look-ahead token iLookAhead. // */ func _fts5yy_find_shift_action(tls *libc.TLS, iLookAhead uint8, stateno uint8) (r uint8) { var i int32 _ = i if int32(stateno) > int32(fts5YY_MAX_SHIFT) { return stateno } for cond := true; cond; cond = int32(1) != 0 { i = int32(_fts5yy_shift_ofst[stateno]) i = i + int32(iLookAhead) if int32(_fts5yy_lookahead[i]) != int32(iLookAhead) { return _fts5yy_default[stateno] } else { return _fts5yy_action[i] } } return r } // C documentation // // /* // ** The following code executes when a syntax error first occurs. // */ func _fts5yy_syntax_error(tls *libc.TLS, fts5yypParser uintptr, fts5yymajor int32, fts5yyminor TFts5Token) { bp := tls.Alloc(32) defer tls.Free(32) var pParse uintptr _ = pParse pParse = (*Tfts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse /************ Begin %syntax_error code ****************************************/ _ = fts5yymajor /* Silence a compiler warning */ _sqlite3Fts5ParseError(tls, pParse, __ccgo_ts+38355, libc.VaList(bp+8, fts5yyminor.Fn, fts5yyminor.Fp)) /************ End %syntax_error code ******************************************/ (*Tfts5yyParser)(unsafe.Pointer(fts5yypParser)).FpParse = pParse /* Suppress warning about unused %extra_argument variable */ } // C documentation // // /* // ** Insert all segments and events for polygon pPoly. // */ func _geopolyAddSegments(tls *libc.TLS, p uintptr, pPoly uintptr, side uint8) { var i uint32 var x uintptr _, _ = i, x i = uint32(0) for { if !(i < uint32((*TGeoPoly)(unsafe.Pointer(pPoly)).FnVertex)-uint32(1)) { break } x = pPoly + 8 + uintptr(i*uint32(2))*4 _geopolyAddOneSegment(tls, p, **(**TGeoCoord)(__ccgo_up(x)), **(**TGeoCoord)(__ccgo_up(x + 1*4)), **(**TGeoCoord)(__ccgo_up(x + 2*4)), **(**TGeoCoord)(__ccgo_up(x + 3*4)), side, i) goto _1 _1: ; i = i + 1 } x = pPoly + 8 + uintptr(i*uint32(2))*4 _geopolyAddOneSegment(tls, p, **(**TGeoCoord)(__ccgo_up(x)), **(**TGeoCoord)(__ccgo_up(x + 1*4)), **(**TGeoCoord)(__ccgo_up(pPoly + 8)), **(**TGeoCoord)(__ccgo_up(pPoly + 8 + 1*4)), side, i) } // C documentation // // /* // ** Rtree virtual table module xBestIndex method. There are three // ** table scan strategies to choose from (in order from most to // ** least desirable): // ** // ** idxNum idxStr Strategy // ** ------------------------------------------------ // ** 1 "rowid" Direct lookup by rowid. // ** 2 "rtree" R-tree overlap query using geopoly_overlap() // ** 3 "rtree" R-tree within query using geopoly_within() // ** 4 "fullscan" full-table scan. // ** ------------------------------------------------ // */ func _geopolyBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) (r int32) { var iFuncTerm, iRowidTerm, idxNum, ii int32 var p uintptr _, _, _, _, _ = iFuncTerm, iRowidTerm, idxNum, ii, p iRowidTerm = -int32(1) iFuncTerm = -int32(1) idxNum = 0 _ = tab ii = 0 for { if !(ii < (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnConstraint) { break } p = (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraint + uintptr(ii)*12 if !((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fusable != 0) { goto _1 } if (*Tsqlite3_index_constraint)(unsafe.Pointer(p)).FiColumn < 0 && int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) == int32(SQLITE_INDEX_CONSTRAINT_EQ) { iRowidTerm = ii break } if (*Tsqlite3_index_constraint)(unsafe.Pointer(p)).FiColumn == 0 && int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) >= int32(SQLITE_INDEX_CONSTRAINT_FUNCTION) { /* p->op==SQLITE_INDEX_CONSTRAINT_FUNCTION for geopoly_overlap() ** p->op==(SQLITE_INDEX_CONTRAINT_FUNCTION+1) for geopoly_within(). ** See geopolyFindFunction() */ iFuncTerm = ii idxNum = int32((*Tsqlite3_index_constraint)(unsafe.Pointer(p)).Fop) - int32(SQLITE_INDEX_CONSTRAINT_FUNCTION) + int32(2) } goto _1 _1: ; ii = ii + 1 } if iRowidTerm >= 0 { (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = int32(1) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = __ccgo_ts + 19186 (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iRowidTerm)*8))).FargvIndex = int32(1) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iRowidTerm)*8))).Fomit = uint8(1) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = float64(30) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(1) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxFlags = int32(SQLITE_INDEX_SCAN_UNIQUE) return SQLITE_OK } if iFuncTerm >= 0 { (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = idxNum (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = __ccgo_ts + 31210 (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iFuncTerm)*8))).FargvIndex = int32(1) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(iFuncTerm)*8))).Fomit = uint8(0) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = float64(300) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(10) return SQLITE_OK } (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = int32(4) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxStr = __ccgo_ts + 31216 (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = float64(3e+06) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(100000) return SQLITE_OK } // C documentation // // /* // ** Report that geopoly_overlap() is an overloaded function suitable // ** for use in xBestIndex. // */ func _geopolyFindFunction(tls *libc.TLS, pVtab uintptr, nArg int32, zName uintptr, __ccgo_fp_pxFunc uintptr, ppArg uintptr) (r int32) { _ = pVtab _ = nArg if Xsqlite3_stricmp(tls, zName, __ccgo_ts+31265) == 0 { **(**uintptr)(__ccgo_up(__ccgo_fp_pxFunc)) = __ccgo_fp(_geopolyOverlapFunc) **(**uintptr)(__ccgo_up(ppArg)) = uintptr(0) return int32(SQLITE_INDEX_CONSTRAINT_FUNCTION) } if Xsqlite3_stricmp(tls, zName, __ccgo_ts+31281) == 0 { **(**uintptr)(__ccgo_up(__ccgo_fp_pxFunc)) = __ccgo_fp(_geopolyWithinFunc) **(**uintptr)(__ccgo_up(ppArg)) = uintptr(0) return libc.Int32FromInt32(SQLITE_INDEX_CONSTRAINT_FUNCTION) + libc.Int32FromInt32(1) } return 0 } // C documentation // // /* // ** SQL function: geopoly_json(X) // ** // ** Interpret X as a polygon and render it as a JSON array // ** of coordinates. Or, if X is not a valid polygon, return NULL. // */ func _geopolyJsonFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { bp := tls.Alloc(32) defer tls.Free(32) var db, p, x uintptr var i int32 _, _, _, _ = db, i, p, x p = _geopolyFuncParam(tls, context, **(**uintptr)(__ccgo_up(argv)), uintptr(0)) _ = argc if p != 0 { db = Xsqlite3_context_db_handle(tls, context) x = Xsqlite3_str_new(tls, db) Xsqlite3_str_append(tls, x, __ccgo_ts+27911, int32(1)) i = 0 for { if !(i < (*TGeoPoly)(unsafe.Pointer(p)).FnVertex) { break } Xsqlite3_str_appendf(tls, x, __ccgo_ts+31074, libc.VaList(bp+8, float64(**(**TGeoCoord)(__ccgo_up(p + 8 + uintptr(i*int32(2))*4))), float64(**(**TGeoCoord)(__ccgo_up(p + 8 + uintptr(i*int32(2)+int32(1))*4))))) goto _1 _1: ; i = i + 1 } Xsqlite3_str_appendf(tls, x, __ccgo_ts+31085, libc.VaList(bp+8, float64(**(**TGeoCoord)(__ccgo_up(p + 8 + uintptr(libc.Int32FromInt32(0)*libc.Int32FromInt32(2))*4))), float64(**(**TGeoCoord)(__ccgo_up(p + 8 + uintptr(libc.Int32FromInt32(0)*libc.Int32FromInt32(2)+libc.Int32FromInt32(1))*4))))) Xsqlite3_result_text(tls, context, Xsqlite3_str_finish(tls, x), -int32(1), __ccgo_fp(Xsqlite3_free)) Xsqlite3_free(tls, p) } } // C documentation // // /* Parse out a number. Write the value into *pVal if pVal!=0. // ** return non-zero on success and zero if the next token is not a number. // */ func _geopolyParseNumber(tls *libc.TLS, p uintptr, pVal uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var c int8 var j, seenDP, seenE, v2 int32 var z uintptr var _ /* r at bp+0 */ float64 _, _, _, _, _, _ = c, j, seenDP, seenE, z, v2 c = _geopolySkipSpace(tls, p) z = (*TGeoParse)(unsafe.Pointer(p)).Fz j = 0 seenDP = 0 seenE = 0 if int32(c) == int32('-') { j = int32(1) c = int8(**(**uint8)(__ccgo_up(z + uintptr(j)))) } if int32(c) == int32('0') && int32(**(**uint8)(__ccgo_up(z + uintptr(j+int32(1))))) >= int32('0') && int32(**(**uint8)(__ccgo_up(z + uintptr(j+int32(1))))) <= int32('9') { return 0 } for { c = int8(**(**uint8)(__ccgo_up(z + uintptr(j)))) if int32(_sqlite3CtypeMap[uint8(c)])&int32(0x04) != 0 { goto _1 } if int32(c) == int32('.') { if int32(**(**uint8)(__ccgo_up(z + uintptr(j-int32(1))))) == int32('-') { return 0 } if seenDP != 0 { return 0 } seenDP = int32(1) goto _1 } if int32(c) == int32('e') || int32(c) == int32('E') { if int32(**(**uint8)(__ccgo_up(z + uintptr(j-int32(1))))) < int32('0') { return 0 } if seenE != 0 { return -int32(1) } v2 = libc.Int32FromInt32(1) seenE = v2 seenDP = v2 c = int8(**(**uint8)(__ccgo_up(z + uintptr(j+int32(1))))) if int32(c) == int32('+') || int32(c) == int32('-') { j = j + 1 c = int8(**(**uint8)(__ccgo_up(z + uintptr(j+int32(1))))) } if int32(c) < int32('0') || int32(c) > int32('9') { return 0 } goto _1 } break goto _1 _1: ; j = j + 1 } if int32(**(**uint8)(__ccgo_up(z + uintptr(j-int32(1))))) < int32('0') { return 0 } if pVal != 0 { _sqlite3AtoF(tls, (*TGeoParse)(unsafe.Pointer(p)).Fz, bp) **(**TGeoCoord)(__ccgo_up(pVal)) = float32(**(**float64)(__ccgo_up(bp))) } **(**uintptr)(__ccgo_up(p)) += uintptr(j) return int32(1) } // C documentation // // /* Skip whitespace. Return the next non-whitespace character. */ func _geopolySkipSpace(tls *libc.TLS, p uintptr) (r int8) { for _geopolyIsSpace[**(**uint8)(__ccgo_up((*TGeoParse)(unsafe.Pointer(p)).Fz))] != 0 { (*TGeoParse)(unsafe.Pointer(p)).Fz = (*TGeoParse)(unsafe.Pointer(p)).Fz + 1 } return int8(**(**uint8)(__ccgo_up((*TGeoParse)(unsafe.Pointer(p)).Fz))) } // C documentation // // /* // ** Get a page from the pager and initialize it. // */ func _getAndInitPage(tls *libc.TLS, pBt uintptr, pgno TPgno, ppPage uintptr, bReadOnly int32) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var pPage uintptr var rc int32 var _ /* pDbPage at bp+0 */ uintptr _, _ = pPage, rc if pgno > _btreePagecount(tls, pBt) { **(**uintptr)(__ccgo_up(ppPage)) = uintptr(0) return _sqlite3CorruptError(tls, int32(75618)) } rc = _sqlite3PagerGet(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, pgno, bp, bReadOnly) if rc != 0 { **(**uintptr)(__ccgo_up(ppPage)) = uintptr(0) return rc } pPage = _sqlite3PagerGetExtra(tls, **(**uintptr)(__ccgo_up(bp))) if int32((*TMemPage)(unsafe.Pointer(pPage)).FisInit) == 0 { _btreePageFromDbPage(tls, **(**uintptr)(__ccgo_up(bp)), pgno, pBt) rc = _btreeInitPage(tls, pPage) if rc != SQLITE_OK { _releasePage(tls, pPage) **(**uintptr)(__ccgo_up(ppPage)) = uintptr(0) return rc } } **(**uintptr)(__ccgo_up(ppPage)) = pPage return SQLITE_OK } // C documentation // // /* // ** Interpret the given string as an auto-vacuum mode value. // ** // ** The following strings, "none", "full" and "incremental" are // ** acceptable, as are their numeric equivalents: 0, 1 and 2 respectively. // */ func _getAutoVacuum(tls *libc.TLS, z uintptr) (r int32) { var i, v1 int32 _, _ = i, v1 if 0 == _sqlite3StrICmp(tls, z, __ccgo_ts+9725) { return BTREE_AUTOVACUUM_NONE } if 0 == _sqlite3StrICmp(tls, z, __ccgo_ts+20250) { return int32(BTREE_AUTOVACUUM_FULL) } if 0 == _sqlite3StrICmp(tls, z, __ccgo_ts+20255) { return int32(BTREE_AUTOVACUUM_INCR) } i = _sqlite3Atoi(tls, z) if i >= 0 && i <= int32(2) { v1 = i } else { v1 = 0 } return int32(uint8(v1)) } // C documentation // // /* // ** Convert zDate into one or more integers according to the conversion // ** specifier zFormat. // ** // ** zFormat[] contains 4 characters for each integer converted, except for // ** the last integer which is specified by three characters. The meaning // ** of a four-character format specifiers ABCD is: // ** // ** A: number of digits to convert. Always "2" or "4". // ** B: minimum value. Always "0" or "1". // ** C: maximum value, decoded as: // ** a: 12 // ** b: 14 // ** c: 24 // ** d: 31 // ** e: 59 // ** f: 9999 // ** D: the separator character, or \000 to indicate this is the // ** last number to convert. // ** // ** Example: To translate an ISO-8601 date YYYY-MM-DD, the format would // ** be "40f-21a-20c". The "40f-" indicates the 4-digit year followed by "-". // ** The "21a-" indicates the 2-digit month followed by "-". The "20c" indicates // ** the 2-digit day which is the last integer in the set. // ** // ** The function returns the number of successful conversions. // */ func _getDigits(tls *libc.TLS, zDate uintptr, zFormat uintptr, va uintptr) (r int32) { var N, min, nextC, v1 int8 var ap Tva_list var cnt, val int32 var max Tu16 _, _, _, _, _, _, _, _ = N, ap, cnt, max, min, nextC, val, v1 cnt = 0 ap = va for cond := true; cond; cond = nextC != 0 { N = int8(int32(**(**int8)(__ccgo_up(zFormat))) - int32('0')) min = int8(int32(**(**int8)(__ccgo_up(zFormat + 1))) - int32('0')) val = 0 max = _aMx[int32(**(**int8)(__ccgo_up(zFormat + 2)))-int32('a')] nextC = **(**int8)(__ccgo_up(zFormat + 3)) val = 0 for { v1 = N N = N - 1 if !(v1 != 0) { break } if !(int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(zDate)))])&libc.Int32FromInt32(0x04) != 0) { goto end_getDigits } val = val*int32(10) + int32(**(**int8)(__ccgo_up(zDate))) - int32('0') zDate = zDate + 1 } if val < int32(min) || val > int32(max) || int32(nextC) != 0 && int32(nextC) != int32(**(**int8)(__ccgo_up(zDate))) { goto end_getDigits } **(**int32)(__ccgo_up(libc.VaUintptr(&ap))) = val zDate = zDate + 1 cnt = cnt + 1 zFormat = zFormat + uintptr(4) } goto end_getDigits end_getDigits: ; _ = ap return cnt } // C documentation // // /* // ** For a single cell on a btree page, compute the number of bytes of // ** content (payload) stored on that page. That is to say, compute the // ** number of bytes of content not found on overflow pages. // */ func _getLocalPayload(tls *libc.TLS, nUsable int32, flags Tu8, nTotal int32) (r int32) { var nLocal, nMaxLocal, nMinLocal int32 _, _, _ = nLocal, nMaxLocal, nMinLocal if int32(flags) == int32(0x0D) { /* Table leaf node */ nMinLocal = (nUsable-int32(12))*int32(32)/int32(255) - int32(23) nMaxLocal = nUsable - int32(35) } else { /* Index interior and leaf nodes */ nMinLocal = (nUsable-int32(12))*int32(32)/int32(255) - int32(23) nMaxLocal = (nUsable-int32(12))*int32(64)/int32(255) - int32(23) } nLocal = nMinLocal + (nTotal-nMinLocal)%(nUsable-int32(4)) if nLocal > nMaxLocal { nLocal = nMinLocal } return nLocal } // C documentation // // /* // ** Interpret the given string as a locking mode value. // */ func _getLockingMode(tls *libc.TLS, z uintptr) (r int32) { if z != 0 { if 0 == _sqlite3StrICmp(tls, z, __ccgo_ts+5159) { return int32(PAGER_LOCKINGMODE_EXCLUSIVE) } if 0 == _sqlite3StrICmp(tls, z, __ccgo_ts+20243) { return PAGER_LOCKINGMODE_NORMAL } } return -int32(1) } // C documentation // // /* // ** Return non-zero if the bit in the IntegrityCk.aPgRef[] array that // ** corresponds to page iPg is already set. // */ func _getPageReferenced(tls *libc.TLS, pCheck uintptr, iPg TPgno) (r int32) { return int32(**(**Tu8)(__ccgo_up((*TIntegrityCk)(unsafe.Pointer(pCheck)).FaPgRef + uintptr(iPg/uint32(8))))) & (int32(1) << (iPg & uint32(0x07))) } // C documentation // // /* // ** Interpret the given string as a temp db location. Return 1 for file // ** backed temporary databases, 2 for the Red-Black tree in memory database // ** and 0 to use the compile-time default. // */ func _getTempStore(tls *libc.TLS, z uintptr) (r int32) { if int32(**(**int8)(__ccgo_up(z))) >= int32('0') && int32(**(**int8)(__ccgo_up(z))) <= int32('2') { return int32(**(**int8)(__ccgo_up(z))) - int32('0') } else { if _sqlite3StrICmp(tls, z, __ccgo_ts+19215) == 0 { return int32(1) } else { if _sqlite3StrICmp(tls, z, __ccgo_ts+20267) == 0 { return int32(2) } else { return 0 } } } return r } func _groupConcatValue(tls *libc.TLS, context uintptr) { var pAccum, pGCC, zText uintptr _, _, _ = pAccum, pGCC, zText pGCC = Xsqlite3_aggregate_context(tls, context, 0) if pGCC != 0 { pAccum = pGCC if int32((*TStrAccum)(unsafe.Pointer(pAccum)).FaccError) == int32(SQLITE_TOOBIG) { Xsqlite3_result_error_toobig(tls, context) } else { if int32((*TStrAccum)(unsafe.Pointer(pAccum)).FaccError) == int32(SQLITE_NOMEM) { Xsqlite3_result_error_nomem(tls, context) } else { if (*TGroupConcatCtx)(unsafe.Pointer(pGCC)).FnAccum > 0 && (*TStrAccum)(unsafe.Pointer(pAccum)).FnChar == uint32(0) { Xsqlite3_result_text(tls, context, __ccgo_ts+1711, int32(1), libc.UintptrFromInt32(0)) } else { zText = Xsqlite3_str_value(tls, pAccum) Xsqlite3_result_text(tls, context, zText, int32((*TStrAccum)(unsafe.Pointer(pAccum)).FnChar), uintptr(-libc.Int32FromInt32(1))) } } } } } // C documentation // // /* // ** This function is called after transitioning from PAGER_UNLOCK to // ** PAGER_SHARED state. It tests if there is a hot journal present in // ** the file-system for the given pager. A hot journal is one that // ** needs to be played back. According to this function, a hot-journal // ** file exists if the following criteria are met: // ** // ** * The journal file exists in the file system, and // ** * No process holds a RESERVED or greater lock on the database file, and // ** * The database file itself is greater than 0 bytes in size, and // ** * The first byte of the journal file exists and is not 0x00. // ** // ** If the current size of the database file is 0 but a journal file // ** exists, that is probably an old journal left over from a prior // ** database with the same name. In this case the journal file is // ** just deleted using OsDelete, *pExists is set to 0 and SQLITE_OK // ** is returned. // ** // ** This routine does not check if there is a super-journal filename // ** at the end of the file. If there is, and that super-journal file // ** does not exist, then the journal file is not really hot. In this // ** case this routine will return a false-positive. The pager_playback() // ** routine will discover that the journal file is not really hot and // ** will not roll it back. // ** // ** If a hot-journal file is found to exist, *pExists is set to 1 and // ** SQLITE_OK returned. If no hot-journal file is present, *pExists is // ** set to 0 and SQLITE_OK returned. If an IO error occurs while trying // ** to determine whether or not a hot-journal file exists, the IO error // ** code is returned and the value of *pExists is undefined. // */ func _hasHotJournal(tls *libc.TLS, pPager uintptr, pExists uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var jrnlOpen, rc int32 var pVfs uintptr var _ /* exists at bp+0 */ int32 var _ /* f at bp+12 */ int32 var _ /* first at bp+16 */ Tu8 var _ /* locked at bp+4 */ int32 var _ /* nPage at bp+8 */ TPgno _, _, _ = jrnlOpen, pVfs, rc pVfs = (*TPager)(unsafe.Pointer(pPager)).FpVfs rc = SQLITE_OK /* Return code */ **(**int32)(__ccgo_up(bp)) = int32(1) /* True if a journal file is present */ jrnlOpen = libc.BoolInt32(!!((*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fjfd)).FpMethods != libc.UintptrFromInt32(0))) **(**int32)(__ccgo_up(pExists)) = 0 if !(jrnlOpen != 0) { rc = _sqlite3OsAccess(tls, pVfs, (*TPager)(unsafe.Pointer(pPager)).FzJournal, SQLITE_ACCESS_EXISTS, bp) } if rc == SQLITE_OK && **(**int32)(__ccgo_up(bp)) != 0 { **(**int32)(__ccgo_up(bp + 4)) = 0 /* True if some process holds a RESERVED lock */ /* Race condition here: Another process might have been holding the ** the RESERVED lock and have a journal open at the sqlite3OsAccess() ** call above, but then delete the journal and drop the lock before ** we get to the following sqlite3OsCheckReservedLock() call. If that ** is the case, this routine might think there is a hot journal when ** in fact there is none. This results in a false-positive which will ** be dealt with by the playback routine. Ticket #3883. */ rc = _sqlite3OsCheckReservedLock(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, bp+4) if rc == SQLITE_OK && !(**(**int32)(__ccgo_up(bp + 4)) != 0) { /* Number of pages in database file */ rc = _pagerPagecount(tls, pPager, bp+8) if rc == SQLITE_OK { /* If the database is zero pages in size, that means that either (1) the ** journal is a remnant from a prior database with the same name where ** the database file but not the journal was deleted, or (2) the initial ** transaction that populates a new database is being rolled back. ** In either case, the journal file can be deleted. However, take care ** not to delete the journal file if it is already open due to ** journal_mode=PERSIST. */ if **(**TPgno)(__ccgo_up(bp + 8)) == uint32(0) && !(jrnlOpen != 0) { _sqlite3BeginBenignMalloc(tls) if _pagerLockDb(tls, pPager, int32(RESERVED_LOCK)) == SQLITE_OK { _sqlite3OsDelete(tls, pVfs, (*TPager)(unsafe.Pointer(pPager)).FzJournal, 0) if !((*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0) { _pagerUnlockDb(tls, pPager, int32(SHARED_LOCK)) } } _sqlite3EndBenignMalloc(tls) } else { /* The journal file exists and no other connection has a reserved ** or greater lock on the database file. Now check that there is ** at least one non-zero bytes at the start of the journal file. ** If there is, then we consider this journal to be hot. If not, ** it can be ignored. */ if !(jrnlOpen != 0) { **(**int32)(__ccgo_up(bp + 12)) = libc.Int32FromInt32(SQLITE_OPEN_READONLY) | libc.Int32FromInt32(SQLITE_OPEN_MAIN_JOURNAL) rc = _sqlite3OsOpen(tls, pVfs, (*TPager)(unsafe.Pointer(pPager)).FzJournal, (*TPager)(unsafe.Pointer(pPager)).Fjfd, **(**int32)(__ccgo_up(bp + 12)), bp+12) } if rc == SQLITE_OK { **(**Tu8)(__ccgo_up(bp + 16)) = uint8(0) rc = _sqlite3OsRead(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd, bp+16, int32(1), 0) if rc == libc.Int32FromInt32(SQLITE_IOERR)|libc.Int32FromInt32(2)<= (*TMemPage)(unsafe.Pointer(pPage)).FaDataEnd { return int32(99) } c = (*(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{__ccgo_fp_xRecordCompare})))(tls, nCell, pCell+1, pIdxKey) } else { if v2 = !(int32(**(**Tu8)(__ccgo_up(pCell + 1)))&libc.Int32FromInt32(0x80) != 0); v2 { v1 = nCell&libc.Int32FromInt32(0x7f)<= (*TMemPage)(unsafe.Pointer(pPage)).FaDataEnd { return int32(99) } c = (*(*func(*libc.TLS, int32, uintptr, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{__ccgo_fp_xRecordCompare})))(tls, nCell, pCell+2, pIdxKey) } else { /* If the record extends into overflow pages, do not attempt ** the optimization. */ c = int32(99) } } return c } const _inline = 0 type _ino_t = T_ino_t type _invalid_parameter_handler = T_invalid_parameter_handler // C documentation // // /* // ** This function is called before modifying the contents of a table // ** to invalidate any incrblob cursors that are open on the // ** row or one of the rows being modified. // ** // ** If argument isClearTable is true, then the entire contents of the // ** table is about to be deleted. In this case invalidate all incrblob // ** cursors open on any row within the table with root-page pgnoRoot. // ** // ** Otherwise, if argument isClearTable is false, then the row with // ** rowid iRow is being replaced or deleted. In this case invalidate // ** only those incrblob cursors open on that specific row. // */ func _invalidateIncrblobCursors(tls *libc.TLS, pBtree uintptr, pgnoRoot TPgno, iRow Ti64, isClearTable int32) { var p uintptr _ = p (*TBtree)(unsafe.Pointer(pBtree)).FhasIncrblobCur = uint8(0) p = (*TBtShared)(unsafe.Pointer((*TBtree)(unsafe.Pointer(pBtree)).FpBt)).FpCursor for { if !(p != 0) { break } if int32((*TBtCursor)(unsafe.Pointer(p)).FcurFlags)&int32(BTCF_Incrblob) != 0 { (*TBtree)(unsafe.Pointer(pBtree)).FhasIncrblobCur = uint8(1) if (*TBtCursor)(unsafe.Pointer(p)).FpgnoRoot == pgnoRoot && (isClearTable != 0 || (*TBtCursor)(unsafe.Pointer(p)).Finfo.FnKey == iRow) { (*TBtCursor)(unsafe.Pointer(p)).FeState = uint8(CURSOR_INVALID) } } goto _1 _1: ; p = (*TBtCursor)(unsafe.Pointer(p)).FpNext } } // C documentation // // /* // ** Invoke the profile callback. This routine is only called if we already // ** know that the profile callback is defined and needs to be invoked. // */ func _invokeProfileCallback(tls *libc.TLS, db uintptr, p uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* iElapse at bp+8 */ Tsqlite3_int64 var _ /* iNow at bp+0 */ Tsqlite3_int64 _sqlite3OsCurrentTimeInt64(tls, (*Tsqlite3)(unsafe.Pointer(db)).FpVfs, bp) **(**Tsqlite3_int64)(__ccgo_up(bp + 8)) = (**(**Tsqlite3_int64)(__ccgo_up(bp)) - (*TVdbe)(unsafe.Pointer(p)).FstartTime) * int64(1000000) if (*Tsqlite3)(unsafe.Pointer(db)).FxProfile != 0 { (*(*func(*libc.TLS, uintptr, uintptr, Tu64))(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3)(unsafe.Pointer(db)).FxProfile})))(tls, (*Tsqlite3)(unsafe.Pointer(db)).FpProfileArg, (*TVdbe)(unsafe.Pointer(p)).FzSql, uint64(**(**Tsqlite3_int64)(__ccgo_up(bp + 8)))) } if int32((*Tsqlite3)(unsafe.Pointer(db)).FmTrace)&int32(SQLITE_TRACE_PROFILE) != 0 { (*(*func(*libc.TLS, Tu32, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(&(*Tsqlite3)(unsafe.Pointer(db)).Ftrace))})))(tls, uint32(SQLITE_TRACE_PROFILE), (*Tsqlite3)(unsafe.Pointer(db)).FpTraceArg, p, bp+8) } (*TVdbe)(unsafe.Pointer(p)).FstartTime = 0 } /* ** The checkProfileCallback(DB,P) macro checks to see if a profile callback ** is needed, and it invokes the callback if it is needed. */ const _iob = 0 type _iobuf = T_iobuf // C documentation // // /* // ** Parameter zName is the name of a table that is about to be altered // ** (either with ALTER TABLE ... RENAME TO or ALTER TABLE ... ADD COLUMN). // ** If the table is a system table, this function leaves an error message // ** in pParse->zErr (system tables may not be altered) and returns non-zero. // ** // ** Or, if zName is not a system table, zero is returned. // */ func _isAlterableTable(tls *libc.TLS, pParse uintptr, pTab uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) if 0 == Xsqlite3_strnicmp(tls, (*TTable)(unsafe.Pointer(pTab)).FzName, __ccgo_ts+7973, int32(7)) || (*TTable)(unsafe.Pointer(pTab)).FtabFlags&uint32(TF_Eponymous) != uint32(0) || (*TTable)(unsafe.Pointer(pTab)).FtabFlags&uint32(TF_Shadow) != uint32(0) && _sqlite3ReadOnlyShadowTables(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb) != 0 { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+9860, libc.VaList(bp+8, (*TTable)(unsafe.Pointer(pTab)).FzName)) return int32(1) } return 0 } // C documentation // // /* // ** Return true if the pExpr term from the RETURNING clause argument // ** list is of the form "*". Raise an error if the terms if of the // ** form "table.*". // */ func _isAsteriskTerm(tls *libc.TLS, pParse uintptr, pTerm uintptr) (r int32) { if int32((*TExpr)(unsafe.Pointer(pTerm)).Fop) == int32(TK_ASTERISK) { return int32(1) } if int32((*TExpr)(unsafe.Pointer(pTerm)).Fop) != int32(TK_DOT) { return 0 } if int32((*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(pTerm)).FpRight)).Fop) != int32(TK_ASTERISK) { return 0 } _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+23756, 0) return int32(1) } // C documentation // // /* // ** Return true if pTerm is a virtual table LIMIT or OFFSET term. // */ func _isLimitTerm(tls *libc.TLS, pTerm uintptr) (r int32) { return libc.BoolInt32(int32((*TWhereTerm)(unsafe.Pointer(pTerm)).FeMatchOp) >= int32(SQLITE_INDEX_CONSTRAINT_LIMIT) && int32((*TWhereTerm)(unsafe.Pointer(pTerm)).FeMatchOp) <= int32(SQLITE_INDEX_CONSTRAINT_OFFSET)) } // C documentation // // /* // ** Return true if z[] begins with N hexadecimal digits, and write // ** a decoding of those digits into *pVal. Or return false if any // ** one of the first N characters in z[] is not a hexadecimal digit. // */ func _isNHex(tls *libc.TLS, z uintptr, N int32, pVal uintptr) (r int32) { var i int32 var v Tu32 _, _ = i, v v = uint32(0) i = 0 for { if !(i < N) { break } if !(int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(z + uintptr(i))))])&libc.Int32FromInt32(0x08) != 0) { return 0 } v = v<journalOff, assuming a sector // ** size of pPager->sectorSize bytes. // ** // ** i.e for a sector size of 512: // ** // ** Pager.journalOff Return value // ** --------------------------------------- // ** 0 0 // ** 512 512 // ** 100 512 // ** 2000 2048 // ** // */ func _journalHdrOffset(tls *libc.TLS, pPager uintptr) (r Ti64) { var c, offset Ti64 _, _ = c, offset offset = 0 c = (*TPager)(unsafe.Pointer(pPager)).FjournalOff if c != 0 { offset = ((c-int64(1))/int64((*TPager)(unsafe.Pointer(pPager)).FsectorSize) + int64(1)) * int64((*TPager)(unsafe.Pointer(pPager)).FsectorSize) } return offset } // C documentation // // /* // ** Return the number of bytes of JSON5 whitespace at the beginning of // ** the input string z[]. // ** // ** JSON5 whitespace consists of any of the following characters: // ** // ** Unicode UTF-8 Name // ** U+0009 09 horizontal tab // ** U+000a 0a line feed // ** U+000b 0b vertical tab // ** U+000c 0c form feed // ** U+000d 0d carriage return // ** U+0020 20 space // ** U+00a0 c2 a0 non-breaking space // ** U+1680 e1 9a 80 ogham space mark // ** U+2000 e2 80 80 en quad // ** U+2001 e2 80 81 em quad // ** U+2002 e2 80 82 en space // ** U+2003 e2 80 83 em space // ** U+2004 e2 80 84 three-per-em space // ** U+2005 e2 80 85 four-per-em space // ** U+2006 e2 80 86 six-per-em space // ** U+2007 e2 80 87 figure space // ** U+2008 e2 80 88 punctuation space // ** U+2009 e2 80 89 thin space // ** U+200a e2 80 8a hair space // ** U+2028 e2 80 a8 line separator // ** U+2029 e2 80 a9 paragraph separator // ** U+202f e2 80 af narrow no-break space (NNBSP) // ** U+205f e2 81 9f medium mathematical space (MMSP) // ** U+3000 e3 80 80 ideographical space // ** U+FEFF ef bb bf byte order mark // ** // ** In addition, comments between '/', '*' and '*', '/' and // ** from '/', '/' to end-of-line are also considered to be whitespace. // */ func _json5Whitespace(tls *libc.TLS, zIn uintptr) (r int32) { var c, v3 int8 var c1 Tu8 var j, j1, n int32 var z uintptr _, _, _, _, _, _, _ = c, c1, j, j1, n, z, v3 n = 0 z = zIn for int32(1) != 0 { switch int32(**(**Tu8)(__ccgo_up(z + uintptr(n)))) { case int32(0x09): fallthrough case int32(0x0a): fallthrough case int32(0x0b): fallthrough case int32(0x0c): fallthrough case int32(0x0d): fallthrough case int32(0x20): n = n + 1 case int32('/'): if int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(1))))) == int32('*') && int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(2))))) != 0 { j = n + int32(3) for { if !(int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) != int32('/') || int32(**(**Tu8)(__ccgo_up(z + uintptr(j-int32(1))))) != int32('*')) { break } if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == 0 { goto whitespace_done } goto _1 _1: ; j = j + 1 } n = j + int32(1) break } else { if int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(1))))) == int32('/') { j1 = n + int32(2) for { v3 = int8(**(**Tu8)(__ccgo_up(z + uintptr(j1)))) c = v3 if !(int32(v3) != 0) { break } if int32(c) == int32('\n') || int32(c) == int32('\r') { break } if int32(0xe2) == int32(uint8(c)) && int32(0x80) == int32(**(**Tu8)(__ccgo_up(z + uintptr(j1+int32(1))))) && (int32(0xa8) == int32(**(**Tu8)(__ccgo_up(z + uintptr(j1+int32(2))))) || int32(0xa9) == int32(**(**Tu8)(__ccgo_up(z + uintptr(j1+int32(2)))))) { j1 = j1 + int32(2) break } goto _2 _2: ; j1 = j1 + 1 } n = j1 if **(**Tu8)(__ccgo_up(z + uintptr(n))) != 0 { n = n + 1 } break } } goto whitespace_done case int32(0xc2): if int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(1))))) == int32(0xa0) { n = n + int32(2) break } goto whitespace_done case int32(0xe1): if int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(1))))) == int32(0x9a) && int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(2))))) == int32(0x80) { n = n + int32(3) break } goto whitespace_done case int32(0xe2): if int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(1))))) == int32(0x80) { c1 = **(**Tu8)(__ccgo_up(z + uintptr(n+int32(2)))) if int32(c1) < int32(0x80) { goto whitespace_done } if int32(c1) <= int32(0x8a) || int32(c1) == int32(0xa8) || int32(c1) == int32(0xa9) || int32(c1) == int32(0xaf) { n = n + int32(3) break } } else { if int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(1))))) == int32(0x81) && int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(2))))) == int32(0x9f) { n = n + int32(3) break } } goto whitespace_done case int32(0xe3): if int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(1))))) == int32(0x80) && int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(2))))) == int32(0x80) { n = n + int32(3) break } goto whitespace_done case int32(0xef): if int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(1))))) == int32(0xbb) && int32(**(**Tu8)(__ccgo_up(z + uintptr(n+int32(2))))) == int32(0xbf) { n = n + int32(3) break } goto whitespace_done default: goto whitespace_done } } goto whitespace_done whitespace_done: ; return n return r } // C documentation // // /* True if the string is all alphanumerics and underscores */ func _jsonAllAlphanum(tls *libc.TLS, z uintptr, n int32) (r int32) { var i int32 _ = i i = 0 for { if !(i < n && (int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(z + uintptr(i))))])&int32(0x06) != 0 || int32(**(**int8)(__ccgo_up(z + uintptr(i)))) == int32('_'))) { break } goto _1 _1: ; i = i + 1 } return libc.BoolInt32(i == n) } // C documentation // // /* // ** If pArg is a blob that seems like a JSONB blob, then initialize // ** p to point to that JSONB and return TRUE. If pArg does not seem like // ** a JSONB blob, then return FALSE. // ** // ** For small BLOBs (having no more than 7 bytes of payload) a full // ** validity check is done. So for small BLOBs this routine only returns // ** true if the value is guaranteed to be a valid JSONB. For larger BLOBs // ** (8 byte or more of payload) only the size of the outermost element is // ** checked to verify that the BLOB is superficially valid JSONB. // ** // ** A full JSONB validation is done on smaller BLOBs because those BLOBs might // ** also be text JSON that has been incorrectly cast into a BLOB. // ** (See tag-20240123-a and https://sqlite.org/forum/forumpost/012136abd5) // ** If the BLOB is 9 bytes are larger, then it is not possible for the // ** superficial size check done here to pass if the input is really text // ** JSON so we do not need to look deeper in that case. // ** // ** Why we only need to do full JSONB validation for smaller BLOBs: // ** // ** The first byte of valid JSON text must be one of: '{', '[', '"', ' ', '\n', // ** '\r', '\t', '-', or a digit '0' through '9'. Of these, only a subset // ** can also be the first byte of JSONB: '{', '[', and digits '3' // ** through '9'. In every one of those cases, the payload size is 7 bytes // ** or less. So if we do full JSONB validation for every BLOB where the // ** payload is less than 7 bytes, we will never get a false positive for // ** JSONB on an input that is really text JSON. // */ func _jsonArgIsJsonb(tls *libc.TLS, pArg uintptr, p uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var c, v1 Tu8 var n, v3 Tu32 var v2, v4 bool var _ /* sz at bp+0 */ Tu32 _, _, _, _, _, _ = c, n, v1, v2, v3, v4 **(**Tu32)(__ccgo_up(bp)) = uint32(0) if Xsqlite3_value_type(tls, pArg) != int32(SQLITE_BLOB) { return 0 } (*TJsonParse)(unsafe.Pointer(p)).FaBlob = Xsqlite3_value_blob(tls, pArg) (*TJsonParse)(unsafe.Pointer(p)).FnBlob = uint32(Xsqlite3_value_bytes(tls, pArg)) if v2 = (*TJsonParse)(unsafe.Pointer(p)).FnBlob > uint32(0) && (*TJsonParse)(unsafe.Pointer(p)).FaBlob != uintptr(0); v2 { v1 = **(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(p)).FaBlob)) c = v1 } if v4 = v2 && int32(v1)&int32(0x0f) <= int32(JSONB_OBJECT); v4 { v3 = _jsonbPayloadSize(tls, p, uint32(0), bp) n = v3 } if v4 && v3 > uint32(0) && **(**Tu32)(__ccgo_up(bp))+n == (*TJsonParse)(unsafe.Pointer(p)).FnBlob && (int32(c)&int32(0x0f) > int32(JSONB_FALSE) || **(**Tu32)(__ccgo_up(bp)) == uint32(0)) && (**(**Tu32)(__ccgo_up(bp)) > uint32(7) || int32(c) != int32(0x7b) && int32(c) != int32(0x5b) && !(int32(_sqlite3CtypeMap[c])&libc.Int32FromInt32(0x04) != 0) || _jsonbValidityCheck(tls, p, uint32(0), (*TJsonParse)(unsafe.Pointer(p)).FnBlob, uint32(1)) == uint32(0)) { return int32(1) } (*TJsonParse)(unsafe.Pointer(p)).FaBlob = uintptr(0) (*TJsonParse)(unsafe.Pointer(p)).FnBlob = uint32(0) return 0 } // C documentation // // /* // ** Generate a path error. // ** // ** The specifics of the error are determined by the rc argument. // ** // ** rc error // ** ----------------- ---------------------- // ** JSON_LOOKUP_ARRAY "not an array" // ** JSON_LOOKUP_TOODEEP "JSON nested too deep" // ** JSON_LOOKUP_ERROR "malformed JSON" // ** otherwise... "bad JSON path" // ** // ** If ctx is not NULL then push the error message into ctx and return NULL. // ** If ctx is NULL, then return the text of the error message. // */ func _jsonBadPathError(tls *libc.TLS, ctx uintptr, zPath uintptr, rc int32) (r uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var zMsg uintptr _ = zMsg if rc == libc.Int32FromUint32(JSON_LOOKUP_NOTARRAY) { zMsg = Xsqlite3_mprintf(tls, __ccgo_ts+27847, libc.VaList(bp+8, zPath)) } else { if rc == libc.Int32FromUint32(JSON_LOOKUP_ERROR) { zMsg = Xsqlite3_mprintf(tls, __ccgo_ts+27699, 0) } else { if rc == libc.Int32FromUint32(JSON_LOOKUP_TOODEEP) { zMsg = Xsqlite3_mprintf(tls, __ccgo_ts+27872, 0) } else { zMsg = Xsqlite3_mprintf(tls, __ccgo_ts+27891, libc.VaList(bp+8, zPath)) } } } if ctx == uintptr(0) { return zMsg } if zMsg != 0 { Xsqlite3_result_error(tls, ctx, zMsg, -int32(1)) Xsqlite3_free(tls, zMsg) } else { Xsqlite3_result_error_nomem(tls, ctx) } return uintptr(0) } // C documentation // // /* // ** Return the number of escaped newlines to be ignored. // ** An escaped newline is a one of the following byte sequences: // ** // ** 0x5c 0x0a // ** 0x5c 0x0d // ** 0x5c 0x0d 0x0a // ** 0x5c 0xe2 0x80 0xa8 // ** 0x5c 0xe2 0x80 0xa9 // */ func _jsonBytesToBypass(tls *libc.TLS, z uintptr, n Tu32) (r Tu32) { var i Tu32 _ = i i = uint32(0) for i+uint32(1) < n { if int32(**(**int8)(__ccgo_up(z + uintptr(i)))) != int32('\\') { return i } if int32(**(**int8)(__ccgo_up(z + uintptr(i+uint32(1))))) == int32('\n') { i = i + uint32(2) continue } if int32(**(**int8)(__ccgo_up(z + uintptr(i+uint32(1))))) == int32('\r') { if i+uint32(2) < n && int32(**(**int8)(__ccgo_up(z + uintptr(i+uint32(2))))) == int32('\n') { i = i + uint32(3) } else { i = i + uint32(2) } continue } if int32(0xe2) == int32(uint8(**(**int8)(__ccgo_up(z + uintptr(i+uint32(1)))))) && i+uint32(3) < n && int32(0x80) == int32(uint8(**(**int8)(__ccgo_up(z + uintptr(i+uint32(2)))))) && (int32(0xa8) == int32(uint8(**(**int8)(__ccgo_up(z + uintptr(i+uint32(3)))))) || int32(0xa9) == int32(uint8(**(**int8)(__ccgo_up(z + uintptr(i+uint32(3))))))) { i = i + uint32(4) continue } break } return i } // C documentation // // /* // ** Parse a complete JSON string. Return 0 on success or non-zero if there // ** are any errors. If an error occurs, free all memory held by pParse, // ** but not pParse itself. // ** // ** pParse must be initialized to an empty parse object prior to calling // ** this routine. // */ func _jsonConvertTextToBlob(tls *libc.TLS, pParse uintptr, pCtx uintptr) (r int32) { var i int32 var zJson uintptr _, _ = i, zJson zJson = (*TJsonParse)(unsafe.Pointer(pParse)).FzJson i = _jsonTranslateTextToBlob(tls, pParse, uint32(0)) if (*TJsonParse)(unsafe.Pointer(pParse)).Foom != 0 { i = -int32(1) } if i > 0 { for _jsonIsSpace[uint8(**(**int8)(__ccgo_up(zJson + uintptr(i))))] != 0 { i = i + 1 } if **(**int8)(__ccgo_up(zJson + uintptr(i))) != 0 { i = i + _json5Whitespace(tls, zJson+uintptr(i)) if **(**int8)(__ccgo_up(zJson + uintptr(i))) != 0 { if pCtx != 0 { Xsqlite3_result_error(tls, pCtx, __ccgo_ts+27699, -int32(1)) } _jsonParseReset(tls, pParse) return int32(1) } (*TJsonParse)(unsafe.Pointer(pParse)).FhasNonstd = uint8(1) } } if i <= 0 { if pCtx != uintptr(0) { if (*TJsonParse)(unsafe.Pointer(pParse)).Foom != 0 { Xsqlite3_result_error_nomem(tls, pCtx) } else { Xsqlite3_result_error(tls, pCtx, __ccgo_ts+27699, -int32(1)) } } _jsonParseReset(tls, pParse) return int32(1) } return 0 } // C documentation // // /* The query strategy is to look for an equality constraint on the json // ** column. Without such a constraint, the table cannot operate. idxNum is // ** 1 if the constraint is found, 3 if the constraint and zRoot are found, // ** and 0 otherwise. // */ func _jsonEachBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) (r int32) { var aIdx [2]int32 var i, iCol, iMask, idxMask, unusableMask, v1 int32 var pConstraint uintptr _, _, _, _, _, _, _, _ = aIdx, i, iCol, iMask, idxMask, pConstraint, unusableMask, v1 /* Index of constraints for JSON and ROOT */ unusableMask = 0 /* Mask of unusable JSON and ROOT constraints */ idxMask = 0 /* This implementation assumes that JSON and ROOT are the last two ** columns in the table */ _ = tab v1 = -libc.Int32FromInt32(1) aIdx[int32(1)] = v1 aIdx[0] = v1 pConstraint = (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraint i = 0 for { if !(i < (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnConstraint) { break } if (*Tsqlite3_index_constraint)(unsafe.Pointer(pConstraint)).FiColumn < int32(JEACH_JSON) { goto _2 } iCol = (*Tsqlite3_index_constraint)(unsafe.Pointer(pConstraint)).FiColumn - int32(JEACH_JSON) iMask = int32(1) << iCol if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(pConstraint)).Fusable) == 0 { unusableMask = unusableMask | iMask } else { if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(pConstraint)).Fop) == int32(SQLITE_INDEX_CONSTRAINT_EQ) { aIdx[iCol] = i idxMask = idxMask | iMask } } goto _2 _2: ; i = i + 1 pConstraint += 12 } if (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnOrderBy > 0 && (**(**Tsqlite3_index_orderby)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaOrderBy))).FiColumn < 0 && int32((**(**Tsqlite3_index_orderby)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaOrderBy))).Fdesc) == 0 { (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).ForderByConsumed = int32(1) } if unusableMask & ^idxMask != 0 { /* If there are any unusable constraints on JSON or ROOT, then reject ** this entire plan */ return int32(SQLITE_CONSTRAINT) } if aIdx[0] < 0 { /* No JSON input. Leave estimatedCost at the huge value that it was ** initialized to to discourage the query planner from selecting this ** plan. */ (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = 0 } else { (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = float64(1) i = aIdx[0] (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(i)*8))).FargvIndex = int32(1) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(i)*8))).Fomit = uint8(1) if aIdx[int32(1)] < 0 { (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = int32(1) /* Only JSON supplied. Plan 1 */ } else { i = aIdx[int32(1)] (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(i)*8))).FargvIndex = int32(2) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(i)*8))).Fomit = uint8(1) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FidxNum = int32(3) /* Both JSON and ROOT are supplied. Plan 3 */ } } return SQLITE_OK } // C documentation // // /* Return the current rowid value */ func _jsonEachRowid(tls *libc.TLS, cur uintptr, pRowid uintptr) (r int32) { var p uintptr _ = p p = cur **(**Tsqlite_int64)(__ccgo_up(pRowid)) = int64((*TJsonEachCursor)(unsafe.Pointer(p)).FiRowid) return SQLITE_OK } // C documentation // // /* // ** Translate a single byte of Hex into an integer. // ** This routine only gives a correct answer if h really is a valid hexadecimal // ** character: 0..9a..fA..F. But unlike sqlite3HexToInt(), it does not // ** assert() if the digit is not hex. // */ func _jsonHexToInt(tls *libc.TLS, h int32) (r Tu8) { h = h + int32(9)*(int32(1)&(h>>int32(6))) return uint8(h & libc.Int32FromInt32(0xf)) } // C documentation // // /* // ** Convert a 4-byte hex string into an integer // */ func _jsonHexToInt4(tls *libc.TLS, z uintptr) (r Tu32) { var v Tu32 _ = v v = uint32(int32(_jsonHexToInt(tls, int32(**(**int8)(__ccgo_up(z)))))<= uint32(0xc0) { sz = _sqlite3Utf8ReadLimited(tls, zLeft, int32(nLeft), bp) zLeft = zLeft + uintptr(sz) nLeft = nLeft - uint32(sz) } else { zLeft = zLeft + 1 nLeft = nLeft - 1 } } else { n = _jsonUnescapeOneChar(tls, zLeft, nLeft, bp) zLeft = zLeft + uintptr(n) nLeft = nLeft - n } } if nRight == uint32(0) { **(**Tu32)(__ccgo_up(bp + 4)) = uint32(0) } else { if rawRight != 0 || int32(**(**int8)(__ccgo_up(zRight))) != int32('\\') { **(**Tu32)(__ccgo_up(bp + 4)) = uint32(**(**Tu8)(__ccgo_up(zRight))) if **(**Tu32)(__ccgo_up(bp + 4)) >= uint32(0xc0) { sz1 = _sqlite3Utf8ReadLimited(tls, zRight, int32(nRight), bp+4) zRight = zRight + uintptr(sz1) nRight = nRight - uint32(sz1) } else { zRight = zRight + 1 nRight = nRight - 1 } } else { n1 = _jsonUnescapeOneChar(tls, zRight, nRight, bp+4) zRight = zRight + uintptr(n1) nRight = nRight - n1 } } if **(**Tu32)(__ccgo_up(bp)) != **(**Tu32)(__ccgo_up(bp + 4)) { return 0 } if **(**Tu32)(__ccgo_up(bp)) == uint32(0) { return int32(1) } } return r } // C documentation // // /* // ** json_replace(JSON, PATH, VALUE, ...) // ** // ** Replace the value at PATH with VALUE. If PATH does not already exist, // ** this routine is a no-op. If JSON or PATH is malformed, throw an error. // */ func _jsonReplaceFunc(tls *libc.TLS, ctx uintptr, argc int32, argv uintptr) { if argc < int32(1) { return } if argc&int32(1) == 0 { _jsonWrongNumArgs(tls, ctx, __ccgo_ts+18290) return } _jsonInsertIntoBlob(tls, ctx, argc, argv, int32(JEDIT_REPL)) } // C documentation // // /* Make sure there is a zero terminator on p->zBuf[] // ** // ** Return true on success. Return false if an OOM prevents this // ** from happening. // */ func _jsonStringTerminate(tls *libc.TLS, p uintptr) (r int32) { _jsonAppendChar(tls, p, 0) _jsonStringTrimOneChar(tls, p) return libc.BoolInt32(int32((*TJsonString)(unsafe.Pointer(p)).FeErr) == 0) } // C documentation // // /* Remove a single character from the end of the string // */ func _jsonStringTrimOneChar(tls *libc.TLS, p uintptr) { if int32((*TJsonString)(unsafe.Pointer(p)).FeErr) == 0 { (*TJsonString)(unsafe.Pointer(p)).FnUsed = (*TJsonString)(unsafe.Pointer(p)).FnUsed - 1 } } // C documentation // // /* // ** Input z[0..n] defines JSON escape sequence including the leading '\\'. // ** Decode that escape sequence into a single character. Write that // ** character into *piOut. Return the number of bytes in the escape sequence. // ** // ** If there is a syntax error of some kind (for example too few characters // ** after the '\\' to complete the encoding) then *piOut is set to // ** JSON_INVALID_CHAR. // */ func _jsonUnescapeOneChar(tls *libc.TLS, z uintptr, n Tu32, piOut uintptr) (r Tu32) { var nSkip, v, vlo, v1 Tu32 var sz, v3 int32 var v2 bool _, _, _, _, _, _, _ = nSkip, sz, v, vlo, v1, v2, v3 if n < uint32(2) { **(**Tu32)(__ccgo_up(piOut)) = uint32(JSON_INVALID_CHAR) return n } switch int32(uint8(**(**int8)(__ccgo_up(z + 1)))) { case int32('u'): if n < uint32(6) { **(**Tu32)(__ccgo_up(piOut)) = uint32(JSON_INVALID_CHAR) return n } v = _jsonHexToInt4(tls, z+2) if v2 = v&uint32(0xfc00) == uint32(0xd800) && n >= uint32(12) && int32(**(**int8)(__ccgo_up(z + 6))) == int32('\\') && int32(**(**int8)(__ccgo_up(z + 7))) == int32('u'); v2 { v1 = _jsonHexToInt4(tls, z+8) vlo = v1 } if v2 && v1&uint32(0xfc00) == uint32(0xdc00) { **(**Tu32)(__ccgo_up(piOut)) = v&uint32(0x3ff)< uint32(2) && int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(z + 2)))])&int32(0x04) != 0 { v3 = int32(JSON_INVALID_CHAR) } else { v3 = 0 } **(**Tu32)(__ccgo_up(piOut)) = uint32(v3) return uint32(2) case int32('\''): fallthrough case int32('"'): fallthrough case int32('/'): fallthrough case int32('\\'): **(**Tu32)(__ccgo_up(piOut)) = uint32(**(**int8)(__ccgo_up(z + 1))) return uint32(2) case int32('x'): if n < uint32(4) { **(**Tu32)(__ccgo_up(piOut)) = uint32(JSON_INVALID_CHAR) return n } **(**Tu32)(__ccgo_up(piOut)) = uint32(int32(_jsonHexToInt(tls, int32(**(**int8)(__ccgo_up(z + 2)))))<= (*TJsonParse)(unsafe.Pointer(pParse)).FnBlob { **(**Tu32)(__ccgo_up(pSz)) = uint32(0) return uint32(0) } else { v1 = uint8(int32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i)))) >> libc.Int32FromInt32(4)) x = v1 if int32(v1) <= int32(11) { sz = uint32(x) n = uint32(1) } else { if int32(x) == int32(12) { if i+uint32(1) >= (*TJsonParse)(unsafe.Pointer(pParse)).FnBlob { **(**Tu32)(__ccgo_up(pSz)) = uint32(0) return uint32(0) } sz = uint32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i+uint32(1))))) n = uint32(2) } else { if int32(x) == int32(13) { if i+uint32(2) >= (*TJsonParse)(unsafe.Pointer(pParse)).FnBlob { **(**Tu32)(__ccgo_up(pSz)) = uint32(0) return uint32(0) } sz = uint32(int32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i+uint32(1)))))<= (*TJsonParse)(unsafe.Pointer(pParse)).FnBlob { **(**Tu32)(__ccgo_up(pSz)) = uint32(0) return uint32(0) } sz = uint32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i+uint32(1)))))<= (*TJsonParse)(unsafe.Pointer(pParse)).FnBlob || int32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i+uint32(1))))) != 0 || int32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i+uint32(2))))) != 0 || int32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i+uint32(3))))) != 0 || int32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i+uint32(4))))) != 0 { **(**Tu32)(__ccgo_up(pSz)) = uint32(0) return uint32(0) } sz = uint32(**(**Tu8)(__ccgo_up((*TJsonParse)(unsafe.Pointer(pParse)).FaBlob + uintptr(i+uint32(5)))))< int64((*TJsonParse)(unsafe.Pointer(pParse)).FnBlob) && int64(i)+int64(sz)+int64(n) > int64((*TJsonParse)(unsafe.Pointer(pParse)).FnBlob-uint32((*TJsonParse)(unsafe.Pointer(pParse)).Fdelta)) { **(**Tu32)(__ccgo_up(pSz)) = uint32(0) return uint32(0) } **(**Tu32)(__ccgo_up(pSz)) = sz return n } // C documentation // // /* Human-readable names for the JSONB values. The index for each // ** string must correspond to the JSONB_* integer above. // */ var _jsonbType = [17]uintptr{ 0: __ccgo_ts + 1697, 1: __ccgo_ts + 9395, 2: __ccgo_ts + 9400, 3: __ccgo_ts + 7709, 4: __ccgo_ts + 7709, 5: __ccgo_ts + 7704, 6: __ccgo_ts + 7704, 7: __ccgo_ts + 9704, 8: __ccgo_ts + 9704, 9: __ccgo_ts + 9704, 10: __ccgo_ts + 9704, 11: __ccgo_ts + 27636, 12: __ccgo_ts + 27642, 13: __ccgo_ts + 1711, 14: __ccgo_ts + 1711, 15: __ccgo_ts + 1711, 16: __ccgo_ts + 1711, } // C documentation // // /* // ** Check a single element of the JSONB in pParse for validity. // ** // ** The element to be checked starts at offset i and must end at on the // ** last byte before iEnd. // ** // ** Return 0 if everything is correct. Return the 1-based byte offset of the // ** error if a problem is detected. (In other words, if the error is at offset // ** 0, return 1). // */ func _jsonbValidityCheck(tls *libc.TLS, pParse uintptr, i Tu32, iEnd Tu32, iDepth Tu32) (r Tu32) { bp := tls.Alloc(16) defer tls.Free(16) var cnt, j, k, n, sub, sub1, szC Tu32 var seen, x Tu8 var z uintptr var v1 uint32 var _ /* c at bp+4 */ Tu32 var _ /* sz at bp+0 */ Tu32 _, _, _, _, _, _, _, _, _, _, _ = cnt, j, k, n, seen, sub, sub1, szC, x, z, v1 if iDepth > uint32(JSON_MAX_DEPTH) { return i + uint32(1) } **(**Tu32)(__ccgo_up(bp)) = uint32(0) n = _jsonbPayloadSize(tls, pParse, i, bp) if n == uint32(0) { return i + uint32(1) } /* Checked by caller */ if i+n+**(**Tu32)(__ccgo_up(bp)) != iEnd { return i + uint32(1) } /* Checked by caller */ z = (*TJsonParse)(unsafe.Pointer(pParse)).FaBlob x = uint8(int32(**(**Tu8)(__ccgo_up(z + uintptr(i)))) & int32(0x0f)) switch int32(x) { case JSONB_NULL: fallthrough case int32(JSONB_TRUE): fallthrough case int32(JSONB_FALSE): if n+**(**Tu32)(__ccgo_up(bp)) == uint32(1) { v1 = uint32(0) } else { v1 = i + uint32(1) } return v1 case int32(JSONB_INT): if **(**Tu32)(__ccgo_up(bp)) < uint32(1) { return i + uint32(1) } j = i + n if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('-') { j = j + 1 if **(**Tu32)(__ccgo_up(bp)) < uint32(2) { return i + uint32(1) } } k = i + n + **(**Tu32)(__ccgo_up(bp)) for j < k { if int32(_sqlite3CtypeMap[**(**Tu8)(__ccgo_up(z + uintptr(j)))])&int32(0x04) != 0 { j = j + 1 } else { return j + uint32(1) } } return uint32(0) case int32(JSONB_INT5): if **(**Tu32)(__ccgo_up(bp)) < uint32(3) { return i + uint32(1) } j = i + n if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('-') { if **(**Tu32)(__ccgo_up(bp)) < uint32(4) { return i + uint32(1) } j = j + 1 } if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) != int32('0') { return i + uint32(1) } if int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))) != int32('x') && int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))) != int32('X') { return j + uint32(2) } j = j + uint32(2) k = i + n + **(**Tu32)(__ccgo_up(bp)) for j < k { if int32(_sqlite3CtypeMap[**(**Tu8)(__ccgo_up(z + uintptr(j)))])&int32(0x08) != 0 { j = j + 1 } else { return j + uint32(1) } } return uint32(0) case int32(JSONB_FLOAT): fallthrough case int32(JSONB_FLOAT5): seen = uint8(0) /* 0: initial. 1: '.' seen 2: 'e' seen */ if **(**Tu32)(__ccgo_up(bp)) < uint32(2) { return i + uint32(1) } j = i + n k = j + **(**Tu32)(__ccgo_up(bp)) if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('-') { j = j + 1 if **(**Tu32)(__ccgo_up(bp)) < uint32(3) { return i + uint32(1) } } if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('.') { if int32(x) == int32(JSONB_FLOAT) { return j + uint32(1) } if !(int32(_sqlite3CtypeMap[**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))])&libc.Int32FromInt32(0x04) != 0) { return j + uint32(1) } j = j + uint32(2) seen = uint8(1) } else { if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('0') && int32(x) == int32(JSONB_FLOAT) { if j+uint32(3) > k { return j + uint32(1) } if int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))) != int32('.') && int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))) != int32('e') && int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))) != int32('E') { return j + uint32(1) } j = j + 1 } } for { if !(j < k) { break } if int32(_sqlite3CtypeMap[**(**Tu8)(__ccgo_up(z + uintptr(j)))])&int32(0x04) != 0 { goto _2 } if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('.') { if int32(seen) > 0 { return j + uint32(1) } if int32(x) == int32(JSONB_FLOAT) && (j == k-uint32(1) || !(int32(_sqlite3CtypeMap[**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))])&libc.Int32FromInt32(0x04) != 0)) { return j + uint32(1) } seen = uint8(1) goto _2 } if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('e') || int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('E') { if int32(seen) == int32(2) { return j + uint32(1) } if j == k-uint32(1) { return j + uint32(1) } if int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))) == int32('+') || int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))) == int32('-') { j = j + 1 if j == k-uint32(1) { return j + uint32(1) } } seen = uint8(2) goto _2 } return j + uint32(1) goto _2 _2: ; j = j + 1 } if int32(seen) == 0 { return i + uint32(1) } return uint32(0) case int32(JSONB_TEXT): j = i + n k = j + **(**Tu32)(__ccgo_up(bp)) for j < k { if !(_jsonIsOk[**(**Tu8)(__ccgo_up(z + uintptr(j)))] != 0) && int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) != int32('\'') { return j + uint32(1) } j = j + 1 } return uint32(0) case int32(JSONB_TEXTJ): fallthrough case int32(JSONB_TEXT5): j = i + n k = j + **(**Tu32)(__ccgo_up(bp)) for j < k { if !(_jsonIsOk[**(**Tu8)(__ccgo_up(z + uintptr(j)))] != 0) && int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) != int32('\'') { if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) == int32('"') { if int32(x) == int32(JSONB_TEXTJ) { return j + uint32(1) } } else { if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) <= int32(0x1f) { /* Control characters in JSON5 string literals are ok */ if int32(x) == int32(JSONB_TEXTJ) { return j + uint32(1) } } else { if int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) != int32('\\') || j+uint32(1) >= k { return j + uint32(1) } else { if libc.Xstrchr(tls, __ccgo_ts+27788, int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1)))))) != uintptr(0) { j = j + 1 } else { if int32(**(**Tu8)(__ccgo_up(z + uintptr(j+uint32(1))))) == int32('u') { if j+uint32(5) >= k { return j + uint32(1) } if !(_jsonIs4Hex(tls, z+uintptr(j+uint32(2))) != 0) { return j + uint32(1) } j = j + 1 } else { if int32(x) != int32(JSONB_TEXT5) { return j + uint32(1) } else { **(**Tu32)(__ccgo_up(bp + 4)) = uint32(0) szC = _jsonUnescapeOneChar(tls, z+uintptr(j), k-j, bp+4) if **(**Tu32)(__ccgo_up(bp + 4)) == uint32(JSON_INVALID_CHAR) { return j + uint32(1) } j = j + (szC - uint32(1)) } } } } } } } j = j + 1 } return uint32(0) case int32(JSONB_TEXTRAW): return uint32(0) case int32(JSONB_ARRAY): j = i + n k = j + **(**Tu32)(__ccgo_up(bp)) for j < k { **(**Tu32)(__ccgo_up(bp)) = uint32(0) n = _jsonbPayloadSize(tls, pParse, j, bp) if n == uint32(0) { return j + uint32(1) } if j+n+**(**Tu32)(__ccgo_up(bp)) > k { return j + uint32(1) } sub = _jsonbValidityCheck(tls, pParse, j, j+n+**(**Tu32)(__ccgo_up(bp)), iDepth+uint32(1)) if sub != 0 { return sub } j = j + (n + **(**Tu32)(__ccgo_up(bp))) } return uint32(0) case int32(JSONB_OBJECT): cnt = uint32(0) j = i + n k = j + **(**Tu32)(__ccgo_up(bp)) for j < k { **(**Tu32)(__ccgo_up(bp)) = uint32(0) n = _jsonbPayloadSize(tls, pParse, j, bp) if n == uint32(0) { return j + uint32(1) } if j+n+**(**Tu32)(__ccgo_up(bp)) > k { return j + uint32(1) } if cnt&uint32(1) == uint32(0) { x = uint8(int32(**(**Tu8)(__ccgo_up(z + uintptr(j)))) & int32(0x0f)) if int32(x) < int32(JSONB_TEXT) || int32(x) > int32(JSONB_TEXTRAW) { return j + uint32(1) } } sub1 = _jsonbValidityCheck(tls, pParse, j, j+n+**(**Tu32)(__ccgo_up(bp)), iDepth+uint32(1)) if sub1 != 0 { return sub1 } cnt = cnt + 1 j = j + (n + **(**Tu32)(__ccgo_up(bp))) } if cnt&uint32(1) != uint32(0) { return j + uint32(1) } return uint32(0) default: return i + uint32(1) } return r } const _kAddingDocumentSequence = 0 const _kAddingFixedDocument = 2 const _kAddingFixedPage = 4 const _kDocumentSequenceAdded = 1 const _kFixedDocumentAdded = 3 const _kFixedPageAdded = 5 const _kFontAdded = 7 const _kImageAdded = 8 const _kJobConsumption = 1 const _kJobProduction = 0 const _kResourceAdded = 6 const _kXpsDocumentCommitted = 9 // C documentation // // /* Hash table decoded: // ** 0: INSERT // ** 1: IS // ** 2: ROLLBACK TRIGGER // ** 3: IMMEDIATE // ** 4: PARTITION // ** 5: TEMP // ** 6: // ** 7: // ** 8: VALUES WITHOUT // ** 9: // ** 10: MATCH // ** 11: NOTHING // ** 12: // ** 13: OF // ** 14: TIES IGNORE // ** 15: PLAN // ** 16: INSTEAD INDEXED // ** 17: // ** 18: TRANSACTION RIGHT // ** 19: WHEN // ** 20: SET HAVING // ** 21: MATERIALIZED IF // ** 22: ROWS // ** 23: SELECT // ** 24: // ** 25: // ** 26: VACUUM SAVEPOINT // ** 27: // ** 28: LIKE UNION VIRTUAL REFERENCES // ** 29: RESTRICT // ** 30: // ** 31: THEN REGEXP // ** 32: TO // ** 33: // ** 34: BEFORE // ** 35: // ** 36: // ** 37: FOLLOWING COLLATE CASCADE // ** 38: CREATE // ** 39: // ** 40: CASE REINDEX // ** 41: EACH // ** 42: // ** 43: QUERY // ** 44: AND ADD // ** 45: PRIMARY ANALYZE // ** 46: // ** 47: ROW ASC DETACH // ** 48: CURRENT_TIME CURRENT_DATE // ** 49: // ** 50: // ** 51: EXCLUSIVE TEMPORARY // ** 52: // ** 53: DEFERRED // ** 54: DEFERRABLE // ** 55: // ** 56: DATABASE // ** 57: // ** 58: DELETE VIEW GENERATED // ** 59: ATTACH // ** 60: END // ** 61: EXCLUDE // ** 62: ESCAPE DESC // ** 63: GLOB // ** 64: WINDOW ELSE // ** 65: COLUMN // ** 66: FIRST // ** 67: // ** 68: GROUPS ALL // ** 69: DISTINCT DROP KEY // ** 70: BETWEEN // ** 71: INITIALLY // ** 72: BEGIN // ** 73: FILTER CHECK ACTION // ** 74: GROUP INDEX // ** 75: // ** 76: EXISTS DEFAULT // ** 77: // ** 78: FOR CURRENT_TIMESTAMP // ** 79: EXCEPT // ** 80: // ** 81: CROSS // ** 82: // ** 83: // ** 84: // ** 85: CAST // ** 86: FOREIGN AUTOINCREMENT // ** 87: COMMIT // ** 88: CURRENT AFTER ALTER // ** 89: FULL FAIL CONFLICT // ** 90: EXPLAIN // ** 91: CONSTRAINT // ** 92: FROM ALWAYS // ** 93: // ** 94: ABORT // ** 95: // ** 96: AS DO // ** 97: REPLACE WITH RELEASE // ** 98: BY RENAME // ** 99: RANGE RAISE // ** 100: OTHERS // ** 101: USING NULLS // ** 102: PRAGMA // ** 103: JOIN ISNULL OFFSET // ** 104: NOT // ** 105: OR LAST LEFT // ** 106: LIMIT // ** 107: // ** 108: // ** 109: IN // ** 110: INTO // ** 111: OVER RECURSIVE // ** 112: ORDER OUTER // ** 113: // ** 114: INTERSECT UNBOUNDED // ** 115: // ** 116: // ** 117: RETURNING ON // ** 118: // ** 119: WHERE // ** 120: NO INNER // ** 121: NULL // ** 122: // ** 123: TABLE // ** 124: NATURAL NOTNULL // ** 125: PRECEDING // ** 126: UPDATE UNIQUE // */ // /* Check to see if z[0..n-1] is a keyword. If it is, write the // ** parser symbol code for that keyword into *pType. Always // ** return the integer n (the length of the token). */ func _keywordCode(tls *libc.TLS, z uintptr, n Ti64, pType uintptr) (r Ti64) { var i, j Ti64 var zKW uintptr _, _, _ = i, j, zKW i = (int64(int32(_sqlite3UpperToLower[uint8(**(**int8)(__ccgo_up(z)))])*int32(4)^int32(_sqlite3UpperToLower[uint8(**(**int8)(__ccgo_up(z + uintptr(n-int64(1)))))])*int32(3)) ^ n*int64(1)) % int64(127) i = int64(int32(_aKWHash[i])) for { if !(i > 0) { break } if int64(_aKWLen[i]) != n { goto _1 } zKW = uintptr(unsafe.Pointer(&_zKWText)) + uintptr(_aKWOffset[i]) if int32(**(**int8)(__ccgo_up(z))) & ^libc.Int32FromInt32(0x20) != int32(**(**int8)(__ccgo_up(zKW))) { goto _1 } if int32(**(**int8)(__ccgo_up(z + 1))) & ^libc.Int32FromInt32(0x20) != int32(**(**int8)(__ccgo_up(zKW + 1))) { goto _1 } j = int64(2) for j < n && int32(**(**int8)(__ccgo_up(z + uintptr(j)))) & ^libc.Int32FromInt32(0x20) == int32(**(**int8)(__ccgo_up(zKW + uintptr(j)))) { j = j + 1 } if j < n { goto _1 } /* REINDEX */ /* INDEXED */ /* INDEX */ /* DESC */ /* ESCAPE */ /* EACH */ /* CHECK */ /* KEY */ /* BEFORE */ /* FOREIGN */ /* FOR */ /* IGNORE */ /* REGEXP */ /* EXPLAIN */ /* INSTEAD */ /* ADD */ /* DATABASE */ /* AS */ /* SELECT */ /* TABLE */ /* LEFT */ /* THEN */ /* END */ /* DEFERRABLE */ /* ELSE */ /* EXCLUDE */ /* DELETE */ /* TEMPORARY */ /* TEMP */ /* OR */ /* ISNULL */ /* NULLS */ /* SAVEPOINT */ /* INTERSECT */ /* TIES */ /* NOTNULL */ /* NOT */ /* NO */ /* NULL */ /* LIKE */ /* EXCEPT */ /* TRANSACTION */ /* ACTION */ /* ON */ /* NATURAL */ /* ALTER */ /* RAISE */ /* EXCLUSIVE */ /* EXISTS */ /* CONSTRAINT */ /* INTO */ /* OFFSET */ /* OF */ /* SET */ /* TRIGGER */ /* RANGE */ /* GENERATED */ /* DETACH */ /* HAVING */ /* GLOB */ /* BEGIN */ /* INNER */ /* REFERENCES */ /* UNIQUE */ /* QUERY */ /* WITHOUT */ /* WITH */ /* OUTER */ /* RELEASE */ /* ATTACH */ /* BETWEEN */ /* NOTHING */ /* GROUPS */ /* GROUP */ /* CASCADE */ /* ASC */ /* DEFAULT */ /* CASE */ /* COLLATE */ /* CREATE */ /* CURRENT_DATE */ /* IMMEDIATE */ /* JOIN */ /* INSERT */ /* MATCH */ /* PLAN */ /* ANALYZE */ /* PRAGMA */ /* MATERIALIZED */ /* DEFERRED */ /* DISTINCT */ /* IS */ /* UPDATE */ /* VALUES */ /* VIRTUAL */ /* ALWAYS */ /* WHEN */ /* WHERE */ /* RECURSIVE */ /* ABORT */ /* AFTER */ /* RENAME */ /* AND */ /* DROP */ /* PARTITION */ /* AUTOINCREMENT */ /* TO */ /* IN */ /* CAST */ /* COLUMN */ /* COMMIT */ /* CONFLICT */ /* CROSS */ /* CURRENT_TIMESTAMP */ /* CURRENT_TIME */ /* CURRENT */ /* PRECEDING */ /* FAIL */ /* LAST */ /* FILTER */ /* REPLACE */ /* FIRST */ /* FOLLOWING */ /* FROM */ /* FULL */ /* LIMIT */ /* IF */ /* ORDER */ /* RESTRICT */ /* OTHERS */ /* OVER */ /* RETURNING */ /* RIGHT */ /* ROLLBACK */ /* ROWS */ /* ROW */ /* UNBOUNDED */ /* UNION */ /* USING */ /* VACUUM */ /* VIEW */ /* WINDOW */ /* DO */ /* BY */ /* INITIALLY */ /* ALL */ /* PRIMARY */ **(**int32)(__ccgo_up(pType)) = int32(_aKWCode[i]) break goto _1 _1: ; i = int64(_aKWNext[i]) } return n } type _ldiv_t = T_ldiv_t // C documentation // // /* // ** Load content from the sqlite_stat4 table into // ** the Index.aSample[] arrays of all indices. // */ func _loadStat4(tls *libc.TLS, db uintptr, zDb uintptr) (r int32) { var pStat4, v1 uintptr var rc int32 var v2 bool _, _, _, _ = pStat4, rc, v1, v2 rc = SQLITE_OK if v2 = (*Tsqlite3)(unsafe.Pointer(db)).FdbOptFlags&uint32(libc.Int32FromInt32(SQLITE_Stat4)) == uint32(0); v2 { v1 = _sqlite3FindTable(tls, db, __ccgo_ts+14076, zDb) pStat4 = v1 } if v2 && v1 != uintptr(0) && int32((*TTable)(unsafe.Pointer(pStat4)).FeTabType) == TABTYP_NORM { rc = _loadStatTbl(tls, db, __ccgo_ts+14302, __ccgo_ts+14371, zDb) } return rc } type _locale_t = T_locale_t type _locale_tstruct = T_locale_tstruct // C documentation // // /* // ** Log an error that is an API call on a connection pointer that should // ** not have been used. The "type" of connection pointer is given as the // ** argument. The zType is a word like "NULL" or "closed" or "invalid". // */ func _logBadConnection(tls *libc.TLS, zType uintptr) { bp := tls.Alloc(16) defer tls.Free(16) Xsqlite3_log(tls, int32(SQLITE_MISUSE), __ccgo_ts+1859, libc.VaList(bp+8, zType)) } func _lookasideMallocSize(tls *libc.TLS, db uintptr, p uintptr) (r int32) { var v1 int32 _ = v1 if p < (*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FpMiddle { v1 = int32((*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FszTrue) } else { v1 = int32(LOOKASIDE_SMALL) } return v1 } func _lowerFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var i, n int32 var z1, z2 uintptr _, _, _, _ = i, n, z1, z2 _ = argc z2 = Xsqlite3_value_text(tls, **(**uintptr)(__ccgo_up(argv))) n = Xsqlite3_value_bytes(tls, **(**uintptr)(__ccgo_up(argv))) /* Verify that the call to _bytes() does not invalidate the _text() pointer */ if z2 != 0 { z1 = _contextMalloc(tls, context, int64(n)+int64(1)) if z1 != 0 { i = 0 for { if !(i < n) { break } **(**int8)(__ccgo_up(z1 + uintptr(i))) = int8(_sqlite3UpperToLower[uint8(**(**int8)(__ccgo_up(z2 + uintptr(i))))]) goto _1 _1: ; i = i + 1 } Xsqlite3_result_text(tls, context, z1, n, __ccgo_fp(Xsqlite3_free)) } } } /* ** Some functions like COALESCE() and IFNULL() and UNLIKELY() are implemented ** as VDBE code so that unused argument values do not have to be computed. ** However, we still need some kind of function implementation for this ** routines in the function table. The noopFunc macro provides this. ** noopFunc will never be called so it doesn't matter what the implementation ** is. We might as well use the "version()" function as a substitute. */ /* 2^32 - to avoid use of LL and warnings in gcc */ var _max32BitValue = libc.Int64FromInt32(2000000000) + libc.Int64FromInt32(2000000000) + libc.Int64FromInt32(294967296) // C documentation // // /* // ** Try to enlarge the memory allocation to hold at least sz bytes // */ func _memdbEnlarge(tls *libc.TLS, p uintptr, newSz Tsqlite3_int64) (r int32) { var pNew uintptr _ = pNew if (*TMemStore)(unsafe.Pointer(p)).FmFlags&uint32(SQLITE_DESERIALIZE_RESIZEABLE) == uint32(0) || (*TMemStore)(unsafe.Pointer(p)).FnMmap > 0 { return int32(SQLITE_FULL) } if newSz > (*TMemStore)(unsafe.Pointer(p)).FszMax { return int32(SQLITE_FULL) } newSz = newSz * int64(2) if newSz > (*TMemStore)(unsafe.Pointer(p)).FszMax { newSz = (*TMemStore)(unsafe.Pointer(p)).FszMax } pNew = _sqlite3Realloc(tls, (*TMemStore)(unsafe.Pointer(p)).FaData, uint64(newSz)) if pNew == uintptr(0) { return libc.Int32FromInt32(SQLITE_IOERR) | libc.Int32FromInt32(12)< (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr((*TBtShared)(unsafe.Pointer((*TMemPage)(unsafe.Pointer(pPage)).FpBt)).FusableSize) { return _sqlite3CorruptError(tls, int32(77131)) } if iFrom == _sqlite3Get4byte(tls, pCell+uintptr((**(**TCellInfo)(__ccgo_up(bp))).FnSize)-uintptr(4)) { _sqlite3Put4byte(tls, pCell+uintptr((**(**TCellInfo)(__ccgo_up(bp))).FnSize)-uintptr(4), iTo) break } } } else { if pCell+uintptr(4) > (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr((*TBtShared)(unsafe.Pointer((*TMemPage)(unsafe.Pointer(pPage)).FpBt)).FusableSize) { return _sqlite3CorruptError(tls, int32(77140)) } if _sqlite3Get4byte(tls, pCell) == iFrom { _sqlite3Put4byte(tls, pCell, iTo) break } } goto _2 _2: ; i = i + 1 } if i == nCell { if int32(eType) != int32(PTRMAP_BTREE) || _sqlite3Get4byte(tls, (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FhdrOffset)+int32(8))) != iFrom { return _sqlite3CorruptError(tls, int32(77152)) } _sqlite3Put4byte(tls, (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FhdrOffset)+int32(8)), iTo) } } return SQLITE_OK } // C documentation // // /* // ** Move the cursor down to the left-most leaf entry beneath the // ** entry to which it is currently pointing. // ** // ** The left-most leaf is the one with the smallest key - the first // ** in ascending order. // */ func _moveToLeftmost(tls *libc.TLS, pCur uintptr) (r int32) { var pPage, v1 uintptr var pgno TPgno var rc int32 var v2 bool _, _, _, _, _ = pPage, pgno, rc, v1, v2 rc = SQLITE_OK for { if v2 = rc == SQLITE_OK; v2 { v1 = (*TBtCursor)(unsafe.Pointer(pCur)).FpPage pPage = v1 } if !(v2 && !((*TMemPage)(unsafe.Pointer(v1)).Fleaf != 0)) { break } pgno = _sqlite3Get4byte(tls, (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FmaskPage)&(int32(**(**Tu8)(__ccgo_up((*TMemPage)(unsafe.Pointer(pPage)).FaCellIdx + uintptr(int32(2)*int32((*TBtCursor)(unsafe.Pointer(pCur)).Fix)))))<ncFlags values determined by validMask. // ** // ** static void notValid( // ** Parse *pParse, // Leave error message here // ** NameContext *pNC, // The name context // ** const char *zMsg, // Type of error // ** int validMask, // Set of contexts for which prohibited // ** Expr *pExpr // Invalidate this expression on error // ** ){...} // ** // ** As an optimization, since the conditional is almost always false // ** (because errors are rare), the conditional is moved outside of the // ** function call using a macro. // */ func _notValidImpl(tls *libc.TLS, pParse uintptr, pNC uintptr, zMsg uintptr, pExpr uintptr, pError uintptr) { bp := tls.Alloc(32) defer tls.Free(32) var zIn uintptr _ = zIn zIn = __ccgo_ts + 8315 if (*TNameContext)(unsafe.Pointer(pNC)).FncFlags&int32(NC_IdxExpr) != 0 { zIn = __ccgo_ts + 8343 } else { if (*TNameContext)(unsafe.Pointer(pNC)).FncFlags&int32(NC_IsCheck) != 0 { zIn = __ccgo_ts + 8361 } else { if (*TNameContext)(unsafe.Pointer(pNC)).FncFlags&int32(NC_GenCol) != 0 { zIn = __ccgo_ts + 8379 } } } _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+8397, libc.VaList(bp+8, zMsg, zIn)) if pExpr != 0 { (*TExpr)(unsafe.Pointer(pExpr)).Fop = uint8(TK_NULL) } _sqlite3RecordErrorOffsetOfExpr(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, pError) } // C documentation // // /* // ** Implementation of ntile(). This assumes that the window frame has // ** been coerced to: // ** // ** ROWS CURRENT ROW AND UNBOUNDED FOLLOWING // */ func _ntileStepFunc(tls *libc.TLS, pCtx uintptr, nArg int32, apArg uintptr) { var p uintptr _ = p _ = nArg p = Xsqlite3_aggregate_context(tls, pCtx, int32(24)) if p != 0 { if (*TNtileCtx)(unsafe.Pointer(p)).FnTotal == 0 { (*TNtileCtx)(unsafe.Pointer(p)).FnParam = Xsqlite3_value_int64(tls, **(**uintptr)(__ccgo_up(apArg))) if (*TNtileCtx)(unsafe.Pointer(p)).FnParam <= 0 { Xsqlite3_result_error(tls, pCtx, __ccgo_ts+25465, -int32(1)) } } (*TNtileCtx)(unsafe.Pointer(p)).FnTotal = (*TNtileCtx)(unsafe.Pointer(p)).FnTotal + 1 } } type _numberfmtA = T_numberfmtA type _numberfmtW = T_numberfmtW // C documentation // // /* // ** Return the numeric type for pMem, either MEM_Int or MEM_Real or both or // ** none. // ** // ** Unlike applyNumericAffinity(), this routine does not modify pMem->flags. // ** But it does set pMem->u.r and pMem->u.i appropriately. // */ func _numericType(tls *libc.TLS, pMem uintptr) (r Tu16) { if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&(libc.Int32FromInt32(MEM_Int)|libc.Int32FromInt32(MEM_Real)|libc.Int32FromInt32(MEM_IntReal)|libc.Int32FromInt32(MEM_Null)) != 0 { return uint16(int32((*TMem)(unsafe.Pointer(pMem)).Fflags) & (libc.Int32FromInt32(MEM_Int) | libc.Int32FromInt32(MEM_Real) | libc.Int32FromInt32(MEM_IntReal) | libc.Int32FromInt32(MEM_Null))) } return _computeNumericType(tls, pMem) return uint16(0) } type _off64_t = T_off64_t type _off_t = T_off_t type _onexit_t = T_onexit_t type _onexit_table_t = T_onexit_table_t // C documentation // // /* // ** Ensure that the sub-journal file is open. If it is already open, this // ** function is a no-op. // ** // ** SQLITE_OK is returned if everything goes according to plan. An // ** SQLITE_IOERR_XXX error code is returned if a call to sqlite3OsOpen() // ** fails. // */ func _openSubJournal(tls *libc.TLS, pPager uintptr) (r int32) { var flags, nStmtSpill, rc int32 _, _, _ = flags, nStmtSpill, rc rc = SQLITE_OK if !((*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fsjfd)).FpMethods != libc.UintptrFromInt32(0)) { flags = libc.Int32FromInt32(SQLITE_OPEN_SUBJOURNAL) | libc.Int32FromInt32(SQLITE_OPEN_READWRITE) | libc.Int32FromInt32(SQLITE_OPEN_CREATE) | libc.Int32FromInt32(SQLITE_OPEN_EXCLUSIVE) | libc.Int32FromInt32(SQLITE_OPEN_DELETEONCLOSE) nStmtSpill = _sqlite3Config.FnStmtSpill if int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) == int32(PAGER_JOURNALMODE_MEMORY) || (*TPager)(unsafe.Pointer(pPager)).FsubjInMemory != 0 { nStmtSpill = -int32(1) } rc = _sqlite3JournalOpen(tls, (*TPager)(unsafe.Pointer(pPager)).FpVfs, uintptr(0), (*TPager)(unsafe.Pointer(pPager)).Fsjfd, flags, nStmtSpill) } return rc } // C documentation // // /* // ** Translate from TK_xx operator to WO_xx bitmask. // */ func _operatorMask(tls *libc.TLS, op int32) (r Tu16) { var c Tu16 _ = c if op >= int32(TK_EQ) { c = uint16(libc.Int32FromInt32(WO_EQ) << (op - libc.Int32FromInt32(TK_EQ))) } else { if op == int32(TK_IN) { c = uint16(WO_IN) } else { if op == int32(TK_ISNULL) { c = uint16(WO_ISNULL) } else { c = uint16(WO_IS) } } } return c } const _osplatform = 0 const _osver = 0 // C documentation // // /* // ** Attempt to take an exclusive lock on the database file. If a PENDING lock // ** is obtained instead, immediately release it. // */ func _pagerExclusiveLock(tls *libc.TLS, pPager uintptr) (r int32) { var eOrigLock Tu8 var rc int32 _, _ = eOrigLock, rc /* Original lock */ eOrigLock = (*TPager)(unsafe.Pointer(pPager)).FeLock rc = _pagerLockDb(tls, pPager, int32(EXCLUSIVE_LOCK)) if rc != SQLITE_OK { /* If the attempt to grab the exclusive lock failed, release the ** pending lock that may have been obtained instead. */ _pagerUnlockDb(tls, pPager, int32(eOrigLock)) } return rc } // C documentation // // /* // ** The write transaction open on pPager is being committed (bCommit==1) // ** or rolled back (bCommit==0). // ** // ** Return TRUE if and only if all dirty pages should be flushed to disk. // ** // ** Rules: // ** // ** * For non-TEMP databases, always sync to disk. This is necessary // ** for transactions to be durable. // ** // ** * Sync TEMP database only on a COMMIT (not a ROLLBACK) when the backing // ** file has been created already (via a spill on pagerStress()) and // ** when the number of dirty pages in memory exceeds 25% of the total // ** cache size. // */ func _pagerFlushOnCommit(tls *libc.TLS, pPager uintptr, bCommit int32) (r int32) { if int32((*TPager)(unsafe.Pointer(pPager)).FtempFile) == 0 { return int32(1) } if !(bCommit != 0) { return 0 } if !((*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Ffd)).FpMethods != libc.UintptrFromInt32(0)) { return 0 } return libc.BoolInt32(_sqlite3PCachePercentDirty(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache) >= int32(25)) } // C documentation // // /* // ** Lock the database file to level eLock, which must be either SHARED_LOCK, // ** RESERVED_LOCK or EXCLUSIVE_LOCK. If the caller is successful, set the // ** Pager.eLock variable to the new locking state. // ** // ** Except, if Pager.eLock is set to UNKNOWN_LOCK when this function is // ** called, do not modify it unless the new locking state is EXCLUSIVE_LOCK. // ** See the comment above the #define of UNKNOWN_LOCK for an explanation // ** of this. // */ func _pagerLockDb(tls *libc.TLS, pPager uintptr, eLock int32) (r int32) { var rc, v1 int32 _, _ = rc, v1 rc = SQLITE_OK if int32((*TPager)(unsafe.Pointer(pPager)).FeLock) < eLock || int32((*TPager)(unsafe.Pointer(pPager)).FeLock) == libc.Int32FromInt32(EXCLUSIVE_LOCK)+libc.Int32FromInt32(1) { if (*TPager)(unsafe.Pointer(pPager)).FnoLock != 0 { v1 = SQLITE_OK } else { v1 = _sqlite3OsLock(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, eLock) } rc = v1 if rc == SQLITE_OK && (int32((*TPager)(unsafe.Pointer(pPager)).FeLock) != libc.Int32FromInt32(EXCLUSIVE_LOCK)+libc.Int32FromInt32(1) || eLock == int32(EXCLUSIVE_LOCK)) { (*TPager)(unsafe.Pointer(pPager)).FeLock = uint8(eLock) } } return rc } // C documentation // // /* // ** Check if the *-wal file that corresponds to the database opened by pPager // ** exists if the database is not empty, or verify that the *-wal file does // ** not exist (by deleting it) if the database file is empty. // ** // ** If the database is not empty and the *-wal file exists, open the pager // ** in WAL mode. If the database is empty or if no *-wal file exists and // ** if no error occurs, make sure Pager.journalMode is not set to // ** PAGER_JOURNALMODE_WAL. // ** // ** Return SQLITE_OK or an error code. // ** // ** The caller must hold a SHARED lock on the database file to call this // ** function. Because an EXCLUSIVE lock on the db file is required to delete // ** a WAL on a none-empty database, this ensures there is no race condition // ** between the xAccess() below and an xDelete() being executed by some // ** other connection. // */ func _pagerOpenWalIfPresent(tls *libc.TLS, pPager uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 var _ /* isWal at bp+0 */ int32 var _ /* nPage at bp+4 */ TPgno _ = rc rc = SQLITE_OK if !((*TPager)(unsafe.Pointer(pPager)).FtempFile != 0) { /* True if WAL file exists */ rc = _sqlite3OsAccess(tls, (*TPager)(unsafe.Pointer(pPager)).FpVfs, (*TPager)(unsafe.Pointer(pPager)).FzWal, SQLITE_ACCESS_EXISTS, bp) if rc == SQLITE_OK { if **(**int32)(__ccgo_up(bp)) != 0 { /* Size of the database file */ rc = _pagerPagecount(tls, pPager, bp+4) if rc != 0 { return rc } if **(**TPgno)(__ccgo_up(bp + 4)) == uint32(0) { rc = _sqlite3OsDelete(tls, (*TPager)(unsafe.Pointer(pPager)).FpVfs, (*TPager)(unsafe.Pointer(pPager)).FzWal, 0) } else { rc = _sqlite3PagerOpenWal(tls, pPager, uintptr(0)) } } else { if int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) == int32(PAGER_JOURNALMODE_WAL) { (*TPager)(unsafe.Pointer(pPager)).FjournalMode = uint8(PAGER_JOURNALMODE_DELETE) } } } } return rc } // C documentation // // /* // ** This function is called as part of the transition from PAGER_OPEN // ** to PAGER_READER state to determine the size of the database file // ** in pages (assuming the page size currently stored in Pager.pageSize). // ** // ** If no error occurs, SQLITE_OK is returned and the size of the database // ** in pages is stored in *pnPage. Otherwise, an error code (perhaps // ** SQLITE_IOERR_FSTAT) is returned and *pnPage is left unmodified. // */ func _pagerPagecount(tls *libc.TLS, pPager uintptr, pnPage uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var nPage TPgno var rc int32 var _ /* n at bp+0 */ Ti64 _, _ = nPage, rc /* Value to return via *pnPage */ /* Query the WAL sub-system for the database size. The WalDbsize() ** function returns zero if the WAL is not open (i.e. Pager.pWal==0), or ** if the database size is not available. The database size is not ** available from the WAL sub-system if the log file is empty or ** contains no valid committed transactions. */ nPage = _sqlite3WalDbsize(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal) /* If the number of pages in the database is not available from the ** WAL sub-system, determine the page count based on the size of ** the database file. If the size of the database file is not an ** integer multiple of the page-size, round up the result. */ if nPage == uint32(0) && (*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Ffd)).FpMethods != uintptr(0) { **(**Ti64)(__ccgo_up(bp)) = 0 /* Size of db file in bytes */ rc = _sqlite3OsFileSize(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, bp) if rc != SQLITE_OK { return rc } nPage = uint32((**(**Ti64)(__ccgo_up(bp)) + (*TPager)(unsafe.Pointer(pPager)).FpageSize - libc.Int64FromInt32(1)) / (*TPager)(unsafe.Pointer(pPager)).FpageSize) } /* If the current number of pages in the file is greater than the ** configured maximum pager number, increase the allowed limit so ** that the file can be read. */ if nPage > (*TPager)(unsafe.Pointer(pPager)).FmxPgno { (*TPager)(unsafe.Pointer(pPager)).FmxPgno = nPage } **(**TPgno)(__ccgo_up(pnPage)) = nPage return SQLITE_OK } // C documentation // // /* // ** Release a reference to page pPg. pPg must have been returned by an // ** earlier call to pagerAcquireMapPage(). // */ func _pagerReleaseMapPage(tls *libc.TLS, pPg uintptr) { var pPager uintptr _ = pPager pPager = (*TPgHdr)(unsafe.Pointer(pPg)).FpPager (*TPager)(unsafe.Pointer(pPager)).FnMmapOut = (*TPager)(unsafe.Pointer(pPager)).FnMmapOut - 1 (*TPgHdr)(unsafe.Pointer(pPg)).FpDirty = (*TPager)(unsafe.Pointer(pPager)).FpMmapFreelist (*TPager)(unsafe.Pointer(pPager)).FpMmapFreelist = pPg _sqlite3OsUnfetch(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, int64((*TPgHdr)(unsafe.Pointer(pPg)).Fpgno-libc.Uint32FromInt32(1))*(*TPager)(unsafe.Pointer(pPager)).FpageSize, (*TPgHdr)(unsafe.Pointer(pPg)).FpData) } // C documentation // // /* // ** Execute a rollback if a transaction is active and unlock the // ** database file. // ** // ** If the pager has already entered the ERROR state, do not attempt // ** the rollback at this time. Instead, pager_unlock() is called. The // ** call to pager_unlock() will discard all in-memory pages, unlock // ** the database file and move the pager back to OPEN state. If this // ** means that there is a hot-journal left in the file-system, the next // ** connection to obtain a shared lock on the pager (which may be this one) // ** will roll it back. // ** // ** If the pager has not already entered the ERROR state, but an IO or // ** malloc error occurs during a rollback, then this will itself cause // ** the pager to enter the ERROR state. Which will be cleared by the // ** call to pager_unlock(), as described above. // */ func _pagerUnlockAndRollback(tls *libc.TLS, pPager uintptr) { var eLock Tu8 var errCode int32 _, _ = eLock, errCode if int32((*TPager)(unsafe.Pointer(pPager)).FeState) != int32(PAGER_ERROR) && int32((*TPager)(unsafe.Pointer(pPager)).FeState) != PAGER_OPEN { if int32((*TPager)(unsafe.Pointer(pPager)).FeState) >= int32(PAGER_WRITER_LOCKED) { _sqlite3BeginBenignMalloc(tls) _sqlite3PagerRollback(tls, pPager) _sqlite3EndBenignMalloc(tls) } else { if !((*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0) { _pager_end_transaction(tls, pPager, 0, 0) } } } else { if int32((*TPager)(unsafe.Pointer(pPager)).FeState) == int32(PAGER_ERROR) && int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) == int32(PAGER_JOURNALMODE_MEMORY) && (*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fjfd)).FpMethods != uintptr(0) { /* Special case for a ROLLBACK due to I/O error with an in-memory ** journal: We have to rollback immediately, before the journal is ** closed, because once it is closed, all content is forgotten. */ errCode = (*TPager)(unsafe.Pointer(pPager)).FerrCode eLock = (*TPager)(unsafe.Pointer(pPager)).FeLock (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_OPEN) (*TPager)(unsafe.Pointer(pPager)).FerrCode = SQLITE_OK (*TPager)(unsafe.Pointer(pPager)).FeLock = uint8(EXCLUSIVE_LOCK) _pager_playback(tls, pPager, int32(1)) (*TPager)(unsafe.Pointer(pPager)).FerrCode = errCode (*TPager)(unsafe.Pointer(pPager)).FeLock = eLock } } _pager_unlock(tls, pPager) } // C documentation // // /* // ** Unlock the database file to level eLock, which must be either NO_LOCK // ** or SHARED_LOCK. Regardless of whether or not the call to xUnlock() // ** succeeds, set the Pager.eLock variable to match the (attempted) new lock. // ** // ** Except, if Pager.eLock is set to UNKNOWN_LOCK when this function is // ** called, do not modify it. See the comment above the #define of // ** UNKNOWN_LOCK for an explanation of this. // */ func _pagerUnlockDb(tls *libc.TLS, pPager uintptr, eLock int32) (r int32) { var rc, v1 int32 _, _ = rc, v1 rc = SQLITE_OK if (*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Ffd)).FpMethods != uintptr(0) { if (*TPager)(unsafe.Pointer(pPager)).FnoLock != 0 { v1 = SQLITE_OK } else { v1 = _sqlite3OsUnlock(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, eLock) } rc = v1 if int32((*TPager)(unsafe.Pointer(pPager)).FeLock) != libc.Int32FromInt32(EXCLUSIVE_LOCK)+libc.Int32FromInt32(1) { (*TPager)(unsafe.Pointer(pPager)).FeLock = uint8(eLock) } } (*TPager)(unsafe.Pointer(pPager)).FchangeCountDone = (*TPager)(unsafe.Pointer(pPager)).FtempFile /* ticket fb3b3024ea238d5c */ return rc } // C documentation // // /* // ** This routine ends a transaction. A transaction is usually ended by // ** either a COMMIT or a ROLLBACK operation. This routine may be called // ** after rollback of a hot-journal, or if an error occurs while opening // ** the journal file or writing the very first journal-header of a // ** database transaction. // ** // ** This routine is never called in PAGER_ERROR state. If it is called // ** in PAGER_NONE or PAGER_SHARED state and the lock held is less // ** exclusive than a RESERVED lock, it is a no-op. // ** // ** Otherwise, any active savepoints are released. // ** // ** If the journal file is open, then it is "finalized". Once a journal // ** file has been finalized it is not possible to use it to roll back a // ** transaction. Nor will it be considered to be a hot-journal by this // ** or any other database connection. Exactly how a journal is finalized // ** depends on whether or not the pager is running in exclusive mode and // ** the current journal-mode (Pager.journalMode value), as follows: // ** // ** journalMode==MEMORY // ** Journal file descriptor is simply closed. This destroys an // ** in-memory journal. // ** // ** journalMode==TRUNCATE // ** Journal file is truncated to zero bytes in size. // ** // ** journalMode==PERSIST // ** The first 28 bytes of the journal file are zeroed. This invalidates // ** the first journal header in the file, and hence the entire journal // ** file. An invalid journal file cannot be rolled back. // ** // ** journalMode==DELETE // ** The journal file is closed and deleted using sqlite3OsDelete(). // ** // ** If the pager is running in exclusive mode, this method of finalizing // ** the journal file is never used. Instead, if the journalMode is // ** DELETE and the pager is in exclusive mode, the method described under // ** journalMode==PERSIST is used instead. // ** // ** After the journal is finalized, the pager moves to PAGER_READER state. // ** If running in non-exclusive rollback mode, the lock on the file is // ** downgraded to a SHARED_LOCK. // ** // ** SQLITE_OK is returned if no error occurs. If an error occurs during // ** any of the IO operations to finalize the journal file or unlock the // ** database then the IO error code is returned to the user. If the // ** operation to finalize the journal file fails, then the code still // ** tries to unlock the database file if not in exclusive mode. If the // ** unlock operation fails as well, then the first error code related // ** to the first error encountered (the journal finalization one) is // ** returned. // */ func _pager_end_transaction(tls *libc.TLS, pPager uintptr, hasSuper int32, bCommit int32) (r int32) { var bDelete, rc, rc2, v1 int32 _, _, _, _ = bDelete, rc, rc2, v1 rc = SQLITE_OK /* Error code from journal finalization operation */ rc2 = SQLITE_OK /* Error code from db file unlock operation */ /* Do nothing if the pager does not have an open write transaction ** or at least a RESERVED lock. This function may be called when there ** is no write-transaction active but a RESERVED or greater lock is ** held under two circumstances: ** ** 1. After a successful hot-journal rollback, it is called with ** eState==PAGER_NONE and eLock==EXCLUSIVE_LOCK. ** ** 2. If a connection with locking_mode=exclusive holding an EXCLUSIVE ** lock switches back to locking_mode=normal and then executes a ** read-transaction, this function is called with eState==PAGER_READER ** and eLock==EXCLUSIVE_LOCK when the read-transaction is closed. */ if int32((*TPager)(unsafe.Pointer(pPager)).FeState) < int32(PAGER_WRITER_LOCKED) && int32((*TPager)(unsafe.Pointer(pPager)).FeLock) < int32(RESERVED_LOCK) { return SQLITE_OK } _releaseAllSavepoints(tls, pPager) if (*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fjfd)).FpMethods != uintptr(0) { /* Finalize the journal file. */ if _sqlite3JournalIsInMemory(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd) != 0 { /* assert( pPager->journalMode==PAGER_JOURNALMODE_MEMORY ); */ _sqlite3OsClose(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd) } else { if int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) == int32(PAGER_JOURNALMODE_TRUNCATE) { if (*TPager)(unsafe.Pointer(pPager)).FjournalOff == 0 { rc = SQLITE_OK } else { rc = _sqlite3OsTruncate(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd, 0) if rc == SQLITE_OK && (*TPager)(unsafe.Pointer(pPager)).FfullSync != 0 { /* Make sure the new file size is written into the inode right away. ** Otherwise the journal might resurrect following a power loss and ** cause the last transaction to roll back. See ** https://bugzilla.mozilla.org/show_bug.cgi?id=1072773 */ rc = _sqlite3OsSync(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd, int32((*TPager)(unsafe.Pointer(pPager)).FsyncFlags)) } } (*TPager)(unsafe.Pointer(pPager)).FjournalOff = 0 } else { if int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) == int32(PAGER_JOURNALMODE_PERSIST) || (*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0 && int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) < int32(PAGER_JOURNALMODE_WAL) { rc = _zeroJournalHdr(tls, pPager, libc.BoolInt32(hasSuper != 0 || (*TPager)(unsafe.Pointer(pPager)).FtempFile != 0)) (*TPager)(unsafe.Pointer(pPager)).FjournalOff = 0 } else { /* This branch may be executed with Pager.journalMode==MEMORY if ** a hot-journal was just rolled back. In this case the journal ** file should be closed and deleted. If this connection writes to ** the database file, it will do so using an in-memory journal. */ bDelete = libc.BoolInt32(!((*TPager)(unsafe.Pointer(pPager)).FtempFile != 0)) _sqlite3OsClose(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd) if bDelete != 0 { rc = _sqlite3OsDelete(tls, (*TPager)(unsafe.Pointer(pPager)).FpVfs, (*TPager)(unsafe.Pointer(pPager)).FzJournal, int32((*TPager)(unsafe.Pointer(pPager)).FextraSync)) } } } } } _sqlite3BitvecDestroy(tls, (*TPager)(unsafe.Pointer(pPager)).FpInJournal) (*TPager)(unsafe.Pointer(pPager)).FpInJournal = uintptr(0) (*TPager)(unsafe.Pointer(pPager)).FnRec = 0 if rc == SQLITE_OK { if (*TPager)(unsafe.Pointer(pPager)).FmemDb != 0 || _pagerFlushOnCommit(tls, pPager, bCommit) != 0 { _sqlite3PcacheCleanAll(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache) } else { _sqlite3PcacheClearWritable(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache) } _sqlite3PcacheTruncate(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache, (*TPager)(unsafe.Pointer(pPager)).FdbSize) } if (*TPager)(unsafe.Pointer(pPager)).FpWal != uintptr(0) { /* Drop the WAL write-lock, if any. Also, if the connection was in ** locking_mode=exclusive mode but is no longer, drop the EXCLUSIVE ** lock held on the database file. */ rc2 = _sqlite3WalEndWriteTransaction(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal) } else { if rc == SQLITE_OK && bCommit != 0 && (*TPager)(unsafe.Pointer(pPager)).FdbFileSize > (*TPager)(unsafe.Pointer(pPager)).FdbSize { /* This branch is taken when committing a transaction in rollback-journal ** mode if the database file on disk is larger than the database image. ** At this point the journal has been finalized and the transaction ** successfully committed, but the EXCLUSIVE lock is still held on the ** file. So it is safe to truncate the database file to its minimum ** required size. */ rc = _pager_truncate(tls, pPager, (*TPager)(unsafe.Pointer(pPager)).FdbSize) } } if rc == SQLITE_OK && bCommit != 0 { rc = _sqlite3OsFileControl(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, int32(SQLITE_FCNTL_COMMIT_PHASETWO), uintptr(0)) if rc == int32(SQLITE_NOTFOUND) { rc = SQLITE_OK } } if !((*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0) && (!((*TPager)(unsafe.Pointer(pPager)).FpWal != libc.UintptrFromInt32(0)) || _sqlite3WalExclusiveMode(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal, 0) != 0) { rc2 = _pagerUnlockDb(tls, pPager, int32(SHARED_LOCK)) } (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_READER) (*TPager)(unsafe.Pointer(pPager)).FsetSuper = uint8(0) if rc == SQLITE_OK { v1 = rc2 } else { v1 = rc } return v1 } // C documentation // // /* // ** This function is called at the start of every write transaction. // ** There must already be a RESERVED or EXCLUSIVE lock on the database // ** file when this routine is called. // ** // ** Open the journal file for pager pPager and write a journal header // ** to the start of it. If there are active savepoints, open the sub-journal // ** as well. This function is only used when the journal file is being // ** opened to write a rollback log for a transaction. It is not used // ** when opening a hot journal file to roll it back. // ** // ** If the journal file is already open (as it may be in exclusive mode), // ** then this function just writes a journal header to the start of the // ** already open file. // ** // ** Whether or not the journal file is opened by this function, the // ** Pager.pInJournal bitvec structure is allocated. // ** // ** Return SQLITE_OK if everything is successful. Otherwise, return // ** SQLITE_NOMEM if the attempt to allocate Pager.pInJournal fails, or // ** an IO error code if opening or writing the journal file fails. // */ func _pager_open_journal(tls *libc.TLS, pPager uintptr) (r int32) { var flags, nSpill, rc int32 var pVfs uintptr _, _, _, _ = flags, nSpill, pVfs, rc rc = SQLITE_OK /* Return code */ pVfs = (*TPager)(unsafe.Pointer(pPager)).FpVfs /* Local cache of vfs pointer */ /* If already in the error state, this function is a no-op. But on ** the other hand, this routine is never called if we are already in ** an error state. */ if (*TPager)(unsafe.Pointer(pPager)).FerrCode != 0 { return (*TPager)(unsafe.Pointer(pPager)).FerrCode } if !((*TPager)(unsafe.Pointer(pPager)).FpWal != libc.UintptrFromInt32(0)) && int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) != int32(PAGER_JOURNALMODE_OFF) { (*TPager)(unsafe.Pointer(pPager)).FpInJournal = _sqlite3BitvecCreate(tls, (*TPager)(unsafe.Pointer(pPager)).FdbSize) if (*TPager)(unsafe.Pointer(pPager)).FpInJournal == uintptr(0) { return int32(SQLITE_NOMEM) } /* Open the journal file if it is not already open. */ if !((*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fjfd)).FpMethods != libc.UintptrFromInt32(0)) { if int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) == int32(PAGER_JOURNALMODE_MEMORY) { _sqlite3MemJournalOpen(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd) } else { flags = libc.Int32FromInt32(SQLITE_OPEN_READWRITE) | libc.Int32FromInt32(SQLITE_OPEN_CREATE) if (*TPager)(unsafe.Pointer(pPager)).FtempFile != 0 { flags = flags | (libc.Int32FromInt32(SQLITE_OPEN_DELETEONCLOSE) | libc.Int32FromInt32(SQLITE_OPEN_TEMP_JOURNAL)) flags = flags | int32(SQLITE_OPEN_EXCLUSIVE) nSpill = _sqlite3Config.FnStmtSpill } else { flags = flags | int32(SQLITE_OPEN_MAIN_JOURNAL) nSpill = _jrnlBufferSize(tls, pPager) } /* Verify that the database still has the same name as it did when ** it was originally opened. */ rc = _databaseIsUnmoved(tls, pPager) if rc == SQLITE_OK { rc = _sqlite3JournalOpen(tls, pVfs, (*TPager)(unsafe.Pointer(pPager)).FzJournal, (*TPager)(unsafe.Pointer(pPager)).Fjfd, flags, nSpill) } } } /* Write the first journal header to the journal file and open ** the sub-journal if necessary. */ if rc == SQLITE_OK { /* TODO: Check if all of these are really required. */ (*TPager)(unsafe.Pointer(pPager)).FnRec = 0 (*TPager)(unsafe.Pointer(pPager)).FjournalOff = 0 (*TPager)(unsafe.Pointer(pPager)).FsetSuper = uint8(0) (*TPager)(unsafe.Pointer(pPager)).FjournalHdr = 0 rc = _writeJournalHdr(tls, pPager) } } if rc != SQLITE_OK { _sqlite3BitvecDestroy(tls, (*TPager)(unsafe.Pointer(pPager)).FpInJournal) (*TPager)(unsafe.Pointer(pPager)).FpInJournal = uintptr(0) (*TPager)(unsafe.Pointer(pPager)).FjournalOff = 0 } else { (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_WRITER_CACHEMOD) } return rc } // C documentation // // /* // ** This function is a no-op if the pager is in exclusive mode and not // ** in the ERROR state. Otherwise, it switches the pager to PAGER_OPEN // ** state. // ** // ** If the pager is not in exclusive-access mode, the database file is // ** completely unlocked. If the file is unlocked and the file-system does // ** not exhibit the UNDELETABLE_WHEN_OPEN property, the journal file is // ** closed (if it is open). // ** // ** If the pager is in ERROR state when this function is called, the // ** contents of the pager cache are discarded before switching back to // ** the OPEN state. Regardless of whether the pager is in exclusive-mode // ** or not, any journal file left in the file-system will be treated // ** as a hot-journal and rolled back the next time a read-transaction // ** is opened (by this or by any other connection). // */ func _pager_unlock(tls *libc.TLS, pPager uintptr) { var iDc, rc, v1 int32 _, _, _ = iDc, rc, v1 _sqlite3BitvecDestroy(tls, (*TPager)(unsafe.Pointer(pPager)).FpInJournal) (*TPager)(unsafe.Pointer(pPager)).FpInJournal = uintptr(0) _releaseAllSavepoints(tls, pPager) if (*TPager)(unsafe.Pointer(pPager)).FpWal != uintptr(0) { if int32((*TPager)(unsafe.Pointer(pPager)).FeState) == int32(PAGER_ERROR) { /* If an IO error occurs in wal.c while attempting to wrap the wal file, ** then the Wal object may be holding a write-lock but no read-lock. ** This call ensures that the write-lock is dropped as well. We cannot ** have sqlite3WalEndReadTransaction() drop the write-lock, as it once ** did, because this would break "BEGIN EXCLUSIVE" handling for ** SQLITE_ENABLE_SETLK_TIMEOUT builds. */ _sqlite3WalEndWriteTransaction(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal) } _sqlite3WalEndReadTransaction(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal) (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_OPEN) } else { if !((*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0) { if (*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Ffd)).FpMethods != uintptr(0) { v1 = _sqlite3OsDeviceCharacteristics(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd) } else { v1 = 0 } /* Error code returned by pagerUnlockDb() */ iDc = v1 /* If the operating system support deletion of open files, then ** close the journal file when dropping the database lock. Otherwise ** another connection with journal_mode=delete might delete the file ** out from under us. */ if 0 == iDc&int32(SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN) || int32(1) != int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode)&int32(5) { _sqlite3OsClose(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd) } /* If the pager is in the ERROR state and the call to unlock the database ** file fails, set the current lock to UNKNOWN_LOCK. See the comment ** above the #define for UNKNOWN_LOCK for an explanation of why this ** is necessary. */ rc = _pagerUnlockDb(tls, pPager, NO_LOCK) if rc != SQLITE_OK && int32((*TPager)(unsafe.Pointer(pPager)).FeState) == int32(PAGER_ERROR) { (*TPager)(unsafe.Pointer(pPager)).FeLock = uint8(libc.Int32FromInt32(EXCLUSIVE_LOCK) + libc.Int32FromInt32(1)) } /* The pager state may be changed from PAGER_ERROR to PAGER_OPEN here ** without clearing the error code. This is intentional - the error ** code is cleared and the cache reset in the block below. */ (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_OPEN) } } /* If Pager.errCode is set, the contents of the pager cache cannot be ** trusted. Now that there are no outstanding references to the pager, ** it can safely move back to PAGER_OPEN state. This happens in both ** normal and exclusive-locking mode. */ if (*TPager)(unsafe.Pointer(pPager)).FerrCode != 0 { if int32((*TPager)(unsafe.Pointer(pPager)).FtempFile) == 0 { _pager_reset(tls, pPager) (*TPager)(unsafe.Pointer(pPager)).FchangeCountDone = uint8(0) (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_OPEN) } else { if (*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fjfd)).FpMethods != uintptr(0) { v1 = PAGER_OPEN } else { v1 = int32(PAGER_READER) } (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(v1) } if (*TPager)(unsafe.Pointer(pPager)).FbUseFetch != 0 { _sqlite3OsUnfetch(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, 0, uintptr(0)) } (*TPager)(unsafe.Pointer(pPager)).FerrCode = SQLITE_OK _setGetterMethod(tls, pPager) } (*TPager)(unsafe.Pointer(pPager)).FjournalOff = 0 (*TPager)(unsafe.Pointer(pPager)).FjournalHdr = 0 (*TPager)(unsafe.Pointer(pPager)).FsetSuper = uint8(0) } // C documentation // // /* // ** Attempt to parse the given string into a julian day number. Return // ** the number of errors. // ** // ** The following are acceptable forms for the input string: // ** // ** YYYY-MM-DD HH:MM:SS.FFF +/-HH:MM // ** DDDD.DD // ** now // ** // ** In the first form, the +/-HH:MM is always optional. The fractional // ** seconds extension (the ".FFF") is optional. The seconds portion // ** (":SS.FFF") is option. The year and date can be omitted as long // ** as there is a time string. The time string can be omitted as long // ** as there is a year and date. // */ func _parseDateOrTime(tls *libc.TLS, context uintptr, zDate uintptr, p uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* r at bp+0 */ float64 if _parseYyyyMmDd(tls, zDate, p) == 0 { return 0 } else { if _parseHhMmSs(tls, zDate, p) == 0 { return 0 } else { if _sqlite3StrICmp(tls, zDate, __ccgo_ts+1235) == 0 && _sqlite3NotPureFunc(tls, context) != 0 { return _setDateTimeToCurrent(tls, context, p) } else { if _sqlite3AtoF(tls, zDate, bp) > 0 { _setRawDateNumber(tls, p, **(**float64)(__ccgo_up(bp))) return 0 } else { if (_sqlite3StrICmp(tls, zDate, __ccgo_ts+1239) == 0 || _sqlite3StrICmp(tls, zDate, __ccgo_ts+1246) == 0) && _sqlite3NotPureFunc(tls, context) != 0 { libc.SetBitFieldPtr8Uint32(p+44, libc.Uint32FromInt32(1), 2, 0x4) return _setDateTimeToCurrent(tls, context, p) } } } } } return int32(1) } /* The julian day number for 9999-12-31 23:59:59.999 is 5373484.4999999. ** Multiplying this by 86400000 gives 464269060799999 as the maximum value ** for DateTime.iJD. ** ** But some older compilers (ex: gcc 4.2.1 on older Macs) cannot deal with ** such a large integer literal, so we have to encode it. */ // C documentation // // /* // ** Parse times of the form HH:MM or HH:MM:SS or HH:MM:SS.FFFF. // ** The HH, MM, and SS must each be exactly 2 digits. The // ** fractional seconds FFFF can be one or more digits. // ** // ** Return 1 if there is a parsing error and 0 on success. // */ func _parseHhMmSs(tls *libc.TLS, zDate uintptr, p uintptr) (r int32) { bp := tls.Alloc(48) defer tls.Free(48) var ms, rScale float64 var _ /* h at bp+0 */ int32 var _ /* m at bp+4 */ int32 var _ /* s at bp+8 */ int32 _, _ = ms, rScale ms = float64(0) if _getDigits(tls, zDate, __ccgo_ts+1211, libc.VaList(bp+24, bp, bp+4)) != int32(2) { return int32(1) } zDate = zDate + uintptr(5) if int32(**(**int8)(__ccgo_up(zDate))) == int32(':') { zDate = zDate + 1 if _getDigits(tls, zDate, __ccgo_ts+1219, libc.VaList(bp+24, bp+8)) != int32(1) { return int32(1) } zDate = zDate + uintptr(2) if int32(**(**int8)(__ccgo_up(zDate))) == int32('.') && int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(zDate + 1)))])&int32(0x04) != 0 { rScale = float64(1) zDate = zDate + 1 for int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(zDate)))])&int32(0x04) != 0 { ms = float64(ms*float64(10)) + float64(**(**int8)(__ccgo_up(zDate))) - libc.Float64FromUint8('0') rScale = rScale * float64(10) zDate = zDate + 1 } ms = ms / rScale /* Truncate to avoid problems with sub-milliseconds ** rounding. https://sqlite.org/forum/forumpost/766a2c9231 */ if ms > float64(0.999) { ms = float64(0.999) } } } else { **(**int32)(__ccgo_up(bp + 8)) = 0 } (*TDateTime)(unsafe.Pointer(p)).FvalidJD = 0 libc.SetBitFieldPtr8Uint32(p+44, libc.Uint32FromInt32(0), 0, 0x1) (*TDateTime)(unsafe.Pointer(p)).FvalidHMS = int8(1) (*TDateTime)(unsafe.Pointer(p)).Fh = **(**int32)(__ccgo_up(bp)) (*TDateTime)(unsafe.Pointer(p)).Fm = **(**int32)(__ccgo_up(bp + 4)) (*TDateTime)(unsafe.Pointer(p)).Fs = float64(**(**int32)(__ccgo_up(bp + 8))) + ms if _parseTimezone(tls, zDate, p) != 0 { return int32(1) } return 0 } // C documentation // // /* // ** Parse a timezone extension on the end of a date-time. // ** The extension is of the form: // ** // ** (+/-)HH:MM // ** // ** Or the "zulu" notation: // ** // ** Z // ** // ** If the parse is successful, write the number of minutes // ** of change in p->tz and return 0. If a parser error occurs, // ** return non-zero. // ** // ** A missing specifier is not considered an error. // */ func _parseTimezone(tls *libc.TLS, zDate uintptr, p uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var c, sgn int32 var _ /* nHr at bp+0 */ int32 var _ /* nMn at bp+4 */ int32 _, _ = c, sgn sgn = 0 for int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(zDate)))])&int32(0x01) != 0 { zDate = zDate + 1 } (*TDateTime)(unsafe.Pointer(p)).Ftz = 0 c = int32(**(**int8)(__ccgo_up(zDate))) if c == int32('-') { sgn = -int32(1) } else { if c == int32('+') { sgn = +libc.Int32FromInt32(1) } else { if c == int32('Z') || c == int32('z') { zDate = zDate + 1 libc.SetBitFieldPtr8Uint32(p+44, libc.Uint32FromInt32(0), 4, 0x10) libc.SetBitFieldPtr8Uint32(p+44, libc.Uint32FromInt32(1), 3, 0x8) goto zulu_time } else { return libc.BoolInt32(c != 0) } } } zDate = zDate + 1 if _getDigits(tls, zDate, __ccgo_ts+1203, libc.VaList(bp+16, bp, bp+4)) != int32(2) { return int32(1) } zDate = zDate + uintptr(5) (*TDateTime)(unsafe.Pointer(p)).Ftz = sgn * (**(**int32)(__ccgo_up(bp + 4)) + **(**int32)(__ccgo_up(bp))*int32(60)) if (*TDateTime)(unsafe.Pointer(p)).Ftz == 0 { /* Forum post 2025-09-17T10:12:14z */ libc.SetBitFieldPtr8Uint32(p+44, libc.Uint32FromInt32(0), 4, 0x10) libc.SetBitFieldPtr8Uint32(p+44, libc.Uint32FromInt32(1), 3, 0x8) } goto zulu_time zulu_time: ; for int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(zDate)))])&int32(0x01) != 0 { zDate = zDate + 1 } return libc.BoolInt32(int32(**(**int8)(__ccgo_up(zDate))) != 0) } // C documentation // // /* // ** Parse dates of the form // ** // ** YYYY-MM-DD HH:MM:SS.FFF // ** YYYY-MM-DD HH:MM:SS // ** YYYY-MM-DD HH:MM // ** YYYY-MM-DD // ** // ** Write the result into the DateTime structure and return 0 // ** on success and 1 if the input string is not a well-formed // ** date. // */ func _parseYyyyMmDd(tls *libc.TLS, zDate uintptr, p uintptr) (r int32) { bp := tls.Alloc(48) defer tls.Free(48) var neg, v1 int32 var _ /* D at bp+8 */ int32 var _ /* M at bp+4 */ int32 var _ /* Y at bp+0 */ int32 _, _ = neg, v1 if int32(**(**int8)(__ccgo_up(zDate))) == int32('-') { zDate = zDate + 1 neg = int32(1) } else { neg = 0 } if _getDigits(tls, zDate, __ccgo_ts+1223, libc.VaList(bp+24, bp, bp+4, bp+8)) != int32(3) { return int32(1) } zDate = zDate + uintptr(10) for int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(zDate)))])&int32(0x01) != 0 || int32('T') == int32(**(**Tu8)(__ccgo_up(zDate))) { zDate = zDate + 1 } if _parseHhMmSs(tls, zDate, p) == 0 { /* We got the time */ } else { if int32(**(**int8)(__ccgo_up(zDate))) == 0 { (*TDateTime)(unsafe.Pointer(p)).FvalidHMS = 0 } else { return int32(1) } } (*TDateTime)(unsafe.Pointer(p)).FvalidJD = 0 (*TDateTime)(unsafe.Pointer(p)).FvalidYMD = int8(1) if neg != 0 { v1 = -**(**int32)(__ccgo_up(bp)) } else { v1 = **(**int32)(__ccgo_up(bp)) } (*TDateTime)(unsafe.Pointer(p)).FY = v1 (*TDateTime)(unsafe.Pointer(p)).FM = **(**int32)(__ccgo_up(bp + 4)) (*TDateTime)(unsafe.Pointer(p)).FD = **(**int32)(__ccgo_up(bp + 8)) _computeFloor(tls, p) if (*TDateTime)(unsafe.Pointer(p)).Ftz != 0 { _computeJD(tls, p) } return 0 } /* Forward declaration */ // C documentation // // /* Add a single new term to an ExprList that is used to store a // ** list of identifiers. Report an error if the ID list contains // ** a COLLATE clause or an ASC or DESC keyword, except ignore the // ** error while parsing a legacy schema. // */ func _parserAddExprIdListTerm(tls *libc.TLS, pParse uintptr, pPrior uintptr, pIdToken uintptr, hasCollate int32, sortOrder int32) (r uintptr) { bp := tls.Alloc(32) defer tls.Free(32) var p uintptr _ = p p = _sqlite3ExprListAppend(tls, pParse, pPrior, uintptr(0)) if (hasCollate != 0 || sortOrder != -int32(1)) && int32((*Tsqlite3)(unsafe.Pointer((*TParse)(unsafe.Pointer(pParse)).Fdb)).Finit1.Fbusy) == 0 { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+26175, libc.VaList(bp+8, (*TToken)(unsafe.Pointer(pIdToken)).Fn, (*TToken)(unsafe.Pointer(pIdToken)).Fz)) } _sqlite3ExprListSetName(tls, pParse, p, pIdToken, int32(1)) return p } /**************** End of %include directives **********************************/ /* These constants specify the various numeric values for terminal symbols. ***************** Begin token definitions *************************************/ /**************** End token definitions ***************************************/ // C documentation // // /* Memory allocator for parser stack resizing. This is a thin wrapper around // ** sqlite3_realloc() that includes a call to sqlite3FaultSim() to facilitate // ** testing. // */ func _parserStackRealloc(tls *libc.TLS, pOld uintptr, newSize Tsqlite3_uint64, pParse uintptr) (r uintptr) { var p, v1 uintptr _, _ = p, v1 if _sqlite3FaultSim(tls, int32(700)) != 0 { v1 = uintptr(0) } else { v1 = Xsqlite3_realloc(tls, pOld, int32(newSize)) } p = v1 if p == uintptr(0) { _sqlite3OomFault(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb) } return p } // C documentation // // /* // ** Generate a syntax error // */ func _parserSyntaxError(tls *libc.TLS, pParse uintptr, p uintptr) { bp := tls.Alloc(16) defer tls.Free(16) _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+26060, libc.VaList(bp+8, p)) } // C documentation // // /* // ** If there are currently more than nMaxPage pages allocated, try // ** to recycle pages to reduce the number allocated to nMaxPage. // */ func _pcache1EnforceMaxPage(tls *libc.TLS, pCache uintptr) { var p, pGroup, v1 uintptr var v2 bool _, _, _, _ = p, pGroup, v1, v2 pGroup = (*TPCache1)(unsafe.Pointer(pCache)).FpGroup for { if v2 = (*TPGroup)(unsafe.Pointer(pGroup)).FnPurgeable > (*TPGroup)(unsafe.Pointer(pGroup)).FnMaxPage; v2 { v1 = (*TPGroup)(unsafe.Pointer(pGroup)).Flru.FpLruPrev p = v1 } if !(v2 && int32((*TPgHdr1)(unsafe.Pointer(v1)).FisAnchor) == 0) { break } _pcache1PinPage(tls, p) _pcache1RemoveFromHash(tls, p, int32(1)) } if (*TPCache1)(unsafe.Pointer(pCache)).FnPage == uint32(0) && (*TPCache1)(unsafe.Pointer(pCache)).FpBulk != 0 { Xsqlite3_free(tls, (*TPCache1)(unsafe.Pointer(pCache)).FpBulk) v1 = libc.UintptrFromInt32(0) (*TPCache1)(unsafe.Pointer(pCache)).FpFree = v1 (*TPCache1)(unsafe.Pointer(pCache)).FpBulk = v1 } } // C documentation // // /* // ** Implementation of the sqlite3_pcache.xPagecount method. // */ func _pcache1Pagecount(tls *libc.TLS, p uintptr) (r int32) { var n int32 var pCache uintptr _, _ = n, pCache pCache = p Xsqlite3_mutex_enter(tls, (*TPGroup)(unsafe.Pointer((*TPCache1)(unsafe.Pointer(pCache)).FpGroup)).Fmutex) n = int32((*TPCache1)(unsafe.Pointer(pCache)).FnPage) Xsqlite3_mutex_leave(tls, (*TPGroup)(unsafe.Pointer((*TPCache1)(unsafe.Pointer(pCache)).FpGroup)).Fmutex) return n } // C documentation // // /* // ** Manage pPage's participation on the dirty list. Bits of the addRemove // ** argument determines what operation to do. The 0x01 bit means first // ** remove pPage from the dirty list. The 0x02 means add pPage back to // ** the dirty list. Doing both moves pPage to the front of the dirty list. // */ func _pcacheManageDirtyList(tls *libc.TLS, pPage uintptr, addRemove Tu8) { var p uintptr _ = p p = (*TPgHdr)(unsafe.Pointer(pPage)).FpCache if int32(addRemove)&int32(PCACHE_DIRTYLIST_REMOVE) != 0 { /* Update the PCache1.pSynced variable if necessary. */ if (*TPCache)(unsafe.Pointer(p)).FpSynced == pPage { (*TPCache)(unsafe.Pointer(p)).FpSynced = (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyPrev } if (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyNext != 0 { (*TPgHdr)(unsafe.Pointer((*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyNext)).FpDirtyPrev = (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyPrev } else { (*TPCache)(unsafe.Pointer(p)).FpDirtyTail = (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyPrev } if (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyPrev != 0 { (*TPgHdr)(unsafe.Pointer((*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyPrev)).FpDirtyNext = (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyNext } else { /* If there are now no dirty pages in the cache, set eCreate to 2. ** This is an optimization that allows sqlite3PcacheFetch() to skip ** searching for a dirty page to eject from the cache when it might ** otherwise have to. */ (*TPCache)(unsafe.Pointer(p)).FpDirty = (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyNext if (*TPCache)(unsafe.Pointer(p)).FpDirty == uintptr(0) { /*OPTIMIZATION-IF-TRUE*/ (*TPCache)(unsafe.Pointer(p)).FeCreate = uint8(2) } } } if int32(addRemove)&int32(PCACHE_DIRTYLIST_ADD) != 0 { (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyPrev = uintptr(0) (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyNext = (*TPCache)(unsafe.Pointer(p)).FpDirty if (*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyNext != 0 { (*TPgHdr)(unsafe.Pointer((*TPgHdr)(unsafe.Pointer(pPage)).FpDirtyNext)).FpDirtyPrev = pPage } else { (*TPCache)(unsafe.Pointer(p)).FpDirtyTail = pPage if (*TPCache)(unsafe.Pointer(p)).FbPurgeable != 0 { (*TPCache)(unsafe.Pointer(p)).FeCreate = uint8(1) } } (*TPCache)(unsafe.Pointer(p)).FpDirty = pPage /* If pSynced is NULL and this page has a clear NEED_SYNC flag, set ** pSynced to point to it. Checking the NEED_SYNC flag is an ** optimization, as if pSynced points to a page with the NEED_SYNC ** flag set sqlite3PcacheFetchStress() searches through all newer ** entries of the dirty-list for a page with NEED_SYNC clear anyway. */ if !((*TPCache)(unsafe.Pointer(p)).FpSynced != 0) && 0 == int32((*TPgHdr)(unsafe.Pointer(pPage)).Fflags)&int32(PGHDR_NEED_SYNC) { (*TPCache)(unsafe.Pointer(p)).FpSynced = pPage } } } const _pctype = 0 const _pgmptr = 0 type _pid_t = T_pid_t // C documentation // // /* Names of columns for pragmas that return multi-column result // ** or that return single-column results where the name of the // ** result column is different from the name of the pragma // */ var _pragCName = [57]uintptr{ 0: __ccgo_ts + 6865, 1: __ccgo_ts + 19003, 2: __ccgo_ts + 10594, 3: __ccgo_ts + 19007, 4: __ccgo_ts + 19012, 5: __ccgo_ts + 19015, 6: __ccgo_ts + 19025, 7: __ccgo_ts + 19035, 8: __ccgo_ts + 19041, 9: __ccgo_ts + 19045, 10: __ccgo_ts + 19050, 11: __ccgo_ts + 19055, 12: __ccgo_ts + 19063, 13: __ccgo_ts + 19074, 14: __ccgo_ts + 19077, 15: __ccgo_ts + 19045, 16: __ccgo_ts + 19084, 17: __ccgo_ts + 19050, 18: __ccgo_ts + 19092, 19: __ccgo_ts + 19096, 20: __ccgo_ts + 19101, 21: __ccgo_ts + 19107, 22: __ccgo_ts + 19045, 23: __ccgo_ts + 19050, 24: __ccgo_ts + 19114, 25: __ccgo_ts + 19119, 26: __ccgo_ts + 19122, 27: __ccgo_ts + 19129, 28: __ccgo_ts + 19041, 29: __ccgo_ts + 19045, 30: __ccgo_ts + 19135, 31: __ccgo_ts + 19140, 32: __ccgo_ts + 19145, 33: __ccgo_ts + 19003, 34: __ccgo_ts + 19045, 35: __ccgo_ts + 19149, 36: __ccgo_ts + 19156, 37: __ccgo_ts + 19163, 38: __ccgo_ts + 14265, 39: __ccgo_ts + 14261, 40: __ccgo_ts + 19171, 41: __ccgo_ts + 19176, 42: __ccgo_ts + 19181, 43: __ccgo_ts + 10594, 44: __ccgo_ts + 19186, 45: __ccgo_ts + 6868, 46: __ccgo_ts + 19192, 47: __ccgo_ts + 19197, 48: __ccgo_ts + 18387, 49: __ccgo_ts + 19202, 50: __ccgo_ts + 19003, 51: __ccgo_ts + 19045, 52: __ccgo_ts + 19215, 53: __ccgo_ts + 19220, 54: __ccgo_ts + 19229, 55: __ccgo_ts + 19236, 56: __ccgo_ts + 19247, } // C documentation // // /* // ** Create zero or more entries in the output for the SQL functions // ** defined by FuncDef p. // */ func _pragmaFunclistLine(tls *libc.TLS, v uintptr, p uintptr, isBuiltin int32, showInternFuncs int32) { bp := tls.Alloc(64) defer tls.Free(64) var mask Tu32 var zType uintptr _, _ = mask, zType mask = uint32(libc.Int32FromInt32(SQLITE_DETERMINISTIC) | libc.Int32FromInt32(SQLITE_DIRECTONLY) | libc.Int32FromInt32(SQLITE_SUBTYPE) | libc.Int32FromInt32(SQLITE_INNOCUOUS) | libc.Int32FromInt32(SQLITE_FUNC_INTERNAL)) if showInternFuncs != 0 { mask = uint32(0xffffffff) } for { if !(p != 0) { break } if (*TFuncDef)(unsafe.Pointer(p)).FxSFunc == uintptr(0) { goto _1 } if (*TFuncDef)(unsafe.Pointer(p)).FfuncFlags&uint32(SQLITE_FUNC_INTERNAL) != uint32(0) && showInternFuncs == 0 { goto _1 } if (*TFuncDef)(unsafe.Pointer(p)).FxValue != uintptr(0) { zType = __ccgo_ts + 20437 } else { if (*TFuncDef)(unsafe.Pointer(p)).FxFinalize != uintptr(0) { zType = __ccgo_ts + 20439 } else { zType = __ccgo_ts + 9126 } } _sqlite3VdbeMultiLoad(tls, v, int32(1), __ccgo_ts+20441, libc.VaList(bp+8, (*TFuncDef)(unsafe.Pointer(p)).FzName, isBuiltin, zType, _azEnc[(*TFuncDef)(unsafe.Pointer(p)).FfuncFlags&uint32(SQLITE_FUNC_ENCMASK)], int32((*TFuncDef)(unsafe.Pointer(p)).FnArg), (*TFuncDef)(unsafe.Pointer(p)).FfuncFlags&mask^uint32(SQLITE_INNOCUOUS))) goto _1 _1: ; p = (*TFuncDef)(unsafe.Pointer(p)).FpNext } } // C documentation // // /* Figure out the best index to use to search a pragma virtual table. // ** // ** There are not really any index choices. But we want to encourage the // ** query planner to give == constraints on as many hidden parameters as // ** possible, and especially on the first hidden parameter. So return a // ** high cost if hidden parameters are unconstrained. // */ func _pragmaVtabBestIndex(tls *libc.TLS, tab uintptr, pIdxInfo uintptr) (r int32) { var i, j int32 var pConstraint, pTab uintptr var seen [2]int32 _, _, _, _, _ = i, j, pConstraint, pTab, seen pTab = tab (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = libc.Float64FromInt32(1) if int32((*TPragmaVtab)(unsafe.Pointer(pTab)).FnHidden) == 0 { return SQLITE_OK } pConstraint = (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraint seen[0] = 0 seen[int32(1)] = 0 i = 0 for { if !(i < (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FnConstraint) { break } if (*Tsqlite3_index_constraint)(unsafe.Pointer(pConstraint)).FiColumn < int32((*TPragmaVtab)(unsafe.Pointer(pTab)).FiHidden) { goto _1 } if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(pConstraint)).Fop) != int32(SQLITE_INDEX_CONSTRAINT_EQ) { goto _1 } if int32((*Tsqlite3_index_constraint)(unsafe.Pointer(pConstraint)).Fusable) == 0 { return int32(SQLITE_CONSTRAINT) } j = (*Tsqlite3_index_constraint)(unsafe.Pointer(pConstraint)).FiColumn - int32((*TPragmaVtab)(unsafe.Pointer(pTab)).FiHidden) seen[j] = i + int32(1) goto _1 _1: ; i = i + 1 pConstraint += 12 } if seen[0] == 0 { (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = libc.Float64FromInt32(2147483647) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(2147483647) return SQLITE_OK } j = seen[0] - int32(1) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(j)*8))).FargvIndex = int32(1) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(j)*8))).Fomit = uint8(1) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedCost = libc.Float64FromInt32(20) (*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FestimatedRows = int64(20) if seen[int32(1)] != 0 { j = seen[int32(1)] - int32(1) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(j)*8))).FargvIndex = int32(2) (**(**Tsqlite3_index_constraint_usage)(__ccgo_up((*Tsqlite3_index_info)(unsafe.Pointer(pIdxInfo)).FaConstraintUsage + uintptr(j)*8))).Fomit = uint8(1) } return SQLITE_OK } // C documentation // // /* // ** Prepare the SQL statement in buffer zSql against database handle db. // ** If successful, set *ppStmt to point to the new statement and return // ** SQLITE_OK. // ** // ** Otherwise, if an error does occur, set *ppStmt to NULL and return // ** an SQLite error code. Additionally, set output variable *pzErrmsg to // ** point to a buffer containing an error message. It is the responsibility // ** of the caller to (eventually) free this buffer using sqlite3_free(). // */ func _prepareAndCollectError(tls *libc.TLS, db uintptr, ppStmt uintptr, pzErrmsg uintptr, zSql uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 _ = rc rc = Xsqlite3_prepare_v2(tls, db, zSql, -int32(1), ppStmt, uintptr(0)) if rc != SQLITE_OK { **(**uintptr)(__ccgo_up(pzErrmsg)) = Xsqlite3_mprintf(tls, __ccgo_ts+4729, libc.VaList(bp+8, Xsqlite3_errmsg(tls, db))) **(**uintptr)(__ccgo_up(ppStmt)) = uintptr(0) } return rc } // C documentation // // /* // ** Allocate memory for a temporary buffer needed for printf rendering. // ** // ** If the requested size of the temp buffer is larger than the size // ** of the output buffer in pAccum, then cause an SQLITE_TOOBIG error. // ** Do the size check before the memory allocation to prevent rogue // ** SQL from requesting large allocations using the precision or width // ** field of the printf() function. // */ func _printfTempBuf(tls *libc.TLS, pAccum uintptr, n Tsqlite3_int64) (r uintptr) { var z uintptr _ = z if (*Tsqlite3_str)(unsafe.Pointer(pAccum)).FaccError != 0 { return uintptr(0) } if n > int64((*Tsqlite3_str)(unsafe.Pointer(pAccum)).FnAlloc) && n > int64((*Tsqlite3_str)(unsafe.Pointer(pAccum)).FmxAlloc) { _sqlite3StrAccumSetError(tls, pAccum, uint8(SQLITE_TOOBIG)) return uintptr(0) } z = Xsqlite3_malloc(tls, int32(n)) if z == uintptr(0) { _sqlite3StrAccumSetError(tls, pAccum, uint8(SQLITE_NOMEM)) } return z } /* ** On machines with a small stack size, you can redefine the ** SQLITE_PRINT_BUF_SIZE to be something smaller, if desired. */ /* ** Hard limit on the precision of floating-point conversions. */ // C documentation // // /* // ** Read an entry from the pointer map. // ** // ** This routine retrieves the pointer map entry for page 'key', writing // ** the type and parent page number to *pEType and *pPgno respectively. // ** An error code is returned if something goes wrong, otherwise SQLITE_OK. // */ func _ptrmapGet(tls *libc.TLS, pBt uintptr, key TPgno, pEType uintptr, pPgno uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var iPtrmap, offset, rc int32 var pPtrmap uintptr var _ /* pDbPage at bp+0 */ uintptr _, _, _, _ = iPtrmap, offset, pPtrmap, rc iPtrmap = int32(_ptrmapPageno(tls, pBt, key)) rc = _sqlite3PagerGet(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, uint32(iPtrmap), bp, 0) if rc != 0 { return rc } pPtrmap = _sqlite3PagerGetData(tls, **(**uintptr)(__ccgo_up(bp))) offset = int32(libc.Uint32FromInt32(5) * (key - uint32(iPtrmap) - libc.Uint32FromInt32(1))) if offset < 0 { _sqlite3PagerUnref(tls, **(**uintptr)(__ccgo_up(bp))) return _sqlite3CorruptError(tls, int32(74364)) } **(**Tu8)(__ccgo_up(pEType)) = **(**Tu8)(__ccgo_up(pPtrmap + uintptr(offset))) if pPgno != 0 { **(**TPgno)(__ccgo_up(pPgno)) = _sqlite3Get4byte(tls, pPtrmap+uintptr(offset+int32(1))) } _sqlite3PagerUnref(tls, **(**uintptr)(__ccgo_up(bp))) if int32(**(**Tu8)(__ccgo_up(pEType))) < int32(1) || int32(**(**Tu8)(__ccgo_up(pEType))) > int32(5) { return _sqlite3CorruptError(tls, int32(74372)) } return SQLITE_OK } /* ** Given a btree page and a cell index (0 means the first cell on ** the page, 1 means the second cell, and so forth) return a pointer ** to the cell content. ** ** findCellPastPtr() does the same except it skips past the initial ** 4-byte child pointer found on interior pages, if there is one. ** ** This routine works only for pages that do not contain overflow cells. */ // C documentation // // /* // ** Given a page number of a regular database page, return the page // ** number for the pointer-map page that contains the entry for the // ** input page number. // ** // ** Return 0 (not a valid page) for pgno==1 since there is // ** no pointer map associated with page 1. The integrity_check logic // ** requires that ptrmapPageno(*,1)!=1. // */ func _ptrmapPageno(tls *libc.TLS, pBt uintptr, pgno TPgno) (r TPgno) { var iPtrMap, ret TPgno var nPagesPerMapPage int32 _, _, _ = iPtrMap, nPagesPerMapPage, ret if pgno < uint32(2) { return uint32(0) } nPagesPerMapPage = int32((*TBtShared)(unsafe.Pointer(pBt)).FusableSize/uint32(5) + uint32(1)) iPtrMap = (pgno - uint32(2)) / uint32(nPagesPerMapPage) ret = iPtrMap*uint32(nPagesPerMapPage) + uint32(2) if ret == uint32(_sqlite3PendingByte)/(*TBtShared)(unsafe.Pointer(pBt)).FpageSize+libc.Uint32FromInt32(1) { ret = ret + 1 } return ret } // C documentation // // /* // ** Write an entry into the pointer map. // ** // ** This routine updates the pointer map entry for page number 'key' // ** so that it maps to type 'eType' and parent page number 'pgno'. // ** // ** If *pRC is initially non-zero (non-SQLITE_OK) then this routine is // ** a no-op. If an error occurs, the appropriate error code is written // ** into *pRC. // */ func _ptrmapPut(tls *libc.TLS, pBt uintptr, key TPgno, eType Tu8, parent TPgno, pRC uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var iPtrmap TPgno var offset, rc, v1 int32 var pPtrmap uintptr var _ /* pDbPage at bp+0 */ uintptr _, _, _, _, _ = iPtrmap, offset, pPtrmap, rc, v1 /* Return code from subfunctions */ if **(**int32)(__ccgo_up(pRC)) != 0 { return } /* The super-journal page number must never be used as a pointer map page */ if key == uint32(0) { **(**int32)(__ccgo_up(pRC)) = _sqlite3CorruptError(tls, int32(74301)) return } iPtrmap = _ptrmapPageno(tls, pBt, key) rc = _sqlite3PagerGet(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, iPtrmap, bp, 0) if rc != SQLITE_OK { **(**int32)(__ccgo_up(pRC)) = rc return } if int32(**(**int8)(__ccgo_up(_sqlite3PagerGetExtra(tls, **(**uintptr)(__ccgo_up(bp)))))) != 0 { /* The first byte of the extra data is the MemPage.isInit byte. ** If that byte is set, it means this page is also being used ** as a btree page. */ **(**int32)(__ccgo_up(pRC)) = _sqlite3CorruptError(tls, int32(74314)) goto ptrmap_exit } offset = int32(libc.Uint32FromInt32(5) * (key - iPtrmap - libc.Uint32FromInt32(1))) if offset < 0 { **(**int32)(__ccgo_up(pRC)) = _sqlite3CorruptError(tls, int32(74319)) goto ptrmap_exit } pPtrmap = _sqlite3PagerGetData(tls, **(**uintptr)(__ccgo_up(bp))) if int32(eType) != int32(**(**Tu8)(__ccgo_up(pPtrmap + uintptr(offset)))) || _sqlite3Get4byte(tls, pPtrmap+uintptr(offset+int32(1))) != parent { v1 = _sqlite3PagerWrite(tls, **(**uintptr)(__ccgo_up(bp))) rc = v1 **(**int32)(__ccgo_up(pRC)) = v1 if rc == SQLITE_OK { **(**Tu8)(__ccgo_up(pPtrmap + uintptr(offset))) = eType _sqlite3Put4byte(tls, pPtrmap+uintptr(offset+int32(1)), parent) } } goto ptrmap_exit ptrmap_exit: ; _sqlite3PagerUnref(tls, **(**uintptr)(__ccgo_up(bp))) } type _purecall_handler = T_purecall_handler const _pwctype = 0 // C documentation // // /* // ** The SELECT statement iterating through the keys for the current object // ** (p->objiter.pSelect) currently points to a valid row. However, there // ** is something wrong with the rbu_control value in the rbu_control value // ** stored in the (p->nCol+1)'th column. Set the error code and error message // ** of the RBU handle to something reflecting this. // */ func _rbuBadControlError(tls *libc.TLS, p uintptr) { (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = int32(SQLITE_ERROR) (*Tsqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, __ccgo_ts+32983, 0) } // C documentation // // /* // ** Called when a page of data is written to offset iOff of the database // ** file while the rbu handle is in capture mode. Record the page number // ** of the page being written in the aFrame[] array. // */ func _rbuCaptureDbWrite(tls *libc.TLS, pRbu uintptr, iOff Ti64) (r int32) { (**(**TRbuFrame)(__ccgo_up((*Tsqlite3rbu)(unsafe.Pointer(pRbu)).FaFrame + uintptr((*Tsqlite3rbu)(unsafe.Pointer(pRbu)).FnFrame-int32(1))*8))).FiDbPage = uint32(iOff/int64((*Tsqlite3rbu)(unsafe.Pointer(pRbu)).Fpgsz)) + uint32(1) return SQLITE_OK } // C documentation // // /* // ** This is called as part of an incremental checkpoint operation. Copy // ** a single frame of data from the wal file into the database file, as // ** indicated by the RbuFrame object. // */ func _rbuCheckpointFrame(tls *libc.TLS, p uintptr, pFrame uintptr) { var iOff Ti64 var pDb, pWal uintptr _, _, _ = iOff, pDb, pWal pWal = (*Trbu_file)(unsafe.Pointer((*Trbu_file)(unsafe.Pointer((*Tsqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpWalFd)).FpReal pDb = (*Trbu_file)(unsafe.Pointer((*Tsqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal iOff = int64((*TRbuFrame)(unsafe.Pointer(pFrame)).FiWalFrame-libc.Uint32FromInt32(1))*int64((*Tsqlite3rbu)(unsafe.Pointer(p)).Fpgsz+libc.Int32FromInt32(24)) + int64(32) + int64(24) (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Tsqlite3_int64) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(pWal)).FpMethods)).FxRead})))(tls, pWal, (*Tsqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Tsqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc != 0 { return } iOff = int64((*TRbuFrame)(unsafe.Pointer(pFrame)).FiDbPage-libc.Uint32FromInt32(1)) * int64((*Tsqlite3rbu)(unsafe.Pointer(p)).Fpgsz) (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, uintptr, int32, Tsqlite3_int64) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxWrite})))(tls, pDb, (*Tsqlite3rbu)(unsafe.Pointer(p)).FaBuf, (*Tsqlite3rbu)(unsafe.Pointer(p)).Fpgsz, iOff) } /* ** This value is copied from the definition of ZIPVFS_CTRL_FILE_POINTER ** in zipvfs.h. */ // C documentation // // /* // ** Allocate a private rbu VFS for the rbu handle passed as the only // ** argument. This VFS will be used unless the call to sqlite3rbu_open() // ** specified a URI with a vfs=? option in place of a target database // ** file name. // */ func _rbuCreateVfs(tls *libc.TLS, p uintptr) { bp := tls.Alloc(96) defer tls.Free(96) var pVfs uintptr var _ /* rnd at bp+0 */ int32 var _ /* zRnd at bp+4 */ [64]int8 _ = pVfs Xsqlite3_randomness(tls, int32(4), bp) Xsqlite3_snprintf(tls, int32(64), bp+4, __ccgo_ts+35567, libc.VaList(bp+80, **(**int32)(__ccgo_up(bp)))) (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3rbu_create_vfs(tls, bp+4, uintptr(0)) if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { pVfs = Xsqlite3_vfs_find(tls, bp+4) (*Tsqlite3rbu)(unsafe.Pointer(p)).FzVfsName = (*Tsqlite3_vfs)(unsafe.Pointer(pVfs)).FzName (*Trbu_vfs)(unsafe.Pointer(pVfs)).FpRbu = p } } // C documentation // // /* // ** If there is a "*-oal" file in the file-system corresponding to the // ** target database in the file-system, delete it. If an error occurs, // ** leave an error code and error message in the rbu handle. // */ func _rbuDeleteOalFile(tls *libc.TLS, p uintptr) { bp := tls.Alloc(32) defer tls.Free(32) var zOal uintptr var _ /* pVfs at bp+0 */ uintptr _ = zOal zOal = _rbuMPrintf(tls, p, __ccgo_ts+34989, libc.VaList(bp+16, (*Tsqlite3rbu)(unsafe.Pointer(p)).FzTarget)) if zOal != 0 { **(**uintptr)(__ccgo_up(bp)) = uintptr(0) Xsqlite3_file_control(tls, (*Tsqlite3rbu)(unsafe.Pointer(p)).FdbMain, __ccgo_ts+8033, int32(SQLITE_FCNTL_VFS_POINTER), bp) (*(*func(*libc.TLS, uintptr, uintptr, int32) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_vfs)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FxDelete})))(tls, **(**uintptr)(__ccgo_up(bp)), zOal, 0) Xsqlite3_free(tls, zOal) } } // C documentation // // /* // ** Return true if the database handle passed as the only argument // ** was opened with the rbu_exclusive_checkpoint=1 URI parameter // ** specified. Or false otherwise. // */ func _rbuExclusiveCheckpoint(tls *libc.TLS, db uintptr) (r int32) { var zUri uintptr _ = zUri zUri = Xsqlite3_db_filename(tls, db, uintptr(0)) return Xsqlite3_uri_boolean(tls, zUri, __ccgo_ts+34964, 0) } // C documentation // // /* // ** Finalize the statement passed as the second argument. // ** // ** If the sqlite3_finalize() call indicates that an error occurs, and the // ** rbu handle error code is not already set, set the error code and error // ** message accordingly. // */ func _rbuFinalize(tls *libc.TLS, p uintptr, pStmt uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var db uintptr var rc int32 _, _ = db, rc db = Xsqlite3_db_handle(tls, pStmt) rc = Xsqlite3_finalize(tls, pStmt) if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK && rc != SQLITE_OK { (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = rc (*Tsqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, __ccgo_ts+4729, libc.VaList(bp+8, Xsqlite3_errmsg(tls, db))) } } // C documentation // // /* // ** Take an EXCLUSIVE lock on the database file. Return SQLITE_OK if // ** successful, or an SQLite error code otherwise. // */ func _rbuLockDatabase(tls *libc.TLS, db uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 var _ /* fd at bp+0 */ uintptr _ = rc rc = SQLITE_OK **(**uintptr)(__ccgo_up(bp)) = uintptr(0) Xsqlite3_file_control(tls, db, __ccgo_ts+8033, int32(RBU_ZIPVFS_CTRL_FILE_POINTER), bp) if **(**uintptr)(__ccgo_up(bp)) != 0 { Xsqlite3_file_control(tls, db, __ccgo_ts+8033, int32(SQLITE_FCNTL_FILE_POINTER), bp) rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FpMethods)).FxLock})))(tls, **(**uintptr)(__ccgo_up(bp)), int32(SQLITE_LOCK_SHARED)) if rc == SQLITE_OK { rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FpMethods)).FxUnlock})))(tls, **(**uintptr)(__ccgo_up(bp)), SQLITE_LOCK_NONE) } Xsqlite3_file_control(tls, db, __ccgo_ts+8033, int32(RBU_ZIPVFS_CTRL_FILE_POINTER), bp) } else { Xsqlite3_file_control(tls, db, __ccgo_ts+8033, int32(SQLITE_FCNTL_FILE_POINTER), bp) } if rc == SQLITE_OK && (*Tsqlite3_file)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FpMethods != 0 { rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FpMethods)).FxLock})))(tls, **(**uintptr)(__ccgo_up(bp)), int32(SQLITE_LOCK_SHARED)) if rc == SQLITE_OK { rc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FpMethods)).FxLock})))(tls, **(**uintptr)(__ccgo_up(bp)), int32(SQLITE_LOCK_EXCLUSIVE)) } } return rc } func _rbuOpenDbhandle(tls *libc.TLS, p uintptr, zName uintptr, bUseVfs int32) (r uintptr) { bp := tls.Alloc(32) defer tls.Free(32) var flags int32 var v1 uintptr var _ /* db at bp+0 */ uintptr _, _ = flags, v1 **(**uintptr)(__ccgo_up(bp)) = uintptr(0) if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { flags = libc.Int32FromInt32(SQLITE_OPEN_READWRITE) | libc.Int32FromInt32(SQLITE_OPEN_CREATE) | libc.Int32FromInt32(SQLITE_OPEN_URI) if bUseVfs != 0 { v1 = (*Tsqlite3rbu)(unsafe.Pointer(p)).FzVfsName } else { v1 = uintptr(0) } (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_open_v2(tls, zName, bp, flags, v1) if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc != 0 { (*Tsqlite3rbu)(unsafe.Pointer(p)).FzErrmsg = Xsqlite3_mprintf(tls, __ccgo_ts+4729, libc.VaList(bp+16, Xsqlite3_errmsg(tls, **(**uintptr)(__ccgo_up(bp))))) Xsqlite3_close(tls, **(**uintptr)(__ccgo_up(bp))) **(**uintptr)(__ccgo_up(bp)) = uintptr(0) } } return **(**uintptr)(__ccgo_up(bp)) } func _rbuPutU16(tls *libc.TLS, aBuf uintptr, iVal Tu16) { **(**Tu8)(__ccgo_up(aBuf)) = uint8(int32(iVal) >> int32(8) & int32(0xFF)) **(**Tu8)(__ccgo_up(aBuf + 1)) = uint8(int32(iVal) >> 0 & int32(0xFF)) } // C documentation // // /* // ** This function is called as part of initializing or reinitializing an // ** incremental checkpoint. // ** // ** It populates the sqlite3rbu.aFrame[] array with the set of // ** (wal frame -> db page) copy operations required to checkpoint the // ** current wal file, and obtains the set of shm locks required to safely // ** perform the copy operations directly on the file-system. // ** // ** If argument pState is not NULL, then the incremental checkpoint is // ** being resumed. In this case, if the checksum of the wal-index-header // ** following recovery is not the same as the checksum saved in the RbuState // ** object, then the rbu handle is set to DONE state. This occurs if some // ** other client appends a transaction to the wal file in the middle of // ** an incremental checkpoint. // */ func _rbuSetupCheckpoint(tls *libc.TLS, p uintptr, pState uintptr) { var nSectorSize, rc2, v1 int32 var pDb, pWal uintptr _, _, _, _, _ = nSectorSize, pDb, pWal, rc2, v1 /* If pState is NULL, then the wal file may not have been opened and ** recovered. Running a read-statement here to ensure that doing so ** does not interfere with the "capture" process below. */ if pState == uintptr(0) { (*Tsqlite3rbu)(unsafe.Pointer(p)).FeStage = 0 if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = Xsqlite3_exec(tls, (*Tsqlite3rbu)(unsafe.Pointer(p)).FdbMain, __ccgo_ts+34883, uintptr(0), uintptr(0), uintptr(0)) } } /* Assuming no error has occurred, run a "restart" checkpoint with the ** sqlite3rbu.eStage variable set to CAPTURE. This turns on the following ** special behaviour in the rbu VFS: ** ** * If the exclusive shm WRITER or READ0 lock cannot be obtained, ** the checkpoint fails with SQLITE_BUSY (normally SQLite would ** proceed with running a passive checkpoint instead of failing). ** ** * Attempts to read from the *-wal file or write to the database file ** do not perform any IO. Instead, the frame/page combinations that ** would be read/written are recorded in the sqlite3rbu.aFrame[] ** array. ** ** * Calls to xShmLock(UNLOCK) to release the exclusive shm WRITER, ** READ0 and CHECKPOINT locks taken as part of the checkpoint are ** no-ops. These locks will not be released until the connection ** is closed. ** ** * Attempting to xSync() the database file causes an SQLITE_NOTICE ** error. ** ** As a result, unless an error (i.e. OOM or SQLITE_BUSY) occurs, the ** checkpoint below fails with SQLITE_NOTICE, and leaves the aFrame[] ** array populated with a set of (frame -> page) mappings. Because the ** WRITER, CHECKPOINT and READ0 locks are still held, it is safe to copy ** data from the wal file into the database file according to the ** contents of aFrame[]. */ if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { (*Tsqlite3rbu)(unsafe.Pointer(p)).FeStage = int32(RBU_STAGE_CAPTURE) rc2 = Xsqlite3_exec(tls, (*Tsqlite3rbu)(unsafe.Pointer(p)).FdbMain, __ccgo_ts+34929, uintptr(0), uintptr(0), uintptr(0)) if rc2 != int32(SQLITE_NOTICE) { (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = rc2 } } if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK && (*Tsqlite3rbu)(unsafe.Pointer(p)).FnFrame > 0 { (*Tsqlite3rbu)(unsafe.Pointer(p)).FeStage = int32(RBU_STAGE_CKPT) if pState != 0 { v1 = (*TRbuState)(unsafe.Pointer(pState)).FnRow } else { v1 = 0 } (*Tsqlite3rbu)(unsafe.Pointer(p)).FnStep = v1 (*Tsqlite3rbu)(unsafe.Pointer(p)).FaBuf = _rbuMalloc(tls, p, int64((*Tsqlite3rbu)(unsafe.Pointer(p)).Fpgsz)) (*Tsqlite3rbu)(unsafe.Pointer(p)).FiWalCksum = _rbuShmChecksum(tls, p) } if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { if (*Tsqlite3rbu)(unsafe.Pointer(p)).FnFrame == 0 || pState != 0 && (*TRbuState)(unsafe.Pointer(pState)).FiWalCksum != (*Tsqlite3rbu)(unsafe.Pointer(p)).FiWalCksum { (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = int32(SQLITE_DONE) (*Tsqlite3rbu)(unsafe.Pointer(p)).FeStage = int32(RBU_STAGE_DONE) } else { pDb = (*Trbu_file)(unsafe.Pointer((*Tsqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal pWal = (*Trbu_file)(unsafe.Pointer((*Trbu_file)(unsafe.Pointer((*Tsqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpWalFd)).FpReal nSectorSize = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxSectorSize})))(tls, pDb) if nSectorSize > (*Tsqlite3rbu)(unsafe.Pointer(p)).Fpgsz { (*Tsqlite3rbu)(unsafe.Pointer(p)).FnPagePerSector = nSectorSize / (*Tsqlite3rbu)(unsafe.Pointer(p)).Fpgsz } else { (*Tsqlite3rbu)(unsafe.Pointer(p)).FnPagePerSector = int32(1) } /* Call xSync() on the wal file. This causes SQLite to sync the ** directory in which the target database and the wal file reside, in ** case it has not been synced since the rename() call in ** rbuMoveOalFile(). */ (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(pWal)).FpMethods)).FxSync})))(tls, pWal, int32(SQLITE_SYNC_NORMAL)) } } } // C documentation // // /* // ** Return the current wal-index header checksum for the target database // ** as a 64-bit integer. // ** // ** The checksum is store in the first page of xShmMap memory as an 8-byte // ** blob starting at byte offset 40. // */ func _rbuShmChecksum(tls *libc.TLS, p uintptr) (r Ti64) { bp := tls.Alloc(16) defer tls.Free(16) var iRet Ti64 var pDb uintptr var _ /* ptr at bp+0 */ uintptr _, _ = iRet, pDb iRet = 0 if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { pDb = (*Trbu_file)(unsafe.Pointer((*Tsqlite3rbu)(unsafe.Pointer(p)).FpTargetFd)).FpReal (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc = (*(*func(*libc.TLS, uintptr, int32, int32, int32, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3_io_methods)(unsafe.Pointer((*Tsqlite3_file)(unsafe.Pointer(pDb)).FpMethods)).FxShmMap})))(tls, pDb, 0, libc.Int32FromInt32(32)*libc.Int32FromInt32(1024), 0, bp) if (*Tsqlite3rbu)(unsafe.Pointer(p)).Frc == SQLITE_OK { iRet = int64(uint64(libc.AtomicLoadPUint32(**(**uintptr)(__ccgo_up(bp))+libc.UintptrFromInt32(10)*4))< SELECT ..." can // ** run without using a temporary table for the results of the SELECT. // */ func _readsTable(tls *libc.TLS, p uintptr, iDb int32, pTab uintptr) (r int32) { var i, iEnd int32 var pIndex, pOp, pVTab, v, v1 uintptr var tnum TPgno _, _, _, _, _, _, _, _ = i, iEnd, pIndex, pOp, pVTab, tnum, v, v1 v = _sqlite3GetVdbe(tls, p) iEnd = _sqlite3VdbeCurrentAddr(tls, v) if int32((*TTable)(unsafe.Pointer(pTab)).FeTabType) == int32(TABTYP_VTAB) { v1 = _sqlite3GetVTable(tls, (*TParse)(unsafe.Pointer(p)).Fdb, pTab) } else { v1 = uintptr(0) } pVTab = v1 i = int32(1) for { if !(i < iEnd) { break } pOp = _sqlite3VdbeGetOp(tls, v, i) if int32((*TVdbeOp)(unsafe.Pointer(pOp)).Fopcode) == int32(OP_OpenRead) && (*TVdbeOp)(unsafe.Pointer(pOp)).Fp3 == iDb { tnum = uint32((*TVdbeOp)(unsafe.Pointer(pOp)).Fp2) if tnum == (*TTable)(unsafe.Pointer(pTab)).Ftnum { return int32(1) } pIndex = (*TTable)(unsafe.Pointer(pTab)).FpIndex for { if !(pIndex != 0) { break } if tnum == (*TIndex)(unsafe.Pointer(pIndex)).Ftnum { return int32(1) } goto _3 _3: ; pIndex = (*TIndex)(unsafe.Pointer(pIndex)).FpNext } } if int32((*TVdbeOp)(unsafe.Pointer(pOp)).Fopcode) == int32(OP_VOpen) && *(*uintptr)(unsafe.Pointer(pOp + 16)) == pVTab { return int32(1) } goto _2 _2: ; i = i + 1 } return 0 } type _remoteMETAFILEPICT = T_remoteMETAFILEPICT // C documentation // // /* // ** An error occurred while parsing or otherwise processing a database // ** object (either pParse->pNewTable, pNewIndex or pNewTrigger) as part of an // ** ALTER TABLE RENAME COLUMN program. The error message emitted by the // ** sub-routine is currently stored in pParse->zErrMsg. This function // ** adds context to the error message and then stores it in pCtx. // */ func _renameColumnParseError(tls *libc.TLS, pCtx uintptr, zWhen uintptr, pType uintptr, pObject uintptr, pParse uintptr) { bp := tls.Alloc(48) defer tls.Free(48) var zErr, zN, zT, v1 uintptr _, _, _, _ = zErr, zN, zT, v1 zT = Xsqlite3_value_text(tls, pType) zN = Xsqlite3_value_text(tls, pObject) if **(**int8)(__ccgo_up(zWhen)) != 0 { v1 = __ccgo_ts + 12758 } else { v1 = __ccgo_ts + 1711 } zErr = _sqlite3MPrintf(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, __ccgo_ts+12760, libc.VaList(bp+8, zT, zN, v1, zWhen, (*TParse)(unsafe.Pointer(pParse)).FzErrMsg)) Xsqlite3_result_error(tls, pCtx, zErr, -int32(1)) _sqlite3DbFree(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, zErr) } // C documentation // // /* // ** This is a Walker select callback. It does nothing. It is only required // ** because without a dummy callback, sqlite3WalkExpr() and similar do not // ** descend into sub-select statements. // */ func _renameColumnSelectCb(tls *libc.TLS, pWalker uintptr, p uintptr) (r int32) { if (*TSelect)(unsafe.Pointer(p)).FselFlags&uint32(libc.Int32FromInt32(SF_View)|libc.Int32FromInt32(SF_CopyCte)) != 0 { return int32(WRC_Prune) } _renameWalkWith(tls, pWalker, p) return WRC_Continue } // C documentation // // /* // ** Generate VM code to replace any double-quoted strings (but not double-quoted // ** identifiers) within the "sql" column of the sqlite_schema table in // ** database zDb with their single-quoted equivalents. If argument bTemp is // ** not true, similarly update all SQL statements in the sqlite_schema table // ** of the temp db. // */ func _renameFixQuotes(tls *libc.TLS, pParse uintptr, zDb uintptr, bTemp int32) { bp := tls.Alloc(32) defer tls.Free(32) _sqlite3NestedParse(tls, pParse, __ccgo_ts+10237, libc.VaList(bp+8, zDb, zDb)) if bTemp == 0 { _sqlite3NestedParse(tls, pParse, __ccgo_ts+10384, 0) } } // C documentation // // /* // ** Reset the SQL statement passed as the first argument. Return a copy // ** of the value returned by sqlite3_reset(). // ** // ** If an error has occurred, then set *pzErrmsg to point to a buffer // ** containing an error message. It is the responsibility of the caller // ** to eventually free this buffer using sqlite3_free(). // */ func _resetAndCollectError(tls *libc.TLS, pStmt uintptr, pzErrmsg uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 _ = rc rc = Xsqlite3_reset(tls, pStmt) if rc != SQLITE_OK { **(**uintptr)(__ccgo_up(pzErrmsg)) = Xsqlite3_mprintf(tls, __ccgo_ts+4729, libc.VaList(bp+8, Xsqlite3_errmsg(tls, Xsqlite3_db_handle(tls, pStmt)))) } return rc } // C documentation // // /* // ** Resolve an expression that was part of an ATTACH or DETACH statement. This // ** is slightly different from resolving a normal SQL expression, because simple // ** identifiers are treated as strings, not possible column names or aliases. // ** // ** i.e. if the parser sees: // ** // ** ATTACH DATABASE abc AS def // ** // ** it treats the two expressions as literal strings 'abc' and 'def' instead of // ** looking for columns of the same name. // ** // ** This only applies to the root node of pExpr, so the statement: // ** // ** ATTACH DATABASE abc||def AS 'db2' // ** // ** will fail because neither abc or def can be resolved. // */ func _resolveAttachExpr(tls *libc.TLS, pName uintptr, pExpr uintptr) (r int32) { var rc int32 _ = rc rc = SQLITE_OK if pExpr != 0 { if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) != int32(TK_ID) { rc = _sqlite3ResolveExprNames(tls, pName, pExpr) } else { (*TExpr)(unsafe.Pointer(pExpr)).Fop = uint8(TK_STRING) } } return rc } // C documentation // // /* // ** Generate an ORDER BY or GROUP BY term out-of-range error. // */ func _resolveOutOfRangeError(tls *libc.TLS, pParse uintptr, zType uintptr, i int32, mx int32, pError uintptr) { bp := tls.Alloc(32) defer tls.Free(32) _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+8786, libc.VaList(bp+8, i, zType, mx)) _sqlite3RecordErrorOffsetOfExpr(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, pError) } const _rlafIPv4 = 1 const _rlafIPv6 = 2 const _rlafInvalid = 0 // C documentation // // /* // ** Check the RTree node or entry given by pCellData and p against the MATCH // ** constraint pConstraint. // */ func _rtreeCallbackConstraint(tls *libc.TLS, pConstraint uintptr, eInt int32, pCellData uintptr, pSearch uintptr, prScore uintptr, peWithin uintptr) (r int32) { bp := tls.Alloc(96) defer tls.Free(96) var nCoord, rc, v2 int32 var pInfo uintptr var v1 Tsqlite3_rtree_dbl var _ /* aCoord at bp+8 */ [10]Tsqlite3_rtree_dbl var _ /* c at bp+0 */ TRtreeCoord var _ /* eWithin at bp+88 */ int32 _, _, _, _, _ = nCoord, pInfo, rc, v1, v2 pInfo = (*TRtreeConstraint)(unsafe.Pointer(pConstraint)).FpInfo /* Callback info */ nCoord = (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FnCoord /* Decoded coordinates */ if (*TRtreeConstraint)(unsafe.Pointer(pConstraint)).Fop == int32(RTREE_QUERY) && int32((*TRtreeSearchPoint)(unsafe.Pointer(pSearch)).FiLevel) == int32(1) { (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FiRowid = _readInt64(tls, pCellData) } pCellData = pCellData + uintptr(8) if eInt == 0 { switch nCoord { case int32(10): _readCoord(tls, pCellData+uintptr(36), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(9)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) _readCoord(tls, pCellData+uintptr(32), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(8)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) fallthrough case int32(8): _readCoord(tls, pCellData+uintptr(28), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(7)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) _readCoord(tls, pCellData+uintptr(24), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(6)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) fallthrough case int32(6): _readCoord(tls, pCellData+uintptr(20), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(5)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) _readCoord(tls, pCellData+uintptr(16), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(4)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) fallthrough case int32(4): _readCoord(tls, pCellData+uintptr(12), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(3)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) _readCoord(tls, pCellData+uintptr(8), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(2)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) fallthrough default: _readCoord(tls, pCellData+uintptr(4), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(1)] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) _readCoord(tls, pCellData, bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[0] = float64(*(*TRtreeValue)(unsafe.Pointer(bp))) } } else { switch nCoord { case int32(10): _readCoord(tls, pCellData+uintptr(36), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(9)] = float64(*(*int32)(unsafe.Pointer(bp))) _readCoord(tls, pCellData+uintptr(32), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(8)] = float64(*(*int32)(unsafe.Pointer(bp))) fallthrough case int32(8): _readCoord(tls, pCellData+uintptr(28), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(7)] = float64(*(*int32)(unsafe.Pointer(bp))) _readCoord(tls, pCellData+uintptr(24), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(6)] = float64(*(*int32)(unsafe.Pointer(bp))) fallthrough case int32(6): _readCoord(tls, pCellData+uintptr(20), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(5)] = float64(*(*int32)(unsafe.Pointer(bp))) _readCoord(tls, pCellData+uintptr(16), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(4)] = float64(*(*int32)(unsafe.Pointer(bp))) fallthrough case int32(4): _readCoord(tls, pCellData+uintptr(12), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(3)] = float64(*(*int32)(unsafe.Pointer(bp))) _readCoord(tls, pCellData+uintptr(8), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(2)] = float64(*(*int32)(unsafe.Pointer(bp))) fallthrough default: _readCoord(tls, pCellData+uintptr(4), bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[int32(1)] = float64(*(*int32)(unsafe.Pointer(bp))) _readCoord(tls, pCellData, bp) (**(**[10]Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)))[0] = float64(*(*int32)(unsafe.Pointer(bp))) } } if (*TRtreeConstraint)(unsafe.Pointer(pConstraint)).Fop == int32(RTREE_MATCH) { **(**int32)(__ccgo_up(bp + 88)) = 0 rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(&(*TRtreeConstraint)(unsafe.Pointer(pConstraint)).Fu))})))(tls, pInfo, nCoord, bp+8, bp+88) if **(**int32)(__ccgo_up(bp + 88)) == 0 { **(**int32)(__ccgo_up(peWithin)) = NOT_WITHIN } **(**Tsqlite3_rtree_dbl)(__ccgo_up(prScore)) = float64(0) } else { (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FaCoord = bp + 8 (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FiLevel = int32((*TRtreeSearchPoint)(unsafe.Pointer(pSearch)).FiLevel) - int32(1) v1 = (*TRtreeSearchPoint)(unsafe.Pointer(pSearch)).FrScore (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FrParentScore = v1 (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FrScore = v1 v2 = int32((*TRtreeSearchPoint)(unsafe.Pointer(pSearch)).FeWithin) (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeParentWithin = v2 (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin = v2 rc = (*(*func(*libc.TLS, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{*(*uintptr)(unsafe.Pointer(&(*TRtreeConstraint)(unsafe.Pointer(pConstraint)).Fu))})))(tls, pInfo) if (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin < **(**int32)(__ccgo_up(peWithin)) { **(**int32)(__ccgo_up(peWithin)) = (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FeWithin } if (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FrScore < **(**Tsqlite3_rtree_dbl)(__ccgo_up(prScore)) || **(**Tsqlite3_rtree_dbl)(__ccgo_up(prScore)) < float64(0) { **(**Tsqlite3_rtree_dbl)(__ccgo_up(prScore)) = (*Tsqlite3_rtree_query_info)(unsafe.Pointer(pInfo)).FrScore } } return rc } // C documentation // // /* // ** The second and subsequent arguments to this function are a printf() // ** style format string and arguments. This function formats the string and // ** appends it to the report being accumulated in pCheck. // */ func _rtreeCheckAppendMsg(tls *libc.TLS, pCheck uintptr, zFmt uintptr, va uintptr) { bp := tls.Alloc(32) defer tls.Free(32) var ap Tva_list var z, v1 uintptr _, _, _ = ap, z, v1 ap = va if (*TRtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK && (*TRtreeCheck)(unsafe.Pointer(pCheck)).FnErr < int32(RTREE_CHECK_MAX_ERROR) { z = Xsqlite3_vmprintf(tls, zFmt, ap) if z == uintptr(0) { (*TRtreeCheck)(unsafe.Pointer(pCheck)).Frc = int32(SQLITE_NOMEM) } else { if (*TRtreeCheck)(unsafe.Pointer(pCheck)).FzReport != 0 { v1 = __ccgo_ts + 5569 } else { v1 = __ccgo_ts + 1711 } (*TRtreeCheck)(unsafe.Pointer(pCheck)).FzReport = Xsqlite3_mprintf(tls, __ccgo_ts+30292, libc.VaList(bp+8, (*TRtreeCheck)(unsafe.Pointer(pCheck)).FzReport, v1, z)) if (*TRtreeCheck)(unsafe.Pointer(pCheck)).FzReport == uintptr(0) { (*TRtreeCheck)(unsafe.Pointer(pCheck)).Frc = int32(SQLITE_NOMEM) } } (*TRtreeCheck)(unsafe.Pointer(pCheck)).FnErr = (*TRtreeCheck)(unsafe.Pointer(pCheck)).FnErr + 1 } _ = ap } // C documentation // // /* // ** Argument pCell points to an array of coordinates stored on an rtree page. // ** This function checks that the coordinates are internally consistent (no // ** x1>x2 conditions) and adds an error message to the RtreeCheck object // ** if they are not. // ** // ** Additionally, if pParent is not NULL, then it is assumed to point to // ** the array of coordinates on the parent page that bound the page // ** containing pCell. In this case it is also verified that the two // ** sets of coordinates are mutually consistent and an error message added // ** to the RtreeCheck object if they are not. // */ func _rtreeCheckCellCoord(tls *libc.TLS, pCheck uintptr, iNode Ti64, iCell int32, pCell uintptr, pParent uintptr) { bp := tls.Alloc(48) defer tls.Free(48) var i, v2, v3 int32 var v5 bool var _ /* c1 at bp+0 */ TRtreeCoord var _ /* c2 at bp+4 */ TRtreeCoord var _ /* p1 at bp+8 */ TRtreeCoord var _ /* p2 at bp+12 */ TRtreeCoord _, _, _, _ = i, v2, v3, v5 i = 0 for { if !(i < (*TRtreeCheck)(unsafe.Pointer(pCheck)).FnDim) { break } _readCoord(tls, pCell+uintptr(libc.Int32FromInt32(4)*libc.Int32FromInt32(2)*i), bp) _readCoord(tls, pCell+uintptr(int32(4)*(int32(2)*i+int32(1))), bp+4) /* printf("%e, %e\n", c1.u.f, c2.u.f); */ if (*TRtreeCheck)(unsafe.Pointer(pCheck)).FbInt != 0 { v2 = libc.BoolInt32(*(*int32)(unsafe.Pointer(bp)) > *(*int32)(unsafe.Pointer(bp + 4))) } else { v2 = libc.BoolInt32(*(*TRtreeValue)(unsafe.Pointer(bp)) > *(*TRtreeValue)(unsafe.Pointer(bp + 4))) } if v2 != 0 { _rtreeCheckAppendMsg(tls, pCheck, __ccgo_ts+30598, libc.VaList(bp+24, i, iCell, iNode)) } if pParent != 0 { _readCoord(tls, pParent+uintptr(libc.Int32FromInt32(4)*libc.Int32FromInt32(2)*i), bp+8) _readCoord(tls, pParent+uintptr(int32(4)*(int32(2)*i+int32(1))), bp+12) if (*TRtreeCheck)(unsafe.Pointer(pCheck)).FbInt != 0 { v2 = libc.BoolInt32(*(*int32)(unsafe.Pointer(bp)) < *(*int32)(unsafe.Pointer(bp + 8))) } else { v2 = libc.BoolInt32(*(*TRtreeValue)(unsafe.Pointer(bp)) < *(*TRtreeValue)(unsafe.Pointer(bp + 8))) } if v5 = v2 != 0; !v5 { if (*TRtreeCheck)(unsafe.Pointer(pCheck)).FbInt != 0 { v3 = libc.BoolInt32(*(*int32)(unsafe.Pointer(bp + 4)) > *(*int32)(unsafe.Pointer(bp + 12))) } else { v3 = libc.BoolInt32(*(*TRtreeValue)(unsafe.Pointer(bp + 4)) > *(*TRtreeValue)(unsafe.Pointer(bp + 12))) } } if v5 || v3 != 0 { _rtreeCheckAppendMsg(tls, pCheck, __ccgo_ts+30646, libc.VaList(bp+24, i, iCell, iNode)) } } goto _1 _1: ; i = i + 1 } } // C documentation // // /* // ** The second argument to this function must be either "_rowid" or // ** "_parent". This function checks that the number of entries in the // ** %_rowid or %_parent table is exactly nExpect. If not, it adds // ** an error message to the report in the RtreeCheck object indicated // ** by the first argument. // */ func _rtreeCheckCount(tls *libc.TLS, pCheck uintptr, zTbl uintptr, nExpect Ti64) { bp := tls.Alloc(32) defer tls.Free(32) var nActual Ti64 var pCount uintptr _, _ = nActual, pCount if (*TRtreeCheck)(unsafe.Pointer(pCheck)).Frc == SQLITE_OK { pCount = _rtreeCheckPrepare(tls, pCheck, __ccgo_ts+30832, libc.VaList(bp+8, (*TRtreeCheck)(unsafe.Pointer(pCheck)).FzDb, (*TRtreeCheck)(unsafe.Pointer(pCheck)).FzTab, zTbl)) if pCount != 0 { if Xsqlite3_step(tls, pCount) == int32(SQLITE_ROW) { nActual = Xsqlite3_column_int64(tls, pCount, 0) if nActual != nExpect { _rtreeCheckAppendMsg(tls, pCheck, __ccgo_ts+30863, libc.VaList(bp+8, zTbl, nExpect, nActual)) } } (*TRtreeCheck)(unsafe.Pointer(pCheck)).Frc = Xsqlite3_finalize(tls, pCount) } } } // C documentation // // /* // ** Run rtreecheck() checks on node iNode, which is at depth iDepth within // ** the r-tree structure. Argument aParent points to the array of coordinates // ** that bound node iNode on the parent node. // ** // ** If any problems are discovered, an error message is appended to the // ** report accumulated in the RtreeCheck object. // */ func _rtreeCheckNode(tls *libc.TLS, pCheck uintptr, iDepth int32, aParent uintptr, iNode Ti64) { bp := tls.Alloc(48) defer tls.Free(48) var aNode, pCell uintptr var i, nCell int32 var iVal Ti64 var _ /* nNode at bp+0 */ int32 _, _, _, _, _ = aNode, i, iVal, nCell, pCell aNode = uintptr(0) **(**int32)(__ccgo_up(bp)) = 0 aNode = _rtreeCheckGetNode(tls, pCheck, iNode, bp) if aNode != 0 { if **(**int32)(__ccgo_up(bp)) < int32(4) { _rtreeCheckAppendMsg(tls, pCheck, __ccgo_ts+30713, libc.VaList(bp+16, iNode, **(**int32)(__ccgo_up(bp)))) } else { /* Used to iterate through cells */ if aParent == uintptr(0) { iDepth = _readInt16(tls, aNode) if iDepth > int32(RTREE_MAX_DEPTH) { _rtreeCheckAppendMsg(tls, pCheck, __ccgo_ts+30747, libc.VaList(bp+16, iDepth)) Xsqlite3_free(tls, aNode) return } } nCell = _readInt16(tls, aNode+2) if int32(4)+nCell*(int32(8)+(*TRtreeCheck)(unsafe.Pointer(pCheck)).FnDim*int32(2)*int32(4)) > **(**int32)(__ccgo_up(bp)) { _rtreeCheckAppendMsg(tls, pCheck, __ccgo_ts+30777, libc.VaList(bp+16, iNode, nCell, **(**int32)(__ccgo_up(bp)))) } else { i = 0 for { if !(i < nCell) { break } pCell = aNode + uintptr(int32(4)+i*(int32(8)+(*TRtreeCheck)(unsafe.Pointer(pCheck)).FnDim*int32(2)*int32(4))) iVal = _readInt64(tls, pCell) _rtreeCheckCellCoord(tls, pCheck, iNode, i, pCell+8, aParent) if iDepth > 0 { _rtreeCheckMapping(tls, pCheck, 0, iVal, iNode) _rtreeCheckNode(tls, pCheck, iDepth-int32(1), pCell+8, iVal) (*TRtreeCheck)(unsafe.Pointer(pCheck)).FnNonLeaf = (*TRtreeCheck)(unsafe.Pointer(pCheck)).FnNonLeaf + 1 } else { _rtreeCheckMapping(tls, pCheck, int32(1), iVal, iNode) (*TRtreeCheck)(unsafe.Pointer(pCheck)).FnLeaf = (*TRtreeCheck)(unsafe.Pointer(pCheck)).FnLeaf + 1 } goto _1 _1: ; i = i + 1 } } } Xsqlite3_free(tls, aNode) } } // C documentation // // /* // ** Rtree virtual table module xClose method. // */ func _rtreeClose(tls *libc.TLS, cur uintptr) (r int32) { var pCsr, pRtree uintptr _, _ = pCsr, pRtree pRtree = (*Tsqlite3_vtab_cursor)(unsafe.Pointer(cur)).FpVtab pCsr = cur _resetCursor(tls, pCsr) Xsqlite3_finalize(tls, (*TRtreeCursor)(unsafe.Pointer(pCsr)).FpReadAux) Xsqlite3_free(tls, pCsr) (*TRtree)(unsafe.Pointer(pRtree)).FnCursor = (*TRtree)(unsafe.Pointer(pRtree)).FnCursor - 1 if (*TRtree)(unsafe.Pointer(pRtree)).FnCursor == uint32(0) && int32((*TRtree)(unsafe.Pointer(pRtree)).FinWrTrans) == 0 { _nodeBlobReset(tls, pRtree) } return SQLITE_OK } // C documentation // // /* // ** A constraint has failed while inserting a row into an rtree table. // ** Assuming no OOM error occurs, this function sets the error message // ** (at pRtree->base.zErrMsg) to an appropriate value and returns // ** SQLITE_CONSTRAINT. // ** // ** Parameter iCol is the index of the leftmost column involved in the // ** constraint failure. If it is 0, then the constraint that failed is // ** the unique constraint on the id column. Otherwise, it is the rtree // ** (c1<=c2) constraint on columns iCol and iCol+1 that has failed. // ** // ** If an OOM occurs, SQLITE_NOMEM is returned instead of SQLITE_CONSTRAINT. // */ func _rtreeConstraintError(tls *libc.TLS, pRtree uintptr, iCol int32) (r int32) { bp := tls.Alloc(48) defer tls.Free(48) var rc, v1 int32 var zCol, zCol1, zCol2, zSql uintptr var _ /* pStmt at bp+0 */ uintptr _, _, _, _, _, _ = rc, zCol, zCol1, zCol2, zSql, v1 **(**uintptr)(__ccgo_up(bp)) = uintptr(0) zSql = Xsqlite3_mprintf(tls, __ccgo_ts+28746, libc.VaList(bp+16, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName)) if zSql != 0 { rc = Xsqlite3_prepare_v2(tls, (*TRtree)(unsafe.Pointer(pRtree)).Fdb, zSql, -int32(1), bp, uintptr(0)) } else { rc = int32(SQLITE_NOMEM) } Xsqlite3_free(tls, zSql) if rc == SQLITE_OK { if iCol == 0 { zCol = Xsqlite3_column_name(tls, **(**uintptr)(__ccgo_up(bp)), 0) (*TRtree)(unsafe.Pointer(pRtree)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, __ccgo_ts+28766, libc.VaList(bp+16, (*TRtree)(unsafe.Pointer(pRtree)).FzName, zCol)) } else { zCol1 = Xsqlite3_column_name(tls, **(**uintptr)(__ccgo_up(bp)), iCol) zCol2 = Xsqlite3_column_name(tls, **(**uintptr)(__ccgo_up(bp)), iCol+int32(1)) (*TRtree)(unsafe.Pointer(pRtree)).Fbase.FzErrMsg = Xsqlite3_mprintf(tls, __ccgo_ts+28798, libc.VaList(bp+16, (*TRtree)(unsafe.Pointer(pRtree)).FzName, zCol1, zCol2)) } } Xsqlite3_finalize(tls, **(**uintptr)(__ccgo_up(bp))) if rc == SQLITE_OK { v1 = int32(SQLITE_CONSTRAINT) } else { v1 = rc } return v1 } // C documentation // // /* // ** Rtree virtual table module xDestroy method. // */ func _rtreeDestroy(tls *libc.TLS, pVtab uintptr) (r int32) { bp := tls.Alloc(64) defer tls.Free(64) var pRtree, zCreate uintptr var rc int32 _, _, _ = pRtree, rc, zCreate pRtree = pVtab zCreate = Xsqlite3_mprintf(tls, __ccgo_ts+28650, libc.VaList(bp+8, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName)) if !(zCreate != 0) { rc = int32(SQLITE_NOMEM) } else { _nodeBlobReset(tls, pRtree) rc = Xsqlite3_exec(tls, (*TRtree)(unsafe.Pointer(pRtree)).Fdb, zCreate, uintptr(0), uintptr(0), uintptr(0)) Xsqlite3_free(tls, zCreate) } if rc == SQLITE_OK { _rtreeRelease(tls, pRtree) } return rc } // C documentation // // /* // ** Rtree virtual table module xEof method. // ** // ** Return non-zero if the cursor does not currently point to a valid // ** record (i.e if the scan has finished), or zero otherwise. // */ func _rtreeEof(tls *libc.TLS, cur uintptr) (r int32) { var pCsr uintptr _ = pCsr pCsr = cur return int32((*TRtreeCursor)(unsafe.Pointer(pCsr)).FatEOF) } /* ** Convert raw bits from the on-disk RTree record into a coordinate value. ** The on-disk format is big-endian and needs to be converted for little- ** endian platforms. The on-disk record stores integer coordinates if ** eInt is true and it stores 32-bit floating point records if eInt is ** false. a[] is the four bytes of the on-disk record to be decoded. ** Store the results in "r". ** ** There are five versions of this macro. The last one is generic. The ** other four are various architectures-specific optimizations. */ // C documentation // // /* // ** Implementation of the xIntegrity method for Rtree. // */ func _rtreeIntegrity(tls *libc.TLS, pVtab uintptr, zSchema uintptr, zName uintptr, isQuick int32, pzErr uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var pRtree uintptr var rc int32 _, _ = pRtree, rc pRtree = pVtab _ = zSchema _ = zName _ = isQuick rc = _rtreeCheckTable(tls, (*TRtree)(unsafe.Pointer(pRtree)).Fdb, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName, pzErr) if rc == SQLITE_OK && **(**uintptr)(__ccgo_up(pzErr)) != 0 { **(**uintptr)(__ccgo_up(pzErr)) = Xsqlite3_mprintf(tls, __ccgo_ts+31004, libc.VaList(bp+8, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName, **(**uintptr)(__ccgo_up(pzErr)))) if **(**uintptr)(__ccgo_up(pzErr)) == uintptr(0) { rc = int32(SQLITE_NOMEM) } } return rc } // C documentation // // /* // ** This function populates the pRtree->nRowEst variable with an estimate // ** of the number of rows in the virtual table. If possible, this is based // ** on sqlite_stat1 data. Otherwise, use RTREE_DEFAULT_ROWEST. // */ func _rtreeQueryStat1(tls *libc.TLS, db uintptr, pRtree uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var nRow Ti64 var rc, v1 int32 var zFmt, zSql uintptr var v2 int64 var _ /* p at bp+0 */ uintptr _, _, _, _, _, _ = nRow, rc, zFmt, zSql, v1, v2 zFmt = __ccgo_ts + 28980 nRow = int64(RTREE_MIN_ROWEST) rc = Xsqlite3_table_column_metadata(tls, db, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, __ccgo_ts+14050, uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) if rc != SQLITE_OK { (*TRtree)(unsafe.Pointer(pRtree)).FnRowEst = int64(RTREE_DEFAULT_ROWEST) if rc == int32(SQLITE_ERROR) { v1 = SQLITE_OK } else { v1 = rc } return v1 } zSql = Xsqlite3_mprintf(tls, zFmt, libc.VaList(bp+16, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName)) if zSql == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { rc = Xsqlite3_prepare_v2(tls, db, zSql, -int32(1), bp, uintptr(0)) if rc == SQLITE_OK { if Xsqlite3_step(tls, **(**uintptr)(__ccgo_up(bp))) == int32(SQLITE_ROW) { nRow = Xsqlite3_column_int64(tls, **(**uintptr)(__ccgo_up(bp)), 0) } rc = Xsqlite3_finalize(tls, **(**uintptr)(__ccgo_up(bp))) } Xsqlite3_free(tls, zSql) } if nRow > int64(libc.Int32FromInt32(RTREE_MIN_ROWEST)) { v2 = nRow } else { v2 = int64(libc.Int32FromInt32(RTREE_MIN_ROWEST)) } (*TRtree)(unsafe.Pointer(pRtree)).FnRowEst = v2 return rc } // C documentation // // /* // ** The xRename method for rtree module virtual tables. // */ func _rtreeRename(tls *libc.TLS, pVtab uintptr, zNewName uintptr) (r int32) { bp := tls.Alloc(80) defer tls.Free(80) var pRtree, zSql uintptr var rc int32 _, _, _ = pRtree, rc, zSql pRtree = pVtab rc = int32(SQLITE_NOMEM) zSql = Xsqlite3_mprintf(tls, __ccgo_ts+28835, libc.VaList(bp+8, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName, zNewName, (*TRtree)(unsafe.Pointer(pRtree)).FzDb, (*TRtree)(unsafe.Pointer(pRtree)).FzName, zNewName)) if zSql != 0 { _nodeBlobReset(tls, pRtree) rc = Xsqlite3_exec(tls, (*TRtree)(unsafe.Pointer(pRtree)).Fdb, zSql, uintptr(0), uintptr(0), uintptr(0)) Xsqlite3_free(tls, zSql) } return rc } // C documentation // // /* // ** Rtree virtual table module xRowid method. // */ func _rtreeRowid(tls *libc.TLS, pVtabCursor uintptr, pRowid uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var p, pCsr, pNode uintptr var _ /* rc at bp+0 */ int32 _, _, _ = p, pCsr, pNode pCsr = pVtabCursor p = _rtreeSearchPointFirst(tls, pCsr) **(**int32)(__ccgo_up(bp)) = SQLITE_OK pNode = _rtreeNodeOfFirstSearchPoint(tls, pCsr, bp) if **(**int32)(__ccgo_up(bp)) == SQLITE_OK && p != 0 { if int32((*TRtreeSearchPoint)(unsafe.Pointer(p)).FiCell) >= _readInt16(tls, (*TRtreeNode)(unsafe.Pointer(pNode)).FzData+2) { **(**int32)(__ccgo_up(bp)) = int32(SQLITE_ABORT) } else { **(**Tsqlite_int64)(__ccgo_up(pRowid)) = _nodeGetRowid(tls, (*TRtreeCursor)(unsafe.Pointer(pCsr)).Fbase.FpVtab, pNode, int32((*TRtreeSearchPoint)(unsafe.Pointer(p)).FiCell)) } } return **(**int32)(__ccgo_up(bp)) } // C documentation // // /* // ** Compare two search points. Return negative, zero, or positive if the first // ** is less than, equal to, or greater than the second. // ** // ** The rScore is the primary key. Smaller rScore values come first. // ** If the rScore is a tie, then use iLevel as the tie breaker with smaller // ** iLevel values coming first. In this way, if rScore is the same for all // ** SearchPoints, then iLevel becomes the deciding factor and the result // ** is a depth-first search, which is the desired default behavior. // */ func _rtreeSearchPointCompare(tls *libc.TLS, pA uintptr, pB uintptr) (r int32) { if (*TRtreeSearchPoint)(unsafe.Pointer(pA)).FrScore < (*TRtreeSearchPoint)(unsafe.Pointer(pB)).FrScore { return -int32(1) } if (*TRtreeSearchPoint)(unsafe.Pointer(pA)).FrScore > (*TRtreeSearchPoint)(unsafe.Pointer(pB)).FrScore { return +libc.Int32FromInt32(1) } if int32((*TRtreeSearchPoint)(unsafe.Pointer(pA)).FiLevel) < int32((*TRtreeSearchPoint)(unsafe.Pointer(pB)).FiLevel) { return -int32(1) } if int32((*TRtreeSearchPoint)(unsafe.Pointer(pA)).FiLevel) > int32((*TRtreeSearchPoint)(unsafe.Pointer(pB)).FiLevel) { return +libc.Int32FromInt32(1) } return 0 } // C documentation // // /* // ** Continue the search on cursor pCur until the front of the queue // ** contains an entry suitable for returning as a result-set row, // ** or until the RtreeSearchPoint queue is empty, indicating that the // ** query has completed. // */ func _rtreeStepToLeaf(tls *libc.TLS, pCur uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var eInt, ii, nCell, nConstraint int32 var p, pCellData, pConstraint, pNode, pRtree, v1 uintptr var x TRtreeSearchPoint var _ /* eWithin at bp+0 */ int32 var _ /* rScore at bp+8 */ Tsqlite3_rtree_dbl var _ /* rc at bp+4 */ int32 _, _, _, _, _, _, _, _, _, _, _ = eInt, ii, nCell, nConstraint, p, pCellData, pConstraint, pNode, pRtree, x, v1 pRtree = (*TRtreeCursor)(unsafe.Pointer(pCur)).Fbase.FpVtab **(**int32)(__ccgo_up(bp + 4)) = SQLITE_OK nConstraint = (*TRtreeCursor)(unsafe.Pointer(pCur)).FnConstraint eInt = libc.BoolInt32(int32((*TRtree)(unsafe.Pointer(pRtree)).FeCoordType) == int32(RTREE_COORD_INT32)) for { v1 = _rtreeSearchPointFirst(tls, pCur) p = v1 if !(v1 != uintptr(0) && int32((*TRtreeSearchPoint)(unsafe.Pointer(p)).FiLevel) > 0) { break } pNode = _rtreeNodeOfFirstSearchPoint(tls, pCur, bp+4) if **(**int32)(__ccgo_up(bp + 4)) != 0 { return **(**int32)(__ccgo_up(bp + 4)) } nCell = _readInt16(tls, (*TRtreeNode)(unsafe.Pointer(pNode)).FzData+2) if nCell > int32(RTREE_MAXCELLS) { return libc.Int32FromInt32(SQLITE_CORRUPT) | libc.Int32FromInt32(1)<= int32(RTREE_MATCH) { **(**int32)(__ccgo_up(bp + 4)) = _rtreeCallbackConstraint(tls, pConstraint, eInt, pCellData, p, bp+8, bp) if **(**int32)(__ccgo_up(bp + 4)) != 0 { return **(**int32)(__ccgo_up(bp + 4)) } } else { if int32((*TRtreeSearchPoint)(unsafe.Pointer(p)).FiLevel) == int32(1) { _rtreeLeafConstraint(tls, pConstraint, eInt, pCellData, bp) } else { _rtreeNonleafConstraint(tls, pConstraint, eInt, pCellData, bp) } } if **(**int32)(__ccgo_up(bp)) == NOT_WITHIN { (*TRtreeSearchPoint)(unsafe.Pointer(p)).FiCell = (*TRtreeSearchPoint)(unsafe.Pointer(p)).FiCell + 1 pCellData = pCellData + uintptr((*TRtree)(unsafe.Pointer(pRtree)).FnBytesPerCell) break } goto _2 _2: ; ii = ii + 1 } if **(**int32)(__ccgo_up(bp)) == NOT_WITHIN { continue } (*TRtreeSearchPoint)(unsafe.Pointer(p)).FiCell = (*TRtreeSearchPoint)(unsafe.Pointer(p)).FiCell + 1 x.FiLevel = uint8(int32((*TRtreeSearchPoint)(unsafe.Pointer(p)).FiLevel) - int32(1)) if x.FiLevel != 0 { x.Fid = _readInt64(tls, pCellData) ii = 0 for { if !(ii < (*TRtreeCursor)(unsafe.Pointer(pCur)).FnPoint) { break } if (**(**TRtreeSearchPoint)(__ccgo_up((*TRtreeCursor)(unsafe.Pointer(pCur)).FaPoint + uintptr(ii)*24))).Fid == x.Fid { return libc.Int32FromInt32(SQLITE_CORRUPT) | libc.Int32FromInt32(1)<= nCell { _rtreeSearchPointPop(tls, pCur) } if **(**Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)) < float64(0) { **(**Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)) = float64(0) } p = _rtreeSearchPointNew(tls, pCur, **(**Tsqlite3_rtree_dbl)(__ccgo_up(bp + 8)), x.FiLevel) if p == uintptr(0) { return int32(SQLITE_NOMEM) } (*TRtreeSearchPoint)(unsafe.Pointer(p)).FeWithin = uint8(**(**int32)(__ccgo_up(bp))) (*TRtreeSearchPoint)(unsafe.Pointer(p)).Fid = x.Fid (*TRtreeSearchPoint)(unsafe.Pointer(p)).FiCell = x.FiCell break } if int32((*TRtreeSearchPoint)(unsafe.Pointer(p)).FiCell) >= nCell { _rtreeSearchPointPop(tls, pCur) } } (*TRtreeCursor)(unsafe.Pointer(pCur)).FatEOF = libc.BoolUint8(p == uintptr(0)) return SQLITE_OK } // C documentation // // /* This routine implements an SQL function that returns the "depth" parameter // ** from the front of a blob that is an r-tree node. For example: // ** // ** SELECT rtreedepth(data) FROM rt_node WHERE nodeno=1; // ** // ** The depth value is 0 for all nodes other than the root node, and the root // ** node always has nodeno=1, so the example above is the primary use for this // ** routine. This routine is intended for testing and analysis only. // */ func _rtreedepth(tls *libc.TLS, ctx uintptr, nArg int32, apArg uintptr) { var zBlob uintptr _ = zBlob _ = nArg if Xsqlite3_value_type(tls, **(**uintptr)(__ccgo_up(apArg))) != int32(SQLITE_BLOB) || Xsqlite3_value_bytes(tls, **(**uintptr)(__ccgo_up(apArg))) < int32(2) { Xsqlite3_result_error(tls, ctx, __ccgo_ts+30259, -int32(1)) } else { zBlob = Xsqlite3_value_blob(tls, **(**uintptr)(__ccgo_up(apArg))) if zBlob != 0 { Xsqlite3_result_int(tls, ctx, _readInt16(tls, zBlob)) } else { Xsqlite3_result_error_nomem(tls, ctx) } } } // C documentation // // /* // ** This is the collating function named "RTRIM" which is always // ** available. Ignore trailing spaces. // */ func _rtrimCollFunc(tls *libc.TLS, pUser uintptr, nKey1 int32, pKey1 uintptr, nKey2 int32, pKey2 uintptr) (r int32) { var pK1, pK2 uintptr _, _ = pK1, pK2 pK1 = pKey1 pK2 = pKey2 for nKey1 != 0 && int32(**(**Tu8)(__ccgo_up(pK1 + uintptr(nKey1-int32(1))))) == int32(' ') { nKey1 = nKey1 - 1 } for nKey2 != 0 && int32(**(**Tu8)(__ccgo_up(pK2 + uintptr(nKey2-int32(1))))) == int32(' ') { nKey2 = nKey2 - 1 } return _binCollFunc(tls, pUser, nKey1, pKey1, nKey2, pKey2) } // C documentation // // /* // ** Save the current cursor position in the variables BtCursor.nKey // ** and BtCursor.pKey. The cursor's state is set to CURSOR_REQUIRESEEK. // ** // ** The caller must ensure that the cursor is valid (has eState==CURSOR_VALID) // ** prior to calling this routine. // */ func _saveCursorPosition(tls *libc.TLS, pCur uintptr) (r int32) { var rc int32 var v1 uintptr _, _ = rc, v1 if int32((*TBtCursor)(unsafe.Pointer(pCur)).FcurFlags)&int32(BTCF_Pinned) != 0 { return libc.Int32FromInt32(SQLITE_CONSTRAINT) | libc.Int32FromInt32(11)< int64((*TSessionBuffer)(unsafe.Pointer(p)).FnAlloc) { if (*TSessionBuffer)(unsafe.Pointer(p)).FnAlloc != 0 { v1 = (*TSessionBuffer)(unsafe.Pointer(p)).FnAlloc } else { v1 = int32(128) } nNew = int64(v1) for cond := true; cond; cond = nNew < nReq { nNew = nNew * int64(2) } /* The value of SESSION_MAX_BUFFER_SZ is copied from the implementation ** of sqlite3_realloc64(). Allocations greater than this size in bytes ** always fail. It is used here to ensure that this routine can always ** allocate up to this limit - instead of up to the largest power of ** two smaller than the limit. */ if nNew > int64(libc.Int32FromInt32(0x7FFFFF00)-libc.Int32FromInt32(1)) { nNew = int64(libc.Int32FromInt32(0x7FFFFF00) - libc.Int32FromInt32(1)) if nNew < nReq { **(**int32)(__ccgo_up(pRc)) = int32(SQLITE_NOMEM) return int32(1) } } aNew = Xsqlite3_realloc64(tls, (*TSessionBuffer)(unsafe.Pointer(p)).FaBuf, uint64(nNew)) if uintptr(0) == aNew { **(**int32)(__ccgo_up(pRc)) = int32(SQLITE_NOMEM) } else { (*TSessionBuffer)(unsafe.Pointer(p)).FaBuf = aNew (*TSessionBuffer)(unsafe.Pointer(p)).FnAlloc = int32(nNew) } } return libc.BoolInt32(**(**int32)(__ccgo_up(pRc)) != SQLITE_OK) } // C documentation // // /* // ** Based on the primary key values stored in change aRecord, calculate a // ** hash key. Assume the has table has nBucket buckets. The hash keys // ** calculated by this function are compatible with those calculated by // ** sessionPreupdateHash(). // ** // ** The bPkOnly argument is non-zero if the record at aRecord[] is from // ** a patchset DELETE. In this case the non-PK fields are omitted entirely. // */ func _sessionChangeHash(tls *libc.TLS, pTab uintptr, bPkOnly int32, aRecord uintptr, nBucket int32) (r uint32) { bp := tls.Alloc(16) defer tls.Free(16) var a, v2 uintptr var eType, i, isPK int32 var h uint32 var _ /* n at bp+0 */ int32 _, _, _, _, _, _ = a, eType, h, i, isPK, v2 h = uint32(0) /* Used to iterate through columns */ a = aRecord /* Used to iterate through change record */ i = 0 for { if !(i < (*TSessionTable)(unsafe.Pointer(pTab)).FnCol) { break } isPK = int32(**(**Tu8)(__ccgo_up((*TSessionTable)(unsafe.Pointer(pTab)).FabPK + uintptr(i)))) if bPkOnly != 0 && isPK == 0 { goto _1 } if isPK != 0 { v2 = a a = a + 1 eType = int32(**(**Tu8)(__ccgo_up(v2))) h = _sessionHashAppendType(tls, h, eType) if eType == int32(SQLITE_INTEGER) || eType == int32(SQLITE_FLOAT) { h = _sessionHashAppendI64(tls, h, _sessionGetI64(tls, a)) a = a + uintptr(8) } else { if eType == int32(SQLITE_TEXT) || eType == int32(SQLITE_BLOB) { a = a + uintptr(_sessionVarintGet(tls, a, bp)) h = _sessionHashAppendBlob(tls, h, **(**int32)(__ccgo_up(bp)), a) a = a + uintptr(**(**int32)(__ccgo_up(bp))) } } /* It should not be possible for eType to be SQLITE_NULL or 0x00 here, ** as the session module does not record changes for rows with NULL ** values stored in primary key columns. But a corrupt changesets ** may contain such a value. */ } else { a = a + uintptr(_sessionSerialLen(tls, a)) } goto _1 _1: ; i = i + 1 } return h % uint32(nBucket) } // C documentation // // /* // ** The input pointer currently points to the first byte of the first field // ** of a record consisting of nCol columns. This function ensures the entire // ** record is buffered. It does not move the input pointer. // ** // ** If successful, SQLITE_OK is returned and *pnByte is set to the size of // ** the record in bytes. Otherwise, an SQLite error code is returned. The // ** final value of *pnByte is undefined in this case. // */ func _sessionChangesetBufferRecord(tls *libc.TLS, pIn uintptr, nCol int32, pnByte uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var eType, i, nRem, rc int32 var nByte, v2 Ti64 var _ /* n at bp+0 */ int32 _, _, _, _, _, _ = eType, i, nByte, nRem, rc, v2 rc = SQLITE_OK nByte = 0 i = 0 for { if !(rc == SQLITE_OK && i < nCol) { break } rc = _sessionInputBuffer(tls, pIn, int32(nByte+int64(10))) if rc == SQLITE_OK { v2 = nByte nByte = nByte + 1 eType = int32(**(**Tu8)(__ccgo_up((*TSessionInput)(unsafe.Pointer(pIn)).FaData + uintptr(int64((*TSessionInput)(unsafe.Pointer(pIn)).FiNext)+v2)))) if eType == int32(SQLITE_TEXT) || eType == int32(SQLITE_BLOB) { nRem = int32(int64((*TSessionInput)(unsafe.Pointer(pIn)).FnData) - (int64((*TSessionInput)(unsafe.Pointer(pIn)).FiNext) + nByte)) nByte = nByte + int64(_sessionVarintGetSafe(tls, (*TSessionInput)(unsafe.Pointer(pIn)).FaData+uintptr(int64((*TSessionInput)(unsafe.Pointer(pIn)).FiNext)+nByte), nRem, bp)) nByte = nByte + int64(**(**int32)(__ccgo_up(bp))) rc = _sessionInputBuffer(tls, pIn, int32(nByte)) } else { if eType == int32(SQLITE_INTEGER) || eType == int32(SQLITE_FLOAT) { nByte = nByte + int64(8) } else { if eType != 0 && eType != int32(SQLITE_NULL) { rc = _sqlite3CorruptError(tls, int32(237456)) } } } } if rc == SQLITE_OK && int64((*TSessionInput)(unsafe.Pointer(pIn)).FiNext)+nByte > int64((*TSessionInput)(unsafe.Pointer(pIn)).FnData) { rc = _sqlite3CorruptError(tls, int32(237460)) } goto _1 _1: ; i = i + 1 } **(**int32)(__ccgo_up(pnByte)) = int32(nByte) return rc } func _sessionDiffFindModified(tls *libc.TLS, pSession uintptr, pTab uintptr, zFrom uintptr, zExpr uintptr) (r int32) { bp := tls.Alloc(80) defer tls.Free(80) var iRowid Ti64 var pDiffCtx, z1, z2, zExpr2, zStmt uintptr var rc int32 var v1 int64 var _ /* pStmt at bp+0 */ uintptr _, _, _, _, _, _, _, _ = iRowid, pDiffCtx, rc, z1, z2, zExpr2, zStmt, v1 rc = SQLITE_OK zExpr2 = _sessionExprCompareOther(tls, (*TSessionTable)(unsafe.Pointer(pTab)).FnCol, (*Tsqlite3_session)(unsafe.Pointer(pSession)).FzDb, zFrom, (*TSessionTable)(unsafe.Pointer(pTab)).FzName, (*TSessionTable)(unsafe.Pointer(pTab)).FazCol, (*TSessionTable)(unsafe.Pointer(pTab)).FabPK) if zExpr2 == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { z1 = _sessionAllCols(tls, (*Tsqlite3_session)(unsafe.Pointer(pSession)).FzDb, pTab) z2 = _sessionAllCols(tls, zFrom, pTab) zStmt = Xsqlite3_mprintf(tls, __ccgo_ts+36787, libc.VaList(bp+16, z1, z2, (*Tsqlite3_session)(unsafe.Pointer(pSession)).FzDb, (*TSessionTable)(unsafe.Pointer(pTab)).FzName, zFrom, (*TSessionTable)(unsafe.Pointer(pTab)).FzName, zExpr, zExpr2)) if zStmt == uintptr(0) || z1 == uintptr(0) || z2 == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { rc = Xsqlite3_prepare_v2(tls, (*Tsqlite3_session)(unsafe.Pointer(pSession)).Fdb, zStmt, -int32(1), bp, uintptr(0)) if rc == SQLITE_OK { pDiffCtx = (*Tsqlite3_session)(unsafe.Pointer(pSession)).Fhook.FpCtx (*TSessionDiffCtx)(unsafe.Pointer(pDiffCtx)).FpStmt = **(**uintptr)(__ccgo_up(bp)) (*TSessionDiffCtx)(unsafe.Pointer(pDiffCtx)).FnOldOff = (*TSessionTable)(unsafe.Pointer(pTab)).FnCol for int32(SQLITE_ROW) == Xsqlite3_step(tls, **(**uintptr)(__ccgo_up(bp))) { if (*TSessionTable)(unsafe.Pointer(pTab)).FbRowid != 0 { v1 = Xsqlite3_column_int64(tls, **(**uintptr)(__ccgo_up(bp)), 0) } else { v1 = 0 } iRowid = v1 _sessionPreupdateOneChange(tls, int32(SQLITE_UPDATE), iRowid, pSession, pTab) } rc = Xsqlite3_finalize(tls, **(**uintptr)(__ccgo_up(bp))) } } Xsqlite3_free(tls, zStmt) Xsqlite3_free(tls, z1) Xsqlite3_free(tls, z2) } return rc } // C documentation // // /* // ** Read a 64-bit big-endian integer value from buffer aRec[]. Return // ** the value read. // */ func _sessionGetI64(tls *libc.TLS, aRec uintptr) (r Tsqlite3_int64) { var x Tu64 var y Tu32 _, _ = x, y x = uint64(uint32(**(**Tu8)(__ccgo_up(aRec)))<>libc.Int32FromInt32(32)&libc.Int64FromUint32(0xFFFFFFFF)) } // C documentation // // /* // ** Append the hash of the data type passed as the second argument to the // ** hash-key value passed as the first. Return the new hash-key value. // */ func _sessionHashAppendType(tls *libc.TLS, h uint32, eType int32) (r uint32) { return h<> libc.Int32FromInt32(56) & int64(0xFF)) **(**Tu8)(__ccgo_up(aBuf + 1)) = uint8(i >> libc.Int32FromInt32(48) & int64(0xFF)) **(**Tu8)(__ccgo_up(aBuf + 2)) = uint8(i >> libc.Int32FromInt32(40) & int64(0xFF)) **(**Tu8)(__ccgo_up(aBuf + 3)) = uint8(i >> libc.Int32FromInt32(32) & int64(0xFF)) **(**Tu8)(__ccgo_up(aBuf + 4)) = uint8(i >> libc.Int32FromInt32(24) & int64(0xFF)) **(**Tu8)(__ccgo_up(aBuf + 5)) = uint8(i >> libc.Int32FromInt32(16) & int64(0xFF)) **(**Tu8)(__ccgo_up(aBuf + 6)) = uint8(i >> libc.Int32FromInt32(8) & int64(0xFF)) **(**Tu8)(__ccgo_up(aBuf + 7)) = uint8(i >> libc.Int32FromInt32(0) & int64(0xFF)) } func _sessionSelectFindNew(tls *libc.TLS, zDb1 uintptr, zDb2 uintptr, bRowid int32, zTbl uintptr, zExpr uintptr) (r uintptr) { bp := tls.Alloc(64) defer tls.Free(64) var zRet, zSel, v1 uintptr _, _, _ = zRet, zSel, v1 if bRowid != 0 { v1 = __ccgo_ts + 36678 } else { v1 = __ccgo_ts + 8038 } zSel = v1 zRet = Xsqlite3_mprintf(tls, __ccgo_ts+36689, libc.VaList(bp+8, zSel, zDb1, zTbl, zDb2, zTbl, zExpr)) return zRet } // C documentation // // /* // ** The buffer that the argument points to contains a serialized SQL value. // ** Return the number of bytes of space occupied by the value (including // ** the type byte). // */ func _sessionSerialLen(tls *libc.TLS, a uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var e int32 var _ /* n at bp+0 */ int32 _ = e e = int32(**(**Tu8)(__ccgo_up(a))) if e == int32(SQLITE_INTEGER) || e == int32(SQLITE_FLOAT) { return int32(9) } if e == int32(SQLITE_TEXT) || e == int32(SQLITE_BLOB) { return _sessionVarintGet(tls, a+1, bp) + int32(1) + **(**int32)(__ccgo_up(bp)) } return int32(1) } // C documentation // // /* // ** When this function is called, *ppRec points to the start of a record // ** that contains nCol values. This function advances the pointer *ppRec // ** until it points to the byte immediately following that record. // */ func _sessionSkipRecord(tls *libc.TLS, ppRec uintptr, nCol int32) { bp := tls.Alloc(16) defer tls.Free(16) var aRec, v2 uintptr var eType, i int32 var _ /* nByte at bp+0 */ int32 _, _, _, _ = aRec, eType, i, v2 aRec = **(**uintptr)(__ccgo_up(ppRec)) i = 0 for { if !(i < nCol) { break } v2 = aRec aRec = aRec + 1 eType = int32(**(**Tu8)(__ccgo_up(v2))) if eType == int32(SQLITE_TEXT) || eType == int32(SQLITE_BLOB) { aRec = aRec + uintptr(_sessionVarintGet(tls, aRec, bp)) aRec = aRec + uintptr(**(**int32)(__ccgo_up(bp))) } else { if eType == int32(SQLITE_INTEGER) || eType == int32(SQLITE_FLOAT) { aRec = aRec + uintptr(8) } } goto _1 _1: ; i = i + 1 } **(**uintptr)(__ccgo_up(ppRec)) = aRec } // C documentation // // /* // ** Check if table zTab in the "main" database of db is a WITHOUT ROWID // ** table. // ** // ** If no error occurs, return SQLITE_OK and set output variable (*pbWR) to // ** true if zTab is a WITHOUT ROWID table, or false otherwise. Or, if an // ** error does occur, return an SQLite error code. The final value of (*pbWR) // ** is undefined in this case. // */ func _sessionTableIsWithoutRowid(tls *libc.TLS, db uintptr, zTab uintptr, pbWR uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var rc int32 var zSql uintptr var _ /* pList at bp+0 */ uintptr _, _ = rc, zSql **(**uintptr)(__ccgo_up(bp)) = uintptr(0) zSql = uintptr(0) rc = SQLITE_OK zSql = Xsqlite3_mprintf(tls, __ccgo_ts+37604, libc.VaList(bp+16, zTab)) if zSql == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { rc = Xsqlite3_prepare_v2(tls, db, zSql, -int32(1), bp, uintptr(0)) Xsqlite3_free(tls, zSql) } if rc == SQLITE_OK { Xsqlite3_step(tls, **(**uintptr)(__ccgo_up(bp))) **(**int32)(__ccgo_up(pbWR)) = Xsqlite3_column_int(tls, **(**uintptr)(__ccgo_up(bp)), int32(4)) rc = Xsqlite3_finalize(tls, **(**uintptr)(__ccgo_up(bp))) } return rc } // C documentation // // /* // ** Read a varint value from aBuf[] into *piVal. Return the number of // ** bytes read. // */ func _sessionVarintGet(tls *libc.TLS, aBuf uintptr, piVal uintptr) (r int32) { var v1 int32 _ = v1 if int32(**(**Tu8)(__ccgo_up(aBuf))) < int32(libc.Uint8FromInt32(0x80)) { **(**int32)(__ccgo_up(piVal)) = int32(uint32(**(**Tu8)(__ccgo_up(aBuf)))) v1 = libc.Int32FromInt32(1) } else { v1 = int32(_sqlite3GetVarint32(tls, aBuf, piVal)) } return int32(uint8(v1)) } // C documentation // // /* // ** Return the number of bytes required to store value iVal as a varint. // */ func _sessionVarintLen(tls *libc.TLS, iVal int32) (r int32) { return _sqlite3VarintLen(tls, uint64(iVal)) } // C documentation // // /* // ** Write a varint with value iVal into the buffer at aBuf. Return the // ** number of bytes written. // */ func _sessionVarintPut(tls *libc.TLS, aBuf uintptr, iVal int32) (r int32) { var v1 int32 _ = v1 if uint32(iVal) < libc.Uint32FromInt32(0x80) { **(**Tu8)(__ccgo_up(aBuf)) = uint8(iVal) v1 = libc.Int32FromInt32(1) } else { v1 = _sqlite3PutVarint(tls, aBuf, uint64(iVal)) } return int32(uint8(v1)) } // C documentation // // /* // ** Set the pointer-map entries for all children of page pPage. Also, if // ** pPage contains cells that point to overflow pages, set the pointer // ** map entries for the overflow pages as well. // */ func _setChildPtrmaps(tls *libc.TLS, pPage uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var childPgno, childPgno1, pgno TPgno var i, nCell, v1 int32 var pBt, pCell uintptr var _ /* rc at bp+0 */ int32 _, _, _, _, _, _, _, _ = childPgno, childPgno1, i, nCell, pBt, pCell, pgno, v1 /* Return code */ pBt = (*TMemPage)(unsafe.Pointer(pPage)).FpBt pgno = (*TMemPage)(unsafe.Pointer(pPage)).Fpgno if (*TMemPage)(unsafe.Pointer(pPage)).FisInit != 0 { v1 = SQLITE_OK } else { v1 = _btreeInitPage(tls, pPage) } **(**int32)(__ccgo_up(bp)) = v1 if **(**int32)(__ccgo_up(bp)) != SQLITE_OK { return **(**int32)(__ccgo_up(bp)) } nCell = int32((*TMemPage)(unsafe.Pointer(pPage)).FnCell) i = 0 for { if !(i < nCell) { break } pCell = (*TMemPage)(unsafe.Pointer(pPage)).FaData + uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FmaskPage)&(int32(**(**Tu8)(__ccgo_up((*TMemPage)(unsafe.Pointer(pPage)).FaCellIdx + uintptr(int32(2)*i))))<sectorSize is to define the "blast radius" of bytes that // ** might change if a crash occurs while writing to a single byte in // ** that range. But with POWERSAFE_OVERWRITE, the blast radius is zero // ** (that is what POWERSAFE_OVERWRITE means), so we minimize the sector // ** size. For backwards compatibility of the rollback journal file format, // ** we cannot reduce the effective sector size below 512. // */ func _setSectorSize(tls *libc.TLS, pPager uintptr) { if (*TPager)(unsafe.Pointer(pPager)).FtempFile != 0 || _sqlite3OsDeviceCharacteristics(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd)&int32(SQLITE_IOCAP_POWERSAFE_OVERWRITE) != 0 { /* Sector size doesn't matter for temporary files. Also, the file ** may not have been opened yet, in which case the OsSectorSize() ** call will segfault. */ (*TPager)(unsafe.Pointer(pPager)).FsectorSize = uint32(512) } else { (*TPager)(unsafe.Pointer(pPager)).FsectorSize = uint32(_sqlite3SectorSize(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd)) } } type _sigset_t = T_sigset_t // C documentation // // /* IMP: R-25361-16150 This function is omitted from SQLite by default. It // ** is only available if the SQLITE_SOUNDEX compile-time option is used // ** when SQLite is built. // */ // /* // ** Compute the soundex encoding of a word. // ** // ** IMP: R-59782-00072 The soundex(X) function returns a string that is the // ** soundex encoding of the string X. // */ func _soundexFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var code, i, j, v3 int32 var prevcode Tu8 var zIn uintptr var _ /* zResult at bp+0 */ [8]int8 _, _, _, _, _, _ = code, i, j, prevcode, zIn, v3 zIn = Xsqlite3_value_text(tls, **(**uintptr)(__ccgo_up(argv))) if zIn == uintptr(0) { zIn = __ccgo_ts + 1711 } i = 0 for { if !(**(**Tu8)(__ccgo_up(zIn + uintptr(i))) != 0 && !(int32(_sqlite3CtypeMap[**(**Tu8)(__ccgo_up(zIn + uintptr(i)))])&libc.Int32FromInt32(0x02) != 0)) { break } goto _1 _1: ; i = i + 1 } if **(**Tu8)(__ccgo_up(zIn + uintptr(i))) != 0 { prevcode = _iCode[int32(**(**Tu8)(__ccgo_up(zIn + uintptr(i))))&int32(0x7f)] (**(**[8]int8)(__ccgo_up(bp)))[0] = int8(int32(**(**Tu8)(__ccgo_up(zIn + uintptr(i)))) & ^(int32(_sqlite3CtypeMap[**(**Tu8)(__ccgo_up(zIn + uintptr(i)))]) & libc.Int32FromInt32(0x20))) j = int32(1) for { if !(j < int32(4) && **(**Tu8)(__ccgo_up(zIn + uintptr(i))) != 0) { break } code = int32(_iCode[int32(**(**Tu8)(__ccgo_up(zIn + uintptr(i))))&int32(0x7f)]) if code > 0 { if code != int32(prevcode) { prevcode = uint8(code) v3 = j j = j + 1 (**(**[8]int8)(__ccgo_up(bp)))[v3] = int8(code + int32('0')) } } else { prevcode = uint8(0) } goto _2 _2: ; i = i + 1 } for j < int32(4) { v3 = j j = j + 1 (**(**[8]int8)(__ccgo_up(bp)))[v3] = int8('0') } (**(**[8]int8)(__ccgo_up(bp)))[j] = 0 Xsqlite3_result_text(tls, context, bp, int32(4), uintptr(-libc.Int32FromInt32(1))) } else { /* IMP: R-64894-50321 The string "?000" is returned if the argument ** is NULL or contains no ASCII alphabetic characters. */ Xsqlite3_result_text(tls, context, __ccgo_ts+17816, int32(4), libc.UintptrFromInt32(0)) } } // C documentation // // /* // ** Scan the column type name zType (length nType) and return the // ** associated affinity type. // ** // ** This routine does a case-independent search of zType for the // ** substrings in the following table. If one of the substrings is // ** found, the corresponding affinity is returned. If zType contains // ** more than one of the substrings, entries toward the top of // ** the table take priority. For example, if zType is 'BLOBINT', // ** SQLITE_AFF_INTEGER is returned. // ** // ** Substring | Affinity // ** -------------------------------- // ** 'INT' | SQLITE_AFF_INTEGER // ** 'CHAR' | SQLITE_AFF_TEXT // ** 'CLOB' | SQLITE_AFF_TEXT // ** 'TEXT' | SQLITE_AFF_TEXT // ** 'BLOB' | SQLITE_AFF_BLOB // ** 'REAL' | SQLITE_AFF_REAL // ** 'FLOA' | SQLITE_AFF_REAL // ** 'DOUB' | SQLITE_AFF_REAL // ** // ** If none of the substrings in the above table are found, // ** SQLITE_AFF_NUMERIC is returned. // */ func _sqlite3AffinityType(tls *libc.TLS, zIn uintptr, pCol uintptr) (r int8) { bp := tls.Alloc(16) defer tls.Free(16) var aff int8 var h Tu32 var x Tu8 var zChar uintptr var _ /* v at bp+0 */ int32 _, _, _, _ = aff, h, x, zChar h = uint32(0) aff = int8(SQLITE_AFF_NUMERIC) zChar = uintptr(0) for **(**int8)(__ccgo_up(zIn)) != 0 { x = **(**Tu8)(__ccgo_up(zIn)) h = h< r=(k/4+1) */ _sqlite3GetInt32(tls, zChar, bp) break } zChar = zChar + 1 } } else { **(**int32)(__ccgo_up(bp)) = int32(16) /* BLOB, TEXT, CLOB -> r=5 (approx 20 bytes)*/ } } **(**int32)(__ccgo_up(bp)) = **(**int32)(__ccgo_up(bp))/int32(4) + int32(1) if **(**int32)(__ccgo_up(bp)) > int32(255) { **(**int32)(__ccgo_up(bp)) = int32(255) } (*TColumn)(unsafe.Pointer(pCol)).FszEst = uint8(**(**int32)(__ccgo_up(bp))) } return aff } // C documentation // // /* // ** Write a single UTF8 character whose value is v into the // ** buffer starting at zOut. zOut must be sized to hold at // ** least four bytes. Return the number of bytes needed // ** to encode the new character. // */ func _sqlite3AppendOneUtf8Character(tls *libc.TLS, zOut uintptr, v Tu32) (r int32) { if v < uint32(0x00080) { **(**int8)(__ccgo_up(zOut)) = int8(uint8(v & libc.Uint32FromInt32(0xff))) return int32(1) } if v < uint32(0x00800) { **(**int8)(__ccgo_up(zOut)) = int8(int32(0xc0) + int32(uint8(v>>libc.Int32FromInt32(6)&libc.Uint32FromInt32(0x1f)))) **(**int8)(__ccgo_up(zOut + 1)) = int8(int32(0x80) + int32(uint8(v&libc.Uint32FromInt32(0x3f)))) return int32(2) } if v < uint32(0x10000) { **(**int8)(__ccgo_up(zOut)) = int8(int32(0xe0) + int32(uint8(v>>libc.Int32FromInt32(12)&libc.Uint32FromInt32(0x0f)))) **(**int8)(__ccgo_up(zOut + 1)) = int8(int32(0x80) + int32(uint8(v>>libc.Int32FromInt32(6)&libc.Uint32FromInt32(0x3f)))) **(**int8)(__ccgo_up(zOut + 2)) = int8(int32(0x80) + int32(uint8(v&libc.Uint32FromInt32(0x3f)))) return int32(3) } **(**int8)(__ccgo_up(zOut)) = int8(int32(0xf0) + int32(uint8(v>>libc.Int32FromInt32(18)&libc.Uint32FromInt32(0x07)))) **(**int8)(__ccgo_up(zOut + 1)) = int8(int32(0x80) + int32(uint8(v>>libc.Int32FromInt32(12)&libc.Uint32FromInt32(0x3f)))) **(**int8)(__ccgo_up(zOut + 2)) = int8(int32(0x80) + int32(uint8(v>>libc.Int32FromInt32(6)&libc.Uint32FromInt32(0x3f)))) **(**int8)(__ccgo_up(zOut + 3)) = int8(int32(0x80) + int32(uint8(v&libc.Uint32FromInt32(0x3f)))) return int32(4) } // C documentation // // /* // ** The string z[] is an text representation of a real number. // ** Convert this string to a double and write it into *pResult. // ** // ** z[] must be UTF-8 and zero-terminated. // ** // ** Return positive if the result is a valid real number (or integer) and // ** zero or negative if the string is empty or contains extraneous text. // ** Lower bits of the return value contain addition information about the // ** parse: // ** // ** bit 0 => Set if any prefix of the input is valid. Clear if // ** there is no prefix of the input that can be seen as // ** a valid floating point number. // ** bit 1 => Set if the input contains a decimal point or eNNN // ** clause. Zero if the input is an integer. // ** bit 2 => The input is exactly 0.0, not an underflow from // ** some value near zero. // ** bit 3 => Set if there are more than about 19 significant // ** digits in the input. // ** // ** If the input contains a syntax error but begins with text that might // ** be a valid number of some kind, then the result is negative. The // ** result is only zero if no prefix of the input could be interpreted as // ** a number. // ** // ** Leading and trailing whitespace is ignored. Valid numbers are in // ** one of the formats below: // ** // ** [+-]digits[E[+-]digits] // ** [+-]digits.[digits][E[+-]digits] // ** [+-].digits[E[+-]digits] // ** // ** Algorithm sketch: Compute an unsigned 64-bit integer s and a base-10 // ** exponent d such that the value encoding by the input is s*pow(10,d). // ** Then invoke sqlite3Fp10Convert2() to calculated the closest possible // ** IEEE754 double. The sign is added back afterwards, if the input string // ** starts with a "-". The use of an unsigned 64-bit s mantissa means that // ** only about the first 19 significant digits of the input can contribute // ** to the result. This can result in suboptimal rounding decisions when // ** correct rounding requires more than 19 input digits. For example, // ** this routine renders "3500000000000000.2500001" as // ** 3500000000000000.0 instead of 3500000000000000.5 because the decision // ** to round up instead of using banker's rounding to round down is determined // ** by the 23rd significant digit, which this routine ignores. It is not // ** possible to do better without some kind of BigNum. // */ func _sqlite3AtoF(tls *libc.TLS, zIn uintptr, pResult uintptr) (r int32) { var d, esign, exp, mState, neg int32 var s Tu64 var v, v3, v4 uint32 var z, v7 uintptr _, _, _, _, _, _, _, _, _, _, _ = d, esign, exp, mState, neg, s, v, z, v3, v4, v7 z = zIn neg = 0 /* True for a negative value */ s = uint64(0) /* mantissa */ d = 0 /* Value is s * pow(10,d) */ mState = 0 /* Value of a single digit */ goto start_of_text start_of_text: ; v3 = uint32(**(**uint8)(__ccgo_up(z))) - libc.Uint32FromUint8('0') v = v3 if !(v3 < uint32(10)) { goto _1 } goto parse_integer_part parse_integer_part: ; mState = int32(1) s = uint64(v) z = z + 1 for { v3 = uint32(**(**uint8)(__ccgo_up(z))) - libc.Uint32FromUint8('0') v = v3 if !(v3 < uint32(10)) { break } s = s*uint64(10) + uint64(v) z = z + 1 if s >= (libc.Uint64FromUint32(0xffffffff)|libc.Uint64FromUint32(0xffffffff)< uint64(libc.Int64FromUint32(0xffffffff)|libc.Int64FromInt32(0x7fffffff)< int32(19)*incr { v6 = int32(1) } else { v6 = _compare2pow63(tls, zNum, incr) } j = v6 if j < 0 { /* zNum is less than 9223372036854775808 so it fits */ return rc } else { if neg != 0 { v5 = int64(-libc.Int32FromInt32(1)) - (libc.Int64FromUint32(0xffffffff) | libc.Int64FromInt32(0x7fffffff)< 0 { /* zNum is greater than 9223372036854775808 so it overflows */ return int32(2) } else { /* zNum is exactly 9223372036854775808. Fits if negative. The ** special case 2 overflow if positive */ if neg != 0 { v6 = rc } else { v6 = int32(3) } return v6 } } } return r } // C documentation // // /* // ** Do an authorization check using the code and arguments given. Return // ** either SQLITE_OK (zero) or SQLITE_IGNORE or SQLITE_DENY. If SQLITE_DENY // ** is returned, then the error count and error message in pParse are // ** modified appropriately. // */ func _sqlite3AuthCheck(tls *libc.TLS, pParse uintptr, code int32, zArg1 uintptr, zArg2 uintptr, zArg3 uintptr) (r int32) { var db uintptr var rc int32 _, _ = db, rc db = (*TParse)(unsafe.Pointer(pParse)).Fdb /* Don't do any authorization checks if the database is initializing ** or if the parser is being invoked from within sqlite3_declare_vtab. */ if (*Tsqlite3)(unsafe.Pointer(db)).FxAuth == uintptr(0) || (*Tsqlite3)(unsafe.Pointer(db)).Finit1.Fbusy != 0 || int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) != PARSE_MODE_NORMAL { return SQLITE_OK } /* EVIDENCE-OF: R-43249-19882 The third through sixth parameters to the ** callback are either NULL pointers or zero-terminated strings that ** contain additional details about the action to be authorized. ** ** The following testcase() macros show that any of the 3rd through 6th ** parameters can be either NULL or a string. */ rc = (*(*func(*libc.TLS, uintptr, int32, uintptr, uintptr, uintptr, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{(*Tsqlite3)(unsafe.Pointer(db)).FxAuth})))(tls, (*Tsqlite3)(unsafe.Pointer(db)).FpAuthArg, code, zArg1, zArg2, zArg3, (*TParse)(unsafe.Pointer(pParse)).FzAuthContext) if rc == int32(SQLITE_DENY) { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+14888, 0) (*TParse)(unsafe.Pointer(pParse)).Frc = int32(SQLITE_AUTH) } else { if rc != SQLITE_OK && rc != int32(SQLITE_IGNORE) { rc = int32(SQLITE_DENY) _sqliteAuthBadReturnCode(tls, pParse) } } return rc } // C documentation // // /* // ** This routine runs an extensive test of the Bitvec code. // ** // ** The input is an array of integers that acts as a program // ** to test the Bitvec. The integers are opcodes followed // ** by 0, 1, or 3 operands, depending on the opcode. Another // ** opcode follows immediately after the last operand. // ** // ** There are opcodes numbered starting with 0. 0 is the // ** "halt" opcode and causes the test to end. // ** // ** 0 Halt and return the number of errors // ** 1 N S X Set N bits beginning with S and incrementing by X // ** 2 N S X Clear N bits beginning with S and incrementing by X // ** 3 N Set N randomly chosen bits // ** 4 N Clear N randomly chosen bits // ** 5 N S X Set N bits from S increment X in array only, not in bitvec // ** 6 Invoice sqlite3ShowBitvec() on the Bitvec object so far // ** 7 X Show compile-time parameters and the hash of X // ** // ** The opcodes 1 through 4 perform set and clear operations are performed // ** on both a Bitvec object and on a linear array of bits obtained from malloc. // ** Opcode 5 works on the linear array only, not on the Bitvec. // ** Opcode 5 is used to deliberately induce a fault in order to // ** confirm that error detection works. Opcodes 6 and greater are // ** state output opcodes. Opcodes 6 and greater are no-ops unless // ** SQLite has been compiled with SQLITE_DEBUG. // ** // ** At the conclusion of the test the linear array is compared // ** against the Bitvec object. If there are any differences, // ** an error is returned. If they are the same, zero is returned. // ** // ** If a memory allocation error occurs, return -1. // ** // ** sz is the size of the Bitvec. Or if sz is negative, make the size // ** 2*(unsigned)(-sz) and disabled the linear vector check. // */ func _sqlite3BitvecBuiltinTest(tls *libc.TLS, sz int32, aOp uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var nx, op, pc, rc, v1 int32 var pBitvec, pTmpSpace, pV, v4 uintptr var _ /* i at bp+0 */ int32 _, _, _, _, _, _, _, _, _ = nx, op, pBitvec, pTmpSpace, pV, pc, rc, v1, v4 pBitvec = uintptr(0) pV = uintptr(0) rc = -int32(1) /* Allocate the Bitvec to be tested and a linear array of ** bits to act as the reference */ if sz <= 0 { pBitvec = _sqlite3BitvecCreate(tls, uint32(2)*uint32(-sz)) pV = uintptr(0) } else { pBitvec = _sqlite3BitvecCreate(tls, uint32(sz)) pV = _sqlite3MallocZero(tls, uint64((int64(7)+int64(sz))/int64(8)+int64(1))) } pTmpSpace = Xsqlite3_malloc64(tls, uint64(BITVEC_SZ)) if pBitvec == uintptr(0) || pTmpSpace == uintptr(0) || pV == uintptr(0) && sz > 0 { goto bitvec_end } /* NULL pBitvec tests */ _sqlite3BitvecSet(tls, uintptr(0), uint32(1)) _sqlite3BitvecClear(tls, uintptr(0), uint32(1), pTmpSpace) /* Run the program */ v1 = libc.Int32FromInt32(0) **(**int32)(__ccgo_up(bp)) = v1 pc = v1 for { v1 = **(**int32)(__ccgo_up(aOp + uintptr(pc)*4)) op = v1 if !(v1 != 0) { break } if op >= int32(6) { pc = pc + 1 continue } switch op { case int32(1): fallthrough case int32(2): fallthrough case int32(5): nx = int32(4) **(**int32)(__ccgo_up(bp)) = **(**int32)(__ccgo_up(aOp + uintptr(pc+int32(2))*4)) - int32(1) **(**int32)(__ccgo_up(aOp + uintptr(pc+int32(2))*4)) += **(**int32)(__ccgo_up(aOp + uintptr(pc+int32(3))*4)) case int32(3): fallthrough case int32(4): fallthrough default: nx = int32(2) Xsqlite3_randomness(tls, int32(4), bp) break } v4 = aOp + uintptr(pc+int32(1))*4 *(*int32)(unsafe.Pointer(v4)) = *(*int32)(unsafe.Pointer(v4)) - 1 v1 = *(*int32)(unsafe.Pointer(v4)) if v1 > 0 { nx = 0 } pc = pc + nx **(**int32)(__ccgo_up(bp)) = **(**int32)(__ccgo_up(bp)) & int32(0x7fffffff) % sz if op&int32(1) != 0 { if pV != 0 { v4 = pV + uintptr((**(**int32)(__ccgo_up(bp))+int32(1))>>int32(3)) *(*uint8)(unsafe.Pointer(v4)) = uint8(int32(*(*uint8)(unsafe.Pointer(v4))) | libc.Int32FromInt32(1)<<((**(**int32)(__ccgo_up(bp))+libc.Int32FromInt32(1))&libc.Int32FromInt32(7))) } if op != int32(5) { if _sqlite3BitvecSet(tls, pBitvec, uint32(**(**int32)(__ccgo_up(bp))+int32(1))) != 0 { goto bitvec_end } } } else { if pV != 0 { v4 = pV + uintptr((**(**int32)(__ccgo_up(bp))+int32(1))>>int32(3)) *(*uint8)(unsafe.Pointer(v4)) = uint8(int32(*(*uint8)(unsafe.Pointer(v4))) & ^int32(uint8(libc.Int32FromInt32(1)<<((**(**int32)(__ccgo_up(bp))+libc.Int32FromInt32(1))&libc.Int32FromInt32(7))))) } _sqlite3BitvecClear(tls, pBitvec, uint32(**(**int32)(__ccgo_up(bp))+int32(1)), pTmpSpace) } } /* Test to make sure the linear array exactly matches the ** Bitvec object. Start with the assumption that they do ** match (rc==0). Change rc to non-zero if a discrepancy ** is found. */ if pV != 0 { rc = int32(uint32(_sqlite3BitvecTest(tls, uintptr(0), uint32(0))+_sqlite3BitvecTest(tls, pBitvec, uint32(sz+int32(1)))+_sqlite3BitvecTest(tls, pBitvec, uint32(0))) + (_sqlite3BitvecSize(tls, pBitvec) - uint32(sz))) **(**int32)(__ccgo_up(bp)) = int32(1) for { if !(**(**int32)(__ccgo_up(bp)) <= sz) { break } if libc.BoolInt32(int32(**(**uint8)(__ccgo_up(pV + uintptr(**(**int32)(__ccgo_up(bp))>>int32(3)))))&(int32(1)<<(**(**int32)(__ccgo_up(bp))&int32(7))) != 0) != _sqlite3BitvecTest(tls, pBitvec, uint32(**(**int32)(__ccgo_up(bp)))) { rc = **(**int32)(__ccgo_up(bp)) break } goto _7 _7: ; **(**int32)(__ccgo_up(bp)) = **(**int32)(__ccgo_up(bp)) + 1 } } else { rc = 0 } /* Free allocated structure */ goto bitvec_end bitvec_end: ; Xsqlite3_free(tls, pTmpSpace) Xsqlite3_free(tls, pV) _sqlite3BitvecDestroy(tls, pBitvec) return rc } /********************************** Test and Debug Logic **********************/ /* ** Debug tracing macros. Enable by by changing the "0" to "1" and ** recompiling. ** ** When sqlite3PcacheTrace is 1, single line trace messages are issued. ** When sqlite3PcacheTrace is 2, a dump of the pcache showing all cache entries ** is displayed for many operations, resulting in a lot of output. */ /* ** Return 1 if pPg is on the dirty list for pCache. Return 0 if not. ** This routine runs inside of assert() statements only. */ /* ** Check invariants on a PgHdr entry. Return true if everything is OK. ** Return false if any invariant is violated. ** ** This routine is for use inside of assert() statements only. For ** example: ** ** assert( sqlite3PcachePageSanity(pPg) ); */ /********************************** Linked List Management ********************/ /* Allowed values for second argument to pcacheManageDirtyList() */ func _sqlite3BtreeBeginTrans(tls *libc.TLS, p uintptr, wrflag int32, pSchemaVersion uintptr) (r int32) { var pBt uintptr _ = pBt if (*TBtree)(unsafe.Pointer(p)).Fsharable != 0 || int32((*TBtree)(unsafe.Pointer(p)).FinTrans) == TRANS_NONE || int32((*TBtree)(unsafe.Pointer(p)).FinTrans) == int32(TRANS_READ) && wrflag != 0 { return _btreeBeginTrans(tls, p, wrflag, pSchemaVersion) } pBt = (*TBtree)(unsafe.Pointer(p)).FpBt if pSchemaVersion != 0 { **(**int32)(__ccgo_up(pSchemaVersion)) = int32(_sqlite3Get4byte(tls, (*TMemPage)(unsafe.Pointer((*TBtShared)(unsafe.Pointer(pBt)).FpPage1)).FaData+40)) } if wrflag != 0 { /* This call makes sure that the pager has the correct number of ** open savepoints. If the second parameter is greater than 0 and ** the sub-journal is not already open, then it will be opened here. */ return _sqlite3PagerOpenSavepoint(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, (*Tsqlite3)(unsafe.Pointer((*TBtree)(unsafe.Pointer(p)).Fdb)).FnSavepoint) } else { return SQLITE_OK } return r } // C documentation // // /* // ** Run a checkpoint on the Btree passed as the first argument. // ** // ** Return SQLITE_LOCKED if this or any other connection has an open // ** transaction on the shared-cache the argument Btree is connected to. // ** // ** Parameter eMode is one of SQLITE_CHECKPOINT_PASSIVE, FULL or RESTART. // */ func _sqlite3BtreeCheckpoint(tls *libc.TLS, p uintptr, eMode int32, pnLog uintptr, pnCkpt uintptr) (r int32) { var pBt uintptr var rc int32 _, _ = pBt, rc rc = SQLITE_OK if p != 0 { pBt = (*TBtree)(unsafe.Pointer(p)).FpBt _sqlite3BtreeEnter(tls, p) if int32((*TBtShared)(unsafe.Pointer(pBt)).FinTransaction) != TRANS_NONE { rc = int32(SQLITE_LOCKED) } else { rc = _sqlite3PagerCheckpoint(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, (*TBtree)(unsafe.Pointer(p)).Fdb, eMode, pnLog, pnCkpt) } _sqlite3BtreeLeave(tls, p) } return rc } // C documentation // // /* // ** If no transaction is active and the database is not a temp-db, clear // ** the in-memory pager cache. // */ func _sqlite3BtreeClearCache(tls *libc.TLS, p uintptr) { var pBt uintptr _ = pBt pBt = (*TBtree)(unsafe.Pointer(p)).FpBt if int32((*TBtShared)(unsafe.Pointer(pBt)).FinTransaction) == TRANS_NONE { _sqlite3PagerClearCache(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager) } } // C documentation // // /* // ** Delete all information from a single table in the database. iTable is // ** the page number of the root of the table. After this routine returns, // ** the root page is empty, but still exists. // ** // ** This routine will fail with SQLITE_LOCKED if there are any open // ** read cursors on the table. Open write cursors are moved to the // ** root of the table. // ** // ** If pnChange is not NULL, then the integer value pointed to by pnChange // ** is incremented by the number of entries in the table. // */ func _sqlite3BtreeClearTable(tls *libc.TLS, p uintptr, iTable int32, pnChange uintptr) (r int32) { var pBt uintptr var rc int32 _, _ = pBt, rc pBt = (*TBtree)(unsafe.Pointer(p)).FpBt _sqlite3BtreeEnter(tls, p) rc = _saveAllCursors(tls, pBt, uint32(iTable), uintptr(0)) if SQLITE_OK == rc { /* Invalidate all incrblob cursors open on table iTable (assuming iTable ** is the root of a table b-tree - if it is not, the following call is ** a no-op). */ if (*TBtree)(unsafe.Pointer(p)).FhasIncrblobCur != 0 { _invalidateIncrblobCursors(tls, p, uint32(iTable), 0, int32(1)) } rc = _clearDatabasePage(tls, pBt, uint32(iTable), 0, pnChange) } _sqlite3BtreeLeave(tls, p) return rc } // C documentation // // /* // ** Delete all information from the single table that pCur is open on. // ** // ** This routine only work for pCur on an ephemeral table. // */ func _sqlite3BtreeClearTableOfCursor(tls *libc.TLS, pCur uintptr) (r int32) { return _sqlite3BtreeClearTable(tls, (*TBtCursor)(unsafe.Pointer(pCur)).FpBtree, int32((*TBtCursor)(unsafe.Pointer(pCur)).FpgnoRoot), uintptr(0)) } // C documentation // // /* // ** Close a cursor. The read lock on the database file is released // ** when the last cursor is closed. // */ func _sqlite3BtreeCloseCursor(tls *libc.TLS, pCur uintptr) (r int32) { var pBt, pBtree, pPrev uintptr _, _, _ = pBt, pBtree, pPrev pBtree = (*TBtCursor)(unsafe.Pointer(pCur)).FpBtree if pBtree != 0 { pBt = (*TBtCursor)(unsafe.Pointer(pCur)).FpBt _sqlite3BtreeEnter(tls, pBtree) if (*TBtShared)(unsafe.Pointer(pBt)).FpCursor == pCur { (*TBtShared)(unsafe.Pointer(pBt)).FpCursor = (*TBtCursor)(unsafe.Pointer(pCur)).FpNext } else { pPrev = (*TBtShared)(unsafe.Pointer(pBt)).FpCursor for cond := true; cond; cond = pPrev != 0 { if (*TBtCursor)(unsafe.Pointer(pPrev)).FpNext == pCur { (*TBtCursor)(unsafe.Pointer(pPrev)).FpNext = (*TBtCursor)(unsafe.Pointer(pCur)).FpNext break } pPrev = (*TBtCursor)(unsafe.Pointer(pPrev)).FpNext } } _btreeReleaseAllCursorPages(tls, pCur) _unlockBtreeIfUnused(tls, pBt) Xsqlite3_free(tls, (*TBtCursor)(unsafe.Pointer(pCur)).FaOverflow) Xsqlite3_free(tls, (*TBtCursor)(unsafe.Pointer(pCur)).FpKey) if int32((*TBtShared)(unsafe.Pointer(pBt)).FopenFlags)&int32(BTREE_SINGLE) != 0 && (*TBtShared)(unsafe.Pointer(pBt)).FpCursor == uintptr(0) { /* Since the BtShared is not sharable, there is no need to ** worry about the missing sqlite3BtreeLeave() call here. */ _sqlite3BtreeClose(tls, pBtree) } else { _sqlite3BtreeLeave(tls, pBtree) } (*TBtCursor)(unsafe.Pointer(pCur)).FpBtree = uintptr(0) } return SQLITE_OK } // C documentation // // /* // ** This routine does the first phase of a two-phase commit. This routine // ** causes a rollback journal to be created (if it does not already exist) // ** and populated with enough information so that if a power loss occurs // ** the database can be restored to its original state by playing back // ** the journal. Then the contents of the journal are flushed out to // ** the disk. After the journal is safely on oxide, the changes to the // ** database are written into the database file and flushed to oxide. // ** At the end of this call, the rollback journal still exists on the // ** disk and we are still holding all locks, so the transaction has not // ** committed. See sqlite3BtreeCommitPhaseTwo() for the second phase of the // ** commit process. // ** // ** This call is a no-op if no write-transaction is currently active on pBt. // ** // ** Otherwise, sync the database file for the btree pBt. zSuperJrnl points to // ** the name of a super-journal file that should be written into the // ** individual journal file, or is NULL, indicating no super-journal file // ** (single database transaction). // ** // ** When this is called, the super-journal should already have been // ** created, populated with this journal pointer and synced to disk. // ** // ** Once this is routine has returned, the only thing required to commit // ** the write-transaction for this database file is to delete the journal. // */ func _sqlite3BtreeCommitPhaseOne(tls *libc.TLS, p uintptr, zSuperJrnl uintptr) (r int32) { var pBt uintptr var rc int32 _, _ = pBt, rc rc = SQLITE_OK if int32((*TBtree)(unsafe.Pointer(p)).FinTrans) == int32(TRANS_WRITE) { pBt = (*TBtree)(unsafe.Pointer(p)).FpBt _sqlite3BtreeEnter(tls, p) if (*TBtShared)(unsafe.Pointer(pBt)).FautoVacuum != 0 { rc = _autoVacuumCommit(tls, p) if rc != SQLITE_OK { _sqlite3BtreeLeave(tls, p) return rc } } if (*TBtShared)(unsafe.Pointer(pBt)).FbDoTruncate != 0 { _sqlite3PagerTruncateImage(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, (*TBtShared)(unsafe.Pointer(pBt)).FnPage) } rc = _sqlite3PagerCommitPhaseOne(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, zSuperJrnl, 0) _sqlite3BtreeLeave(tls, p) } return rc } // C documentation // // /* // ** Commit the transaction currently in progress. // ** // ** This routine implements the second phase of a 2-phase commit. The // ** sqlite3BtreeCommitPhaseOne() routine does the first phase and should // ** be invoked prior to calling this routine. The sqlite3BtreeCommitPhaseOne() // ** routine did all the work of writing information out to disk and flushing the // ** contents so that they are written onto the disk platter. All this // ** routine has to do is delete or truncate or zero the header in the // ** the rollback journal (which causes the transaction to commit) and // ** drop locks. // ** // ** Normally, if an error occurs while the pager layer is attempting to // ** finalize the underlying journal file, this function returns an error and // ** the upper layer will attempt a rollback. However, if the second argument // ** is non-zero then this b-tree transaction is part of a multi-file // ** transaction. In this case, the transaction has already been committed // ** (by deleting a super-journal file) and the caller will ignore this // ** functions return code. So, even if an error occurs in the pager layer, // ** reset the b-tree objects internal state to indicate that the write // ** transaction has been closed. This is quite safe, as the pager will have // ** transitioned to the error state. // ** // ** This will release the write lock on the database file. If there // ** are no active cursors, it also releases the read lock. // */ func _sqlite3BtreeCommitPhaseTwo(tls *libc.TLS, p uintptr, bCleanup int32) (r int32) { var pBt uintptr var rc int32 _, _ = pBt, rc if int32((*TBtree)(unsafe.Pointer(p)).FinTrans) == TRANS_NONE { return SQLITE_OK } _sqlite3BtreeEnter(tls, p) /* If the handle has a write-transaction open, commit the shared-btrees ** transaction and set the shared state to TRANS_READ. */ if int32((*TBtree)(unsafe.Pointer(p)).FinTrans) == int32(TRANS_WRITE) { pBt = (*TBtree)(unsafe.Pointer(p)).FpBt rc = _sqlite3PagerCommitPhaseTwo(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager) if rc != SQLITE_OK && bCleanup == 0 { _sqlite3BtreeLeave(tls, p) return rc } (*TBtree)(unsafe.Pointer(p)).FiBDataVersion = (*TBtree)(unsafe.Pointer(p)).FiBDataVersion - 1 /* Compensate for pPager->iDataVersion++; */ (*TBtShared)(unsafe.Pointer(pBt)).FinTransaction = uint8(TRANS_READ) _btreeClearHasContent(tls, pBt) } _btreeEndTransaction(tls, p) _sqlite3BtreeLeave(tls, p) return SQLITE_OK } // C documentation // // /* // ** Determine whether or not a cursor has moved from the position where // ** it was last placed, or has been invalidated for any other reason. // ** Cursors can move when the row they are pointing at is deleted out // ** from under them, for example. Cursor might also move if a btree // ** is rebalanced. // ** // ** Calling this routine with a NULL cursor pointer returns false. // ** // ** Use the separate sqlite3BtreeCursorRestore() routine to restore a cursor // ** back to where it ought to be if this routine returns true. // */ func _sqlite3BtreeCursorHasMoved(tls *libc.TLS, pCur uintptr) (r int32) { return libc.BoolInt32(CURSOR_VALID != int32(**(**Tu8)(__ccgo_up(pCur)))) } func _sqlite3BtreeCursorIsValidNN(tls *libc.TLS, pCur uintptr) (r int32) { return libc.BoolInt32(int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) == CURSOR_VALID) } // C documentation // // /* // ** This routine restores a cursor back to its original position after it // ** has been moved by some outside activity (such as a btree rebalance or // ** a row having been deleted out from under the cursor). // ** // ** On success, the *pDifferentRow parameter is false if the cursor is left // ** pointing at exactly the same row. *pDifferntRow is the row the cursor // ** was pointing to has been deleted, forcing the cursor to point to some // ** nearby row. // ** // ** This routine should only be called for a cursor that just returned // ** TRUE from sqlite3BtreeCursorHasMoved(). // */ func _sqlite3BtreeCursorRestore(tls *libc.TLS, pCur uintptr, pDifferentRow uintptr) (r int32) { var rc, v1 int32 _, _ = rc, v1 if int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) >= int32(CURSOR_REQUIRESEEK) { v1 = _btreeRestoreCursorPosition(tls, pCur) } else { v1 = SQLITE_OK } rc = v1 if rc != 0 { **(**int32)(__ccgo_up(pDifferentRow)) = int32(1) return rc } if int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) != CURSOR_VALID { **(**int32)(__ccgo_up(pDifferentRow)) = int32(1) } else { **(**int32)(__ccgo_up(pDifferentRow)) = 0 } return SQLITE_OK } func _sqlite3BtreeDropTable(tls *libc.TLS, p uintptr, iTable int32, piMoved uintptr) (r int32) { var rc int32 _ = rc _sqlite3BtreeEnter(tls, p) rc = _btreeDropTable(tls, p, uint32(iTable), piMoved) _sqlite3BtreeLeave(tls, p) return rc } func _sqlite3BtreeEnterAll(tls *libc.TLS, db uintptr) { if int32((*Tsqlite3)(unsafe.Pointer(db)).FnoSharedCache) == 0 { _btreeEnterAll(tls, db) } } // C documentation // // /* // ** Return TRUE if the cursor is not pointing at an entry of the table. // ** // ** TRUE will be returned after a call to sqlite3BtreeNext() moves // ** past the last entry in the table or sqlite3BtreePrev() moves past // ** the first entry. TRUE is also returned if the table is empty. // */ func _sqlite3BtreeEof(tls *libc.TLS, pCur uintptr) (r int32) { /* TODO: What if the cursor is in CURSOR_REQUIRESEEK but all table entries ** have been deleted? This API will need to change to return an error code ** as well as the boolean result value. */ return libc.BoolInt32(CURSOR_VALID != int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState)) } // C documentation // // /* // ** Return the currently defined page size // */ func _sqlite3BtreeGetPageSize(tls *libc.TLS, p uintptr) (r int32) { return int32((*TBtShared)(unsafe.Pointer((*TBtree)(unsafe.Pointer(p)).FpBt)).FpageSize) } // C documentation // // /* // ** Return the number of bytes of space at the end of every page that // ** are intentionally left unused. This is the "reserved" space that is // ** sometimes used by extensions. // ** // ** The value returned is the larger of the current reserve size and // ** the latest reserve size requested by SQLITE_FILECTRL_RESERVE_BYTES. // ** The amount of reserve can only grow - never shrink. // */ func _sqlite3BtreeGetRequestedReserve(tls *libc.TLS, p uintptr) (r int32) { var n1, n2, v1 int32 _, _, _ = n1, n2, v1 _sqlite3BtreeEnter(tls, p) n1 = int32((*TBtShared)(unsafe.Pointer((*TBtree)(unsafe.Pointer(p)).FpBt)).FnReserveWanted) n2 = _sqlite3BtreeGetReserveNoMutex(tls, p) _sqlite3BtreeLeave(tls, p) if n1 > n2 { v1 = n1 } else { v1 = n2 } return v1 } // C documentation // // /* // ** This function is similar to sqlite3BtreeGetReserve(), except that it // ** may only be called if it is guaranteed that the b-tree mutex is already // ** held. // ** // ** This is useful in one special case in the backup API code where it is // ** known that the shared b-tree mutex is held, but the mutex on the // ** database handle that owns *p is not. In this case if sqlite3BtreeEnter() // ** were to be called, it might collide with some other operation on the // ** database handle that owns *p, causing undefined behavior. // */ func _sqlite3BtreeGetReserveNoMutex(tls *libc.TLS, p uintptr) (r int32) { var n int32 _ = n n = int32((*TBtShared)(unsafe.Pointer((*TBtree)(unsafe.Pointer(p)).FpBt)).FpageSize - (*TBtShared)(unsafe.Pointer((*TBtree)(unsafe.Pointer(p)).FpBt)).FusableSize) return n } // C documentation // // /* Set *pRes to 1 (true) if the BTree pointed to by cursor pCur contains zero // ** rows of content. Set *pRes to 0 (false) if the table contains content. // ** Return SQLITE_OK on success or some error code (ex: SQLITE_NOMEM) if // ** something goes wrong. // */ func _sqlite3BtreeIsEmpty(tls *libc.TLS, pCur uintptr, pRes uintptr) (r int32) { var rc int32 _ = rc if int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) == CURSOR_VALID { **(**int32)(__ccgo_up(pRes)) = 0 return SQLITE_OK } rc = _moveToRoot(tls, pCur) if rc == int32(SQLITE_EMPTY) { **(**int32)(__ccgo_up(pRes)) = int32(1) rc = SQLITE_OK } else { **(**int32)(__ccgo_up(pRes)) = 0 } return rc } // C documentation // // /* // ** Return true if the given Btree is read-only. // */ func _sqlite3BtreeIsReadonly(tls *libc.TLS, p uintptr) (r int32) { return libc.BoolInt32(int32((*TBtShared)(unsafe.Pointer((*TBtree)(unsafe.Pointer(p)).FpBt)).FbtsFlags)&int32(BTS_READ_ONLY) != 0) } func _sqlite3BtreeLast(tls *libc.TLS, pCur uintptr, pRes uintptr) (r int32) { /* If the cursor already points to the last entry, this is a no-op. */ if CURSOR_VALID == int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) && int32((*TBtCursor)(unsafe.Pointer(pCur)).FcurFlags)&int32(BTCF_AtLast) != 0 { **(**int32)(__ccgo_up(pRes)) = 0 return SQLITE_OK } return _btreeLast(tls, pCur, pRes) } func _sqlite3BtreeLeaveAll(tls *libc.TLS, db uintptr) { if int32((*Tsqlite3)(unsafe.Pointer(db)).FnoSharedCache) == 0 { _btreeLeaveAll(tls, db) } } // C documentation // // /* // ** Obtain a lock on the table whose root page is iTab. The // ** lock is a write lock if isWritelock is true or a read lock // ** if it is false. // */ func _sqlite3BtreeLockTable(tls *libc.TLS, p uintptr, iTab int32, isWriteLock Tu8) (r int32) { var lockType Tu8 var rc int32 _, _ = lockType, rc rc = SQLITE_OK if (*TBtree)(unsafe.Pointer(p)).Fsharable != 0 { lockType = uint8(int32(READ_LOCK) + int32(isWriteLock)) _sqlite3BtreeEnter(tls, p) rc = _querySharedCacheTableLock(tls, p, uint32(iTab), lockType) if rc == SQLITE_OK { rc = _setSharedCacheTableLock(tls, p, uint32(iTab), lockType) } _sqlite3BtreeLeave(tls, p) } return rc } // C documentation // // /* // ** Return an upper bound on the size of any record for the table // ** that the cursor is pointing into. // ** // ** This is an optimization. Everything will still work if this // ** routine always returns 2147483647 (which is the largest record // ** that SQLite can handle) or more. But returning a smaller value might // ** prevent large memory allocations when trying to interpret a // ** corrupt database. // ** // ** The current implementation merely returns the size of the underlying // ** database file. // */ func _sqlite3BtreeMaxRecordSize(tls *libc.TLS, pCur uintptr) (r Tsqlite3_int64) { return int64((*TBtShared)(unsafe.Pointer((*TBtCursor)(unsafe.Pointer(pCur)).FpBt)).FpageSize) * int64((*TBtShared)(unsafe.Pointer((*TBtCursor)(unsafe.Pointer(pCur)).FpBt)).FnPage) } func _sqlite3BtreePayloadChecked(tls *libc.TLS, pCur uintptr, offset Tu32, amt Tu32, pBuf uintptr) (r int32) { if int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) == CURSOR_VALID { return _accessPayload(tls, pCur, offset, amt, pBuf, 0) } else { return _accessPayloadChecked(tls, pCur, offset, amt, pBuf) } return r } func _sqlite3BtreePrevious(tls *libc.TLS, pCur uintptr, flags int32) (r int32) { var v1 uintptr _ = v1 _ = flags /* Used in COMDB2 but not native SQLite */ v1 = pCur + 1 *(*Tu8)(unsafe.Pointer(v1)) = Tu8(int32(*(*Tu8)(unsafe.Pointer(v1))) & ^(libc.Int32FromInt32(BTCF_AtLast) | libc.Int32FromInt32(BTCF_ValidOvfl) | libc.Int32FromInt32(BTCF_ValidNKey))) (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnSize = uint16(0) if int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) != CURSOR_VALID || int32((*TBtCursor)(unsafe.Pointer(pCur)).Fix) == 0 || int32((*TMemPage)(unsafe.Pointer((*TBtCursor)(unsafe.Pointer(pCur)).FpPage)).Fleaf) == 0 { return _btreePrevious(tls, pCur) } (*TBtCursor)(unsafe.Pointer(pCur)).Fix = (*TBtCursor)(unsafe.Pointer(pCur)).Fix - 1 return SQLITE_OK } // C documentation // // /* // ** Argument pCsr must be a cursor opened for writing on an // ** INTKEY table currently pointing at a valid table entry. // ** This function modifies the data stored as part of that entry. // ** // ** Only the data content may only be modified, it is not possible to // ** change the length of the data stored. If this function is called with // ** parameters that attempt to write past the end of the existing data, // ** no modifications are made and SQLITE_CORRUPT is returned. // */ func _sqlite3BtreePutData(tls *libc.TLS, pCsr uintptr, offset Tu32, amt Tu32, z uintptr) (r int32) { var rc, v1 int32 _, _ = rc, v1 if int32((*TBtCursor)(unsafe.Pointer(pCsr)).FeState) >= int32(CURSOR_REQUIRESEEK) { v1 = _btreeRestoreCursorPosition(tls, pCsr) } else { v1 = SQLITE_OK } rc = v1 if rc != SQLITE_OK { return rc } if int32((*TBtCursor)(unsafe.Pointer(pCsr)).FeState) != CURSOR_VALID { return int32(SQLITE_ABORT) } /* Save the positions of all other cursors open on this table. This is ** required in case any of them are holding references to an xFetch ** version of the b-tree page modified by the accessPayload call below. ** ** Note that pCsr must be open on a INTKEY table and saveCursorPosition() ** and hence saveAllCursors() cannot fail on a BTREE_INTKEY table, hence ** saveAllCursors can only return SQLITE_OK. */ _saveAllCursors(tls, (*TBtCursor)(unsafe.Pointer(pCsr)).FpBt, (*TBtCursor)(unsafe.Pointer(pCsr)).FpgnoRoot, pCsr) /* Check some assumptions: ** (a) the cursor is open for writing, ** (b) there is a read/write transaction open, ** (c) the connection holds a write-lock on the table (if required), ** (d) there are no conflicting read-locks, and ** (e) the cursor points at a valid row of an intKey table. */ if int32((*TBtCursor)(unsafe.Pointer(pCsr)).FcurFlags)&int32(BTCF_WriteFlag) == 0 { return int32(SQLITE_READONLY) } return _accessPayload(tls, pCsr, offset, amt, z, int32(1)) } // C documentation // // /* // ** Rollback the transaction in progress. // ** // ** If tripCode is not SQLITE_OK then cursors will be invalidated (tripped). // ** Only write cursors are tripped if writeOnly is true but all cursors are // ** tripped if writeOnly is false. Any attempt to use // ** a tripped cursor will result in an error. // ** // ** This will release the write lock on the database file. If there // ** are no active cursors, it also releases the read lock. // */ func _sqlite3BtreeRollback(tls *libc.TLS, p uintptr, tripCode int32, writeOnly int32) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var pBt uintptr var rc, rc2, rc21, v1 int32 var _ /* pPage1 at bp+0 */ uintptr _, _, _, _, _ = pBt, rc, rc2, rc21, v1 pBt = (*TBtree)(unsafe.Pointer(p)).FpBt _sqlite3BtreeEnter(tls, p) if tripCode == SQLITE_OK { v1 = _saveAllCursors(tls, pBt, uint32(0), uintptr(0)) tripCode = v1 rc = v1 if rc != 0 { writeOnly = 0 } } else { rc = SQLITE_OK } if tripCode != 0 { rc2 = _sqlite3BtreeTripAllCursors(tls, p, tripCode, writeOnly) if rc2 != SQLITE_OK { rc = rc2 } } if int32((*TBtree)(unsafe.Pointer(p)).FinTrans) == int32(TRANS_WRITE) { rc21 = _sqlite3PagerRollback(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager) if rc21 != SQLITE_OK { rc = rc21 } /* The rollback may have destroyed the pPage1->aData value. So ** call btreeGetPage() on page 1 again to make ** sure pPage1->aData is set correctly. */ if _btreeGetPage(tls, pBt, uint32(1), bp, 0) == SQLITE_OK { _btreeSetNPage(tls, pBt, **(**uintptr)(__ccgo_up(bp))) _releasePageOne(tls, **(**uintptr)(__ccgo_up(bp))) } (*TBtShared)(unsafe.Pointer(pBt)).FinTransaction = uint8(TRANS_READ) _btreeClearHasContent(tls, pBt) } _btreeEndTransaction(tls, p) _sqlite3BtreeLeave(tls, p) return rc } // C documentation // // /* // ** The second argument to this function, op, is always SAVEPOINT_ROLLBACK // ** or SAVEPOINT_RELEASE. This function either releases or rolls back the // ** savepoint identified by parameter iSavepoint, depending on the value // ** of op. // ** // ** Normally, iSavepoint is greater than or equal to zero. However, if op is // ** SAVEPOINT_ROLLBACK, then iSavepoint may also be -1. In this case the // ** contents of the entire transaction are rolled back. This is different // ** from a normal transaction rollback, as no locks are released and the // ** transaction remains open. // */ func _sqlite3BtreeSavepoint(tls *libc.TLS, p uintptr, op int32, iSavepoint int32) (r int32) { var pBt uintptr var rc int32 _, _ = pBt, rc rc = SQLITE_OK if p != 0 && int32((*TBtree)(unsafe.Pointer(p)).FinTrans) == int32(TRANS_WRITE) { pBt = (*TBtree)(unsafe.Pointer(p)).FpBt _sqlite3BtreeEnter(tls, p) if op == int32(SAVEPOINT_ROLLBACK) { rc = _saveAllCursors(tls, pBt, uint32(0), uintptr(0)) } if rc == SQLITE_OK { rc = _sqlite3PagerSavepoint(tls, (*TBtShared)(unsafe.Pointer(pBt)).FpPager, op, iSavepoint) } if rc == SQLITE_OK { if iSavepoint < 0 && int32((*TBtShared)(unsafe.Pointer(pBt)).FbtsFlags)&int32(BTS_INITIALLY_EMPTY) != 0 { (*TBtShared)(unsafe.Pointer(pBt)).FnPage = uint32(0) } rc = _newDatabase(tls, pBt) _btreeSetNPage(tls, pBt, (*TBtShared)(unsafe.Pointer(pBt)).FpPage1) /* pBt->nPage might be zero if the database was corrupt when ** the transaction was started. Otherwise, it must be at least 1. */ } _sqlite3BtreeLeave(tls, p) } return rc } // C documentation // // /* // ** This function returns a pointer to a blob of memory associated with // ** a single shared-btree. The memory is used by client code for its own // ** purposes (for example, to store a high-level schema associated with // ** the shared-btree). The btree layer manages reference counting issues. // ** // ** The first time this is called on a shared-btree, nBytes bytes of memory // ** are allocated, zeroed, and returned to the caller. For each subsequent // ** call the nBytes parameter is ignored and a pointer to the same blob // ** of memory returned. // ** // ** If the nBytes parameter is 0 and the blob of memory has not yet been // ** allocated, a null pointer is returned. If the blob has already been // ** allocated, it is returned as normal. // ** // ** Just before the shared-btree is closed, the function passed as the // ** xFree argument when the memory allocation was made is invoked on the // ** blob of allocated memory. The xFree function should not call sqlite3_free() // ** on the memory, the btree layer does that. // */ func _sqlite3BtreeSchema(tls *libc.TLS, p uintptr, nBytes int32, __ccgo_fp_xFree uintptr) (r uintptr) { var pBt uintptr _ = pBt pBt = (*TBtree)(unsafe.Pointer(p)).FpBt _sqlite3BtreeEnter(tls, p) if !((*TBtShared)(unsafe.Pointer(pBt)).FpSchema != 0) && nBytes != 0 { (*TBtShared)(unsafe.Pointer(pBt)).FpSchema = _sqlite3DbMallocZero(tls, uintptr(0), uint64(nBytes)) (*TBtShared)(unsafe.Pointer(pBt)).FxFreeSchema = __ccgo_fp_xFree } _sqlite3BtreeLeave(tls, p) return (*TBtShared)(unsafe.Pointer(pBt)).FpSchema } // C documentation // // /* // ** Change the 'auto-vacuum' property of the database. If the 'autoVacuum' // ** parameter is non-zero, then auto-vacuum mode is enabled. If zero, it // ** is disabled. The default value for the auto-vacuum property is // ** determined by the SQLITE_DEFAULT_AUTOVACUUM macro. // */ func _sqlite3BtreeSetAutoVacuum(tls *libc.TLS, p uintptr, autoVacuum int32) (r int32) { var av Tu8 var pBt uintptr var rc, v1 int32 var v2 bool _, _, _, _, _ = av, pBt, rc, v1, v2 pBt = (*TBtree)(unsafe.Pointer(p)).FpBt rc = SQLITE_OK av = uint8(autoVacuum) _sqlite3BtreeEnter(tls, p) if v2 = int32((*TBtShared)(unsafe.Pointer(pBt)).FbtsFlags)&int32(BTS_PAGESIZE_FIXED) != 0; v2 { if av != 0 { v1 = int32(1) } else { v1 = 0 } } if v2 && v1 != int32((*TBtShared)(unsafe.Pointer(pBt)).FautoVacuum) { rc = int32(SQLITE_READONLY) } else { if av != 0 { v1 = int32(1) } else { v1 = 0 } (*TBtShared)(unsafe.Pointer(pBt)).FautoVacuum = uint8(v1) if int32(av) == int32(2) { v1 = int32(1) } else { v1 = 0 } (*TBtShared)(unsafe.Pointer(pBt)).FincrVacuum = uint8(v1) } _sqlite3BtreeLeave(tls, p) return rc } // C documentation // // /* // ** Return true if the Btree passed as the only argument is sharable. // */ func _sqlite3BtreeSharable(tls *libc.TLS, p uintptr) (r int32) { return int32((*TBtree)(unsafe.Pointer(p)).Fsharable) } // C documentation // // /* Move the cursor so that it points to an entry in a table (a.k.a INTKEY) // ** table near the key intKey. Return a success code. // ** // ** If an exact match is not found, then the cursor is always // ** left pointing at a leaf page which would hold the entry if it // ** were present. The cursor might point to an entry that comes // ** before or after the key. // ** // ** An integer is written into *pRes which is the result of // ** comparing the key with the entry to which the cursor is // ** pointing. The meaning of the integer written into // ** *pRes is as follows: // ** // ** *pRes<0 The cursor is left pointing at an entry that // ** is smaller than intKey or if the table is empty // ** and the cursor is therefore left point to nothing. // ** // ** *pRes==0 The cursor is left pointing at an entry that // ** exactly matches intKey. // ** // ** *pRes>0 The cursor is left pointing at an entry that // ** is larger than intKey. // */ func _sqlite3BtreeTableMoveto(tls *libc.TLS, pCur uintptr, intKey Ti64, biasRight int32, pRes uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var c, idx, lwr, rc, upr int32 var chldPg TPgno var pCell, pPage, v3 uintptr var _ /* nCellKey at bp+0 */ Ti64 _, _, _, _, _, _, _, _, _ = c, chldPg, idx, lwr, pCell, pPage, rc, upr, v3 /* If the cursor is already positioned at the point we are trying ** to move to, then just return without doing any work */ if int32((*TBtCursor)(unsafe.Pointer(pCur)).FeState) == CURSOR_VALID && int32((*TBtCursor)(unsafe.Pointer(pCur)).FcurFlags)&int32(BTCF_ValidNKey) != 0 { if (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnKey == intKey { **(**int32)(__ccgo_up(pRes)) = 0 return SQLITE_OK } if (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnKey < intKey { if int32((*TBtCursor)(unsafe.Pointer(pCur)).FcurFlags)&int32(BTCF_AtLast) != 0 { **(**int32)(__ccgo_up(pRes)) = -int32(1) return SQLITE_OK } /* If the requested key is one more than the previous key, then ** try to get there using sqlite3BtreeNext() rather than a full ** binary search. This is an optimization only. The correct answer ** is still obtained without this case, only a little more slowly. */ if (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnKey+int64(1) == intKey { **(**int32)(__ccgo_up(pRes)) = 0 rc = _sqlite3BtreeNext(tls, pCur, 0) if rc == SQLITE_OK { _getCellInfo(tls, pCur) if (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnKey == intKey { return SQLITE_OK } } else { if rc != int32(SQLITE_DONE) { return rc } } } } } rc = _moveToRoot(tls, pCur) if rc != 0 { if rc == int32(SQLITE_EMPTY) { **(**int32)(__ccgo_up(pRes)) = -int32(1) return SQLITE_OK } return rc } for { pPage = (*TBtCursor)(unsafe.Pointer(pCur)).FpPage /* Pointer to current cell in pPage */ /* pPage->nCell must be greater than zero. If this is the root-page ** the cursor would have been INVALID above and this for(;;) loop ** not run. If this is not the root-page, then the moveToChild() routine ** would have already detected db corruption. Similarly, pPage must ** be the right kind (index or table) of b-tree page. Otherwise ** a moveToChild() or moveToRoot() call would have detected corruption. */ lwr = 0 upr = int32((*TMemPage)(unsafe.Pointer(pPage)).FnCell) - int32(1) idx = upr >> (int32(1) - biasRight) /* idx = biasRight ? upr : (lwr+upr)/2; */ for { pCell = (*TMemPage)(unsafe.Pointer(pPage)).FaDataOfst + uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FmaskPage)&(int32(**(**Tu8)(__ccgo_up((*TMemPage)(unsafe.Pointer(pPage)).FaCellIdx + uintptr(int32(2)*idx))))<= (*TMemPage)(unsafe.Pointer(pPage)).FaDataEnd { return _sqlite3CorruptError(tls, int32(79121)) } } } _sqlite3GetVarint(tls, pCell, bp) if **(**Ti64)(__ccgo_up(bp)) < intKey { lwr = idx + int32(1) if lwr > upr { c = -int32(1) break } } else { if **(**Ti64)(__ccgo_up(bp)) > intKey { upr = idx - int32(1) if lwr > upr { c = +libc.Int32FromInt32(1) break } } else { (*TBtCursor)(unsafe.Pointer(pCur)).Fix = uint16(idx) if !((*TMemPage)(unsafe.Pointer(pPage)).Fleaf != 0) { lwr = idx goto moveto_table_next_layer } else { v3 = pCur + 1 *(*Tu8)(unsafe.Pointer(v3)) = Tu8(int32(*(*Tu8)(unsafe.Pointer(v3))) | libc.Int32FromInt32(BTCF_ValidNKey)) (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnKey = **(**Ti64)(__ccgo_up(bp)) (*TBtCursor)(unsafe.Pointer(pCur)).Finfo.FnSize = uint16(0) **(**int32)(__ccgo_up(pRes)) = 0 return SQLITE_OK } } } idx = (lwr + upr) >> int32(1) /* idx = (lwr+upr)/2; */ goto _2 _2: } if (*TMemPage)(unsafe.Pointer(pPage)).Fleaf != 0 { (*TBtCursor)(unsafe.Pointer(pCur)).Fix = uint16(idx) **(**int32)(__ccgo_up(pRes)) = c rc = SQLITE_OK goto moveto_table_finish } goto moveto_table_next_layer moveto_table_next_layer: ; if lwr >= int32((*TMemPage)(unsafe.Pointer(pPage)).FnCell) { chldPg = _sqlite3Get4byte(tls, (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FhdrOffset)+int32(8))) } else { chldPg = _sqlite3Get4byte(tls, (*TMemPage)(unsafe.Pointer(pPage)).FaData+uintptr(int32((*TMemPage)(unsafe.Pointer(pPage)).FmaskPage)&(int32(**(**Tu8)(__ccgo_up((*TMemPage)(unsafe.Pointer(pPage)).FaCellIdx + uintptr(int32(2)*lwr))))<aVTrans[] array. The following sqlite3VtabRollback() ** call will do so. We need to do this before the check for active ** SQL statements below, as the v-table implementation may be storing ** some prepared statements internally. */ _sqlite3VtabRollback(tls, db) /* Legacy behavior (sqlite3_close() behavior) is to return ** SQLITE_BUSY if the connection can not be closed immediately. */ if !(forceZombie != 0) && _connectionIsBusy(tls, db) != 0 { _sqlite3ErrorWithMsg(tls, db, int32(SQLITE_BUSY), __ccgo_ts+26521, 0) Xsqlite3_mutex_leave(tls, (*Tsqlite3)(unsafe.Pointer(db)).Fmutex) return int32(SQLITE_BUSY) } for (*Tsqlite3)(unsafe.Pointer(db)).FpDbData != 0 { p = (*Tsqlite3)(unsafe.Pointer(db)).FpDbData (*Tsqlite3)(unsafe.Pointer(db)).FpDbData = (*TDbClientData)(unsafe.Pointer(p)).FpNext if (*TDbClientData)(unsafe.Pointer(p)).FxDestructor != 0 { (*(*func(*libc.TLS, uintptr))(unsafe.Pointer(&struct{ uintptr }{(*TDbClientData)(unsafe.Pointer(p)).FxDestructor})))(tls, (*TDbClientData)(unsafe.Pointer(p)).FpData) } Xsqlite3_free(tls, p) } /* Convert the connection into a zombie and then close it. */ (*Tsqlite3)(unsafe.Pointer(db)).FeOpenState = uint8(SQLITE_STATE_ZOMBIE) _sqlite3LeaveMutexAndCloseZombie(tls, db) return SQLITE_OK } // C documentation // // /* // ** This is called to code the required FOR EACH ROW triggers for an operation // ** on table pTab. The operation to code triggers for (INSERT, UPDATE or DELETE) // ** is given by the op parameter. The tr_tm parameter determines whether the // ** BEFORE or AFTER triggers are coded. If the operation is an UPDATE, then // ** parameter pChanges is passed the list of columns being modified. // ** // ** If there are no triggers that fire at the specified time for the specified // ** operation on pTab, this function is a no-op. // ** // ** The reg argument is the address of the first in an array of registers // ** that contain the values substituted for the new.* and old.* references // ** in the trigger program. If N is the number of columns in table pTab // ** (a copy of pTab->nCol), then registers are populated as follows: // ** // ** Register Contains // ** ------------------------------------------------------ // ** reg+0 OLD.rowid // ** reg+1 OLD.* value of left-most column of pTab // ** ... ... // ** reg+N OLD.* value of right-most column of pTab // ** reg+N+1 NEW.rowid // ** reg+N+2 NEW.* value of left-most column of pTab // ** ... ... // ** reg+N+N+1 NEW.* value of right-most column of pTab // ** // ** For ON DELETE triggers, the registers containing the NEW.* values will // ** never be accessed by the trigger program, so they are not allocated or // ** populated by the caller (there is no data to populate them with anyway). // ** Similarly, for ON INSERT triggers the values stored in the OLD.* registers // ** are never accessed, and so are not allocated by the caller. So, for an // ** ON INSERT trigger, the value passed to this function as parameter reg // ** is not a readable register, although registers (reg+N) through // ** (reg+N+N+1) are. // ** // ** Parameter orconf is the default conflict resolution algorithm for the // ** trigger program to use (REPLACE, IGNORE etc.). Parameter ignoreJump // ** is the instruction that control should jump to if a trigger program // ** raises an IGNORE exception. // */ func _sqlite3CodeRowTrigger(tls *libc.TLS, pParse uintptr, pTrigger uintptr, op int32, pChanges uintptr, tr_tm int32, pTab uintptr, reg int32, orconf int32, ignoreJump int32) { var p uintptr _ = p /* Used to iterate through pTrigger list */ p = pTrigger for { if !(p != 0) { break } /* Sanity checking: The schema for the trigger and for the table are ** always defined. The trigger must be in the same schema as the table ** or else it must be a TEMP trigger. */ /* Determine whether we should code this trigger. One of two choices: ** 1. The trigger is an exact match to the current DML statement ** 2. This is a RETURNING trigger for INSERT but we are currently ** doing the UPDATE part of an UPSERT. */ if (int32((*TTrigger)(unsafe.Pointer(p)).Fop) == op || (*TTrigger)(unsafe.Pointer(p)).FbReturning != 0 && int32((*TTrigger)(unsafe.Pointer(p)).Fop) == int32(TK_INSERT) && op == int32(TK_UPDATE)) && int32((*TTrigger)(unsafe.Pointer(p)).Ftr_tm) == tr_tm && _checkColumnOverlap(tls, (*TTrigger)(unsafe.Pointer(p)).FpColumns, pChanges) != 0 { if !((*TTrigger)(unsafe.Pointer(p)).FbReturning != 0) { _sqlite3CodeRowTriggerDirect(tls, pParse, p, pTab, reg, orconf, ignoreJump) } else { if (*TParse)(unsafe.Pointer(pParse)).FpToplevel == uintptr(0) { _codeReturningTrigger(tls, pParse, p, pTab, reg) } } } goto _1 _1: ; p = (*TTrigger)(unsafe.Pointer(p)).FpNext } } // C documentation // // /* // ** Return the collating sequence name for a column // */ func _sqlite3ColumnColl(tls *libc.TLS, pCol uintptr) (r uintptr) { var z uintptr _ = z if int32((*TColumn)(unsafe.Pointer(pCol)).FcolFlags)&int32(COLFLAG_HASCOLL) == 0 { return uintptr(0) } z = (*TColumn)(unsafe.Pointer(pCol)).FzCnName for **(**int8)(__ccgo_up(z)) != 0 { z = z + 1 } if int32((*TColumn)(unsafe.Pointer(pCol)).FcolFlags)&int32(COLFLAG_HASTYPE) != 0 { for cond := true; cond; cond = **(**int8)(__ccgo_up(z)) != 0 { z = z + 1 } } return z + uintptr(1) } func _sqlite3CorruptError(tls *libc.TLS, lineno int32) (r int32) { return _sqlite3ReportError(tls, int32(SQLITE_CORRUPT), lineno, __ccgo_ts+27533) } // C documentation // // /* // ** Invoke this routine to register the "dbpage" virtual table module // */ func _sqlite3DbpageRegister(tls *libc.TLS, db uintptr) (r int32) { return Xsqlite3_create_module(tls, db, __ccgo_ts+36417, uintptr(unsafe.Pointer(&_dbpage_module)), uintptr(0)) } // C documentation // // /* // ** Invoke this routine to register the "dbstat" virtual table module // */ func _sqlite3DbstatRegister(tls *libc.TLS, db uintptr) (r int32) { return Xsqlite3_create_module(tls, db, __ccgo_ts+36232, uintptr(unsafe.Pointer(&_dbstat_module)), uintptr(0)) } // C documentation // // /* // ** If compiled with SQLITE_MUTEX_NOOP, then the no-op mutex implementation // ** is used regardless of the run-time threadsafety setting. // */ func _sqlite3DefaultMutex(tls *libc.TLS) (r uintptr) { return _sqlite3NoopMutex(tls) } // C documentation // // /* // ** Convert an SQL-style quoted string into a normal string by removing // ** the quote characters. The conversion is done in-place. If the // ** input does not begin with a quote character, then this routine // ** is a no-op. // ** // ** The input string must be zero-terminated. A new zero-terminator // ** is added to the dequoted string. // ** // ** The return value is -1 if no dequoting occurs or the length of the // ** dequoted string, exclusive of the zero terminator, if dequoting does // ** occur. // ** // ** 2002-02-14: This routine is extended to remove MS-Access style // ** brackets from around identifiers. For example: "[a-b-c]" becomes // ** "a-b-c". // */ func _sqlite3Dequote(tls *libc.TLS, z uintptr) { var i, j, v2 int32 var quote int8 _, _, _, _ = i, j, quote, v2 if z == uintptr(0) { return } quote = **(**int8)(__ccgo_up(z)) if !(int32(_sqlite3CtypeMap[uint8(quote)])&libc.Int32FromInt32(0x80) != 0) { return } if int32(quote) == int32('[') { quote = int8(']') } i = int32(1) j = libc.Int32FromInt32(0) for { if int32(**(**int8)(__ccgo_up(z + uintptr(i)))) == int32(quote) { if int32(**(**int8)(__ccgo_up(z + uintptr(i+int32(1))))) == int32(quote) { v2 = j j = j + 1 **(**int8)(__ccgo_up(z + uintptr(v2))) = quote i = i + 1 } else { break } } else { v2 = j j = j + 1 **(**int8)(__ccgo_up(z + uintptr(v2))) = **(**int8)(__ccgo_up(z + uintptr(i))) } goto _1 _1: ; i = i + 1 } **(**int8)(__ccgo_up(z + uintptr(j))) = 0 } func _sqlite3DequoteExpr(tls *libc.TLS, p uintptr) { var v1 int32 _ = v1 if int32(**(**int8)(__ccgo_up(*(*uintptr)(unsafe.Pointer(p + 8))))) == int32('"') { v1 = libc.Int32FromInt32(EP_Quoted) | libc.Int32FromInt32(EP_DblQuoted) } else { v1 = int32(EP_Quoted) } **(**Tu32)(__ccgo_up(p + 4)) |= uint32(v1) _sqlite3Dequote(tls, *(*uintptr)(unsafe.Pointer(p + 8))) } // C documentation // // /* // ** Generate VDBE code for a COMMIT or ROLLBACK statement. // ** Code for ROLLBACK is generated if eType==TK_ROLLBACK. Otherwise // ** code is generated for a COMMIT. // */ func _sqlite3EndTransaction(tls *libc.TLS, pParse uintptr, eType int32) { var isRollback int32 var v, v1 uintptr _, _, _ = isRollback, v, v1 isRollback = libc.BoolInt32(eType == int32(TK_ROLLBACK)) if isRollback != 0 { v1 = __ccgo_ts + 17331 } else { v1 = __ccgo_ts + 17340 } if _sqlite3AuthCheck(tls, pParse, int32(SQLITE_TRANSACTION), v1, uintptr(0), uintptr(0)) != 0 { return } v = _sqlite3GetVdbe(tls, pParse) if v != 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_AutoCommit), int32(1), isRollback) } } // C documentation // // /* // ** Write code that will raise an error if the table described by // ** zDb and zTab is not empty. // */ func _sqlite3ErrorIfNotEmpty(tls *libc.TLS, pParse uintptr, zDb uintptr, zTab uintptr, zErr uintptr) { bp := tls.Alloc(32) defer tls.Free(32) _sqlite3NestedParse(tls, pParse, __ccgo_ts+11468, libc.VaList(bp+8, zErr, zDb, zTab)) } // C documentation // // /* // ** Allocate a new expression node from a zero-terminated token that has // ** already been dequoted. // */ func _sqlite3Expr(tls *libc.TLS, db uintptr, op int32, zToken uintptr) (r uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* x at bp+0 */ TToken (**(**TToken)(__ccgo_up(bp))).Fz = zToken (**(**TToken)(__ccgo_up(bp))).Fn = uint32(_sqlite3Strlen30(tls, zToken)) return _sqlite3ExprAlloc(tls, db, op, bp, 0) } // C documentation // // /* // ** Set the collating sequence for expression pExpr to be the collating // ** sequence named by pToken. Return a pointer to a new Expr node that // ** implements the COLLATE operator. // ** // ** If a memory allocation error occurs, that fact is recorded in pParse->db // ** and the pExpr parameter is returned unchanged. // */ func _sqlite3ExprAddCollateToken(tls *libc.TLS, pParse uintptr, pExpr uintptr, pCollName uintptr, dequote int32) (r uintptr) { var pNew uintptr _ = pNew if (*TToken)(unsafe.Pointer(pCollName)).Fn > uint32(0) { pNew = _sqlite3ExprAlloc(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, int32(TK_COLLATE), pCollName, dequote) if pNew != 0 { (*TExpr)(unsafe.Pointer(pNew)).FpLeft = pExpr **(**Tu32)(__ccgo_up(pNew + 4)) |= uint32(libc.Int32FromInt32(EP_Collate) | libc.Int32FromInt32(EP_Skip)) pExpr = pNew } } return pExpr } // C documentation // // /* // ** Join two expressions using an AND operator. If either expression is // ** NULL, then just return the other expression. // ** // ** If one side or the other of the AND is known to be false, and neither side // ** is part of an ON clause, then instead of returning an AND expression, // ** just return a constant expression with a value of false. // */ func _sqlite3ExprAnd(tls *libc.TLS, pParse uintptr, pLeft uintptr, pRight uintptr) (r uintptr) { var db uintptr var f Tu32 _, _ = db, f db = (*TParse)(unsafe.Pointer(pParse)).Fdb if pLeft == uintptr(0) { return pRight } else { if pRight == uintptr(0) { return pLeft } else { f = (*TExpr)(unsafe.Pointer(pLeft)).Fflags | (*TExpr)(unsafe.Pointer(pRight)).Fflags if f&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_InnerON)|libc.Int32FromInt32(EP_IsFalse)|libc.Int32FromInt32(EP_HasFunc)) == uint32(EP_IsFalse) && !(int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) >= libc.Int32FromInt32(PARSE_MODE_RENAME)) { _sqlite3ExprDeferredDelete(tls, pParse, pLeft) _sqlite3ExprDeferredDelete(tls, pParse, pRight) return _sqlite3ExprInt32(tls, db, 0) } else { return _sqlite3PExpr(tls, pParse, int32(TK_AND), pLeft, pRight) } } } return r } // C documentation // // /* // ** Attach subtrees pLeft and pRight to the Expr node pRoot. // ** // ** If pRoot==NULL that means that a memory allocation error has occurred. // ** In that case, delete the subtrees pLeft and pRight. // */ func _sqlite3ExprAttachSubtrees(tls *libc.TLS, db uintptr, pRoot uintptr, pLeft uintptr, pRight uintptr) { if pRoot == uintptr(0) { _sqlite3ExprDelete(tls, db, pLeft) _sqlite3ExprDelete(tls, db, pRight) } else { if pRight != 0 { (*TExpr)(unsafe.Pointer(pRoot)).FpRight = pRight **(**Tu32)(__ccgo_up(pRoot + 4)) |= uint32(libc.Int32FromInt32(EP_Collate)|libc.Int32FromInt32(EP_Subquery)|libc.Int32FromInt32(EP_HasFunc)) & (*TExpr)(unsafe.Pointer(pRight)).Fflags (*TExpr)(unsafe.Pointer(pRoot)).FnHeight = (*TExpr)(unsafe.Pointer(pRight)).FnHeight + int32(1) } else { (*TExpr)(unsafe.Pointer(pRoot)).FnHeight = int32(1) } if pLeft != 0 { (*TExpr)(unsafe.Pointer(pRoot)).FpLeft = pLeft **(**Tu32)(__ccgo_up(pRoot + 4)) |= uint32(libc.Int32FromInt32(EP_Collate)|libc.Int32FromInt32(EP_Subquery)|libc.Int32FromInt32(EP_HasFunc)) & (*TExpr)(unsafe.Pointer(pLeft)).Fflags if (*TExpr)(unsafe.Pointer(pLeft)).FnHeight >= (*TExpr)(unsafe.Pointer(pRoot)).FnHeight { (*TExpr)(unsafe.Pointer(pRoot)).FnHeight = (*TExpr)(unsafe.Pointer(pLeft)).FnHeight + int32(1) } } } } // C documentation // // /* // ** Generate code that will evaluate expression pExpr and store the // ** results in register target. The results are guaranteed to appear // ** in register target. // */ func _sqlite3ExprCode(tls *libc.TLS, pParse uintptr, pExpr uintptr, target int32) { var inReg int32 var op Tu8 var pX uintptr _, _, _ = inReg, op, pX if (*TParse)(unsafe.Pointer(pParse)).FpVdbe == uintptr(0) { return } inReg = _sqlite3ExprCodeTarget(tls, pParse, pExpr, target) if inReg != target { pX = _sqlite3ExprSkipCollateAndLikely(tls, pExpr) if pX != 0 && ((*TExpr)(unsafe.Pointer(pX)).Fflags&uint32(libc.Int32FromInt32(EP_Subquery)) != uint32(0) || int32((*TExpr)(unsafe.Pointer(pX)).Fop) == int32(TK_REGISTER)) { op = uint8(OP_Copy) } else { op = uint8(OP_SCopy) } _sqlite3VdbeAddOp2(tls, (*TParse)(unsafe.Pointer(pParse)).FpVdbe, int32(op), inReg, target) } } // C documentation // // /* // ** Generate code that will extract the iColumn-th column from // ** table pTab and store the column value in register iReg. // ** // ** There must be an open cursor to pTab in iTable when this routine // ** is called. If iColumn<0 then code is generated that extracts the rowid. // */ func _sqlite3ExprCodeGetColumn(tls *libc.TLS, pParse uintptr, pTab uintptr, iColumn int32, iTable int32, iReg int32, p5 Tu8) (r int32) { var pOp uintptr _ = pOp _sqlite3ExprCodeGetColumnOfTable(tls, (*TParse)(unsafe.Pointer(pParse)).FpVdbe, pTab, iTable, iColumn, iReg) if p5 != 0 { pOp = _sqlite3VdbeGetLastOp(tls, (*TParse)(unsafe.Pointer(pParse)).FpVdbe) if int32((*TVdbeOp)(unsafe.Pointer(pOp)).Fopcode) == int32(OP_Column) { (*TVdbeOp)(unsafe.Pointer(pOp)).Fp5 = uint16(p5) } if int32((*TVdbeOp)(unsafe.Pointer(pOp)).Fopcode) == int32(OP_VColumn) { (*TVdbeOp)(unsafe.Pointer(pOp)).Fp5 = uint16(int32(p5) & libc.Int32FromInt32(OPFLAG_NOCHNG)) } } return iReg } // C documentation // // /* Expression p is a comparison operator. Return a collation sequence // ** appropriate for the comparison operator. // ** // ** This is normally just a wrapper around sqlite3BinaryCompareCollSeq(). // ** However, if the OP_Commuted flag is set, then the order of the operands // ** is reversed in the sqlite3BinaryCompareCollSeq() call so that the // ** correct collating sequence is found. // */ func _sqlite3ExprCompareCollSeq(tls *libc.TLS, pParse uintptr, p uintptr) (r uintptr) { if (*TExpr)(unsafe.Pointer(p)).Fflags&uint32(libc.Int32FromInt32(EP_Commuted)) != uint32(0) { return _sqlite3BinaryCompareCollSeq(tls, pParse, (*TExpr)(unsafe.Pointer(p)).FpRight, (*TExpr)(unsafe.Pointer(p)).FpLeft) } else { return _sqlite3BinaryCompareCollSeq(tls, pParse, (*TExpr)(unsafe.Pointer(p)).FpLeft, (*TExpr)(unsafe.Pointer(p)).FpRight) } return r } // C documentation // // /* // ** Check to see if a function is usable according to current access // ** rules: // ** // ** SQLITE_FUNC_DIRECT - Only usable from top-level SQL // ** // ** SQLITE_FUNC_UNSAFE - Usable if TRUSTED_SCHEMA or from // ** top-level SQL // ** // ** If the function is not usable, create an error. // */ func _sqlite3ExprFunctionUsable(tls *libc.TLS, pParse uintptr, pExpr uintptr, pDef uintptr) { bp := tls.Alloc(16) defer tls.Free(16) if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_FromDDL)) != uint32(0) || int32((*TParse)(unsafe.Pointer(pParse)).FprepFlags)&int32(SQLITE_PREPARE_FROM_DDL) != 0 { if (*TFuncDef)(unsafe.Pointer(pDef)).FfuncFlags&uint32(SQLITE_FUNC_DIRECT) != uint32(0) || (*Tsqlite3)(unsafe.Pointer((*TParse)(unsafe.Pointer(pParse)).Fdb)).Fflags&uint64(SQLITE_TrustedSchema) == uint64(0) { /* Functions prohibited in triggers and views if: ** (1) tagged with SQLITE_DIRECTONLY ** (2) not tagged with SQLITE_INNOCUOUS (which means it ** is tagged with SQLITE_FUNC_UNSAFE) and ** SQLITE_DBCONFIG_TRUSTED_SCHEMA is off (meaning ** that the schema is possibly tainted). */ _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+9256, libc.VaList(bp+8, pExpr)) } } } // C documentation // // /* // ** If the input expression is an ID with the name "true" or "false" // ** then convert it into an TK_TRUEFALSE term. Return non-zero if // ** the conversion happened, and zero if the expression is unaltered. // */ func _sqlite3ExprIdToTrueFalse(tls *libc.TLS, pExpr uintptr) (r int32) { var v, v1 Tu32 var v2 bool _, _, _ = v, v1, v2 if v2 = !((*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_Quoted)|libc.Int32FromInt32(EP_IntValue)) != libc.Uint32FromInt32(0)); v2 { v1 = _sqlite3IsTrueOrFalse(tls, *(*uintptr)(unsafe.Pointer(pExpr + 8))) v = v1 } if v2 && v1 != uint32(0) { (*TExpr)(unsafe.Pointer(pExpr)).Fop = uint8(TK_TRUEFALSE) **(**Tu32)(__ccgo_up(pExpr + 4)) |= v return int32(1) } return 0 } // C documentation // // /* // ** Generate code for a boolean expression such that a jump is made // ** to the label "dest" if the expression is false but execution // ** continues straight thru if the expression is true. // ** // ** If the expression evaluates to NULL (neither true nor false) then // ** jump if jumpIfNull is SQLITE_JUMPIFNULL or fall through if jumpIfNull // ** is 0. // */ func _sqlite3ExprIfFalse(tls *libc.TLS, pParse uintptr, pExpr uintptr, dest int32, jumpIfNull int32) { bp := tls.Alloc(16) defer tls.Free(16) var addrIsNull, d2, destIfNull, isNot, isTrue, op, v19 int32 var pAlt, pFirst, pSecond, v uintptr var _ /* r1 at bp+8 */ int32 var _ /* r2 at bp+12 */ int32 var _ /* regFree1 at bp+0 */ int32 var _ /* regFree2 at bp+4 */ int32 _, _, _, _, _, _, _, _, _, _, _ = addrIsNull, d2, destIfNull, isNot, isTrue, op, pAlt, pFirst, pSecond, v, v19 v = (*TParse)(unsafe.Pointer(pParse)).FpVdbe op = 0 **(**int32)(__ccgo_up(bp)) = 0 **(**int32)(__ccgo_up(bp + 4)) = 0 if v == uintptr(0) { return } /* Existence of VDBE checked by caller */ if pExpr == uintptr(0) { return } /* The value of pExpr->op and op are related as follows: ** ** pExpr->op op ** --------- ---------- ** TK_ISNULL OP_NotNull ** TK_NOTNULL OP_IsNull ** TK_NE OP_Eq ** TK_EQ OP_Ne ** TK_GT OP_Le ** TK_LE OP_Gt ** TK_GE OP_Lt ** TK_LT OP_Ge ** ** For other values of pExpr->op, op is undefined and unused. ** The value of TK_ and OP_ constants are arranged such that we ** can compute the mapping above using the following expression. ** Assert()s verify that the computation is correct. */ op = int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) + libc.Int32FromInt32(TK_ISNULL)&libc.Int32FromInt32(1) ^ int32(1) - libc.Int32FromInt32(TK_ISNULL)&libc.Int32FromInt32(1) /* Verify correct alignment of TK_ and OP_ constants */ switch int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) { case int32(TK_OR): goto _1 case int32(TK_AND): goto _2 case int32(TK_NOT): goto _3 case int32(TK_TRUTH): goto _4 case int32(TK_ISNOT): goto _5 case int32(TK_IS): goto _6 case int32(TK_EQ): goto _7 case int32(TK_NE): goto _8 case int32(TK_GE): goto _9 case int32(TK_GT): goto _10 case int32(TK_LE): goto _11 case int32(TK_LT): goto _12 case int32(TK_NOTNULL): goto _13 case int32(TK_ISNULL): goto _14 case int32(TK_BETWEEN): goto _15 case int32(TK_IN): goto _16 default: goto _17 } goto _18 _2: ; _1: ; pAlt = _sqlite3ExprSimplifiedAndOr(tls, pExpr) if pAlt != pExpr { _sqlite3ExprIfFalse(tls, pParse, pAlt, dest, jumpIfNull) } else { if _exprEvalRhsFirst(tls, pExpr) != 0 { pFirst = (*TExpr)(unsafe.Pointer(pExpr)).FpRight pSecond = (*TExpr)(unsafe.Pointer(pExpr)).FpLeft } else { pFirst = (*TExpr)(unsafe.Pointer(pExpr)).FpLeft pSecond = (*TExpr)(unsafe.Pointer(pExpr)).FpRight } if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_AND) { _sqlite3ExprIfFalse(tls, pParse, pFirst, dest, jumpIfNull) _sqlite3ExprIfFalse(tls, pParse, pSecond, dest, jumpIfNull) } else { d2 = _sqlite3VdbeMakeLabel(tls, pParse) _sqlite3ExprIfTrue(tls, pParse, pFirst, d2, jumpIfNull^int32(SQLITE_JUMPIFNULL)) _sqlite3ExprIfFalse(tls, pParse, pSecond, dest, jumpIfNull) _sqlite3VdbeResolveLabel(tls, v, d2) } } goto _18 _3: ; _sqlite3ExprIfTrue(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, dest, jumpIfNull) goto _18 _4: ; /* IS TRUE or IS NOT TRUE */ isNot = libc.BoolInt32(int32((*TExpr)(unsafe.Pointer(pExpr)).Fop2) == int32(TK_ISNOT)) isTrue = _sqlite3ExprTruthValue(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpRight) if isTrue^isNot != 0 { /* IS TRUE and IS NOT FALSE */ if isNot != 0 { v19 = 0 } else { v19 = int32(SQLITE_JUMPIFNULL) } _sqlite3ExprIfFalse(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, dest, v19) } else { /* IS FALSE and IS NOT TRUE */ if isNot != 0 { v19 = 0 } else { v19 = int32(SQLITE_JUMPIFNULL) } _sqlite3ExprIfTrue(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, dest, v19) } goto _18 _6: ; _5: ; if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_IS) { v19 = int32(TK_NE) } else { v19 = int32(TK_EQ) } op = v19 jumpIfNull = int32(SQLITE_NULLEQ) _12: ; _11: ; _10: ; _9: ; _8: ; _7: ; if _sqlite3ExprIsVector(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft) != 0 { goto default_expr } if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_Subquery)) != uint32(0) && jumpIfNull != int32(SQLITE_NULLEQ) { addrIsNull = _exprComputeOperands(tls, pParse, pExpr, bp+8, bp+12, bp, bp+4) } else { **(**int32)(__ccgo_up(bp + 8)) = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, bp) **(**int32)(__ccgo_up(bp + 12)) = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, bp+4) addrIsNull = 0 } _codeCompare(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, op, **(**int32)(__ccgo_up(bp + 8)), **(**int32)(__ccgo_up(bp + 12)), dest, jumpIfNull, libc.BoolInt32((*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_Commuted)) != uint32(0))) if addrIsNull != 0 { if jumpIfNull != 0 { _sqlite3VdbeChangeP2(tls, v, addrIsNull, dest) } else { _sqlite3VdbeJumpHere(tls, v, addrIsNull) } } goto _18 _14: ; _13: ; **(**int32)(__ccgo_up(bp + 8)) = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, bp) if **(**int32)(__ccgo_up(bp)) != 0 { _sqlite3VdbeTypeofColumn(tls, v, **(**int32)(__ccgo_up(bp + 8))) } _sqlite3VdbeAddOp2(tls, v, op, **(**int32)(__ccgo_up(bp + 8)), dest) goto _18 _15: ; _exprCodeBetween(tls, pParse, pExpr, dest, __ccgo_fp(_sqlite3ExprIfFalse), jumpIfNull) goto _18 _16: ; if jumpIfNull != 0 { _sqlite3ExprCodeIN(tls, pParse, pExpr, dest, dest) } else { destIfNull = _sqlite3VdbeMakeLabel(tls, pParse) _sqlite3ExprCodeIN(tls, pParse, pExpr, dest, destIfNull) _sqlite3VdbeResolveLabel(tls, v, destIfNull) } goto _18 _17: ; goto default_expr default_expr: ; if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_IsFalse)) == uint32(EP_IsFalse) { _sqlite3VdbeGoto(tls, v, dest) } else { if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_IsTrue)) == uint32(EP_IsTrue) { /* no-op */ } else { **(**int32)(__ccgo_up(bp + 8)) = _sqlite3ExprCodeTemp(tls, pParse, pExpr, bp) _sqlite3VdbeAddOp3(tls, v, int32(OP_IfNot), **(**int32)(__ccgo_up(bp + 8)), dest, libc.BoolInt32(jumpIfNull != 0)) } } goto _18 _18: ; _sqlite3ReleaseTempReg(tls, pParse, **(**int32)(__ccgo_up(bp))) _sqlite3ReleaseTempReg(tls, pParse, **(**int32)(__ccgo_up(bp + 4))) } // C documentation // // /* // ** Like sqlite3ExprIfFalse() except that a copy is made of pExpr before // ** code generation, and that copy is deleted after code generation. This // ** ensures that the original pExpr is unchanged. // */ func _sqlite3ExprIfFalseDup(tls *libc.TLS, pParse uintptr, pExpr uintptr, dest int32, jumpIfNull int32) { var db, pCopy uintptr _, _ = db, pCopy db = (*TParse)(unsafe.Pointer(pParse)).Fdb pCopy = _sqlite3ExprDup(tls, db, pExpr, 0) if int32((*Tsqlite3)(unsafe.Pointer(db)).FmallocFailed) == 0 { _sqlite3ExprIfFalse(tls, pParse, pCopy, dest, jumpIfNull) } _sqlite3ExprDelete(tls, db, pCopy) } // C documentation // // /* // ** Generate code for a boolean expression such that a jump is made // ** to the label "dest" if the expression is true but execution // ** continues straight thru if the expression is false. // ** // ** If the expression evaluates to NULL (neither true nor false), then // ** take the jump if the jumpIfNull flag is SQLITE_JUMPIFNULL. // ** // ** This code depends on the fact that certain token values (ex: TK_EQ) // ** are the same as opcode values (ex: OP_Eq) that implement the corresponding // ** operation. Special comments in vdbe.c and the mkopcodeh.awk script in // ** the make process cause these values to align. Assert()s in the code // ** below verify that the numbers are aligned correctly. // */ func _sqlite3ExprIfTrue(tls *libc.TLS, pParse uintptr, pExpr uintptr, dest int32, jumpIfNull int32) { bp := tls.Alloc(16) defer tls.Free(16) var addrIsNull, d2, destIfFalse, destIfNull, isNot, isTrue, op, v19 int32 var pAlt, pFirst, pSecond, v uintptr var _ /* r1 at bp+8 */ int32 var _ /* r2 at bp+12 */ int32 var _ /* regFree1 at bp+0 */ int32 var _ /* regFree2 at bp+4 */ int32 _, _, _, _, _, _, _, _, _, _, _, _ = addrIsNull, d2, destIfFalse, destIfNull, isNot, isTrue, op, pAlt, pFirst, pSecond, v, v19 v = (*TParse)(unsafe.Pointer(pParse)).FpVdbe op = 0 **(**int32)(__ccgo_up(bp)) = 0 **(**int32)(__ccgo_up(bp + 4)) = 0 if v == uintptr(0) { return } /* Existence of VDBE checked by caller */ if pExpr == uintptr(0) { return } /* No way this can happen */ op = int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) switch op { case int32(TK_OR): goto _1 case int32(TK_AND): goto _2 case int32(TK_NOT): goto _3 case int32(TK_TRUTH): goto _4 case int32(TK_ISNOT): goto _5 case int32(TK_IS): goto _6 case int32(TK_EQ): goto _7 case int32(TK_NE): goto _8 case int32(TK_GE): goto _9 case int32(TK_GT): goto _10 case int32(TK_LE): goto _11 case int32(TK_LT): goto _12 case int32(TK_NOTNULL): goto _13 case int32(TK_ISNULL): goto _14 case int32(TK_BETWEEN): goto _15 case int32(TK_IN): goto _16 default: goto _17 } goto _18 _2: ; _1: ; pAlt = _sqlite3ExprSimplifiedAndOr(tls, pExpr) if pAlt != pExpr { _sqlite3ExprIfTrue(tls, pParse, pAlt, dest, jumpIfNull) } else { if _exprEvalRhsFirst(tls, pExpr) != 0 { pFirst = (*TExpr)(unsafe.Pointer(pExpr)).FpRight pSecond = (*TExpr)(unsafe.Pointer(pExpr)).FpLeft } else { pFirst = (*TExpr)(unsafe.Pointer(pExpr)).FpLeft pSecond = (*TExpr)(unsafe.Pointer(pExpr)).FpRight } if op == int32(TK_AND) { d2 = _sqlite3VdbeMakeLabel(tls, pParse) _sqlite3ExprIfFalse(tls, pParse, pFirst, d2, jumpIfNull^int32(SQLITE_JUMPIFNULL)) _sqlite3ExprIfTrue(tls, pParse, pSecond, dest, jumpIfNull) _sqlite3VdbeResolveLabel(tls, v, d2) } else { _sqlite3ExprIfTrue(tls, pParse, pFirst, dest, jumpIfNull) _sqlite3ExprIfTrue(tls, pParse, pSecond, dest, jumpIfNull) } } goto _18 _3: ; _sqlite3ExprIfFalse(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, dest, jumpIfNull) goto _18 _4: ; /* IS TRUE or IS NOT TRUE */ isNot = libc.BoolInt32(int32((*TExpr)(unsafe.Pointer(pExpr)).Fop2) == int32(TK_ISNOT)) isTrue = _sqlite3ExprTruthValue(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpRight) if isTrue^isNot != 0 { if isNot != 0 { v19 = int32(SQLITE_JUMPIFNULL) } else { v19 = 0 } _sqlite3ExprIfTrue(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, dest, v19) } else { if isNot != 0 { v19 = int32(SQLITE_JUMPIFNULL) } else { v19 = 0 } _sqlite3ExprIfFalse(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, dest, v19) } goto _18 _6: ; _5: ; if op == int32(TK_IS) { v19 = int32(TK_EQ) } else { v19 = int32(TK_NE) } op = v19 jumpIfNull = int32(SQLITE_NULLEQ) _12: ; _11: ; _10: ; _9: ; _8: ; _7: ; if _sqlite3ExprIsVector(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft) != 0 { goto default_expr } if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_Subquery)) != uint32(0) && jumpIfNull != int32(SQLITE_NULLEQ) { addrIsNull = _exprComputeOperands(tls, pParse, pExpr, bp+8, bp+12, bp, bp+4) } else { **(**int32)(__ccgo_up(bp + 8)) = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, bp) **(**int32)(__ccgo_up(bp + 12)) = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, bp+4) addrIsNull = 0 } _codeCompare(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, (*TExpr)(unsafe.Pointer(pExpr)).FpRight, op, **(**int32)(__ccgo_up(bp + 8)), **(**int32)(__ccgo_up(bp + 12)), dest, jumpIfNull, libc.BoolInt32((*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_Commuted)) != uint32(0))) if addrIsNull != 0 { if jumpIfNull != 0 { _sqlite3VdbeChangeP2(tls, v, addrIsNull, dest) } else { _sqlite3VdbeJumpHere(tls, v, addrIsNull) } } goto _18 _14: ; _13: ; **(**int32)(__ccgo_up(bp + 8)) = _sqlite3ExprCodeTemp(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, bp) if **(**int32)(__ccgo_up(bp)) != 0 { _sqlite3VdbeTypeofColumn(tls, v, **(**int32)(__ccgo_up(bp + 8))) } _sqlite3VdbeAddOp2(tls, v, op, **(**int32)(__ccgo_up(bp + 8)), dest) goto _18 _15: ; _exprCodeBetween(tls, pParse, pExpr, dest, __ccgo_fp(_sqlite3ExprIfTrue), jumpIfNull) goto _18 _16: ; destIfFalse = _sqlite3VdbeMakeLabel(tls, pParse) if jumpIfNull != 0 { v19 = dest } else { v19 = destIfFalse } destIfNull = v19 _sqlite3ExprCodeIN(tls, pParse, pExpr, destIfFalse, destIfNull) _sqlite3VdbeGoto(tls, v, dest) _sqlite3VdbeResolveLabel(tls, v, destIfFalse) goto _18 _17: ; goto default_expr default_expr: ; if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_IsTrue)) == uint32(EP_IsTrue) { _sqlite3VdbeGoto(tls, v, dest) } else { if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_IsFalse)) == uint32(EP_IsFalse) { /* No-op */ } else { **(**int32)(__ccgo_up(bp + 8)) = _sqlite3ExprCodeTemp(tls, pParse, pExpr, bp) _sqlite3VdbeAddOp3(tls, v, int32(OP_If), **(**int32)(__ccgo_up(bp + 8)), dest, libc.BoolInt32(jumpIfNull != 0)) } } goto _18 _18: ; _sqlite3ReleaseTempReg(tls, pParse, **(**int32)(__ccgo_up(bp))) _sqlite3ReleaseTempReg(tls, pParse, **(**int32)(__ccgo_up(bp + 4))) } // C documentation // // /* // ** Walk an expression tree for the DEFAULT field of a column definition // ** in a CREATE TABLE statement. Return non-zero if the expression is // ** acceptable for use as a DEFAULT. That is to say, return non-zero if // ** the expression is constant or a function call with constant arguments. // ** Return and 0 if there are any variables. // ** // ** isInit is true when parsing from sqlite_schema. isInit is false when // ** processing a new CREATE TABLE statement. When isInit is true, parameters // ** (such as ? or $abc) in the expression are converted into NULL. When // ** isInit is false, parameters raise an error. Parameters should not be // ** allowed in a CREATE TABLE statement, but some legacy versions of SQLite // ** allowed it, so we need to support it when reading sqlite_schema for // ** backwards compatibility. // ** // ** If isInit is true, set EP_FromDDL on every TK_FUNCTION node. // ** // ** For the purposes of this function, a double-quoted string (ex: "abc") // ** is considered a variable but a single-quoted string (ex: 'abc') is // ** a constant. // */ func _sqlite3ExprIsConstantOrFunction(tls *libc.TLS, p uintptr, isInit Tu8) (r int32) { return _exprIsConst(tls, uintptr(0), p, int32(4)+int32(isInit)) } // C documentation // // /* // ** Return true if the boolean value of the expression is always either // ** FALSE or NULL. // */ func _sqlite3ExprIsNotTrue(tls *libc.TLS, pExpr uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* v at bp+0 */ int32 if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_NULL) { return int32(1) } if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_TRUEFALSE) && _sqlite3ExprTruthValue(tls, pExpr) == 0 { return int32(1) } **(**int32)(__ccgo_up(bp)) = int32(1) if _sqlite3ExprIsInteger(tls, pExpr, bp, uintptr(0)) != 0 && **(**int32)(__ccgo_up(bp)) == 0 { return int32(1) } return 0 } // C documentation // // /* // ** Return TRUE if the given expression is a constant which would be // ** unchanged by OP_Affinity with the affinity given in the second // ** argument. // ** // ** This routine is used to determine if the OP_Affinity operation // ** can be omitted. When in doubt return FALSE. A false negative // ** is harmless. A false positive, however, can result in the wrong // ** answer. // */ func _sqlite3ExprNeedsNoAffinityChange(tls *libc.TLS, p uintptr, aff int8) (r int32) { var op Tu8 var unaryMinus int32 _, _ = op, unaryMinus unaryMinus = 0 if int32(aff) == int32(SQLITE_AFF_BLOB) { return int32(1) } for int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_UPLUS) || int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_UMINUS) { if int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_UMINUS) { unaryMinus = int32(1) } p = (*TExpr)(unsafe.Pointer(p)).FpLeft } op = (*TExpr)(unsafe.Pointer(p)).Fop if int32(op) == int32(TK_REGISTER) { op = (*TExpr)(unsafe.Pointer(p)).Fop2 } switch int32(op) { case int32(TK_INTEGER): return libc.BoolInt32(int32(aff) >= int32(SQLITE_AFF_NUMERIC)) case int32(TK_FLOAT): return libc.BoolInt32(int32(aff) >= int32(SQLITE_AFF_NUMERIC)) case int32(TK_STRING): return libc.BoolInt32(!(unaryMinus != 0) && int32(aff) == int32(SQLITE_AFF_TEXT)) case int32(TK_BLOB): return libc.BoolInt32(!(unaryMinus != 0)) case int32(TK_COLUMN): /* p cannot be part of a CHECK constraint */ return libc.BoolInt32(int32(aff) >= int32(SQLITE_AFF_NUMERIC) && int32((*TExpr)(unsafe.Pointer(p)).FiColumn) < 0) default: return 0 } return r } // C documentation // // /* // ** Report an error when attempting to use an ORDER BY clause within // ** the arguments of a non-aggregate function. // */ func _sqlite3ExprOrderByAggregateError(tls *libc.TLS, pParse uintptr, p uintptr) { bp := tls.Alloc(16) defer tls.Free(16) _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+9206, libc.VaList(bp+8, p)) } // C documentation // // /* // ** If pExpr is an AND or OR expression, try to simplify it by eliminating // ** terms that are always true or false. Return the simplified expression. // ** Or return the original expression if no simplification is possible. // ** // ** Examples: // ** // ** (x<10) AND true => (x<10) // ** (x<10) AND false => false // ** (x<10) AND (y=22 OR false) => (x<10) AND (y=22) // ** (x<10) AND (y=22 OR true) => (x<10) // ** (y=22) OR true => true // */ func _sqlite3ExprSimplifiedAndOr(tls *libc.TLS, pExpr uintptr) (r uintptr) { var pLeft, pRight, v1 uintptr _, _, _ = pLeft, pRight, v1 if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_AND) || int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_OR) { pRight = _sqlite3ExprSimplifiedAndOr(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpRight) pLeft = _sqlite3ExprSimplifiedAndOr(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft) if (*TExpr)(unsafe.Pointer(pLeft)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_IsTrue)) == uint32(EP_IsTrue) || (*TExpr)(unsafe.Pointer(pRight)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_IsFalse)) == uint32(EP_IsFalse) { if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_AND) { v1 = pRight } else { v1 = pLeft } pExpr = v1 } else { if (*TExpr)(unsafe.Pointer(pRight)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_IsTrue)) == uint32(EP_IsTrue) || (*TExpr)(unsafe.Pointer(pLeft)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_IsFalse)) == uint32(EP_IsFalse) { if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_AND) { v1 = pLeft } else { v1 = pRight } pExpr = v1 } } } return pExpr } // C documentation // // /* // ** Skip over any TK_COLLATE operators. // */ func _sqlite3ExprSkipCollate(tls *libc.TLS, pExpr uintptr) (r uintptr) { for pExpr != 0 && (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_Skip)) != uint32(0) { pExpr = (*TExpr)(unsafe.Pointer(pExpr)).FpLeft } return pExpr } // C documentation // // /* // ** Convert a scalar expression node to a TK_REGISTER referencing // ** register iReg. The caller must ensure that iReg already contains // ** the correct value for the expression. // */ func _sqlite3ExprToRegister(tls *libc.TLS, pExpr uintptr, iReg int32) { var p uintptr _ = p p = _sqlite3ExprSkipCollateAndLikely(tls, pExpr) if p == uintptr(0) { return } if int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_REGISTER) { } else { (*TExpr)(unsafe.Pointer(p)).Fop2 = (*TExpr)(unsafe.Pointer(p)).Fop (*TExpr)(unsafe.Pointer(p)).Fop = uint8(TK_REGISTER) (*TExpr)(unsafe.Pointer(p)).FiTable = iReg **(**Tu32)(__ccgo_up(p + 4)) &= ^uint32(libc.Int32FromInt32(EP_Skip)) } } // C documentation // // /* Invoke sqlite3RenameExprUnmap() and sqlite3ExprDelete() on the // ** expression. // */ func _sqlite3ExprUnmapAndDelete(tls *libc.TLS, pParse uintptr, p uintptr) { if p != 0 { if int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) >= int32(PARSE_MODE_RENAME) { _sqlite3RenameExprUnmap(tls, pParse, p) } _sqlite3ExprDeleteNN(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, p) } } // C documentation // // /* // ** Given m and e, which represent a quantity r == m*pow(2,e), // ** return values *pD and *pP such that r == (*pD)*pow(10,*pP), // ** approximately. *pD should contain at least n significant digits. // ** // ** The input m is required to have its highest bit set. In other words, // ** m should be left-shifted, and e decremented, to maximize the value of m. // */ func _sqlite3Fp2Convert10(tls *libc.TLS, m Tu64, e int32, n int32, pD uintptr, pP uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var h Tu64 var p int32 var _ /* d1 at bp+0 */ Tu64 var _ /* d2 at bp+8 */ Tu32 _, _ = h, p p = n - int32(1) - _pwr2to10(tls, e+int32(63)) h = _sqlite3Multiply128(tls, m, _powerOfTen(tls, p, bp+8), bp) if n == int32(18) { h = h >> uint64(-(e + _pwr10to2(tls, p) + libc.Int32FromInt32(2))) **(**Tu64)(__ccgo_up(pD)) = (h + h<> int32(1) } else { **(**Tu64)(__ccgo_up(pD)) = h >> -(e + _pwr10to2(tls, p) + int32(1)) } **(**int32)(__ccgo_up(pP)) = -p } // C documentation // // /* // ** Append the nul-terminated string zStr to the buffer pBuf. This function // ** ensures that the byte following the buffer data is set to 0x00, even // ** though this byte is not included in the pBuf->n count. // */ func _sqlite3Fts5BufferAppendString(tls *libc.TLS, pRc uintptr, pBuf uintptr, zStr uintptr) { var nStr int32 _ = nStr nStr = int32(libc.Xstrlen(tls, zStr)) _sqlite3Fts5BufferAppendBlob(tls, pRc, pBuf, uint32(nStr+int32(1)), zStr) (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fn = (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fn - 1 } // C documentation // // /* // ** Set the buffer to contain nData/pData. If an OOM error occurs, leave an // ** the error code in p. If an error has already occurred when this function // ** is called, it is a no-op. // */ func _sqlite3Fts5BufferSet(tls *libc.TLS, pRc uintptr, pBuf uintptr, nData int32, pData uintptr) { (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fn = 0 _sqlite3Fts5BufferAppendBlob(tls, pRc, pBuf, uint32(nData), pData) } func _sqlite3Fts5BufferSize(tls *libc.TLS, pRc uintptr, pBuf uintptr, nByte Tu32) (r int32) { var nNew Tu64 var pNew uintptr var v1 int32 _, _, _ = nNew, pNew, v1 if uint32((*TFts5Buffer)(unsafe.Pointer(pBuf)).FnSpace) < nByte { if (*TFts5Buffer)(unsafe.Pointer(pBuf)).FnSpace != 0 { v1 = (*TFts5Buffer)(unsafe.Pointer(pBuf)).FnSpace } else { v1 = int32(64) } nNew = uint64(v1) for nNew < uint64(nByte) { nNew = nNew * uint64(2) } pNew = Xsqlite3_realloc64(tls, (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fp, nNew) if pNew == uintptr(0) { **(**int32)(__ccgo_up(pRc)) = int32(SQLITE_NOMEM) return int32(1) } else { (*TFts5Buffer)(unsafe.Pointer(pBuf)).FnSpace = int32(nNew) (*TFts5Buffer)(unsafe.Pointer(pBuf)).Fp = pNew } } return 0 } // C documentation // // /* // ** Create the shadow table named zPost, with definition zDefn. Return // ** SQLITE_OK if successful, or an SQLite error code otherwise. // */ func _sqlite3Fts5CreateTable(tls *libc.TLS, pConfig uintptr, zPost uintptr, zDefn uintptr, bWithout int32, pzErr uintptr) (r int32) { bp := tls.Alloc(64) defer tls.Free(64) var rc int32 var v1 uintptr var _ /* zErr at bp+0 */ uintptr _, _ = rc, v1 **(**uintptr)(__ccgo_up(bp)) = uintptr(0) if bWithout != 0 { v1 = __ccgo_ts + 33320 } else { v1 = __ccgo_ts + 1711 } rc = _fts5ExecPrintf(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, bp, __ccgo_ts+42725, libc.VaList(bp+16, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName, zPost, zDefn, v1)) if **(**uintptr)(__ccgo_up(bp)) != 0 { **(**uintptr)(__ccgo_up(pzErr)) = Xsqlite3_mprintf(tls, __ccgo_ts+42755, libc.VaList(bp+16, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName, zPost, **(**uintptr)(__ccgo_up(bp)))) Xsqlite3_free(tls, **(**uintptr)(__ccgo_up(bp))) } return rc } // C documentation // // /* // ** Drop all shadow tables. Return SQLITE_OK if successful or an SQLite error // ** code otherwise. // */ func _sqlite3Fts5DropAll(tls *libc.TLS, pConfig uintptr) (r int32) { bp := tls.Alloc(64) defer tls.Free(64) var rc int32 _ = rc rc = _fts5ExecPrintf(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), __ccgo_ts+42503, libc.VaList(bp+8, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName)) if rc == SQLITE_OK && (*TFts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0 { rc = _fts5ExecPrintf(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), __ccgo_ts+42607, libc.VaList(bp+8, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName)) } if rc == SQLITE_OK && (*TFts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL { rc = _fts5ExecPrintf(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), __ccgo_ts+42645, libc.VaList(bp+8, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName)) } return rc } // C documentation // // /* // ** This function is only called when using the special 'trigram' tokenizer. // ** Argument zText contains the text of a LIKE or GLOB pattern matched // ** against column iCol. This function creates and compiles an FTS5 MATCH // ** expression that will match a superset of the rows matched by the LIKE or // ** GLOB. If successful, SQLITE_OK is returned. Otherwise, an SQLite error // ** code. // */ func _sqlite3Fts5ExprPattern(tls *libc.TLS, pConfig uintptr, bGlob int32, iCol int32, zText uintptr, pp uintptr) (r int32) { var aSpec [3]int8 var bAnd, i, iFirst, iOut, jj, rc, v1 int32 var nText Ti64 var zExpr uintptr _, _, _, _, _, _, _, _, _, _ = aSpec, bAnd, i, iFirst, iOut, jj, nText, rc, zExpr, v1 nText = int64(libc.Xstrlen(tls, zText)) zExpr = Xsqlite3_malloc64(tls, uint64(nText*int64(4)+int64(1))) rc = SQLITE_OK if zExpr == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { iOut = 0 i = 0 iFirst = 0 if bGlob == 0 { aSpec[0] = int8('_') aSpec[int32(1)] = int8('%') aSpec[int32(2)] = 0 } else { aSpec[0] = int8('*') aSpec[int32(1)] = int8('?') aSpec[int32(2)] = int8('[') } for int64(i) <= nText { if int64(i) == nText || int32(**(**int8)(__ccgo_up(zText + uintptr(i)))) == int32(aSpec[0]) || int32(**(**int8)(__ccgo_up(zText + uintptr(i)))) == int32(aSpec[int32(1)]) || int32(**(**int8)(__ccgo_up(zText + uintptr(i)))) == int32(aSpec[int32(2)]) { if _fts5ExprCountChar(tls, zText+uintptr(iFirst), i-iFirst) >= int32(3) { v1 = iOut iOut = iOut + 1 **(**int8)(__ccgo_up(zExpr + uintptr(v1))) = int8('"') jj = iFirst for { if !(jj < i) { break } v1 = iOut iOut = iOut + 1 **(**int8)(__ccgo_up(zExpr + uintptr(v1))) = **(**int8)(__ccgo_up(zText + uintptr(jj))) if int32(**(**int8)(__ccgo_up(zText + uintptr(jj)))) == int32('"') { v1 = iOut iOut = iOut + 1 **(**int8)(__ccgo_up(zExpr + uintptr(v1))) = int8('"') } goto _2 _2: ; jj = jj + 1 } v1 = iOut iOut = iOut + 1 **(**int8)(__ccgo_up(zExpr + uintptr(v1))) = int8('"') v1 = iOut iOut = iOut + 1 **(**int8)(__ccgo_up(zExpr + uintptr(v1))) = int8(' ') } if int32(**(**int8)(__ccgo_up(zText + uintptr(i)))) == int32(aSpec[int32(2)]) { i = i + int32(2) if int32(**(**int8)(__ccgo_up(zText + uintptr(i-int32(1))))) == int32('^') { i = i + 1 } for int64(i) < nText && int32(**(**int8)(__ccgo_up(zText + uintptr(i)))) != int32(']') { i = i + 1 } } iFirst = i + int32(1) } i = i + 1 } if iOut > 0 { bAnd = 0 if (*TFts5Config)(unsafe.Pointer(pConfig)).FeDetail != FTS5_DETAIL_FULL { bAnd = int32(1) if (*TFts5Config)(unsafe.Pointer(pConfig)).FeDetail == int32(FTS5_DETAIL_NONE) { iCol = (*TFts5Config)(unsafe.Pointer(pConfig)).FnCol } } **(**int8)(__ccgo_up(zExpr + uintptr(iOut))) = int8('\000') rc = _sqlite3Fts5ExprNew(tls, pConfig, bAnd, iCol, zExpr, pp, (*TFts5Config)(unsafe.Pointer(pConfig)).FpzErrmsg) } else { **(**uintptr)(__ccgo_up(pp)) = uintptr(0) } Xsqlite3_free(tls, zExpr) } return rc } func _sqlite3Fts5Get32(tls *libc.TLS, aBuf uintptr) (r int32) { return int32(uint32(**(**Tu8)(__ccgo_up(aBuf)))<)); ** ** One row for each term instance in the database. */ /* #include "fts5Int.h" */ // C documentation // // /* // ** Argument p points to a buffer containing utf-8 text that is n bytes in // ** size. Return the number of bytes in the nChar character prefix of the // ** buffer, or 0 if there are less than nChar characters in total. // */ func _sqlite3Fts5IndexCharlenToBytelen(tls *libc.TLS, p uintptr, nByte int32, nChar int32) (r int32) { var i, n, v2 int32 _, _, _ = i, n, v2 n = 0 i = 0 for { if !(i < nChar) { break } if n >= nByte { return 0 } /* Input contains fewer than nChar chars */ v2 = n n = n + 1 if int32(uint8(**(**int8)(__ccgo_up(p + uintptr(v2))))) >= int32(0xc0) { if n >= nByte { return 0 } for int32(**(**int8)(__ccgo_up(p + uintptr(n))))&int32(0xc0) == int32(0x80) { n = n + 1 if n >= nByte { if i+int32(1) == nChar { break } return 0 } } } goto _1 _1: ; i = i + 1 } return n } // C documentation // // /* // ** Return a simple checksum value based on the arguments. // */ func _sqlite3Fts5IndexEntryCksum(tls *libc.TLS, iRowid Ti64, iCol int32, iPos int32, iIdx int32, pTerm uintptr, nTerm int32) (r Tu64) { var i int32 var ret Tu64 _, _ = i, ret ret = uint64(iRowid) ret = ret + (ret<= 0 { ret = ret + (ret< int32('9') { _sqlite3Fts5ParseError(tls, pParse, __ccgo_ts+39847, libc.VaList(bp+8, (*TFts5Token)(unsafe.Pointer(p)).Fn, (*TFts5Token)(unsafe.Pointer(p)).Fp)) return } if nNear < int32(214748363) { nNear = nNear*int32(10) + (int32(**(**int8)(__ccgo_up((*TFts5Token)(unsafe.Pointer(p)).Fp + uintptr(i)))) - int32('0')) } /* ^^^^^^^^^^^^^^^--- Prevent integer overflow */ goto _1 _1: ; i = i + 1 } } else { nNear = int32(FTS5_DEFAULT_NEARDIST) } (*TFts5ExprNearset)(unsafe.Pointer(pNear)).FnNear = nNear } } // C documentation // // /* // ** Return the fallback token corresponding to canonical token iToken, or // ** 0 if iToken has no fallback. // */ func _sqlite3Fts5ParserFallback(tls *libc.TLS, iToken int32) (r int32) { _ = iToken return 0 } /* ** 2014 May 31 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ****************************************************************************** */ /* #include "fts5Int.h" */ /** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER.PD within this package. */ func _sqlite3Fts5PoslistNext64(tls *libc.TLS, a uintptr, n int32, pi uintptr, piOff uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var i, v1 int32 var iOff Ti64 var _ /* iVal at bp+0 */ Tu32 _, _, _ = i, iOff, v1 i = **(**int32)(__ccgo_up(pi)) if i >= n { /* EOF */ **(**Ti64)(__ccgo_up(piOff)) = int64(-int32(1)) return int32(1) } else { iOff = **(**Ti64)(__ccgo_up(piOff)) v1 = i i = i + 1 **(**Tu32)(__ccgo_up(bp)) = uint32(**(**Tu8)(__ccgo_up(a + uintptr(v1)))) if **(**Tu32)(__ccgo_up(bp))&uint32(0x80) != 0 { i = i - 1 i = i + _sqlite3Fts5GetVarint32(tls, a+uintptr(i), bp) } if **(**Tu32)(__ccgo_up(bp)) <= uint32(1) { if **(**Tu32)(__ccgo_up(bp)) == uint32(0) { **(**int32)(__ccgo_up(pi)) = i return 0 } v1 = i i = i + 1 **(**Tu32)(__ccgo_up(bp)) = uint32(**(**Tu8)(__ccgo_up(a + uintptr(v1)))) if **(**Tu32)(__ccgo_up(bp))&uint32(0x80) != 0 { i = i - 1 i = i + _sqlite3Fts5GetVarint32(tls, a+uintptr(i), bp) } iOff = int64(**(**Tu32)(__ccgo_up(bp))) << int32(32) v1 = i i = i + 1 **(**Tu32)(__ccgo_up(bp)) = uint32(**(**Tu8)(__ccgo_up(a + uintptr(v1)))) if **(**Tu32)(__ccgo_up(bp))&uint32(0x80) != 0 { i = i - 1 i = i + _sqlite3Fts5GetVarint32(tls, a+uintptr(i), bp) } if **(**Tu32)(__ccgo_up(bp)) < uint32(2) { /* This is a corrupt record. So stop parsing it here. */ **(**Ti64)(__ccgo_up(piOff)) = int64(-int32(1)) return int32(1) } **(**Ti64)(__ccgo_up(piOff)) = iOff + int64((**(**Tu32)(__ccgo_up(bp))-libc.Uint32FromInt32(2))&libc.Uint32FromInt32(0x7FFFFFFF)) } else { **(**Ti64)(__ccgo_up(piOff)) = iOff&(libc.Int64FromInt32(0x7FFFFFFF)<> int32(24) & int32(0x00FF)) **(**Tu8)(__ccgo_up(aBuf + 1)) = uint8(iVal >> int32(16) & int32(0x00FF)) **(**Tu8)(__ccgo_up(aBuf + 2)) = uint8(iVal >> int32(8) & int32(0x00FF)) **(**Tu8)(__ccgo_up(aBuf + 3)) = uint8(iVal >> 0 & int32(0x00FF)) } // C documentation // // /* // ** Delete all entries in the FTS5 index. // */ func _sqlite3Fts5StorageDeleteAll(tls *libc.TLS, p uintptr) (r int32) { bp := tls.Alloc(48) defer tls.Free(48) var pConfig uintptr var rc int32 _, _ = pConfig, rc pConfig = (*TFts5Storage)(unsafe.Pointer(p)).FpConfig (*TFts5Storage)(unsafe.Pointer(p)).FbTotalsValid = 0 /* Delete the contents of the %_data and %_docsize tables. */ rc = _fts5ExecPrintf(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), __ccgo_ts+42931, libc.VaList(bp+8, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName)) if rc == SQLITE_OK && (*TFts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0 { rc = _fts5ExecPrintf(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), __ccgo_ts+42981, libc.VaList(bp+8, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName)) } if rc == SQLITE_OK && (*TFts5Config)(unsafe.Pointer(pConfig)).FeContent == int32(FTS5_CONTENT_UNINDEXED) { rc = _fts5ExecPrintf(tls, (*TFts5Config)(unsafe.Pointer(pConfig)).Fdb, uintptr(0), __ccgo_ts+43010, libc.VaList(bp+8, (*TFts5Config)(unsafe.Pointer(pConfig)).FzDb, (*TFts5Config)(unsafe.Pointer(pConfig)).FzName)) } /* Reinitialize the %_data table. This call creates the initial structure ** and averages records. */ if rc == SQLITE_OK { rc = _sqlite3Fts5IndexReinit(tls, (*TFts5Storage)(unsafe.Pointer(p)).FpIndex) } if rc == SQLITE_OK { rc = _sqlite3Fts5StorageConfigValue(tls, p, __ccgo_ts+39705, uintptr(0), int32(FTS5_CURRENT_VERSION)) } return rc } func _sqlite3Fts5StorageRename(tls *libc.TLS, pStorage uintptr, zName uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var pConfig uintptr var _ /* rc at bp+0 */ int32 _ = pConfig pConfig = (*TFts5Storage)(unsafe.Pointer(pStorage)).FpConfig **(**int32)(__ccgo_up(bp)) = _sqlite3Fts5StorageSync(tls, pStorage) _fts5StorageRenameOne(tls, pConfig, bp, __ccgo_ts+28645, zName) _fts5StorageRenameOne(tls, pConfig, bp, __ccgo_ts+14261, zName) _fts5StorageRenameOne(tls, pConfig, bp, __ccgo_ts+41837, zName) if (*TFts5Config)(unsafe.Pointer(pConfig)).FbColumnsize != 0 { _fts5StorageRenameOne(tls, pConfig, bp, __ccgo_ts+39523, zName) } if (*TFts5Config)(unsafe.Pointer(pConfig)).FeContent == FTS5_CONTENT_NORMAL { _fts5StorageRenameOne(tls, pConfig, bp, __ccgo_ts+38828, zName) } return **(**int32)(__ccgo_up(bp)) } // C documentation // // /* // ** Return true if the tokenizer described by p->azArg[] is the trigram // ** tokenizer. This tokenizer needs to be loaded before xBestIndex is // ** called for the first time in order to correctly handle LIKE/GLOB. // */ func _sqlite3Fts5TokenizerPreload(tls *libc.TLS, p uintptr) (r int32) { return libc.BoolInt32((*TFts5TokenizerConfig)(unsafe.Pointer(p)).FnArg >= int32(1) && 0 == Xsqlite3_stricmp(tls, **(**uintptr)(__ccgo_up((*TFts5TokenizerConfig)(unsafe.Pointer(p)).FazArg)), __ccgo_ts+43442)) } func _sqlite3Fts5UnicodeAscii(tls *libc.TLS, aArray uintptr, aAscii uintptr) { var bToken, i, iTbl, n int32 _, _, _, _ = bToken, i, iTbl, n i = 0 iTbl = 0 for i < int32(128) { bToken = int32(**(**Tu8)(__ccgo_up(aArray + uintptr(int32(_aFts5UnicodeData[iTbl])&int32(0x1F))))) n = int32(_aFts5UnicodeData[iTbl])>>int32(5) + i for { if !(i < int32(128) && i < n) { break } **(**Tu8)(__ccgo_up(aAscii + uintptr(i))) = uint8(bToken) goto _1 _1: ; i = i + 1 } iTbl = iTbl + 1 } **(**Tu8)(__ccgo_up(aAscii)) = uint8(0) /* 0x00 is never a token character */ } /* ** 2015 May 30 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ****************************************************************************** ** ** Routines for varint serialization and deserialization. */ /* #include "fts5Int.h" */ func _sqlite3Fts5UnicodeCategory(tls *libc.TLS, iCode Tu32) (r int32) { var iHi, iLo, iRes, iTest, ret, v1 int32 var iKey Tu16 _, _, _, _, _, _, _ = iHi, iKey, iLo, iRes, iTest, ret, v1 iRes = -int32(1) if iCode >= uint32(libc.Int32FromInt32(1)<>int32(16)]) iHi = int32(_aFts5UnicodeBlock[uint32(1)+iCode>>libc.Int32FromInt32(16)]) iKey = uint16(iCode & libc.Uint32FromInt32(0xFFFF)) for iHi > iLo { iTest = (iHi + iLo) / int32(2) if int32(iKey) >= int32(_aFts5UnicodeMap[iTest]) { iRes = iTest iLo = iTest + int32(1) } else { iHi = iTest } } if iRes < 0 { return 0 } if int32(iKey) >= int32(_aFts5UnicodeMap[iRes])+int32(_aFts5UnicodeData[iRes])>>int32(5) { return 0 } ret = int32(_aFts5UnicodeData[iRes]) & int32(0x1F) if ret != int32(30) { return ret } if (int32(iKey)-int32(_aFts5UnicodeMap[iRes]))&int32(0x01) != 0 { v1 = int32(5) } else { v1 = int32(9) } return v1 } // C documentation // // /* // ** Return true if the argument interpreted as a unicode codepoint // ** is a diacritical modifier character. // */ func _sqlite3Fts5UnicodeIsdiacritic(tls *libc.TLS, c int32) (r int32) { var mask0, mask1, v1 uint32 _, _, _ = mask0, mask1, v1 mask0 = uint32(0x08029FDF) mask1 = uint32(0x000361F8) if c < int32(768) || c > int32(817) { return 0 } if c < libc.Int32FromInt32(768)+libc.Int32FromInt32(32) { v1 = mask0 & (libc.Uint32FromInt32(1) << (c - int32(768))) } else { v1 = mask1 & (libc.Uint32FromInt32(1) << (c - int32(768) - int32(32))) } return int32(v1) } func _sqlite3Fts5VocabInit(tls *libc.TLS, pGlobal uintptr, db uintptr) (r int32) { var p uintptr _ = p p = pGlobal return Xsqlite3_create_module_v2(tls, db, __ccgo_ts+43766, uintptr(unsafe.Pointer(&_fts5Vocab)), p, uintptr(0)) } // C documentation // // /* // ** Read or write a four-byte big-endian integer value. // */ func _sqlite3Get4byte(tls *libc.TLS, p uintptr) (r Tu32) { return uint32(**(**Tu8)(__ccgo_up(p)))<') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_PTR) return int64(int32(2) + libc.BoolInt32(int32(**(**uint8)(__ccgo_up(z + 2))) == int32('>'))) } } **(**int32)(__ccgo_up(tokenType)) = int32(TK_MINUS) return int64(1) case int32(CC_LP): **(**int32)(__ccgo_up(tokenType)) = int32(TK_LP) return int64(1) case int32(CC_RP): **(**int32)(__ccgo_up(tokenType)) = int32(TK_RP) return int64(1) case int32(CC_SEMI): **(**int32)(__ccgo_up(tokenType)) = int32(TK_SEMI) return int64(1) case int32(CC_PLUS): **(**int32)(__ccgo_up(tokenType)) = int32(TK_PLUS) return int64(1) case int32(CC_STAR): **(**int32)(__ccgo_up(tokenType)) = int32(TK_STAR) return int64(1) case int32(CC_SLASH): if int32(**(**uint8)(__ccgo_up(z + 1))) != int32('*') || int32(**(**uint8)(__ccgo_up(z + 2))) == 0 { **(**int32)(__ccgo_up(tokenType)) = int32(TK_SLASH) return int64(1) } i = int64(3) c = int32(**(**uint8)(__ccgo_up(z + 2))) for { if v6 = c != int32('*') || int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) != int32('/'); v6 { v3 = int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) c = v3 } if !(v6 && v3 != 0) { break } goto _4 _4: ; i = i + 1 } if c != 0 { i = i + 1 } **(**int32)(__ccgo_up(tokenType)) = int32(TK_COMMENT) return i case int32(CC_PERCENT): **(**int32)(__ccgo_up(tokenType)) = int32(TK_REM) return int64(1) case int32(CC_EQ): **(**int32)(__ccgo_up(tokenType)) = int32(TK_EQ) return int64(int32(1) + libc.BoolInt32(int32(**(**uint8)(__ccgo_up(z + 1))) == int32('='))) case int32(CC_LT): v3 = int32(**(**uint8)(__ccgo_up(z + 1))) c = v3 if v3 == int32('=') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_LE) return int64(2) } else { if c == int32('>') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_NE) return int64(2) } else { if c == int32('<') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_LSHIFT) return int64(2) } else { **(**int32)(__ccgo_up(tokenType)) = int32(TK_LT) return int64(1) } } } fallthrough case int32(CC_GT): v3 = int32(**(**uint8)(__ccgo_up(z + 1))) c = v3 if v3 == int32('=') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_GE) return int64(2) } else { if c == int32('>') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_RSHIFT) return int64(2) } else { **(**int32)(__ccgo_up(tokenType)) = int32(TK_GT) return int64(1) } } fallthrough case int32(CC_BANG): if int32(**(**uint8)(__ccgo_up(z + 1))) != int32('=') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_ILLEGAL) return int64(1) } else { **(**int32)(__ccgo_up(tokenType)) = int32(TK_NE) return int64(2) } fallthrough case int32(CC_PIPE): if int32(**(**uint8)(__ccgo_up(z + 1))) != int32('|') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_BITOR) return int64(1) } else { **(**int32)(__ccgo_up(tokenType)) = int32(TK_CONCAT) return int64(2) } fallthrough case int32(CC_COMMA): **(**int32)(__ccgo_up(tokenType)) = int32(TK_COMMA) return int64(1) case int32(CC_AND): **(**int32)(__ccgo_up(tokenType)) = int32(TK_BITAND) return int64(1) case int32(CC_TILDA): **(**int32)(__ccgo_up(tokenType)) = int32(TK_BITNOT) return int64(1) case int32(CC_QUOTE): delim = int32(**(**uint8)(__ccgo_up(z))) i = int64(1) for { v3 = int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) c = v3 if !(v3 != 0) { break } if c == delim { if int32(**(**uint8)(__ccgo_up(z + uintptr(i+int64(1))))) == delim { i = i + 1 } else { break } } goto _9 _9: ; i = i + 1 } if c == int32('\'') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_STRING) return i + int64(1) } else { if c != 0 { **(**int32)(__ccgo_up(tokenType)) = int32(TK_ID) return i + int64(1) } else { **(**int32)(__ccgo_up(tokenType)) = int32(TK_ILLEGAL) return i } } fallthrough case int32(CC_DOT): if !(int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + 1))])&libc.Int32FromInt32(0x04) != 0) { **(**int32)(__ccgo_up(tokenType)) = int32(TK_DOT) return int64(1) } /* If the next character is a digit, this is a floating point ** number that begins with ".". Fall thru into the next case */ fallthrough case int32(CC_DIGIT): **(**int32)(__ccgo_up(tokenType)) = int32(TK_INTEGER) if int32(**(**uint8)(__ccgo_up(z))) == int32('0') && (int32(**(**uint8)(__ccgo_up(z + 1))) == int32('x') || int32(**(**uint8)(__ccgo_up(z + 1))) == int32('X')) && int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + 2))])&int32(0x08) != 0 { i = int64(3) for { if !(int32(1) != 0) { break } if int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x08) == 0 { if int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) == int32('_') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_QNUMBER) } else { break } } goto _11 _11: ; i = i + 1 } } else { i = 0 for { if !(int32(1) != 0) { break } if int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x04) == 0 { if int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) == int32('_') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_QNUMBER) } else { break } } goto _12 _12: ; i = i + 1 } if int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) == int32('.') { if **(**int32)(__ccgo_up(tokenType)) == int32(TK_INTEGER) { **(**int32)(__ccgo_up(tokenType)) = int32(TK_FLOAT) } i = i + 1 for { if !(int32(1) != 0) { break } if int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x04) == 0 { if int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) == int32('_') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_QNUMBER) } else { break } } goto _13 _13: ; i = i + 1 } } if (int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) == int32('e') || int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) == int32('E')) && (int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i+int64(1))))])&int32(0x04) != 0 || (int32(**(**uint8)(__ccgo_up(z + uintptr(i+int64(1))))) == int32('+') || int32(**(**uint8)(__ccgo_up(z + uintptr(i+int64(1))))) == int32('-')) && int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i+int64(2))))])&int32(0x04) != 0) { if **(**int32)(__ccgo_up(tokenType)) == int32(TK_INTEGER) { **(**int32)(__ccgo_up(tokenType)) = int32(TK_FLOAT) } i = i + int64(2) for { if !(int32(1) != 0) { break } if int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x04) == 0 { if int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) == int32('_') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_QNUMBER) } else { break } } goto _14 _14: ; i = i + 1 } } } for int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x46) != 0 { **(**int32)(__ccgo_up(tokenType)) = int32(TK_ILLEGAL) i = i + 1 } return i case int32(CC_QUOTE2): i = int64(1) c = int32(**(**uint8)(__ccgo_up(z))) for { if v6 = c != int32(']'); v6 { v3 = int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) c = v3 } if !(v6 && v3 != 0) { break } goto _15 _15: ; i = i + 1 } if c == int32(']') { v3 = int32(TK_ID) } else { v3 = int32(TK_ILLEGAL) } **(**int32)(__ccgo_up(tokenType)) = v3 return i case int32(CC_VARNUM): **(**int32)(__ccgo_up(tokenType)) = int32(TK_VARIABLE) i = int64(1) for { if !(int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x04) != 0) { break } goto _19 _19: ; i = i + 1 } return i case int32(CC_DOLLAR): fallthrough case int32(CC_VARALPHA): n = 0 **(**int32)(__ccgo_up(tokenType)) = int32(TK_VARIABLE) i = int64(1) for { v3 = int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) c = v3 if !(v3 != 0) { break } if int32(_sqlite3CtypeMap[uint8(c)])&int32(0x46) != 0 { n = n + 1 } else { if c == int32('(') && n > 0 { for { i = i + 1 goto _23 _23: ; v3 = int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) c = v3 if !(v3 != 0 && !(int32(_sqlite3CtypeMap[uint8(c)])&libc.Int32FromInt32(0x01) != 0) && c != int32(')')) { break } } if c == int32(')') { i = i + 1 } else { **(**int32)(__ccgo_up(tokenType)) = int32(TK_ILLEGAL) } break } else { if c == int32(':') && int32(**(**uint8)(__ccgo_up(z + uintptr(i+int64(1))))) == int32(':') { i = i + 1 } else { break } } } goto _20 _20: ; i = i + 1 } if n == 0 { **(**int32)(__ccgo_up(tokenType)) = int32(TK_ILLEGAL) } return i case int32(CC_KYWD0): if int32(_aiClass[**(**uint8)(__ccgo_up(z + 1))]) > int32(CC_KYWD) { i = int64(1) break } i = int64(2) for { if !(int32(_aiClass[**(**uint8)(__ccgo_up(z + uintptr(i)))]) <= int32(CC_KYWD)) { break } goto _24 _24: ; i = i + 1 } if int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x46) != 0 { /* This token started out using characters that can appear in keywords, ** but z[i] is a character not allowed within keywords, so this must ** be an identifier instead */ i = i + 1 break } **(**int32)(__ccgo_up(tokenType)) = int32(TK_ID) return _keywordCode(tls, z, i, tokenType) case CC_X: if int32(**(**uint8)(__ccgo_up(z + 1))) == int32('\'') { **(**int32)(__ccgo_up(tokenType)) = int32(TK_BLOB) i = int64(2) for { if !(int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x08) != 0) { break } goto _25 _25: ; i = i + 1 } if int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) != int32('\'') || i%int64(2) != 0 { **(**int32)(__ccgo_up(tokenType)) = int32(TK_ILLEGAL) for **(**uint8)(__ccgo_up(z + uintptr(i))) != 0 && int32(**(**uint8)(__ccgo_up(z + uintptr(i)))) != int32('\'') { i = i + 1 } } if **(**uint8)(__ccgo_up(z + uintptr(i))) != 0 { i = i + 1 } return i } /* If it is not a BLOB literal, then it must be an ID, since no ** SQL keywords start with the letter 'x'. Fall through */ fallthrough case int32(CC_KYWD): fallthrough case int32(CC_ID): i = int64(1) case int32(CC_BOM): if int32(**(**uint8)(__ccgo_up(z + 1))) == int32(0xbb) && int32(**(**uint8)(__ccgo_up(z + 2))) == int32(0xbf) { **(**int32)(__ccgo_up(tokenType)) = int32(TK_SPACE) return int64(3) } i = int64(1) case int32(CC_NUL): **(**int32)(__ccgo_up(tokenType)) = int32(TK_ILLEGAL) return 0 default: **(**int32)(__ccgo_up(tokenType)) = int32(TK_ILLEGAL) return int64(1) } for int32(_sqlite3CtypeMap[**(**uint8)(__ccgo_up(z + uintptr(i)))])&int32(0x46) != 0 { i = i + 1 } **(**int32)(__ccgo_up(tokenType)) = int32(TK_ID) return i } // C documentation // // /* // ** Try to convert z into an unsigned 32-bit integer. Return true on // ** success and false if there is an error. // ** // ** Only decimal notation is accepted. // */ func _sqlite3GetUInt32(tls *libc.TLS, z uintptr, pI uintptr) (r int32) { var i int32 var v Tu64 _, _ = i, v v = uint64(0) i = 0 for { if !(int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(z + uintptr(i))))])&int32(0x04) != 0) { break } v = v*uint64(10) + uint64(**(**int8)(__ccgo_up(z + uintptr(i)))) - uint64('0') if v > uint64(4294967296) { **(**Tu32)(__ccgo_up(pI)) = uint32(0) return 0 } goto _1 _1: ; i = i + 1 } if i == 0 || int32(**(**int8)(__ccgo_up(z + uintptr(i)))) != 0 { **(**Tu32)(__ccgo_up(pI)) = uint32(0) return 0 } **(**Tu32)(__ccgo_up(pI)) = uint32(v) return int32(1) } /* ** The variable-length integer encoding is as follows: ** ** KEY: ** A = 0xxxxxxx 7 bits of data and one flag bit ** B = 1xxxxxxx 7 bits of data and one flag bit ** C = xxxxxxxx 8 bits of data ** ** 7 bits - A ** 14 bits - BA ** 21 bits - BBA ** 28 bits - BBBA ** 35 bits - BBBBA ** 42 bits - BBBBBA ** 49 bits - BBBBBBA ** 56 bits - BBBBBBBA ** 64 bits - BBBBBBBBC */ // C documentation // // /* // ** Read a 64-bit variable-length integer from memory starting at p[0]. // ** Return the number of bytes read. The value is stored in *v. // */ func _sqlite3GetVarint(tls *libc.TLS, p uintptr, v uintptr) (r Tu8) { var a, b, s Tu32 _, _, _ = a, b, s if int32(**(**int8)(__ccgo_up(p))) >= 0 { **(**Tu64)(__ccgo_up(v)) = uint64(**(**uint8)(__ccgo_up(p))) return uint8(1) } if int32(**(**int8)(__ccgo_up(p + 1))) >= 0 { **(**Tu64)(__ccgo_up(v)) = uint64(uint32(int32(**(**uint8)(__ccgo_up(p)))&libc.Int32FromInt32(0x7f))<> int32(18) **(**Tu64)(__ccgo_up(v)) = uint64(s)<> int32(18) **(**Tu64)(__ccgo_up(v)) = uint64(s)<> int32(11) **(**Tu64)(__ccgo_up(v)) = uint64(s)<> int32(4) **(**Tu64)(__ccgo_up(v)) = uint64(s)<> int32(3) s = s | b **(**Tu64)(__ccgo_up(v)) = uint64(s)<>int32(6))) return uint8(h & libc.Int32FromInt32(0xf)) } // C documentation // // /* // ** Check to see if pExpr is one of the indexed expressions on pParse->pIdxEpr. // ** If it is, then resolve the expression by reading from the index and // ** return the register into which the value has been read. If pExpr is // ** not an indexed expression, then return negative. // */ func _sqlite3IndexedExprLookup(tls *libc.TLS, pParse uintptr, pExpr uintptr, target int32) (r int32) { var addr, iDataCur int32 var exprAff Tu8 var p, v uintptr _, _, _, _, _ = addr, exprAff, iDataCur, p, v p = (*TParse)(unsafe.Pointer(pParse)).FpIdxEpr for { if !(p != 0) { break } iDataCur = (*TIndexedExpr)(unsafe.Pointer(p)).FiDataCur if iDataCur < 0 { goto _1 } if (*TParse)(unsafe.Pointer(pParse)).FiSelfTab != 0 { if (*TIndexedExpr)(unsafe.Pointer(p)).FiDataCur != (*TParse)(unsafe.Pointer(pParse)).FiSelfTab-int32(1) { goto _1 } iDataCur = -int32(1) } if _sqlite3ExprCompare(tls, uintptr(0), pExpr, (*TIndexedExpr)(unsafe.Pointer(p)).FpExpr, iDataCur) != 0 { goto _1 } exprAff = uint8(_sqlite3ExprAffinity(tls, pExpr)) if int32(exprAff) <= int32(SQLITE_AFF_BLOB) && int32((*TIndexedExpr)(unsafe.Pointer(p)).Faff) != int32(SQLITE_AFF_BLOB) || int32(exprAff) == int32(SQLITE_AFF_TEXT) && int32((*TIndexedExpr)(unsafe.Pointer(p)).Faff) != int32(SQLITE_AFF_TEXT) || int32(exprAff) >= int32(SQLITE_AFF_NUMERIC) && int32((*TIndexedExpr)(unsafe.Pointer(p)).Faff) != int32(SQLITE_AFF_NUMERIC) { /* Affinity mismatch on a generated column */ goto _1 } /* Functions that might set a subtype should not be replaced by the ** value taken from an expression index if they are themselves an ** argument to another scalar function or aggregate. ** https://sqlite.org/forum/forumpost/68d284c86b082c3e */ if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&libc.Uint32FromUint32(EP_SubtArg) != uint32(0) && _sqlite3ExprCanReturnSubtype(tls, pParse, pExpr) != 0 { goto _1 } v = (*TParse)(unsafe.Pointer(pParse)).FpVdbe if (*TIndexedExpr)(unsafe.Pointer(p)).FbMaybeNullRow != 0 { /* If the index is on a NULL row due to an outer join, then we ** cannot extract the value from the index. The value must be ** computed using the original expression. */ addr = _sqlite3VdbeCurrentAddr(tls, v) _sqlite3VdbeAddOp3(tls, v, int32(OP_IfNullRow), (*TIndexedExpr)(unsafe.Pointer(p)).FiIdxCur, addr+int32(3), target) _sqlite3VdbeAddOp3(tls, v, int32(OP_Column), (*TIndexedExpr)(unsafe.Pointer(p)).FiIdxCur, (*TIndexedExpr)(unsafe.Pointer(p)).FiIdxCol, target) _sqlite3VdbeGoto(tls, v, 0) p = (*TParse)(unsafe.Pointer(pParse)).FpIdxEpr (*TParse)(unsafe.Pointer(pParse)).FpIdxEpr = uintptr(0) _sqlite3ExprCode(tls, pParse, pExpr, target) (*TParse)(unsafe.Pointer(pParse)).FpIdxEpr = p _sqlite3VdbeJumpHere(tls, v, addr+int32(2)) } else { _sqlite3VdbeAddOp3(tls, v, int32(OP_Column), (*TIndexedExpr)(unsafe.Pointer(p)).FiIdxCur, (*TIndexedExpr)(unsafe.Pointer(p)).FiIdxCol, target) } return target goto _1 _1: ; p = (*TIndexedExpr)(unsafe.Pointer(p)).FpIENext } return -int32(1) /* Not found */ } // C documentation // // /* // ** The following is the implementation of an SQL function that always // ** fails with an error message stating that the function is used in the // ** wrong context. The sqlite3_overload_function() API might construct // ** SQL function that use this routine so that the functions will exist // ** for name resolution but are actually overloaded by the xFindFunction // ** method of virtual tables. // */ func _sqlite3InvalidFunction(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var zErr, zName uintptr _, _ = zErr, zName zName = Xsqlite3_user_data(tls, context) _ = NotUsed _ = NotUsed2 zErr = Xsqlite3_mprintf(tls, __ccgo_ts+27208, libc.VaList(bp+8, zName)) Xsqlite3_result_error(tls, context, zErr, -int32(1)) Xsqlite3_free(tls, zErr) } // C documentation // // /* Make the IdChar function accessible from ctime.c and alter.c */ func _sqlite3IsIdChar(tls *libc.TLS, c Tu8) (r int32) { return libc.BoolInt32(int32(_sqlite3CtypeMap[c])&int32(0x46) != 0) } // C documentation // // /* // ** Check to make sure the given table is writable. // ** // ** If pTab is not writable -> generate an error message and return 1. // ** If pTab is writable but other errors have occurred -> return 1. // ** If pTab is writable and no prior errors -> return 0; // */ func _sqlite3IsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr, pTrigger uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) if _tabIsReadOnly(tls, pParse, pTab) != 0 { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+17600, libc.VaList(bp+8, (*TTable)(unsafe.Pointer(pTab)).FzName)) return int32(1) } if int32((*TTable)(unsafe.Pointer(pTab)).FeTabType) == int32(TABTYP_VIEW) && (pTrigger == uintptr(0) || (*TTrigger)(unsafe.Pointer(pTrigger)).FbReturning != 0 && (*TTrigger)(unsafe.Pointer(pTrigger)).FpNext == uintptr(0)) { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+17629, libc.VaList(bp+8, (*TTable)(unsafe.Pointer(pTab)).FzName)) return int32(1) } return 0 } // C documentation // // /* // ** Return TRUE if the given string is a row-id column name. // */ func _sqlite3IsRowid(tls *libc.TLS, z uintptr) (r int32) { if _sqlite3StrICmp(tls, z, __ccgo_ts+9406) == 0 { return int32(1) } if _sqlite3StrICmp(tls, z, __ccgo_ts+9414) == 0 { return int32(1) } if _sqlite3StrICmp(tls, z, __ccgo_ts+9420) == 0 { return int32(1) } return 0 } // C documentation // // /* // ** Check the input string to see if it is "true" or "false" (in any case). // ** // ** If the string is.... Return // ** "true" EP_IsTrue // ** "false" EP_IsFalse // ** anything else 0 // */ func _sqlite3IsTrueOrFalse(tls *libc.TLS, zIn uintptr) (r Tu32) { if _sqlite3StrICmp(tls, zIn, __ccgo_ts+9395) == 0 { return uint32(EP_IsTrue) } if _sqlite3StrICmp(tls, zIn, __ccgo_ts+9400) == 0 { return uint32(EP_IsFalse) } return uint32(0) } // C documentation // // /* // ** This function returns the collation sequence for database native text // ** encoding identified by the string zName. // ** // ** If the requested collation sequence is not available, or not available // ** in the database native encoding, the collation factory is invoked to // ** request it. If the collation factory does not supply such a sequence, // ** and the sequence is available in another text encoding, then that is // ** returned instead. // ** // ** If no versions of the requested collations sequence are available, or // ** another error occurs, NULL is returned and an error message written into // ** pParse. // ** // ** This routine is a wrapper around sqlite3FindCollSeq(). This routine // ** invokes the collation factory if the named collation cannot be found // ** and generates an error message. // ** // ** See also: sqlite3FindCollSeq(), sqlite3GetCollSeq() // */ func _sqlite3LocateCollSeq(tls *libc.TLS, pParse uintptr, zName uintptr) (r uintptr) { var db, pColl uintptr var enc, initbusy Tu8 _, _, _, _ = db, enc, initbusy, pColl db = (*TParse)(unsafe.Pointer(pParse)).Fdb enc = (*Tsqlite3)(unsafe.Pointer(db)).Fenc initbusy = (*Tsqlite3)(unsafe.Pointer(db)).Finit1.Fbusy pColl = _sqlite3FindCollSeq(tls, db, enc, zName, int32(initbusy)) if !(initbusy != 0) && (!(pColl != 0) || !((*TCollSeq)(unsafe.Pointer(pColl)).FxCmp != 0)) { pColl = _sqlite3GetCollSeq(tls, pParse, enc, pColl, zName) } return pColl } // C documentation // // /* // ** Find (an approximate) sum of two LogEst values. This computation is // ** not a simple "+" operator because LogEst is stored as a logarithmic // ** value. // ** // */ func _sqlite3LogEstAdd(tls *libc.TLS, a TLogEst, b TLogEst) (r TLogEst) { if int32(a) >= int32(b) { if int32(a) > int32(b)+int32(49) { return a } if int32(a) > int32(b)+int32(31) { return int16(int32(a) + int32(1)) } return int16(int32(a) + int32(_x[int32(a)-int32(b)])) } else { if int32(b) > int32(a)+int32(49) { return b } if int32(b) > int32(a)+int32(31) { return int16(int32(b) + int32(1)) } return int16(int32(b) + int32(_x[int32(b)-int32(a)])) } return r } // C documentation // // /* // ** Convert a LogEst into an integer. // */ func _sqlite3LogEstToInt(tls *libc.TLS, x TLogEst) (r Tu64) { var n Tu64 var v1 uint64 _, _ = n, v1 n = uint64(int32(x) % int32(10)) x = int16(int32(x) / libc.Int32FromInt32(10)) if n >= uint64(5) { n = n - uint64(2) } else { if n >= uint64(1) { n = n - uint64(1) } } if int32(x) > int32(60) { return uint64(libc.Int64FromUint32(0xffffffff) | libc.Int64FromInt32(0x7fffffff)<= int32(3) { v1 = (n + uint64(8)) << (int32(x) - int32(3)) } else { v1 = (n + uint64(8)) >> (int32(3) - int32(x)) } return v1 } // C documentation // // /* // ** Count the number of slots of lookaside memory that are outstanding // */ func _sqlite3LookasideUsed(tls *libc.TLS, db uintptr, pHighwater uintptr) (r int32) { var nFree, nInit Tu32 _, _ = nFree, nInit nInit = _countLookasideSlots(tls, (*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FpInit) nFree = _countLookasideSlots(tls, (*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FpFree) nInit = nInit + _countLookasideSlots(tls, (*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FpSmallInit) nFree = nFree + _countLookasideSlots(tls, (*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FpSmallFree) if pHighwater != 0 { **(**int32)(__ccgo_up(pHighwater)) = int32((*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FnSlot - nInit) } return int32((*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FnSlot - (nInit + nFree)) } // C documentation // // /* // ** Allocate memory. This routine is like sqlite3_malloc() except that it // ** assumes the memory subsystem has already been initialized. // */ func _sqlite3Malloc(tls *libc.TLS, n Tu64) (r uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* p at bp+0 */ uintptr if n == uint64(0) || n > uint64(SQLITE_MAX_ALLOCATION_SIZE) { **(**uintptr)(__ccgo_up(bp)) = uintptr(0) } else { if _sqlite3Config.FbMemstat != 0 { Xsqlite3_mutex_enter(tls, _mem0.Fmutex) _mallocWithAlarm(tls, int32(n), bp) Xsqlite3_mutex_leave(tls, _mem0.Fmutex) } else { **(**uintptr)(__ccgo_up(bp)) = (*(*func(*libc.TLS, int32) uintptr)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fm.FxMalloc})))(tls, int32(n)) } } /* IMP: R-11148-40995 */ return **(**uintptr)(__ccgo_up(bp)) } // C documentation // // /* // ** Compare the values contained by the two memory cells, returning // ** negative, zero or positive if pMem1 is less than, equal to, or greater // ** than pMem2. Sorting order is NULL's first, followed by numbers (integers // ** and reals) sorted numerically, followed by text ordered by the collating // ** sequence pColl and finally blob's ordered by memcmp(). // ** // ** Two NULL values are considered equal by this function. // */ func _sqlite3MemCompare(tls *libc.TLS, pMem1 uintptr, pMem2 uintptr, pColl uintptr) (r int32) { var combined_flags, f1, f2 int32 _, _, _ = combined_flags, f1, f2 f1 = int32((*TMem)(unsafe.Pointer(pMem1)).Fflags) f2 = int32((*TMem)(unsafe.Pointer(pMem2)).Fflags) combined_flags = f1 | f2 /* If one value is NULL, it is less than the other. If both values ** are NULL, return 0. */ if combined_flags&int32(MEM_Null) != 0 { return f2&int32(MEM_Null) - f1&int32(MEM_Null) } /* At least one of the two values is a number */ if combined_flags&(libc.Int32FromInt32(MEM_Int)|libc.Int32FromInt32(MEM_Real)|libc.Int32FromInt32(MEM_IntReal)) != 0 { if f1&f2&(libc.Int32FromInt32(MEM_Int)|libc.Int32FromInt32(MEM_IntReal)) != 0 { if *(*Ti64)(unsafe.Pointer(pMem1)) < *(*Ti64)(unsafe.Pointer(pMem2)) { return -int32(1) } if *(*Ti64)(unsafe.Pointer(pMem1)) > *(*Ti64)(unsafe.Pointer(pMem2)) { return +libc.Int32FromInt32(1) } return 0 } if f1&f2&int32(MEM_Real) != 0 { if *(*float64)(unsafe.Pointer(pMem1)) < *(*float64)(unsafe.Pointer(pMem2)) { return -int32(1) } if *(*float64)(unsafe.Pointer(pMem1)) > *(*float64)(unsafe.Pointer(pMem2)) { return +libc.Int32FromInt32(1) } return 0 } if f1&(libc.Int32FromInt32(MEM_Int)|libc.Int32FromInt32(MEM_IntReal)) != 0 { if f2&int32(MEM_Real) != 0 { return _sqlite3IntFloatCompare(tls, *(*Ti64)(unsafe.Pointer(pMem1)), *(*float64)(unsafe.Pointer(pMem2))) } else { if f2&(libc.Int32FromInt32(MEM_Int)|libc.Int32FromInt32(MEM_IntReal)) != 0 { if *(*Ti64)(unsafe.Pointer(pMem1)) < *(*Ti64)(unsafe.Pointer(pMem2)) { return -int32(1) } if *(*Ti64)(unsafe.Pointer(pMem1)) > *(*Ti64)(unsafe.Pointer(pMem2)) { return +libc.Int32FromInt32(1) } return 0 } else { return -int32(1) } } } if f1&int32(MEM_Real) != 0 { if f2&(libc.Int32FromInt32(MEM_Int)|libc.Int32FromInt32(MEM_IntReal)) != 0 { return -_sqlite3IntFloatCompare(tls, *(*Ti64)(unsafe.Pointer(pMem2)), *(*float64)(unsafe.Pointer(pMem1))) } else { return -int32(1) } } return +libc.Int32FromInt32(1) } /* If one value is a string and the other is a blob, the string is less. ** If both are strings, compare using the collating functions. */ if combined_flags&int32(MEM_Str) != 0 { if f1&int32(MEM_Str) == 0 { return int32(1) } if f2&int32(MEM_Str) == 0 { return -int32(1) } /* The collation sequence must be defined at this point, even if ** the user deletes the collation sequence after the vdbe program is ** compiled (this was not always the case). */ if pColl != 0 { return _vdbeCompareMemString(tls, pMem1, pMem2, pColl, uintptr(0)) } /* If a NULL pointer was passed as the collate function, fall through ** to the blob case and use memcmp(). */ } /* Both values must be blobs. Compare using memcmp(). */ return _sqlite3BlobCompare(tls, pMem1, pMem2) } // C documentation // // /* // ** Invoke sqlite3AtoF() on the text value of pMem. Write the // ** translation of the text input into *pValue. // ** // ** The caller must ensure that pMem->db!=0 and that pMem is in // ** mode MEM_Str or MEM_Blob. // ** // ** Result code invariants: // ** // ** rc==0 => ERROR: Input string not well-formed, or OOM // ** rc<0 => Some prefix of the input is well-formed // ** rc>0 => All of the input is well-formed // ** (rc&2)==0 => The number is expressed as an integer, with no // ** decimal point or eNNN suffix. // */ func _sqlite3MemRealValueRC(tls *libc.TLS, pMem uintptr, pValue uintptr) (r int32) { if (*TMem)(unsafe.Pointer(pMem)).Fz == uintptr(0) { **(**float64)(__ccgo_up(pValue)) = float64(0) return 0 } else { if int32((*TMem)(unsafe.Pointer(pMem)).Fenc) == int32(SQLITE_UTF8) && (int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&int32(MEM_Term) != 0 || _sqlite3VdbeMemZeroTerminateIfAble(tls, pMem) != 0) { return _sqlite3AtoF(tls, (*TMem)(unsafe.Pointer(pMem)).Fz, pValue) } else { if (*TMem)(unsafe.Pointer(pMem)).Fn == 0 { **(**float64)(__ccgo_up(pValue)) = float64(0) return 0 } else { return _sqlite3MemRealValueRCSlowPath(tls, pMem, pValue) } } } return r } // C documentation // // /* // ** This routine implements the uncommon and slower path for // ** sqlite3MemRealValueRC() that has to deal with input strings // ** that are not UTF8 or that are not zero-terminated. It is // ** broken out into a separate no-inline routine so that the // ** main sqlite3MemRealValueRC() routine can avoid unnecessary // ** stack pushes. // ** // ** A text->float translation of pMem->z is written into *pValue. // ** // ** Result code invariants: // ** // ** rc==0 => ERROR: Input string not well-formed, or OOM // ** rc<0 => Some prefix of the input is well-formed // ** rc>0 => All of the input is well-formed // ** (rc&2)==0 => The number is expressed as an integer, with no // ** decimal point or eNNN suffix. // */ func _sqlite3MemRealValueRCSlowPath(tls *libc.TLS, pMem uintptr, pValue uintptr) (r int32) { var i, j, n, rc, v2 int32 var z, zCopy, zCopy1 uintptr _, _, _, _, _, _, _, _ = i, j, n, rc, z, zCopy, zCopy1, v2 rc = SQLITE_OK **(**float64)(__ccgo_up(pValue)) = float64(0) if int32((*TMem)(unsafe.Pointer(pMem)).Fenc) == int32(SQLITE_UTF8) { zCopy = _sqlite3DbStrNDup(tls, (*TMem)(unsafe.Pointer(pMem)).Fdb, (*TMem)(unsafe.Pointer(pMem)).Fz, uint64((*TMem)(unsafe.Pointer(pMem)).Fn)) if zCopy != 0 { rc = _sqlite3AtoF(tls, zCopy, pValue) _sqlite3DbFree(tls, (*TMem)(unsafe.Pointer(pMem)).Fdb, zCopy) } return rc } else { n = (*TMem)(unsafe.Pointer(pMem)).Fn & ^libc.Int32FromInt32(1) zCopy1 = _sqlite3DbMallocRaw(tls, (*TMem)(unsafe.Pointer(pMem)).Fdb, uint64(n/int32(2)+int32(2))) if zCopy1 != 0 { z = (*TMem)(unsafe.Pointer(pMem)).Fz if int32((*TMem)(unsafe.Pointer(pMem)).Fenc) == int32(SQLITE_UTF16LE) { v2 = libc.Int32FromInt32(0) j = v2 i = v2 for { if !(i < n-int32(1)) { break } **(**int8)(__ccgo_up(zCopy1 + uintptr(j))) = **(**int8)(__ccgo_up(z + uintptr(i))) if int32(**(**int8)(__ccgo_up(z + uintptr(i+int32(1))))) != 0 { break } goto _1 _1: ; i = i + int32(2) j = j + 1 } } else { v2 = libc.Int32FromInt32(0) j = v2 i = v2 for { if !(i < n-int32(1)) { break } if int32(**(**int8)(__ccgo_up(z + uintptr(i)))) != 0 { break } **(**int8)(__ccgo_up(zCopy1 + uintptr(j))) = **(**int8)(__ccgo_up(z + uintptr(i+int32(1)))) goto _3 _3: ; i = i + int32(2) j = j + 1 } } **(**int8)(__ccgo_up(zCopy1 + uintptr(j))) = 0 rc = _sqlite3AtoF(tls, zCopy1, pValue) if i < n { rc = -int32(100) } _sqlite3DbFree(tls, (*TMem)(unsafe.Pointer(pMem)).Fdb, zCopy1) } return rc } return r } func _sqlite3MisuseError(tls *libc.TLS, lineno int32) (r int32) { return _sqlite3ReportError(tls, int32(SQLITE_MISUSE), lineno, __ccgo_ts+27553) } // C documentation // // /* // ** Open the sqlite_schema table stored in database number iDb for // ** writing. The table is opened using cursor 0. // */ func _sqlite3OpenSchemaTable(tls *libc.TLS, p uintptr, iDb int32) { var v uintptr _ = v v = _sqlite3GetVdbe(tls, p) _sqlite3TableLock(tls, p, iDb, uint32(SCHEMA_ROOT), uint8(1), __ccgo_ts+7501) _sqlite3VdbeAddOp4Int(tls, v, int32(OP_OpenWrite), 0, int32(SCHEMA_ROOT), iDb, int32(5)) if (*TParse)(unsafe.Pointer(p)).FnTab == 0 { (*TParse)(unsafe.Pointer(p)).FnTab = int32(1) } } // C documentation // // /* // ** Generate code that will // ** // ** (1) acquire a lock for table pTab then // ** (2) open pTab as cursor iCur. // ** // ** If pTab is a WITHOUT ROWID table, then it is the PRIMARY KEY index // ** for that table that is actually opened. // */ func _sqlite3OpenTable(tls *libc.TLS, pParse uintptr, iCur int32, iDb int32, pTab uintptr, opcode int32) { var pPk, v uintptr var v1 int32 _, _, _ = pPk, v, v1 v = (*TParse)(unsafe.Pointer(pParse)).FpVdbe if !((*Tsqlite3)(unsafe.Pointer((*TParse)(unsafe.Pointer(pParse)).Fdb)).FnoSharedCache != 0) { if opcode == int32(OP_OpenWrite) { v1 = int32(1) } else { v1 = 0 } _sqlite3TableLock(tls, pParse, iDb, (*TTable)(unsafe.Pointer(pTab)).Ftnum, uint8(v1), (*TTable)(unsafe.Pointer(pTab)).FzName) } if (*TTable)(unsafe.Pointer(pTab)).FtabFlags&uint32(TF_WithoutRowid) == uint32(0) { _sqlite3VdbeAddOp4Int(tls, v, opcode, iCur, int32((*TTable)(unsafe.Pointer(pTab)).Ftnum), iDb, int32((*TTable)(unsafe.Pointer(pTab)).FnNVCol)) } else { pPk = _sqlite3PrimaryKeyIndex(tls, pTab) _sqlite3VdbeAddOp3(tls, v, opcode, iCur, int32((*TIndex)(unsafe.Pointer(pPk)).Ftnum), iDb) _sqlite3VdbeSetP4KeyInfo(tls, pParse, pPk) } } func _sqlite3OsOpenMalloc(tls *libc.TLS, pVfs uintptr, zFile uintptr, ppFile uintptr, flags int32, pOutFlags uintptr) (r int32) { var pFile uintptr var rc int32 _, _ = pFile, rc pFile = _sqlite3MallocZero(tls, uint64((*Tsqlite3_vfs)(unsafe.Pointer(pVfs)).FszOsFile)) if pFile != 0 { rc = _sqlite3OsOpen(tls, pVfs, zFile, pFile, flags, pOutFlags) if rc != SQLITE_OK { Xsqlite3_free(tls, pFile) **(**uintptr)(__ccgo_up(ppFile)) = uintptr(0) } else { **(**uintptr)(__ccgo_up(ppFile)) = pFile } } else { **(**uintptr)(__ccgo_up(ppFile)) = uintptr(0) rc = int32(SQLITE_NOMEM) } return rc } // C documentation // // /* Create a TK_IS or TK_ISNOT operator, perhaps optimized to // ** TK_ISNULL or TK_NOTNULL or TK_TRUEFALSE. */ func _sqlite3PExprIs(tls *libc.TLS, pParse uintptr, op int32, pLeft uintptr, pRight uintptr) (r uintptr) { var v1 int32 _ = v1 if pRight != 0 && int32((*TExpr)(unsafe.Pointer(pRight)).Fop) == int32(TK_NULL) { _sqlite3ExprDeferredDelete(tls, pParse, pRight) if op == int32(TK_IS) { v1 = int32(TK_ISNULL) } else { v1 = int32(TK_NOTNULL) } return _sqlite3PExprIsNull(tls, pParse, v1, pLeft) } return _sqlite3PExpr(tls, pParse, op, pLeft, pRight) } // C documentation // // /* Create a TK_ISNULL or TK_NOTNULL expression, perhaps optimized to // ** to TK_TRUEFALSE, if possible */ func _sqlite3PExprIsNull(tls *libc.TLS, pParse uintptr, op int32, pLeft uintptr) (r uintptr) { var p uintptr _ = p p = pLeft for int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_UPLUS) || int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_UMINUS) { p = (*TExpr)(unsafe.Pointer(p)).FpLeft } switch int32((*TExpr)(unsafe.Pointer(p)).Fop) { case int32(TK_INTEGER): fallthrough case int32(TK_STRING): fallthrough case int32(TK_FLOAT): fallthrough case int32(TK_BLOB): _sqlite3ExprDeferredDelete(tls, pParse, pLeft) return _sqlite3ExprInt32(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, libc.BoolInt32(op == int32(TK_NOTNULL))) default: break } return _sqlite3PExpr(tls, pParse, op, pLeft, uintptr(0)) } // C documentation // // /* // ** Begin a write-transaction on the specified pager object. If a // ** write-transaction has already been opened, this function is a no-op. // ** // ** If the exFlag argument is false, then acquire at least a RESERVED // ** lock on the database file. If exFlag is true, then acquire at least // ** an EXCLUSIVE lock. If such a lock is already held, no locking // ** functions need be called. // ** // ** If the subjInMemory argument is non-zero, then any sub-journal opened // ** within this transaction will be opened as an in-memory file. This // ** has no effect if the sub-journal is already opened (as it may be when // ** running in exclusive mode) or if the transaction does not require a // ** sub-journal. If the subjInMemory argument is zero, then any required // ** sub-journal is implemented in-memory if pPager is an in-memory database, // ** or using a temporary file otherwise. // */ func _sqlite3PagerBegin(tls *libc.TLS, pPager uintptr, exFlag int32, subjInMemory int32) (r int32) { var rc int32 _ = rc rc = SQLITE_OK if (*TPager)(unsafe.Pointer(pPager)).FerrCode != 0 { return (*TPager)(unsafe.Pointer(pPager)).FerrCode } (*TPager)(unsafe.Pointer(pPager)).FsubjInMemory = uint8(subjInMemory) if int32((*TPager)(unsafe.Pointer(pPager)).FeState) == int32(PAGER_READER) { if (*TPager)(unsafe.Pointer(pPager)).FpWal != uintptr(0) { /* If the pager is configured to use locking_mode=exclusive, and an ** exclusive lock on the database is not already held, obtain it now. */ if (*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0 && _sqlite3WalExclusiveMode(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal, -int32(1)) != 0 { rc = _pagerLockDb(tls, pPager, int32(EXCLUSIVE_LOCK)) if rc != SQLITE_OK { return rc } _sqlite3WalExclusiveMode(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal, int32(1)) } /* Grab the write lock on the log file. If successful, upgrade to ** PAGER_RESERVED state. Otherwise, return an error code to the caller. ** The busy-handler is not invoked if another connection already ** holds the write-lock. If possible, the upper layer will call it. */ rc = _sqlite3WalBeginWriteTransaction(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal) } else { /* Obtain a RESERVED lock on the database file. If the exFlag parameter ** is true, then immediately upgrade this to an EXCLUSIVE lock. The ** busy-handler callback can be used when upgrading to the EXCLUSIVE ** lock, but not when obtaining the RESERVED lock. */ rc = _pagerLockDb(tls, pPager, int32(RESERVED_LOCK)) if rc == SQLITE_OK && exFlag != 0 { rc = _pager_wait_on_lock(tls, pPager, int32(EXCLUSIVE_LOCK)) } } if rc == SQLITE_OK { /* Change to WRITER_LOCKED state. ** ** WAL mode sets Pager.eState to PAGER_WRITER_LOCKED or CACHEMOD ** when it has an open transaction, but never to DBMOD or FINISHED. ** This is because in those states the code to roll back savepoint ** transactions may copy data from the sub-journal into the database ** file as well as into the page cache. Which would be incorrect in ** WAL mode. */ (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_WRITER_LOCKED) (*TPager)(unsafe.Pointer(pPager)).FdbHintSize = (*TPager)(unsafe.Pointer(pPager)).FdbSize (*TPager)(unsafe.Pointer(pPager)).FdbFileSize = (*TPager)(unsafe.Pointer(pPager)).FdbSize (*TPager)(unsafe.Pointer(pPager)).FdbOrigSize = (*TPager)(unsafe.Pointer(pPager)).FdbSize (*TPager)(unsafe.Pointer(pPager)).FjournalOff = 0 } } return rc } // C documentation // // /* // ** This function is called when the user invokes "PRAGMA wal_checkpoint", // ** "PRAGMA wal_blocking_checkpoint" or calls the sqlite3_wal_checkpoint() // ** or wal_blocking_checkpoint() API functions. // ** // ** Parameter eMode is one of SQLITE_CHECKPOINT_PASSIVE, FULL or RESTART. // */ func _sqlite3PagerCheckpoint(tls *libc.TLS, pPager uintptr, db uintptr, eMode int32, pnLog uintptr, pnCkpt uintptr) (r int32) { var rc int32 var v1 uintptr _, _ = rc, v1 rc = SQLITE_OK if (*TPager)(unsafe.Pointer(pPager)).FpWal == uintptr(0) && int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) == int32(PAGER_JOURNALMODE_WAL) { /* This only happens when a database file is zero bytes in size opened and ** then "PRAGMA journal_mode=WAL" is run and then sqlite3_wal_checkpoint() ** is invoked without any intervening transactions. We need to start ** a transaction to initialize pWal. The PRAGMA table_list statement is ** used for this since it starts transactions on every database file, ** including all ATTACHed databases. This seems expensive for a single ** sqlite3_wal_checkpoint() call, but it happens very rarely. ** https://sqlite.org/forum/forumpost/fd0f19d229156939 */ Xsqlite3_exec(tls, db, __ccgo_ts+5475, uintptr(0), uintptr(0), uintptr(0)) } if (*TPager)(unsafe.Pointer(pPager)).FpWal != 0 { if eMode <= SQLITE_CHECKPOINT_PASSIVE { v1 = uintptr(0) } else { v1 = (*TPager)(unsafe.Pointer(pPager)).FxBusyHandler } rc = _sqlite3WalCheckpoint(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal, db, eMode, v1, (*TPager)(unsafe.Pointer(pPager)).FpBusyHandlerArg, int32((*TPager)(unsafe.Pointer(pPager)).FwalSyncFlags), int32((*TPager)(unsafe.Pointer(pPager)).FpageSize), (*TPager)(unsafe.Pointer(pPager)).FpTmpSpace, pnLog, pnCkpt) } return rc } // C documentation // // /* // ** Unless this is an in-memory or temporary database, clear the pager cache. // */ func _sqlite3PagerClearCache(tls *libc.TLS, pPager uintptr) { if int32((*TPager)(unsafe.Pointer(pPager)).FtempFile) == 0 { _pager_reset(tls, pPager) } } // C documentation // // /* // ** Shutdown the page cache. Free all memory and close all files. // ** // ** If a transaction was in progress when this routine is called, that // ** transaction is rolled back. All outstanding pages are invalidated // ** and their memory is freed. Any attempt to use a page associated // ** with this page cache after this function returns will likely // ** result in a coredump. // ** // ** This function always succeeds. If a transaction is active an attempt // ** is made to roll it back. If an error occurs during the rollback // ** a hot journal may be left in the filesystem but no error is returned // ** to the caller. // */ func _sqlite3PagerClose(tls *libc.TLS, pPager uintptr, db uintptr) (r int32) { var a, pTmp uintptr _, _ = a, pTmp pTmp = (*TPager)(unsafe.Pointer(pPager)).FpTmpSpace _sqlite3BeginBenignMalloc(tls) _pagerFreeMapHdrs(tls, pPager) /* pPager->errCode = 0; */ (*TPager)(unsafe.Pointer(pPager)).FexclusiveMode = uint8(0) a = uintptr(0) if db != 0 && uint64(0) == (*Tsqlite3)(unsafe.Pointer(db)).Fflags&uint64(SQLITE_NoCkptOnClose) && SQLITE_OK == _databaseIsUnmoved(tls, pPager) { a = pTmp } _sqlite3WalClose(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal, db, int32((*TPager)(unsafe.Pointer(pPager)).FwalSyncFlags), int32((*TPager)(unsafe.Pointer(pPager)).FpageSize), a) (*TPager)(unsafe.Pointer(pPager)).FpWal = uintptr(0) _pager_reset(tls, pPager) if (*TPager)(unsafe.Pointer(pPager)).FmemDb != 0 { _pager_unlock(tls, pPager) } else { /* If it is open, sync the journal file before calling UnlockAndRollback. ** If this is not done, then an unsynced portion of the open journal ** file may be played back into the database. If a power failure occurs ** while this is happening, the database could become corrupt. ** ** If an error occurs while trying to sync the journal, shift the pager ** into the ERROR state. This causes UnlockAndRollback to unlock the ** database and close the journal file without attempting to roll it ** back or finalize it. The next database user will have to do hot-journal ** rollback before accessing the database file. */ if (*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fjfd)).FpMethods != uintptr(0) { _pager_error(tls, pPager, _pagerSyncHotJournal(tls, pPager)) } _pagerUnlockAndRollback(tls, pPager) } _sqlite3EndBenignMalloc(tls) _sqlite3OsClose(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd) _sqlite3OsClose(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd) _sqlite3PageFree(tls, pTmp) _sqlite3PcacheClose(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache) Xsqlite3_free(tls, pPager) return SQLITE_OK } // C documentation // // /* // ** This function is called to close the connection to the log file prior // ** to switching from WAL to rollback mode. // ** // ** Before closing the log file, this function attempts to take an // ** EXCLUSIVE lock on the database file. If this cannot be obtained, an // ** error (SQLITE_BUSY) is returned and the log connection is not closed. // ** If successful, the EXCLUSIVE lock is not released before returning. // */ func _sqlite3PagerCloseWal(tls *libc.TLS, pPager uintptr, db uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 var _ /* logexists at bp+0 */ int32 _ = rc rc = SQLITE_OK /* If the log file is not already open, but does exist in the file-system, ** it may need to be checkpointed before the connection can switch to ** rollback mode. Open it now so this can happen. */ if !((*TPager)(unsafe.Pointer(pPager)).FpWal != 0) { **(**int32)(__ccgo_up(bp)) = 0 rc = _pagerLockDb(tls, pPager, int32(SHARED_LOCK)) if rc == SQLITE_OK { rc = _sqlite3OsAccess(tls, (*TPager)(unsafe.Pointer(pPager)).FpVfs, (*TPager)(unsafe.Pointer(pPager)).FzWal, SQLITE_ACCESS_EXISTS, bp) } if rc == SQLITE_OK && **(**int32)(__ccgo_up(bp)) != 0 { rc = _pagerOpenWal(tls, pPager) } } /* Checkpoint and close the log. Because an EXCLUSIVE lock is held on ** the database file, the log and log-summary files will be deleted. */ if rc == SQLITE_OK && (*TPager)(unsafe.Pointer(pPager)).FpWal != 0 { rc = _pagerExclusiveLock(tls, pPager) if rc == SQLITE_OK { rc = _sqlite3WalClose(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal, db, int32((*TPager)(unsafe.Pointer(pPager)).FwalSyncFlags), int32((*TPager)(unsafe.Pointer(pPager)).FpageSize), (*TPager)(unsafe.Pointer(pPager)).FpTmpSpace) (*TPager)(unsafe.Pointer(pPager)).FpWal = uintptr(0) _pagerFixMaplimit(tls, pPager) if rc != 0 && !((*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0) { _pagerUnlockDb(tls, pPager, int32(SHARED_LOCK)) } } } return rc } // C documentation // // /* // ** Sync the database file for the pager pPager. zSuper points to the name // ** of a super-journal file that should be written into the individual // ** journal file. zSuper may be NULL, which is interpreted as no // ** super-journal (a single database transaction). // ** // ** This routine ensures that: // ** // ** * The database file change-counter is updated, // ** * the journal is synced (unless the atomic-write optimization is used), // ** * all dirty pages are written to the database file, // ** * the database file is truncated (if required), and // ** * the database file synced. // ** // ** The only thing that remains to commit the transaction is to finalize // ** (delete, truncate or zero the first part of) the journal file (or // ** delete the super-journal file if specified). // ** // ** Note that if zSuper==NULL, this does not overwrite a previous value // ** passed to an sqlite3PagerCommitPhaseOne() call. // ** // ** If the final parameter - noSync - is true, then the database file itself // ** is not synced. The caller must call sqlite3PagerSync() directly to // ** sync the database file before calling CommitPhaseTwo() to delete the // ** journal file in this case. // */ func _sqlite3PagerCommitPhaseOne(tls *libc.TLS, pPager uintptr, zSuper uintptr, noSync int32) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var nNew TPgno var pList uintptr var rc int32 var _ /* pPageOne at bp+0 */ uintptr _, _, _ = nNew, pList, rc rc = SQLITE_OK /* Return code */ /* If a prior error occurred, report that error again. */ if (*TPager)(unsafe.Pointer(pPager)).FerrCode != 0 { return (*TPager)(unsafe.Pointer(pPager)).FerrCode } /* Provide the ability to easily simulate an I/O error during testing */ if _sqlite3FaultSim(tls, int32(400)) != 0 { return int32(SQLITE_IOERR) } /* If no database changes have been made, return early. */ if int32((*TPager)(unsafe.Pointer(pPager)).FeState) < int32(PAGER_WRITER_CACHEMOD) { return SQLITE_OK } if 0 == _pagerFlushOnCommit(tls, pPager, int32(1)) { /* If this is an in-memory db, or no pages have been written to, or this ** function has already been called, it is mostly a no-op. However, any ** backup in progress needs to be restarted. */ _sqlite3BackupRestart(tls, (*TPager)(unsafe.Pointer(pPager)).FpBackup) } else { if (*TPager)(unsafe.Pointer(pPager)).FpWal != uintptr(0) { **(**uintptr)(__ccgo_up(bp)) = uintptr(0) pList = _sqlite3PcacheDirtyList(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache) if pList == uintptr(0) { /* Must have at least one page for the WAL commit flag. ** Ticket [2d1a5c67dfc2363e44f29d9bbd57f] 2011-05-18 */ rc = _sqlite3PagerGet(tls, pPager, uint32(1), bp, 0) pList = **(**uintptr)(__ccgo_up(bp)) (*TPgHdr)(unsafe.Pointer(pList)).FpDirty = uintptr(0) } if pList != 0 { rc = _pagerWalFrames(tls, pPager, pList, (*TPager)(unsafe.Pointer(pPager)).FdbSize, int32(1)) } _sqlite3PagerUnref(tls, **(**uintptr)(__ccgo_up(bp))) if rc == SQLITE_OK { _sqlite3PcacheCleanAll(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache) } } else { /* The bBatch boolean is true if the batch-atomic-write commit method ** should be used. No rollback journal is created if batch-atomic-write ** is enabled. */ rc = _pager_incr_changecounter(tls, pPager, 0) if rc != SQLITE_OK { goto commit_phase_one_exit } /* Write the super-journal name into the journal file. If a ** super-journal file name has already been written to the journal file, ** or if zSuper is NULL (no super-journal), then this call is a no-op. */ rc = _writeSuperJournal(tls, pPager, zSuper) if rc != SQLITE_OK { goto commit_phase_one_exit } /* Sync the journal file and write all dirty pages to the database. ** If the atomic-update optimization is being used, this sync will not ** create the journal file or perform any real IO. ** ** Because the change-counter page was just modified, unless the ** atomic-update optimization is used it is almost certain that the ** journal requires a sync here. However, in locking_mode=exclusive ** on a system under memory pressure it is just possible that this is ** not the case. In this case it is likely enough that the redundant ** xSync() call will be changed to a no-op by the OS anyhow. */ rc = _syncJournal(tls, pPager, 0) if rc != SQLITE_OK { goto commit_phase_one_exit } pList = _sqlite3PcacheDirtyList(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache) if true { rc = _pager_write_pagelist(tls, pPager, pList) } if rc != SQLITE_OK { goto commit_phase_one_exit } _sqlite3PcacheCleanAll(tls, (*TPager)(unsafe.Pointer(pPager)).FpPCache) /* If the file on disk is smaller than the database image, use ** pager_truncate to grow the file here. This can happen if the database ** image was extended as part of the current transaction and then the ** last page in the db image moved to the free-list. In this case the ** last page is never written out to disk, leaving the database file ** undersized. Fix this now if it is the case. */ if (*TPager)(unsafe.Pointer(pPager)).FdbSize > (*TPager)(unsafe.Pointer(pPager)).FdbFileSize { nNew = (*TPager)(unsafe.Pointer(pPager)).FdbSize - libc.BoolUint32((*TPager)(unsafe.Pointer(pPager)).FdbSize == (*TPager)(unsafe.Pointer(pPager)).FlckPgno) rc = _pager_truncate(tls, pPager, nNew) if rc != SQLITE_OK { goto commit_phase_one_exit } } /* Finally, sync the database file. */ if !(noSync != 0) { rc = _sqlite3PagerSync(tls, pPager, zSuper) } } } goto commit_phase_one_exit commit_phase_one_exit: ; if rc == SQLITE_OK && !((*TPager)(unsafe.Pointer(pPager)).FpWal != libc.UintptrFromInt32(0)) { (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_WRITER_FINISHED) } return rc } // C documentation // // /* // ** When this function is called, the database file has been completely // ** updated to reflect the changes made by the current transaction and // ** synced to disk. The journal file still exists in the file-system // ** though, and if a failure occurs at this point it will eventually // ** be used as a hot-journal and the current transaction rolled back. // ** // ** This function finalizes the journal file, either by deleting, // ** truncating or partially zeroing it, so that it cannot be used // ** for hot-journal rollback. Once this is done the transaction is // ** irrevocably committed. // ** // ** If an error occurs, an IO error code is returned and the pager // ** moves into the error state. Otherwise, SQLITE_OK is returned. // */ func _sqlite3PagerCommitPhaseTwo(tls *libc.TLS, pPager uintptr) (r int32) { var rc int32 _ = rc rc = SQLITE_OK /* Return code */ /* This routine should not be called if a prior error has occurred. ** But if (due to a coding error elsewhere in the system) it does get ** called, just return the same error code without doing anything. */ if (*TPager)(unsafe.Pointer(pPager)).FerrCode != 0 { return (*TPager)(unsafe.Pointer(pPager)).FerrCode } (*TPager)(unsafe.Pointer(pPager)).FiDataVersion = (*TPager)(unsafe.Pointer(pPager)).FiDataVersion + 1 /* An optimization. If the database was not actually modified during ** this transaction, the pager is running in exclusive-mode and is ** using persistent journals, then this function is a no-op. ** ** The start of the journal file currently contains a single journal ** header with the nRec field set to 0. If such a journal is used as ** a hot-journal during hot-journal rollback, 0 changes will be made ** to the database file. So there is no need to zero the journal ** header. Since the pager is in exclusive mode, there is no need ** to drop any locks either. */ if int32((*TPager)(unsafe.Pointer(pPager)).FeState) == int32(PAGER_WRITER_LOCKED) && (*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0 && int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) == int32(PAGER_JOURNALMODE_PERSIST) { (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_READER) return SQLITE_OK } rc = _pager_end_transaction(tls, pPager, int32((*TPager)(unsafe.Pointer(pPager)).FsetSuper), int32(1)) return _pager_error(tls, pPager, rc) } // C documentation // // /* // ** Return the current journal mode. // */ func _sqlite3PagerGetJournalMode(tls *libc.TLS, pPager uintptr) (r int32) { return int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) } // C documentation // // /* // ** Get/set the locking-mode for this pager. Parameter eMode must be one // ** of PAGER_LOCKINGMODE_QUERY, PAGER_LOCKINGMODE_NORMAL or // ** PAGER_LOCKINGMODE_EXCLUSIVE. If the parameter is not _QUERY, then // ** the locking-mode is set to the value specified. // ** // ** The returned value is either PAGER_LOCKINGMODE_NORMAL or // ** PAGER_LOCKINGMODE_EXCLUSIVE, indicating the current (possibly updated) // ** locking-mode. // */ func _sqlite3PagerLockingMode(tls *libc.TLS, pPager uintptr, eMode int32) (r int32) { if eMode >= 0 && !((*TPager)(unsafe.Pointer(pPager)).FtempFile != 0) && !(_sqlite3WalHeapMemory(tls, (*TPager)(unsafe.Pointer(pPager)).FpWal) != 0) { (*TPager)(unsafe.Pointer(pPager)).FexclusiveMode = uint8(eMode) } return int32((*TPager)(unsafe.Pointer(pPager)).FexclusiveMode) } // C documentation // // /* // ** Return TRUE if the pager is in a state where it is OK to change the // ** journalmode. Journalmode changes can only happen when the database // ** is unmodified. // */ func _sqlite3PagerOkToChangeJournalMode(tls *libc.TLS, pPager uintptr) (r int32) { if int32((*TPager)(unsafe.Pointer(pPager)).FeState) >= int32(PAGER_WRITER_CACHEMOD) { return 0 } if (*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fjfd)).FpMethods != uintptr(0) && (*TPager)(unsafe.Pointer(pPager)).FjournalOff > 0 { return 0 } return int32(1) } // C documentation // // /* // ** This function may only be called when a read-transaction is open on // ** the pager. It returns the total number of pages in the database. // ** // ** However, if the file is between 1 and bytes in size, then // ** this is considered a 1 page file. // */ func _sqlite3PagerPagecount(tls *libc.TLS, pPager uintptr, pnPage uintptr) { **(**int32)(__ccgo_up(pnPage)) = int32((*TPager)(unsafe.Pointer(pPager)).FdbSize) } // C documentation // // /* // ** If a write transaction is open, then all changes made within the // ** transaction are reverted and the current write-transaction is closed. // ** The pager falls back to PAGER_READER state if successful, or PAGER_ERROR // ** state if an error occurs. // ** // ** If the pager is already in PAGER_ERROR state when this function is called, // ** it returns Pager.errCode immediately. No work is performed in this case. // ** // ** Otherwise, in rollback mode, this function performs two functions: // ** // ** 1) It rolls back the journal file, restoring all database file and // ** in-memory cache pages to the state they were in when the transaction // ** was opened, and // ** // ** 2) It finalizes the journal file, so that it is not used for hot // ** rollback at any point in the future. // ** // ** Finalization of the journal file (task 2) is only performed if the // ** rollback is successful. // ** // ** In WAL mode, all cache-entries containing data modified within the // ** current transaction are either expelled from the cache or reverted to // ** their pre-transaction state by re-reading data from the database or // ** WAL files. The WAL transaction is then closed. // */ func _sqlite3PagerRollback(tls *libc.TLS, pPager uintptr) (r int32) { var eState, rc, rc2 int32 _, _, _ = eState, rc, rc2 rc = SQLITE_OK /* Return code */ /* PagerRollback() is a no-op if called in READER or OPEN state. If ** the pager is already in the ERROR state, the rollback is not ** attempted here. Instead, the error code is returned to the caller. */ if int32((*TPager)(unsafe.Pointer(pPager)).FeState) == int32(PAGER_ERROR) { return (*TPager)(unsafe.Pointer(pPager)).FerrCode } if int32((*TPager)(unsafe.Pointer(pPager)).FeState) <= int32(PAGER_READER) { return SQLITE_OK } if (*TPager)(unsafe.Pointer(pPager)).FpWal != uintptr(0) { rc = _sqlite3PagerSavepoint(tls, pPager, int32(SAVEPOINT_ROLLBACK), -int32(1)) rc2 = _pager_end_transaction(tls, pPager, int32((*TPager)(unsafe.Pointer(pPager)).FsetSuper), 0) if rc == SQLITE_OK { rc = rc2 } } else { if !((*Tsqlite3_file)(unsafe.Pointer((*TPager)(unsafe.Pointer(pPager)).Fjfd)).FpMethods != libc.UintptrFromInt32(0)) || int32((*TPager)(unsafe.Pointer(pPager)).FeState) == int32(PAGER_WRITER_LOCKED) { eState = int32((*TPager)(unsafe.Pointer(pPager)).FeState) rc = _pager_end_transaction(tls, pPager, 0, 0) if !((*TPager)(unsafe.Pointer(pPager)).FmemDb != 0) && eState > int32(PAGER_WRITER_LOCKED) { /* This can happen using journal_mode=off. Move the pager to the error ** state to indicate that the contents of the cache may not be trusted. ** Any active readers will get SQLITE_ABORT. */ (*TPager)(unsafe.Pointer(pPager)).FerrCode = int32(SQLITE_ABORT) (*TPager)(unsafe.Pointer(pPager)).FeState = uint8(PAGER_ERROR) _setGetterMethod(tls, pPager) return rc } } else { rc = _pager_playback(tls, pPager, 0) } } /* If an error occurs during a ROLLBACK, we can no longer trust the pager ** cache. So call pager_error() on the way out to make any error persistent. */ return _pager_error(tls, pPager, rc) } // C documentation // // /* // ** Set the journal-mode for this pager. Parameter eMode must be one of: // ** // ** PAGER_JOURNALMODE_DELETE // ** PAGER_JOURNALMODE_TRUNCATE // ** PAGER_JOURNALMODE_PERSIST // ** PAGER_JOURNALMODE_OFF // ** PAGER_JOURNALMODE_MEMORY // ** PAGER_JOURNALMODE_WAL // ** // ** The journalmode is set to the value specified if the change is allowed. // ** The change may be disallowed for the following reasons: // ** // ** * An in-memory database can only have its journal_mode set to _OFF // ** or _MEMORY. // ** // ** * Temporary databases cannot have _WAL journalmode. // ** // ** The returned indicate the current (possibly updated) journal-mode. // */ func _sqlite3PagerSetJournalMode(tls *libc.TLS, pPager uintptr, eMode int32) (r int32) { var eOld Tu8 var rc, state int32 _, _, _ = eOld, rc, state eOld = (*TPager)(unsafe.Pointer(pPager)).FjournalMode /* Prior journalmode */ /* The eMode parameter is always valid */ /* This routine is only called from the OP_JournalMode opcode, and ** the logic there will never allow a temporary file to be changed ** to WAL mode. */ /* Do allow the journalmode of an in-memory database to be set to ** anything other than MEMORY or OFF */ if (*TPager)(unsafe.Pointer(pPager)).FmemDb != 0 { if eMode != int32(PAGER_JOURNALMODE_MEMORY) && eMode != int32(PAGER_JOURNALMODE_OFF) { eMode = int32(eOld) } } if eMode != int32(eOld) { /* Change the journal mode. */ (*TPager)(unsafe.Pointer(pPager)).FjournalMode = uint8(eMode) /* When transitioning from TRUNCATE or PERSIST to any other journal ** mode except WAL, unless the pager is in locking_mode=exclusive mode, ** delete the journal file. */ if !((*TPager)(unsafe.Pointer(pPager)).FexclusiveMode != 0) && int32(eOld)&int32(5) == int32(1) && eMode&int32(1) == 0 { /* In this case we would like to delete the journal file. If it is ** not possible, then that is not a problem. Deleting the journal file ** here is an optimization only. ** ** Before deleting the journal file, obtain a RESERVED lock on the ** database file. This ensures that the journal file is not deleted ** while it is in use by some other client. */ _sqlite3OsClose(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd) if int32((*TPager)(unsafe.Pointer(pPager)).FeLock) >= int32(RESERVED_LOCK) { _sqlite3OsDelete(tls, (*TPager)(unsafe.Pointer(pPager)).FpVfs, (*TPager)(unsafe.Pointer(pPager)).FzJournal, 0) } else { rc = SQLITE_OK state = int32((*TPager)(unsafe.Pointer(pPager)).FeState) if state == PAGER_OPEN { rc = _sqlite3PagerSharedLock(tls, pPager) } if int32((*TPager)(unsafe.Pointer(pPager)).FeState) == int32(PAGER_READER) { rc = _pagerLockDb(tls, pPager, int32(RESERVED_LOCK)) } if rc == SQLITE_OK { _sqlite3OsDelete(tls, (*TPager)(unsafe.Pointer(pPager)).FpVfs, (*TPager)(unsafe.Pointer(pPager)).FzJournal, 0) } if rc == SQLITE_OK && state == int32(PAGER_READER) { _pagerUnlockDb(tls, pPager, int32(SHARED_LOCK)) } else { if state == PAGER_OPEN { _pager_unlock(tls, pPager) } } } } else { if eMode == int32(PAGER_JOURNALMODE_OFF) || eMode == int32(PAGER_JOURNALMODE_MEMORY) { _sqlite3OsClose(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd) } } } /* Return the new journal mode */ return int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) } // C documentation // // /* // ** Sync the database file to disk. This is a no-op for in-memory databases // ** or pages with the Pager.noSync flag set. // ** // ** If successful, or if called on a pager for which it is a no-op, this // ** function returns SQLITE_OK. Otherwise, an IO error code is returned. // */ func _sqlite3PagerSync(tls *libc.TLS, pPager uintptr, zSuper uintptr) (r int32) { var pArg uintptr var rc int32 _, _ = pArg, rc rc = SQLITE_OK pArg = zSuper rc = _sqlite3OsFileControl(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, int32(SQLITE_FCNTL_SYNC), pArg) if rc == int32(SQLITE_NOTFOUND) { rc = SQLITE_OK } if rc == SQLITE_OK && !((*TPager)(unsafe.Pointer(pPager)).FnoSync != 0) { rc = _sqlite3OsSync(tls, (*TPager)(unsafe.Pointer(pPager)).Ffd, int32((*TPager)(unsafe.Pointer(pPager)).FsyncFlags)) } return rc } // C documentation // // /* // ** Release a page reference. // ** // ** The sqlite3PagerUnref() and sqlite3PagerUnrefNotNull() may only be used // ** if we know that the page being released is not the last reference to page1. // ** The btree layer always holds page1 open until the end, so these first // ** two routines can be used to release any page other than BtShared.pPage1. // ** The assert() at tag-20230419-2 proves that this constraint is always // ** honored. // ** // ** Use sqlite3PagerUnrefPageOne() to release page1. This latter routine // ** checks the total number of outstanding pages and if the number of // ** pages reaches zero it drops the database lock. // */ func _sqlite3PagerUnrefNotNull(tls *libc.TLS, pPg uintptr) { if int32((*TDbPage)(unsafe.Pointer(pPg)).Fflags)&int32(PGHDR_MMAP) != 0 { /* Page1 is never memory mapped */ _pagerReleaseMapPage(tls, pPg) } else { _sqlite3PcacheRelease(tls, pPg) } /* Do not use this routine to release the last reference to page1 */ /* tag-20230419-2 */ } // C documentation // // /* // ** Mark a data page as writeable. This routine must be called before // ** making changes to a page. The caller must check the return value // ** of this function and be careful not to change any page data unless // ** this routine returns SQLITE_OK. // ** // ** The difference between this function and pager_write() is that this // ** function also deals with the special case where 2 or more pages // ** fit on a single disk sector. In this case all co-resident pages // ** must have been written to the journal file before returning. // ** // ** If an error occurs, SQLITE_NOMEM or an IO error code is returned // ** as appropriate. Otherwise, SQLITE_OK. // */ func _sqlite3PagerWrite(tls *libc.TLS, pPg uintptr) (r int32) { var pPager uintptr _ = pPager pPager = (*TPgHdr)(unsafe.Pointer(pPg)).FpPager if int32((*TPgHdr)(unsafe.Pointer(pPg)).Fflags)&int32(PGHDR_WRITEABLE) != 0 && (*TPager)(unsafe.Pointer(pPager)).FdbSize >= (*TPgHdr)(unsafe.Pointer(pPg)).Fpgno { if (*TPager)(unsafe.Pointer(pPager)).FnSavepoint != 0 { return _subjournalPageIfRequired(tls, pPg) } return SQLITE_OK } else { if (*TPager)(unsafe.Pointer(pPager)).FerrCode != 0 { return (*TPager)(unsafe.Pointer(pPager)).FerrCode } else { if (*TPager)(unsafe.Pointer(pPager)).FsectorSize > uint32((*TPager)(unsafe.Pointer(pPager)).FpageSize) { return _pagerWriteLargeSector(tls, pPg) } else { return _pager_write(tls, pPg) } } } return r } /* ** Return TRUE if the page given in the argument was previously passed ** to sqlite3PagerWrite(). In other words, return TRUE if it is ok ** to change the content of the page. */ // C documentation // // /* // ** Free all memory allocations in the pParse object // */ func _sqlite3ParseObjectReset(tls *libc.TLS, pParse uintptr) { var db, pCleanup uintptr var v1 int32 _, _, _ = db, pCleanup, v1 db = (*TParse)(unsafe.Pointer(pParse)).Fdb if (*TParse)(unsafe.Pointer(pParse)).FaTableLock != 0 { _sqlite3DbNNFreeNN(tls, db, (*TParse)(unsafe.Pointer(pParse)).FaTableLock) } for (*TParse)(unsafe.Pointer(pParse)).FpCleanup != 0 { pCleanup = (*TParse)(unsafe.Pointer(pParse)).FpCleanup (*TParse)(unsafe.Pointer(pParse)).FpCleanup = (*TParseCleanup)(unsafe.Pointer(pCleanup)).FpNext (*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(&struct{ uintptr }{(*TParseCleanup)(unsafe.Pointer(pCleanup)).FxCleanup})))(tls, db, (*TParseCleanup)(unsafe.Pointer(pCleanup)).FpPtr) _sqlite3DbNNFreeNN(tls, db, pCleanup) } if (*TParse)(unsafe.Pointer(pParse)).FaLabel != 0 { _sqlite3DbNNFreeNN(tls, db, (*TParse)(unsafe.Pointer(pParse)).FaLabel) } if (*TParse)(unsafe.Pointer(pParse)).FpConstExpr != 0 { _sqlite3ExprListDelete(tls, db, (*TParse)(unsafe.Pointer(pParse)).FpConstExpr) } (*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FbDisable -= uint32((*TParse)(unsafe.Pointer(pParse)).FdisableLookaside) if (*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FbDisable != 0 { v1 = 0 } else { v1 = int32((*Tsqlite3)(unsafe.Pointer(db)).Flookaside.FszTrue) } (*Tsqlite3)(unsafe.Pointer(db)).Flookaside.Fsz = uint16(v1) (*Tsqlite3)(unsafe.Pointer(db)).FpParse = (*TParse)(unsafe.Pointer(pParse)).FpOuterParse } // C documentation // // /* // ** Return the fallback token corresponding to canonical token iToken, or // ** 0 if iToken has no fallback. // */ func _sqlite3ParserFallback(tls *libc.TLS, iToken int32) (r int32) { return int32(_yyFallback[iToken]) } /************** End of parse.c ***********************************************/ /************** Begin file tokenize.c ****************************************/ /* ** 2001 September 15 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** An tokenizer for SQL ** ** This file contains C code that splits an SQL input string up into ** individual tokens and sends those tokens one-by-one over to the ** parser for analysis. */ /* #include "sqliteInt.h" */ /* #include */ /* Character classes for tokenizing ** ** In the sqlite3GetToken() function, a switch() on aiClass[c] is implemented ** using a lookup table, whereas a switch() directly on c uses a binary search. ** The lookup table is much faster. To maximize speed, and to ensure that ** a lookup table is used, all of the classes need to be small integers and ** all of them need to be used within the switch. */ // C documentation // // /* // ** Drop a page from the cache. There must be exactly one reference to the // ** page. This function deletes that reference, so after it returns the // ** page pointed to by p is invalid. // */ func _sqlite3PcacheDrop(tls *libc.TLS, p uintptr) { if int32((*TPgHdr)(unsafe.Pointer(p)).Fflags)&int32(PGHDR_DIRTY) != 0 { _pcacheManageDirtyList(tls, p, uint8(PCACHE_DIRTYLIST_REMOVE)) } (*TPCache)(unsafe.Pointer((*TPgHdr)(unsafe.Pointer(p)).FpCache)).FnRefSum = (*TPCache)(unsafe.Pointer((*TPgHdr)(unsafe.Pointer(p)).FpCache)).FnRefSum - 1 (*(*func(*libc.TLS, uintptr, uintptr, int32))(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fpcache2.FxUnpin})))(tls, (*TPCache)(unsafe.Pointer((*TPgHdr)(unsafe.Pointer(p)).FpCache)).FpCache, (*TPgHdr)(unsafe.Pointer(p)).FpPage, int32(1)) } // C documentation // // /* // ** Try to obtain a page from the cache. // ** // ** This routine returns a pointer to an sqlite3_pcache_page object if // ** such an object is already in cache, or if a new one is created. // ** This routine returns a NULL pointer if the object was not in cache // ** and could not be created. // ** // ** The createFlags should be 0 to check for existing pages and should // ** be 3 (not 1, but 3) to try to create a new page. // ** // ** If the createFlag is 0, then NULL is always returned if the page // ** is not already in the cache. If createFlag is 1, then a new page // ** is created only if that can be done without spilling dirty pages // ** and without exceeding the cache size limit. // ** // ** The caller needs to invoke sqlite3PcacheFetchFinish() to properly // ** initialize the sqlite3_pcache_page object and convert it into a // ** PgHdr object. The sqlite3PcacheFetch() and sqlite3PcacheFetchFinish() // ** routines are split this way for performance reasons. When separated // ** they can both (usually) operate without having to push values to // ** the stack on entry and pop them back off on exit, which saves a // ** lot of pushing and popping. // */ func _sqlite3PcacheFetch(tls *libc.TLS, pCache uintptr, pgno TPgno, createFlag int32) (r uintptr) { var eCreate int32 var pRes uintptr _, _ = eCreate, pRes /* eCreate defines what to do if the page does not exist. ** 0 Do not allocate a new page. (createFlag==0) ** 1 Allocate a new page if doing so is inexpensive. ** (createFlag==1 AND bPurgeable AND pDirty) ** 2 Allocate a new page even it doing so is difficult. ** (createFlag==1 AND !(bPurgeable AND pDirty) */ eCreate = createFlag & int32((*TPCache)(unsafe.Pointer(pCache)).FeCreate) pRes = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fpcache2.FxFetch})))(tls, (*TPCache)(unsafe.Pointer(pCache)).FpCache, pgno, eCreate) return pRes } // C documentation // // /* // ** If the sqlite3PcacheFetch() routine is unable to allocate a new // ** page because no clean pages are available for reuse and the cache // ** size limit has been reached, then this routine can be invoked to // ** try harder to allocate a page. This routine might invoke the stress // ** callback to spill dirty pages to the journal. It will then try to // ** allocate the new page and will only fail to allocate a new page on // ** an OOM error. // ** // ** This routine should be invoked only after sqlite3PcacheFetch() fails. // */ func _sqlite3PcacheFetchStress(tls *libc.TLS, pCache uintptr, pgno TPgno, ppPage uintptr) (r int32) { var pPg uintptr var rc, v3 int32 _, _, _ = pPg, rc, v3 if int32((*TPCache)(unsafe.Pointer(pCache)).FeCreate) == int32(2) { return 0 } if _sqlite3PcachePagecount(tls, pCache) > (*TPCache)(unsafe.Pointer(pCache)).FszSpill { /* Find a dirty page to write-out and recycle. First try to find a ** page that does not require a journal-sync (one with PGHDR_NEED_SYNC ** cleared), but if that is not possible settle for any other ** unreferenced dirty page. ** ** If the LRU page in the dirty list that has a clear PGHDR_NEED_SYNC ** flag is currently referenced, then the following may leave pSynced ** set incorrectly (pointing to other than the LRU page with NEED_SYNC ** cleared). This is Ok, as pSynced is just an optimization. */ pPg = (*TPCache)(unsafe.Pointer(pCache)).FpSynced for { if !(pPg != 0 && ((*TPgHdr)(unsafe.Pointer(pPg)).FnRef != 0 || int32((*TPgHdr)(unsafe.Pointer(pPg)).Fflags)&int32(PGHDR_NEED_SYNC) != 0)) { break } goto _1 _1: ; pPg = (*TPgHdr)(unsafe.Pointer(pPg)).FpDirtyPrev } (*TPCache)(unsafe.Pointer(pCache)).FpSynced = pPg if !(pPg != 0) { pPg = (*TPCache)(unsafe.Pointer(pCache)).FpDirtyTail for { if !(pPg != 0 && (*TPgHdr)(unsafe.Pointer(pPg)).FnRef != 0) { break } goto _2 _2: ; pPg = (*TPgHdr)(unsafe.Pointer(pPg)).FpDirtyPrev } } if pPg != 0 { rc = (*(*func(*libc.TLS, uintptr, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{(*TPCache)(unsafe.Pointer(pCache)).FxStress})))(tls, (*TPCache)(unsafe.Pointer(pCache)).FpStress, pPg) if rc != SQLITE_OK && rc != int32(SQLITE_BUSY) { return rc } } } **(**uintptr)(__ccgo_up(ppPage)) = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fpcache2.FxFetch})))(tls, (*TPCache)(unsafe.Pointer(pCache)).FpCache, pgno, int32(2)) if **(**uintptr)(__ccgo_up(ppPage)) == uintptr(0) { v3 = int32(SQLITE_NOMEM) } else { v3 = SQLITE_OK } return v3 } // C documentation // // /* // ** Change the page number of page p to newPgno. // */ func _sqlite3PcacheMove(tls *libc.TLS, p uintptr, newPgno TPgno) { var pCache, pOther, pXPage uintptr _, _, _ = pCache, pOther, pXPage pCache = (*TPgHdr)(unsafe.Pointer(p)).FpCache pOther = (*(*func(*libc.TLS, uintptr, uint32, int32) uintptr)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fpcache2.FxFetch})))(tls, (*TPCache)(unsafe.Pointer(pCache)).FpCache, newPgno, 0) if pOther != 0 { pXPage = (*Tsqlite3_pcache_page)(unsafe.Pointer(pOther)).FpExtra (*TPgHdr)(unsafe.Pointer(pXPage)).FnRef = (*TPgHdr)(unsafe.Pointer(pXPage)).FnRef + 1 (*TPCache)(unsafe.Pointer(pCache)).FnRefSum = (*TPCache)(unsafe.Pointer(pCache)).FnRefSum + 1 _sqlite3PcacheDrop(tls, pXPage) } (*(*func(*libc.TLS, uintptr, uintptr, uint32, uint32))(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fpcache2.FxRekey})))(tls, (*TPCache)(unsafe.Pointer(pCache)).FpCache, (*TPgHdr)(unsafe.Pointer(p)).FpPage, (*TPgHdr)(unsafe.Pointer(p)).Fpgno, newPgno) (*TPgHdr)(unsafe.Pointer(p)).Fpgno = newPgno if int32((*TPgHdr)(unsafe.Pointer(p)).Fflags)&int32(PGHDR_DIRTY) != 0 && int32((*TPgHdr)(unsafe.Pointer(p)).Fflags)&int32(PGHDR_NEED_SYNC) != 0 { _pcacheManageDirtyList(tls, p, uint8(PCACHE_DIRTYLIST_FRONT)) } } // C documentation // // /* // ** This function is called to free superfluous dynamically allocated memory // ** held by the pager system. Memory in use by any SQLite pager allocated // ** by the current thread may be sqlite3_free()ed. // ** // ** nReq is the number of bytes of memory required. Once this much has // ** been released, the function returns. The return value is the total number // ** of bytes of memory released. // */ func _sqlite3PcacheReleaseMemory(tls *libc.TLS, nReq int32) (r int32) { var nFree int32 var p, v1 uintptr var v2 bool _, _, _, _ = nFree, p, v1, v2 nFree = 0 if _sqlite3Config.FpPage == uintptr(0) { Xsqlite3_mutex_enter(tls, (*TPGroup)(unsafe.Pointer(uintptr(unsafe.Pointer(&_pcache1_g)))).Fmutex) for { if v2 = nReq < 0 || nFree < nReq; v2 { v1 = _pcache1_g.Fgrp.Flru.FpLruPrev p = v1 } if !(v2 && v1 != uintptr(0) && int32((*TPgHdr1)(unsafe.Pointer(p)).FisAnchor) == 0) { break } nFree = nFree + _pcache1MemSize(tls, (*TPgHdr1)(unsafe.Pointer(p)).Fpage.FpBuf) _pcache1PinPage(tls, p) _pcache1RemoveFromHash(tls, p, int32(1)) } Xsqlite3_mutex_leave(tls, (*TPGroup)(unsafe.Pointer(uintptr(unsafe.Pointer(&_pcache1_g)))).Fmutex) } return nFree } /************** End of pcache1.c *********************************************/ /************** Begin file rowset.c ******************************************/ /* ** 2008 December 3 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** ** This module implements an object we call a "RowSet". ** ** The RowSet object is a collection of rowids. Rowids ** are inserted into the RowSet in an arbitrary order. Inserts ** can be intermixed with tests to see if a given rowid has been ** previously inserted into the RowSet. ** ** After all inserts are finished, it is possible to extract the ** elements of the RowSet in sorted order. Once this extraction ** process has started, no new elements may be inserted. ** ** Hence, the primitive operations for a RowSet are: ** ** CREATE ** INSERT ** TEST ** SMALLEST ** DESTROY ** ** The CREATE and DESTROY primitives are the constructor and destructor, ** obviously. The INSERT primitive adds a new element to the RowSet. ** TEST checks to see if an element is already in the RowSet. SMALLEST ** extracts the least value from the RowSet. ** ** The INSERT primitive might allocate additional memory. Memory is ** allocated in chunks so most INSERTs do no allocation. There is an ** upper bound on the size of allocated memory. No memory is freed ** until DESTROY. ** ** The TEST primitive includes a "batch" number. The TEST primitive ** will only see elements that were inserted before the last change ** in the batch number. In other words, if an INSERT occurs between ** two TESTs where the TESTs have the same batch number, then the ** value added by the INSERT will not be visible to the second TEST. ** The initial batch number is zero, so if the very first TEST contains ** a non-zero batch number, it will see all prior INSERTs. ** ** No INSERTs may occurs after a SMALLEST. An assertion will fail if ** that is attempted. ** ** The cost of an INSERT is roughly constant. (Sometimes new memory ** has to be allocated on an INSERT.) The cost of a TEST with a new ** batch number is O(NlogN) where N is the number of elements in the RowSet. ** The cost of a TEST using the same batch number is O(logN). The cost ** of the first SMALLEST is O(NlogN). Second and subsequent SMALLEST ** primitives are constant time. The cost of DESTROY is O(N). ** ** TEST and SMALLEST may not be used by the same RowSet. This used to ** be possible, but the feature was not used, so it was removed in order ** to simplify the code. */ /* #include "sqliteInt.h" */ /* ** Target size for allocation chunks. */ /* ** The number of rowset entries per allocation chunk. */ // C documentation // // /* // ** Check to see if zTabName is really the name of a pragma. If it is, // ** then register an eponymous virtual table for that pragma and return // ** a pointer to the Module object for the new virtual table. // */ func _sqlite3PragmaVtabRegister(tls *libc.TLS, db uintptr, zName uintptr) (r uintptr) { var pName uintptr _ = pName pName = _pragmaLocate(tls, zName+uintptr(7)) if pName == uintptr(0) { return uintptr(0) } if int32((*TPragmaName)(unsafe.Pointer(pName)).FmPragFlg)&(libc.Int32FromInt32(PragFlg_Result0)|libc.Int32FromInt32(PragFlg_Result1)) == 0 { return uintptr(0) } return _sqlite3VtabCreateModule(tls, db, zName, uintptr(unsafe.Pointer(&_pragmaVtabModule)), pName, uintptr(0)) } /************** End of pragma.c **********************************************/ /************** Begin file prepare.c *****************************************/ /* ** 2005 May 25 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** This file contains the implementation of the sqlite3_prepare() ** interface, and routines that contribute to loading the database schema ** from disk. */ /* #include "sqliteInt.h" */ // C documentation // // /* // ** Return the preferred table name for system tables. Translate legacy // ** names into the new preferred names, as appropriate. // */ func _sqlite3PreferredTableName(tls *libc.TLS, zName uintptr) (r uintptr) { if Xsqlite3_strnicmp(tls, zName, __ccgo_ts+7973, int32(7)) == 0 { if _sqlite3StrICmp(tls, zName+uintptr(7), __ccgo_ts+7501+7) == 0 { return __ccgo_ts + 8019 } if _sqlite3StrICmp(tls, zName+uintptr(7), __ccgo_ts+7981+7) == 0 { return __ccgo_ts + 8000 } } return zName } // C documentation // // /* // ** Append to pStr text that is the SQL literal representation of the // ** value contained in pValue. // */ func _sqlite3QuoteValue(tls *libc.TLS, pStr uintptr, pValue uintptr, bEscape int32) { bp := tls.Alloc(16) defer tls.Free(16) var i int32 var nBlob Ti64 var zArg, zBlob, zText, v2 uintptr _, _, _, _, _, _ = i, nBlob, zArg, zBlob, zText, v2 /* As currently implemented, the string must be initially empty. ** we might relax this requirement in the future, but that will ** require enhancements to the implementation. */ switch Xsqlite3_value_type(tls, pValue) { case int32(SQLITE_FLOAT): /* ,--- Show infinity as 9.0e+999 ** | ** | ,--- 17 precision guarantees round-trip ** v v */ Xsqlite3_str_appendf(tls, pStr, __ccgo_ts+17781, libc.VaList(bp+8, Xsqlite3_value_double(tls, pValue))) case int32(SQLITE_INTEGER): Xsqlite3_str_appendf(tls, pStr, __ccgo_ts+1472, libc.VaList(bp+8, Xsqlite3_value_int64(tls, pValue))) case int32(SQLITE_BLOB): zBlob = Xsqlite3_value_blob(tls, pValue) nBlob = int64(Xsqlite3_value_bytes(tls, pValue)) /* No encoding change */ _sqlite3StrAccumEnlarge(tls, pStr, nBlob*int64(2)+int64(4)) if int32((*TStrAccum)(unsafe.Pointer(pStr)).FaccError) == 0 { zText = (*TStrAccum)(unsafe.Pointer(pStr)).FzText i = 0 for { if !(int64(i) < nBlob) { break } **(**int8)(__ccgo_up(zText + uintptr(i*int32(2)+int32(2)))) = _hexdigits[int32(**(**int8)(__ccgo_up(zBlob + uintptr(i))))>>int32(4)&int32(0x0F)] **(**int8)(__ccgo_up(zText + uintptr(i*int32(2)+int32(3)))) = _hexdigits[int32(**(**int8)(__ccgo_up(zBlob + uintptr(i))))&int32(0x0F)] goto _1 _1: ; i = i + 1 } **(**int8)(__ccgo_up(zText + uintptr(nBlob*int64(2)+int64(2)))) = int8('\'') **(**int8)(__ccgo_up(zText + uintptr(nBlob*int64(2)+int64(3)))) = int8('\000') **(**int8)(__ccgo_up(zText)) = int8('X') **(**int8)(__ccgo_up(zText + 1)) = int8('\'') (*TStrAccum)(unsafe.Pointer(pStr)).FnChar = uint32(nBlob*int64(2) + int64(3)) } case int32(SQLITE_TEXT): zArg = Xsqlite3_value_text(tls, pValue) if bEscape != 0 { v2 = __ccgo_ts + 17789 } else { v2 = __ccgo_ts + 13142 } Xsqlite3_str_appendf(tls, pStr, v2, libc.VaList(bp+8, zArg)) default: Xsqlite3_str_append(tls, pStr, __ccgo_ts+1712, int32(4)) break } } // C documentation // // /* // ** Change the size of an existing memory allocation // */ func _sqlite3Realloc(tls *libc.TLS, pOld uintptr, nBytes Tu64) (r uintptr) { var nDiff, nNew, nOld int32 var nUsed, v1 Tsqlite3_int64 var pNew uintptr var v2 bool _, _, _, _, _, _, _ = nDiff, nNew, nOld, nUsed, pNew, v1, v2 if pOld == uintptr(0) { return _sqlite3Malloc(tls, nBytes) /* IMP: R-04300-56712 */ } if nBytes == uint64(0) { Xsqlite3_free(tls, pOld) /* IMP: R-26507-47431 */ return uintptr(0) } if nBytes > uint64(SQLITE_MAX_ALLOCATION_SIZE) { return uintptr(0) } nOld = _sqlite3MallocSize(tls, pOld) /* IMPLEMENTATION-OF: R-46199-30249 SQLite guarantees that the second ** argument to xRealloc is always a value returned by a prior call to ** xRoundup. */ nNew = (*(*func(*libc.TLS, int32) int32)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fm.FxRoundup})))(tls, int32(nBytes)) if nOld == nNew { pNew = pOld } else { if _sqlite3Config.FbMemstat != 0 { Xsqlite3_mutex_enter(tls, _mem0.Fmutex) _sqlite3StatusHighwater(tls, int32(SQLITE_STATUS_MALLOC_SIZE), int32(nBytes)) nDiff = nNew - nOld if v2 = nDiff > 0; v2 { v1 = _sqlite3StatusValue(tls, SQLITE_STATUS_MEMORY_USED) nUsed = v1 } if v2 && v1 >= _mem0.FalarmThreshold-int64(nDiff) { _sqlite3MallocAlarm(tls, nDiff) if _mem0.FhardLimit > 0 && nUsed >= _mem0.FhardLimit-int64(nDiff) { Xsqlite3_mutex_leave(tls, _mem0.Fmutex) return uintptr(0) } } pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fm.FxRealloc})))(tls, pOld, nNew) if pNew == uintptr(0) && _mem0.FalarmThreshold > 0 { _sqlite3MallocAlarm(tls, int32(nBytes)) pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fm.FxRealloc})))(tls, pOld, nNew) } if pNew != 0 { nNew = _sqlite3MallocSize(tls, pNew) _sqlite3StatusUp(tls, SQLITE_STATUS_MEMORY_USED, nNew-nOld) } Xsqlite3_mutex_leave(tls, _mem0.Fmutex) } else { pNew = (*(*func(*libc.TLS, uintptr, int32) uintptr)(unsafe.Pointer(&struct{ uintptr }{_sqlite3Config.Fm.FxRealloc})))(tls, pOld, nNew) } } /* IMP: R-11148-40995 */ return pNew } // C documentation // // /* // ** Re-register the built-in LIKE functions. The caseSensitive // ** parameter determines whether or not the LIKE operator is case // ** sensitive. // */ func _sqlite3RegisterLikeFunctions(tls *libc.TLS, db uintptr, caseSensitive int32) { var flags, nArg int32 var pDef, pInfo uintptr _, _, _, _ = flags, nArg, pDef, pInfo if caseSensitive != 0 { pInfo = uintptr(unsafe.Pointer(&_likeInfoAlt)) flags = libc.Int32FromInt32(SQLITE_FUNC_LIKE) | libc.Int32FromInt32(SQLITE_FUNC_CASE) } else { pInfo = uintptr(unsafe.Pointer(&_likeInfoNorm)) flags = int32(SQLITE_FUNC_LIKE) } nArg = int32(2) for { if !(nArg <= int32(3)) { break } _sqlite3CreateFunc(tls, db, __ccgo_ts+17827, nArg, int32(SQLITE_UTF8), pInfo, __ccgo_fp(_likeFunc), uintptr(0), uintptr(0), uintptr(0), uintptr(0), uintptr(0)) pDef = _sqlite3FindFunction(tls, db, __ccgo_ts+17827, nArg, uint8(SQLITE_UTF8), uint8(0)) /* The sqlite3CreateFunc() call above cannot fail ** because the "like" SQL-function already exists */ **(**Tu32)(__ccgo_up(pDef + 4)) |= uint32(flags) **(**Tu32)(__ccgo_up(pDef + 4)) &= uint32(^libc.Int32FromInt32(SQLITE_FUNC_UNSAFE)) goto _1 _1: ; nArg = nArg + 1 } } // C documentation // // /* // ** This routine does per-connection function registration. Most // ** of the built-in functions above are part of the global function set. // ** This routine only deals with those that are not global. // */ func _sqlite3RegisterPerConnectionBuiltinFunctions(tls *libc.TLS, db uintptr) { var rc int32 _ = rc rc = Xsqlite3_overload_function(tls, db, __ccgo_ts+17821, int32(2)) if rc == int32(SQLITE_NOMEM) { _sqlite3OomFault(tls, db) } } // C documentation // // /* // ** The following routines are substitutes for constants SQLITE_CORRUPT, // ** SQLITE_MISUSE, SQLITE_CANTOPEN, SQLITE_NOMEM and possibly other error // ** constants. They serve two purposes: // ** // ** 1. Serve as a convenient place to set a breakpoint in a debugger // ** to detect when version error conditions occurs. // ** // ** 2. Invoke sqlite3_log() to provide the source code location where // ** a low-level error is first detected. // */ func _sqlite3ReportError(tls *libc.TLS, iErr int32, lineno int32, zType uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) Xsqlite3_log(tls, iErr, __ccgo_ts+27508, libc.VaList(bp+8, zType, lineno, uintptr(20)+Xsqlite3_sourceid(tls))) return iErr } // C documentation // // /* // ** Use the content of the StrAccum passed as the second argument // ** as the result of an SQL function. // */ func _sqlite3ResultStrAccum(tls *libc.TLS, pCtx uintptr, p uintptr) { if (*TStrAccum)(unsafe.Pointer(p)).FaccError != 0 { Xsqlite3_result_error_code(tls, pCtx, int32((*TStrAccum)(unsafe.Pointer(p)).FaccError)) Xsqlite3_str_reset(tls, p) } else { if int32((*TStrAccum)(unsafe.Pointer(p)).FprintfFlags)&int32(SQLITE_PRINTF_MALLOCED) != 0 { Xsqlite3_result_text(tls, pCtx, (*TStrAccum)(unsafe.Pointer(p)).FzText, int32((*TStrAccum)(unsafe.Pointer(p)).FnChar), __ccgo_fp(_sqlite3RowSetClear)) } else { Xsqlite3_result_text(tls, pCtx, __ccgo_ts+1711, 0, libc.UintptrFromInt32(0)) Xsqlite3_str_reset(tls, p) } } } // C documentation // // /* // ** Register the r-tree module with database handle db. This creates the // ** virtual table module "rtree" and the debugging/analysis scalar // ** function "rtreenode". // */ func _sqlite3RtreeInit(tls *libc.TLS, db uintptr) (r int32) { var c, c1 uintptr var rc, utf8 int32 _, _, _, _ = c, c1, rc, utf8 utf8 = int32(SQLITE_UTF8) rc = Xsqlite3_create_function(tls, db, __ccgo_ts+31466, int32(2), utf8, uintptr(0), __ccgo_fp(_rtreenode), uintptr(0), uintptr(0)) if rc == SQLITE_OK { rc = Xsqlite3_create_function(tls, db, __ccgo_ts+31476, int32(1), utf8, uintptr(0), __ccgo_fp(_rtreedepth), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { rc = Xsqlite3_create_function(tls, db, __ccgo_ts+31487, -int32(1), utf8, uintptr(0), __ccgo_fp(_rtreecheck), uintptr(0), uintptr(0)) } if rc == SQLITE_OK { c = libc.UintptrFromInt32(RTREE_COORD_REAL32) rc = Xsqlite3_create_module_v2(tls, db, __ccgo_ts+31210, uintptr(unsafe.Pointer(&_rtreeModule)), c, uintptr(0)) } if rc == SQLITE_OK { c1 = libc.UintptrFromInt32(RTREE_COORD_INT32) rc = Xsqlite3_create_module_v2(tls, db, __ccgo_ts+31498, uintptr(unsafe.Pointer(&_rtreeModule)), c1, uintptr(0)) } if rc == SQLITE_OK { rc = _sqlite3_geopoly_init(tls, db) } return rc } // C documentation // // /* // ** Check to make sure we have a valid db pointer. This test is not // ** foolproof but it does provide some measure of protection against // ** misuse of the interface such as passing in db pointers that are // ** NULL or which have been previously closed. If this routine returns // ** 1 it means that the db pointer is valid and 0 if it should not be // ** dereferenced for any reason. The calling function should invoke // ** SQLITE_MISUSE immediately. // ** // ** sqlite3SafetyCheckOk() requires that the db pointer be valid for // ** use. sqlite3SafetyCheckSickOrOk() allows a db pointer that failed to // ** open properly and is not fit for general use but which can be // ** used as an argument to sqlite3_errmsg() or sqlite3_close(). // */ func _sqlite3SafetyCheckOk(tls *libc.TLS, db uintptr) (r int32) { var eOpenState Tu8 _ = eOpenState if db == uintptr(0) { _logBadConnection(tls, __ccgo_ts+1712) return 0 } eOpenState = (*Tsqlite3)(unsafe.Pointer(db)).FeOpenState if int32(eOpenState) != int32(SQLITE_STATE_OPEN) { if _sqlite3SafetyCheckSickOrOk(tls, db) != 0 { _logBadConnection(tls, __ccgo_ts+1904) } return 0 } else { return int32(1) } return r } func _sqlite3SafetyCheckSickOrOk(tls *libc.TLS, db uintptr) (r int32) { var eOpenState Tu8 _ = eOpenState eOpenState = (*Tsqlite3)(unsafe.Pointer(db)).FeOpenState if int32(eOpenState) != int32(SQLITE_STATE_SICK) && int32(eOpenState) != int32(SQLITE_STATE_OPEN) && int32(eOpenState) != int32(SQLITE_STATE_BUSY) { _logBadConnection(tls, __ccgo_ts+1913) return 0 } else { return int32(1) } return r } // C documentation // // /* // ** Initialize a SelectDest structure. // */ func _sqlite3SelectDestInit(tls *libc.TLS, pDest uintptr, eDest int32, iParm int32) { (*TSelectDest)(unsafe.Pointer(pDest)).FeDest = uint8(eDest) (*TSelectDest)(unsafe.Pointer(pDest)).FiSDParm = iParm (*TSelectDest)(unsafe.Pointer(pDest)).FiSDParm2 = 0 (*TSelectDest)(unsafe.Pointer(pDest)).FzAffSdst = uintptr(0) (*TSelectDest)(unsafe.Pointer(pDest)).FiSdst = 0 (*TSelectDest)(unsafe.Pointer(pDest)).FnSdst = 0 } // C documentation // // /* // ** Name of the connection operator, used for error messages. // */ func _sqlite3SelectOpName(tls *libc.TLS, id int32) (r uintptr) { var z uintptr _ = z switch id { case int32(TK_ALL): z = __ccgo_ts + 21719 case int32(TK_INTERSECT): z = __ccgo_ts + 21729 case int32(TK_EXCEPT): z = __ccgo_ts + 21739 default: z = __ccgo_ts + 21746 break } return z } // C documentation // // /* // ** Error message for when two or more terms of a compound select have different // ** size result sets. // */ func _sqlite3SelectWrongNumTermsError(tls *libc.TLS, pParse uintptr, p uintptr) { bp := tls.Alloc(16) defer tls.Free(16) if (*TSelect)(unsafe.Pointer(p)).FselFlags&uint32(SF_Values) != 0 { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+22098, 0) } else { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+22144, libc.VaList(bp+8, _sqlite3SelectOpName(tls, int32((*TSelect)(unsafe.Pointer(p)).Fop)))) } } // C documentation // // /* // ** Extract the iCol-th column from the nRec-byte record in pRec. Write // ** the column value into *ppVal. If *ppVal is initially NULL then a new // ** sqlite3_value object is allocated. // ** // ** If *ppVal is initially NULL then the caller is responsible for // ** ensuring that the value written into *ppVal is eventually freed. // ** // ** If the buffer does not contain a well-formed record, this routine may // ** read several bytes past the end of the buffer. Callers must therefore // ** ensure that any buffer which may contain a corrupt record is padded // ** with at least 8 bytes of addressable memory. // */ func _sqlite3Stat4Column(tls *libc.TLS, db uintptr, pRec uintptr, nRec int32, iCol int32, ppVal uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var a, pMem, v4 uintptr var i, v1 int32 var iField Ti64 var iHdr, szField Tu32 var _ /* nHdr at bp+4 */ Tu32 var _ /* t at bp+0 */ Tu32 _, _, _, _, _, _, _, _ = a, i, iField, iHdr, pMem, szField, v1, v4 **(**Tu32)(__ccgo_up(bp)) = uint32(0) /* Next unread data byte */ szField = uint32(0) /* Column index */ a = pRec /* Typecast byte array */ pMem = **(**uintptr)(__ccgo_up(ppVal)) /* Write result into this Mem object */ if int32(**(**Tu8)(__ccgo_up(a))) < int32(libc.Uint8FromInt32(0x80)) { **(**Tu32)(__ccgo_up(bp + 4)) = uint32(**(**Tu8)(__ccgo_up(a))) v1 = libc.Int32FromInt32(1) } else { v1 = int32(_sqlite3GetVarint32(tls, a, bp+4)) } iHdr = uint32(uint8(v1)) if **(**Tu32)(__ccgo_up(bp + 4)) > uint32(nRec) || iHdr >= **(**Tu32)(__ccgo_up(bp + 4)) { return _sqlite3CorruptError(tls, int32(87782)) } iField = int64(**(**Tu32)(__ccgo_up(bp + 4))) i = 0 for { if !(i <= iCol) { break } if int32(**(**Tu8)(__ccgo_up(a + uintptr(iHdr)))) < int32(libc.Uint8FromInt32(0x80)) { **(**Tu32)(__ccgo_up(bp)) = uint32(**(**Tu8)(__ccgo_up(a + uintptr(iHdr)))) v1 = libc.Int32FromInt32(1) } else { v1 = int32(_sqlite3GetVarint32(tls, a+uintptr(iHdr), bp)) } iHdr = iHdr + uint32(uint8(v1)) if iHdr > **(**Tu32)(__ccgo_up(bp + 4)) { return _sqlite3CorruptError(tls, int32(87788)) } szField = _sqlite3VdbeSerialTypeLen(tls, **(**Tu32)(__ccgo_up(bp))) iField = iField + int64(szField) goto _2 _2: ; i = i + 1 } if iField > int64(nRec) { return _sqlite3CorruptError(tls, int32(87794)) } if pMem == uintptr(0) { v4 = _sqlite3ValueNew(tls, db) **(**uintptr)(__ccgo_up(ppVal)) = v4 pMem = v4 if pMem == uintptr(0) { return int32(SQLITE_NOMEM) } } _sqlite3VdbeSerialGet(tls, a+uintptr(iField-int64(szField)), **(**Tu32)(__ccgo_up(bp)), pMem) (*TMem)(unsafe.Pointer(pMem)).Fenc = (*Tsqlite3)(unsafe.Pointer(db)).Fenc return SQLITE_OK } var _sqlite3StdType = [6]uintptr{ 0: __ccgo_ts + 1172, 1: __ccgo_ts + 1176, 2: __ccgo_ts + 1181, 3: __ccgo_ts + 1185, 4: __ccgo_ts + 1193, 5: __ccgo_ts + 1198, } /************** End of global.c **********************************************/ /************** Begin file status.c ******************************************/ /* ** 2008 June 18 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** ** This module implements the sqlite3_status() interface and related ** functionality. */ /* #include "sqliteInt.h" */ /************** Include vdbeInt.h in the middle of status.c ******************/ /************** Begin file vdbeInt.h *****************************************/ /* ** 2003 September 6 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** This is the header file for information that is private to the ** VDBE. This information used to all be at the top of the single ** source code file "vdbe.c". When that file became too big (over ** 6000 lines long) it was split up into several smaller files and ** this header information was factored out. */ /* ** The maximum number of times that a statement will try to reparse ** itself before giving up and returning SQLITE_SCHEMA. */ /* ** VDBE_DISPLAY_P4 is true or false depending on whether or not the ** "explain" P4 display logic is enabled. */ func _sqlite3StrAccumEnlargeIfNeeded(tls *libc.TLS, p uintptr, N Ti64) (r int32) { if N+int64((*TStrAccum)(unsafe.Pointer(p)).FnChar) >= int64((*TStrAccum)(unsafe.Pointer(p)).FnAlloc) { _sqlite3StrAccumEnlarge(tls, p, N) } return int32((*TStrAccum)(unsafe.Pointer(p)).FaccError) } func _sqlite3StrAccumFinish(tls *libc.TLS, p uintptr) (r uintptr) { if (*TStrAccum)(unsafe.Pointer(p)).FzText != 0 { **(**int8)(__ccgo_up((*TStrAccum)(unsafe.Pointer(p)).FzText + uintptr((*TStrAccum)(unsafe.Pointer(p)).FnChar))) = 0 if (*TStrAccum)(unsafe.Pointer(p)).FmxAlloc > uint32(0) && !(int32((*TStrAccum)(unsafe.Pointer(p)).FprintfFlags)&libc.Int32FromInt32(SQLITE_PRINTF_MALLOCED) != libc.Int32FromInt32(0)) { return _strAccumFinishRealloc(tls, p) } } return (*TStrAccum)(unsafe.Pointer(p)).FzText } // C documentation // // /* // ** Initialize a string accumulator. // ** // ** p: The accumulator to be initialized. // ** db: Pointer to a database connection. May be NULL. Lookaside // ** memory is used if not NULL. db->mallocFailed is set appropriately // ** when not NULL. // ** zBase: An initial buffer. May be NULL in which case the initial buffer // ** is malloced. // ** n: Size of zBase in bytes. If total space requirements never exceed // ** n then no memory allocations ever occur. // ** mx: Maximum number of bytes to accumulate. If mx==0 then no memory // ** allocations will ever occur. // */ func _sqlite3StrAccumInit(tls *libc.TLS, p uintptr, db uintptr, zBase uintptr, n int32, mx int32) { (*TStrAccum)(unsafe.Pointer(p)).FzText = zBase (*TStrAccum)(unsafe.Pointer(p)).Fdb = db (*TStrAccum)(unsafe.Pointer(p)).FnAlloc = uint32(n) (*TStrAccum)(unsafe.Pointer(p)).FmxAlloc = uint32(mx) (*TStrAccum)(unsafe.Pointer(p)).FnChar = uint32(0) (*TStrAccum)(unsafe.Pointer(p)).FaccError = uint8(0) (*TStrAccum)(unsafe.Pointer(p)).FprintfFlags = uint8(0) } // C documentation // // /* // ** Set the StrAccum object to an error mode. // */ func _sqlite3StrAccumSetError(tls *libc.TLS, p uintptr, eError Tu8) { (*TStrAccum)(unsafe.Pointer(p)).FaccError = eError if (*TStrAccum)(unsafe.Pointer(p)).FmxAlloc != 0 { Xsqlite3_str_reset(tls, p) } if int32(eError) == int32(SQLITE_TOOBIG) { _sqlite3ErrorToParser(tls, (*TStrAccum)(unsafe.Pointer(p)).Fdb, int32(eError)) } } func _sqlite3StrICmp(tls *libc.TLS, zLeft uintptr, zRight uintptr) (r int32) { var a, b uintptr var c, x int32 _, _, _, _ = a, b, c, x a = zLeft b = zRight for { c = int32(**(**uint8)(__ccgo_up(a))) x = int32(**(**uint8)(__ccgo_up(b))) if c == x { if c == 0 { break } } else { c = int32(_sqlite3UpperToLower[c]) - int32(_sqlite3UpperToLower[x]) if c != 0 { break } } a = a + 1 b = b + 1 goto _1 _1: } return c } // C documentation // // /* // ** Compute an 8-bit hash on a string that is insensitive to case differences // */ func _sqlite3StrIHash(tls *libc.TLS, z uintptr) (r Tu8) { var h Tu8 _ = h h = uint8(0) if z == uintptr(0) { return uint8(0) } for **(**int8)(__ccgo_up(z)) != 0 { h = uint8(int32(h) + int32(_sqlite3UpperToLower[uint8(**(**int8)(__ccgo_up(z)))])) z = z + 1 } return h } // C documentation // // /* // ** Backwards Compatibility Hack: // ** // ** Historical versions of SQLite accepted strings as column names in // ** indexes and PRIMARY KEY constraints and in UNIQUE constraints. Example: // ** // ** CREATE TABLE xyz(a,b,c,d,e,PRIMARY KEY('a'),UNIQUE('b','c' COLLATE trim) // ** CREATE INDEX abc ON xyz('c','d' DESC,'e' COLLATE nocase DESC); // ** // ** This is goofy. But to preserve backwards compatibility we continue to // ** accept it. This routine does the necessary conversion. It converts // ** the expression given in its argument from a TK_STRING into a TK_ID // ** if the expression is just a TK_STRING with an optional COLLATE clause. // ** If the expression is anything other than TK_STRING, the expression is // ** unchanged. // */ func _sqlite3StringToId(tls *libc.TLS, p uintptr) { if int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_STRING) { (*TExpr)(unsafe.Pointer(p)).Fop = uint8(TK_ID) } else { if int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_COLLATE) && int32((*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(p)).FpLeft)).Fop) == int32(TK_STRING) { (*TExpr)(unsafe.Pointer((*TExpr)(unsafe.Pointer(p)).FpLeft)).Fop = uint8(TK_ID) } } } // C documentation // // /* // ** Compute a string length that is limited to what can be stored in // ** lower 30 bits of a 32-bit signed integer. // ** // ** The value returned will never be negative. Nor will it ever be greater // ** than the actual length of the string. For very long strings (greater // ** than 1GiB) the value returned might be less than the true string length. // */ func _sqlite3Strlen30(tls *libc.TLS, z uintptr) (r int32) { if z == uintptr(0) { return 0 } return int32(0x3fffffff) & int32(libc.Xstrlen(tls, z)) } // C documentation // // /* // ** Load the Parse object passed as the first argument with an error // ** message of the form: // ** // ** "sub-select returns N columns - expected M" // */ func _sqlite3SubselectError(tls *libc.TLS, pParse uintptr, nActual int32, nExpect int32) { bp := tls.Alloc(32) defer tls.Free(32) var zFmt uintptr _ = zFmt if (*TParse)(unsafe.Pointer(pParse)).FnErr == 0 { zFmt = __ccgo_ts + 9502 _sqlite3ErrorMsg(tls, pParse, zFmt, libc.VaList(bp+8, nActual, nExpect)) } } // C documentation // // /* // ** Convert an table column number into a index column number. That is, // ** for the column iCol in the table (as defined by the CREATE TABLE statement) // ** find the (first) offset of that column in index pIdx. Or return -1 // ** if column iCol is not used in index pIdx. // */ func _sqlite3TableColumnToIndex(tls *libc.TLS, pIdx uintptr, iCol int32) (r int32) { var i int32 var iCol16 Ti16 _, _ = i, iCol16 iCol16 = int16(iCol) i = 0 for { if !(i < int32((*TIndex)(unsafe.Pointer(pIdx)).FnColumn)) { break } if int32(iCol16) == int32(**(**Ti16)(__ccgo_up((*TIndex)(unsafe.Pointer(pIdx)).FaiColumn + uintptr(i)*2))) { return i } goto _1 _1: ; i = i + 1 } return -int32(1) } // C documentation // // /* // ** This function returns true if main-memory should be used instead of // ** a temporary file for transient pager files and statement journals. // ** The value returned depends on the value of db->temp_store (runtime // ** parameter) and the compile time value of SQLITE_TEMP_STORE. The // ** following table describes the relationship between these two values // ** and this functions return value. // ** // ** SQLITE_TEMP_STORE db->temp_store Location of temporary database // ** ----------------- -------------- ------------------------------ // ** 0 any file (return 0) // ** 1 1 file (return 0) // ** 1 2 memory (return 1) // ** 1 0 file (return 0) // ** 2 1 file (return 0) // ** 2 2 memory (return 1) // ** 2 0 memory (return 1) // ** 3 any memory (return 1) // */ func _sqlite3TempInMemory(tls *libc.TLS, db uintptr) (r int32) { return libc.BoolInt32(int32((*Tsqlite3)(unsafe.Pointer(db)).Ftemp_store) == int32(2)) } // C documentation // // /* Get the results of the thread */ func _sqlite3ThreadJoin(tls *libc.TLS, p uintptr, ppOut uintptr) (r int32) { var bRc TBOOL var rc TDWORD var v1 int32 _, _, _ = bRc, rc, v1 if p == uintptr(0) { return int32(SQLITE_NOMEM) } if (*TSQLiteThread)(unsafe.Pointer(p)).FxTask == uintptr(0) { /* assert( p->id==GetCurrentThreadId() ); */ rc = libc.Uint32FromInt32(0x00000000) + libc.Uint32FromInt32(0) } else { rc = _sqlite3Win32Wait(tls, (*TSQLiteThread)(unsafe.Pointer(p)).Ftid) bRc = libc.XCloseHandle(tls, (*TSQLiteThread)(unsafe.Pointer(p)).Ftid) _ = bRc /* Prevent warning when assert() is a no-op */ } if rc == libc.Uint32FromInt32(0x00000000)+libc.Uint32FromInt32(0) { **(**uintptr)(__ccgo_up(ppOut)) = (*TSQLiteThread)(unsafe.Pointer(p)).FpResult } Xsqlite3_free(tls, p) if rc == libc.Uint32FromInt32(0x00000000)+libc.Uint32FromInt32(0) { v1 = SQLITE_OK } else { v1 = int32(SQLITE_ERROR) } return v1 } /******************************** End Win32 Threads *************************/ /********************************* Single-Threaded **************************/ /****************************** End Single-Threaded *************************/ /************** End of threads.c *********************************************/ /************** Begin file utf.c *********************************************/ /* ** 2004 April 13 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** This file contains routines used to translate between UTF-8, ** UTF-16, UTF-16BE, and UTF-16LE. ** ** Notes on UTF-8: ** ** Byte-0 Byte-1 Byte-2 Byte-3 Value ** 0xxxxxxx 00000000 00000000 0xxxxxxx ** 110yyyyy 10xxxxxx 00000000 00000yyy yyxxxxxx ** 1110zzzz 10yyyyyy 10xxxxxx 00000000 zzzzyyyy yyxxxxxx ** 11110uuu 10uuzzzz 10yyyyyy 10xxxxxx 000uuuuu zzzzyyyy yyxxxxxx ** ** ** Notes on UTF-16: (with wwww+1==uuuuu) ** ** Word-0 Word-1 Value ** 110110ww wwzzzzyy 110111yy yyxxxxxx 000uuuuu zzzzyyyy yyxxxxxx ** zzzzyyyy yyxxxxxx 00000000 zzzzyyyy yyxxxxxx ** ** ** BOM or Byte Order Mark: ** 0xff 0xfe little-endian utf-16 follows ** 0xfe 0xff big-endian utf-16 follows ** */ /* #include "sqliteInt.h" */ /* #include */ /* #include "vdbeInt.h" */ // C documentation // // /* Thread procedure Win32 compatibility shim */ func _sqlite3ThreadProc(tls *libc.TLS, pArg uintptr) (r uint32) { var p uintptr _ = p p = pArg (*TSQLiteThread)(unsafe.Pointer(p)).FpResult = (*(*func(*libc.TLS, uintptr) uintptr)(unsafe.Pointer(&struct{ uintptr }{(*TSQLiteThread)(unsafe.Pointer(p)).FxTask})))(tls, (*TSQLiteThread)(unsafe.Pointer(p)).FpIn) libc.X_endthreadex(tls, uint32(0)) return uint32(0) /* NOT REACHED */ } // C documentation // // /* // ** Generate a Token object from a string // */ func _sqlite3TokenInit(tls *libc.TLS, p uintptr, z uintptr) { (*TToken)(unsafe.Pointer(p)).Fz = z (*TToken)(unsafe.Pointer(p)).Fn = uint32(_sqlite3Strlen30(tls, z)) } /* Convenient short-hand */ // C documentation // // /* // ** Construct a trigger step that implements a DELETE statement and return // ** a pointer to that trigger step. The parser calls this routine when it // ** sees a DELETE statement inside the body of a CREATE TRIGGER. // */ func _sqlite3TriggerDeleteStep(tls *libc.TLS, pParse uintptr, pTabList uintptr, pWhere uintptr, zStart uintptr, zEnd uintptr) (r uintptr) { var db, pTriggerStep uintptr _, _ = db, pTriggerStep db = (*TParse)(unsafe.Pointer(pParse)).Fdb pTriggerStep = _triggerStepAllocate(tls, pParse, uint8(TK_DELETE), pTabList, zStart, zEnd) if pTriggerStep != 0 { if int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) >= int32(PARSE_MODE_RENAME) { (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpWhere = pWhere pWhere = uintptr(0) } else { (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpWhere = _sqlite3ExprDup(tls, db, pWhere, int32(EXPRDUP_REDUCE)) } (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).Forconf = uint8(OE_Default) } _sqlite3ExprDelete(tls, db, pWhere) return pTriggerStep } // C documentation // // /* // ** Build a trigger step out of an INSERT statement. Return a pointer // ** to the new trigger step. // ** // ** The parser calls this routine when it sees an INSERT inside the // ** body of a trigger. // */ func _sqlite3TriggerInsertStep(tls *libc.TLS, pParse uintptr, pTabList uintptr, pColumn uintptr, pSelect uintptr, orconf Tu8, pUpsert uintptr, zStart uintptr, zEnd uintptr) (r uintptr) { var db, pTriggerStep uintptr _, _ = db, pTriggerStep db = (*TParse)(unsafe.Pointer(pParse)).Fdb pTriggerStep = _triggerStepAllocate(tls, pParse, uint8(TK_INSERT), pTabList, zStart, zEnd) if pTriggerStep != 0 { if int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) >= int32(PARSE_MODE_RENAME) { (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpSelect = pSelect pSelect = uintptr(0) } else { (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpSelect = _sqlite3SelectDup(tls, db, pSelect, int32(EXPRDUP_REDUCE)) } (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpIdList = pColumn (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpUpsert = pUpsert (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).Forconf = orconf if pUpsert != 0 { _sqlite3HasExplicitNulls(tls, pParse, (*TUpsert)(unsafe.Pointer(pUpsert)).FpUpsertTarget) } } else { _sqlite3IdListDelete(tls, db, pColumn) _sqlite3UpsertDelete(tls, db, pUpsert) } _sqlite3SelectDelete(tls, db, pSelect) return pTriggerStep } // C documentation // // /* // ** Construct a trigger step that implements an UPDATE statement and return // ** a pointer to that trigger step. The parser calls this routine when it // ** sees an UPDATE statement inside the body of a CREATE TRIGGER. // */ func _sqlite3TriggerUpdateStep(tls *libc.TLS, pParse uintptr, pTabList uintptr, pFrom uintptr, pEList uintptr, pWhere uintptr, orconf Tu8, zStart uintptr, zEnd uintptr) (r uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var db, pFromDup, pSub, pTriggerStep uintptr var _ /* as at bp+0 */ TToken _, _, _, _ = db, pFromDup, pSub, pTriggerStep db = (*TParse)(unsafe.Pointer(pParse)).Fdb pTriggerStep = _triggerStepAllocate(tls, pParse, uint8(TK_UPDATE), pTabList, zStart, zEnd) if pTriggerStep != 0 { pFromDup = uintptr(0) if int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) >= int32(PARSE_MODE_RENAME) { (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpExprList = pEList (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpWhere = pWhere pFromDup = pFrom pEList = uintptr(0) pWhere = uintptr(0) pFrom = uintptr(0) } else { (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpExprList = _sqlite3ExprListDup(tls, db, pEList, int32(EXPRDUP_REDUCE)) (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpWhere = _sqlite3ExprDup(tls, db, pWhere, int32(EXPRDUP_REDUCE)) pFromDup = _sqlite3SrcListDup(tls, db, pFrom, int32(EXPRDUP_REDUCE)) } (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).Forconf = orconf if pFromDup != 0 && !(int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) >= libc.Int32FromInt32(PARSE_MODE_RENAME)) { **(**TToken)(__ccgo_up(bp)) = TToken{} pSub = _sqlite3SelectNew(tls, pParse, uintptr(0), pFromDup, uintptr(0), uintptr(0), uintptr(0), uintptr(0), uint32(SF_NestedFrom), uintptr(0)) pFromDup = _sqlite3SrcListAppendFromTerm(tls, pParse, uintptr(0), uintptr(0), uintptr(0), bp, pSub, uintptr(0)) } if pFromDup != 0 && (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpSrc != 0 { (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpSrc = _sqlite3SrcListAppendList(tls, pParse, (*TTriggerStep)(unsafe.Pointer(pTriggerStep)).FpSrc, pFromDup) } else { _sqlite3SrcListDelete(tls, db, pFromDup) } } _sqlite3ExprListDelete(tls, db, pEList) _sqlite3ExprDelete(tls, db, pWhere) _sqlite3SrcListDelete(tls, db, pFrom) return pTriggerStep } // C documentation // // /* The table or view or trigger name is passed to this routine via tokens // ** pName1 and pName2. If the table name was fully qualified, for example: // ** // ** CREATE TABLE xxx.yyy (...); // ** // ** Then pName1 is set to "xxx" and pName2 "yyy". On the other hand if // ** the table name is not fully qualified, i.e.: // ** // ** CREATE TABLE yyy(...); // ** // ** Then pName1 is set to "yyy" and pName2 is "". // ** // ** This routine sets the *ppUnqual pointer to point at the token (pName1 or // ** pName2) that stores the unqualified table name. The index of the // ** database "xxx" is returned. // */ func _sqlite3TwoPartName(tls *libc.TLS, pParse uintptr, pName1 uintptr, pName2 uintptr, pUnqual uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var db uintptr var iDb int32 _, _ = db, iDb /* Database holding the object */ db = (*TParse)(unsafe.Pointer(pParse)).Fdb if (*TToken)(unsafe.Pointer(pName2)).Fn > uint32(0) { if (*Tsqlite3)(unsafe.Pointer(db)).Finit1.Fbusy != 0 { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+14943, 0) return -int32(1) } **(**uintptr)(__ccgo_up(pUnqual)) = pName2 iDb = _sqlite3FindDb(tls, db, pName1) if iDb < 0 { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+14960, libc.VaList(bp+8, pName1)) return -int32(1) } } else { iDb = int32((*Tsqlite3)(unsafe.Pointer(db)).Finit1.FiDb) **(**uintptr)(__ccgo_up(pUnqual)) = pName1 } return iDb } // C documentation // // /* // ** pZ is a UTF-8 encoded unicode string. If nByte is less than zero, // ** return the number of unicode characters in pZ up to (but not including) // ** the first 0x00 byte. If nByte is not less than zero, return the // ** number of unicode characters in the first nByte of pZ (or up to // ** the first 0x00, whichever comes first). // */ func _sqlite3Utf8CharLen(tls *libc.TLS, zIn uintptr, nByte int32) (r1 int32) { var r int32 var z, zTerm, v1 uintptr _, _, _, _ = r, z, zTerm, v1 r = 0 z = zIn if nByte >= 0 { zTerm = z + uintptr(nByte) } else { zTerm = uintptr(-libc.Int32FromInt32(1)) } for int32(**(**Tu8)(__ccgo_up(z))) != 0 && z < zTerm { v1 = z z = z + 1 if int32(**(**Tu8)(__ccgo_up(v1))) >= int32(0xc0) { for int32(**(**Tu8)(__ccgo_up(z)))&int32(0xc0) == int32(0x80) { z = z + 1 } } r = r + 1 } return r } /* This test function is not currently used by the automated test-suite. ** Hence it is only available in debug builds. */ // C documentation // // /* // ** Translate a single UTF-8 character. Return the unicode value. // ** // ** During translation, assume that the byte that zTerm points // ** is a 0x00. // ** // ** Write a pointer to the next unread byte back into *pzNext. // ** // ** Notes On Invalid UTF-8: // ** // ** * This routine never allows a 7-bit character (0x00 through 0x7f) to // ** be encoded as a multi-byte character. Any multi-byte character that // ** attempts to encode a value between 0x00 and 0x7f is rendered as 0xfffd. // ** // ** * This routine never allows a UTF16 surrogate value to be encoded. // ** If a multi-byte character attempts to encode a value between // ** 0xd800 and 0xe000 then it is rendered as 0xfffd. // ** // ** * Bytes in the range of 0x80 through 0xbf which occur as the first // ** byte of a character are interpreted as single-byte characters // ** and rendered as themselves even though they are technically // ** invalid characters. // ** // ** * This routine accepts over-length UTF8 encodings // ** for unicode values 0x80 and greater. It does not change over-length // ** encodings to 0xfffd as some systems recommend. // */ func _sqlite3Utf8Read(tls *libc.TLS, pz uintptr) (r Tu32) { var c uint32 var v1, v2 uintptr _, _, _ = c, v1, v2 /* Same as READ_UTF8() above but without the zTerm parameter. ** For this routine, we assume the UTF8 string is always zero-terminated. */ v2 = pz v1 = *(*uintptr)(unsafe.Pointer(v2)) *(*uintptr)(unsafe.Pointer(v2)) = *(*uintptr)(unsafe.Pointer(v2)) + 1 c = uint32(**(**uint8)(__ccgo_up(v1))) if c >= uint32(0xc0) { c = uint32(_sqlite3Utf8Trans1[c-uint32(0xc0)]) for int32(**(**uint8)(__ccgo_up(**(**uintptr)(__ccgo_up(pz)))))&int32(0xc0) == int32(0x80) { v2 = pz v1 = *(*uintptr)(unsafe.Pointer(v2)) *(*uintptr)(unsafe.Pointer(v2)) = *(*uintptr)(unsafe.Pointer(v2)) + 1 c = c<= uint32(0xc0) { c = uint32(_sqlite3Utf8Trans1[c-uint32(0xc0)]) if n > int32(4) { n = int32(4) } for i < n && int32(**(**Tu8)(__ccgo_up(z + uintptr(i))))&int32(0xc0) == int32(0x80) { c = c<= int32(VDBE_READY_STATE) { rc = _sqlite3VdbeReset(tls, p) } _sqlite3VdbeDelete(tls, p) return rc } func _sqlite3VdbeIntValue(tls *libc.TLS, pMem uintptr) (r Ti64) { var flags int32 _ = flags flags = int32((*TMem)(unsafe.Pointer(pMem)).Fflags) if flags&(libc.Int32FromInt32(MEM_Int)|libc.Int32FromInt32(MEM_IntReal)) != 0 { return *(*Ti64)(unsafe.Pointer(pMem)) } else { if flags&int32(MEM_Real) != 0 { return _sqlite3RealToI64(tls, *(*float64)(unsafe.Pointer(pMem))) } else { if flags&(libc.Int32FromInt32(MEM_Str)|libc.Int32FromInt32(MEM_Blob)) != 0 && (*TMem)(unsafe.Pointer(pMem)).Fz != uintptr(0) { return _memIntValue(tls, pMem) } else { return 0 } } } return r } // C documentation // // /* // ** The MEM structure is already a MEM_Real or MEM_IntReal. Try to // ** make it a MEM_Int if we can. // */ func _sqlite3VdbeIntegerAffinity(tls *libc.TLS, pMem uintptr) { var ix Ti64 _ = ix if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&int32(MEM_IntReal) != 0 { (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(int32((*TMem)(unsafe.Pointer(pMem)).Fflags) & ^(libc.Int32FromInt32(MEM_TypeMask)|libc.Int32FromInt32(MEM_Zero)) | int32(MEM_Int)) } else { ix = _sqlite3RealToI64(tls, *(*float64)(unsafe.Pointer(pMem))) /* Only mark the value as an integer if ** ** (1) the round-trip conversion real->int->real is a no-op, and ** (2) The integer is neither the largest nor the smallest ** possible integer (ticket #3922) ** ** The second and third terms in the following conditional enforces ** the second condition under the assumption that addition overflow causes ** values to wrap around. */ if *(*float64)(unsafe.Pointer(pMem)) == float64(ix) && ix > int64(-libc.Int32FromInt32(1))-(libc.Int64FromUint32(0xffffffff)|libc.Int64FromInt32(0x7fffffff)<zMalloc to hold the content from the btree, if possible. New // ** pMem->zMalloc space will be allocated if necessary. The calling routine // ** is responsible for making sure that the pMem object is eventually // ** destroyed. // ** // ** If this routine fails for any reason (malloc returns NULL or unable // ** to read from the disk) then the pMem is left in an inconsistent state. // */ func _sqlite3VdbeMemFromBtree(tls *libc.TLS, pCur uintptr, offset Tu32, amt Tu32, pMem uintptr) (r int32) { var rc, v1 int32 _, _ = rc, v1 (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(MEM_Null) if amt >= uint32(SQLITE_MAX_ALLOCATION_SIZE) { return int32(SQLITE_NOMEM) } if uint64(amt)+uint64(offset) > uint64(_sqlite3BtreeMaxRecordSize(tls, pCur)) { return _sqlite3CorruptError(tls, int32(87091)) } v1 = _sqlite3VdbeMemClearAndResize(tls, pMem, int32(amt+uint32(1))) rc = v1 if SQLITE_OK == v1 { rc = _sqlite3BtreePayload(tls, pCur, offset, amt, (*TMem)(unsafe.Pointer(pMem)).Fz) if rc == SQLITE_OK { **(**int8)(__ccgo_up((*TMem)(unsafe.Pointer(pMem)).Fz + uintptr(amt))) = 0 /* Overrun area used when reading malformed records */ (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(MEM_Blob) (*TMem)(unsafe.Pointer(pMem)).Fn = int32(amt) } else { _sqlite3VdbeMemRelease(tls, pMem) } } return rc } func _sqlite3VdbeMemFromBtreeZeroOffset(tls *libc.TLS, pCur uintptr, amt Tu32, pMem uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 var _ /* available at bp+0 */ Tu32 _ = rc **(**Tu32)(__ccgo_up(bp)) = uint32(0) /* Number of bytes available on the local btree page */ rc = SQLITE_OK /* Return code */ /* Note: the calls to BtreeKeyFetch() and DataFetch() below assert() ** that both the BtShared and database handle mutexes are held. */ (*TMem)(unsafe.Pointer(pMem)).Fz = _sqlite3BtreePayloadFetch(tls, pCur, bp) if amt <= **(**Tu32)(__ccgo_up(bp)) { (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(libc.Int32FromInt32(MEM_Blob) | libc.Int32FromInt32(MEM_Ephem)) (*TMem)(unsafe.Pointer(pMem)).Fn = int32(amt) } else { rc = _sqlite3VdbeMemFromBtree(tls, pCur, uint32(0), amt, pMem) } return rc } // C documentation // // /* // ** Convert pMem to type integer. Invalidate any prior representations. // */ func _sqlite3VdbeMemIntegerify(tls *libc.TLS, pMem uintptr) (r int32) { *(*Ti64)(unsafe.Pointer(pMem)) = _sqlite3VdbeIntValue(tls, pMem) (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(int32((*TMem)(unsafe.Pointer(pMem)).Fflags) & ^(libc.Int32FromInt32(MEM_TypeMask)|libc.Int32FromInt32(MEM_Zero)) | int32(MEM_Int)) return SQLITE_OK } // C documentation // // /* // ** Make sure the given Mem is \u0000 terminated. // */ func _sqlite3VdbeMemNulTerminate(tls *libc.TLS, pMem uintptr) (r int32) { if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&(libc.Int32FromInt32(MEM_Term)|libc.Int32FromInt32(MEM_Str)) != int32(MEM_Str) { return SQLITE_OK /* Nothing to do */ } else { return _vdbeMemAddTerminator(tls, pMem) } return r } // C documentation // // /* // ** Convert pMem so that it is of type MEM_Real. // ** Invalidate any prior representations. // */ func _sqlite3VdbeMemRealify(tls *libc.TLS, pMem uintptr) (r int32) { *(*float64)(unsafe.Pointer(pMem)) = _sqlite3VdbeRealValue(tls, pMem) (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(int32((*TMem)(unsafe.Pointer(pMem)).Fflags) & ^(libc.Int32FromInt32(MEM_TypeMask)|libc.Int32FromInt32(MEM_Zero)) | int32(MEM_Real)) return SQLITE_OK } // C documentation // // /* // ** Release any memory resources held by the Mem. Both the memory that is // ** free by Mem.xDel and the Mem.zMalloc allocation are freed. // ** // ** Use this routine prior to clean up prior to abandoning a Mem, or to // ** reset a Mem back to its minimum memory utilization. // ** // ** Use sqlite3VdbeMemSetNull() to release just the Mem.xDel space // ** prior to inserting new content into the Mem. // */ func _sqlite3VdbeMemRelease(tls *libc.TLS, p uintptr) { if int32((*TMem)(unsafe.Pointer(p)).Fflags)&(libc.Int32FromInt32(MEM_Agg)|libc.Int32FromInt32(MEM_Dyn)) != 0 || (*TMem)(unsafe.Pointer(p)).FszMalloc != 0 { _vdbeMemClear(tls, p) } } // C documentation // // /* // ** Delete any previous value and set the value stored in *pMem to val, // ** manifest type INTEGER. // */ func _sqlite3VdbeMemSetInt64(tls *libc.TLS, pMem uintptr, val Ti64) { if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&(libc.Int32FromInt32(MEM_Agg)|libc.Int32FromInt32(MEM_Dyn)) != 0 { _vdbeReleaseAndSetInt64(tls, pMem, val) } else { *(*Ti64)(unsafe.Pointer(pMem)) = val (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(MEM_Int) } } // C documentation // // /* // ** Delete any previous value and set the value stored in *pMem to NULL. // ** // ** This routine calls the Mem.xDel destructor to dispose of values that // ** require the destructor. But it preserves the Mem.zMalloc memory allocation. // ** To free all resources, use sqlite3VdbeMemRelease(), which both calls this // ** routine to invoke the destructor and deallocates Mem.zMalloc. // ** // ** Use this routine to reset the Mem prior to insert a new value. // ** // ** Use sqlite3VdbeMemRelease() to complete erase the Mem prior to abandoning it. // */ func _sqlite3VdbeMemSetNull(tls *libc.TLS, pMem uintptr) { if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&(libc.Int32FromInt32(MEM_Agg)|libc.Int32FromInt32(MEM_Dyn)) != 0 { _vdbeMemClearExternAndSetNull(tls, pMem) } else { (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(MEM_Null) } } // C documentation // // /* // ** Delete any previous value and set the value of pMem to be an // ** empty boolean index. // ** // ** Return SQLITE_OK on success and SQLITE_NOMEM if a memory allocation // ** error occurs. // */ func _sqlite3VdbeMemSetRowSet(tls *libc.TLS, pMem uintptr) (r int32) { var db, p uintptr _, _ = db, p db = (*TMem)(unsafe.Pointer(pMem)).Fdb _sqlite3VdbeMemRelease(tls, pMem) p = _sqlite3RowSetInit(tls, db) if p == uintptr(0) { return int32(SQLITE_NOMEM) } (*TMem)(unsafe.Pointer(pMem)).Fz = p (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(libc.Int32FromInt32(MEM_Blob) | libc.Int32FromInt32(MEM_Dyn)) (*TMem)(unsafe.Pointer(pMem)).FxDel = __ccgo_fp(_sqlite3RowSetDelete) return SQLITE_OK } // C documentation // // /* // ** Delete any previous value and set the value to be a BLOB of length // ** n containing all zeros. // */ func _sqlite3VdbeMemSetZeroBlob(tls *libc.TLS, pMem uintptr, n int32) { _sqlite3VdbeMemRelease(tls, pMem) (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(libc.Int32FromInt32(MEM_Blob) | libc.Int32FromInt32(MEM_Zero)) (*TMem)(unsafe.Pointer(pMem)).Fn = 0 if n < 0 { n = 0 } *(*int32)(unsafe.Pointer(&(*TMem)(unsafe.Pointer(pMem)).Fu)) = n (*TMem)(unsafe.Pointer(pMem)).Fenc = uint8(SQLITE_UTF8) (*TMem)(unsafe.Pointer(pMem)).Fz = uintptr(0) } // C documentation // // /* // ** Return the best representation of pMem that we can get into a // ** double. If pMem is already a double or an integer, return its // ** value. If it is a string or blob, try to convert it to a double. // ** If it is a NULL, return 0.0. // */ func _sqlite3VdbeRealValue(tls *libc.TLS, pMem uintptr) (r float64) { if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&int32(MEM_Real) != 0 { return *(*float64)(unsafe.Pointer(pMem)) } else { if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&(libc.Int32FromInt32(MEM_Int)|libc.Int32FromInt32(MEM_IntReal)) != 0 { return float64(*(*Ti64)(unsafe.Pointer(pMem))) } else { if int32((*TMem)(unsafe.Pointer(pMem)).Fflags)&(libc.Int32FromInt32(MEM_Str)|libc.Int32FromInt32(MEM_Blob)) != 0 { return _sqlite3MemRealValueNoRC(tls, pMem) } else { /* (double)0 In case of SQLITE_OMIT_FLOATING_POINT... */ return libc.Float64FromInt32(0) } } } return r } // C documentation // // /* // ** Clean up a VDBE after execution but do not delete the VDBE just yet. // ** Write any error messages into *pzErrMsg. Return the result code. // ** // ** After this routine is run, the VDBE should be ready to be executed // ** again. // ** // ** To look at it another way, this routine resets the state of the // ** virtual machine from VDBE_RUN_STATE or VDBE_HALT_STATE back to // ** VDBE_READY_STATE. // */ func _sqlite3VdbeReset(tls *libc.TLS, p uintptr) (r int32) { var db uintptr _ = db db = (*TVdbe)(unsafe.Pointer(p)).Fdb /* If the VM did not run to completion or if it encountered an ** error, then it might not have been halted properly. So halt ** it now. */ if int32((*TVdbe)(unsafe.Pointer(p)).FeVdbeState) == int32(VDBE_RUN_STATE) { _sqlite3VdbeHalt(tls, p) } /* If the VDBE has been run even partially, then transfer the error code ** and error message from the VDBE into the main database structure. But ** if the VDBE has just been set to run but has not actually executed any ** instructions yet, leave the main database error information unchanged. */ if (*TVdbe)(unsafe.Pointer(p)).Fpc >= 0 { if (*Tsqlite3)(unsafe.Pointer(db)).FpErr != 0 || (*TVdbe)(unsafe.Pointer(p)).FzErrMsg != 0 { _sqlite3VdbeTransferError(tls, p) } else { (*Tsqlite3)(unsafe.Pointer(db)).FerrCode = (*TVdbe)(unsafe.Pointer(p)).Frc } } /* Reset register contents and reclaim error message memory. */ if (*TVdbe)(unsafe.Pointer(p)).FzErrMsg != 0 { _sqlite3DbFree(tls, db, (*TVdbe)(unsafe.Pointer(p)).FzErrMsg) (*TVdbe)(unsafe.Pointer(p)).FzErrMsg = uintptr(0) } (*TVdbe)(unsafe.Pointer(p)).FpResultRow = uintptr(0) /* Save profiling information from this VDBE run. */ return (*TVdbe)(unsafe.Pointer(p)).Frc & (*Tsqlite3)(unsafe.Pointer(db)).FerrMask } func _sqlite3VdbeSerialGet(tls *libc.TLS, buf uintptr, serial_type Tu32, pMem uintptr) { switch serial_type { case uint32(10): /* Internal use only: NULL with virtual table ** UPDATE no-change flag set */ (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(libc.Int32FromInt32(MEM_Null) | libc.Int32FromInt32(MEM_Zero)) (*TMem)(unsafe.Pointer(pMem)).Fn = 0 *(*int32)(unsafe.Pointer(&(*TMem)(unsafe.Pointer(pMem)).Fu)) = 0 return case uint32(11): /* Reserved for future use */ fallthrough case uint32(0): /* Null */ /* EVIDENCE-OF: R-24078-09375 Value is a NULL. */ (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(MEM_Null) return case uint32(1): /* EVIDENCE-OF: R-44885-25196 Value is an 8-bit twos-complement ** integer. */ *(*Ti64)(unsafe.Pointer(pMem)) = int64(int8(**(**uint8)(__ccgo_up(buf)))) (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(MEM_Int) return case uint32(2): /* 2-byte signed integer */ /* EVIDENCE-OF: R-49794-35026 Value is a big-endian 16-bit ** twos-complement integer. */ *(*Ti64)(unsafe.Pointer(pMem)) = int64(libc.Int32FromInt32(256)*int32(int8(**(**uint8)(__ccgo_up(buf)))) | int32(**(**uint8)(__ccgo_up(buf + 1)))) (*TMem)(unsafe.Pointer(pMem)).Fflags = uint16(MEM_Int) return case uint32(3): /* 3-byte signed integer */ /* EVIDENCE-OF: R-37839-54301 Value is a big-endian 24-bit ** twos-complement integer. */ *(*Ti64)(unsafe.Pointer(pMem)) = int64(libc.Int32FromInt32(65536)*int32(int8(**(**uint8)(__ccgo_up(buf)))) | int32(**(**uint8)(__ccgo_up(buf + 1)))< 0 { return 0 } return _viewGetColumnNames(tls, pParse, pTable) } // C documentation // // /* Return the value to pass to a sqlite3_wal_hook callback, the // ** number of frames in the WAL at the point of the last commit since // ** sqlite3WalCallback() was called. If no commits have occurred since // ** the last call, then return 0. // */ func _sqlite3WalCallback(tls *libc.TLS, pWal uintptr) (r int32) { var ret Tu32 _ = ret ret = uint32(0) if pWal != 0 { ret = (*TWal)(unsafe.Pointer(pWal)).FiCallback (*TWal)(unsafe.Pointer(pWal)).FiCallback = uint32(0) } return int32(ret) } // C documentation // // /* // ** Close a connection to a log file. // */ func _sqlite3WalClose(tls *libc.TLS, pWal uintptr, db uintptr, sync_flags int32, nBuf int32, zBuf uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var isDelete, rc, v1 int32 var v2 bool var _ /* bPersist at bp+0 */ int32 _, _, _, _ = isDelete, rc, v1, v2 rc = SQLITE_OK if pWal != 0 { isDelete = 0 /* True to unlink wal and wal-index files */ /* If an EXCLUSIVE lock can be obtained on the database file (using the ** ordinary, rollback-mode locking methods, this guarantees that the ** connection associated with this log file is the only connection to ** the database. In this case checkpoint the database and unlink both ** the wal and wal-index files. ** ** The EXCLUSIVE lock is not released before returning. */ if v2 = zBuf != uintptr(0); v2 { v1 = _sqlite3OsLock(tls, (*TWal)(unsafe.Pointer(pWal)).FpDbFd, int32(SQLITE_LOCK_EXCLUSIVE)) rc = v1 } if v2 && SQLITE_OK == v1 { if int32((*TWal)(unsafe.Pointer(pWal)).FexclusiveMode) == WAL_NORMAL_MODE { (*TWal)(unsafe.Pointer(pWal)).FexclusiveMode = uint8(WAL_EXCLUSIVE_MODE) } rc = _sqlite3WalCheckpoint(tls, pWal, db, SQLITE_CHECKPOINT_PASSIVE, uintptr(0), uintptr(0), sync_flags, nBuf, zBuf, uintptr(0), uintptr(0)) if rc == SQLITE_OK { **(**int32)(__ccgo_up(bp)) = -int32(1) _sqlite3OsFileControlHint(tls, (*TWal)(unsafe.Pointer(pWal)).FpDbFd, int32(SQLITE_FCNTL_PERSIST_WAL), bp) if **(**int32)(__ccgo_up(bp)) != int32(1) { /* Try to delete the WAL file if the checkpoint completed and ** fsynced (rc==SQLITE_OK) and if we are not in persistent-wal ** mode (!bPersist) */ isDelete = int32(1) } else { if (*TWal)(unsafe.Pointer(pWal)).FmxWalSize >= 0 { /* Try to truncate the WAL file to zero bytes if the checkpoint ** completed and fsynced (rc==SQLITE_OK) and we are in persistent ** WAL mode (bPersist) and if the PRAGMA journal_size_limit is a ** non-negative value (pWal->mxWalSize>=0). Note that we truncate ** to zero bytes as truncating to the journal_size_limit might ** leave a corrupt WAL file on disk. */ _walLimitSize(tls, pWal, 0) } } } } _walIndexClose(tls, pWal, isDelete) _sqlite3OsClose(tls, (*TWal)(unsafe.Pointer(pWal)).FpWalFd) if isDelete != 0 { _sqlite3BeginBenignMalloc(tls) _sqlite3OsDelete(tls, (*TWal)(unsafe.Pointer(pWal)).FpVfs, (*TWal)(unsafe.Pointer(pWal)).FzWalName, 0) _sqlite3EndBenignMalloc(tls) } Xsqlite3_free(tls, (*TWal)(unsafe.Pointer(pWal)).FapWiData) Xsqlite3_free(tls, pWal) } return rc } // C documentation // // /* // ** This function is called to change the WAL subsystem into or out // ** of locking_mode=EXCLUSIVE. // ** // ** If op is zero, then attempt to change from locking_mode=EXCLUSIVE // ** into locking_mode=NORMAL. This means that we must acquire a lock // ** on the pWal->readLock byte. If the WAL is already in locking_mode=NORMAL // ** or if the acquisition of the lock fails, then return 0. If the // ** transition out of exclusive-mode is successful, return 1. This // ** operation must occur while the pager is still holding the exclusive // ** lock on the main database file. // ** // ** If op is one, then change from locking_mode=NORMAL into // ** locking_mode=EXCLUSIVE. This means that the pWal->readLock must // ** be released. Return 1 if the transition is made and 0 if the // ** WAL is already in exclusive-locking mode - meaning that this // ** routine is a no-op. The pager must already hold the exclusive lock // ** on the main database file before invoking this operation. // ** // ** If op is negative, then do a dry-run of the op==1 case but do // ** not actually change anything. The pager uses this to see if it // ** should acquire the database exclusive lock prior to invoking // ** the op==1 case. // */ func _sqlite3WalExclusiveMode(tls *libc.TLS, pWal uintptr, op int32) (r int32) { var rc int32 _ = rc /* pWal->readLock is usually set, but might be -1 if there was a ** prior error while attempting to acquire are read-lock. This cannot ** happen if the connection is actually in exclusive mode (as no xShmLock ** locks are taken in this case). Nor should the pager attempt to ** upgrade to exclusive-mode following such an error. */ if op == 0 { if int32((*TWal)(unsafe.Pointer(pWal)).FexclusiveMode) != WAL_NORMAL_MODE { (*TWal)(unsafe.Pointer(pWal)).FexclusiveMode = uint8(WAL_NORMAL_MODE) if _walLockShared(tls, pWal, int32(3)+int32((*TWal)(unsafe.Pointer(pWal)).FreadLock)) != SQLITE_OK { (*TWal)(unsafe.Pointer(pWal)).FexclusiveMode = uint8(WAL_EXCLUSIVE_MODE) } rc = libc.BoolInt32(int32((*TWal)(unsafe.Pointer(pWal)).FexclusiveMode) == WAL_NORMAL_MODE) } else { /* Already in locking_mode=NORMAL */ rc = 0 } } else { if op > 0 { _walUnlockShared(tls, pWal, int32(3)+int32((*TWal)(unsafe.Pointer(pWal)).FreadLock)) (*TWal)(unsafe.Pointer(pWal)).FexclusiveMode = uint8(WAL_EXCLUSIVE_MODE) rc = int32(1) } else { rc = libc.BoolInt32(int32((*TWal)(unsafe.Pointer(pWal)).FexclusiveMode) == WAL_NORMAL_MODE) } } return rc } // C documentation // // /* // ** Return true if the argument is non-NULL and the WAL module is using // ** heap-memory for the wal-index. Otherwise, if the argument is NULL or the // ** WAL module is using shared-memory, return false. // */ func _sqlite3WalHeapMemory(tls *libc.TLS, pWal uintptr) (r int32) { return libc.BoolInt32(pWal != 0 && int32((*TWal)(unsafe.Pointer(pWal)).FexclusiveMode) == int32(WAL_HEAPMEMORY_MODE)) } // C documentation // // /* // ** Read the contents of frame iRead from the wal file into buffer pOut // ** (which is nOut bytes in size). Return SQLITE_OK if successful, or an // ** error code otherwise. // */ func _sqlite3WalReadFrame(tls *libc.TLS, pWal uintptr, iRead Tu32, nOut int32, pOut uintptr) (r int32) { var iOffset Ti64 var sz, v1 int32 _, _, _ = iOffset, sz, v1 sz = int32((*TWal)(unsafe.Pointer(pWal)).Fhdr.FszPage) sz = sz&int32(0xfe00) + sz&int32(0x0001)< sz { v1 = sz } else { v1 = nOut } return _sqlite3OsRead(tls, (*TWal)(unsafe.Pointer(pWal)).FpWalFd, pOut, v1, iOffset) } // C documentation // // /* // ** Attempt to reduce the value of the WalCkptInfo.nBackfillAttempted // ** variable so that older snapshots can be accessed. To do this, loop // ** through all wal frames from nBackfillAttempted to (nBackfill+1), // ** comparing their content to the corresponding page with the database // ** file, if any. Set nBackfillAttempted to the frame number of the // ** first frame for which the wal file content matches the db file. // ** // ** This is only really safe if the file-system is such that any page // ** writes made by earlier checkpointers were atomic operations, which // ** is not always true. It is also possible that nBackfillAttempted // ** may be left set to a value larger than expected, if a wal frame // ** contains content that duplicate of an earlier version of the same // ** page. // ** // ** SQLITE_OK is returned if successful, or an SQLite error code if an // ** error occurs. It is not an error if nBackfillAttempted cannot be // ** decreased at all. // */ func _sqlite3WalSnapshotRecover(tls *libc.TLS, pWal uintptr) (r int32) { var pBuf1, pBuf2 uintptr var rc int32 _, _, _ = pBuf1, pBuf2, rc rc = _walLockExclusive(tls, pWal, int32(WAL_CKPT_LOCK), int32(1)) if rc == SQLITE_OK { pBuf1 = Xsqlite3_malloc(tls, int32((*TWal)(unsafe.Pointer(pWal)).FszPage)) pBuf2 = Xsqlite3_malloc(tls, int32((*TWal)(unsafe.Pointer(pWal)).FszPage)) if pBuf1 == uintptr(0) || pBuf2 == uintptr(0) { rc = int32(SQLITE_NOMEM) } else { (*TWal)(unsafe.Pointer(pWal)).FckptLock = uint8(1) rc = _walSnapshotRecover(tls, pWal, pBuf1, pBuf2) (*TWal)(unsafe.Pointer(pWal)).FckptLock = uint8(0) } Xsqlite3_free(tls, pBuf1) Xsqlite3_free(tls, pBuf2) _walUnlockExclusive(tls, pWal, int32(WAL_CKPT_LOCK), int32(1)) } return rc } // C documentation // // /* // ** Walk all expressions associated with SELECT statement p. Do // ** not invoke the SELECT callback on p, but do (of course) invoke // ** any expr callbacks and SELECT callbacks that come from subqueries. // ** Return WRC_Abort or WRC_Continue. // */ func _sqlite3WalkSelectExpr(tls *libc.TLS, pWalker uintptr, p uintptr) (r int32) { var pParse, v1 uintptr var rc int32 var v2 bool _, _, _, _ = pParse, rc, v1, v2 if _sqlite3WalkExprList(tls, pWalker, (*TSelect)(unsafe.Pointer(p)).FpEList) != 0 { return int32(WRC_Abort) } if _sqlite3WalkExpr(tls, pWalker, (*TSelect)(unsafe.Pointer(p)).FpWhere) != 0 { return int32(WRC_Abort) } if _sqlite3WalkExprList(tls, pWalker, (*TSelect)(unsafe.Pointer(p)).FpGroupBy) != 0 { return int32(WRC_Abort) } if _sqlite3WalkExpr(tls, pWalker, (*TSelect)(unsafe.Pointer(p)).FpHaving) != 0 { return int32(WRC_Abort) } if _sqlite3WalkExprList(tls, pWalker, (*TSelect)(unsafe.Pointer(p)).FpOrderBy) != 0 { return int32(WRC_Abort) } if _sqlite3WalkExpr(tls, pWalker, (*TSelect)(unsafe.Pointer(p)).FpLimit) != 0 { return int32(WRC_Abort) } if (*TSelect)(unsafe.Pointer(p)).FpWinDefn != 0 { if v2 = (*TWalker)(unsafe.Pointer(pWalker)).FxSelectCallback2 == __ccgo_fp(_sqlite3WalkWinDefnDummyCallback); !v2 { v1 = (*TWalker)(unsafe.Pointer(pWalker)).FpParse pParse = v1 } if v2 || v1 != uintptr(0) && int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) >= int32(PARSE_MODE_RENAME) || (*TWalker)(unsafe.Pointer(pWalker)).FxSelectCallback2 == __ccgo_fp(_sqlite3SelectPopWith) { /* The following may return WRC_Abort if there are unresolvable ** symbols (e.g. a table that does not exist) in a window definition. */ rc = _walkWindowList(tls, pWalker, (*TSelect)(unsafe.Pointer(p)).FpWinDefn, 0) return rc } } return WRC_Continue } // C documentation // // /* // ** This function is a no-op unless currently processing an EXPLAIN QUERY PLAN // ** command, or if stmt_scanstatus_v2() stats are enabled, or if SQLITE_DEBUG // ** was defined at compile-time. If it is not a no-op, a single OP_Explain // ** opcode is added to the output to describe the table scan strategy in pLevel. // ** // ** If an OP_Explain opcode is added to the VM, its address is returned. // ** Otherwise, if no OP_Explain is coded, zero is returned. // */ func _sqlite3WhereExplainOneScan(tls *libc.TLS, pParse uintptr, pTabList uintptr, pLevel uintptr, wctrlFlags Tu16) (r int32) { var addr, ret int32 var v, v1 uintptr _, _, _, _ = addr, ret, v, v1 ret = 0 if (*TParse)(unsafe.Pointer(pParse)).FpToplevel != 0 { v1 = (*TParse)(unsafe.Pointer(pParse)).FpToplevel } else { v1 = pParse } if int32((*TParse)(unsafe.Pointer(v1)).Fexplain) == int32(2) || libc.Bool(0 != 0) { if (*TWhereLoop)(unsafe.Pointer((*TWhereLevel)(unsafe.Pointer(pLevel)).FpWLoop)).FwsFlags&uint32(WHERE_MULTI_OR) == uint32(0) && int32(wctrlFlags)&int32(WHERE_OR_SUBCLAUSE) == 0 { v = (*TParse)(unsafe.Pointer(pParse)).FpVdbe addr = _sqlite3VdbeCurrentAddr(tls, v) ret = _sqlite3VdbeAddOp3(tls, v, int32(OP_Explain), addr, (*TParse)(unsafe.Pointer(pParse)).FaddrExplain, int32((*TWhereLoop)(unsafe.Pointer((*TWhereLevel)(unsafe.Pointer(pLevel)).FpWLoop)).FrRun)) _sqlite3WhereAddExplainText(tls, pParse, addr, pTabList, pLevel, wctrlFlags) } } return ret } func _sqlite3WhereExprUsageNN(tls *libc.TLS, pMaskSet uintptr, p uintptr) (r TBitmask) { if int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_COLUMN) && !((*TExpr)(unsafe.Pointer(p)).Fflags&uint32(libc.Int32FromInt32(EP_FixedCol)) != libc.Uint32FromInt32(0)) { return _sqlite3WhereGetMask(tls, pMaskSet, (*TExpr)(unsafe.Pointer(p)).FiTable) } else { if (*TExpr)(unsafe.Pointer(p)).Fflags&uint32(libc.Int32FromInt32(EP_TokenOnly)|libc.Int32FromInt32(EP_Leaf)) != uint32(0) { return uint64(0) } } return _sqlite3WhereExprUsageFull(tls, pMaskSet, p) } // C documentation // // /* // ** Return one of the WHERE_DISTINCT_xxxxx values to indicate how this // ** WHERE clause returns outputs for DISTINCT processing. // */ func _sqlite3WhereIsDistinct(tls *libc.TLS, pWInfo uintptr) (r int32) { return int32((*TWhereInfo)(unsafe.Pointer(pWInfo)).FeDistinct) } // C documentation // // /* // ** This routine identifies subexpressions in the WHERE clause where // ** each subexpression is separated by the AND operator or some other // ** operator specified in the op parameter. The WhereClause structure // ** is filled with pointers to subexpressions. For example: // ** // ** WHERE a=='hello' AND coalesce(b,11)<10 AND (c+12!=d OR c==22) // ** \________/ \_______________/ \________________/ // ** slot[0] slot[1] slot[2] // ** // ** The original WHERE clause in pExpr is unaltered. All this routine // ** does is make slot[] entries point to substructure within pExpr. // ** // ** In the previous sentence and in the diagram, "slot[]" refers to // ** the WhereClause.a[] array. The slot[] array grows as needed to contain // ** all terms of the WHERE clause. // */ func _sqlite3WhereSplit(tls *libc.TLS, pWC uintptr, pExpr uintptr, op Tu8) { var pE2 uintptr _ = pE2 pE2 = _sqlite3ExprSkipCollateAndLikely(tls, pExpr) (*TWhereClause)(unsafe.Pointer(pWC)).Fop = op if pE2 == uintptr(0) { return } if int32((*TExpr)(unsafe.Pointer(pE2)).Fop) != int32(op) { _whereClauseInsert(tls, pWC, pExpr, uint16(0)) } else { _sqlite3WhereSplit(tls, pWC, (*TExpr)(unsafe.Pointer(pE2)).FpLeft, op) _sqlite3WhereSplit(tls, pWC, (*TExpr)(unsafe.Pointer(pE2)).FpRight, op) } } func _sqlite3Win32Wait(tls *libc.TLS, hObject THANDLE) (r TDWORD) { var rc, v1 TDWORD _, _ = rc, v1 for { v1 = (*(*func(*libc.TLS, THANDLE, TDWORD, TBOOL) TDWORD)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(63)].FpCurrent})))(tls, hObject, uint32(INFINITE), int32(TRUE)) rc = v1 if !(v1 == libc.Uint32FromInt32(0x000000C0)) { break } } return rc } /* ** Return true (non-zero) if we are running under WinNT, Win2K, WinXP, ** or WinCE. Return false (zero) for Win95, Win98, or WinME. ** ** Here is an interesting observation: Win95, Win98, and WinME lack ** the LockFileEx() API. But we can still statically link against that ** API as long as we don't call it when running Win95/98/ME. A call to ** this routine is used to determine if the host is Win95/98/ME or ** WinNT/2K/XP so that we will know whether or not we can safely call ** the LockFileEx() API. */ // C documentation // // /* // ** Window *pWin has just been created from a WINDOW clause. Token pBase // ** is the base window. Earlier windows from the same WINDOW clause are // ** stored in the linked list starting at pWin->pNextWin. This function // ** either updates *pWin according to the base specification, or else // ** leaves an error in pParse. // */ func _sqlite3WindowChain(tls *libc.TLS, pParse uintptr, pWin uintptr, pList uintptr) { bp := tls.Alloc(32) defer tls.Free(32) var db, pExist, zErr uintptr _, _, _ = db, pExist, zErr if (*TWindow)(unsafe.Pointer(pWin)).FzBase != 0 { db = (*TParse)(unsafe.Pointer(pParse)).Fdb pExist = _windowFind(tls, pParse, pList, (*TWindow)(unsafe.Pointer(pWin)).FzBase) if pExist != 0 { zErr = uintptr(0) /* Check for errors */ if (*TWindow)(unsafe.Pointer(pWin)).FpPartition != 0 { zErr = __ccgo_ts + 25721 } else { if (*TWindow)(unsafe.Pointer(pExist)).FpOrderBy != 0 && (*TWindow)(unsafe.Pointer(pWin)).FpOrderBy != 0 { zErr = __ccgo_ts + 25738 } else { if int32((*TWindow)(unsafe.Pointer(pExist)).FbImplicitFrame) == 0 { zErr = __ccgo_ts + 25754 } } } if zErr != 0 { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+25774, libc.VaList(bp+8, zErr, (*TWindow)(unsafe.Pointer(pWin)).FzBase)) } else { (*TWindow)(unsafe.Pointer(pWin)).FpPartition = _sqlite3ExprListDup(tls, db, (*TWindow)(unsafe.Pointer(pExist)).FpPartition, 0) if (*TWindow)(unsafe.Pointer(pExist)).FpOrderBy != 0 { (*TWindow)(unsafe.Pointer(pWin)).FpOrderBy = _sqlite3ExprListDup(tls, db, (*TWindow)(unsafe.Pointer(pExist)).FpOrderBy, 0) } _sqlite3DbFree(tls, db, (*TWindow)(unsafe.Pointer(pWin)).FzBase) (*TWindow)(unsafe.Pointer(pWin)).FzBase = uintptr(0) } } } } // C documentation // // /* // ** Return 0 if the two window objects are identical, 1 if they are // ** different, or 2 if it cannot be determined if the objects are identical // ** or not. Identical window objects can be processed in a single scan. // */ func _sqlite3WindowCompare(tls *libc.TLS, pParse uintptr, p1 uintptr, p2 uintptr, bFilter int32) (r int32) { var res, v1 int32 _, _ = res, v1 if p1 == uintptr(0) || p2 == uintptr(0) { return int32(1) } if int32((*TWindow)(unsafe.Pointer(p1)).FeFrmType) != int32((*TWindow)(unsafe.Pointer(p2)).FeFrmType) { return int32(1) } if int32((*TWindow)(unsafe.Pointer(p1)).FeStart) != int32((*TWindow)(unsafe.Pointer(p2)).FeStart) { return int32(1) } if int32((*TWindow)(unsafe.Pointer(p1)).FeEnd) != int32((*TWindow)(unsafe.Pointer(p2)).FeEnd) { return int32(1) } if int32((*TWindow)(unsafe.Pointer(p1)).FeExclude) != int32((*TWindow)(unsafe.Pointer(p2)).FeExclude) { return int32(1) } if _sqlite3ExprCompare(tls, pParse, (*TWindow)(unsafe.Pointer(p1)).FpStart, (*TWindow)(unsafe.Pointer(p2)).FpStart, -int32(1)) != 0 { return int32(1) } if _sqlite3ExprCompare(tls, pParse, (*TWindow)(unsafe.Pointer(p1)).FpEnd, (*TWindow)(unsafe.Pointer(p2)).FpEnd, -int32(1)) != 0 { return int32(1) } v1 = _sqlite3ExprListCompare(tls, (*TWindow)(unsafe.Pointer(p1)).FpPartition, (*TWindow)(unsafe.Pointer(p2)).FpPartition, -int32(1)) res = v1 if v1 != 0 { return res } v1 = _sqlite3ExprListCompare(tls, (*TWindow)(unsafe.Pointer(p1)).FpOrderBy, (*TWindow)(unsafe.Pointer(p2)).FpOrderBy, -int32(1)) res = v1 if v1 != 0 { return res } if bFilter != 0 { v1 = _sqlite3ExprCompare(tls, pParse, (*TWindow)(unsafe.Pointer(p1)).FpFilter, (*TWindow)(unsafe.Pointer(p2)).FpFilter, -int32(1)) res = v1 if v1 != 0 { return res } } return 0 } // C documentation // // /* // ** When rewriting a query, if the new subquery in the FROM clause // ** contains TK_AGG_FUNCTION nodes that refer to an outer query, // ** then we have to increase the Expr->op2 values of those nodes // ** due to the extra subquery layer that was added. // ** // ** See also the incrAggDepth() routine in resolve.c // */ func _sqlite3WindowExtraAggFuncDepth(tls *libc.TLS, pWalker uintptr, pExpr uintptr) (r int32) { if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_AGG_FUNCTION) && int32((*TExpr)(unsafe.Pointer(pExpr)).Fop2) >= (*TWalker)(unsafe.Pointer(pWalker)).FwalkerDepth { (*TExpr)(unsafe.Pointer(pExpr)).Fop2 = (*TExpr)(unsafe.Pointer(pExpr)).Fop2 + 1 } return WRC_Continue } // C documentation // // /* // ** The argument expression is an PRECEDING or FOLLOWING offset. The // ** value should be a non-negative integer. If the value is not a // ** constant, change it to NULL. The fact that it is then a non-negative // ** integer will be caught later. But it is important not to leave // ** variable values in the expression tree. // */ func _sqlite3WindowOffsetExpr(tls *libc.TLS, pParse uintptr, pExpr uintptr) (r uintptr) { if 0 == _sqlite3ExprIsConstant(tls, uintptr(0), pExpr) { if int32((*TParse)(unsafe.Pointer(pParse)).FeParseMode) >= int32(PARSE_MODE_RENAME) { _sqlite3RenameExprUnmap(tls, pParse, pExpr) } _sqlite3ExprDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, pExpr) pExpr = _sqlite3ExprAlloc(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, int32(TK_NULL), uintptr(0), 0) } return pExpr } // C documentation // // /* // ** True if PRAGMA writable_schema is ON // */ func _sqlite3WritableSchema(tls *libc.TLS, db uintptr) (r int32) { return libc.BoolInt32((*Tsqlite3)(unsafe.Pointer(db)).Fflags&uint64(libc.Int32FromInt32(SQLITE_WriteSchema)|libc.Int32FromInt32(SQLITE_Defensive)) == uint64(SQLITE_WriteSchema)) } // C documentation // // /* // ** The following variable is (normally) set once and never changes // ** thereafter. It records whether the operating system is Win9x // ** or WinNT. // ** // ** 0: Operating system unknown. // ** 1: Operating system is Win9x. // ** 2: Operating system is WinNT. // ** // ** In order to facilitate testing on a WinNT system, the test fixture // ** can manually set this value to 1 to emulate Win98 behavior. // */ var _sqlite3_os_type = int32(0) /* ** This function is not available on Windows CE or WinRT. */ // C documentation // // /* // ** An array of names of all compile-time options. This array should // ** be sorted A-Z. // ** // ** This array looks large, but in a typical installation actually uses // ** only a handful of compile-time options, so most times this array is usually // ** rather short and uses little memory space. // */ var _sqlite3azCompileOpt = [57]uintptr{ 0: __ccgo_ts, 1: __ccgo_ts + 20, 2: __ccgo_ts + 42, 3: __ccgo_ts + 61, 4: __ccgo_ts + 86, 5: __ccgo_ts + 108, 6: __ccgo_ts + 138, 7: __ccgo_ts + 158, 8: __ccgo_ts + 178, 9: __ccgo_ts + 201, 10: __ccgo_ts + 226, 11: __ccgo_ts + 253, 12: __ccgo_ts + 278, 13: __ccgo_ts + 300, 14: __ccgo_ts + 332, 15: __ccgo_ts + 358, 16: __ccgo_ts + 383, 17: __ccgo_ts + 404, 18: __ccgo_ts + 422, 19: __ccgo_ts + 445, 20: __ccgo_ts + 464, 21: __ccgo_ts + 483, 22: __ccgo_ts + 495, 23: __ccgo_ts + 510, 24: __ccgo_ts + 532, 25: __ccgo_ts + 557, 26: __ccgo_ts + 580, 27: __ccgo_ts + 602, 28: __ccgo_ts + 613, 29: __ccgo_ts + 626, 30: __ccgo_ts + 641, 31: __ccgo_ts + 657, 32: __ccgo_ts + 670, 33: __ccgo_ts + 691, 34: __ccgo_ts + 715, 35: __ccgo_ts + 738, 36: __ccgo_ts + 754, 37: __ccgo_ts + 770, 38: __ccgo_ts + 794, 39: __ccgo_ts + 821, 40: __ccgo_ts + 841, 41: __ccgo_ts + 863, 42: __ccgo_ts + 885, 43: __ccgo_ts + 915, 44: __ccgo_ts + 940, 45: __ccgo_ts + 966, 46: __ccgo_ts + 986, 47: __ccgo_ts + 1012, 48: __ccgo_ts + 1035, 49: __ccgo_ts + 1061, 50: __ccgo_ts + 1083, 51: __ccgo_ts + 1104, 52: __ccgo_ts + 1115, 53: __ccgo_ts + 1124, 54: __ccgo_ts + 1132, 55: __ccgo_ts + 1146, 56: __ccgo_ts + 1159, } // C documentation // // /* // ** Write an error message into pParse->zErrMsg that explains that the // ** user-supplied authorization function returned an illegal value. // */ func _sqliteAuthBadReturnCode(tls *libc.TLS, pParse uintptr) { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+14826, 0) (*TParse)(unsafe.Pointer(pParse)).Frc = int32(SQLITE_ERROR) } func _statEof(tls *libc.TLS, pCursor uintptr) (r int32) { var pCsr uintptr _ = pCsr pCsr = pCursor return int32((*TStatCursor)(unsafe.Pointer(pCsr)).FisEof) } var _statGetFuncdef = TFuncDef{ FnArg: int16(libc.Int32FromInt32(1) + libc.Int32FromInt32(IsStat4)), FfuncFlags: uint32(SQLITE_UTF8), FzName: __ccgo_ts + 14238, } var _statInitFuncdef = TFuncDef{ FnArg: int16(4), FfuncFlags: uint32(SQLITE_UTF8), FzName: __ccgo_ts + 14201, } var _statPushFuncdef = TFuncDef{ FnArg: int16(libc.Int32FromInt32(2) + libc.Int32FromInt32(IsStat4)), FfuncFlags: uint32(SQLITE_UTF8), FzName: __ccgo_ts + 14211, } func _statRowid(tls *libc.TLS, pCursor uintptr, pRowid uintptr) (r int32) { var pCsr uintptr _ = pCsr pCsr = pCursor **(**Tsqlite_int64)(__ccgo_up(pRowid)) = int64((*TStatCursor)(unsafe.Pointer(pCsr)).FiPageno) return SQLITE_OK } // C documentation // // /* // ** Buffer zStr contains nStr bytes of utf-8 encoded text. Return 1 if zStr // ** contains character ch, or 0 if it does not. // */ func _strContainsChar(tls *libc.TLS, zStr uintptr, nStr int32, ch Tu32) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var tst Tu32 var zEnd, v2 uintptr var v1 uint32 var _ /* z at bp+0 */ uintptr _, _, _, _ = tst, zEnd, v1, v2 zEnd = zStr + uintptr(nStr) **(**uintptr)(__ccgo_up(bp)) = zStr for **(**uintptr)(__ccgo_up(bp)) < zEnd { if int32(**(**Tu8)(__ccgo_up(**(**uintptr)(__ccgo_up(bp))))) < int32(0x80) { v2 = **(**uintptr)(__ccgo_up(bp)) **(**uintptr)(__ccgo_up(bp)) = **(**uintptr)(__ccgo_up(bp)) + 1 v1 = uint32(**(**Tu8)(__ccgo_up(v2))) } else { v1 = _sqlite3Utf8Read(tls, bp) } tst = v1 if tst == ch { return int32(1) } } return 0 } // C documentation // // /* // ** The hashing function. // */ func _strHash(tls *libc.TLS, z uintptr) (r uint32) { var h uint32 var v1 uintptr _, _ = h, v1 h = uint32(0) for **(**int8)(__ccgo_up(z)) != 0 { /*OPTIMIZATION-IF-TRUE*/ /* Knuth multiplicative hashing. (Sorting & Searching, p. 510). ** 0x9e3779b1 is 2654435761 which is the closest prime number to ** (2**32)*golden_ratio, where golden_ratio = (sqrt(5) - 1)/2. ** ** Only bits 0xdf for ASCII and bits 0xbf for EBCDIC each octet are ** hashed since the omitted bits determine the upper/lower case difference. */ v1 = z z = z + 1 h = h + uint32(int32(0xdf)&int32(uint8(**(**int8)(__ccgo_up(v1))))) h = h * uint32(0x9e3779b1) } return h } // C documentation // // /* // ** Append a record of the current state of page pPg to the sub-journal. // ** // ** If successful, set the bit corresponding to pPg->pgno in the bitvecs // ** for all open savepoints before returning. // ** // ** This function returns SQLITE_OK if everything is successful, an IO // ** error code if the attempt to write to the sub-journal fails, or // ** SQLITE_NOMEM if a malloc fails while setting a bit in a savepoint // ** bitvec. // */ func _subjournalPage(tls *libc.TLS, pPg uintptr) (r int32) { var offset Ti64 var pData, pData2, pPager uintptr var rc int32 _, _, _, _, _ = offset, pData, pData2, pPager, rc rc = SQLITE_OK pPager = (*TPgHdr)(unsafe.Pointer(pPg)).FpPager if int32((*TPager)(unsafe.Pointer(pPager)).FjournalMode) != int32(PAGER_JOURNALMODE_OFF) { /* Open the sub-journal, if it has not already been opened */ rc = _openSubJournal(tls, pPager) /* If the sub-journal was opened successfully (or was already open), ** write the journal record into the file. */ if rc == SQLITE_OK { pData = (*TPgHdr)(unsafe.Pointer(pPg)).FpData offset = int64((*TPager)(unsafe.Pointer(pPager)).FnSubRec) * (int64(4) + (*TPager)(unsafe.Pointer(pPager)).FpageSize) pData2 = pData rc = _write32bits(tls, (*TPager)(unsafe.Pointer(pPager)).Fsjfd, offset, (*TPgHdr)(unsafe.Pointer(pPg)).Fpgno) if rc == SQLITE_OK { rc = _sqlite3OsWrite(tls, (*TPager)(unsafe.Pointer(pPager)).Fsjfd, pData2, int32((*TPager)(unsafe.Pointer(pPager)).FpageSize), offset+int64(4)) } } } if rc == SQLITE_OK { (*TPager)(unsafe.Pointer(pPager)).FnSubRec = (*TPager)(unsafe.Pointer(pPager)).FnSubRec + 1 rc = _addToSavepointBitvecs(tls, pPager, (*TPgHdr)(unsafe.Pointer(pPg)).Fpgno) } return rc } // C documentation // // /* subtype(X) // ** // ** Return the subtype of X // */ func _subtypeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { _ = argc Xsqlite3_result_int(tls, context, int32(Xsqlite3_value_subtype(tls, **(**uintptr)(__ccgo_up(argv))))) } func _sumFinalize(tls *libc.TLS, context uintptr) { var p uintptr _ = p p = Xsqlite3_aggregate_context(tls, context, 0) if p != 0 && (*TSumCtx)(unsafe.Pointer(p)).Fcnt > 0 { if (*TSumCtx)(unsafe.Pointer(p)).Fapprox != 0 { if (*TSumCtx)(unsafe.Pointer(p)).Fovrfl != 0 { Xsqlite3_result_error(tls, context, __ccgo_ts+17680, -int32(1)) } else { if !(_sqlite3IsOverflow(tls, (*TSumCtx)(unsafe.Pointer(p)).FrErr) != 0) { Xsqlite3_result_double(tls, context, (*TSumCtx)(unsafe.Pointer(p)).FrSum+(*TSumCtx)(unsafe.Pointer(p)).FrErr) } else { Xsqlite3_result_double(tls, context, (*TSumCtx)(unsafe.Pointer(p)).FrSum) } } } else { Xsqlite3_result_int64(tls, context, (*TSumCtx)(unsafe.Pointer(p)).FiSum) } } } // C documentation // // /* // ** Routines used to compute the sum, average, and total. // ** // ** The SUM() function follows the (broken) SQL standard which means // ** that it returns NULL if it sums over no inputs. TOTAL returns // ** 0.0 in that case. In addition, TOTAL always returns a float where // ** SUM might return an integer if it never encounters a floating point // ** value. TOTAL never fails, but SUM might throw an exception if // ** it overflows an integer. // */ func _sumStep(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var p uintptr var type1 int32 var _ /* x at bp+0 */ Ti64 _, _ = p, type1 _ = argc p = Xsqlite3_aggregate_context(tls, context, int32(40)) type1 = Xsqlite3_value_numeric_type(tls, **(**uintptr)(__ccgo_up(argv))) if p != 0 && type1 != int32(SQLITE_NULL) { (*TSumCtx)(unsafe.Pointer(p)).Fcnt = (*TSumCtx)(unsafe.Pointer(p)).Fcnt + 1 if int32((*TSumCtx)(unsafe.Pointer(p)).Fapprox) == 0 { if type1 != int32(SQLITE_INTEGER) { _kahanBabuskaNeumaierInit(tls, p, (*TSumCtx)(unsafe.Pointer(p)).FiSum) (*TSumCtx)(unsafe.Pointer(p)).Fapprox = uint8(1) _kahanBabuskaNeumaierStep(tls, p, Xsqlite3_value_double(tls, **(**uintptr)(__ccgo_up(argv)))) } else { **(**Ti64)(__ccgo_up(bp)) = (*TSumCtx)(unsafe.Pointer(p)).FiSum if _sqlite3AddInt64(tls, bp, Xsqlite3_value_int64(tls, **(**uintptr)(__ccgo_up(argv)))) == 0 { (*TSumCtx)(unsafe.Pointer(p)).FiSum = **(**Ti64)(__ccgo_up(bp)) } else { (*TSumCtx)(unsafe.Pointer(p)).Fovrfl = uint8(1) _kahanBabuskaNeumaierInit(tls, p, (*TSumCtx)(unsafe.Pointer(p)).FiSum) (*TSumCtx)(unsafe.Pointer(p)).Fapprox = uint8(1) _kahanBabuskaNeumaierStepInt64(tls, p, Xsqlite3_value_int64(tls, **(**uintptr)(__ccgo_up(argv)))) } } } else { if type1 == int32(SQLITE_INTEGER) { _kahanBabuskaNeumaierStepInt64(tls, p, Xsqlite3_value_int64(tls, **(**uintptr)(__ccgo_up(argv)))) } else { (*TSumCtx)(unsafe.Pointer(p)).Fovrfl = uint8(0) _kahanBabuskaNeumaierStep(tls, p, Xsqlite3_value_double(tls, **(**uintptr)(__ccgo_up(argv)))) } } } } func _tabIsReadOnly(tls *libc.TLS, pParse uintptr, pTab uintptr) (r int32) { var db uintptr _ = db if int32((*TTable)(unsafe.Pointer(pTab)).FeTabType) == int32(TABTYP_VTAB) { return _vtabIsReadOnly(tls, pParse, pTab) } if (*TTable)(unsafe.Pointer(pTab)).FtabFlags&uint32(libc.Int32FromInt32(TF_Readonly)|libc.Int32FromInt32(TF_Shadow)) == uint32(0) { return 0 } db = (*TParse)(unsafe.Pointer(pParse)).Fdb if (*TTable)(unsafe.Pointer(pTab)).FtabFlags&uint32(TF_Readonly) != uint32(0) { return libc.BoolInt32(_sqlite3WritableSchema(tls, db) == 0 && int32((*TParse)(unsafe.Pointer(pParse)).Fnested) == 0) } return _sqlite3ReadOnlyShadowTables(tls, db) } // C documentation // // /* // ** Return true if it is not allowed to drop the given table // */ func _tableMayNotBeDropped(tls *libc.TLS, db uintptr, pTab uintptr) (r int32) { if Xsqlite3_strnicmp(tls, (*TTable)(unsafe.Pointer(pTab)).FzName, __ccgo_ts+7973, int32(7)) == 0 { if Xsqlite3_strnicmp(tls, (*TTable)(unsafe.Pointer(pTab)).FzName+uintptr(7), __ccgo_ts+16294, int32(4)) == 0 { return 0 } if Xsqlite3_strnicmp(tls, (*TTable)(unsafe.Pointer(pTab)).FzName+uintptr(7), __ccgo_ts+8775, int32(10)) == 0 { return 0 } return int32(1) } if (*TTable)(unsafe.Pointer(pTab)).FtabFlags&uint32(TF_Shadow) != uint32(0) && _sqlite3ReadOnlyShadowTables(tls, db) != 0 { return int32(1) } if (*TTable)(unsafe.Pointer(pTab)).FtabFlags&uint32(TF_Eponymous) != 0 { return int32(1) } return 0 } type _tagADVF = int32 type _tagAR_STATE = int32 type _tagAUTHENTICATEINFO = T_tagAUTHENTICATEINFO type _tagApplicationType = int32 type _tagBINDINFO = T_tagBINDINFO type _tagBINDSPEED = int32 type _tagBINDSTATUS = int32 type _tagBINDSTRING = int32 type _tagBIND_FLAGS = int32 type _tagCALLCONV = int32 type _tagCALLTYPE = int32 type _tagCHANGEKIND = int32 type _tagCLSCTX = int32 type _tagCODEBASEHOLD = T_tagCODEBASEHOLD type _tagCOINIT = int32 type _tagCOINITBASE = int32 type _tagCOMSD = int32 type _tagCOWAIT_FLAGS = int32 type _tagDATADIR = int32 type _tagDATAINFO = T_tagDATAINFO type _tagDCOM_CALL_STATE = int32 type _tagDESCKIND = int32 type _tagDISCARDCACHE = int32 type _tagDOMNodeType = int32 type _tagDVASPECT = int32 type _tagEOLE_AUTHENTICATION_CAPABILITIES = int32 type _tagEPrintXPSJobOperation = int32 type _tagEPrintXPSJobProgress = int32 type _tagEXTCONN = int32 type _tagExtendedErrorParamTypes = int32 type _tagFEEDBACK_TYPE = uint32 type _tagFUNCFLAGS = int32 type _tagFUNCKIND = int32 type _tagGLOBALOPT_EH_VALUES = int32 type _tagGLOBALOPT_PROPERTIES = int32 type _tagGLOBALOPT_RO_FLAGS = int32 type _tagGLOBALOPT_RPCTP_VALUES = int32 type _tagGLOBALOPT_UNMARSHALING_POLICY_VALUES = int32 type _tagHIT_LOGGING_INFO = T_tagHIT_LOGGING_INFO type _tagINPUT_MESSAGE_DEVICE_TYPE = int32 type _tagINPUT_MESSAGE_ORIGIN_ID = int32 type _tagINVOKEKIND = int32 type _tagLIBFLAGS = int32 type _tagLOCKTYPE = int32 type _tagMEMCTX = int32 type _tagMKREDUCE = int32 type _tagMKSYS = int32 type _tagMSHCTX = int32 type _tagMSHLFLAGS = int32 type _tagOLECLOSE = int32 type _tagOLECONTF = int32 type _tagOLEGETMONIKER = int32 type _tagOLELINKBIND = int32 type _tagOLEMISC = int32 type _tagOLERENDER = int32 type _tagOLEUPDATE = int32 type _tagOLEVERBATTRIB = int32 type _tagOLEWHICHMK = int32 type _tagPENDINGMSG = int32 type _tagPENDINGTYPE = int32 type _tagPOINTER_BUTTON_CHANGE_TYPE = int32 type _tagPOINTER_DEVICE_CURSOR_TYPE = uint32 type _tagPOINTER_DEVICE_TYPE = uint32 type _tagPOINTER_INPUT_TYPE = int32 type _tagPRINTER_OPTION_FLAGS = int32 type _tagPROTOCOLDATA = T_tagPROTOCOLDATA type _tagPROTOCOLFILTERDATA = T_tagPROTOCOLFILTERDATA type _tagPROTOCOL_ARGUMENT = T_tagPROTOCOL_ARGUMENT type _tagREGCLS = int32 type _tagREGKIND = int32 type _tagRPCOPT_PROPERTIES = int32 type _tagRPCOPT_SERVER_LOCALITY_VALUES = int32 type _tagRemBINDINFO = T_tagRemBINDINFO type _tagSERVERCALL = int32 type _tagSF_TYPE = int32 type _tagSOFTDISTINFO = T_tagSOFTDISTINFO type _tagSTATFLAG = int32 type _tagSTDMSHLFLAGS = int32 type _tagSTGC = int32 type _tagSTGMOVE = int32 type _tagSTGTY = int32 type _tagSTREAM_SEEK = int32 type _tagSYSKIND = int32 type _tagShutdownType = int32 type _tagStartParam = T_tagStartParam type _tagTYMED = int32 type _tagTYPEFLAGS = int32 type _tagTYPEKIND = int32 type _tagTYSPEC = int32 type _tagURLTEMPLATE = int32 type _tagURLZONE = int32 type _tagUSERCLASSTYPE = int32 type _tagVARFLAGS = int32 type _tagVARKIND = int32 type _tagXMLEMEM_TYPE = int32 type _tagpropertykey = T_tagpropertykey // C documentation // // /* // ** We already know that pExpr is a binary operator where both operands are // ** column references. This routine checks to see if pExpr is an equivalence // ** relation: // ** 1. The SQLITE_Transitive optimization must be enabled // ** 2. Must be either an == or an IS operator // ** 3. Not originating in the ON clause of an OUTER JOIN // ** 4. The operator is not IS or else the query does not contain RIGHT JOIN // ** 5. The affinities of A and B must be compatible // ** 6. Both operands use the same collating sequence, and they must not // ** use explicit COLLATE clauses. // ** If this routine returns TRUE, that means that the RHS can be substituted // ** for the LHS anyplace else in the WHERE clause where the LHS column occurs. // ** This is an optimization. No harm comes from returning 0. But if 1 is // ** returned when it should not be, then incorrect answers might result. // */ func _termIsEquivalence(tls *libc.TLS, pParse uintptr, pExpr uintptr, pSrc uintptr) (r int32) { var aff1, aff2 int8 _, _ = aff1, aff2 if !((*Tsqlite3)(unsafe.Pointer((*TParse)(unsafe.Pointer(pParse)).Fdb)).FdbOptFlags&uint32(libc.Int32FromInt32(SQLITE_Transitive)) == libc.Uint32FromInt32(0)) { return 0 } /* (1) */ if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) != int32(TK_EQ) && int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) != int32(TK_IS) { return 0 } /* (2) */ if (*TExpr)(unsafe.Pointer(pExpr)).Fflags&uint32(libc.Int32FromInt32(EP_OuterON)|libc.Int32FromInt32(EP_Collate)) != uint32(0) { return 0 } /* (3) */ if int32((*TExpr)(unsafe.Pointer(pExpr)).Fop) == int32(TK_IS) && (*TSrcList)(unsafe.Pointer(pSrc)).FnSrc >= int32(2) && int32((*(*TSrcItem)(unsafe.Pointer(pSrc + 8))).Ffg.Fjointype)&int32(JT_LTORJ) != 0 { return 0 /* (4) */ } aff1 = _sqlite3ExprAffinity(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft) aff2 = _sqlite3ExprAffinity(tls, (*TExpr)(unsafe.Pointer(pExpr)).FpRight) if int32(aff1) != int32(aff2) && (!(int32(aff1) >= libc.Int32FromInt32(SQLITE_AFF_NUMERIC)) || !(int32(aff2) >= libc.Int32FromInt32(SQLITE_AFF_NUMERIC))) { return 0 /* (5) */ } if !(_sqlite3ExprCollSeqMatch(tls, pParse, (*TExpr)(unsafe.Pointer(pExpr)).FpLeft, (*TExpr)(unsafe.Pointer(pExpr)).FpRight) != 0) { return 0 /* (6) */ } return int32(1) } const _threadid = 0 const _timeb = 0 type _timespec32 = T_timespec32 type _timespec64 = T_timespec64 var _tkCoalesce = TToken{ Fz: __ccgo_ts + 8178, Fn: uint32(8), } type _tls_callback_type = T_tls_callback_type // C documentation // // /* // ** Duplicate a range of text from an SQL statement, then convert all // ** whitespace characters into ordinary space characters. // */ func _triggerSpanDup(tls *libc.TLS, db uintptr, zStart uintptr, zEnd uintptr) (r uintptr) { var i int32 var z uintptr _, _ = i, z z = _sqlite3DbSpanDup(tls, db, zStart, zEnd) if z != 0 { i = 0 for { if !(**(**int8)(__ccgo_up(z + uintptr(i))) != 0) { break } if int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(z + uintptr(i))))])&int32(0x01) != 0 { **(**int8)(__ccgo_up(z + uintptr(i))) = int8(' ') } goto _1 _1: ; i = i + 1 } } return z } // C documentation // // /* // ** Return a list of all triggers on table pTab if there exists at least // ** one trigger that must be fired when an operation of type 'op' is // ** performed on the table, and, if that operation is an UPDATE, if at // ** least one of the columns in pChanges is being modified. // */ func _triggersReallyExist(tls *libc.TLS, pParse uintptr, pTab uintptr, op int32, pChanges uintptr, pMask uintptr) (r uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var mask int32 var p, pList, v1 uintptr _, _, _, _ = mask, p, pList, v1 mask = 0 pList = uintptr(0) pList = _sqlite3TriggerList(tls, pParse, pTab) if pList != uintptr(0) { p = pList if (*Tsqlite3)(unsafe.Pointer((*TParse)(unsafe.Pointer(pParse)).Fdb)).Fflags&uint64(SQLITE_EnableTrigger) == uint64(0) && (*TTable)(unsafe.Pointer(pTab)).FpTrigger != uintptr(0) && _sqlite3SchemaToIndex(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, (*TTrigger)(unsafe.Pointer((*TTable)(unsafe.Pointer(pTab)).FpTrigger)).FpSchema) != int32(1) { /* The SQLITE_DBCONFIG_ENABLE_TRIGGER setting is off. That means that ** only TEMP triggers are allowed. Truncate the pList so that it ** includes only TEMP triggers */ if pList == (*TTable)(unsafe.Pointer(pTab)).FpTrigger { pList = uintptr(0) goto exit_triggers_exist } for (*TTrigger)(unsafe.Pointer(p)).FpNext != 0 && (*TTrigger)(unsafe.Pointer(p)).FpNext != (*TTable)(unsafe.Pointer(pTab)).FpTrigger { p = (*TTrigger)(unsafe.Pointer(p)).FpNext } (*TTrigger)(unsafe.Pointer(p)).FpNext = uintptr(0) p = pList } for cond := true; cond; cond = p != 0 { if int32((*TTrigger)(unsafe.Pointer(p)).Fop) == op && _checkColumnOverlap(tls, (*TTrigger)(unsafe.Pointer(p)).FpColumns, pChanges) != 0 { mask = mask | int32((*TTrigger)(unsafe.Pointer(p)).Ftr_tm) } else { if int32((*TTrigger)(unsafe.Pointer(p)).Fop) == int32(TK_RETURNING) { /* The first time a RETURNING trigger is seen, the "op" value tells ** us what time of trigger it should be. */ (*TTrigger)(unsafe.Pointer(p)).Fop = uint8(op) if int32((*TTable)(unsafe.Pointer(pTab)).FeTabType) == int32(TABTYP_VTAB) { if op != int32(TK_INSERT) { if op == int32(TK_DELETE) { v1 = __ccgo_ts + 23694 } else { v1 = __ccgo_ts + 23701 } _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+23708, libc.VaList(bp+8, v1)) } (*TTrigger)(unsafe.Pointer(p)).Ftr_tm = uint8(TRIGGER_BEFORE) } else { (*TTrigger)(unsafe.Pointer(p)).Ftr_tm = uint8(TRIGGER_AFTER) } mask = mask | int32((*TTrigger)(unsafe.Pointer(p)).Ftr_tm) } else { if (*TTrigger)(unsafe.Pointer(p)).FbReturning != 0 && int32((*TTrigger)(unsafe.Pointer(p)).Fop) == int32(TK_INSERT) && op == int32(TK_UPDATE) && (*TParse)(unsafe.Pointer(pParse)).FpToplevel == uintptr(0) { /* Also fire a RETURNING trigger for an UPSERT */ mask = mask | int32((*TTrigger)(unsafe.Pointer(p)).Ftr_tm) } } } p = (*TTrigger)(unsafe.Pointer(p)).FpNext } } goto exit_triggers_exist exit_triggers_exist: ; if pMask != 0 { **(**int32)(__ccgo_up(pMask)) = mask } if mask != 0 { v1 = pList } else { v1 = uintptr(0) } return v1 } // C documentation // // /* // ** The unicode() function. Return the integer unicode code-point value // ** for the first character of the input string. // */ func _unicodeFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* z at bp+0 */ uintptr **(**uintptr)(__ccgo_up(bp)) = Xsqlite3_value_text(tls, **(**uintptr)(__ccgo_up(argv))) _ = argc if **(**uintptr)(__ccgo_up(bp)) != 0 && **(**uint8)(__ccgo_up(**(**uintptr)(__ccgo_up(bp)))) != 0 { Xsqlite3_result_int(tls, context, int32(_sqlite3Utf8Read(tls, bp))) } } // C documentation // // /* // ** If there are no outstanding cursors and we are not in the middle // ** of a transaction but there is a read lock on the database, then // ** this routine unrefs the first page of the database file which // ** has the effect of releasing the read lock. // ** // ** If there is a transaction in progress, this routine is a no-op. // */ func _unlockBtreeIfUnused(tls *libc.TLS, pBt uintptr) { var pPage1 uintptr _ = pPage1 if int32((*TBtShared)(unsafe.Pointer(pBt)).FinTransaction) == TRANS_NONE && (*TBtShared)(unsafe.Pointer(pBt)).FpPage1 != uintptr(0) { pPage1 = (*TBtShared)(unsafe.Pointer(pBt)).FpPage1 (*TBtShared)(unsafe.Pointer(pBt)).FpPage1 = uintptr(0) _releasePageOne(tls, pPage1) } } // C documentation // // /* // ** Implementation of the upper() and lower() SQL functions. // */ func _upperFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var i, n int32 var z1, z2 uintptr _, _, _, _ = i, n, z1, z2 _ = argc z2 = Xsqlite3_value_text(tls, **(**uintptr)(__ccgo_up(argv))) n = Xsqlite3_value_bytes(tls, **(**uintptr)(__ccgo_up(argv))) /* Verify that the call to _bytes() does not invalidate the _text() pointer */ if z2 != 0 { z1 = _contextMalloc(tls, context, int64(n)+int64(1)) if z1 != 0 { i = 0 for { if !(i < n) { break } **(**int8)(__ccgo_up(z1 + uintptr(i))) = int8(int32(**(**int8)(__ccgo_up(z2 + uintptr(i)))) & ^(int32(_sqlite3CtypeMap[uint8(**(**int8)(__ccgo_up(z2 + uintptr(i))))]) & libc.Int32FromInt32(0x20))) goto _1 _1: ; i = i + 1 } Xsqlite3_result_text(tls, context, z1, n, __ccgo_fp(Xsqlite3_free)) } } } type _userBITMAP = T_userBITMAP type _userCLIPFORMAT = T_userCLIPFORMAT type _userFLAG_STGMEDIUM = T_userFLAG_STGMEDIUM type _userHBITMAP = T_userHBITMAP type _userHENHMETAFILE = T_userHENHMETAFILE type _userHGLOBAL = T_userHGLOBAL type _userHMETAFILE = T_userHMETAFILE type _userHMETAFILEPICT = T_userHMETAFILEPICT type _userHPALETTE = T_userHPALETTE type _userSTGMEDIUM = T_userSTGMEDIUM func _vdbeCompareMemString(tls *libc.TLS, pMem1 uintptr, pMem2 uintptr, pColl uintptr, prcErr uintptr) (r int32) { if int32((*TMem)(unsafe.Pointer(pMem1)).Fenc) == int32((*TCollSeq)(unsafe.Pointer(pColl)).Fenc) { /* The strings are already in the correct encoding. Call the ** comparison function directly */ return (*(*func(*libc.TLS, uintptr, int32, uintptr, int32, uintptr) int32)(unsafe.Pointer(&struct{ uintptr }{(*TCollSeq)(unsafe.Pointer(pColl)).FxCmp})))(tls, (*TCollSeq)(unsafe.Pointer(pColl)).FpUser, (*TMem)(unsafe.Pointer(pMem1)).Fn, (*TMem)(unsafe.Pointer(pMem1)).Fz, (*TMem)(unsafe.Pointer(pMem2)).Fn, (*TMem)(unsafe.Pointer(pMem2)).Fz) } else { return _vdbeCompareMemStringWithEncodingChange(tls, pMem1, pMem2, pColl, prcErr) } return r } // C documentation // // /* // ** These functions are called when a transaction opened by the database // ** handle associated with the VM passed as an argument is about to be // ** committed. If there are outstanding foreign key constraint violations // ** return an error code. Otherwise, SQLITE_OK. // ** // ** If there are outstanding FK violations and this function returns // ** non-zero, set the result of the VM to SQLITE_CONSTRAINT_FOREIGNKEY // ** and write an error message to it. // */ func _vdbeFkError(tls *libc.TLS, p uintptr) (r int32) { (*TVdbe)(unsafe.Pointer(p)).Frc = libc.Int32FromInt32(SQLITE_CONSTRAINT) | libc.Int32FromInt32(3)<xDel and memory in p->zMalloc. // ** // ** This is a helper routine invoked by sqlite3VdbeMemRelease() in // ** the unusual case where there really is memory in p that needs // ** to be freed. // */ func _vdbeMemClear(tls *libc.TLS, p uintptr) { if int32((*TMem)(unsafe.Pointer(p)).Fflags)&(libc.Int32FromInt32(MEM_Agg)|libc.Int32FromInt32(MEM_Dyn)) != 0 { _vdbeMemClearExternAndSetNull(tls, p) } if (*TMem)(unsafe.Pointer(p)).FszMalloc != 0 { _sqlite3DbFreeNN(tls, (*TMem)(unsafe.Pointer(p)).Fdb, (*TMem)(unsafe.Pointer(p)).FzMalloc) (*TMem)(unsafe.Pointer(p)).FszMalloc = 0 } (*TMem)(unsafe.Pointer(p)).Fz = uintptr(0) } // C documentation // // /* // ** Read a varint from the stream of data accessed by p. Set *pnOut to // ** the value read. // */ func _vdbePmaReadVarint(tls *libc.TLS, p uintptr, pnOut uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var i, iBuf, rc, v1 int32 var _ /* a at bp+16 */ uintptr var _ /* aVarint at bp+0 */ [16]Tu8 _, _, _, _ = i, iBuf, rc, v1 if (*TPmaReader)(unsafe.Pointer(p)).FaMap != 0 { **(**Ti64)(__ccgo_up(p)) += int64(_sqlite3GetVarint(tls, (*TPmaReader)(unsafe.Pointer(p)).FaMap+uintptr((*TPmaReader)(unsafe.Pointer(p)).FiReadOff), pnOut)) } else { iBuf = int32((*TPmaReader)(unsafe.Pointer(p)).FiReadOff % int64((*TPmaReader)(unsafe.Pointer(p)).FnBuffer)) if iBuf != 0 && (*TPmaReader)(unsafe.Pointer(p)).FnBuffer-iBuf >= int32(9) { **(**Ti64)(__ccgo_up(p)) += int64(_sqlite3GetVarint(tls, (*TPmaReader)(unsafe.Pointer(p)).FaBuffer+uintptr(iBuf), pnOut)) } else { i = 0 for cond := true; cond; cond = int32(**(**Tu8)(__ccgo_up(**(**uintptr)(__ccgo_up(bp + 16)))))&int32(0x80) != 0 { rc = _vdbePmaReadBlob(tls, p, int32(1), bp+16) if rc != 0 { return rc } v1 = i i = i + 1 (**(**[16]Tu8)(__ccgo_up(bp)))[v1&int32(0xf)] = **(**Tu8)(__ccgo_up(**(**uintptr)(__ccgo_up(bp + 16)))) } _sqlite3GetVarint(tls, bp, pnOut) } } return SQLITE_OK } // C documentation // // /* // ** Initialize PmaReader pReadr to scan through the PMA stored in file pFile // ** starting at offset iStart and ending at offset iEof-1. This function // ** leaves the PmaReader pointing to the first key in the PMA (or EOF if the // ** PMA is empty). // ** // ** If the pnByte parameter is NULL, then it is assumed that the file // ** contains a single PMA, and that that PMA omits the initial length varint. // */ func _vdbePmaReaderInit(tls *libc.TLS, pTask uintptr, pFile uintptr, iStart Ti64, pReadr uintptr, pnByte uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 var v1 uintptr var _ /* nByte at bp+0 */ Tu64 _, _ = rc, v1 rc = _vdbePmaReaderSeek(tls, pTask, pReadr, pFile, iStart) if rc == SQLITE_OK { **(**Tu64)(__ccgo_up(bp)) = uint64(0) /* Size of PMA in bytes */ rc = _vdbePmaReadVarint(tls, pReadr, bp) (*TPmaReader)(unsafe.Pointer(pReadr)).FiEof = int64(uint64((*TPmaReader)(unsafe.Pointer(pReadr)).FiReadOff) + **(**Tu64)(__ccgo_up(bp))) v1 = pnByte *(*Ti64)(unsafe.Pointer(v1)) = Ti64(uint64(*(*Ti64)(unsafe.Pointer(v1))) + **(**Tu64)(__ccgo_up(bp))) } if rc == SQLITE_OK { rc = _vdbePmaReaderNext(tls, pReadr) } return rc } // C documentation // // /* // ** The first argument passed to this function is a serial-type that // ** corresponds to an integer - all values between 1 and 9 inclusive // ** except 7. The second points to a buffer containing an integer value // ** serialized according to serial_type. This function deserializes // ** and returns the value. // */ func _vdbeRecordDecodeInt(tls *libc.TLS, serial_type Tu32, aKey uintptr) (r Ti64) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* x at bp+8 */ Tu64 var _ /* y at bp+0 */ Tu32 switch serial_type { case uint32(0): fallthrough case uint32(1): return int64(int8(**(**Tu8)(__ccgo_up(aKey)))) case uint32(2): return int64(libc.Int32FromInt32(256)*int32(int8(**(**Tu8)(__ccgo_up(aKey)))) | int32(**(**Tu8)(__ccgo_up(aKey + 1)))) case uint32(3): return int64(libc.Int32FromInt32(65536)*int32(int8(**(**Tu8)(__ccgo_up(aKey)))) | int32(**(**Tu8)(__ccgo_up(aKey + 1)))< int32(7) && s2 > int32(7) { res = s1 - s2 } else { if s2 > int32(7) { res = +libc.Int32FromInt32(1) } else { if s1 > int32(7) { res = -int32(1) } else { res = s1 - s2 } } if res > 0 { if int32(**(**Tu8)(__ccgo_up(v1)))&int32(0x80) != 0 { res = -int32(1) } } else { if int32(**(**Tu8)(__ccgo_up(v2)))&int32(0x80) != 0 { res = +libc.Int32FromInt32(1) } } } } if res == 0 { if int32((*TKeyInfo)(unsafe.Pointer((*TVdbeSorter)(unsafe.Pointer((*TSortSubtask)(unsafe.Pointer(pTask)).FpSorter)).FpKeyInfo)).FnKeyField) > int32(1) { res = _vdbeSorterCompareTail(tls, pTask, pbKey2Cached, pKey1, nKey1, pKey2, nKey2) } } else { if **(**Tu8)(__ccgo_up((*TKeyInfo)(unsafe.Pointer((*TVdbeSorter)(unsafe.Pointer((*TSortSubtask)(unsafe.Pointer(pTask)).FpSorter)).FpKeyInfo)).FaSortFlags)) != 0 { res = res * -int32(1) } } return res } // C documentation // // /* // ** Return the SorterCompare function to compare values collected by the // ** sorter object passed as the only argument. // */ func _vdbeSorterGetCompare(tls *libc.TLS, p uintptr) (r TSorterCompare) { if int32((*TVdbeSorter)(unsafe.Pointer(p)).FtypeMask) == int32(SORTER_TYPE_INTEGER) { return __ccgo_fp(_vdbeSorterCompareInt) } else { if int32((*TVdbeSorter)(unsafe.Pointer(p)).FtypeMask) == int32(SORTER_TYPE_TEXT) { return __ccgo_fp(_vdbeSorterCompareText) } } return __ccgo_fp(_vdbeSorterCompare) } const _wP_tmpdir = "\\\\" // C documentation // // /* // ** Compute a hash on a page number. The resulting hash value must land // ** between 0 and (HASHTABLE_NSLOT-1). The walNextHash() function advances // ** the hash to the next value in the event of a collision. // */ func _walHash(tls *libc.TLS, iPage Tu32) (r int32) { return int32(iPage * uint32(HASHTABLE_HASH_1) & uint32(libc.Int32FromInt32(HASHTABLE_NPAGE)*libc.Int32FromInt32(2)-libc.Int32FromInt32(1))) } // C documentation // // /* // ** Read the wal-index header from the wal-index and into pWal->hdr. // ** If the wal-header appears to be corrupt, try to reconstruct the // ** wal-index from the WAL before returning. // ** // ** Set *pChanged to 1 if the wal-index header value in pWal->hdr is // ** changed by this operation. If pWal->hdr is unchanged, set *pChanged // ** to 0. // ** // ** If the wal-index header is successfully read, return SQLITE_OK. // ** Otherwise an SQLite error code. // */ func _walIndexReadHdr(tls *libc.TLS, pWal uintptr, pChanged uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var bWriteLock, badHdr, rc, v1 int32 var v4 bool var _ /* page0 at bp+0 */ uintptr _, _, _, _, _ = bWriteLock, badHdr, rc, v1, v4 /* Chunk of wal-index containing header */ /* Ensure that page 0 of the wal-index (the page that contains the ** wal-index header) is mapped. Return early if an error occurs here. */ rc = _walIndexPage(tls, pWal, 0, bp) if rc != SQLITE_OK { /* READONLY changed to OK in walIndexPage */ if rc == libc.Int32FromInt32(SQLITE_READONLY)|libc.Int32FromInt32(5)<writeLock ** is zero, which prevents the SHM from growing */ } /* If the first page of the wal-index has been mapped, try to read the ** wal-index header immediately, without holding any lock. This usually ** works, but may fail if the wal-index header is corrupt or currently ** being modified by another thread or process. */ if **(**uintptr)(__ccgo_up(bp)) != 0 { v1 = _walIndexTryHdr(tls, pWal, pChanged) } else { v1 = int32(1) } badHdr = v1 /* If the first attempt failed, it might have been due to a race ** with a writer. So get a WRITE lock and try again. */ if badHdr != 0 { if int32((*TWal)(unsafe.Pointer(pWal)).FbShmUnreliable) == 0 && int32((*TWal)(unsafe.Pointer(pWal)).FreadOnly)&int32(WAL_SHM_RDONLY) != 0 { v1 = _walLockShared(tls, pWal, WAL_WRITE_LOCK) rc = v1 if SQLITE_OK == v1 { _walUnlockShared(tls, pWal, WAL_WRITE_LOCK) rc = libc.Int32FromInt32(SQLITE_READONLY) | libc.Int32FromInt32(1)< nMax { rx = _sqlite3OsTruncate(tls, (*TWal)(unsafe.Pointer(pWal)).FpWalFd, nMax) } _sqlite3EndBenignMalloc(tls) if rx != 0 { Xsqlite3_log(tls, rx, __ccgo_ts+5530, libc.VaList(bp+16, (*TWal)(unsafe.Pointer(pWal)).FzWalName)) } } // C documentation // // /* // ** The cache of the wal-index header must be valid to call this function. // ** Return the page-size in bytes used by the database. // */ func _walPagesize(tls *libc.TLS, pWal uintptr) (r int32) { return int32((*TWal)(unsafe.Pointer(pWal)).Fhdr.FszPage)&int32(0xfe00) + int32((*TWal)(unsafe.Pointer(pWal)).Fhdr.FszPage)&int32(0x0001)< x<=y // ** x=y OR x=y --> x=y // ** x<=y OR x x<=y // ** // ** The following is NOT generated: // ** // ** xy --> x!=y // */ func _whereCombineDisjuncts(tls *libc.TLS, pSrc uintptr, pWC uintptr, pOne uintptr, pTwo uintptr) { var db, pA, pB, pNew uintptr var eOp Tu16 var idxNew, op int32 _, _, _, _, _, _, _ = db, eOp, idxNew, op, pA, pB, pNew eOp = uint16(int32((*TWhereTerm)(unsafe.Pointer(pOne)).FeOperator) | int32((*TWhereTerm)(unsafe.Pointer(pTwo)).FeOperator)) /* Expressions associated with pOne and pTwo */ if (int32((*TWhereTerm)(unsafe.Pointer(pOne)).FwtFlags)|int32((*TWhereTerm)(unsafe.Pointer(pTwo)).FwtFlags))&int32(TERM_VNULL) != 0 { return } if int32((*TWhereTerm)(unsafe.Pointer(pOne)).FeOperator)&(libc.Int32FromInt32(WO_EQ)|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LT)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LE)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_GT)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_GE)-libc.Int32FromInt32(TK_EQ))) == 0 { return } if int32((*TWhereTerm)(unsafe.Pointer(pTwo)).FeOperator)&(libc.Int32FromInt32(WO_EQ)|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LT)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LE)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_GT)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_GE)-libc.Int32FromInt32(TK_EQ))) == 0 { return } if int32(eOp)&(libc.Int32FromInt32(WO_EQ)|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LT)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LE)-libc.Int32FromInt32(TK_EQ))) != int32(eOp) && int32(eOp)&(libc.Int32FromInt32(WO_EQ)|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_GT)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_GE)-libc.Int32FromInt32(TK_EQ))) != int32(eOp) { return } pA = (*TWhereTerm)(unsafe.Pointer(pOne)).FpExpr pB = (*TWhereTerm)(unsafe.Pointer(pTwo)).FpExpr if _sqlite3ExprCompare(tls, uintptr(0), (*TExpr)(unsafe.Pointer(pA)).FpLeft, (*TExpr)(unsafe.Pointer(pB)).FpLeft, -int32(1)) != 0 { return } if _sqlite3ExprCompare(tls, uintptr(0), (*TExpr)(unsafe.Pointer(pA)).FpRight, (*TExpr)(unsafe.Pointer(pB)).FpRight, -int32(1)) != 0 { return } if libc.BoolInt32((*TExpr)(unsafe.Pointer(pA)).Fflags&uint32(libc.Int32FromInt32(EP_Commuted)) != uint32(0)) != libc.BoolInt32((*TExpr)(unsafe.Pointer(pB)).Fflags&uint32(libc.Int32FromInt32(EP_Commuted)) != uint32(0)) { return } /* If we reach this point, it means the two subterms can be combined */ if int32(eOp)&(int32(eOp)-int32(1)) != 0 { if int32(eOp)&(libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LT)-libc.Int32FromInt32(TK_EQ))|libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LE)-libc.Int32FromInt32(TK_EQ))) != 0 { eOp = uint16(libc.Int32FromInt32(WO_EQ) << (libc.Int32FromInt32(TK_LE) - libc.Int32FromInt32(TK_EQ))) } else { eOp = uint16(libc.Int32FromInt32(WO_EQ) << (libc.Int32FromInt32(TK_GE) - libc.Int32FromInt32(TK_EQ))) } } db = (*TParse)(unsafe.Pointer((*TWhereInfo)(unsafe.Pointer((*TWhereClause)(unsafe.Pointer(pWC)).FpWInfo)).FpParse)).Fdb pNew = _sqlite3ExprDup(tls, db, pA, 0) if pNew == uintptr(0) { return } op = int32(TK_EQ) for { if !(int32(eOp) != int32(WO_EQ)<<(op-int32(TK_EQ))) { break } goto _1 _1: ; op = op + 1 } (*TExpr)(unsafe.Pointer(pNew)).Fop = uint8(op) idxNew = _whereClauseInsert(tls, pWC, pNew, uint16(libc.Int32FromInt32(TERM_VIRTUAL)|libc.Int32FromInt32(TERM_DYNAMIC))) _exprAnalyze(tls, pSrc, pWC, idxNew) } // C documentation // // /* // ** Estimate the number of rows that will be returned based on // ** an equality constraint x=VALUE and where that VALUE occurs in // ** the histogram data. This only works when x is the left-most // ** column of an index and sqlite_stat4 histogram data is available // ** for that index. When pExpr==NULL that means the constraint is // ** "x IS NULL" instead of "x=VALUE". // ** // ** Write the estimated row count into *pnRow and return SQLITE_OK. // ** If unable to make an estimate, leave *pnRow unchanged and return // ** non-zero. // ** // ** This routine can fail if it is unable to load a collating sequence // ** required for string comparison, or if unable to allocate memory // ** for a UTF conversion required for comparison. The error is stored // ** in the pParse structure. // */ func _whereEqualScanEst(tls *libc.TLS, pParse uintptr, pBuilder uintptr, pExpr uintptr, pnRow uintptr) (r int32) { bp := tls.Alloc(32) defer tls.Free(32) var nEq, rc int32 var p uintptr var _ /* a at bp+8 */ [2]TtRowcnt var _ /* bOk at bp+24 */ int32 var _ /* pRec at bp+0 */ uintptr _, _, _ = nEq, p, rc p = (*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer((*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpNew + 24))).FpIndex nEq = int32((*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer((*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpNew + 24))).FnEq) **(**uintptr)(__ccgo_up(bp)) = (*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpRec /* If values are not available for all fields of the index to the left ** of this one, no estimate can be made. Return SQLITE_NOTFOUND. */ if (*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FnRecValid < nEq-int32(1) { return int32(SQLITE_NOTFOUND) } /* This is an optimization only. The call to sqlite3Stat4ProbeSetValue() ** below would return the same value. */ if nEq >= int32((*TIndex)(unsafe.Pointer(p)).FnColumn) { **(**TtRowcnt)(__ccgo_up(pnRow)) = uint64(1) return SQLITE_OK } rc = _sqlite3Stat4ProbeSetValue(tls, pParse, p, bp, pExpr, int32(1), nEq-int32(1), bp+24) (*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpRec = **(**uintptr)(__ccgo_up(bp)) if rc != SQLITE_OK { return rc } if **(**int32)(__ccgo_up(bp + 24)) == 0 { return int32(SQLITE_NOTFOUND) } (*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FnRecValid = nEq _whereKeyStats(tls, pParse, p, **(**uintptr)(__ccgo_up(bp)), 0, bp+8) **(**TtRowcnt)(__ccgo_up(pnRow)) = (**(**[2]TtRowcnt)(__ccgo_up(bp + 8)))[int32(1)] return rc } // C documentation // // /* // ** Try to adjust the cost and number of output rows of WhereLoop pTemplate // ** upwards or downwards so that: // ** // ** (1) pTemplate costs less than any other WhereLoops that are a proper // ** subset of pTemplate // ** // ** (2) pTemplate costs more than any other WhereLoops for which pTemplate // ** is a proper subset. // ** // ** To say "WhereLoop X is a proper subset of Y" means that X uses fewer // ** WHERE clause terms than Y and that every WHERE clause term used by X is // ** also used by Y. // */ func _whereLoopAdjustCost(tls *libc.TLS, p uintptr, pTemplate uintptr) { var v2 int32 _ = v2 if (*TWhereLoop)(unsafe.Pointer(pTemplate)).FwsFlags&uint32(WHERE_INDEXED) == uint32(0) { return } for { if !(p != 0) { break } if int32((*TWhereLoop)(unsafe.Pointer(p)).FiTab) != int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FiTab) { goto _1 } if (*TWhereLoop)(unsafe.Pointer(p)).FwsFlags&uint32(WHERE_INDEXED) == uint32(0) { goto _1 } if _whereLoopCheaperProperSubset(tls, p, pTemplate) != 0 { /* Adjust pTemplate cost downward so that it is cheaper than its ** subset p. */ if int32((*TWhereLoop)(unsafe.Pointer(p)).FrRun) < int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FrRun) { v2 = int32((*TWhereLoop)(unsafe.Pointer(p)).FrRun) } else { v2 = int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FrRun) } (*TWhereLoop)(unsafe.Pointer(pTemplate)).FrRun = int16(v2) if int32((*TWhereLoop)(unsafe.Pointer(p)).FnOut)-int32(1) < int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FnOut) { v2 = int32((*TWhereLoop)(unsafe.Pointer(p)).FnOut) - int32(1) } else { v2 = int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FnOut) } (*TWhereLoop)(unsafe.Pointer(pTemplate)).FnOut = int16(v2) } else { if _whereLoopCheaperProperSubset(tls, pTemplate, p) != 0 { /* Adjust pTemplate cost upward so that it is costlier than p since ** pTemplate is a proper subset of p */ if int32((*TWhereLoop)(unsafe.Pointer(p)).FrRun) > int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FrRun) { v2 = int32((*TWhereLoop)(unsafe.Pointer(p)).FrRun) } else { v2 = int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FrRun) } (*TWhereLoop)(unsafe.Pointer(pTemplate)).FrRun = int16(v2) if int32((*TWhereLoop)(unsafe.Pointer(p)).FnOut)+int32(1) > int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FnOut) { v2 = int32((*TWhereLoop)(unsafe.Pointer(p)).FnOut) + int32(1) } else { v2 = int32((*TWhereLoop)(unsafe.Pointer(pTemplate)).FnOut) } (*TWhereLoop)(unsafe.Pointer(pTemplate)).FnOut = int16(v2) } } goto _1 _1: ; p = (*TWhereLoop)(unsafe.Pointer(p)).FpNextLoop } } // C documentation // // /* // ** Clear the WhereLoop.u union. Leave WhereLoop.pLTerm intact. // */ func _whereLoopClearUnion(tls *libc.TLS, db uintptr, p uintptr) { if (*TWhereLoop)(unsafe.Pointer(p)).FwsFlags&uint32(libc.Int32FromInt32(WHERE_VIRTUALTABLE)|libc.Int32FromInt32(WHERE_AUTO_INDEX)) != 0 { if (*TWhereLoop)(unsafe.Pointer(p)).FwsFlags&uint32(WHERE_VIRTUALTABLE) != uint32(0) && int32(Tu32(*(*uint8)(unsafe.Pointer(p + 24 + 4))&0x1>>0)) != 0 { Xsqlite3_free(tls, (*(*struct { FidxNum int32 F__ccgo4 uint8 FisOrdered Ti8 FomitMask Tu16 FidxStr uintptr FmHandleIn Tu32 })(unsafe.Pointer(p + 24))).FidxStr) libc.SetBitFieldPtr8Uint32(p+24+4, libc.Uint32FromInt32(0), 0, 0x1) (*(*struct { FidxNum int32 F__ccgo4 uint8 FisOrdered Ti8 FomitMask Tu16 FidxStr uintptr FmHandleIn Tu32 })(unsafe.Pointer(p + 24))).FidxStr = uintptr(0) } else { if (*TWhereLoop)(unsafe.Pointer(p)).FwsFlags&uint32(WHERE_AUTO_INDEX) != uint32(0) && (*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(p + 24))).FpIndex != uintptr(0) { _sqlite3DbFree(tls, db, (*TIndex)(unsafe.Pointer((*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(p + 24))).FpIndex)).FzColAff) _sqlite3DbFreeNN(tls, db, (*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(p + 24))).FpIndex) (*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(p + 24))).FpIndex = uintptr(0) } } } } // C documentation // // /* // ** Try to insert a new prerequisite/cost entry into the WhereOrSet pSet. // ** // ** The new entry might overwrite an existing entry, or it might be // ** appended, or it might be discarded. Do whatever is the right thing // ** so that pSet keeps the N_OR_COST best entries seen so far. // */ func _whereOrInsert(tls *libc.TLS, pSet uintptr, prereq TBitmask, rRun TLogEst, nOut TLogEst) (r int32) { var i, v2 Tu16 var p, v3 uintptr _, _, _, _ = i, p, v2, v3 i = (*TWhereOrSet)(unsafe.Pointer(pSet)).Fn p = pSet + 8 for { if !(int32(i) > 0) { break } if int32(rRun) <= int32((*TWhereOrCost)(unsafe.Pointer(p)).FrRun) && prereq&(*TWhereOrCost)(unsafe.Pointer(p)).Fprereq == prereq { goto whereOrInsert_done } if int32((*TWhereOrCost)(unsafe.Pointer(p)).FrRun) <= int32(rRun) && (*TWhereOrCost)(unsafe.Pointer(p)).Fprereq&prereq == (*TWhereOrCost)(unsafe.Pointer(p)).Fprereq { return 0 } goto _1 _1: ; i = i - 1 p += 16 } if int32((*TWhereOrSet)(unsafe.Pointer(pSet)).Fn) < int32(N_OR_COST) { v3 = pSet v2 = *(*Tu16)(unsafe.Pointer(v3)) *(*Tu16)(unsafe.Pointer(v3)) = *(*Tu16)(unsafe.Pointer(v3)) + 1 p = pSet + 8 + uintptr(v2)*16 (*TWhereOrCost)(unsafe.Pointer(p)).FnOut = nOut } else { p = pSet + 8 i = uint16(1) for { if !(int32(i) < int32((*TWhereOrSet)(unsafe.Pointer(pSet)).Fn)) { break } if int32((*TWhereOrCost)(unsafe.Pointer(p)).FrRun) > int32((**(**TWhereOrCost)(__ccgo_up(pSet + 8 + uintptr(i)*16))).FrRun) { p = pSet + 8 + uintptr(i)*16 } goto _4 _4: ; i = i + 1 } if int32((*TWhereOrCost)(unsafe.Pointer(p)).FrRun) <= int32(rRun) { return 0 } } goto whereOrInsert_done whereOrInsert_done: ; (*TWhereOrCost)(unsafe.Pointer(p)).Fprereq = prereq (*TWhereOrCost)(unsafe.Pointer(p)).FrRun = rRun if int32((*TWhereOrCost)(unsafe.Pointer(p)).FnOut) > int32(nOut) { (*TWhereOrCost)(unsafe.Pointer(p)).FnOut = nOut } return int32(1) } // C documentation // // /* // ** If it is not NULL, pTerm is a term that provides an upper or lower // ** bound on a range scan. Without considering pTerm, it is estimated // ** that the scan will visit nNew rows. This function returns the number // ** estimated to be visited after taking pTerm into account. // ** // ** If the user explicitly specified a likelihood() value for this term, // ** then the return value is the likelihood multiplied by the number of // ** input rows. Otherwise, this function assumes that an "IS NOT NULL" term // ** has a likelihood of 0.50, and any other term a likelihood of 0.25. // */ func _whereRangeAdjust(tls *libc.TLS, pTerm uintptr, nNew TLogEst) (r TLogEst) { var nRet TLogEst _ = nRet nRet = nNew if pTerm != 0 { if int32((*TWhereTerm)(unsafe.Pointer(pTerm)).FtruthProb) <= 0 { nRet = int16(int32(nRet) + int32((*TWhereTerm)(unsafe.Pointer(pTerm)).FtruthProb)) } else { if int32((*TWhereTerm)(unsafe.Pointer(pTerm)).FwtFlags)&int32(TERM_VNULL) == 0 { nRet = int16(int32(nRet) - libc.Int32FromInt32(20)) } } } return nRet } // C documentation // // /* // ** This function is used to estimate the number of rows that will be visited // ** by scanning an index for a range of values. The range may have an upper // ** bound, a lower bound, or both. The WHERE clause terms that set the upper // ** and lower bounds are represented by pLower and pUpper respectively. For // ** example, assuming that index p is on t1(a): // ** // ** ... FROM t1 WHERE a > ? AND a < ? ... // ** |_____| |_____| // ** | | // ** pLower pUpper // ** // ** If either of the upper or lower bound is not present, then NULL is passed in // ** place of the corresponding WhereTerm. // ** // ** The value in (pBuilder->pNew->u.btree.nEq) is the number of the index // ** column subject to the range constraint. Or, equivalently, the number of // ** equality constraints optimized by the proposed index scan. For example, // ** assuming index p is on t1(a, b), and the SQL query is: // ** // ** ... FROM t1 WHERE a = ? AND b > ? AND b < ? ... // ** // ** then nEq is set to 1 (as the range restricted column, b, is the second // ** left-most column of the index). Or, if the query is: // ** // ** ... FROM t1 WHERE a > ? AND a < ? ... // ** // ** then nEq is set to 0. // ** // ** When this function is called, *pnOut is set to the sqlite3LogEst() of the // ** number of rows that the index scan is expected to visit without // ** considering the range constraints. If nEq is 0, then *pnOut is the number of // ** rows in the index. Assuming no error occurs, *pnOut is adjusted (reduced) // ** to account for the range constraints pLower and pUpper. // ** // ** In the absence of sqlite_stat4 ANALYZE data, or if such data cannot be // ** used, a single range inequality reduces the search space by a factor of 4. // ** and a pair of constraints (x>? AND x 0 && nEq < (*TIndex)(unsafe.Pointer(p)).FnSampleCol && (*Tsqlite3)(unsafe.Pointer((*TParse)(unsafe.Pointer(pParse)).Fdb)).FdbOptFlags&uint32(libc.Int32FromInt32(SQLITE_Stat4)) == uint32(0) { if nEq == (*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FnRecValid { **(**uintptr)(__ccgo_up(bp)) = (*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpRec nBtm = int32((*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(pLoop + 24))).FnBtm) nTop = int32((*(*struct { FnEq Tu16 FnBtm Tu16 FnTop Tu16 FnDistinctCol Tu16 FpIndex uintptr FpOrderBy uintptr })(unsafe.Pointer(pLoop + 24))).FnTop) /* Rows less than the upper bound */ iLwrIdx = -int32(2) /* aSample[] for the lower bound */ iUprIdx = -int32(1) /* aSample[] for the upper bound */ if **(**uintptr)(__ccgo_up(bp)) != 0 { (*TUnpackedRecord)(unsafe.Pointer(**(**uintptr)(__ccgo_up(bp)))).FnField = uint16((*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FnRecValid) } /* Determine iLower and iUpper using ($P) only. */ if nEq == 0 { iLower = uint64(0) iUpper = (*TIndex)(unsafe.Pointer(p)).FnRowEst0 } else { /* Note: this call could be optimized away - since the same values must ** have been requested when testing key $P in whereEqualScanEst(). */ _whereKeyStats(tls, pParse, p, **(**uintptr)(__ccgo_up(bp)), 0, bp+8) iLower = (**(**[2]TtRowcnt)(__ccgo_up(bp + 8)))[0] iUpper = (**(**[2]TtRowcnt)(__ccgo_up(bp + 8)))[0] + (**(**[2]TtRowcnt)(__ccgo_up(bp + 8)))[int32(1)] } if **(**Tu8)(__ccgo_up((*TIndex)(unsafe.Pointer(p)).FaSortOrder + uintptr(nEq))) != 0 { /* The roles of pLower and pUpper are swapped for a DESC index */ t = pLower pLower = pUpper pUpper = t t1 = nBtm nBtm = nTop nTop = t1 } /* If possible, improve on the iLower estimate using ($P:$L). */ if pLower != 0 { /* Values extracted from pExpr */ pExpr = (*TExpr)(unsafe.Pointer((*TWhereTerm)(unsafe.Pointer(pLower)).FpExpr)).FpRight rc = _sqlite3Stat4ProbeSetValue(tls, pParse, p, bp, pExpr, nBtm, nEq, bp+24) if rc == SQLITE_OK && **(**int32)(__ccgo_up(bp + 24)) != 0 { mask = uint16(libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_GT)-libc.Int32FromInt32(TK_EQ)) | libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LE)-libc.Int32FromInt32(TK_EQ))) if _sqlite3ExprVectorSize(tls, pExpr) > **(**int32)(__ccgo_up(bp + 24)) { mask = uint16(libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LE)-libc.Int32FromInt32(TK_EQ)) | libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LT)-libc.Int32FromInt32(TK_EQ))) } iLwrIdx = _whereKeyStats(tls, pParse, p, **(**uintptr)(__ccgo_up(bp)), 0, bp+8) if int32((*TWhereTerm)(unsafe.Pointer(pLower)).FeOperator)&int32(mask) != 0 { v1 = (**(**[2]TtRowcnt)(__ccgo_up(bp + 8)))[int32(1)] } else { v1 = uint64(0) } iNew = (**(**[2]TtRowcnt)(__ccgo_up(bp + 8)))[0] + v1 if iNew > iLower { iLower = iNew } nOut = nOut - 1 pLower = uintptr(0) } } /* If possible, improve on the iUpper estimate using ($P:$U). */ if pUpper != 0 { /* Values extracted from pExpr */ pExpr1 = (*TExpr)(unsafe.Pointer((*TWhereTerm)(unsafe.Pointer(pUpper)).FpExpr)).FpRight rc = _sqlite3Stat4ProbeSetValue(tls, pParse, p, bp, pExpr1, nTop, nEq, bp+28) if rc == SQLITE_OK && **(**int32)(__ccgo_up(bp + 28)) != 0 { mask1 = uint16(libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_GT)-libc.Int32FromInt32(TK_EQ)) | libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LE)-libc.Int32FromInt32(TK_EQ))) if _sqlite3ExprVectorSize(tls, pExpr1) > **(**int32)(__ccgo_up(bp + 28)) { mask1 = uint16(libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LE)-libc.Int32FromInt32(TK_EQ)) | libc.Int32FromInt32(WO_EQ)<<(libc.Int32FromInt32(TK_LT)-libc.Int32FromInt32(TK_EQ))) } iUprIdx = _whereKeyStats(tls, pParse, p, **(**uintptr)(__ccgo_up(bp)), int32(1), bp+8) if int32((*TWhereTerm)(unsafe.Pointer(pUpper)).FeOperator)&int32(mask1) != 0 { v1 = (**(**[2]TtRowcnt)(__ccgo_up(bp + 8)))[int32(1)] } else { v1 = uint64(0) } iNew1 = (**(**[2]TtRowcnt)(__ccgo_up(bp + 8)))[0] + v1 if iNew1 < iUpper { iUpper = iNew1 } nOut = nOut - 1 pUpper = uintptr(0) } } (*TWhereLoopBuilder)(unsafe.Pointer(pBuilder)).FpRec = **(**uintptr)(__ccgo_up(bp)) if rc == SQLITE_OK { if iUpper > iLower { nNew = _sqlite3LogEst(tls, iUpper-iLower) /* TUNING: If both iUpper and iLower are derived from the same ** sample, then assume they are 4x more selective. This brings ** the estimated selectivity more in line with what it would be ** if estimated without the use of STAT4 tables. */ if iLwrIdx == iUprIdx { nNew = int16(int32(nNew) - libc.Int32FromInt32(20)) } } else { nNew = int16(10) } if int32(nNew) < nOut { nOut = int32(nNew) } } } else { **(**int32)(__ccgo_up(bp + 32)) = 0 rc = _whereRangeSkipScanEst(tls, pParse, pLower, pUpper, pLoop, bp+32) if **(**int32)(__ccgo_up(bp + 32)) != 0 { return rc } } } nNew = _whereRangeAdjust(tls, pLower, int16(nOut)) nNew = _whereRangeAdjust(tls, pUpper, nNew) /* TUNING: If there is both an upper and lower limit and neither limit ** has an application-defined likelihood(), assume the range is ** reduced by an additional 75%. This means that, by default, an open-ended ** range query (e.g. col > ?) is assumed to match 1/4 of the rows in the ** index. While a closed range (e.g. col BETWEEN ? AND ?) is estimated to ** match 1/64 of the index. */ if pLower != 0 && int32((*TWhereTerm)(unsafe.Pointer(pLower)).FtruthProb) > 0 && pUpper != 0 && int32((*TWhereTerm)(unsafe.Pointer(pUpper)).FtruthProb) > 0 { nNew = int16(int32(nNew) - libc.Int32FromInt32(20)) } nOut = nOut - (libc.BoolInt32(pLower != uintptr(0)) + libc.BoolInt32(pUpper != uintptr(0))) if int32(nNew) < int32(10) { nNew = int16(10) } if int32(nNew) < nOut { nOut = int32(nNew) } (*TWhereLoop)(unsafe.Pointer(pLoop)).FnOut = int16(nOut) return rc } // C documentation // // /* // ** If the right-hand branch of the expression is a TK_COLUMN, then return // ** a pointer to the right-hand branch. Otherwise, return NULL. // */ func _whereRightSubexprIsColumn(tls *libc.TLS, p uintptr) (r uintptr) { p = _sqlite3ExprSkipCollateAndLikely(tls, (*TExpr)(unsafe.Pointer(p)).FpRight) if p != uintptr(0) && int32((*TExpr)(unsafe.Pointer(p)).Fop) == int32(TK_COLUMN) && !((*TExpr)(unsafe.Pointer(p)).Fflags&uint32(libc.Int32FromInt32(EP_FixedCol)) != libc.Uint32FromInt32(0)) { return p } return uintptr(0) } // C documentation // // /* // ** Return the cost of sorting nRow rows, assuming that the keys have // ** nOrderby columns and that the first nSorted columns are already in // ** order. // */ func _whereSortingCost(tls *libc.TLS, pWInfo uintptr, nRow TLogEst, nOrderBy int32, nSorted int32) (r TLogEst) { var nCol, rSortCost TLogEst _, _ = nCol, rSortCost /* TUNING: sorting cost proportional to the number of output columns: */ nCol = _sqlite3LogEst(tls, uint64(((*TExprList)(unsafe.Pointer((*TSelect)(unsafe.Pointer((*TWhereInfo)(unsafe.Pointer(pWInfo)).FpSelect)).FpEList)).FnExpr+int32(59))/int32(30))) rSortCost = int16(int32(nRow) + int32(nCol)) if nSorted > 0 { /* Scale the result by (Y/X) */ rSortCost = int16(int32(rSortCost) + (int32(_sqlite3LogEst(tls, uint64((nOrderBy-nSorted)*int32(100)/nOrderBy))) - libc.Int32FromInt32(66))) } /* Multiple by log(M) where M is the number of output rows. ** Use the LIMIT for M if it is smaller. Or if this sort is for ** a DISTINCT operator, M will be the number of distinct output ** rows, so fudge it downwards a bit. */ if int32((*TWhereInfo)(unsafe.Pointer(pWInfo)).FwctrlFlags)&int32(WHERE_USE_LIMIT) != 0 { rSortCost = int16(int32(rSortCost) + libc.Int32FromInt32(10)) /* TUNING: Extra 2.0x if using LIMIT */ if nSorted != 0 { rSortCost = int16(int32(rSortCost) + libc.Int32FromInt32(6)) /* TUNING: Extra 1.5x if also using partial sort */ } if int32((*TWhereInfo)(unsafe.Pointer(pWInfo)).FiLimit) < int32(nRow) { nRow = (*TWhereInfo)(unsafe.Pointer(pWInfo)).FiLimit } } else { if int32((*TWhereInfo)(unsafe.Pointer(pWInfo)).FwctrlFlags)&int32(WHERE_WANT_DISTINCT) != 0 { /* TUNING: In the sort for a DISTINCT operator, assume that the DISTINCT ** reduces the number of output rows by a factor of 2 */ if int32(nRow) > int32(10) { nRow = int16(int32(nRow) - libc.Int32FromInt32(10)) } } } rSortCost = int16(int32(rSortCost) + int32(_estLog(tls, nRow))) return rSortCost } var _winAppData = TwinVfsAppData{ FpMethod: uintptr(unsafe.Pointer(&_winIoMethod)), } // C documentation // // /* // ** Helper functions to obtain and relinquish the global mutex. The // ** global mutex is used to protect the winLockInfo objects used by // ** this file, all of which may be shared by multiple threads. // ** // ** Function winShmMutexHeld() is used to assert() that the global mutex // ** is held when required. This function is only used as part of assert() // ** statements. e.g. // ** // ** winShmEnterMutex() // ** assert( winShmMutexHeld() ); // ** winShmLeaveMutex() // */ var _winBigLock = uintptr(0) // C documentation // // /* // ** Close a file. // ** // ** It is reported that an attempt to close a handle might sometimes // ** fail. This is a very unreasonable result, but Windows is notorious // ** for being unreasonable so I do not doubt that it might happen. If // ** the close fails, we pause for 100 milliseconds and try again. As // ** many as MX_CLOSE_ATTEMPT attempts to close the handle are made before // ** giving up and returning an error. // */ func _winClose(tls *libc.TLS, id uintptr) (r int32) { var cnt, rc, v1 int32 var pFile uintptr var v2, v3 bool _, _, _, _, _, _ = cnt, pFile, rc, v1, v2, v3 cnt = 0 pFile = id _winUnmapfile(tls, pFile) for { rc = (*(*func(*libc.TLS, THANDLE) TBOOL)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(3)].FpCurrent})))(tls, (*TwinFile)(unsafe.Pointer(pFile)).Fh) /* SimulateIOError( rc=0; cnt=MX_CLOSE_ATTEMPT; ); */ goto _4 _4: ; if v2 = rc == 0; v2 { cnt = cnt + 1 v1 = cnt } if v3 = v2 && v1 < int32(MX_CLOSE_ATTEMPT); v3 { Xsqlite3_win32_sleep(tls, uint32(100)) } if !(v3 && libc.Bool(libc.Int32FromInt32(1) != 0)) { break } } if rc != 0 { (*TwinFile)(unsafe.Pointer(pFile)).Fh = libc.UintptrFromInt32(0) } if rc != 0 { v1 = SQLITE_OK } else { v1 = _winLogErrorAtLine(tls, libc.Int32FromInt32(SQLITE_IOERR)|libc.Int32FromInt32(16)<:/" or ":\", // ** it is converted to UTF-16 as-is. // ** - If the filename contains '/', it is assumed to be a // ** Cygwin absolute path, it is converted to a win32 // ** absolute path in UTF-16. // ** - Otherwise it must be a filename only, the win32 filename // ** is returned in UTF-16. // ** Note: If the function cygwin_conv_path() fails, only // ** UTF-8 -> UTF-16 conversion will be done. This can only // ** happen when the file path >32k, in which case winUtf8ToUnicode() // ** will fail too. // */ func _winConvertFromUtf8Filename(tls *libc.TLS, zFilename uintptr) (r uintptr) { var zConverted uintptr _ = zConverted zConverted = uintptr(0) if int32(1) != 0 { zConverted = _winUtf8ToUnicode(tls, zFilename) } else { zConverted = _winUtf8ToMbcs(tls, zFilename, (*(*func(*libc.TLS) TBOOL)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[0].FpCurrent})))(tls)) } /* caller will handle out of memory */ return zConverted } // C documentation // // /* // ** Find the current time (in Universal Coordinated Time). Write the // ** current time and date as a Julian Day number into *prNow and // ** return 0. Return 1 if the time and date cannot be found. // */ func _winCurrentTime(tls *libc.TLS, pVfs uintptr, prNow uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var rc int32 var _ /* i at bp+0 */ Tsqlite3_int64 _ = rc rc = _winCurrentTimeInt64(tls, pVfs, bp) if !(rc != 0) { **(**float64)(__ccgo_up(prNow)) = float64(**(**Tsqlite3_int64)(__ccgo_up(bp))) / float64(8.64e+07) } return rc } // C documentation // // /* // ** Find the current time (in Universal Coordinated Time). Write into *piNow // ** the current time and date as a Julian Day number times 86_400_000. In // ** other words, write into *piNow the number of milliseconds since the Julian // ** epoch of noon in Greenwich on November 24, 4714 B.C according to the // ** proleptic Gregorian calendar. // ** // ** On success, return SQLITE_OK. Return SQLITE_ERROR if the time and date // ** cannot be found. // */ func _winCurrentTimeInt64(tls *libc.TLS, pVfs uintptr, piNow uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var _ /* ft at bp+0 */ TFILETIME (*(*func(*libc.TLS, TLPFILETIME))(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(30)].FpCurrent})))(tls, bp) **(**Tsqlite3_int64)(__ccgo_up(piNow)) = _winFiletimeEpoch + (int64((**(**TFILETIME)(__ccgo_up(bp))).FdwHighDateTime)*_max32BitValue+int64((**(**TFILETIME)(__ccgo_up(bp))).FdwLowDateTime))/libc.Int64FromInt32(10000) _ = pVfs return SQLITE_OK } // C documentation // // /* // ** Delete the named file. // ** // ** Note that Windows does not allow a file to be deleted if some other // ** process has it open. Sometimes a virus scanner or indexing program // ** will open a journal file shortly after it is created in order to do // ** whatever it does. While this other process is holding the // ** file open, we will be unable to delete it. To work around this // ** problem, we delay 100 milliseconds and try to delete again. Up // ** to MX_DELETION_ATTEMPTs deletion attempts are run before giving // ** up and returning an error. // */ func _winDelete(tls *libc.TLS, pVfs uintptr, zFilename uintptr, syncDir int32) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var attr TDWORD var rc int32 var zConverted uintptr var _ /* cnt at bp+0 */ int32 var _ /* lastErrno at bp+4 */ TDWORD _, _, _ = attr, rc, zConverted **(**int32)(__ccgo_up(bp)) = 0 **(**TDWORD)(__ccgo_up(bp + 4)) = uint32(0) _ = pVfs _ = syncDir zConverted = _winConvertFromUtf8Filename(tls, zFilename) if zConverted == uintptr(0) { return libc.Int32FromInt32(SQLITE_IOERR) | libc.Int32FromInt32(12)< 0 { /* Ensure that there is always at least a 256 byte buffer of addressable ** memory following the returned page. If the database is corrupt, ** SQLite may overread the page slightly (in practice only a few bytes, ** but 256 is safe, round, number). */ nEofBuffer = int32(256) if (*TwinFile)(unsafe.Pointer(pFd)).FpMapRegion == uintptr(0) { rc = _winMapfile(tls, pFd, int64(-int32(1))) if rc != SQLITE_OK { return rc } } if (*TwinFile)(unsafe.Pointer(pFd)).FmmapSize >= iOff+int64(nAmt)+int64(nEofBuffer) { **(**uintptr)(__ccgo_up(pp)) = (*TwinFile)(unsafe.Pointer(pFd)).FpMapRegion + uintptr(iOff) (*TwinFile)(unsafe.Pointer(pFd)).FnFetchOut = (*TwinFile)(unsafe.Pointer(pFd)).FnFetchOut + 1 } } return SQLITE_OK } // C documentation // // /* // ** Determine the current size of a file in bytes // */ func _winFileSize(tls *libc.TLS, id uintptr, pSize uintptr) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var lastErrno, lowerBits, v1 TDWORD var pFile uintptr var rc int32 var v2 bool var _ /* upperBits at bp+0 */ TDWORD _, _, _, _, _, _ = lastErrno, lowerBits, pFile, rc, v1, v2 pFile = id rc = SQLITE_OK lowerBits = (*(*func(*libc.TLS, THANDLE, TLPDWORD) TDWORD)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(23)].FpCurrent})))(tls, (*TwinFile)(unsafe.Pointer(pFile)).Fh, bp) **(**Tsqlite3_int64)(__ccgo_up(pSize)) = int64(**(**TDWORD)(__ccgo_up(bp)))< 0 { _winGetLastErrorMsg(tls, e, nBuf, zBuf) } return int32(e) } // C documentation // // /* // ** Seek the file handle h to offset nByte of the file. // ** // ** If successful, return SQLITE_OK. Or, if an error occurs, return an SQLite // ** error code. // */ func _winHandleSeek(tls *libc.TLS, h THANDLE, iOffset Tsqlite3_int64) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var dwRet, lastErrno TDWORD var lowerBits TLONG var rc int32 var _ /* upperBits at bp+0 */ TLONG _, _, _, _ = dwRet, lastErrno, lowerBits, rc rc = SQLITE_OK /* Value returned by SetFilePointer() */ **(**TLONG)(__ccgo_up(bp)) = int32(iOffset >> libc.Int32FromInt32(32) & libc.Int64FromInt32(0x7fffffff)) lowerBits = int32(iOffset & libc.Int64FromUint32(0xffffffff)) dwRet = (*(*func(*libc.TLS, THANDLE, TLONG, TPLONG, TDWORD) TDWORD)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(54)].FpCurrent})))(tls, h, lowerBits, bp, uint32(FILE_BEGIN)) /* API oddity: If successful, SetFilePointer() returns a dword ** containing the lower 32-bits of the new file-offset. Or, if it fails, ** it returns INVALID_SET_FILE_POINTER. However according to MSDN, ** INVALID_SET_FILE_POINTER may also be a valid new offset. So to determine ** whether an error has actually occurred, it is also necessary to call ** GetLastError(). */ if dwRet == uint32(-libc.Int32FromInt32(1)) { lastErrno = (*(*func(*libc.TLS) TDWORD)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(26)].FpCurrent})))(tls) if lastErrno != uint32(0) { rc = libc.Int32FromInt32(SQLITE_IOERR) | libc.Int32FromInt32(22)< 0 { if int32(**(**int8)(__ccgo_up(zBuf + uintptr(nLen-int32(1))))) == int32('/') || int32(**(**int8)(__ccgo_up(zBuf + uintptr(nLen-int32(1))))) == int32('\\') { return int32(1) } else { if nLen+int32(1) < nBuf { if !(_aSyscall[int32(75)].FpCurrent != 0) { **(**int8)(__ccgo_up(zBuf + uintptr(nLen))) = int8('\\') } else { if _winIsDriveLetterAndColon(tls, zBuf) != 0 && (int32(**(**int8)(__ccgo_up(zBuf + 2))) == int32('/') || int32(**(**int8)(__ccgo_up(zBuf + 2))) == int32('\\')) { **(**int8)(__ccgo_up(zBuf + uintptr(nLen))) = int8('\\') **(**int8)(__ccgo_up(zBuf + 2)) = int8('\\') } else { **(**int8)(__ccgo_up(zBuf + uintptr(nLen))) = int8('/') } } **(**int8)(__ccgo_up(zBuf + uintptr(nLen+int32(1)))) = int8('\000') return int32(1) } } } } return 0 } // C documentation // // /* // ** Convert a multi-byte character string to UTF-8. // ** // ** Space to hold the returned string is obtained from sqlite3_malloc(). // */ func _winMbcsToUtf8(tls *libc.TLS, zText uintptr, useAnsi int32) (r uintptr) { var zTextUtf8 uintptr var zTmpWide TLPWSTR _, _ = zTextUtf8, zTmpWide zTmpWide = _winMbcsToUnicode(tls, zText, useAnsi) if zTmpWide == uintptr(0) { return uintptr(0) } zTextUtf8 = _winUnicodeToUtf8(tls, zTmpWide) Xsqlite3_free(tls, zTmpWide) return zTextUtf8 } var _winNolockAppData = TwinVfsAppData{ FpMethod: uintptr(unsafe.Pointer(&_winIoNolockMethod)), FbNoLock: int32(1), } /**************************************************************************** **************************** sqlite3_vfs methods **************************** ** ** This division contains the implementation of methods on the ** sqlite3_vfs object. */ func _winNolockCheckReservedLock(tls *libc.TLS, id uintptr, pResOut uintptr) (r int32) { _ = id _ = pResOut return SQLITE_OK } func _winNolockLock(tls *libc.TLS, id uintptr, locktype int32) (r int32) { _ = id _ = locktype return SQLITE_OK } func _winNolockUnlock(tls *libc.TLS, id uintptr, locktype int32) (r int32) { _ = id _ = locktype return SQLITE_OK } /******************* End of the no-op lock implementation ********************* ******************************************************************************/ // C documentation // // /* // ** If a ReadFile() or WriteFile() error occurs, invoke this routine // ** to see if it should be retried. Return TRUE to retry. Return FALSE // ** to give up with an error. // */ func _winRetryIoerr(tls *libc.TLS, pnRetry uintptr, pError uintptr) (r int32) { var e TDWORD _ = e e = (*(*func(*libc.TLS) TDWORD)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(26)].FpCurrent})))(tls) if **(**int32)(__ccgo_up(pnRetry)) >= _winIoerrRetry { if pError != 0 { **(**TDWORD)(__ccgo_up(pError)) = e } return 0 } if e == uint32(5) || e == uint32(32) || e == uint32(33) || e == uint32(55) || e == uint32(64) || e == uint32(121) || e == uint32(1231) { Xsqlite3_win32_sleep(tls, uint32(_winIoerrRetryDelay*(int32(1)+**(**int32)(__ccgo_up(pnRetry))))) **(**int32)(__ccgo_up(pnRetry)) = **(**int32)(__ccgo_up(pnRetry)) + 1 return int32(1) } if pError != 0 { **(**TDWORD)(__ccgo_up(pError)) = e } return 0 } // C documentation // // /* // ** Return the sector size in bytes of the underlying block device for // ** the specified file. This is almost always 512 bytes, but may be // ** larger for some devices. // ** // ** SQLite code assumes this function cannot fail. It also assumes that // ** if two files are created in the same file-system directory (i.e. // ** a database and its journal file) that the sector size will be the // ** same for both. // */ func _winSectorSize(tls *libc.TLS, id uintptr) (r int32) { _ = id return int32(SQLITE_DEFAULT_SECTOR_SIZE) } // C documentation // // /* // ** Move the current position of the file handle passed as the first // ** argument to offset iOffset within the file. If successful, return 0. // ** Otherwise, set pFile->lastErrno and return non-zero. // */ func _winSeekFile(tls *libc.TLS, pFile uintptr, iOffset Tsqlite3_int64) (r int32) { var rc int32 _ = rc rc = _winHandleSeek(tls, (*TwinFile)(unsafe.Pointer(pFile)).Fh, iOffset) if rc != SQLITE_OK { (*TwinFile)(unsafe.Pointer(pFile)).FlastErrno = (*(*func(*libc.TLS) TDWORD)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(26)].FpCurrent})))(tls) _winLogErrorAtLine(tls, rc, (*TwinFile)(unsafe.Pointer(pFile)).FlastErrno, __ccgo_ts+4833, (*TwinFile)(unsafe.Pointer(pFile)).FzPath, int32(51478)) } return rc } // C documentation // // /* // ** Implement a memory barrier or memory fence on shared memory. // ** // ** All loads and stores begun before the barrier must complete before // ** any load or store begun after the barrier. // */ func _winShmBarrier(tls *libc.TLS, fd uintptr) { _ = fd /* compiler-defined memory barrier */ _winShmEnterMutex(tls) /* Also mutex, for redundancy */ _winShmLeaveMutex(tls) } func _winShmEnterMutex(tls *libc.TLS) { Xsqlite3_mutex_enter(tls, _winBigLock) } func _winShmLeaveMutex(tls *libc.TLS) { Xsqlite3_mutex_leave(tls, _winBigLock) } // C documentation // // /* // ** A global array of all winShmNode objects. // ** // ** The winShmMutexHeld() must be true while reading or writing this list. // */ var _winShmNodeList = uintptr(0) // C documentation // // /* // ** Close a connection to shared-memory. Delete the underlying // ** storage if deleteFlag is true. // */ func _winShmUnmap(tls *libc.TLS, fd uintptr, deleteFlag int32) (r int32) { return _winCloseSharedMemory(tls, fd, deleteFlag) } // C documentation // // /* // ** Sleep for a little while. Return the amount of time slept. // */ func _winSleep(tls *libc.TLS, pVfs uintptr, microsec int32) (r int32) { Xsqlite3_win32_sleep(tls, uint32((microsec+int32(999))/int32(1000))) _ = pVfs return (microsec + int32(999)) / int32(1000) * int32(1000) } /* ** The following variable, if set to a non-zero value, is interpreted as ** the number of seconds since 1970 and is used to set the result of ** sqlite3OsCurrentTime() during testing. */ // C documentation // // /* // ** Windows will only let you create file view mappings // ** on allocation size granularity boundaries. // ** During sqlite3_os_init() we do a GetSystemInfo() // ** to get the granularity size. // */ var _winSysInfo TSYSTEM_INFO // C documentation // // /* // ** If sqlite3_temp_directory is defined, take the mutex and return true. // ** // ** If sqlite3_temp_directory is NULL (undefined), omit the mutex and // ** return false. // */ func _winTempDirDefined(tls *libc.TLS) (r int32) { Xsqlite3_mutex_enter(tls, _sqlite3MutexAlloc(tls, int32(SQLITE_MUTEX_STATIC_VFS1))) if Xsqlite3_temp_directory != uintptr(0) { return int32(1) } Xsqlite3_mutex_leave(tls, _sqlite3MutexAlloc(tls, int32(SQLITE_MUTEX_STATIC_VFS1))) return 0 } // C documentation // // /* // ** Truncate an open file to a specified size // */ func _winTruncate(tls *libc.TLS, id uintptr, nByte Tsqlite3_int64) (r int32) { var lastErrno, v1 TDWORD var oldMmapSize Tsqlite3_int64 var pFile uintptr var rc int32 var v2 bool _, _, _, _, _, _ = lastErrno, oldMmapSize, pFile, rc, v1, v2 pFile = id /* File handle object */ rc = SQLITE_OK if (*TwinFile)(unsafe.Pointer(pFile)).FnFetchOut > 0 { /* File truncation is a no-op if there are outstanding memory mapped ** pages. This is because truncating the file means temporarily unmapping ** the file, and that might delete memory out from under existing cursors. ** ** This can result in incremental vacuum not truncating the file, ** if there is an active read cursor when the incremental vacuum occurs. ** No real harm comes of this - the database file is not corrupted, ** though some folks might complain that the file is bigger than it ** needs to be. ** ** The only feasible work-around is to defer the truncation until after ** all references to memory-mapped content are closed. That is doable, ** but involves adding a few branches in the common write code path which ** could slow down normal operations slightly. Hence, we have decided for ** now to simply make transactions a no-op if there are pending reads. We ** can maybe revisit this decision in the future. */ return SQLITE_OK } /* If the user has configured a chunk-size for this file, truncate the ** file so that it consists of an integer number of chunks (i.e. the ** actual file size after the operation may be larger than the requested ** size). */ if (*TwinFile)(unsafe.Pointer(pFile)).FszChunk > 0 { nByte = (nByte + int64((*TwinFile)(unsafe.Pointer(pFile)).FszChunk) - int64(1)) / int64((*TwinFile)(unsafe.Pointer(pFile)).FszChunk) * int64((*TwinFile)(unsafe.Pointer(pFile)).FszChunk) } if (*TwinFile)(unsafe.Pointer(pFile)).FpMapRegion != 0 { oldMmapSize = (*TwinFile)(unsafe.Pointer(pFile)).FmmapSize } else { oldMmapSize = 0 } _winUnmapfile(tls, pFile) /* SetEndOfFile() returns non-zero when successful, or zero when it fails. */ if _winSeekFile(tls, pFile, nByte) != 0 { rc = _winLogErrorAtLine(tls, libc.Int32FromInt32(SQLITE_IOERR)|libc.Int32FromInt32(6)< 0 { if oldMmapSize > nByte { _winMapfile(tls, pFile, int64(-int32(1))) } else { _winMapfile(tls, pFile, oldMmapSize) } } return rc } // C documentation // // /* // ** If the third argument is non-NULL, then this function releases a // ** reference obtained by an earlier call to winFetch(). The second // ** argument passed to this function must be the same as the corresponding // ** argument that was passed to the winFetch() invocation. // ** // ** Or, if the third argument is NULL, then this function is being called // ** to inform the VFS layer that, according to POSIX, any existing mapping // ** may now be invalid and should be unmapped. // */ func _winUnfetch(tls *libc.TLS, fd uintptr, iOff Ti64, p uintptr) (r int32) { var pFd uintptr _ = pFd pFd = fd /* The underlying database file */ /* If p==0 (unmap the entire file) then there must be no outstanding ** xFetch references. Or, if p!=0 (meaning it is an xFetch reference), ** then there must be at least one outstanding. */ /* If p!=0, it must match the iOff value. */ if p != 0 { (*TwinFile)(unsafe.Pointer(pFd)).FnFetchOut = (*TwinFile)(unsafe.Pointer(pFd)).FnFetchOut - 1 } else { /* FIXME: If Windows truly always prevents truncating or deleting a ** file while a mapping is held, then the following winUnmapfile() call ** is unnecessary can be omitted - potentially improving ** performance. */ _winUnmapfile(tls, pFd) } return SQLITE_OK } /* ** Here ends the implementation of all sqlite3_file methods. ** ********************** End sqlite3_file Methods ******************************* ******************************************************************************/ // C documentation // // /* // ** Convert a Microsoft Unicode string to a multi-byte character string, // ** using the ANSI or OEM code page. // ** // ** Space to hold the returned string is obtained from sqlite3_malloc(). // */ func _winUnicodeToMbcs(tls *libc.TLS, zWideText TLPCWSTR, useAnsi int32) (r uintptr) { var codepage, nByte, v1 int32 var zText uintptr _, _, _, _ = codepage, nByte, zText, v1 if useAnsi != 0 { v1 = CP_ACP } else { v1 = int32(CP_OEMCP) } codepage = v1 nByte = (*(*func(*libc.TLS, TUINT, TDWORD, TLPCWSTR, int32, TLPSTR, int32, TLPCSTR, TLPBOOL) int32)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(60)].FpCurrent})))(tls, uint32(codepage), uint32(0), zWideText, -int32(1), uintptr(0), 0, uintptr(0), uintptr(0)) if nByte == 0 { return uintptr(0) } zText = _sqlite3MallocZero(tls, uint64(nByte)) if zText == uintptr(0) { return uintptr(0) } nByte = (*(*func(*libc.TLS, TUINT, TDWORD, TLPCWSTR, int32, TLPSTR, int32, TLPCSTR, TLPBOOL) int32)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(60)].FpCurrent})))(tls, uint32(codepage), uint32(0), zWideText, -int32(1), zText, nByte, uintptr(0), uintptr(0)) if nByte == 0 { Xsqlite3_free(tls, zText) zText = uintptr(0) } return zText } // C documentation // // /* // ** Convert a Microsoft Unicode string to UTF-8. // ** // ** Space to hold the returned string is obtained from sqlite3_malloc(). // */ func _winUnicodeToUtf8(tls *libc.TLS, zWideText TLPCWSTR) (r uintptr) { var nByte int32 var zText uintptr _, _ = nByte, zText nByte = (*(*func(*libc.TLS, TUINT, TDWORD, TLPCWSTR, int32, TLPSTR, int32, TLPCSTR, TLPBOOL) int32)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(60)].FpCurrent})))(tls, uint32(CP_UTF8), uint32(0), zWideText, -int32(1), uintptr(0), 0, uintptr(0), uintptr(0)) if nByte == 0 { return uintptr(0) } zText = _sqlite3MallocZero(tls, uint64(nByte)) if zText == uintptr(0) { return uintptr(0) } nByte = (*(*func(*libc.TLS, TUINT, TDWORD, TLPCWSTR, int32, TLPSTR, int32, TLPCSTR, TLPBOOL) int32)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(60)].FpCurrent})))(tls, uint32(CP_UTF8), uint32(0), zWideText, -int32(1), zText, nByte, uintptr(0), uintptr(0)) if nByte == 0 { Xsqlite3_free(tls, zText) zText = uintptr(0) } return zText } // C documentation // // /* // ** Cleans up the mapped region of the specified file, if any. // */ func _winUnmapfile(tls *libc.TLS, pFile uintptr) (r int32) { if (*TwinFile)(unsafe.Pointer(pFile)).FpMapRegion != 0 { if !((*(*func(*libc.TLS, TLPCVOID) TBOOL)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(59)].FpCurrent})))(tls, (*TwinFile)(unsafe.Pointer(pFile)).FpMapRegion) != 0) { (*TwinFile)(unsafe.Pointer(pFile)).FlastErrno = (*(*func(*libc.TLS) TDWORD)(unsafe.Pointer(&struct{ uintptr }{_aSyscall[int32(26)].FpCurrent})))(tls) return _winLogErrorAtLine(tls, libc.Int32FromInt32(SQLITE_IOERR)|libc.Int32FromInt32(24)<" (eCond==0) or "FOLLOWING " (eCond==1) or the // ** value of the second argument to nth_value() (eCond==2) has just been // ** evaluated and the result left in register reg. This function generates VM // ** code to check that the value is a non-negative integer and throws an // ** exception if it is not. // */ func _windowCheckValue(tls *libc.TLS, pParse uintptr, reg int32, eCond int32) { var regString, regZero int32 var v uintptr _, _, _ = regString, regZero, v v = _sqlite3GetVdbe(tls, pParse) regZero = _sqlite3GetTempReg(tls, pParse) _sqlite3VdbeAddOp2(tls, v, int32(OP_Integer), 0, regZero) if eCond >= int32(WINDOW_STARTING_NUM) { regString = _sqlite3GetTempReg(tls, pParse) _sqlite3VdbeAddOp4(tls, v, int32(OP_String8), 0, regString, 0, __ccgo_ts+1711, -int32(1)) _sqlite3VdbeAddOp3(tls, v, int32(OP_Ge), regString, _sqlite3VdbeCurrentAddr(tls, v)+int32(2), reg) _sqlite3VdbeChangeP5(tls, v, uint16(libc.Int32FromInt32(SQLITE_AFF_NUMERIC)|libc.Int32FromInt32(SQLITE_JUMPIFNULL))) } else { _sqlite3VdbeAddOp2(tls, v, int32(OP_MustBeInt), reg, _sqlite3VdbeCurrentAddr(tls, v)+int32(2)) } _sqlite3VdbeAddOp3(tls, v, _aOp1[eCond], regZero, _sqlite3VdbeCurrentAddr(tls, v)+int32(2), reg) _sqlite3VdbeChangeP5(tls, v, uint16(SQLITE_AFF_NUMERIC)) /* NULL case captured by */ /* the OP_MustBeInt */ /* NULL case caught by */ /* the OP_Ge */ _sqlite3MayAbort(tls, pParse) _sqlite3VdbeAddOp2(tls, v, int32(OP_Halt), int32(SQLITE_ERROR), int32(OE_Abort)) _sqlite3VdbeAppendP4(tls, v, _azErr[eCond], -int32(1)) _sqlite3ReleaseTempReg(tls, pParse, regZero) } // C documentation // // /* // ** Helper function for sqlite3WindowCodeStep(). Each call to this function // ** generates VM code for a single RETURN_ROW, AGGSTEP or AGGINVERSE // ** operation. Refer to the header comment for sqlite3WindowCodeStep() for // ** details. // */ func _windowCodeOp(tls *libc.TLS, p uintptr, op int32, regCountdown int32, jumpOnEof int32) (r int32) { var addrContinue, addrNextRange, bPeer, csr, lblDone, nReg, reg, regRowid1, regRowid2, regTmp, ret, v1, v2 int32 var pMWin, pParse, v uintptr _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _ = addrContinue, addrNextRange, bPeer, csr, lblDone, nReg, pMWin, pParse, reg, regRowid1, regRowid2, regTmp, ret, v, v1, v2 pParse = (*TWindowCodeArg)(unsafe.Pointer(p)).FpParse pMWin = (*TWindowCodeArg)(unsafe.Pointer(p)).FpMWin ret = 0 v = (*TWindowCodeArg)(unsafe.Pointer(p)).FpVdbe addrContinue = 0 bPeer = libc.BoolInt32(int32((*TWindow)(unsafe.Pointer(pMWin)).FeFrmType) != int32(TK_ROWS)) lblDone = _sqlite3VdbeMakeLabel(tls, pParse) addrNextRange = 0 /* Special case - WINDOW_AGGINVERSE is always a no-op if the frame ** starts with UNBOUNDED PRECEDING. */ if op == int32(WINDOW_AGGINVERSE) && int32((*TWindow)(unsafe.Pointer(pMWin)).FeStart) == int32(TK_UNBOUNDED) { return 0 } if regCountdown > 0 { if int32((*TWindow)(unsafe.Pointer(pMWin)).FeFrmType) == int32(TK_RANGE) { addrNextRange = _sqlite3VdbeCurrentAddr(tls, v) if op == int32(WINDOW_AGGINVERSE) { if int32((*TWindow)(unsafe.Pointer(pMWin)).FeStart) == int32(TK_FOLLOWING) { _windowCodeRangeTest(tls, p, int32(OP_Le), (*TWindowCodeArg)(unsafe.Pointer(p)).Fcurrent.Fcsr, regCountdown, (*TWindowCodeArg)(unsafe.Pointer(p)).Fstart.Fcsr, lblDone) } else { _windowCodeRangeTest(tls, p, int32(OP_Ge), (*TWindowCodeArg)(unsafe.Pointer(p)).Fstart.Fcsr, regCountdown, (*TWindowCodeArg)(unsafe.Pointer(p)).Fcurrent.Fcsr, lblDone) } } else { _windowCodeRangeTest(tls, p, int32(OP_Gt), (*TWindowCodeArg)(unsafe.Pointer(p)).Fend.Fcsr, regCountdown, (*TWindowCodeArg)(unsafe.Pointer(p)).Fcurrent.Fcsr, lblDone) } } else { _sqlite3VdbeAddOp3(tls, v, int32(OP_IfPos), regCountdown, lblDone, int32(1)) } } if op == int32(WINDOW_RETURN_ROW) && (*TWindow)(unsafe.Pointer(pMWin)).FregStartRowid == 0 { _windowAggFinal(tls, p, 0) } addrContinue = _sqlite3VdbeCurrentAddr(tls, v) /* If this is a (RANGE BETWEEN a FOLLOWING AND b FOLLOWING) or ** (RANGE BETWEEN b PRECEDING AND a PRECEDING) frame, ensure the ** start cursor does not advance past the end cursor within the ** temporary table. It otherwise might, if (a>b). Also ensure that, ** if the input cursor is still finding new rows, that the end ** cursor does not go past it to EOF. */ if int32((*TWindow)(unsafe.Pointer(pMWin)).FeStart) == int32((*TWindow)(unsafe.Pointer(pMWin)).FeEnd) && regCountdown != 0 && int32((*TWindow)(unsafe.Pointer(pMWin)).FeFrmType) == int32(TK_RANGE) { regRowid1 = _sqlite3GetTempReg(tls, pParse) regRowid2 = _sqlite3GetTempReg(tls, pParse) if op == int32(WINDOW_AGGINVERSE) { _sqlite3VdbeAddOp2(tls, v, int32(OP_Rowid), (*TWindowCodeArg)(unsafe.Pointer(p)).Fstart.Fcsr, regRowid1) _sqlite3VdbeAddOp2(tls, v, int32(OP_Rowid), (*TWindowCodeArg)(unsafe.Pointer(p)).Fend.Fcsr, regRowid2) _sqlite3VdbeAddOp3(tls, v, int32(OP_Ge), regRowid2, lblDone, regRowid1) } else { if (*TWindowCodeArg)(unsafe.Pointer(p)).FregRowid != 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_Rowid), (*TWindowCodeArg)(unsafe.Pointer(p)).Fend.Fcsr, regRowid1) _sqlite3VdbeAddOp3(tls, v, int32(OP_Ge), (*TWindowCodeArg)(unsafe.Pointer(p)).FregRowid, lblDone, regRowid1) } } _sqlite3ReleaseTempReg(tls, pParse, regRowid1) _sqlite3ReleaseTempReg(tls, pParse, regRowid2) } switch op { case int32(WINDOW_RETURN_ROW): csr = (*TWindowCodeArg)(unsafe.Pointer(p)).Fcurrent.Fcsr reg = (*TWindowCodeArg)(unsafe.Pointer(p)).Fcurrent.Freg _windowReturnOneRow(tls, p) case int32(WINDOW_AGGINVERSE): csr = (*TWindowCodeArg)(unsafe.Pointer(p)).Fstart.Fcsr reg = (*TWindowCodeArg)(unsafe.Pointer(p)).Fstart.Freg if (*TWindow)(unsafe.Pointer(pMWin)).FregStartRowid != 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_AddImm), (*TWindow)(unsafe.Pointer(pMWin)).FregStartRowid, int32(1)) } else { _windowAggStep(tls, p, pMWin, csr, int32(1), (*TWindowCodeArg)(unsafe.Pointer(p)).FregArg) } default: csr = (*TWindowCodeArg)(unsafe.Pointer(p)).Fend.Fcsr reg = (*TWindowCodeArg)(unsafe.Pointer(p)).Fend.Freg if (*TWindow)(unsafe.Pointer(pMWin)).FregStartRowid != 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_AddImm), (*TWindow)(unsafe.Pointer(pMWin)).FregEndRowid, int32(1)) } else { _windowAggStep(tls, p, pMWin, csr, 0, (*TWindowCodeArg)(unsafe.Pointer(p)).FregArg) } break } if op == (*TWindowCodeArg)(unsafe.Pointer(p)).FeDelete { _sqlite3VdbeAddOp1(tls, v, int32(OP_Delete), csr) _sqlite3VdbeChangeP5(tls, v, uint16(OPFLAG_SAVEPOSITION)) } if jumpOnEof != 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_Next), csr, _sqlite3VdbeCurrentAddr(tls, v)+int32(2)) ret = _sqlite3VdbeAddOp0(tls, v, int32(OP_Goto)) } else { _sqlite3VdbeAddOp2(tls, v, int32(OP_Next), csr, _sqlite3VdbeCurrentAddr(tls, v)+int32(1)+bPeer) if bPeer != 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_Goto), 0, lblDone) } } if bPeer != 0 { if (*TWindow)(unsafe.Pointer(pMWin)).FpOrderBy != 0 { v1 = (*TExprList)(unsafe.Pointer((*TWindow)(unsafe.Pointer(pMWin)).FpOrderBy)).FnExpr } else { v1 = 0 } nReg = v1 if nReg != 0 { v2 = _sqlite3GetTempRange(tls, pParse, nReg) } else { v2 = 0 } regTmp = v2 _windowReadPeerValues(tls, p, csr, regTmp) _windowIfNewPeer(tls, pParse, (*TWindow)(unsafe.Pointer(pMWin)).FpOrderBy, regTmp, reg, addrContinue) _sqlite3ReleaseTempRange(tls, pParse, regTmp, nReg) } if addrNextRange != 0 { _sqlite3VdbeAddOp2(tls, v, int32(OP_Goto), 0, addrNextRange) } _sqlite3VdbeResolveLabel(tls, v, lblDone) return ret } func _windowFind(tls *libc.TLS, pParse uintptr, pList uintptr, zName uintptr) (r uintptr) { bp := tls.Alloc(16) defer tls.Free(16) var p uintptr _ = p p = pList for { if !(p != 0) { break } if _sqlite3StrICmp(tls, (*TWindow)(unsafe.Pointer(p)).FzName, zName) == 0 { break } goto _1 _1: ; p = (*TWindow)(unsafe.Pointer(p)).FpNextWin } if p == uintptr(0) { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+25510, libc.VaList(bp+8, zName)) } return p } // C documentation // // /* // ** Generate code to calculate the current values of all window functions in the // ** p->pMWin list by doing a full scan of the current window frame. Store the // ** results in the Window.regResult registers, ready to return the upper // ** layer. // */ func _windowFullScan(tls *libc.TLS, p uintptr) { var addr, addrEq, addrNext, csr, lblBrk, lblNext, nPeer, regCPeer, regCRowid, regPeer, regRowid, v1 int32 var pKeyInfo, pMWin, pParse, pWin, v uintptr _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _ = addr, addrEq, addrNext, csr, lblBrk, lblNext, nPeer, pKeyInfo, pMWin, pParse, pWin, regCPeer, regCRowid, regPeer, regRowid, v, v1 pParse = (*TWindowCodeArg)(unsafe.Pointer(p)).FpParse pMWin = (*TWindowCodeArg)(unsafe.Pointer(p)).FpMWin v = (*TWindowCodeArg)(unsafe.Pointer(p)).FpVdbe regCRowid = 0 /* Current rowid value */ regCPeer = 0 /* Current peer values */ regRowid = 0 /* AggStep rowid value */ regPeer = 0 csr = (*TWindow)(unsafe.Pointer(pMWin)).FcsrApp if (*TWindow)(unsafe.Pointer(pMWin)).FpOrderBy != 0 { v1 = (*TExprList)(unsafe.Pointer((*TWindow)(unsafe.Pointer(pMWin)).FpOrderBy)).FnExpr } else { v1 = 0 } nPeer = v1 lblNext = _sqlite3VdbeMakeLabel(tls, pParse) lblBrk = _sqlite3VdbeMakeLabel(tls, pParse) regCRowid = _sqlite3GetTempReg(tls, pParse) regRowid = _sqlite3GetTempReg(tls, pParse) if nPeer != 0 { regCPeer = _sqlite3GetTempRange(tls, pParse, nPeer) regPeer = _sqlite3GetTempRange(tls, pParse, nPeer) } _sqlite3VdbeAddOp2(tls, v, int32(OP_Rowid), (*TWindow)(unsafe.Pointer(pMWin)).FiEphCsr, regCRowid) _windowReadPeerValues(tls, p, (*TWindow)(unsafe.Pointer(pMWin)).FiEphCsr, regCPeer) pWin = pMWin for { if !(pWin != 0) { break } _sqlite3VdbeAddOp2(tls, v, int32(OP_Null), 0, (*TWindow)(unsafe.Pointer(pWin)).FregAccum) goto _2 _2: ; pWin = (*TWindow)(unsafe.Pointer(pWin)).FpNextWin } _sqlite3VdbeAddOp3(tls, v, int32(OP_SeekGE), csr, lblBrk, (*TWindow)(unsafe.Pointer(pMWin)).FregStartRowid) addrNext = _sqlite3VdbeCurrentAddr(tls, v) _sqlite3VdbeAddOp2(tls, v, int32(OP_Rowid), csr, regRowid) _sqlite3VdbeAddOp3(tls, v, int32(OP_Gt), (*TWindow)(unsafe.Pointer(pMWin)).FregEndRowid, lblBrk, regRowid) if int32((*TWindow)(unsafe.Pointer(pMWin)).FeExclude) == int32(TK_CURRENT) { _sqlite3VdbeAddOp3(tls, v, int32(OP_Eq), regCRowid, lblNext, regRowid) } else { if int32((*TWindow)(unsafe.Pointer(pMWin)).FeExclude) != int32(TK_NO) { addrEq = 0 pKeyInfo = uintptr(0) if (*TWindow)(unsafe.Pointer(pMWin)).FpOrderBy != 0 { pKeyInfo = _sqlite3KeyInfoFromExprList(tls, pParse, (*TWindow)(unsafe.Pointer(pMWin)).FpOrderBy, 0, 0) } if int32((*TWindow)(unsafe.Pointer(pMWin)).FeExclude) == int32(TK_TIES) { addrEq = _sqlite3VdbeAddOp3(tls, v, int32(OP_Eq), regCRowid, 0, regRowid) } if pKeyInfo != 0 { _windowReadPeerValues(tls, p, csr, regPeer) _sqlite3VdbeAddOp3(tls, v, int32(OP_Compare), regPeer, regCPeer, nPeer) _sqlite3VdbeAppendP4(tls, v, pKeyInfo, -int32(9)) addr = _sqlite3VdbeCurrentAddr(tls, v) + int32(1) _sqlite3VdbeAddOp3(tls, v, int32(OP_Jump), addr, lblNext, addr) } else { _sqlite3VdbeAddOp2(tls, v, int32(OP_Goto), 0, lblNext) } if addrEq != 0 { _sqlite3VdbeJumpHere(tls, v, addrEq) } } } _windowAggStep(tls, p, pMWin, csr, 0, (*TWindowCodeArg)(unsafe.Pointer(p)).FregArg) _sqlite3VdbeResolveLabel(tls, v, lblNext) _sqlite3VdbeAddOp2(tls, v, int32(OP_Next), csr, addrNext) _sqlite3VdbeJumpHere(tls, v, addrNext-int32(1)) _sqlite3VdbeJumpHere(tls, v, addrNext+int32(1)) _sqlite3ReleaseTempReg(tls, pParse, regRowid) _sqlite3ReleaseTempReg(tls, pParse, regCRowid) if nPeer != 0 { _sqlite3ReleaseTempRange(tls, pParse, regPeer, nPeer) _sqlite3ReleaseTempRange(tls, pParse, regCPeer, nPeer) } _windowAggFinal(tls, p, int32(1)) } const _winmajor = 0 const _winminor = 0 const _winver = 0 type _wireBRECORD = T_wireBRECORD type _wireSAFEARRAY = T_wireSAFEARRAY type _wireSAFEARRAY_UNION = T_wireSAFEARRAY_UNION type _wireSAFEARR_BRECORD = T_wireSAFEARR_BRECORD type _wireSAFEARR_BSTR = T_wireSAFEARR_BSTR type _wireSAFEARR_DISPATCH = T_wireSAFEARR_DISPATCH type _wireSAFEARR_HAVEIID = T_wireSAFEARR_HAVEIID type _wireSAFEARR_UNKNOWN = T_wireSAFEARR_UNKNOWN type _wireSAFEARR_VARIANT = T_wireSAFEARR_VARIANT type _wireVARIANT = T_wireVARIANT const _wpgmptr = 0 // C documentation // // /* // ** Functions to serialize a 16 bit integer, 32 bit real number and // ** 64 bit integer. The value returned is the number of bytes written // ** to the argument buffer (always 2, 4 and 8 respectively). // */ func _writeInt16(tls *libc.TLS, p uintptr, i int32) { **(**Tu8)(__ccgo_up(p)) = uint8(i >> int32(8) & int32(0xFF)) **(**Tu8)(__ccgo_up(p + 1)) = uint8(i >> 0 & int32(0xFF)) } func _writeInt64(tls *libc.TLS, p uintptr, i Ti64) (r int32) { **(**Tu8)(__ccgo_up(p)) = uint8(i >> libc.Int32FromInt32(56) & int64(0xFF)) **(**Tu8)(__ccgo_up(p + 1)) = uint8(i >> libc.Int32FromInt32(48) & int64(0xFF)) **(**Tu8)(__ccgo_up(p + 2)) = uint8(i >> libc.Int32FromInt32(40) & int64(0xFF)) **(**Tu8)(__ccgo_up(p + 3)) = uint8(i >> libc.Int32FromInt32(32) & int64(0xFF)) **(**Tu8)(__ccgo_up(p + 4)) = uint8(i >> libc.Int32FromInt32(24) & int64(0xFF)) **(**Tu8)(__ccgo_up(p + 5)) = uint8(i >> libc.Int32FromInt32(16) & int64(0xFF)) **(**Tu8)(__ccgo_up(p + 6)) = uint8(i >> libc.Int32FromInt32(8) & int64(0xFF)) **(**Tu8)(__ccgo_up(p + 7)) = uint8(i >> libc.Int32FromInt32(0) & int64(0xFF)) return int32(8) } type _xml_error = T_xml_error // C documentation // // /* // ** The following routine is called if the stack overflows. // */ func _yyStackOverflow(tls *libc.TLS, yypParser uintptr) { var pParse uintptr _ = pParse pParse = (*TyyParser)(unsafe.Pointer(yypParser)).FpParse for (*TyyParser)(unsafe.Pointer(yypParser)).Fyytos > (*TyyParser)(unsafe.Pointer(yypParser)).Fyystack { _yy_pop_parser_stack(tls, yypParser) } /* Here code is inserted which will execute if the parser ** stack every overflows */ /******** Begin %stack_overflow code ******************************************/ if (*TParse)(unsafe.Pointer(pParse)).FnErr == 0 { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+26213, 0) } /******** End %stack_overflow code ********************************************/ /* Suppress warning about unused %extra_argument var */ (*TyyParser)(unsafe.Pointer(yypParser)).FpParse = pParse } /* ** Print tracing information for a SHIFT action */ // C documentation // // /* The following function deletes the "minor type" or semantic value // ** associated with a symbol. The symbol can be either a terminal // ** or nonterminal. "yymajor" is the symbol code, and "yypminor" is // ** a pointer to the value to be deleted. The code used to do the // ** deletions is derived from the %destructor and/or %token_destructor // ** directives of the input grammar. // */ func _yy_destructor(tls *libc.TLS, yypParser uintptr, yymajor uint16, yypminor uintptr) { var pParse uintptr _ = pParse pParse = (*TyyParser)(unsafe.Pointer(yypParser)).FpParse switch int32(yymajor) { /* Here is inserted the actions which take place when a ** terminal or non-terminal is destroyed. This can happen ** when the symbol is popped from the stack during a ** reduce or during error processing or when a parser is ** being destroyed before it is finished parsing. ** ** Note: during a reduce, the only symbols destroyed are those ** which appear on the RHS of the rule, but which are *not* used ** inside the C code. */ /********* Begin destructor definitions ***************************************/ case int32(206): /* select */ fallthrough case int32(241): /* selectnowith */ fallthrough case int32(242): /* oneselect */ fallthrough case int32(254): /* values */ fallthrough case int32(256): /* mvalues */ _sqlite3SelectDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(218): /* term */ fallthrough case int32(219): /* expr */ fallthrough case int32(248): /* where_opt */ fallthrough case int32(250): /* having_opt */ fallthrough case int32(270): /* where_opt_ret */ fallthrough case int32(281): /* case_operand */ fallthrough case int32(283): /* case_else */ fallthrough case int32(286): /* vinto */ fallthrough case int32(293): /* when_clause */ fallthrough case int32(297): /* key_opt */ fallthrough case int32(314): /* filter_clause */ _sqlite3ExprDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(223): /* eidlist_opt */ fallthrough case int32(233): /* sortlist */ fallthrough case int32(234): /* eidlist */ fallthrough case int32(246): /* selcollist */ fallthrough case int32(249): /* groupby_opt */ fallthrough case int32(251): /* orderby_opt */ fallthrough case int32(255): /* nexprlist */ fallthrough case int32(257): /* sclp */ fallthrough case int32(264): /* exprlist */ fallthrough case int32(271): /* setlist */ fallthrough case int32(280): /* paren_exprlist */ fallthrough case int32(282): /* case_exprlist */ fallthrough case int32(313): /* part_opt */ _sqlite3ExprListDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(240): /* fullname */ fallthrough case int32(247): /* from */ fallthrough case int32(259): /* seltablist */ fallthrough case int32(260): /* stl_prefix */ fallthrough case int32(265): /* xfullname */ _sqlite3SrcListDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(243): /* wqlist */ _sqlite3WithDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(253): /* window_clause */ fallthrough case int32(309): /* windowdefn_list */ _sqlite3WindowListDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(266): /* idlist */ fallthrough case int32(273): /* idlist_opt */ _sqlite3IdListDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(276): /* filter_over */ fallthrough case int32(310): /* windowdefn */ fallthrough case int32(311): /* window */ fallthrough case int32(312): /* frame_opt */ fallthrough case int32(315): /* over_clause */ _sqlite3WindowDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(289): /* trigger_cmd_list */ fallthrough case int32(294): /* trigger_cmd */ _sqlite3DeleteTriggerStep(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, *(*uintptr)(unsafe.Pointer(yypminor))) case int32(291): /* trigger_event */ _sqlite3IdListDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, (*(*TTrigEvent)(unsafe.Pointer(yypminor))).Fb) case int32(317): /* frame_bound */ fallthrough case int32(318): /* frame_bound_s */ fallthrough case int32(319): /* frame_bound_e */ _sqlite3ExprDelete(tls, (*TParse)(unsafe.Pointer(pParse)).Fdb, (*(*TFrameBound)(unsafe.Pointer(yypminor))).FpExpr) break /********* End destructor definitions *****************************************/ fallthrough default: break /* If no destructor action specified: do nothing */ } } // C documentation // // /* // ** Find the appropriate action for a parser given the non-terminal // ** look-ahead token iLookAhead. // */ func _yy_find_reduce_action(tls *libc.TLS, stateno uint16, iLookAhead uint16) (r uint16) { var i int32 _ = i i = int32(_yy_reduce_ofst[stateno]) i = i + int32(iLookAhead) return _yy_action[i] } // C documentation // // /* // ** Find the appropriate action for a parser given the terminal // ** look-ahead token iLookAhead. // */ func _yy_find_shift_action(tls *libc.TLS, iLookAhead uint16, stateno uint16) (r uint16) { var i, j int32 var iFallback uint16 _, _, _ = i, iFallback, j if int32(stateno) > int32(YY_MAX_SHIFT) { return stateno } for cond := true; cond; cond = int32(1) != 0 { i = int32(_yy_shift_ofst[stateno]) i = i + int32(iLookAhead) if int32(_yy_lookahead[i]) != int32(iLookAhead) { /* Fallback token */ iFallback = _yyFallback[iLookAhead] if int32(iFallback) != 0 { /* Fallback loop must terminate */ iLookAhead = iFallback continue } j = i - int32(iLookAhead) + int32(YYWILDCARD) if int32(_yy_lookahead[j]) == int32(YYWILDCARD) && int32(iLookAhead) > 0 { return _yy_action[j] } return _yy_default[stateno] } else { return _yy_action[i] } } return r } // C documentation // // /* // ** The following code executes when a syntax error first occurs. // */ func _yy_syntax_error(tls *libc.TLS, yypParser uintptr, yymajor int32, _yyminor TToken) { bp := tls.Alloc(16) defer tls.Free(16) *(*TToken)(unsafe.Pointer(bp)) = _yyminor var pParse uintptr _ = pParse pParse = (*TyyParser)(unsafe.Pointer(yypParser)).FpParse /************ Begin %syntax_error code ****************************************/ _ = yymajor /* Silence some compiler warnings */ if **(**int8)(__ccgo_up((**(**TToken)(__ccgo_up(bp))).Fz)) != 0 { _parserSyntaxError(tls, pParse, bp) } else { _sqlite3ErrorMsg(tls, pParse, __ccgo_ts+26434, 0) } /************ End %syntax_error code ******************************************/ /* Suppress warning about unused %extra_argument variable */ (*TyyParser)(unsafe.Pointer(yypParser)).FpParse = pParse } var _zChars = [63]int8{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'} // C documentation // // /* // ** The journal file must be open when this function is called. // ** // ** This function is a no-op if the journal file has not been written to // ** within the current transaction (i.e. if Pager.journalOff==0). // ** // ** If doTruncate is non-zero or the Pager.journalSizeLimit variable is // ** set to 0, then truncate the journal file to zero bytes in size. Otherwise, // ** zero the 28-byte header at the start of the journal file. In either case, // ** if the pager is not in no-sync mode, sync the journal file immediately // ** after writing or truncating it. // ** // ** If Pager.journalSizeLimit is set to a positive, non-zero value, and // ** following the truncation or zeroing described above the size of the // ** journal file in bytes is larger than this value, then truncate the // ** journal file to Pager.journalSizeLimit bytes. The journal file does // ** not need to be synced following this operation. // ** // ** If an IO error occurs, abandon processing and return the IO error code. // ** Otherwise, return SQLITE_OK. // */ func _zeroJournalHdr(tls *libc.TLS, pPager uintptr, doTruncate int32) (r int32) { bp := tls.Alloc(16) defer tls.Free(16) var iLimit Ti64 var rc int32 var _ /* sz at bp+0 */ Ti64 _, _ = iLimit, rc rc = SQLITE_OK /* Return code */ if (*TPager)(unsafe.Pointer(pPager)).FjournalOff != 0 { iLimit = (*TPager)(unsafe.Pointer(pPager)).FjournalSizeLimit /* Local cache of jsl */ if doTruncate != 0 || iLimit == 0 { rc = _sqlite3OsTruncate(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd, 0) } else { rc = _sqlite3OsWrite(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd, uintptr(unsafe.Pointer(&_zeroHdr)), int32(28), 0) } if rc == SQLITE_OK && !((*TPager)(unsafe.Pointer(pPager)).FnoSync != 0) { rc = _sqlite3OsSync(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd, int32(SQLITE_SYNC_DATAONLY)|int32((*TPager)(unsafe.Pointer(pPager)).FsyncFlags)) } /* At this point the transaction is committed but the write lock ** is still held on the file. If there is a size limit configured for ** the persistent journal and the journal file currently consumes more ** space than that limit allows for, truncate it now. There is no need ** to sync the file following this operation. */ if rc == SQLITE_OK && iLimit > 0 { rc = _sqlite3OsFileSize(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd, bp) if rc == SQLITE_OK && **(**Ti64)(__ccgo_up(bp)) > iLimit { rc = _sqlite3OsTruncate(tls, (*TPager)(unsafe.Pointer(pPager)).Fjfd, iLimit) } } } return rc } // C documentation // // /* // ** The zeroblob(N) function returns a zero-filled blob of size N bytes. // */ func _zeroblobFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { var n Ti64 var rc int32 _, _ = n, rc _ = argc n = Xsqlite3_value_int64(tls, **(**uintptr)(__ccgo_up(argv))) if n < 0 { n = 0 } rc = Xsqlite3_result_zeroblob64(tls, context, uint64(n)) /* IMP: R-00293-64994 */ if rc != 0 { Xsqlite3_result_error_code(tls, context, rc) } } const abnormal_termination = 0 const auxGetDevCaps = 0 type boolean = Tboolean type byte = Tbyte const cPRIV_KEY_CACHE_MAX_ITEMS_DEFAULT = 20 const cPRIV_KEY_CACHE_PURGE_INTERVAL_SECONDS_DEFAULT = 86400 const cbNDRContext = 20 const chx1 = 1040 const chx10 = 1049 const chx11 = 1050 const chx12 = 1051 const chx13 = 1052 const chx14 = 1053 const chx15 = 1054 const chx16 = 1055 const chx2 = 1041 const chx3 = 1042 const chx4 = 1043 const chx5 = 1044 const chx6 = 1045 const chx7 = 1046 const chx8 = 1047 const chx9 = 1048 type clockid_t = Tclockid_t /* ** The MSVC CRT on Windows CE may not have a localtime() function. ** So declare a substitute. The substitute function itself is ** defined in "os_win.c". */ const cmb1 = 1136 const cmb10 = 1145 const cmb11 = 1146 const cmb12 = 1147 const cmb13 = 1148 const cmb14 = 1149 const cmb15 = 1150 const cmb16 = 1151 const cmb2 = 1137 const cmb3 = 1138 const cmb4 = 1139 const cmb5 = 1140 const cmb6 = 1141 const cmb7 = 1142 const cmb8 = 1143 const cmb9 = 1144 type cs_byte = Tcs_byte const ctl1 = 1184 const ctlFirst = 1024 const ctlLast = 1279 type double_t = Tdouble_t /* Documentation on decimal float math http://h21007.www2.hp.com/portal/site/dspp/menuitem.863c3e4cbcdc3f3515b49c108973a801?ciid=8cf166fedd1aa110VgnVCM100000a360ea10RCRD */ const dwFORCE_KEY_PROTECTION_DISABLED = 0 const dwFORCE_KEY_PROTECTION_HIGH = 2 const dwFORCE_KEY_PROTECTION_USER_SELECT = 1 const edt1 = 1152 const edt10 = 1161 const edt11 = 1162 const edt12 = 1163 const edt13 = 1164 const edt14 = 1165 const edt15 = 1166 const edt16 = 1167 const edt2 = 1153 const edt3 = 1154 const edt4 = 1155 const edt5 = 1156 const edt6 = 1157 const edt7 = 1158 const edt8 = 1159 const edt9 = 1160 const environ = 0 type error_status_t = Terror_status_t const exception_code = 0 const frm1 = 1076 const frm2 = 1077 const frm3 = 1078 const frm4 = 1079 const fseeko = 0 const ftello = 0 const grp1 = 1072 const grp2 = 1073 const grp3 = 1074 const grp4 = 1075 const h_errno = 0 type handle_t = Thandle_t type hostent = Thostent const hyper = "__int64" const ico1 = 1084 const ico2 = 1085 const ico3 = 1086 const ico4 = 1087 type in_addr = Tin_addr type ip_mreq = Tip_mreq const isascii = 0 const iscsym = 0 const iscsymf = 0 const joyGetDevCaps = 0 type joyinfo_tag = Tjoyinfo_tag type joyinfoex_tag = Tjoyinfoex_tag type localeinfo_struct = Tlocaleinfo_struct const lst1 = 1120 const lst10 = 1129 const lst11 = 1130 const lst12 = 1131 const lst13 = 1132 const lst14 = 1133 const lst15 = 1134 const lst16 = 1135 const lst2 = 1121 const lst3 = 1122 const lst4 = 1123 const lst5 = 1124 const lst6 = 1125 const lst7 = 1126 const lst8 = 1127 const lst9 = 1128 const lstrcat = 0 const lstrcmp = 0 const lstrcmpi = 0 const lstrcpy = 0 const lstrcpyn = 0 const lstrlen = 0 const matherr = 0 const mciGetDeviceID = 0 const mciGetDeviceIDFromElementID = 0 const mciGetErrorString = 0 const mciSendCommand = 0 const mciSendString = 0 const midiInGetDevCaps = 0 const midiInGetErrorText = 0 const midiOutGetDevCaps = 0 const midiOutGetErrorText = 0 type midievent_tag = Tmidievent_tag type midihdr_tag = Tmidihdr_tag type midiproptempo_tag = Tmidiproptempo_tag type midiproptimediv_tag = Tmidiproptimediv_tag type midistrmbuffver_tag = Tmidistrmbuffver_tag const midl_user_allocate = 0 const midl_user_free = 0 const mixerGetControlDetails = 0 const mixerGetDevCaps = 0 const mixerGetLineControls = 0 const mixerGetLineInfo = 0 const mmioInstallIOProc = 0 const mmioOpen = 0 const mmioRename = 0 const mmioStringToFOURCC = 0 type mmtime_tag = Tmmtime_tag type netent = Tnetent type off32_t = Toff32_t const onexit_t = 0 const osInterlockedCompareExchange = 0 const pclose = 0 type pcmwaveformat_tag = Tpcmwaveformat_tag const popen = 0 type protoent = Tprotoent type provider_info = Tprovider_info const psh1 = 1024 const psh10 = 1033 const psh11 = 1034 const psh12 = 1035 const psh13 = 1036 const psh14 = 1037 const psh15 = 1038 const psh16 = 1039 const psh2 = 1025 const psh3 = 1026 const psh4 = 1027 const psh5 = 1028 const psh6 = 1029 const psh7 = 1030 const psh8 = 1031 const psh9 = 1032 const pshHelp = 1038 type pthreadlocinfo = Tpthreadlocinfo type pthreadmbcinfo = Tpthreadmbcinfo type pvalueA = TpvalueA type pvalueW = TpvalueW const rad1 = 1056 const rad10 = 1065 const rad11 = 1066 const rad12 = 1067 const rad13 = 1068 const rad14 = 1069 const rad15 = 1070 const rad16 = 1071 const rad2 = 1057 const rad3 = 1058 const rad4 = 1059 const rad5 = 1060 const rad6 = 1061 const rad7 = 1062 const rad8 = 1063 const rad9 = 1064 const rct1 = 1080 const rct2 = 1081 const rct3 = 1082 const rct4 = 1083 type remoteMETAFILEPICT = TremoteMETAFILEPICT const rpc_binding_handle_t = 0 const rpc_binding_vector_t = 0 const scr1 = 1168 const scr2 = 1169 const scr3 = 1170 const scr4 = 1171 const scr5 = 1172 const scr6 = 1173 const scr7 = 1174 const scr8 = 1175 type servent = Tservent const sndPlaySound = 0 type sockaddr_in = Tsockaddr_in const sqlite3_win_test_unc_locking = 0 const stc1 = 1088 const stc10 = 1097 const stc11 = 1098 const stc12 = 1099 const stc13 = 1100 const stc14 = 1101 const stc15 = 1102 const stc16 = 1103 const stc17 = 1104 const stc18 = 1105 const stc19 = 1106 const stc2 = 1089 const stc20 = 1107 const stc21 = 1108 const stc22 = 1109 const stc23 = 1110 const stc24 = 1111 const stc25 = 1112 const stc26 = 1113 const stc27 = 1114 const stc28 = 1115 const stc29 = 1116 const stc3 = 1090 const stc30 = 1117 const stc31 = 1118 const stc32 = 1119 const stc4 = 1091 const stc5 = 1092 const stc6 = 1093 const stc7 = 1094 const stc8 = 1095 const stc9 = 1096 const strcasecmp = 0 const strncasecmp = 0 const sys_errlist = 0 const sys_nerr = 0 const szFORCE_KEY_PROTECTION = "ForceKeyProtection" const szKEY_CACHE_ENABLED = "CachePrivateKeys" const szKEY_CACHE_SECONDS = "PrivateKeyLifetimeSeconds" const szKEY_CRYPTOAPI_PRIVATE_KEY_OPTIONS = "Software\\\\Policies\\\\Microsoft\\\\Cryptography" const szOIDVerisign_FailInfo = "2.16.840.1.113733.1.9.4" const szOIDVerisign_MessageType = "2.16.840.1.113733.1.9.2" const szOIDVerisign_PkiStatus = "2.16.840.1.113733.1.9.3" const szOIDVerisign_RecipientNonce = "2.16.840.1.113733.1.9.6" const szOIDVerisign_SenderNonce = "2.16.840.1.113733.1.9.5" const szOIDVerisign_TransactionID = "2.16.840.1.113733.1.9.7" const szOID_ANSI_X942 = "1.2.840.10046" const szOID_ANSI_X942_DH = "1.2.840.10046.2.1" const szOID_ANY_APPLICATION_POLICY = "1.3.6.1.4.1.311.10.12.1" const szOID_ANY_CERT_POLICY = "2.5.29.32.0" const szOID_ANY_ENHANCED_KEY_USAGE = "2.5.29.37.0" const szOID_APPLICATION_CERT_POLICIES = "1.3.6.1.4.1.311.21.10" const szOID_APPLICATION_POLICY_CONSTRAINTS = "1.3.6.1.4.1.311.21.12" const szOID_APPLICATION_POLICY_MAPPINGS = "1.3.6.1.4.1.311.21.11" const szOID_ARCHIVED_KEY_ATTR = "1.3.6.1.4.1.311.21.13" const szOID_ARCHIVED_KEY_CERT_HASH = "1.3.6.1.4.1.311.21.16" const szOID_ATTEST_WHQL_CRYPTO = "1.3.6.1.4.1.311.10.3.5.1" const szOID_ATTR_PLATFORM_SPECIFICATION = "2.23.133.2.17" const szOID_ATTR_SUPPORTED_ALGORITHMS = "2.5.4.52" const szOID_ATTR_TPM_SECURITY_ASSERTIONS = "2.23.133.2.18" const szOID_ATTR_TPM_SPECIFICATION = "2.23.133.2.16" const szOID_AUTHORITY_INFO_ACCESS = "1.3.6.1.5.5.7.1.1" const szOID_AUTHORITY_KEY_IDENTIFIER = "2.5.29.1" const szOID_AUTHORITY_KEY_IDENTIFIER2 = "2.5.29.35" const szOID_AUTHORITY_REVOCATION_LIST = "2.5.4.38" const szOID_AUTO_ENROLL_CTL_USAGE = "1.3.6.1.4.1.311.20.1" const szOID_BACKGROUND_OTHER_LOGOTYPE = "1.3.6.1.5.5.7.20.2" const szOID_BASIC_CONSTRAINTS = "2.5.29.10" const szOID_BASIC_CONSTRAINTS2 = "2.5.29.19" const szOID_BIOMETRIC_EXT = "1.3.6.1.5.5.7.1.2" const szOID_BIOMETRIC_SIGNING = "1.3.6.1.4.1.311.10.3.41" const szOID_BUSINESS_CATEGORY = "2.5.4.15" const szOID_CA_CERTIFICATE = "2.5.4.37" const szOID_CERTIFICATE_REVOCATION_LIST = "2.5.4.39" const szOID_CERTIFICATE_TEMPLATE = "1.3.6.1.4.1.311.21.7" const szOID_CERTSRV_CA_VERSION = "1.3.6.1.4.1.311.21.1" const szOID_CERTSRV_CROSSCA_VERSION = "1.3.6.1.4.1.311.21.22" const szOID_CERTSRV_PREVIOUS_CERT_HASH = "1.3.6.1.4.1.311.21.2" const szOID_CERT_DISALLOWED_FILETIME_PROP_ID = "1.3.6.1.4.1.311.10.11.104" const szOID_CERT_EXTENSIONS = "1.3.6.1.4.1.311.2.1.14" const szOID_CERT_ISSUER_SERIAL_NUMBER_MD5_HASH_PROP_ID = "1.3.6.1.4.1.311.10.11.28" const szOID_CERT_KEY_IDENTIFIER_PROP_ID = "1.3.6.1.4.1.311.10.11.20" const szOID_CERT_MANIFOLD = "1.3.6.1.4.1.311.20.3" const szOID_CERT_MD5_HASH_PROP_ID = "1.3.6.1.4.1.311.10.11.4" const szOID_CERT_POLICIES = "2.5.29.32" const szOID_CERT_POLICIES_95 = "2.5.29.3" const szOID_CERT_POLICIES_95_QUALIFIER1 = "2.16.840.1.113733.1.7.1.1" const szOID_CERT_PROP_ID_PREFIX = "1.3.6.1.4.1.311.10.11." const szOID_CERT_SIGNATURE_HASH_PROP_ID = "1.3.6.1.4.1.311.10.11.15" const szOID_CERT_STRONG_KEY_OS_1 = "1.3.6.1.4.1.311.72.2.1" const szOID_CERT_STRONG_KEY_OS_CURRENT = "szOID_CERT_STRONG_KEY_OS_1" const szOID_CERT_STRONG_KEY_OS_PREFIX = "1.3.6.1.4.1.311.72.2." const szOID_CERT_STRONG_SIGN_OS_1 = "1.3.6.1.4.1.311.72.1.1" const szOID_CERT_STRONG_SIGN_OS_CURRENT = "szOID_CERT_STRONG_SIGN_OS_1" const szOID_CERT_STRONG_SIGN_OS_PREFIX = "1.3.6.1.4.1.311.72.1." const szOID_CERT_SUBJECT_NAME_MD5_HASH_PROP_ID = "1.3.6.1.4.1.311.10.11.29" const szOID_CMC = "1.3.6.1.5.5.7.7" const szOID_CMC_ADD_ATTRIBUTES = "1.3.6.1.4.1.311.10.10.1" const szOID_CMC_ADD_EXTENSIONS = "1.3.6.1.5.5.7.7.8" const szOID_CMC_DATA_RETURN = "1.3.6.1.5.5.7.7.4" const szOID_CMC_DECRYPTED_POP = "1.3.6.1.5.5.7.7.10" const szOID_CMC_ENCRYPTED_POP = "1.3.6.1.5.5.7.7.9" const szOID_CMC_GET_CERT = "1.3.6.1.5.5.7.7.15" const szOID_CMC_GET_CRL = "1.3.6.1.5.5.7.7.16" const szOID_CMC_IDENTIFICATION = "1.3.6.1.5.5.7.7.2" const szOID_CMC_IDENTITY_PROOF = "1.3.6.1.5.5.7.7.3" const szOID_CMC_ID_CONFIRM_CERT_ACCEPTANCE = "1.3.6.1.5.5.7.7.24" const szOID_CMC_ID_POP_LINK_RANDOM = "1.3.6.1.5.5.7.7.22" const szOID_CMC_ID_POP_LINK_WITNESS = "1.3.6.1.5.5.7.7.23" const szOID_CMC_LRA_POP_WITNESS = "1.3.6.1.5.5.7.7.11" const szOID_CMC_QUERY_PENDING = "1.3.6.1.5.5.7.7.21" const szOID_CMC_RECIPIENT_NONCE = "1.3.6.1.5.5.7.7.7" const szOID_CMC_REG_INFO = "1.3.6.1.5.5.7.7.18" const szOID_CMC_RESPONSE_INFO = "1.3.6.1.5.5.7.7.19" const szOID_CMC_REVOKE_REQUEST = "1.3.6.1.5.5.7.7.17" const szOID_CMC_SENDER_NONCE = "1.3.6.1.5.5.7.7.6" const szOID_CMC_STATUS_INFO = "1.3.6.1.5.5.7.7.1" const szOID_CMC_TRANSACTION_ID = "1.3.6.1.5.5.7.7.5" const szOID_CN_ECDSA_SHA256 = "1.2.156.11235.1.1.1" const szOID_COMMON_NAME = "2.5.4.3" const szOID_COUNTRY_NAME = "2.5.4.6" const szOID_CRL_DIST_POINTS = "2.5.29.31" const szOID_CRL_NEXT_PUBLISH = "1.3.6.1.4.1.311.21.4" const szOID_CRL_NUMBER = "2.5.29.20" const szOID_CRL_REASON_CODE = "2.5.29.21" const szOID_CRL_SELF_CDP = "1.3.6.1.4.1.311.21.14" const szOID_CRL_VIRTUAL_BASE = "1.3.6.1.4.1.311.21.3" const szOID_CROSS_CERTIFICATE_PAIR = "2.5.4.40" const szOID_CROSS_CERT_DIST_POINTS = "1.3.6.1.4.1.311.10.9.1" const szOID_CTL = "1.3.6.1.4.1.311.10.1" const szOID_CT_CERT_SCTLIST = "1.3.6.1.4.1.11129.2.4.2" const szOID_CT_PKI_DATA = "1.3.6.1.5.5.7.12.2" const szOID_CT_PKI_RESPONSE = "1.3.6.1.5.5.7.12.3" const szOID_DELTA_CRL_INDICATOR = "2.5.29.27" const szOID_DESCRIPTION = "2.5.4.13" const szOID_DESTINATION_INDICATOR = "2.5.4.27" const szOID_DEVICE_SERIAL_NUMBER = "2.5.4.5" const szOID_DH_SINGLE_PASS_STDDH_SHA1_KDF = "1.3.133.16.840.63.0.2" const szOID_DH_SINGLE_PASS_STDDH_SHA256_KDF = "1.3.132.1.11.1" const szOID_DH_SINGLE_PASS_STDDH_SHA384_KDF = "1.3.132.1.11.2" const szOID_DISALLOWED_HASH = "szOID_CERT_SIGNATURE_HASH_PROP_ID" const szOID_DISALLOWED_LIST = "1.3.6.1.4.1.311.10.3.30" const szOID_DN_QUALIFIER = "2.5.4.46" const szOID_DOMAIN_COMPONENT = "0.9.2342.19200300.100.1.25" const szOID_DRM = "1.3.6.1.4.1.311.10.5.1" const szOID_DRM_INDIVIDUALIZATION = "1.3.6.1.4.1.311.10.5.2" const szOID_DS = "2.5" const szOID_DSALG = "2.5.8" const szOID_DSALG_CRPT = "2.5.8.1" const szOID_DSALG_HASH = "2.5.8.2" const szOID_DSALG_RSA = "2.5.8.1.1" const szOID_DSALG_SIGN = "2.5.8.3" const szOID_DS_EMAIL_REPLICATION = "1.3.6.1.4.1.311.21.19" const szOID_DYNAMIC_CODE_GEN_SIGNER = "1.3.6.1.4.1.311.76.5.1" const szOID_ECC_CURVE_BRAINPOOLP160R1 = "1.3.36.3.3.2.8.1.1.1" const szOID_ECC_CURVE_BRAINPOOLP160T1 = "1.3.36.3.3.2.8.1.1.2" const szOID_ECC_CURVE_BRAINPOOLP192R1 = "1.3.36.3.3.2.8.1.1.3" const szOID_ECC_CURVE_BRAINPOOLP192T1 = "1.3.36.3.3.2.8.1.1.4" const szOID_ECC_CURVE_BRAINPOOLP224R1 = "1.3.36.3.3.2.8.1.1.5" const szOID_ECC_CURVE_BRAINPOOLP224T1 = "1.3.36.3.3.2.8.1.1.6" const szOID_ECC_CURVE_BRAINPOOLP256R1 = "1.3.36.3.3.2.8.1.1.7" const szOID_ECC_CURVE_BRAINPOOLP256T1 = "1.3.36.3.3.2.8.1.1.8" const szOID_ECC_CURVE_BRAINPOOLP320R1 = "1.3.36.3.3.2.8.1.1.9" const szOID_ECC_CURVE_BRAINPOOLP320T1 = "1.3.36.3.3.2.8.1.1.10" const szOID_ECC_CURVE_BRAINPOOLP384R1 = "1.3.36.3.3.2.8.1.1.11" const szOID_ECC_CURVE_BRAINPOOLP384T1 = "1.3.36.3.3.2.8.1.1.12" const szOID_ECC_CURVE_BRAINPOOLP512R1 = "1.3.36.3.3.2.8.1.1.13" const szOID_ECC_CURVE_BRAINPOOLP512T1 = "1.3.36.3.3.2.8.1.1.14" const szOID_ECC_CURVE_EC192WAPI = "1.2.156.11235.1.1.2.1" const szOID_ECC_CURVE_NISTP192 = "1.2.840.10045.3.1.1" const szOID_ECC_CURVE_NISTP224 = "1.3.132.0.33" const szOID_ECC_CURVE_NISTP256 = "szOID_ECC_CURVE_P256" const szOID_ECC_CURVE_NISTP384 = "szOID_ECC_CURVE_P384" const szOID_ECC_CURVE_NISTP521 = "szOID_ECC_CURVE_P521" const szOID_ECC_CURVE_P256 = "1.2.840.10045.3.1.7" const szOID_ECC_CURVE_P384 = "1.3.132.0.34" const szOID_ECC_CURVE_P521 = "1.3.132.0.35" const szOID_ECC_CURVE_SECP160K1 = "1.3.132.0.9" const szOID_ECC_CURVE_SECP160R1 = "1.3.132.0.8" const szOID_ECC_CURVE_SECP160R2 = "1.3.132.0.30" const szOID_ECC_CURVE_SECP192K1 = "1.3.132.0.31" const szOID_ECC_CURVE_SECP192R1 = "szOID_ECC_CURVE_NISTP192" const szOID_ECC_CURVE_SECP224K1 = "1.3.132.0.32" const szOID_ECC_CURVE_SECP224R1 = "szOID_ECC_CURVE_NISTP224" const szOID_ECC_CURVE_SECP256K1 = "1.3.132.0.10" const szOID_ECC_CURVE_SECP256R1 = "szOID_ECC_CURVE_P256" const szOID_ECC_CURVE_SECP384R1 = "szOID_ECC_CURVE_P384" const szOID_ECC_CURVE_SECP521R1 = "szOID_ECC_CURVE_P521" const szOID_ECC_CURVE_WTLS12 = "szOID_ECC_CURVE_NISTP224" const szOID_ECC_CURVE_WTLS7 = "szOID_ECC_CURVE_SECP160R2" const szOID_ECC_CURVE_WTLS9 = "2.23.43.1.4.9" const szOID_ECC_CURVE_X962P192V1 = "1.2.840.10045.3.1.1" const szOID_ECC_CURVE_X962P192V2 = "1.2.840.10045.3.1.2" const szOID_ECC_CURVE_X962P192V3 = "1.2.840.10045.3.1.3" const szOID_ECC_CURVE_X962P239V1 = "1.2.840.10045.3.1.4" const szOID_ECC_CURVE_X962P239V2 = "1.2.840.10045.3.1.5" const szOID_ECC_CURVE_X962P239V3 = "1.2.840.10045.3.1.6" const szOID_ECC_CURVE_X962P256V1 = "szOID_ECC_CURVE_P256" const szOID_ECC_PUBLIC_KEY = "1.2.840.10045.2.1" const szOID_ECDSA_SHA1 = "1.2.840.10045.4.1" const szOID_ECDSA_SHA256 = "1.2.840.10045.4.3.2" const szOID_ECDSA_SHA384 = "1.2.840.10045.4.3.3" const szOID_ECDSA_SHA512 = "1.2.840.10045.4.3.4" const szOID_ECDSA_SPECIFIED = "1.2.840.10045.4.3" const szOID_EFS_RECOVERY = "1.3.6.1.4.1.311.10.3.4.1" const szOID_EMBEDDED_NT_CRYPTO = "1.3.6.1.4.1.311.10.3.8" const szOID_ENCLAVE_SIGNING = "1.3.6.1.4.1.311.10.3.42" const szOID_ENCRYPTED_KEY_HASH = "1.3.6.1.4.1.311.21.21" const szOID_ENHANCED_KEY_USAGE = "2.5.29.37" const szOID_ENROLLMENT_AGENT = "1.3.6.1.4.1.311.20.2.1" const szOID_ENROLLMENT_CSP_PROVIDER = "1.3.6.1.4.1.311.13.2.2" const szOID_ENROLLMENT_NAME_VALUE_PAIR = "1.3.6.1.4.1.311.13.2.1" const szOID_ENROLL_AIK_INFO = "1.3.6.1.4.1.311.21.39" const szOID_ENROLL_ATTESTATION_CHALLENGE = "1.3.6.1.4.1.311.21.28" const szOID_ENROLL_ATTESTATION_STATEMENT = "1.3.6.1.4.1.311.21.24" const szOID_ENROLL_CAXCHGCERT_HASH = "1.3.6.1.4.1.311.21.27" const szOID_ENROLL_CERTTYPE_EXTENSION = "1.3.6.1.4.1.311.20.2" const szOID_ENROLL_EKPUB_CHALLENGE = "1.3.6.1.4.1.311.21.26" const szOID_ENROLL_EKVERIFYCERT = "1.3.6.1.4.1.311.21.31" const szOID_ENROLL_EKVERIFYCREDS = "1.3.6.1.4.1.311.21.32" const szOID_ENROLL_EKVERIFYKEY = "1.3.6.1.4.1.311.21.30" const szOID_ENROLL_EK_CA_KEYID = "1.3.6.1.4.1.311.21.43" const szOID_ENROLL_EK_INFO = "1.3.6.1.4.1.311.21.23" const szOID_ENROLL_ENCRYPTION_ALGORITHM = "1.3.6.1.4.1.311.21.29" const szOID_ENROLL_KEY_AFFINITY = "1.3.6.1.4.1.311.21.41" const szOID_ENROLL_KSP_NAME = "1.3.6.1.4.1.311.21.25" const szOID_ENROLL_SCEP_CHALLENGE_ANSWER = "1.3.6.1.4.1.311.21.35" const szOID_ENROLL_SCEP_CLIENT_REQUEST = "1.3.6.1.4.1.311.21.37" const szOID_ENROLL_SCEP_ERROR = "1.3.6.1.4.1.311.21.33" const szOID_ENROLL_SCEP_SERVER_MESSAGE = "1.3.6.1.4.1.311.21.38" const szOID_ENROLL_SCEP_SERVER_SECRET = "1.3.6.1.4.1.311.21.40" const szOID_ENROLL_SCEP_SERVER_STATE = "1.3.6.1.4.1.311.21.34" const szOID_ENROLL_SCEP_SIGNER_HASH = "1.3.6.1.4.1.311.21.42" const szOID_ENTERPRISE_OID_ROOT = "1.3.6.1.4.1.311.21.8" const szOID_EV_RDN_COUNTRY = "1.3.6.1.4.1.311.60.2.1.3" const szOID_EV_RDN_LOCALE = "1.3.6.1.4.1.311.60.2.1.1" const szOID_EV_RDN_STATE_OR_PROVINCE = "1.3.6.1.4.1.311.60.2.1.2" const szOID_EV_WHQL_CRYPTO = "1.3.6.1.4.1.311.10.3.39" const szOID_FACSIMILE_TELEPHONE_NUMBER = "2.5.4.23" const szOID_FRESHEST_CRL = "2.5.29.46" const szOID_GIVEN_NAME = "2.5.4.42" const szOID_HPKP_DOMAIN_NAME_CTL = "1.3.6.1.4.1.311.10.3.60" const szOID_HPKP_HEADER_VALUE_CTL = "1.3.6.1.4.1.311.10.3.61" const szOID_INFOSEC = "2.16.840.1.101.2.1" const szOID_INFOSEC_SuiteAConfidentiality = "2.16.840.1.101.2.1.1.14" const szOID_INFOSEC_SuiteAIntegrity = "2.16.840.1.101.2.1.1.15" const szOID_INFOSEC_SuiteAKMandSig = "2.16.840.1.101.2.1.1.18" const szOID_INFOSEC_SuiteAKeyManagement = "2.16.840.1.101.2.1.1.17" const szOID_INFOSEC_SuiteASignature = "2.16.840.1.101.2.1.1.13" const szOID_INFOSEC_SuiteATokenProtection = "2.16.840.1.101.2.1.1.16" const szOID_INFOSEC_mosaicConfidentiality = "2.16.840.1.101.2.1.1.4" const szOID_INFOSEC_mosaicIntegrity = "2.16.840.1.101.2.1.1.6" const szOID_INFOSEC_mosaicKMandSig = "2.16.840.1.101.2.1.1.12" const szOID_INFOSEC_mosaicKMandUpdSig = "2.16.840.1.101.2.1.1.20" const szOID_INFOSEC_mosaicKeyManagement = "2.16.840.1.101.2.1.1.10" const szOID_INFOSEC_mosaicSignature = "2.16.840.1.101.2.1.1.2" const szOID_INFOSEC_mosaicTokenProtection = "2.16.840.1.101.2.1.1.8" const szOID_INFOSEC_mosaicUpdatedInteg = "2.16.840.1.101.2.1.1.21" const szOID_INFOSEC_mosaicUpdatedSig = "2.16.840.1.101.2.1.1.19" const szOID_INFOSEC_sdnsConfidentiality = "2.16.840.1.101.2.1.1.3" const szOID_INFOSEC_sdnsIntegrity = "2.16.840.1.101.2.1.1.5" const szOID_INFOSEC_sdnsKMandSig = "2.16.840.1.101.2.1.1.11" const szOID_INFOSEC_sdnsKeyManagement = "2.16.840.1.101.2.1.1.9" const szOID_INFOSEC_sdnsSignature = "2.16.840.1.101.2.1.1.1" const szOID_INFOSEC_sdnsTokenProtection = "2.16.840.1.101.2.1.1.7" const szOID_INHIBIT_ANY_POLICY = "2.5.29.54" const szOID_INITIALS = "2.5.4.43" const szOID_INTERNATIONALIZED_EMAIL_ADDRESS = "1.3.6.1.4.1.311.20.2.4" const szOID_INTERNATIONAL_ISDN_NUMBER = "2.5.4.25" const szOID_IPSEC_KP_IKE_INTERMEDIATE = "1.3.6.1.5.5.8.2.2" const szOID_ISSUED_CERT_HASH = "1.3.6.1.4.1.311.21.17" const szOID_ISSUER_ALT_NAME = "2.5.29.8" const szOID_ISSUER_ALT_NAME2 = "2.5.29.18" const szOID_ISSUING_DIST_POINT = "2.5.29.28" const szOID_IUM_SIGNING = "1.3.6.1.4.1.311.10.3.37" const szOID_KEYID_RDN = "1.3.6.1.4.1.311.10.7.1" const szOID_KEY_ATTRIBUTES = "2.5.29.2" const szOID_KEY_USAGE = "2.5.29.15" const szOID_KEY_USAGE_RESTRICTION = "2.5.29.4" const szOID_KP_CA_EXCHANGE = "1.3.6.1.4.1.311.21.5" const szOID_KP_CSP_SIGNATURE = "1.3.6.1.4.1.311.10.3.16" const szOID_KP_CTL_USAGE_SIGNING = "1.3.6.1.4.1.311.10.3.1" const szOID_KP_DOCUMENT_SIGNING = "1.3.6.1.4.1.311.10.3.12" const szOID_KP_EFS = "1.3.6.1.4.1.311.10.3.4" const szOID_KP_FLIGHT_SIGNING = "1.3.6.1.4.1.311.10.3.27" const szOID_KP_KERNEL_MODE_CODE_SIGNING = "1.3.6.1.4.1.311.61.1.1" const szOID_KP_KERNEL_MODE_HAL_EXTENSION_SIGNING = "1.3.6.1.4.1.311.61.5.1" const szOID_KP_KERNEL_MODE_TRUSTED_BOOT_SIGNING = "1.3.6.1.4.1.311.61.4.1" const szOID_KP_KEY_RECOVERY = "1.3.6.1.4.1.311.10.3.11" const szOID_KP_KEY_RECOVERY_AGENT = "1.3.6.1.4.1.311.21.6" const szOID_KP_LIFETIME_SIGNING = "1.3.6.1.4.1.311.10.3.13" const szOID_KP_MOBILE_DEVICE_SOFTWARE = "1.3.6.1.4.1.311.10.3.14" const szOID_KP_QUALIFIED_SUBORDINATION = "1.3.6.1.4.1.311.10.3.10" const szOID_KP_SMARTCARD_LOGON = "1.3.6.1.4.1.311.20.2.2" const szOID_KP_SMART_DISPLAY = "1.3.6.1.4.1.311.10.3.15" const szOID_KP_TIME_STAMP_SIGNING = "1.3.6.1.4.1.311.10.3.2" const szOID_KP_TPM_AIK_CERTIFICATE = "2.23.133.8.3" const szOID_KP_TPM_EK_CERTIFICATE = "2.23.133.8.1" const szOID_KP_TPM_PLATFORM_CERTIFICATE = "2.23.133.8.2" const szOID_LEGACY_POLICY_MAPPINGS = "2.5.29.5" const szOID_LICENSES = "1.3.6.1.4.1.311.10.6.1" const szOID_LICENSE_SERVER = "1.3.6.1.4.1.311.10.6.2" const szOID_LOCALITY_NAME = "2.5.4.7" const szOID_LOCAL_MACHINE_KEYSET = "1.3.6.1.4.1.311.17.2" const szOID_LOGOTYPE_EXT = "1.3.6.1.5.5.7.1.12" const szOID_LOYALTY_OTHER_LOGOTYPE = "1.3.6.1.5.5.7.20.1" const szOID_MEMBER = "2.5.4.31" const szOID_MICROSOFT_PUBLISHER_SIGNER = "1.3.6.1.4.1.311.76.8.1" const szOID_NAME_CONSTRAINTS = "2.5.29.30" const szOID_NETSCAPE = "2.16.840.1.113730" const szOID_NETSCAPE_BASE_URL = "2.16.840.1.113730.1.2" const szOID_NETSCAPE_CA_POLICY_URL = "2.16.840.1.113730.1.8" const szOID_NETSCAPE_CA_REVOCATION_URL = "2.16.840.1.113730.1.4" const szOID_NETSCAPE_CERT_EXTENSION = "2.16.840.1.113730.1" const szOID_NETSCAPE_CERT_RENEWAL_URL = "2.16.840.1.113730.1.7" const szOID_NETSCAPE_CERT_SEQUENCE = "2.16.840.1.113730.2.5" const szOID_NETSCAPE_CERT_TYPE = "2.16.840.1.113730.1.1" const szOID_NETSCAPE_COMMENT = "2.16.840.1.113730.1.13" const szOID_NETSCAPE_DATA_TYPE = "2.16.840.1.113730.2" const szOID_NETSCAPE_REVOCATION_URL = "2.16.840.1.113730.1.3" const szOID_NETSCAPE_SSL_SERVER_NAME = "2.16.840.1.113730.1.12" const szOID_NEXT_UPDATE_LOCATION = "1.3.6.1.4.1.311.10.2" const szOID_NIST_AES128_CBC = "2.16.840.1.101.3.4.1.2" const szOID_NIST_AES128_WRAP = "2.16.840.1.101.3.4.1.5" const szOID_NIST_AES192_CBC = "2.16.840.1.101.3.4.1.22" const szOID_NIST_AES192_WRAP = "2.16.840.1.101.3.4.1.25" const szOID_NIST_AES256_CBC = "2.16.840.1.101.3.4.1.42" const szOID_NIST_AES256_WRAP = "2.16.840.1.101.3.4.1.45" const szOID_NIST_sha256 = "2.16.840.1.101.3.4.2.1" const szOID_NIST_sha384 = "2.16.840.1.101.3.4.2.2" const szOID_NIST_sha512 = "2.16.840.1.101.3.4.2.3" const szOID_NT5_CRYPTO = "1.3.6.1.4.1.311.10.3.6" const szOID_NTDS_REPLICATION = "1.3.6.1.4.1.311.25.1" const szOID_NT_PRINCIPAL_NAME = "1.3.6.1.4.1.311.20.2.3" const szOID_OEM_WHQL_CRYPTO = "1.3.6.1.4.1.311.10.3.7" const szOID_OIW = "1.3.14" const szOID_OIWDIR = "1.3.14.7.2" const szOID_OIWDIR_CRPT = "1.3.14.7.2.1" const szOID_OIWDIR_HASH = "1.3.14.7.2.2" const szOID_OIWDIR_SIGN = "1.3.14.7.2.3" const szOID_OIWDIR_md2 = "1.3.14.7.2.2.1" const szOID_OIWDIR_md2RSA = "1.3.14.7.2.3.1" const szOID_OIWSEC = "1.3.14.3.2" const szOID_OIWSEC_desCBC = "1.3.14.3.2.7" const szOID_OIWSEC_desCFB = "1.3.14.3.2.9" const szOID_OIWSEC_desECB = "1.3.14.3.2.6" const szOID_OIWSEC_desEDE = "1.3.14.3.2.17" const szOID_OIWSEC_desMAC = "1.3.14.3.2.10" const szOID_OIWSEC_desOFB = "1.3.14.3.2.8" const szOID_OIWSEC_dhCommMod = "1.3.14.3.2.16" const szOID_OIWSEC_dsa = "1.3.14.3.2.12" const szOID_OIWSEC_dsaComm = "1.3.14.3.2.20" const szOID_OIWSEC_dsaCommSHA = "1.3.14.3.2.21" const szOID_OIWSEC_dsaCommSHA1 = "1.3.14.3.2.28" const szOID_OIWSEC_dsaSHA1 = "1.3.14.3.2.27" const szOID_OIWSEC_keyHashSeal = "1.3.14.3.2.23" const szOID_OIWSEC_md2RSASign = "1.3.14.3.2.24" const szOID_OIWSEC_md4RSA = "1.3.14.3.2.2" const szOID_OIWSEC_md4RSA2 = "1.3.14.3.2.4" const szOID_OIWSEC_md5RSA = "1.3.14.3.2.3" const szOID_OIWSEC_md5RSASign = "1.3.14.3.2.25" const szOID_OIWSEC_mdc2 = "1.3.14.3.2.19" const szOID_OIWSEC_mdc2RSA = "1.3.14.3.2.14" const szOID_OIWSEC_rsaSign = "1.3.14.3.2.11" const szOID_OIWSEC_rsaXchg = "1.3.14.3.2.22" const szOID_OIWSEC_sha = "1.3.14.3.2.18" const szOID_OIWSEC_sha1 = "1.3.14.3.2.26" const szOID_OIWSEC_sha1RSASign = "1.3.14.3.2.29" const szOID_OIWSEC_shaDSA = "1.3.14.3.2.13" const szOID_OIWSEC_shaRSA = "1.3.14.3.2.15" const szOID_ORGANIZATIONAL_UNIT_NAME = "2.5.4.11" const szOID_ORGANIZATION_NAME = "2.5.4.10" const szOID_OS_VERSION = "1.3.6.1.4.1.311.13.2.3" const szOID_OWNER = "2.5.4.32" const szOID_PHYSICAL_DELIVERY_OFFICE_NAME = "2.5.4.19" const szOID_PIN_RULES_CTL = "1.3.6.1.4.1.311.10.3.32" const szOID_PIN_RULES_DOMAIN_NAME = "1.3.6.1.4.1.311.10.3.34" const szOID_PIN_RULES_EXT = "1.3.6.1.4.1.311.10.3.33" const szOID_PIN_RULES_LOG_END_DATE_EXT = "1.3.6.1.4.1.311.10.3.35" const szOID_PIN_RULES_SIGNER = "1.3.6.1.4.1.311.10.3.31" const szOID_PKCS = "1.2.840.113549.1" const szOID_PKCS_1 = "1.2.840.113549.1.1" const szOID_PKCS_10 = "1.2.840.113549.1.10" const szOID_PKCS_12 = "1.2.840.113549.1.12" const szOID_PKCS_12_EXTENDED_ATTRIBUTES = "1.3.6.1.4.1.311.17.3" const szOID_PKCS_12_FRIENDLY_NAME_ATTR = "1.2.840.113549.1.9.20" const szOID_PKCS_12_KEY_PROVIDER_NAME_ATTR = "1.3.6.1.4.1.311.17.1" const szOID_PKCS_12_LOCAL_KEY_ID = "1.2.840.113549.1.9.21" const szOID_PKCS_12_PROTECTED_PASSWORD_SECRET_BAG_TYPE_ID = "1.3.6.1.4.1.311.17.4" const szOID_PKCS_12_PbeIds = "1.2.840.113549.1.12.1" const szOID_PKCS_12_pbeWithSHA1And128BitRC2 = "1.2.840.113549.1.12.1.5" const szOID_PKCS_12_pbeWithSHA1And128BitRC4 = "1.2.840.113549.1.12.1.1" const szOID_PKCS_12_pbeWithSHA1And2KeyTripleDES = "1.2.840.113549.1.12.1.4" const szOID_PKCS_12_pbeWithSHA1And3KeyTripleDES = "1.2.840.113549.1.12.1.3" const szOID_PKCS_12_pbeWithSHA1And40BitRC2 = "1.2.840.113549.1.12.1.6" const szOID_PKCS_12_pbeWithSHA1And40BitRC4 = "1.2.840.113549.1.12.1.2" const szOID_PKCS_2 = "1.2.840.113549.1.2" const szOID_PKCS_3 = "1.2.840.113549.1.3" const szOID_PKCS_4 = "1.2.840.113549.1.4" const szOID_PKCS_5 = "1.2.840.113549.1.5" const szOID_PKCS_5_PBES2 = "1.2.840.113549.1.5.13" const szOID_PKCS_5_PBKDF2 = "1.2.840.113549.1.5.12" const szOID_PKCS_6 = "1.2.840.113549.1.6" const szOID_PKCS_7 = "1.2.840.113549.1.7" const szOID_PKCS_7_DATA = "1.2.840.113549.1.7.1" const szOID_PKCS_7_DIGESTED = "1.2.840.113549.1.7.5" const szOID_PKCS_7_ENCRYPTED = "1.2.840.113549.1.7.6" const szOID_PKCS_7_ENVELOPED = "1.2.840.113549.1.7.3" const szOID_PKCS_7_SIGNED = "1.2.840.113549.1.7.2" const szOID_PKCS_7_SIGNEDANDENVELOPED = "1.2.840.113549.1.7.4" const szOID_PKCS_8 = "1.2.840.113549.1.8" const szOID_PKCS_9 = "1.2.840.113549.1.9" const szOID_PKCS_9_CONTENT_TYPE = "1.2.840.113549.1.9.3" const szOID_PKCS_9_MESSAGE_DIGEST = "1.2.840.113549.1.9.4" const szOID_PKINIT_KP_KDC = "1.3.6.1.5.2.3.5" const szOID_PKIX = "1.3.6.1.5.5.7" const szOID_PKIX_ACC_DESCR = "1.3.6.1.5.5.7.48" const szOID_PKIX_CA_ISSUERS = "1.3.6.1.5.5.7.48.2" const szOID_PKIX_CA_REPOSITORY = "1.3.6.1.5.5.7.48.5" const szOID_PKIX_KP = "1.3.6.1.5.5.7.3" const szOID_PKIX_KP_CLIENT_AUTH = "1.3.6.1.5.5.7.3.2" const szOID_PKIX_KP_CODE_SIGNING = "1.3.6.1.5.5.7.3.3" const szOID_PKIX_KP_EMAIL_PROTECTION = "1.3.6.1.5.5.7.3.4" const szOID_PKIX_KP_IPSEC_END_SYSTEM = "1.3.6.1.5.5.7.3.5" const szOID_PKIX_KP_IPSEC_TUNNEL = "1.3.6.1.5.5.7.3.6" const szOID_PKIX_KP_IPSEC_USER = "1.3.6.1.5.5.7.3.7" const szOID_PKIX_KP_OCSP_SIGNING = "1.3.6.1.5.5.7.3.9" const szOID_PKIX_KP_SERVER_AUTH = "1.3.6.1.5.5.7.3.1" const szOID_PKIX_KP_TIMESTAMP_SIGNING = "1.3.6.1.5.5.7.3.8" const szOID_PKIX_NO_SIGNATURE = "1.3.6.1.5.5.7.6.2" const szOID_PKIX_OCSP = "1.3.6.1.5.5.7.48.1" const szOID_PKIX_OCSP_BASIC_SIGNED_RESPONSE = "1.3.6.1.5.5.7.48.1.1" const szOID_PKIX_OCSP_NOCHECK = "1.3.6.1.5.5.7.48.1.5" const szOID_PKIX_OCSP_NONCE = "1.3.6.1.5.5.7.48.1.2" const szOID_PKIX_PE = "1.3.6.1.5.5.7.1" const szOID_PKIX_POLICY_QUALIFIER_CPS = "1.3.6.1.5.5.7.2.1" const szOID_PKIX_POLICY_QUALIFIER_USERNOTICE = "1.3.6.1.5.5.7.2.2" const szOID_PKIX_TIME_STAMPING = "1.3.6.1.5.5.7.48.3" const szOID_PLATFORM_MANIFEST_BINARY_ID = "1.3.6.1.4.1.311.10.3.28" const szOID_POLICY_CONSTRAINTS = "2.5.29.36" const szOID_POLICY_MAPPINGS = "2.5.29.33" const szOID_POSTAL_ADDRESS = "2.5.4.16" const szOID_POSTAL_CODE = "2.5.4.17" const szOID_POST_OFFICE_BOX = "2.5.4.18" const szOID_PREFERRED_DELIVERY_METHOD = "2.5.4.28" const szOID_PRESENTATION_ADDRESS = "2.5.4.29" const szOID_PRIVATEKEY_USAGE_PERIOD = "2.5.29.16" const szOID_PRODUCT_UPDATE = "1.3.6.1.4.1.311.31.1" const szOID_PROTECTED_PROCESS_LIGHT_SIGNER = "1.3.6.1.4.1.311.10.3.22" const szOID_PROTECTED_PROCESS_SIGNER = "1.3.6.1.4.1.311.10.3.24" const szOID_QC_EU_COMPLIANCE = "0.4.0.1862.1.1" const szOID_QC_SSCD = "0.4.0.1862.1.4" const szOID_QC_STATEMENTS_EXT = "1.3.6.1.5.5.7.1.3" const szOID_RDN_DUMMY_SIGNER = "1.3.6.1.4.1.311.21.9" const szOID_RDN_TCG_PLATFORM_MANUFACTURER = "2.23.133.2.4" const szOID_RDN_TCG_PLATFORM_MODEL = "2.23.133.2.5" const szOID_RDN_TCG_PLATFORM_VERSION = "2.23.133.2.6" const szOID_RDN_TPM_MANUFACTURER = "2.23.133.2.1" const szOID_RDN_TPM_MODEL = "2.23.133.2.2" const szOID_RDN_TPM_VERSION = "2.23.133.2.3" const szOID_REASON_CODE_HOLD = "2.5.29.23" const szOID_REGISTERED_ADDRESS = "2.5.4.26" const szOID_REMOVE_CERTIFICATE = "1.3.6.1.4.1.311.10.8.1" const szOID_RENEWAL_CERTIFICATE = "1.3.6.1.4.1.311.13.1" const szOID_REQUEST_CLIENT_INFO = "1.3.6.1.4.1.311.21.20" const szOID_REQUIRE_CERT_CHAIN_POLICY = "1.3.6.1.4.1.311.21.15" const szOID_REVOKED_LIST_SIGNER = "1.3.6.1.4.1.311.10.3.19" const szOID_RFC3161_counterSign = "1.3.6.1.4.1.311.3.3.1" const szOID_ROLE_OCCUPANT = "2.5.4.33" const szOID_ROOT_LIST_SIGNER = "1.3.6.1.4.1.311.10.3.9" const szOID_ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION = "1.3.6.1.4.1.311.60.3.1" const szOID_ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION = "1.3.6.1.4.1.311.60.3.2" const szOID_ROOT_PROGRAM_FLAGS = "1.3.6.1.4.1.311.60.1.1" const szOID_ROOT_PROGRAM_NO_OCSP_FAILOVER_TO_CRL = "1.3.6.1.4.1.311.60.3.3" const szOID_RSA = "1.2.840.113549" const szOID_RSAES_OAEP = "1.2.840.113549.1.1.7" const szOID_RSA_DES_EDE3_CBC = "1.2.840.113549.3.7" const szOID_RSA_DH = "1.2.840.113549.1.3.1" const szOID_RSA_ENCRYPT = "1.2.840.113549.3" const szOID_RSA_HASH = "1.2.840.113549.2" const szOID_RSA_MD2 = "1.2.840.113549.2.2" const szOID_RSA_MD2RSA = "1.2.840.113549.1.1.2" const szOID_RSA_MD4 = "1.2.840.113549.2.4" const szOID_RSA_MD4RSA = "1.2.840.113549.1.1.3" const szOID_RSA_MD5 = "1.2.840.113549.2.5" const szOID_RSA_MD5RSA = "1.2.840.113549.1.1.4" const szOID_RSA_MGF1 = "1.2.840.113549.1.1.8" const szOID_RSA_PSPECIFIED = "1.2.840.113549.1.1.9" const szOID_RSA_RC2CBC = "1.2.840.113549.3.2" const szOID_RSA_RC4 = "1.2.840.113549.3.4" const szOID_RSA_RC5_CBCPad = "1.2.840.113549.3.9" const szOID_RSA_RSA = "1.2.840.113549.1.1.1" const szOID_RSA_SETOAEP_RSA = "1.2.840.113549.1.1.6" const szOID_RSA_SHA1RSA = "1.2.840.113549.1.1.5" const szOID_RSA_SHA256RSA = "1.2.840.113549.1.1.11" const szOID_RSA_SHA384RSA = "1.2.840.113549.1.1.12" const szOID_RSA_SHA512RSA = "1.2.840.113549.1.1.13" const szOID_RSA_SMIMECapabilities = "1.2.840.113549.1.9.15" const szOID_RSA_SMIMEalg = "1.2.840.113549.1.9.16.3" const szOID_RSA_SMIMEalgCMS3DESwrap = "1.2.840.113549.1.9.16.3.6" const szOID_RSA_SMIMEalgCMSRC2wrap = "1.2.840.113549.1.9.16.3.7" const szOID_RSA_SMIMEalgESDH = "1.2.840.113549.1.9.16.3.5" const szOID_RSA_SSA_PSS = "1.2.840.113549.1.1.10" const szOID_RSA_certExtensions = "1.2.840.113549.1.9.14" const szOID_RSA_challengePwd = "1.2.840.113549.1.9.7" const szOID_RSA_contentType = "1.2.840.113549.1.9.3" const szOID_RSA_counterSign = "1.2.840.113549.1.9.6" const szOID_RSA_data = "1.2.840.113549.1.7.1" const szOID_RSA_digestedData = "1.2.840.113549.1.7.5" const szOID_RSA_emailAddr = "1.2.840.113549.1.9.1" const szOID_RSA_encryptedData = "1.2.840.113549.1.7.6" const szOID_RSA_envelopedData = "1.2.840.113549.1.7.3" const szOID_RSA_extCertAttrs = "1.2.840.113549.1.9.9" const szOID_RSA_hashedData = "1.2.840.113549.1.7.5" const szOID_RSA_messageDigest = "1.2.840.113549.1.9.4" const szOID_RSA_preferSignedData = "1.2.840.113549.1.9.15.1" const szOID_RSA_signEnvData = "1.2.840.113549.1.7.4" const szOID_RSA_signedData = "1.2.840.113549.1.7.2" const szOID_RSA_signingTime = "1.2.840.113549.1.9.5" const szOID_RSA_unstructAddr = "1.2.840.113549.1.9.8" const szOID_RSA_unstructName = "1.2.840.113549.1.9.2" const szOID_SEARCH_GUIDE = "2.5.4.14" const szOID_SEE_ALSO = "2.5.4.34" const szOID_SERIALIZED = "1.3.6.1.4.1.311.10.3.3.1" const szOID_SERVER_GATED_CRYPTO = "1.3.6.1.4.1.311.10.3.3" const szOID_SGC_NETSCAPE = "2.16.840.1.113730.4.1" const szOID_SITE_PIN_RULES_FLAGS_ATTR = "1.3.6.1.4.1.311.10.4.3" const szOID_SITE_PIN_RULES_INDEX_ATTR = "1.3.6.1.4.1.311.10.4.2" const szOID_SORTED_CTL = "1.3.6.1.4.1.311.10.1.1" const szOID_STATE_OR_PROVINCE_NAME = "2.5.4.8" const szOID_STREET_ADDRESS = "2.5.4.9" const szOID_SUBJECT_ALT_NAME = "2.5.29.7" const szOID_SUBJECT_ALT_NAME2 = "2.5.29.17" const szOID_SUBJECT_DIR_ATTRS = "2.5.29.9" const szOID_SUBJECT_INFO_ACCESS = "1.3.6.1.5.5.7.1.11" const szOID_SUBJECT_KEY_IDENTIFIER = "2.5.29.14" const szOID_SUPPORTED_APPLICATION_CONTEXT = "2.5.4.30" const szOID_SUR_NAME = "2.5.4.4" const szOID_SYNC_ROOT_CTL_EXT = "1.3.6.1.4.1.311.10.3.50" const szOID_TELEPHONE_NUMBER = "2.5.4.20" const szOID_TELETEXT_TERMINAL_IDENTIFIER = "2.5.4.22" const szOID_TELEX_NUMBER = "2.5.4.21" const szOID_TIMESTAMP_TOKEN = "1.2.840.113549.1.9.16.1.4" const szOID_TITLE = "2.5.4.12" const szOID_TLS_FEATURES_EXT = "1.3.6.1.5.5.7.1.24" const szOID_USER_CERTIFICATE = "2.5.4.36" const szOID_USER_PASSWORD = "2.5.4.35" const szOID_VERISIGN_BITSTRING_6_13 = "2.16.840.1.113733.1.6.13" const szOID_VERISIGN_ISS_STRONG_CRYPTO = "2.16.840.1.113733.1.8.1" const szOID_VERISIGN_ONSITE_JURISDICTION_HASH = "2.16.840.1.113733.1.6.11" const szOID_VERISIGN_PRIVATE_6_9 = "2.16.840.1.113733.1.6.9" const szOID_WHQL_CRYPTO = "1.3.6.1.4.1.311.10.3.5" const szOID_WINDOWS_KITS_SIGNER = "1.3.6.1.4.1.311.10.3.20" const szOID_WINDOWS_RT_SIGNER = "1.3.6.1.4.1.311.10.3.21" const szOID_WINDOWS_SOFTWARE_EXTENSION_SIGNER = "1.3.6.1.4.1.311.10.3.26" const szOID_WINDOWS_STORE_SIGNER = "1.3.6.1.4.1.311.76.3.1" const szOID_WINDOWS_TCB_SIGNER = "1.3.6.1.4.1.311.10.3.23" const szOID_WINDOWS_THIRD_PARTY_COMPONENT_SIGNER = "1.3.6.1.4.1.311.10.3.25" const szOID_X21_ADDRESS = "2.5.4.24" const szOID_X957 = "1.2.840.10040" const szOID_X957_DSA = "1.2.840.10040.4.1" const szOID_X957_SHA1DSA = "1.2.840.10040.4.3" const szOID_YESNO_TRUST_ATTR = "1.3.6.1.4.1.311.10.4.1" const szPRIV_KEY_CACHE_MAX_ITEMS = "PrivKeyCacheMaxItems" const szPRIV_KEY_CACHE_PURGE_INTERVAL_SECONDS = "PrivKeyCachePurgeIntervalSeconds" const sz_CERT_STORE_PROV_COLLECTION = "Collection" const sz_CERT_STORE_PROV_FILENAME = "sz_CERT_STORE_PROV_FILENAME_W" const sz_CERT_STORE_PROV_FILENAME_W = "File" const sz_CERT_STORE_PROV_LDAP = "sz_CERT_STORE_PROV_LDAP_W" const sz_CERT_STORE_PROV_LDAP_W = "Ldap" const sz_CERT_STORE_PROV_MEMORY = "Memory" const sz_CERT_STORE_PROV_PHYSICAL = "sz_CERT_STORE_PROV_PHYSICAL_W" const sz_CERT_STORE_PROV_PHYSICAL_W = "Physical" const sz_CERT_STORE_PROV_PKCS12 = "PKCS12" const sz_CERT_STORE_PROV_PKCS7 = "PKCS7" const sz_CERT_STORE_PROV_SERIALIZED = "Serialized" const sz_CERT_STORE_PROV_SMART_CARD = "sz_CERT_STORE_PROV_SMART_CARD_W" const sz_CERT_STORE_PROV_SMART_CARD_W = "SmartCard" const sz_CERT_STORE_PROV_SYSTEM = "sz_CERT_STORE_PROV_SYSTEM_W" const sz_CERT_STORE_PROV_SYSTEM_REGISTRY = "sz_CERT_STORE_PROV_SYSTEM_REGISTRY_W" const sz_CERT_STORE_PROV_SYSTEM_REGISTRY_W = "SystemRegistry" const sz_CERT_STORE_PROV_SYSTEM_W = "System" type tMIXERCONTROLDETAILS = TtMIXERCONTROLDETAILS type tMIXERCONTROLDETAILS_BOOLEAN = TtMIXERCONTROLDETAILS_BOOLEAN type tMIXERCONTROLDETAILS_SIGNED = TtMIXERCONTROLDETAILS_SIGNED type tMIXERCONTROLDETAILS_UNSIGNED = TtMIXERCONTROLDETAILS_UNSIGNED type tWAVEFORMATEX = TtWAVEFORMATEX type t__BCRYPT_KEY_LENGTHS_STRUCT = TBCRYPT_KEY_LENGTHS_STRUCT type t__GENERIC_BINDING_INFO = TGENERIC_BINDING_INFO type t__NCRYPT_SUPPORTED_LENGTHS = TNCRYPT_SUPPORTED_LENGTHS type t__NCRYPT_UI_POLICY = TNCRYPT_UI_POLICY type t__WIDL_oaidl_generated_name_0000000E = struct { FUnknownStr [0]TSAFEARR_UNKNOWN FDispatchStr [0]TSAFEARR_DISPATCH FVariantStr [0]TSAFEARR_VARIANT FRecordStr [0]TSAFEARR_BRECORD FHaveIidStr [0]TSAFEARR_HAVEIID FByteStr [0]TBYTE_SIZEDARR FWordStr [0]TWORD_SIZEDARR FLongStr [0]TDWORD_SIZEDARR FHyperStr [0]THYPER_SIZEDARR FBstrStr TSAFEARR_BSTR F__ccgo_pad10 [16]byte } type t__WIDL_objidl_generated_name_0000000C = struct { FhPalette [0]TwireHPALETTE FhGeneric [0]TwireHGLOBAL FhBitmap TwireHBITMAP } type t__WIDL_objidl_generated_name_0000000D = struct { FhHEnhMetaFile [0]TwireHENHMETAFILE FhGdiHandle [0]uintptr FhGlobal [0]TwireHGLOBAL FlpszFileName [0]TLPOLESTR Fpstm [0]uintptr Fpstg [0]uintptr FhMetaFilePict TwireHMETAFILEPICT } type t__WIDL_wtypes_generated_name_00000009 = struct { FhRemote [0]TLONG FhInproc TLONG } type t__WIDL_wtypes_generated_name_0000000A = struct { FpFileExt [0]TLPOLESTR FpMimeType [0]TLPOLESTR FpProgId [0]TLPOLESTR FpFileName [0]TLPOLESTR FByName [0]struct { FpPackageName TLPOLESTR FPolicyId TGUID } FByObjectId [0]struct { FObjectId TGUID FPolicyId TGUID } Fclsid TCLSID F__ccgo_pad7 [16]byte } type t__WIDL_wtypes_generated_name_0000000B = TuCLSSPEC type t__mingw_flt_type_t = struct { Fval [0]uint32 Fx float32 } type t__predefined_wchar_t = uint16 type t__time32_t = int32 type t__time64_t = int64 type t__timeb32 = struct { Ftime t__time32_t Fmillitm uint16 Ftimezone int16 Fdstflag int16 } type tagABORTPATH = TtagABORTPATH type tagACCEL = TtagACCEL type tagACCESSTIMEOUT = TtagACCESSTIMEOUT type tagACTCTXA = TtagACTCTXA type tagACTCTXW = TtagACTCTXW type tagACTCTX_SECTION_KEYED_DATA = TtagACTCTX_SECTION_KEYED_DATA type tagACTCTX_SECTION_KEYED_DATA_2600 = TtagACTCTX_SECTION_KEYED_DATA_2600 type tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA = TtagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA type tagALTTABINFO = TtagALTTABINFO type tagANIMATIONINFO = TtagANIMATIONINFO type tagARRAYDESC = TtagARRAYDESC type tagAUDIODESCRIPTION = TtagAUDIODESCRIPTION type tagAUXCAPS2A = TtagAUXCAPS2A type tagAUXCAPS2W = TtagAUXCAPS2W type tagAUXCAPSA = TtagAUXCAPSA type tagAUXCAPSW = TtagAUXCAPSW type tagAXESLISTA = TtagAXESLISTA type tagAXESLISTW = TtagAXESLISTW type tagAXISINFOA = TtagAXISINFOA type tagAXISINFOW = TtagAXISINFOW type tagBINDPTR = TtagBINDPTR type tagBIND_OPTS = TtagBIND_OPTS type tagBIND_OPTS2 = TtagBIND_OPTS2 type tagBIND_OPTS3 = TtagBIND_OPTS3 type tagBITMAP = TtagBITMAP type tagBITMAPCOREHEADER = TtagBITMAPCOREHEADER type tagBITMAPCOREINFO = TtagBITMAPCOREINFO type tagBITMAPFILEHEADER = TtagBITMAPFILEHEADER type tagBITMAPINFO = TtagBITMAPINFO type tagBITMAPINFOHEADER = TtagBITMAPINFOHEADER type tagBLOB = TtagBLOB type tagBSTRBLOB = TtagBSTRBLOB type tagBinaryParam = TtagBinaryParam type tagCABOOL = TtagCABOOL type tagCABSTR = TtagCABSTR type tagCABSTRBLOB = TtagCABSTRBLOB type tagCAC = TtagCAC type tagCACLIPDATA = TtagCACLIPDATA type tagCACLSID = TtagCACLSID type tagCACY = TtagCACY type tagCADATE = TtagCADATE type tagCADBL = TtagCADBL type tagCAFILETIME = TtagCAFILETIME type tagCAFLT = TtagCAFLT type tagCAH = TtagCAH type tagCAI = TtagCAI type tagCAL = TtagCAL type tagCALPSTR = TtagCALPSTR type tagCALPWSTR = TtagCALPWSTR type tagCANDIDATEFORM = TtagCANDIDATEFORM type tagCANDIDATELIST = TtagCANDIDATELIST type tagCAPROPVARIANT = TtagCAPROPVARIANT type tagCASCODE = TtagCASCODE type tagCAUB = TtagCAUB type tagCAUH = TtagCAUH type tagCAUI = TtagCAUI type tagCAUL = TtagCAUL type tagCBTACTIVATESTRUCT = TtagCBTACTIVATESTRUCT type tagCBT_CREATEWNDA = TtagCBT_CREATEWNDA type tagCBT_CREATEWNDW = TtagCBT_CREATEWNDW type tagCHANGEFILTERSTRUCT = TtagCHANGEFILTERSTRUCT type tagCHARSETINFO = TtagCHARSETINFO type tagCHOOSECOLORA = TtagCHOOSECOLORA type tagCHOOSECOLORW = TtagCHOOSECOLORW type tagCHOOSEFONTA = TtagCHOOSEFONTA type tagCHOOSEFONTW = TtagCHOOSEFONTW type tagCIEXYZ = TtagCIEXYZ type tagCLEANLOCALSTORAGE = TtagCLEANLOCALSTORAGE type tagCLIENTCREATESTRUCT = TtagCLIENTCREATESTRUCT type tagCLIPDATA = TtagCLIPDATA type tagCOLORADJUSTMENT = TtagCOLORADJUSTMENT type tagCOLORCORRECTPALETTE = TtagCOLORCORRECTPALETTE type tagCOLORMATCHTOTARGET = TtagCOLORMATCHTOTARGET type tagCOMBOBOXINFO = TtagCOMBOBOXINFO type tagCOMPAREITEMSTRUCT = TtagCOMPAREITEMSTRUCT type tagCOMPOSITIONFORM = TtagCOMPOSITIONFORM type tagCONVCONTEXT = TtagCONVCONTEXT type tagCONVINFO = TtagCONVINFO type tagCOPYDATASTRUCT = TtagCOPYDATASTRUCT type tagCREATESTRUCTA = TtagCREATESTRUCTA type tagCREATESTRUCTW = TtagCREATESTRUCTW type tagCRGB = TtagCRGB type tagCSPLATFORM = TtagCSPLATFORM type tagCURSORINFO = TtagCURSORINFO type tagCURSORSHAPE = TtagCURSORSHAPE type tagCUSTDATA = TtagCUSTDATA type tagCUSTDATAITEM = TtagCUSTDATAITEM type tagCWPRETSTRUCT = TtagCWPRETSTRUCT type tagCWPSTRUCT = TtagCWPSTRUCT type tagCY = TtagCY type tagDDEML_MSG_HOOK_DATA = TtagDDEML_MSG_HOOK_DATA type tagDEBUGHOOKINFO = TtagDEBUGHOOKINFO type tagDEC = TtagDEC type tagDELETEITEMSTRUCT = TtagDELETEITEMSTRUCT type tagDESIGNVECTOR = TtagDESIGNVECTOR type tagDEVNAMES = TtagDEVNAMES type tagDIBSECTION = TtagDIBSECTION type tagDISPPARAMS = TtagDISPPARAMS type tagDRAWITEMSTRUCT = TtagDRAWITEMSTRUCT type tagDRAWTEXTPARAMS = TtagDRAWTEXTPARAMS type tagDROPSTRUCT = TtagDROPSTRUCT type tagDRVCONFIGINFO = TtagDRVCONFIGINFO type tagDVTARGETDEVICE = TtagDVTARGETDEVICE type tagELEMDESC = TtagELEMDESC type tagEMR = TtagEMR type tagEMRALPHABLEND = TtagEMRALPHABLEND type tagEMRANGLEARC = TtagEMRANGLEARC type tagEMRARC = TtagEMRARC type tagEMRBITBLT = TtagEMRBITBLT type tagEMRCREATEBRUSHINDIRECT = TtagEMRCREATEBRUSHINDIRECT type tagEMRCREATECOLORSPACE = TtagEMRCREATECOLORSPACE type tagEMRCREATECOLORSPACEW = TtagEMRCREATECOLORSPACEW type tagEMRCREATEDIBPATTERNBRUSHPT = TtagEMRCREATEDIBPATTERNBRUSHPT type tagEMRCREATEMONOBRUSH = TtagEMRCREATEMONOBRUSH type tagEMRCREATEPALETTE = TtagEMRCREATEPALETTE type tagEMRCREATEPEN = TtagEMRCREATEPEN type tagEMRELLIPSE = TtagEMRELLIPSE type tagEMREOF = TtagEMREOF type tagEMREXCLUDECLIPRECT = TtagEMREXCLUDECLIPRECT type tagEMREXTCREATEFONTINDIRECTW = TtagEMREXTCREATEFONTINDIRECTW type tagEMREXTCREATEPEN = TtagEMREXTCREATEPEN type tagEMREXTESCAPE = TtagEMREXTESCAPE type tagEMREXTFLOODFILL = TtagEMREXTFLOODFILL type tagEMREXTSELECTCLIPRGN = TtagEMREXTSELECTCLIPRGN type tagEMREXTTEXTOUTA = TtagEMREXTTEXTOUTA type tagEMRFILLPATH = TtagEMRFILLPATH type tagEMRFILLRGN = TtagEMRFILLRGN type tagEMRFORMAT = TtagEMRFORMAT type tagEMRFRAMERGN = TtagEMRFRAMERGN type tagEMRGDICOMMENT = TtagEMRGDICOMMENT type tagEMRGLSBOUNDEDRECORD = TtagEMRGLSBOUNDEDRECORD type tagEMRGLSRECORD = TtagEMRGLSRECORD type tagEMRGRADIENTFILL = TtagEMRGRADIENTFILL type tagEMRINVERTRGN = TtagEMRINVERTRGN type tagEMRLINETO = TtagEMRLINETO type tagEMRMASKBLT = TtagEMRMASKBLT type tagEMRMODIFYWORLDTRANSFORM = TtagEMRMODIFYWORLDTRANSFORM type tagEMRNAMEDESCAPE = TtagEMRNAMEDESCAPE type tagEMROFFSETCLIPRGN = TtagEMROFFSETCLIPRGN type tagEMRPIXELFORMAT = TtagEMRPIXELFORMAT type tagEMRPLGBLT = TtagEMRPLGBLT type tagEMRPOLYDRAW = TtagEMRPOLYDRAW type tagEMRPOLYDRAW16 = TtagEMRPOLYDRAW16 type tagEMRPOLYLINE = TtagEMRPOLYLINE type tagEMRPOLYLINE16 = TtagEMRPOLYLINE16 type tagEMRPOLYPOLYLINE = TtagEMRPOLYPOLYLINE type tagEMRPOLYPOLYLINE16 = TtagEMRPOLYPOLYLINE16 type tagEMRPOLYTEXTOUTA = TtagEMRPOLYTEXTOUTA type tagEMRRESIZEPALETTE = TtagEMRRESIZEPALETTE type tagEMRRESTOREDC = TtagEMRRESTOREDC type tagEMRROUNDRECT = TtagEMRROUNDRECT type tagEMRSCALEVIEWPORTEXTEX = TtagEMRSCALEVIEWPORTEXTEX type tagEMRSELECTCLIPPATH = TtagEMRSELECTCLIPPATH type tagEMRSELECTOBJECT = TtagEMRSELECTOBJECT type tagEMRSELECTPALETTE = TtagEMRSELECTPALETTE type tagEMRSETARCDIRECTION = TtagEMRSETARCDIRECTION type tagEMRSETCOLORADJUSTMENT = TtagEMRSETCOLORADJUSTMENT type tagEMRSETCOLORSPACE = TtagEMRSETCOLORSPACE type tagEMRSETDIBITSTODEVICE = TtagEMRSETDIBITSTODEVICE type tagEMRSETICMPROFILE = TtagEMRSETICMPROFILE type tagEMRSETMAPPERFLAGS = TtagEMRSETMAPPERFLAGS type tagEMRSETMITERLIMIT = TtagEMRSETMITERLIMIT type tagEMRSETPALETTEENTRIES = TtagEMRSETPALETTEENTRIES type tagEMRSETPIXELV = TtagEMRSETPIXELV type tagEMRSETTEXTCOLOR = TtagEMRSETTEXTCOLOR type tagEMRSETVIEWPORTEXTEX = TtagEMRSETVIEWPORTEXTEX type tagEMRSETVIEWPORTORGEX = TtagEMRSETVIEWPORTORGEX type tagEMRSETWORLDTRANSFORM = TtagEMRSETWORLDTRANSFORM type tagEMRSTRETCHBLT = TtagEMRSTRETCHBLT type tagEMRSTRETCHDIBITS = TtagEMRSTRETCHDIBITS type tagEMRTEXT = TtagEMRTEXT type tagEMRTRANSPARENTBLT = TtagEMRTRANSPARENTBLT type tagENHMETAHEADER = TtagENHMETAHEADER type tagENHMETARECORD = TtagENHMETARECORD type tagENUMLOGFONTA = TtagENUMLOGFONTA type tagENUMLOGFONTEXA = TtagENUMLOGFONTEXA type tagENUMLOGFONTEXDVA = TtagENUMLOGFONTEXDVA type tagENUMLOGFONTEXDVW = TtagENUMLOGFONTEXDVW type tagENUMLOGFONTEXW = TtagENUMLOGFONTEXW type tagENUMLOGFONTW = TtagENUMLOGFONTW type tagENUMTEXTMETRICA = TtagENUMTEXTMETRICA type tagENUMTEXTMETRICW = TtagENUMTEXTMETRICW type tagENUMUILANG = TtagENUMUILANG type tagEVENTMSG = TtagEVENTMSG type tagEXCEPINFO = TtagEXCEPINFO type tagEXTLOGFONTA = TtagEXTLOGFONTA type tagEXTLOGFONTW = TtagEXTLOGFONTW type tagEXTLOGPEN = TtagEXTLOGPEN type tagEXTLOGPEN32 = TtagEXTLOGPEN32 type tagFILTERKEYS = TtagFILTERKEYS type tagFINDREPLACEA = TtagFINDREPLACEA type tagFINDREPLACEW = TtagFINDREPLACEW type tagFONTSIGNATURE = TtagFONTSIGNATURE type tagFORMATETC = TtagFORMATETC type tagFUNCDESC = TtagFUNCDESC type tagGCP_RESULTSA = TtagGCP_RESULTSA type tagGCP_RESULTSW = TtagGCP_RESULTSW type tagGESTURECONFIG = TtagGESTURECONFIG type tagGESTUREINFO = TtagGESTUREINFO type tagGESTURENOTIFYSTRUCT = TtagGESTURENOTIFYSTRUCT type tagGLYPHSET = TtagGLYPHSET type tagGUITHREADINFO = TtagGUITHREADINFO type tagHANDLETABLE = TtagHANDLETABLE type tagHARDWAREHOOKSTRUCT = TtagHARDWAREHOOKSTRUCT type tagHARDWAREINPUT = TtagHARDWAREINPUT type tagHELPINFO = TtagHELPINFO type tagHELPWININFOA = TtagHELPWININFOA type tagHELPWININFOW = TtagHELPWININFOW type tagHIGHCONTRASTA = TtagHIGHCONTRASTA type tagHIGHCONTRASTW = TtagHIGHCONTRASTW type tagHSZPAIR = TtagHSZPAIR type tagHW_PROFILE_INFOA = TtagHW_PROFILE_INFOA type tagHW_PROFILE_INFOW = TtagHW_PROFILE_INFOW type tagICEXYZTRIPLE = TtagICEXYZTRIPLE type tagICONMETRICSA = TtagICONMETRICSA type tagICONMETRICSW = TtagICONMETRICSW type tagIDLDESC = TtagIDLDESC type tagIMECHARPOSITION = TtagIMECHARPOSITION type tagIMEMENUITEMINFOA = TtagIMEMENUITEMINFOA type tagIMEMENUITEMINFOW = TtagIMEMENUITEMINFOW type tagINPUT = TtagINPUT type tagINPUT_INJECTION_VALUE = TtagINPUT_INJECTION_VALUE type tagINPUT_MESSAGE_SOURCE = TtagINPUT_MESSAGE_SOURCE type tagINPUT_TRANSFORM = TtagINPUT_TRANSFORM type tagINTERFACEDATA = TtagINTERFACEDATA type tagINTERFACEINFO = TtagINTERFACEINFO type tagI_RpcProxyCallbackInterface = TtagI_RpcProxyCallbackInterface type tagJOYCAPS2A = TtagJOYCAPS2A type tagJOYCAPS2W = TtagJOYCAPS2W type tagJOYCAPSA = TtagJOYCAPSA type tagJOYCAPSW = TtagJOYCAPSW type tagKBDLLHOOKSTRUCT = TtagKBDLLHOOKSTRUCT type tagKERNINGPAIR = TtagKERNINGPAIR type tagKEYBDINPUT = TtagKEYBDINPUT type tagLASTINPUTINFO = TtagLASTINPUTINFO type tagLAYERPLANEDESCRIPTOR = TtagLAYERPLANEDESCRIPTOR type tagLC_ID = TtagLC_ID type tagLOCALESIGNATURE = TtagLOCALESIGNATURE type tagLOGBRUSH = TtagLOGBRUSH type tagLOGBRUSH32 = TtagLOGBRUSH32 type tagLOGCOLORSPACEA = TtagLOGCOLORSPACEA type tagLOGCOLORSPACEW = TtagLOGCOLORSPACEW type tagLOGFONTA = TtagLOGFONTA type tagLOGFONTW = TtagLOGFONTW type tagLOGPALETTE = TtagLOGPALETTE type tagLOGPEN = TtagLOGPEN type tagMCI_ANIM_OPEN_PARMSA = TtagMCI_ANIM_OPEN_PARMSA type tagMCI_ANIM_OPEN_PARMSW = TtagMCI_ANIM_OPEN_PARMSW type tagMCI_ANIM_PLAY_PARMS = TtagMCI_ANIM_PLAY_PARMS type tagMCI_ANIM_RECT_PARMS = TtagMCI_ANIM_RECT_PARMS type tagMCI_ANIM_STEP_PARMS = TtagMCI_ANIM_STEP_PARMS type tagMCI_ANIM_UPDATE_PARMS = TtagMCI_ANIM_UPDATE_PARMS type tagMCI_ANIM_WINDOW_PARMSA = TtagMCI_ANIM_WINDOW_PARMSA type tagMCI_ANIM_WINDOW_PARMSW = TtagMCI_ANIM_WINDOW_PARMSW type tagMCI_BREAK_PARMS = TtagMCI_BREAK_PARMS type tagMCI_GENERIC_PARMS = TtagMCI_GENERIC_PARMS type tagMCI_GETDEVCAPS_PARMS = TtagMCI_GETDEVCAPS_PARMS type tagMCI_INFO_PARMSA = TtagMCI_INFO_PARMSA type tagMCI_INFO_PARMSW = TtagMCI_INFO_PARMSW type tagMCI_LOAD_PARMSA = TtagMCI_LOAD_PARMSA type tagMCI_LOAD_PARMSW = TtagMCI_LOAD_PARMSW type tagMCI_OPEN_PARMSA = TtagMCI_OPEN_PARMSA type tagMCI_OPEN_PARMSW = TtagMCI_OPEN_PARMSW type tagMCI_OVLY_LOAD_PARMSA = TtagMCI_OVLY_LOAD_PARMSA type tagMCI_OVLY_LOAD_PARMSW = TtagMCI_OVLY_LOAD_PARMSW type tagMCI_OVLY_OPEN_PARMSA = TtagMCI_OVLY_OPEN_PARMSA type tagMCI_OVLY_OPEN_PARMSW = TtagMCI_OVLY_OPEN_PARMSW type tagMCI_OVLY_RECT_PARMS = TtagMCI_OVLY_RECT_PARMS type tagMCI_OVLY_SAVE_PARMSA = TtagMCI_OVLY_SAVE_PARMSA type tagMCI_OVLY_SAVE_PARMSW = TtagMCI_OVLY_SAVE_PARMSW type tagMCI_OVLY_WINDOW_PARMSA = TtagMCI_OVLY_WINDOW_PARMSA type tagMCI_OVLY_WINDOW_PARMSW = TtagMCI_OVLY_WINDOW_PARMSW type tagMCI_PLAY_PARMS = TtagMCI_PLAY_PARMS type tagMCI_RECORD_PARMS = TtagMCI_RECORD_PARMS type tagMCI_SAVE_PARMSA = TtagMCI_SAVE_PARMSA type tagMCI_SAVE_PARMSW = TtagMCI_SAVE_PARMSW type tagMCI_SEEK_PARMS = TtagMCI_SEEK_PARMS type tagMCI_SEQ_SET_PARMS = TtagMCI_SEQ_SET_PARMS type tagMCI_SET_PARMS = TtagMCI_SET_PARMS type tagMCI_STATUS_PARMS = TtagMCI_STATUS_PARMS type tagMCI_SYSINFO_PARMSA = TtagMCI_SYSINFO_PARMSA type tagMCI_SYSINFO_PARMSW = TtagMCI_SYSINFO_PARMSW type tagMCI_VD_ESCAPE_PARMSA = TtagMCI_VD_ESCAPE_PARMSA type tagMCI_VD_ESCAPE_PARMSW = TtagMCI_VD_ESCAPE_PARMSW type tagMCI_VD_PLAY_PARMS = TtagMCI_VD_PLAY_PARMS type tagMCI_VD_STEP_PARMS = TtagMCI_VD_STEP_PARMS type tagMCI_WAVE_DELETE_PARMS = TtagMCI_WAVE_DELETE_PARMS type tagMCI_WAVE_OPEN_PARMSA = TtagMCI_WAVE_OPEN_PARMSA type tagMCI_WAVE_OPEN_PARMSW = TtagMCI_WAVE_OPEN_PARMSW type tagMCI_WAVE_SET_PARMS = TtagMCI_WAVE_SET_PARMS type tagMDICREATESTRUCTA = TtagMDICREATESTRUCTA type tagMDICREATESTRUCTW = TtagMDICREATESTRUCTW type tagMDINEXTMENU = TtagMDINEXTMENU type tagMEASUREITEMSTRUCT = TtagMEASUREITEMSTRUCT type tagMENUBARINFO = TtagMENUBARINFO type tagMENUGETOBJECTINFO = TtagMENUGETOBJECTINFO type tagMENUINFO = TtagMENUINFO type tagMENUITEMINFOA = TtagMENUITEMINFOA type tagMENUITEMINFOW = TtagMENUITEMINFOW type tagMETAFILEPICT = TtagMETAFILEPICT type tagMETAHEADER = TtagMETAHEADER type tagMETARECORD = TtagMETARECORD type tagMETHODDATA = TtagMETHODDATA type tagMIDIINCAPS2A = TtagMIDIINCAPS2A type tagMIDIINCAPS2W = TtagMIDIINCAPS2W type tagMIDIINCAPSA = TtagMIDIINCAPSA type tagMIDIINCAPSW = TtagMIDIINCAPSW type tagMIDIOUTCAPS2A = TtagMIDIOUTCAPS2A type tagMIDIOUTCAPS2W = TtagMIDIOUTCAPS2W type tagMIDIOUTCAPSA = TtagMIDIOUTCAPSA type tagMIDIOUTCAPSW = TtagMIDIOUTCAPSW type tagMINIMIZEDMETRICS = TtagMINIMIZEDMETRICS type tagMINMAXINFO = TtagMINMAXINFO type tagMIXERCAPS2A = TtagMIXERCAPS2A type tagMIXERCAPS2W = TtagMIXERCAPS2W type tagMIXERCAPSA = TtagMIXERCAPSA type tagMIXERCAPSW = TtagMIXERCAPSW type tagMIXERCONTROLA = TtagMIXERCONTROLA type tagMIXERCONTROLDETAILS_LISTTEXTA = TtagMIXERCONTROLDETAILS_LISTTEXTA type tagMIXERCONTROLDETAILS_LISTTEXTW = TtagMIXERCONTROLDETAILS_LISTTEXTW type tagMIXERCONTROLW = TtagMIXERCONTROLW type tagMIXERLINEA = TtagMIXERLINEA type tagMIXERLINECONTROLSA = TtagMIXERLINECONTROLSA type tagMIXERLINECONTROLSW = TtagMIXERLINECONTROLSW type tagMIXERLINEW = TtagMIXERLINEW type tagMONCBSTRUCT = TtagMONCBSTRUCT type tagMONCONVSTRUCT = TtagMONCONVSTRUCT type tagMONERRSTRUCT = TtagMONERRSTRUCT type tagMONHSZSTRUCTA = TtagMONHSZSTRUCTA type tagMONHSZSTRUCTW = TtagMONHSZSTRUCTW type tagMONITORINFO = TtagMONITORINFO type tagMONITORINFOEXA = TtagMONITORINFOEXA type tagMONITORINFOEXW = TtagMONITORINFOEXW type tagMONLINKSTRUCT = TtagMONLINKSTRUCT type tagMONMSGSTRUCT = TtagMONMSGSTRUCT type tagMOUSEHOOKSTRUCT = TtagMOUSEHOOKSTRUCT type tagMOUSEHOOKSTRUCTEX = TtagMOUSEHOOKSTRUCTEX type tagMOUSEINPUT = TtagMOUSEINPUT type tagMOUSEKEYS = TtagMOUSEKEYS type tagMOUSEMOVEPOINT = TtagMOUSEMOVEPOINT type tagMSG = TtagMSG type tagMSGBOXPARAMSA = TtagMSGBOXPARAMSA type tagMSGBOXPARAMSW = TtagMSGBOXPARAMSW type tagMSLLHOOKSTRUCT = TtagMSLLHOOKSTRUCT type tagMULTIKEYHELPA = TtagMULTIKEYHELPA type tagMULTIKEYHELPW = TtagMULTIKEYHELPW type tagMULTI_QI = TtagMULTI_QI type tagNCCALCSIZE_PARAMS = TtagNCCALCSIZE_PARAMS type tagNC_ADDRESS = TtagNC_ADDRESS type tagNEWTEXTMETRICA = TtagNEWTEXTMETRICA type tagNEWTEXTMETRICEXA = TtagNEWTEXTMETRICEXA type tagNEWTEXTMETRICEXW = TtagNEWTEXTMETRICEXW type tagNEWTEXTMETRICW = TtagNEWTEXTMETRICW type tagNMHDR = TtagNMHDR type tagNONCLIENTMETRICSA = TtagNONCLIENTMETRICSA type tagNONCLIENTMETRICSW = TtagNONCLIENTMETRICSW type tagOBJECTDESCRIPTOR = TtagOBJECTDESCRIPTOR type tagOFNA = TtagOFNA type tagOFNW = TtagOFNW type tagOFN_NT4A = TtagOFN_NT4A type tagOFN_NT4W = TtagOFN_NT4W type tagOIFI = TtagOIFI type tagOLEVERB = TtagOLEVERB type tagOleMenuGroupWidths = TtagOleMenuGroupWidths type tagPAINTSTRUCT = TtagPAINTSTRUCT type tagPALETTEENTRY = TtagPALETTEENTRY type tagPANOSE = TtagPANOSE type tagPARAMDATA = TtagPARAMDATA type tagPARAMDESC = TtagPARAMDESC type tagPARAMDESCEX = TtagPARAMDESCEX type tagPDA = TtagPDA type tagPDEXA = TtagPDEXA type tagPDEXW = TtagPDEXW type tagPDW = TtagPDW type tagPELARRAY = TtagPELARRAY type tagPIXELFORMATDESCRIPTOR = TtagPIXELFORMATDESCRIPTOR type tagPOINT = TtagPOINT type tagPOINTER_DEVICE_CURSOR_INFO = TtagPOINTER_DEVICE_CURSOR_INFO type tagPOINTER_DEVICE_INFO = TtagPOINTER_DEVICE_INFO type tagPOINTER_DEVICE_PROPERTY = TtagPOINTER_DEVICE_PROPERTY type tagPOINTER_INFO = TtagPOINTER_INFO type tagPOINTER_PEN_INFO = TtagPOINTER_PEN_INFO type tagPOINTER_TOUCH_INFO = TtagPOINTER_TOUCH_INFO type tagPOINTER_TYPE_INFO = TtagPOINTER_TYPE_INFO type tagPOINTFX = TtagPOINTFX type tagPOINTS = TtagPOINTS type tagPOLYTEXTA = TtagPOLYTEXTA type tagPOLYTEXTW = TtagPOLYTEXTW type tagPRINTPAGERANGE = TtagPRINTPAGERANGE type tagPROPSPEC = TtagPROPSPEC type tagPROPVARIANT = TtagPROPVARIANT type tagPSDA = TtagPSDA type tagPSDW = TtagPSDW type tagQUERYCONTEXT = TtagQUERYCONTEXT type tagRAWHID = TtagRAWHID type tagRAWINPUT = TtagRAWINPUT type tagRAWINPUTDEVICE = TtagRAWINPUTDEVICE type tagRAWINPUTDEVICELIST = TtagRAWINPUTDEVICELIST type tagRAWINPUTHEADER = TtagRAWINPUTHEADER type tagRAWKEYBOARD = TtagRAWKEYBOARD type tagRAWMOUSE = TtagRAWMOUSE type tagRECONVERTSTRING = TtagRECONVERTSTRING type tagRECT = TtagRECT type tagREGISTERWORDA = TtagREGISTERWORDA type tagREGISTERWORDW = TtagREGISTERWORDW type tagRGBQUAD = TtagRGBQUAD type tagRGBTRIPLE = TtagRGBTRIPLE type tagRID_DEVICE_INFO = TtagRID_DEVICE_INFO type tagRID_DEVICE_INFO_HID = TtagRID_DEVICE_INFO_HID type tagRID_DEVICE_INFO_KEYBOARD = TtagRID_DEVICE_INFO_KEYBOARD type tagRID_DEVICE_INFO_MOUSE = TtagRID_DEVICE_INFO_MOUSE type tagRPCOLEMESSAGE = TtagRPCOLEMESSAGE type tagRPC_CALL_ATTRIBUTES_V1_A = TtagRPC_CALL_ATTRIBUTES_V1_A type tagRPC_CALL_ATTRIBUTES_V1_W = TtagRPC_CALL_ATTRIBUTES_V1_W type tagRPC_CALL_ATTRIBUTES_V2A = TtagRPC_CALL_ATTRIBUTES_V2A type tagRPC_CALL_ATTRIBUTES_V2W = TtagRPC_CALL_ATTRIBUTES_V2W type tagRPC_CALL_LOCAL_ADDRESS_V1_A = TtagRPC_CALL_LOCAL_ADDRESS_V1_A type tagRPC_CALL_LOCAL_ADDRESS_V1_W = TtagRPC_CALL_LOCAL_ADDRESS_V1_W type tagRPC_EE_INFO_PARAM = TtagRPC_EE_INFO_PARAM type tagRPC_ERROR_ENUM_HANDLE = TtagRPC_ERROR_ENUM_HANDLE type tagRPC_EXTENDED_ERROR_INFO = TtagRPC_EXTENDED_ERROR_INFO type tagRemBRUSH = TtagRemBRUSH type tagRemFORMATETC = TtagRemFORMATETC type tagRemHBITMAP = TtagRemHBITMAP type tagRemHENHMETAFILE = TtagRemHENHMETAFILE type tagRemHGLOBAL = TtagRemHGLOBAL type tagRemHMETAFILEPICT = TtagRemHMETAFILEPICT type tagRemHPALETTE = TtagRemHPALETTE type tagRemSNB = TtagRemSNB type tagRemSTGMEDIUM = TtagRemSTGMEDIUM type tagSAFEARRAY = TtagSAFEARRAY type tagSAFEARRAYBOUND = TtagSAFEARRAYBOUND type tagSCROLLBARINFO = TtagSCROLLBARINFO type tagSCROLLINFO = TtagSCROLLINFO type tagSERIALIZEDPROPERTYVALUE = TtagSERIALIZEDPROPERTYVALUE type tagSERIALKEYSA = TtagSERIALKEYSA type tagSERIALKEYSW = TtagSERIALKEYSW type tagSIZE = TtagSIZE type tagSOLE_AUTHENTICATION_INFO = TtagSOLE_AUTHENTICATION_INFO type tagSOLE_AUTHENTICATION_LIST = TtagSOLE_AUTHENTICATION_LIST type tagSOLE_AUTHENTICATION_SERVICE = TtagSOLE_AUTHENTICATION_SERVICE type tagSOUNDSENTRYA = TtagSOUNDSENTRYA type tagSOUNDSENTRYW = TtagSOUNDSENTRYW type tagSTATDATA = TtagSTATDATA type tagSTATPROPSETSTG = TtagSTATPROPSETSTG type tagSTATPROPSTG = TtagSTATPROPSTG type tagSTATSTG = TtagSTATSTG type tagSTGMEDIUM = TtagSTGMEDIUM type tagSTGOPTIONS = TtagSTGOPTIONS type tagSTICKYKEYS = TtagSTICKYKEYS type tagSTYLEBUFA = TtagSTYLEBUFA type tagSTYLEBUFW = TtagSTYLEBUFW type tagSTYLESTRUCT = TtagSTYLESTRUCT type tagServerInformation = TtagServerInformation type tagStorageLayout = TtagStorageLayout type tagTEXTMETRICA = TtagTEXTMETRICA type tagTEXTMETRICW = TtagTEXTMETRICW type tagTITLEBARINFO = TtagTITLEBARINFO type tagTITLEBARINFOEX = TtagTITLEBARINFOEX type tagTLIBATTR = TtagTLIBATTR type tagTOGGLEKEYS = TtagTOGGLEKEYS type tagTOUCHINPUT = TtagTOUCHINPUT type tagTOUCH_HIT_TESTING_INPUT = TtagTOUCH_HIT_TESTING_INPUT type tagTOUCH_HIT_TESTING_PROXIMITY_EVALUATION = TtagTOUCH_HIT_TESTING_PROXIMITY_EVALUATION type tagTPMPARAMS = TtagTPMPARAMS type tagTRACKMOUSEEVENT = TtagTRACKMOUSEEVENT type tagTTPOLYCURVE = TtagTTPOLYCURVE type tagTTPOLYGONHEADER = TtagTTPOLYGONHEADER type tagTYPEATTR = TtagTYPEATTR type tagTYPEDESC = TtagTYPEDESC type tagTouchPredictionParameters = TtagTouchPredictionParameters type tagUPDATELAYEREDWINDOWINFO = TtagUPDATELAYEREDWINDOWINFO type tagUSAGE_PROPERTIES = TtagUSAGE_PROPERTIES type tagUSEROBJECTFLAGS = TtagUSEROBJECTFLAGS type tagVARDESC = TtagVARDESC type tagVARIANT = TtagVARIANT type tagVS_FIXEDFILEINFO = TtagVS_FIXEDFILEINFO type tagVersionedStream = TtagVersionedStream type tagWAVEINCAPS2A = TtagWAVEINCAPS2A type tagWAVEINCAPS2W = TtagWAVEINCAPS2W type tagWAVEINCAPSA = TtagWAVEINCAPSA type tagWAVEINCAPSW = TtagWAVEINCAPSW type tagWAVEOUTCAPS2A = TtagWAVEOUTCAPS2A type tagWAVEOUTCAPS2W = TtagWAVEOUTCAPS2W type tagWAVEOUTCAPSA = TtagWAVEOUTCAPSA type tagWAVEOUTCAPSW = TtagWAVEOUTCAPSW type tagWCRANGE = TtagWCRANGE type tagWINDOWINFO = TtagWINDOWINFO type tagWINDOWPLACEMENT = TtagWINDOWPLACEMENT type tagWINDOWPOS = TtagWINDOWPOS type tagWNDCLASSA = TtagWNDCLASSA type tagWNDCLASSEXA = TtagWNDCLASSEXA type tagWNDCLASSEXW = TtagWNDCLASSEXW type tagWNDCLASSW = TtagWNDCLASSW type tagWTSSESSION_NOTIFICATION = TtagWTSSESSION_NOTIFICATION type tagXFORM = TtagXFORM type threadlocaleinfostruct = Tthreadlocaleinfostruct type threadlocinfo = Tthreadlocinfo type timeb = Ttimeb type timecaps_tag = Ttimecaps_tag const toascii = 0 type uCLSSPEC = TuCLSSPEC type uSTGMEDIUM = TuSTGMEDIUM type u_int64 = Tu_int64 const ua_CharUpper = 0 const ua_lstrcmp = 0 const ua_lstrcmpi = 0 const ua_lstrlen = 0 const ua_tcscpy = 0 type uintmax_t = Tuintmax_t /* 7.18.2 Limits of specified-width integer types */ /* 7.18.2.1 Limits of exact-width integer types */ /* 7.18.2.2 Limits of minimum-width integer types */ /* 7.18.2.3 Limits of fastest minimum-width integer types */ /* 7.18.2.4 Limits of integer types capable of holding object pointers */ /* 7.18.2.5 Limits of greatest-width integer types */ /* 7.18.3 Limits of other integer types */ /* * wint_t is unsigned short for compatibility with MS runtime */ /* 7.18.4 Macros for integer constants */ /* 7.18.4.1 Macros for minimum-width integer constants Accoding to Douglas Gwyn : "This spec was changed in ISO/IEC 9899:1999 TC1; in ISO/IEC 9899:1999 as initially published, the expansion was required to be an integer constant of precisely matching type, which is impossible to accomplish for the shorter types on most platforms, because C99 provides no standard way to designate an integer constant with width less than that of type int. TC1 changed this to require just an integer constant *expression* with *promoted* type." The trick used here is from Clive D W Feather. */ /* The 'trick' doesn't work in C89 for long long because, without suffix, (val) will be evaluated as int, not intmax_t */ /* 7.18.4.2 Macros for greatest-width integer constants */ /* ** The following macros are used to cast pointers to integers and ** integers to pointers. The way you do this varies from one compiler ** to the next, so we have developed the following set of #if statements ** to generate appropriate macros for a wide range of compilers. ** ** The correct "ANSI" way to do this is to use the intptr_t type. ** Unfortunately, that typedef is not available on all compilers, or ** if it is available, it requires an #include of specific headers ** that vary from one machine to the next. ** ** Ticket #3860: The llvm-gcc-4.2 compiler from Apple chokes on ** the ((void*)&((char*)0)[X]) construct. But MSVC chokes on ((void*)(X)). ** So we have to define the macros in different ways depending on the ** compiler. */ /* ** Macros to hint to the compiler that a function should or should not be ** inlined. */ /* ** Make sure that the compiler intrinsics we desire are enabled when ** compiling with an appropriate version of MSVC unless prevented by ** the SQLITE_DISABLE_INTRINSIC define. */ /* ** Enable SQLITE_USE_SEH by default on MSVC builds. Only omit ** SEH support if the -DSQLITE_OMIT_SEH option is given. */ /* ** Enable SQLITE_DIRECT_OVERFLOW_READ, unless the build explicitly ** disables it using -DSQLITE_DIRECT_OVERFLOW_READ=0 */ /* In all other cases, enable */ /* ** The SQLITE_THREADSAFE macro must be defined as 0, 1, or 2. ** 0 means mutexes are permanently disable and the library is never ** threadsafe. 1 means the library is serialized which is the highest ** level of threadsafety. 2 means the library is multithreaded - multiple ** threads can use SQLite as long as no two threads try to use the same ** database connection at the same time. ** ** Older versions of SQLite used an optional THREADSAFE macro. ** We support that for legacy. ** ** To ensure that the correct value of "THREADSAFE" is reported when querying ** for compile-time options at runtime (e.g. "PRAGMA compile_options"), this ** logic is partially replicated in ctime.c. If it is updated here, it should ** also be updated there. */ /* ** Powersafe overwrite is on by default. But can be turned off using ** the -DSQLITE_POWERSAFE_OVERWRITE=0 command-line option. */ /* ** EVIDENCE-OF: R-25715-37072 Memory allocation statistics are enabled by ** default unless SQLite is compiled with SQLITE_DEFAULT_MEMSTATUS=0 in ** which case memory allocation statistics are disabled by default. */ /* ** Exactly one of the following macros must be defined in order to ** specify which memory allocation subsystem to use. ** ** SQLITE_SYSTEM_MALLOC // Use normal system malloc() ** SQLITE_WIN32_MALLOC // Use Win32 native heap API ** SQLITE_ZERO_MALLOC // Use a stub allocator that always fails ** SQLITE_MEMDEBUG // Debugging version of system malloc() ** ** On Windows, if the SQLITE_WIN32_MALLOC_VALIDATE macro is defined and the ** assert() macro is enabled, each call into the Win32 native heap subsystem ** will cause HeapValidate to be called. If heap validation should fail, an ** assertion will be triggered. ** ** If none of the above are defined, then set SQLITE_SYSTEM_MALLOC as ** the default. */ /* ** If SQLITE_MALLOC_SOFT_LIMIT is not zero, then try to keep the ** sizes of memory allocations below this value where possible. */ /* ** We need to define _XOPEN_SOURCE as follows in order to enable ** recursive mutexes on most Unix systems and fchmod() on OpenBSD. ** But _XOPEN_SOURCE define causes problems for Mac OS X, so omit ** it. */ /* ** NDEBUG and SQLITE_DEBUG are opposites. It should always be true that ** defined(NDEBUG)==!defined(SQLITE_DEBUG). If this is not currently true, ** make it true by defining or undefining NDEBUG. ** ** Setting NDEBUG makes the code smaller and faster by disabling the ** assert() statements in the code. So we want the default action ** to be for NDEBUG to be set and NDEBUG to be undefined only if SQLITE_DEBUG ** is set. Thus NDEBUG becomes an opt-in rather than an opt-out ** feature. */ /* ** Enable SQLITE_ENABLE_EXPLAIN_COMMENTS if SQLITE_DEBUG is turned on. */ /* ** The testcase() macro is used to aid in coverage testing. When ** doing coverage testing, the condition inside the argument to ** testcase() must be evaluated both true and false in order to ** get full branch coverage. The testcase() macro is inserted ** to help ensure adequate test coverage in places where simple ** condition/decision coverage is inadequate. For example, testcase() ** can be used to make sure boundary values are tested. For ** bitmask tests, testcase() can be used to make sure each bit ** is significant and used at least once. On switch statements ** where multiple cases go to the same block of code, testcase() ** can insure that all cases are evaluated. */ /* ** The TESTONLY macro is used to enclose variable declarations or ** other bits of code that are needed to support the arguments ** within testcase() and assert() macros. */ /* ** Sometimes we need a small amount of code such as a variable initialization ** to setup for a later assert() statement. We do not want this code to ** appear when assert() is disabled. The following macro is therefore ** used to contain that setup code. The "VVA" acronym stands for ** "Verification, Validation, and Accreditation". In other words, the ** code within VVA_ONLY() will only run during verification processes. */ /* ** Disable ALWAYS() and NEVER() (make them pass-throughs) for coverage ** and mutation testing */ /* ** The ALWAYS and NEVER macros surround boolean expressions which ** are intended to always be true or false, respectively. Such ** expressions could be omitted from the code completely. But they ** are included in a few cases in order to enhance the resilience ** of SQLite to unexpected behavior - to make the code "self-healing" ** or "ductile" rather than being "brittle" and crashing at the first ** hint of unplanned behavior. ** ** In other words, ALWAYS and NEVER are added for defensive code. ** ** When doing coverage testing ALWAYS and NEVER are hard-coded to ** be true and false so that the unreachable code they specify will ** not be counted as untested code. */ /* ** Some conditionals are optimizations only. In other words, if the ** conditionals are replaced with a constant 1 (true) or 0 (false) then ** the correct answer is still obtained, though perhaps not as quickly. ** ** The following macros mark these optimizations conditionals. */ /* ** Some malloc failures are only possible if SQLITE_TEST_REALLOC_STRESS is ** defined. We need to defend against those failures when testing with ** SQLITE_TEST_REALLOC_STRESS, but we don't want the unreachable branches ** during a normal build. The following macro can be used to disable tests ** that are always false except when SQLITE_TEST_REALLOC_STRESS is set. */ /* ** Declarations used for tracing the operating system interfaces. */ /* ** Is the sqlite3ErrName() function needed in the build? Currently, ** it is needed by "mutex_w32.c" (when debugging), "os_win.c" (when ** OSTRACE is enabled), and by several "test*.c" files (which are ** compiled using SQLITE_TEST). */ /* ** SQLITE_ENABLE_EXPLAIN_COMMENTS is incompatible with SQLITE_OMIT_EXPLAIN */ /* ** SQLITE_OMIT_VIRTUALTABLE implies SQLITE_OMIT_ALTERTABLE */ /* ** Return true (non-zero) if the input is an integer that is too large ** to fit in 32-bits. This macro is used inside of various testcase() ** macros to verify that we have tested SQLite for large-file support. */ /* ** The macro unlikely() is a hint that surrounds a boolean ** expression that is usually false. Macro likely() surrounds ** a boolean expression that is usually true. These hints could, ** in theory, be used by the compiler to generate better code, but ** currently they are just comments for human readers. */ /************** Include hash.h in the middle of sqliteInt.h ******************/ /************** Begin file hash.h ********************************************/ /* ** 2001 September 22 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** This is the header file for the generic hash-table implementation ** used in SQLite. */ type userBITMAP = TuserBITMAP type userCLIPFORMAT = TuserCLIPFORMAT type userFLAG_STGMEDIUM = TuserFLAG_STGMEDIUM type userHBITMAP = TuserHBITMAP type userHENHMETAFILE = TuserHENHMETAFILE type userHGLOBAL = TuserHGLOBAL type userHMETAFILE = TuserHMETAFILE type userHMETAFILEPICT = TuserHMETAFILEPICT type userHPALETTE = TuserHPALETTE type userSTGMEDIUM = TuserSTGMEDIUM const uuid_t = 0 const uuid_vector_t = 0 type val_context = Tval_context type value_entA = Tvalue_entA type value_entW = Tvalue_entW const waveInGetDevCaps = 0 const waveInGetErrorText = 0 const waveOutGetDevCaps = 0 const waveOutGetErrorText = 0 type waveformat_tag = Twaveformat_tag type wavehdr_tag = Twavehdr_tag const wcswcs = 0 type wctype_t = Twctype_t const wglUseFontBitmaps = 0 const wglUseFontOutlines = 0 type winFile = TwinFile type winShm = TwinShm type winShmNode = TwinShmNode /* A region of shared-memory */ /* ** WinCE lacks native support for file locking so we have to fake it ** with some code of our own. */ type winVfsAppData = TwinVfsAppData /* ** Allowed values for winFile.ctrlFlags */ /* * The size of the buffer used by sqlite3_win32_write_debug(). */ /* * If compiled with SQLITE_WIN32_MALLOC on Windows, we will use the * various Win32 API heap functions instead of our own. */ type win_syscall = Twin_syscall /* ** This function is not available on Windows CE or WinRT. */ type wireASYNC_STGMEDIUM = TwireASYNC_STGMEDIUM type wireBRECORD = TwireBRECORD type wireBSTR = TwireBSTR type wireCLIPFORMAT = TwireCLIPFORMAT type wireFLAG_STGMEDIUM = TwireFLAG_STGMEDIUM type wireHACCEL = TwireHACCEL type wireHBITMAP = TwireHBITMAP type wireHBRUSH = TwireHBRUSH type wireHDC = TwireHDC type wireHENHMETAFILE = TwireHENHMETAFILE type wireHFONT = TwireHFONT type wireHGLOBAL = TwireHGLOBAL type wireHICON = TwireHICON type wireHMENU = TwireHMENU type wireHMETAFILE = TwireHMETAFILE type wireHMETAFILEPICT = TwireHMETAFILEPICT type wireHMONITOR = TwireHMONITOR type wireHPALETTE = TwireHPALETTE type wireHRGN = TwireHRGN type wireHWND = TwireHWND type wirePSAFEARRAY = TwirePSAFEARRAY type wireSAFEARRAY = TwireSAFEARRAY type wireSNB = TwireSNB type wireSTGMEDIUM = TwireSTGMEDIUM type wireVARIANT = TwireVARIANT const wpopen = 0 const wsprintf = 0 const wvsprintf = 0